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