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