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