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