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