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