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