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