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