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