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