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