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