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