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