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