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