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