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