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