??&&&&&%&%%&&&&&&%%%%%%%%%%%%%%%%%%%&&&&&&&&&&&&&&%&%&%%&&&&&&$&$$$$##$$&%&$=???
?&$&&%%%&&&&&&%%%%%%&%=&???=%+?+=%%%%%%&%%&%??%+%&+%??%%=?&?==&%%%%%&&$#$&&&&=??
=$&=%&$$&&&%&%?=%%+%%+?&?=%%??%%+%%?%=%%==%%??&*%%+%?=%%??&+%%&%%?=%%&&$$$&&$%??
&&%%&$&&%==%=+%??%+?%++&?++%*=%%*=%?==?%=%=%??%*&&+%+=%%?=&+?=&&&?%&&&&&$$$&&&??
&&%&$&&=+%+%?=&%*%=+?=+%+=%%??%=*%%%==%%==%%+?%*&%?%+=%%?=&+%%&&&+%&&&&&%%&$&$??
&$&$&&&%+&?%+=%%*%%=+%+%+???%+?+=%%%%%%%%%%%+?%???=&+?==+=%*%%%&&+%&&&&&$$%$&$=?
&$%$&&&%+??&==&??=%%%%?%==%%&%%%%%%%%%%%%+==+%%%%%%%%%%&%%%==?%&%+%&&%&$$$&&&$??
&&%$$&&&+&?=%=?=%%%%%%%%%%&&&&&%%%&&&&%%&%==&%%%&&&&&&&%&&%%%&&&&&&&%%$%$$&&$$?=
&$=&$%&&+%%%&%%%%%%&&&&%%%%========?=======%%%%%$$$$$$$$$$$$$&&%%&&&&%%=&$%&#$=?
&$%=&&&&%&&&%%&&&%%%%%=%=?????++++++++++++??==%&$&&&&&$$$$$$$$$$&&%&&&&&$%&$$&=?
&$%%%&$&&&&=&%%%&%==?=%=+++++++++****++++++=$$$$$$$$$&&&$$$$$$$$$%%%%%&%&$$$$&??
&$$&$&&$&%==%&&=??????=??===?=====++++++?+?&$$$$$$$$$$&&&$$$$$$$$$=?%&&&%%&$$&??
$$&%=&&$&%%&&%==?????=&$$&&&%%&&&&=+++**++%$$$$$$$$$$#$$&&&$$$$$$$$???&&&&&&&&??
&$$&%%%&%&&%===??++=&&%%%%&%%%&%*+=?++**++?&$%?%&%$$&$$$$$&&$$$$$$$&??=%&&&&&&??
$$&$%%%&$&%??????+%&%%%%%%%%%%%+;;!??++++++?=+***+%$$$$$$$$$$$$$$$$#=+??%&&&%&??
$$%$&&&$&%%=?????&&%%%%%&%&%%%=!;;;!???+++??%&%?**+=&$$$###$$$#$$$$$%++?=&$&%&??
&$$&&&&%&==???+?%&%&&&%&&&&%&&?;;;;*+?+++++?+????**+%$$$$$##$$$$$###&??=%$&$&&??
$$$&&&&&&%=?????&&&&&&&&$%%&&%+;:!??*?++++?+*=???+**=$$$$$$$#$$$$###%??=%%&$&&??
$$&&&&%&&==????%$&&&$$$$&%&&&%*;*++?*!?++?*!!?=?****=$$$$$$####$###$???=??%$&&=?
$$&&&&%%====???%$&$&$$$&&&&&&=!;*++=*;!+=**+***!!!*+=$#$$$$$###$$##=??=???%&&&=?
$&&$&$%%==?????=$$$$$$&&&&&&&?!;;!++!;!!+%&?+!***+???%&%$$$######$$=?=====&$$&=?
$&$&%&%%==??+?+?$$$$&$$&&&&&&?!!;;;;!!*??=?+***+???????=%%%#######$==?====&&&&==
$&$&$&&=====???=&$$&$$$&&&&%=?*!!;;!!!*+=%=+?%$$$$$&%=?+?%$#######$$&?====&&$&==
$&&%&&%=??=?????%&$$&$&&&&&?+**!!!!!!!*====&$$$$$$$$$#$&&$##########&?====&&$&==
$&&%%%==??=????=&$$$&&&&&%?*+**!!!!!!!+===&#$$$$#####@#@#####$#$###&=====%$$&&=?
$$&%==?==????%&&$&$&&&&%&&%==+*!!!!!!!!?==&$%==%=%%&$$##$##$$$#####$????==$&&&=?
$$&&%%===???%&&&&&&&&&&%&&?++?+**!!!!!!!==&+:-::-:;!*+?%$###$######&??=?==&&&&=?
$&&%=====??=&&&&&&&$&&%%%%?***?????????=%=?:------;!!*+=$#@@######$=======&&$&==
$&%%==?==%%&&&&&&&&&&%%%%=+!!*+??=%%===?==!------:;!!*+=$#@@@&&&#$%=??====&$$&=?
$&&%==%&&&&&&&&%&&%%&%&&%?*!!!**?%%=?++?=?:--:--:;;!*+?&##@@@$&$$$$$&=====&&$&=?
$$&%%%$%%&&&&%%&&&&&%&&%?**!!**+===?++??=+:--:--;!!!+?=&#@@@@#$$$$$$$$$&%=&&$&=?
$$&%%$&&&&&&&&&&&&%%&%?+**!!**+=&==?+?????+!;;;!*****??%#@@@@#$$$$$$$$$$$$$&$&==
$&&%&&&&&&&&&$&&&&%%?+*!!!!!*?=&$&&%+?+==?%&?!=$$&%%==??&#@@@$$$$$$$$$$$$$$$$&==
$&&&&&$&$&&$&&&&%==+*!!!!!!*+?=%&&=?+++===%?*;=&&&=%%=??%###&$$$&$&&$$$$$####$%=
$&&&$&$&$$$&&%%%%%==*!!!!!!*++?=%=+*?%%%=!!*:*??+*+??+++%$%==&$&$$&&$$$$$$$###$%
$$$&&&&&$&&&%%%&%%&%?*!!!!!****++*!+?&$$?::::??*!;;!!*+?%%%=?%$$$$$$$$&&&$$$###&
$$&&&&&$$&%%%=%=&&%&=?!!!!!!!!!!!!!*?&$$+::-!?=+::;!*?==%=%%+&$$$$$$&&&$$$#$###$
$$$$&&$$&&%%%===%%&%&=+!!!!!!!!!*+?*+=&&=;;+%&=?;;!+?===&%=?=&$#$$$$$$$$$$$#####
$$$$&&$$&&%=%=%=%%%&&%?!!!!!!!!+?==!***?=;!==$%+!!+?===%&=?=&$$#$$$&$$$$$$$#####
$$$$&&$&&&==%=%%=%%&&&?+*****++??%?***!+?*%&%&&?**?==%%&&%%&$$##$$$$$$&$$$$#####
$$$$&$$&%%=%%%%%%%&&&&==========%&+!**!!*+=%=&$$%??%%&%$&&$$$$##$$$$$$&$$$$$####
$$$$$$$&%&=%%%%==%%&$&%%%%%%=%$&$?;!!!!*%%%$&=%%&==&&&&$&&$$$$###$$$#$$$$$$$####
$$&$$$$&&&%%%%&%=%%&$&&%%&&&%%&&?*==%%&$$$$#&=??%%%&&&$$%%$$$$###$$$$$$$$$$$####
$$&&$$$&&%%%=%&&&%%&$&%%%&&&%*!!+?=$$$$$&&?&#$%=%&&&&$$&%=#$$$###$$$$$$$$$$$$###
$$$$$$$&&&&&&%%%&&%&$&%%%%&%;-::?%&$##$=?&&&$%==%$$$$$&%%*$#######$$##$$$$$$$###
$$$$$$$$&$&&&&&&&$&$&%%%%%=;::---!?+=&&%&#$$$&&$$#$$$&%%+*$@@#####$$##$$#$#$####
$$$$$$$#$$&&%%===%$$&&%%%%+---:::!=%+?%&#$$#==&$$$&&&%%+!+#@@@@@#########$#$####
$$$$$$$#$$&%%%%%%&$$&&&&&&*:;;::+?+?=+=##$$$*-!?%&%%%?!!*=@@@@@@@@##############
$$$&$$#$$$&&&&%%%&$$$$&&&&!;?%%+??++&**%$$##+--!?==?*!!*+&@@@@@@@@@#############
$$$$$$#$$$$&%%%%%%&$$$&&&%;!?&#$+?=?&%+%$$$#=--;%%?;;!***$@@@@@@@###############
$$$$$$#$$$&&%%%%%%&$$&&&$=!*?%$$%=&=&###$$$#=-:&$##*!!!;+#@@####@###############
$$$$$$$$$$$&%%%%&&&$$$&$&+*+?%&%==&&$###$$$#+~*%$##?;;;;?#@####@###############$
$$$$$&$&$$$&%%%%&&&$$&&&?;*+=%%%%%&$#$$$$$$#*-+!##?+!:;!%#####@############@@##&
$$$$$&&&&$$&%%%&&&&&&&&?::!+=%&&$$#####$$$$#!::=@$+!!:;:$##################@@##&
$$#$$&&&&$$&&%%&%&%&%&%*:;+=%&&$#####$##$$##;-;#@#?!;::;###################@@##&
$#$&&&&&$&$&&%&%%&%&&$*++;+==&$######$######!;=###=;:--+########@#########@@@@#$
$$&&%&&&$&$$&%&%&&%$$$!*?*+?%&$############$*!$###=;:-:%###############@###@@@#$
$&&&&&%&&$$$$&%%&&$#$$*:;!*+=##############&+*####=;::;&###############@##@@@@#$
$&&%&&%&&&$$$&&&&####$+***+%#@############@%+?####=!::!$##############@@#@@#@@#&
&&&&&&&&&$&$$$$$###$#$===%$@@@############@=+%####?!::+#######@######@@@#@##@@@&
&&&&&&&&&$&$$$#######$&%&#@@@@#############=*&@###+!::=######@#######@@@##@@@@@$
&&%&&%&&&$&$$$####$#@#$#@@@@@@@#####@####@#?*#@##$+;::&######@######@@@@#@@@@@@#
&&%&&%&&&&&$$$#####@#@@@@@@@@@@@@@@@@@@@#@$?+####$+::!$#####@######@@@@@@#@@@@@@
&&%&&%&&&&&&$#####@@#@@@@@@@@@@@@@@@@@@@#@&+?####$+::+######@######@@@@@##@@@@@@
&&&&%%&&%&&&$#####@#@@@@@@@@@@@@@@@@@@###@&+=####&+;:=#####@######@@@@@@@@@@@@@@
&&&&%%&&%&&&$######@@@@@@@@@@$#@@@@@@@####%+%####&*;;&####@@#####@@@@@@@#@@@@@@@