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