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