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