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