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