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