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