?*++*+++=-===-;;;;;;;;:;---*???*+=-::,,,,,,,,,,,,,,,,,:::;;;;;;----=====++**?*+?
?+==++++=====----;--;:;=++=-+?%%??*=-;::::,,,,,,,,,,,,:::;;;;;;-----===+=++???%%
+==+====-----===----;-=*???*-==*?%??*+=-;;;;,,,,,,,,,,,::;;;;;------==+****?%%%S
+=;;--;;;;;-=====--;-*+++*??*+=--+?%%??*=----:,,,,,,,,:::;;;--------=+*?%%%%%SSS
%*+=----=++=++===-;;=+==-===-=--;---*?%%??***-,,,,,,,,:::;;;-------===*???%%%SSS
%%%?=--==++++===--;---;;:;:::::::::::;-*%????+:,,,,,,::::;;;-------===**?*+*%?+*
*?%%?+------------;;;:::::::::::::::::::-+?%??+,,,,,::::;;;---=----==+*??*=****?
%??%%?+------=--;::::::::::::::::::::::::;=?%%?;,,,:::;;;;;--------===+*???*??%%
S%????****+=-==-:::::::::::::::::::::::::;;=%%%*,,,:::;;;;----------=++****?%%%S
SS????????**==;::::::::::::::::::::::::::;;;+%%%;:::::;;;;--------=====+**???%SS
SS??%%%%?***+-::::::::::::::::::::::::::;;;;-?%%*:::::;;;;-------==++**+=+??%SSS
SSS%%?****++:::::::::::::::::::::::::::;;;;;-=%%%-:::;;;;;-----===+++++-=*%%SSSS
SSSS%?*=---;:::::::::::::::::::;;;:;;;;;;;;;;-?%%*;;;;;;;;----===++++++==+**?%??
S%%%%%%?**=;:;::::::::::::;;;;;;;;;;;;;;;;;;;-+%%%-;;;;;;;;----====+++*?*+***=+?
S%?%?%%%%??=;;:::::;;;;;;;;;-----------;;;;;--=%%%*;;;;;;;;;-----=++*++***+==+?S
S%%%%S%%??%+;;:;;;;;;---====++++*****+=-------=-?%%;;;;;;;;;----==+**+===+=-*%%*
?*+=+*%%???=;;;;;;;--+*?%??**++*?%SSS%?*+==------%?;::;;;;-----===*???*++***%S?=
*+=++=*%?*+-;;;;;-=+?SSSSSS%?++*%%%%SSSSS?+====--=-::::;;;-------=++***+*??%%?**
==+**??%%?+;;;;--+?S##SSSS%??*+*?%S#######%*+==--;;:::::;;;;--=======+***?%%?%%S
::::;*%%S%*-;;-=+%########S%?*+*%%SSSSS####%*+==-;;:::;;;;----========+*????????
=---;=?%%%?=;--=%#######SS%??*=*??????%S####%?*=-;;;;;;;;;----==+====+*%??**+++*
?%%?+=+??**+;-=+S#####%%?*****=+*++++*?%####S%*+=--;;;---;;;--=+====+*?%%**?***?
SS%%%?=-;=??--=?######%*++++++=+*+==++?%#####S?**+=----=-;;;--=--==++**?*++++=+*
SS%?*=-;;-*?*=+%######%*++=+++==*++++*?S######S?**+=====;::;;;;:;==+******?****%
%%*-;:::;;-*?%%S######S?*++++?**?++++*%S######S%?*+++==;::=?;;:;;-===+++==++*?%S
%?=-;;;-=++???%########%?*+++????+=+*?%S#######S?=------=+?%*-;-=??=;;;;;-=**??%
%?+**++++?%%%%S#########%?*+++**+++*?%%S########?*++++*???%%%**?%SS+::::;;-====-
S%%SS%?+--+*%%%#########S%???%%%%%%??%%#########SS%%%%%%%%?%%?%SSSS+::::::::::::
SSSSSS%?+=--*?%#########S%%S%SSS%%%??%S##########S%%%SSSS%??%%%%%?%-::::::::::::
SSSSSSS%??*+*?%##########S%**%%??%???%#@#########S%%%%%%%+-?%S%%-;?=::::::::::::
SSSSSSS%%???+*S###########?*%SS%%?*?%#@@@########S%**===--=%=%S%;:++::::::::::::
S%%SS%%%%??**%S########@#%?%%%??**?S#@@@#########S%????%?*%S%SSS+:=*::::::::::::
%%%%%%?%%%**%%S#####S##@S?%#S%%%%%S#@@@#####@####S%%SSSSSSSSSSSS?:-%=:,:::::::::
++=+++=-;;-=??SSSS#####S?%S#@#####@@@########@####SSSSSSSSSSSSSS%=;%-:::::::::::
::::::::::;-*?*?%S%####??S##@@####@@#######@#@###S%%SSSS#SSSSSSSS*;?=::::::::::,
:::::::::::=%%??SSS###%?S#####@#####SS#####@#####S%???SSSS%%SSSS%*-*+;;,,,,,::,,
:::::::::::-=**%S####%+*##########S#########@@###S%?++*?%%*+*=-=-;-=;==:::::::,,
::::::::::;=*?S######SS%###########S%?**+=**?####S??*+-;;;::::;;::;-=?++??;,,,,,
:::::::::;*SS###########@#########%++++=====+%#####%??*+;::::::;;-+=?%*=+?:,,,,,
:,:::::::=SSS######@#@@@#########?*??%%%%%?%%#@@@####S%%+;;::::;=?*+??;:-=,,,:,,
,,,:::::;=%######@@@@@######@@@#??%%SSSSSSSS#@@@@########S%=::--**%?*-:;+*;:==;,
,,,:::::;=%SS#####@@@##########****?%?*?%##@@@@@@@#@#####S+*---+=++=++++??*?S%*-
,,::::::;=%SSS###@@#######SSS%+==+++=+++++?#@@@@@@@@@####S*=-*%%%%SSSSSS######S*
,::::::;;=%#SS########@@###SS+====+++**?**++%#@@@@#@######+=-?################SS
::::;;;;;-?S############@###%+=========--?%?+=%@@@@@@@###%==-*S#############S%*S
,,::;;;;;-*S########@@#@@@##%?++++===++*++*%?+*S##@#@@##%*=--+##############%%%*
,,:;;;;;;-=?S######@@@#@@@@#%**=+===--=-==+?%%?S#######S?+---=###@@@@##@##S%S#+-
,,:;;;;;;;-=%##@#@@@@@@@@@@#????**+*++++*+==*S#########?*=---=S###@@#######*=%?=
,;-;;;;;;---*######@@@@####S*????????%%%%%?+*S#######S?*=-----*###SS%%%%????SS%=
-+?-;;;;;;--=%###S########S?*??%%%%%%SSSSS%?%@@#####S?++-;;;;-=*%%%***?*???%S#S+
=?%=;;;;;;--=+?####SS####%?*?%%%%%%SS######SS#####SS*===-;;;;;-??%%%%???%%%%%S#?
?SS=;;;;;;;-===+%S####S%?**+*%%%%%SSS#######S%?%%%?+=-=-;;;;;;-*%%%%%??%%%%%%S#S
?SS=;;;;;;;;-==--=***+==+++?%%%%%%SS##@#####S%+=++=-----;;;;;;-?%%?%%%?%%%%%%S##
?SS=;;;;;;;;;-=-;;------**??%%%%%%SS##@######S+=-------;;;;;;;-*%?%%S%%%%?%%%S##
S*%+;;;;;;;;;---;;;;;;;-+*??%SS%%%S###@@#####S*---;----;;;;::;=?%%?%*SSS**?%%S##
%?**;;;;;;;;;---;;;;;;;-+*?%%SSSSSS####@####SS?--;;;--;;;::::;-?%%???S##SS%%%S#@
%%?*;;;;;;;;;;---;;;;;;;-*?%%%SSSS#####@####SS%=-;;;--;;:::::;-?%%%%S####%%?SS#@
??%?;;;;;;;;;;;---;;;;;;;=*?%%SSSS#####@##SSSSS+--;-=;;:::::;;-*%%%SS#####SSS##@
??%%-;;::;;;;;;-----;;;;---=*?%SSS########SSSSS?-----;;;;:::;;-+%SSSS######S###@
**SS=;;::;;;;;;;----;;;;-;-++==+?%%#######SSSSS%=--=-;;;;;;;;;;=%S####SS#######@
?*S#+;;::;;;;;;;---;;;;;;-==-=-=-+*%######SSSSSS+===--;;;:::;;;-%#############@@
?%##*;;:::;;;;----;:;;;;;--;--=--==?######SSSSSS?+++-;;::::::;;;*#############@@
+%##?;;::::;;;---;::;;;;;;;-----==?########SSSSS%+*+-;;:::::::;;+########@@@@@@@
*S##%;;:::::::;;:::::;;;;;;;---==?#########SSSSS%**+-;;::::::::;-S######@@@@@@@@
*###%-;::::::::::::::;;-;;;;--==?##########SSSSSS?*=;;;;;;;;;::;-%##@@@@@@@@@@@@
?#@@S-;:;;;---;:::::::;;;-;;--=*S####SSS###SSSSS%%*=--=------;;:;*#@@@@@@@@@@@@@