@@@@@@@@@@$$$$$$&&$$&&%&&$$&$$$#$&&&&&&&$&&&%==%$############$###@@@#@#$$##@@@@@
#@@#@@@@#$&&&%%&%%%%&&&&&$&$$$##$&&$$$$&&&%%&%%$$%=%$$$$$@#$###############@#@@@
####$@#$$$#$$$&&&%=%=%&&&&&$$##$##$$$$$&%%%%$&%=%%%&$$$#@@#$$########@###@@#&#@#
####$$$$#$$$&&%&&%%%%%%%%&&&&$$$$$$##$&&%%%&&%%%&&%&#@@@@@@@##@@##@@##@#$#$$&$#$
@@@@#$##$$&&&&&&$##$&%%%%%%%%&$$&$$$$&&%%%%&&&$$$$%&#@@@@@@@@@@@######@@#$#$####
####$$$$%&&$&&$&$$#&%%%%%%%%%&$$$$$&$&%%%%&&$$$$##$&##@@@@@@@@@###@###@###@@####
#@$$$$$&&%%%&&$&$$#$=&%%%%%%%%%&$&%&$$&&$$$$$$$###$&#@@@@@@@@@@###@@######@#$###
##&$$$$&%&%%%&&&$$&$&&%%===%%%=%&&%%&&&&&&&$$$####$$#@@@@@@@@@@###@@@@@@@#&$##$$
#$$#$$$&&$&&&&&$#&=$%%%=%%%%%==%%&%&&&&&&%&$$$$###$&#@@@@@@@@@@@##@@@@@@$&&$##$#
#$$##$$&$&&&&&$##%%#$&%%&&%%==%%%&$&$$$$%%&&%==%%&$$$#@@@@@@@@@@@@@@@@@$$$$##$$#
@#$###$$&&&&&&$$$?=$#$&%%%&&%=%&&%%$##$$==%====&$$$&##@@@@@@@@@@@@@@@@$&&&$#####
@@@@@@$$&&%%%&&%&?=&#$%==%%%%%&&&%&$$$&==%%=%%&&&$$&###@@#$##@@@@@@@@#&&&$#$##$#
###@@@@#$&&&&&&&&?=&$$%==??==%&%&&&&&%=?======%&&&&&$#$=????=&#@@@##$$$$$##$$$#$
#$#@@@@@@###$$$&&?=$$$%=????==%%%%&$&=??=%=%%%%%=%&&%=>=??===%%##@@#&&$$$$$$$$$&
@@@@@@@@@@@####$$=%&=%=?==%===?=%%&$%???=?==&%%&?>=%>+>??=%%%%%%$#$&&$$$$$$$&&%&
@@@@@###@@@@####$>=%?=??=%%%%%%%%%&%=?+++)?=%%=?>>???%=%$##$$$%?$$%%$$$$&$$$$&&$
@@@@###@@@@@####$?%===??=%&&&%%%%%%%=)**)+=?=%&=??>&#$=%&&&$$$&&$%%&$$#$$$$$$$##
@#@@@#@@@@@@@###&?%%=%%==&$$&%%%%%%%&++>?=%%%%??=%$#$#%%%%&$$=&&#&&$$$$$&&&$$$$#
@@@@@@@@@@@#####$%&&&$$$$$$$$$&&&&&&&&%%&&&&%%=%%$#$$%?>>&=?%%==@&&$$&%?>?%&&$&$
@@@@@@@#@@@#####$&$&$$#$$$$$$$$$$#$$$$$&&&&&&&%%%&#?>>>>$$?>%$&&&=>?==>?==?%#$&$
@@@@@###########$&$&&$$##$$$$&&&$#$&$&%%%&&&%==%%&?>>?=$@&==$##&%===%?=?>>?=&$&$
##@@###########$$&$$$&$######&%&##&&&%%%%%%=>?===%&$$$@@#%?%$@@#%=%$==?==???=%&$
$#@@#####$####$$$$##$&$##$$###$$#$&&===&&=???=%%=#@@#&#$&$&&$$@#%?>=>>>?=%==?==%
##@#####@##@####$&##$$##$########$&%=%%&&&%=====?&##&$$#@@$$@$$%>>>>>?=%&&&&&%%%
####@##@@##@@####&#$&&$$#####@@##&%%%&&&&$&%%=%=%&$&$##&##&$&=?====%%&&$$$$$$$$$
#@#####@########$%$$$&$#######@##%%%&&&&%&&=====%&$$##&%%?%%?=%%%%&$$#####@#$#@#
###@##$$&$$$$#$&%?%$#$###########%%%&&&&%%??=??=&&&$&%>+?>>%$&&&&$##@####@@@#@@@
@@#$#$$$##$&$&=?+>%$####$$####@#&%%=%%%=%%?=??=%&&%=?=+>%&=%&#@@@@@@###@@@@@@@@@
@@#####$$&&&&&==&=$####$$&&$##@#&%=====?==??==%%&%=&$?+%&#$$$@@##@@@@@@@@@@@@@@#
@#$$$&%%&$#$%&=$&&&#$$$$$%%&$#@$&=>>???%&&&%%%%?)*+$@&?%#@@##@@@@@@@###@@@@@@@@#
$&$$$&&%$##$&&%&%$$$$$&&&&&&$##$%=%=??==&&%=?+!!*+?=@#$&##@@##@#$$####@@@@@@@@@#
#&&%&&&$#$$%=%$&$&&$#$&%%%&$$$#%%&&%=?>>?=?*!;!!)?&$#$$%%$$$$###&$$$###@@@@@#@##
$#$+?%>?&$&>>$%=#%>$%>&>%=>&&>$&&&=%?>*!>>*++!>*?&#$?)=>>#%?&&>#&&$+#$?##%$@%###
###%%$?=&&&%=#$=#$%$&=$%&%=$$%$&%&%>>>+)?>*+>?%=&#$&%=%??$&=&&%$&$$%##%#@%#@%###
@##$$#$&$#$$####$$$$$$$&$$#####&%=>+>>>???)+%=&&$%$==%%&&$##&&$&$@@@@@@@@@@@@###
$##$$###@$###$#$&$$$&&$$##$#@#$&&%?>>>>>?>>?&%$##&&=%&%&&$#$%$#&$@@@@@@@@@@@@@##
$##$@##@@$#&#$##$$$&&&&$#@@@@#$&%==????>?>&$&$@##$$$&&&%&$$$#@@#@@@@@@@@@@@@@###
&&$###@@###$#$#@##&&&&%&$#@###&%&%=%?>>?=%#$$#$$$%%#$$&%$$$#@@@@@@@@@@@@@@@@@@##
%=%$###@####@@@@#$&$$$&&$#$###$%==>>++>==$$$&?%&%$#$$&%%&$$#@@#@@@@#@@@@@@#@@@##
$$&%&#@#@####@@@##$###$&&$####&=>>>>>+>?=#$$&&&&&&%$$$&$$$#@@$&$@@@##@@@###@@@@#
&$%%%$#$#####@@@##$$#@#&&&$#$&=?>>>>++>?=######&=>>>&##$&$#@@$$$$#@@@@@@####@@@@
&%&&&%&$##@##@###$$#@@#$$$$#$=?>>+>>>???$###@@#$%%>+>%###$#@#$$#$$#@@##@#$#@@@@#
$$&%&&%&##@#@###@##@@@##$$&$$=>+++?>>=?=$$$$##@##&%?>?&#@@#@#$$$$&&@#$####@@@@@#
$$#$$$$#@@@@@#$#@@@@@@##$$&&%=?>?==??&$####$$@@@@#&%&&#@@@@##&=??==%&$#@@@@@####
&&&&$$$##@@###@@@@@@@@@@@$$$&%%==%%%==&$$%%%#@@@@#&&##@@@@#$&%%%%%%%%%&&$##@@@@@
$&&$&$@$&#@@##@@@@@@@@@@#$##&%&&%%==%&&$&%&&#@@@#@##@@@@@@##$&&&&%%%&&&&&&&$$$##
$$#$$$##&@@@@@#@@@@@@@@@$&$#$$&&%=?=%%&$%#$$&#@@#@@@@@@@@###$&&&&%%&$$$$$$$$$$$$
$$##$$$$$@@@###@@@@@@#@@$&&&&&&%=???=&%%%??$###@@@@@@@@@@##$$$&&&$############$$
$###$##&&#@@#$####$$$$$%==%=%&&&????==>+%=??$@@@@@@@@@@@$$&####$$#@@@@@#########
###@$#$&&##$&&&&$$$&$$&&&%=%%%%&%===>)+?=&?=#@###@@@#@@#$$&#@@@@##@@@@@@@#######
##@@$#$&#@####$#@##@#####&%%%$$&$&%%=?>=&$$$@##@@@#$$&&$#$&#@@@@@@@@##@@@##@###@
@@@@$##$@@@###$#@@@@@@@#&&&$&$$$#&=$$&%$##@@@#@@@#$&&%%=%##@@@@@@##@@@@@@@@@@@@@
@@##@##$@@@@@#####@@@@@$%&&%&&##$%%##$$$#@@@#$#@####$&&%%&#@@@@@@@@@@@@@@@@@@@@@
@@@$&$$$#@@@#####@#@@@@$&$&=?=###&$@@####@@##@@@#$&&&&$$$&$#@@@@@@@@@@@@@@@@@@@@
##&%=%#@########@@@@@@#$##$&$&##&&&#@@@@@@@$$#@@@@@@###$$&&$#@@@@@@@@@@@@@@@@@@@
@&%%%&##@##########@####$&&$$###&%%&$#####$&$#$$#@###########@@@@@@@@@@@@@@@@@@@
#&%&&#@##@##$$$$##$#&%%%%?%%&$##@#&&&$$$$$#@#$$$$#@###########@@######@@@####@@@
@@###@@#&&#@#@@@@$=%?&%%%>%$%&####$&&%&%$#@@######@@@@@@@@####$&%%&&$###$$$$##@@
@@@@@@@#&&$##@#$&=&%&&&&=>&$$%&&%&$%%%?=%%&&&%$$$##@@@##@##$=%%%&&$$$$&%$$$##$@@
#$$$&$%==?&$&$&&=&#$$$%%=>&=$%=$&%$$$$$%%&&=%&&%=%%&&$#@@#%=%&&&&&%&&$$$#$$$$$@@
$=?=%=&&&&%=?%&%%#$&&$#$?>%>=%??=%%&&%$&%$$%%&%%%%%&&&$$##%&&%&&&&&$$&$$##$$##@@
#$$&%?%&=?===%%&$#&&&$$&+)===&%%=&&==???%=%&$&%%=%$$$$$$##%&&&&&&&&&$$$$$&$$$#@#
&%%$%?======%%%%%%===%%%+>=&$&&&&&&&&%%===$#$$#%%$$#$$#&##$%$$$$$$$$&%&%%$###@$$
$&=%&%%%======%%%%%%%&&&>%$##@###@#$&&&%=%@####$$$%%&$#%&#@$$&&&$$$$#$&%%=%&$#$%
?&=&%%&%%%$&&$$$&$&$$$$=&%&####$$#@$&$$&>%$##&&&%&&&%&$$&$$###$$$$######&&&%=&$%
&$$$$%$#$$#$$#####@@#@@$&$##&%$##@##$#&!*)$&%%%=%%%%=?%&##$#$$&%%###@#&&#$$&%&&$