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