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