##SSSSSSS%%%%?????????%SSSSSSSS?*%%%*+---;=*+-;;-%SSSSSSSSSSSSSSSSSSSSSSSSSSSS##
#SSSSSSSS%%%%%?????????%SSSSSS**%S%%?+-;:;+%%+;;--?SSSSSSSSSSSSSSSSSSSSSSSSSSSSS
#SSSSSSSSS%%%????***??%%SSSSS?+SSSS%?+-;:-*%%*;;==-%SSSSSSSSSSSSSSSSSSSSSSSSSSSS
SSSSSSSSSSS%%%??*****?%%SSSS%+?S#SS%?*=;;=?%%*;;=*-+SSSSSSSSSSSSSSSSSSSSSSSSSSSS
SSSSSSSSSSS%%%?*****?*%%%SSS++%##SSS%*=;;=?%S*-;=++-?SSSSSSSSSSSSSSSSSSSSSSSSSSS
SSSSSSSSSSS%%%??*****??%%%S%-*S###SS%?+--*%S%+;-+*+-=%SSSSSSSSSSSSSSSSSSSSSSSSSS
SSSSSSSSSSSS%%%??*+++*?%%%S*-?S###SSS?+=%S%SS*-;+?+--*SSSSSSSSSSSSSSSSSSSSSSSSSS
SSSSSSSSSSSSSS%%?*+==+*%%%S+=?######S%??*=-=?S+-=*?=;=%SSSSSSSSSSSSSSSSSSSSSSSSS
SSSSSSSSSSSSSS%%??*===+?%%%==%######S%?+=-;;=%%++*?*;=%SSSSSSSSSSSSSSSSSSSSSSSSS
SSSSSSSSSSSSSSS%%?*+====?%?;=%######S?+=---;-*%???*?-*%%SSSSSSSSSSSSSSSSSSSSSSSS
SSSSSSSSSSSSSSSS%?**+===?%%;+SS#@##S%*+=--;;;+%%%?*=;*%%%%SSSSSSSSSSSSSSSSSSSSSS
SSSSSSSSSSSSSSS%%????++?%%%-=SS@###S?*+==--;;-?%%%*=-%%%%%%%%%SSSSSSSSSSSSSSSSSS
SSSSSSSSSSSSSSS%%%%%%*+?%%%=+%S#@###S%?*++*?%%SS%%*--%%%%%%%%%%%SSSSSSSSSSSSSSSS
SSSSSSSSSSSSSSS%%%%%%?*+*?%*=?S###@@@@S?*%##@@#S%%*-+%%%%%%%%%%%%%%SSSSSSSSSSSSS
SSSSSSSSSSSSSS%%%%%%%%?*==%?-+S######@#*-?SS%S#%%?+-+%%%%%%%%%%%%%%%SSSSSSSSSSSS
SSSSSSSSSSS%%%%%%%%%%%?*=-?%==%SS#S%%SS=:-=+*+*?%?+**%%%%%%%%%%%%%%%%%SSSSSSSSSS
SSSSSSSSSS%%%%%%%%%%%%?*=+%%-=??SS%??%S=::;;--=*??=-%%%%%%%%%%%%%%%%%%%%SSSSSSSS
SSSSSSSSS%%%%%%%%%%%%%%?==?%--+?%S%??%S=:;;;--=***-*%%%%%%%%%%%%%%%%%%%%%SSSSSSS
SSSSSS%%%%%%%%%%%%%%%%%%*=*??++%+%S%%S%-:;---=+++++?%%%%%%%%%%%%%%%%%%%%%%SSSSSS
SSSSSS%%%%%%%%%%%%%%%%%%?=*?%?+?-*SSSSS?+----=+=+=?%%%%%%%%%%%%%%%%%%%%%%%%%SSSS
SSSSS%%%%%%%%%%%%%?***???+?%S%*+-=?SSSS?=;;--==-=+?%%%%%%%%%%%%%%%%%%%%%%%%%SSSS
SS%%%%%%%%%%%%%%%%%SS%?**%#@@S**=-*%SS#%*=-=-=--=*?%?%%%%%%%%%%%%%%%%%%%%%%%%%SS
SS%%%%%%%%%%%%%%%%%%%SSS##@#%?***=+%###S?+=+==-+*???%?%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%SS%%S%%S#S?+*SS#S%*=====*????????%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%?%S#SS%S%?#S?%%%SS?=--=*?**???????????%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%?*###S%#S#%S%+%##SS?*+*%%%*+?????????????%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%??*%#SSS??S%@S?=S#@@@####S%%*=???????????????%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%????*S#S%S%?SS#%**#@@@@@@SS%%?*=*++**????????????%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%??????*%@#%%%??%%%S#@@@@@@@SS%???*%+==+++++??????????%%%%%%%%%%%%%
%%%%%%%%%%%%%%????????@#%*?**++?@@@@@@###S%???*?S?**?**=-=*?????????%%%%%%%%%%%%
%%%%%%%%%%%%??????????@#S***==+%@@@@@#SS#??+++*?#S?%******+**???????%%%%%%%%%%%%
%%%%%%%%%%%?????????*+@@#%**+*?S####SSSSS**++**?S%SS*??*??=;;;-+??????%%%%%%%%%%
%%%%%%%%%%???????*+==+#@#S???%%#SS%%%%%S%??**+++%??#****??**++=--+????%%%%%%%%%%
%%%%%%%%%???????+*?%S*#@##S%%SSSS%????%%%?*++==*S?*S##S%+*?*+++==++?????%%%%%%%%
%%%%%%%%??????+*%####*S@##SSSSSS%%?***?%%?*+===*SS*?%SS%*+*??*++?+++?????%%%%%%%
%%%%%%%%?????*+S#@###?#@#S#SSSSS%??***?%%?*====*##?**++++++%%?**?++++?????%%%%%%
%%%%%%%??????-?#@@##S?#@#SS%SSS%%??***?%%?*====*#@@#S%%????%S%?*?*+++*?????%%%%%
%%%%%%%?????+=S#@##S?@##SS%%SS%??*****?%%?*+===+S@####S####SSS%?*?**++?????%%%%%
%%%%%%??????=?#@@@#S%@@#SSS%S%?**++++*??%?*++++++?#S%%?*?S#SSSS%*?***+??????%%%%
%%%%%???????-%#@@@#SS@##SSS%%?*++++++**??**+++++==+%S?%*+?##SSSS???**+*??????%%%
%%%%????????-%#@@##%@@##SSS%?**++++==+*???**+++=====+S%%%?S##SS%?*%??**???????%%
%%%%????????-S@@@#S%#@##SSS%?**++=====+**??**++==----=%%%?S@SSS%?+?%?**???????%%
%%??????????-S@@@#S+#@@###S%?**++==--==***?***+==--;;-+%S?%#S%?**??S%**????????%
%%??????????=S@@@#S=###S%%%%?**++=----=***?***++=--;;-=+%S%#S?*==*%SS*??????????
%%??????????+S@@##**##S%?%%%?**+=-----=+**??**++=-;;;-==+%S#%?*=-+?SS*??????????
%???????????*%?#SS=S##S%?%%%?**+=-----=***???**+=--;---==*SS%?*==+?%S???????????
?????????????++%S?+###S%?%S%??*+==---=+***%???**+=-----+=+%S%?*==+?*%???????????
????????????*=*?S+%##S%??%S%%??*++==++*??%%%%??**+=====++*?S%%*+=+%?*???????????
????????????==%#S+S##S%??%SS%%??******?%%%SS%%%??**++++**?%S%%?*+*%??+*?????????
????????????=%%S*?##SS%??%#SS%%%??????%SSSSSSS%%???****???S#%%??**???++?????????
???????????%??%%*S##SS%%%S###SS%%%??%%%SS###SSSS%%%????%%%##SS??**???+*?????????
????????????%*?+%###S%%?%S####SSS%%%%%S########SSSS%%%%%SS##SS%%?*????*?????????
????????????*+**S##SS%%%%S@@@###SSSSSS####@#######SSSSSSS#@@##%?%S%??+*?????????
????????????=*+%###SS%%%%S@@@@@####SSS##@@@@@@@@#########@@SSS*++*%??*??????????
????????????-+*####SS%%%%S@@@@@@@@####@@@@@@@@@@@@@@@@@@@@#S%S%?**%??*??????????
???????????*==S####SS%%%SS@@@@@@@@@@##@@#@@@@@@@@@@@@@@@@@#SS%%+*%S%?*??????????
???????????+-*#####SSS%SSS@@@@@@@@@############@@@@@###@@@#S%%?++*%#%*??????????
???????????=-S@####SSSSSS#@@@@@@@#####SSS%%SS##########@@@#S%??++*?%#???????????
???????????+*#@@###SSSSSS#@@@@@@@@###S##SSSSS####@#@###@SSS%%?*++*??????????????
???????????=%@@@###SSSSSS#@@@@@@@@@@####SSSSS#####SS%%%%??%?*++=+*?**???????????
???????????*#@@@####SSSSS#@@@@@@@@@@########SSS%%%????***++++===+*?**???????????
????????????#@@@####SSSSS@@@@@@@@@@@@@@@##SS%%%%%?????**++*++===+*?*????????????
???????????%@@@@#####SSSSS@@@@@@@@@##SS%%%%%%%%%%%%%%%%%%%??**++*??**???????????
???????????%S@@@@#####SS#S#SSS%SSS%%%%%%%%%SSSSSSSSSSSSSSS%%%%?????*????????????
?????????*%SS@@@@####S###SSSS%%%%%%%SSSSSSSSSSS##SSS###SSSSSSSS%%S?*????????????
??????????%%S@@@@########SSSSS%%%%SSSS############################??????????????