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