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