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