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