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