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