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