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