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