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