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