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