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