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