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