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