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