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