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