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