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