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