#############&$##$$#########$&$&$$&##$=$%$$$$$$$$$$$$$$$$$$$$$$$$$##############
#$#$$##$$$$&$$=>#$&$&&$###$$$&$&$$?$$&%$&###$$$$$$$$$$$$$$$$$$$$$$$$#########$%=
#$#$$$$$&$$&$$&%#$&$&%$$&&$&&&&$$#=$$&$######%&&$$$$$$$$$$$$&&$$$$&?+?%######$&?
$$$$&$$$&$$&$$&$$&%$&%$$&&&%&&&$$$$&%$######$*?%%&$$$$$$%=&&&&$$$$$=>>=$$%&%=&&>
$$$$&$$$&$$&$$&$$&=$&%$$&&&%&&&$$$&)%#######)~+=%=%&$$$$?>%=&&$$$$$$%?%==%=>!=&?
$$#$&$$$&$$&$$&$$&?$%=$$&&&&$$&$$$=+$#####$>~*+!%>=??=&$&)%%%%&&$$$$&+=?>%=?!=&>
$$$$&$$$&$$%$$&$$%?$&%$$$$###&=$$$$$$####$%??>;:??=??>>=%+%%&&&$$$$$&+=?+%=>!?&?
$$$$&$$$&$$=$$&$$%%$%?$$$###$;+%$$#$$$#$$$$&%=;=$$&=>%%=%>?=%&$$$$$$$???)%%>!?&>
$$$$&$$$&$$>$$&$$%=$%?%&####?)??$$##$###$$$&&?&$$&&=>=%%%%=%%&&$$$$$$???)%%>;?&>
$$$$&$$$&$$?$$&$$%=$%>>$###$&%=$######$$$$$&&&&%&%%=?%&&&%=!=&%&$$$?>$&%>%%?;?&>
$$$$&$$$&$$=$$%$$==$%?$###$$$$$#$#$$$$$$$$$$$$$&&&&%%%%%=%+;&&%&$$%->$$$?=%?;?&>
$$$$&$$$&$$?$$%$$==$&$#######$#$####################$$$$&%%=%%%&$%?$$&$&+=%?;?&?
$$$$&$$&&$$=$$%$$=%$%%##############################$$$#$$$$&%%%&%$$%%&%+%%?;>$=
$$$$$$$$$$$%$$&$$&&$%&#####################################$$$$&%%&&%??>)>>+!)?+
#$$$$$$$$$$$$$$$$$$###########################################$$$$&&%>++))))))))
####################################$###$##$$$$&$$$############$$$$$$&$$$$$$$#$#
##################################$$$$$$$#####$&=&&$$#############$$$$$$########
##################################$&%=&$##$$&&$$&==%&$$#############$#$$$#######
##################################$%>>=$$$$#$$$$$=++>%$$##$$#########$$$$$######
####$$$&$$$$$$$&&$$&%$###########$=+)>?&$$$$$$&=>!:;*+%&$$#$$$$$#######$$$$$$$$$
&$$$#$$&$$&&$$$%$$&?=$$$########$%)!!*+?%%%%=>*;~^^~:!>&&&$$$$$$######$$$$$$%?=&
$#$$$$&&$$%&$$&=$$&??$$%&#######%*;:-:;*)))*!:~,..,^:;)%$&&%%%&$$########$&&%+?&
$#$$$$&&$$%%$$&=&$&==$&??&$####&+:-~-~-;!!!!;-^,.,^-;!*=&%%=??>&$$#######$&&%++&
$#$#$$&&$$&&$$&%&$&%=$&=?&$$$##$%>+;~~-;;;!!;:-~--;!**)?%=??=+!=&$$#####$#=%%))%
$&>=$$&&$$&&$$&%$$&=%$$&=&$$&$$$$?%&)-:;;;;!!!!!***))))?=++>%%*+%&$#####$$?%=*!%
&%*-??>?==%%$$&%$$&%%$$%=&$&&###$%*)>;-:::;!*)))+)))**!>?+!*)=**&&$#####$&>&&+!%
$%+*+&=>+++++>>?=%%%%$$&=&$&&###&?!~~~~~~-:;*))++))*!;;)>):-:;;>&&&$####&%?&$?+%
$$&=%$$$&%%%=?>>+++++>>==%&&&$#$&=?)-^^^^~-:!**)**!;:-:!>*!!~:+&&&%&$#$%%$=&$%+=
$#$$$$$$#$$$$$&&&%%==??>++++>?=%&$&%=;^^^^~-:;!!!;:-~--*&????&&&&%%%$$&==$=%$%+?
$$$$$$&&$$&&$$$$$$$$$$&&&&%%=?>>>=$$$&?!~~~~-::;:--~~~-+$$&$$$&&$%%=%%&%%$%&$%+?
$$$#$$&&$$&&$$$&$$$&&$$$$$$$$$$&%%=?>>?>;-~~~----~~~~-:?%%&$$&%&$&%==%&%=$%=$%>>
$$$$$$&&$$%%$$&&$$$%&$$%?&&=&$$$%??);;;;;:-~~~~~~----:*>?%$$&%=&$&%%=+=>*%+*$$%?
$$&$$$&%$$%%$$$&$$$&&$$%=&&=&$$$$$$&&%>*;:--~-----::;!)+?&$&&=%&$&%==>%?+%?+$$%=
$$&$$$&&$$%=#$&%$$$%%$$%?&&%&$$$##$&?+*!;::---::;!*)++!*=&&&&=%$$$&==?%?)%=+&&?+
$$$$$$&&$&%=$$$&$&$&&$$&%$$&&$$$$&=);----:::;!*)+?=%=*;*=&&&&=%$$$&%=%%%?%=>&$&=
$$$#$$&&$$%=#$$&$$$&&$$%%$&?&$$&$&%?)!;;;!*)+?=%&&&%+;:*=$$&&%%$$&&%=%%%?%=+&$&=
&$$#$$&&$$&%#$$&$#$&&$$&&&&=&$$%$$$&%=???=%&$$$$&&%?*;:*=$$$&=%$&&%%%%%&?%%?&$&?
$$$$$$$$$$$&$$$&$$&&&$$&&&&%&$$&&$$$$$$$$$$$$&&%%%?+*;;*=$$&&==&&%%%==%&=%%?&$&=
##$$$$$$$$$$$$$$$&&&&&&&&&&&&$$&&&&$#####$$$&%===??+*;;*=$$$&=?===%&%===?==?====
############################$$$&&$$$#####$$$&=?>??>+*;;*?$$$&=>%%%%%%%%%%%%&&%%%
############################&$$$&$#$#####$$$&=>>>?>+*!;*>&&$$&?%&%%&&$$$$$######
$$$$$$$$#######$$&&&$#######$$$$&$$$$####$$$&=>>>?>+*;;!+%$$$&=%&&&&$$$$$$######
&&&$$$$&$$#####&%?>=&$$#####$$&&&$$$$####$$$&=>>??>+*;:!)?$$$&&=$&&&$$$$$$$#####
#####$$$&&&&$##$%=>?=%=>&###$$&$$$$$$$$##$$$&=>>??>+*;::*?$$$$&%&$$&&$$$$$$$$###
$$###$$$$&&&$&$$&=??&%==&$#$$$&$$$$$$$###$$$&=??=??>)!::)&&$$$$&&$$$$$$$$$$$$$$#
$$$$#$$&$&&&$$$$%==?&%=&$&&&$$$$&&$&&$###$$$&%?==??>)!:;%%&$$$$$&$$$$$$$$$$$$$$$
$$$&$#$$&&%%#$$$&=??&%=&$&%&$$$$&&&%$####$$$&%===??>+*)%==&$$$$$&&$$$&&$$$$$$$$$
$$$$$#$$&$&&#$$$&%==&&=&$&%&$$$$$&$$#$$$$$$$&&%%=??>+>&%>=%&$$$$$&&$$&&&&&&&$&&$
$$$$$#$&&&%%#$&#$$&=&%=&$$&&$$$$$&$#$$%$$$$$$&&%==???&&>?==%&$$$$$&$$&&%=%&&&=?%
$$$$$#$$&&=%#$$#$$&%&&=&$$&$$$$$$$#$$=?$$$$$$&&%====&&?>>>?=&&&$$$$$$$&&%%&$&=%&
$$$$$#$$&$%&#$$#$$&%%&=%$$$#######$$&!>$$&&&&$$%==%&$=>>++>=%&&&$$$$$$&&&&$&%=&%
$$$$$#$$&&=%#$&#$$$%%%?%#########$&$*-=$&&&&&$&==%&$%+++>???=%&&$$$$$$&&&$$=?%$$
$$$$$#$$&$&&#$&#$$&%%&&$####$####&&=^:&&&&%%&$&=%&$&??>?>>??=%=&$$$$$$$&&$&==&$&
$$$$$#$$&$&&#$&$$&&%%$######$###$%$!,*&%%%??%$%=%$$=??>>>>>?%=%&$$$$&&$$$$%%%$&&
$$#$$#$$&$&%#$&$$&%=%###########&&%~,)==?))>%&=?%$&>++++>>>=%=%$$$$$&?&$$$$&&$$$
$$$$$#$$&$&&#$$$$&%=&##########$%$+,,)>>*:;+%=>+#$&>++>>>>?%?=&$$$#$$$$$$$$$$$$$
#$$$$##$&$&%$$$$$&%=$#########$&%&;.,+>+;-!?=*!&$$&=>???>?%===$$$$$####$$$$$$$$$
$$$$$##$&&&%$$$$$&%&####$####$$%&=~.,>>+!!+=!-=$$&&%=%&&>=&==&$$&&$$$#####$$$$$$
$$$$$$$$$$$&$$$$$$$$#########$&%$),.,>?>)+++==$$$&&&%%$$~>==%&$$=$#$$$$$$###$$$$
##########$$$$$$$$$###$######$%&%:..^???>?+?$$$$$&%%=&##$%==&$#%%$#$$$$$&%$##$$$
##################$###$#####$&%$&+:,~???=%>?$$$#$&$%%&$$&%=%&$$?%$#$$$$$&=$$$###
############$#####$#########$=&$&&%:->?=%&$$$$$##$&&&&%$%%=%$$&=&##$$$$$&%$&$%$$
###$#####$$&$####$$#########&%$&=)?=*>?=%&#$$$$###$&$&)?%=%&$$==&##$$$$$&%&%?>>=
$##$$$$$$#$$$####$$########$%&$+>~-))?==%$$$$$&$###$&$&%%%%&$$?%$##$$$$$$&%=??>%
$##$##$$$#$$$$#############&%$=*!,~*>?=%$$$$$$&$$###$&&%%%%$#&?%$##$$$$$$$&%=?%&
$##$##$$$#$$$$$$$#$#######$%&$!*~,-+??%$#$$$$$$&$####$$&%%&$#&?%$##$$$$$$$$$&&$$