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