-:::::.:::.....::::................................ .......... . . ... ................. . . .... . . .... . .... . ......
:::::::............................................... . .. . . ... . ...
::::.....::...................................... ... ... .. ..
::::::..................................... .. . . . . .....
:::::.....::::::::... . ....................... . . ..... . ....
:::....::.-::==. -............................ . . ....... . . . .... ....
::::.....:-: ==. :............................. ... :::::::::::.. ....: . .. . ...
:::::.:...-:.+*. :.... .................. .::-: ::.. . =.:.: . ...
::::......-..-=: :.................. .. .::: .::..: ::=: ..:. . ...
:::::.:..:-..:=. :..... ........ .:: :-:-- .: :. ... ....
:::.....::-. :-. .: . . .. .:.:. .-- .-: ::.-. ...:: .. ...
::::-::-::-: =+: .:..... .::. ..::=.=- ..:.-:.:.. :.:::: .: ::::: . ... .. .. .......
:::::--:..-: :-. .:.... :-. .. .-:.-.--::.=.::-:.:.--- -::..--::.: . ................ ...............
:::::-+-:::: --=::... :-: :..--:-- : ..=::-=:.%##. .-: -:.:= ::.::..::: .. ... ................................:.
:::::+=:::-: .=-.:.:....... .:: .:-::.-##%#---::-:%%%=%%%%--.:- ::--: - ::-.-::-....... . ...................... .. .........:
-::::++:::-:.-.-=.:::...........:-: -:-..:: .:=+%@*#%#:-::#@@@@@@%* :. .. :-:.=.:. ::-..:..... ......... ............ ................
::::-+*:::-:-=::::::::.......-:: ..---=---.#@*#%@@#-%@%=#@@%%#*=*= -:--: ::. .........:... . ......................... ................
:::::==:::::-+.-+-:::::....:- ::::--==-%%#%-#@@@%#%@@@@##%%%%@%@@%:- :: :. .:: .:.. ..-:-.::- . . ....................... .............:.
::::--=-:::---.::::::::.:.=- .=%%+=%%@-@%#%%#@##%@@@@@##%%%@@%%##*===.=+=:: :.:::: ....::-.::.:: ........ ...................... ...............
:-:::+*::::-----::::::::-: +@@##@@%#%%@@@%*#@%@@@%*#%%@%@@*#%%%@@%+*+#+-...- ::::.. :: ..:...... .. .....................................
:::::-*::::::::::::::::- +@@%%%%%%#@@@%+#%%%@@#+%@@@@@#*%@@@@@@@%-::. :::. :=:..:: . :-:. ::: .......................................
::::::-:::::::::-::::=: -%#%%@@#%%@@#+%%#@%**#@@%@%#%@@@@%@@@@%%+. :=-:. :-:.-:.:-. ... :::-:. ..... . . ...... .......
::::::::::::::::-:--- .=##%%+*##%###*@@%*#@%%%*+%%#@#%@%#*+*== -.::- --... -.: .:-: :::: :- . ..
=----::::::::--=+-. ++=++*@@@##@#%##*%%#%@%@+**=#*==:: .=.: :-.::. -::=:= .
--::---==++*+#+- .:: .:-.:+%%%@%*#%*%%*##@#@#@***#+: ---: :.-.::-: .:-:--
%%%%%%%*%*+*-. . ...:-= .--:.. .:++*-%%@@+%%*%#*##*%@@%*##- .::::- .-. -.. ::: ::-:
**####*+-: ..:=:...::-: .--.:- -. -*%#%#:-+*-#+##%%@%@@##*= ::: =- .:-: ...-.::-- ..
%#*+-. :-:=:..:--:=-.. ::. .:=-..:-::.. :: ..=:####%#%@@@@#**#: . : :.-. . ...
.......... ..... -:.. .:::::-=:.:-. ..=. ::: .:. .. :-+#%+:-*#=+#%#**#. .=:.:-:.-. ..
.. ...::....-==-. :.-=++-: .--.:=-..- ::-:-...-:..:..:: =: :-::.+@@*#### .:. :. ..
..... .::-:--==----=++%#*+=.=:.---..-=- .-- :-##=+.:==.%@*- .::- =++*++@%%##= . :. .
........--=::--::..:*+@@**+#%##:....:==-=-.. =@%@#-*@#+*#*=-*-:::.-*-@%#@*%@@##: .: .:
...:.:+-=-:.-:-:--..:-@#**@%@##: .=.-.:::. .=**#%#++%%#%#*%#.+..-==#@#%%*@@##= .: .-:
..:--=-:=:-:+-::--::==-:-=##+%*@-:--:::::.. ..::: .:=@%#####%=*=%*#=@@*%%#@%*#. :. .:.::.
.---==:::=-%*=. :-::::+-****%%%#= ::--.=-. .. .. -::-=##*##@#%@+#=+%*@%##@%#%*== .: :::
..:::+=+:.-*@#%-#*+*+.#%#**%##%---....==:=-+. :: ::::-=:##+#%@###=+*#%#%%#@#=*%** . :-. . :::-#
-.:-==:#*-.:+#@+%*%%@+*%%***%++=:--:+-=.+%*%+-:---:.::++%@%##@%%%@%%*%#%%#*%@%%%#+. ... .. -= :=- ::.::-==*
-:.:*%+#@#:::=###*#%%*%%@%**##+= :*-%*@-###%%*+:..-*%*=*=#%@%*%*%%#=+*%%#+:#%%%%-=*.. .. . . . . .................:=..-:=: :..- -**+#%
.....:--:..::-=:=*#%@%#@@%%+*#%@%:*#@##%***%%%%#:*=:#+##%*#@%=**%: .=+*%@+@%#%%#*:............. . . . .. ...........................:::::::::-::::=*++-:: .:.::=-*#%%
---..:..::--.:-=-=+*#%%*%*%#*#*#*+%#*%@+%+-#%@%+%#%%=#%#%#%*#+#%. .:-=%@%@%*-:::.:::::::..........................................:.....::::::::::------------==++#%*==: ::::. .***#%%
::=:-:::--:....:::=-.-+*##+@%####%#%#*%*%@%#*##%%%#%#%@*%#+%%%* .*###%*+--------::--:::::.:::.:.:::::::::::::::::::.::::::::-::::---------==-==========++*+*#*+-. .- .*######
:.=..:::.:=-.. .:=:-==-=+=**#%%%###+####%%#%%*=+#@%%%##: *-*=. =##%#+*===-:=--=-=----------------------------------==--=---============+++=+++++=**#***=+*= .:.-**##*=*@@@@
=::-:=----::.. .:--=-:::-=*++*#*#%###%%%##*##***##**%#**+- :*#%%#*===+::+=++==============+================-===+====++++++++++++++++++++++**##*=***=. .=+==#*****##*####
:::-:=--::-. .:-.=+==-=+=-::-+=+*+****%%%%#+*%@@%****%%= : :.:+%@%#*++++=++++++++++++++++++++++++++++++=++++++=++++++++++++++++++++++*+++##*-**+*-. : .:-%##%@@%%@%%%@@*=
-:::-*+#==+=-:=*#+-+===--=:---==:-:::=+*+***%*##%%%@%*- :- ::..=*%##*++++*+*+*=+****++++***+*+++++++- .-++++++++++++**+****+++*+++++++-*+++=: :..:.:+#*-*##%%%%%%%%#*=-:..
.::.%@@@++@#%*-@@%#=--=+=+--==::-..:--==-+-..--=+==:. ::.- :. -: :+**++***+**+******************+- -+++*********+*****+**+++++=--:::. :. -. ..-*%#%%%%%%#+-. ::.
....#@@%#%*-#%=#@@+%*=--=+===-:::==-=++++.=*#-. . :::= . =: :*************#*#******+. . =*****************+++=-:::-:. .*+=*++#%####%*+: .:-:
.. .#@%##@+*%@@*%%@%#*+-=====++===-=%%%%#*+: .-. :.:=. ..:. :::. :+***********+===+*=:...+* - :. :-********++**+=-:::--:. .:. .:... .-:=##@%*=: :-+**-
. ..+#@%###*%#*#%@@%+%*=:--=-=++-..:=+-. :.. ::. :- :=::. --. . :-. -:. :+**********=+*-::-==#%%#@..=*%==:-..:+*###=-::::::==-: :..: :::.-=== +-=*=-: =***-
. . ..=+#+%%##%@##*%##=-:......::.. :::. .. --..:- ...::. ..-:... .: .-. -*%%%%####%#@@%*+-=###*############%%%#%*=-====: .:: :::-==*==+**+=::. .=+*#*+:
... . .:::-::. ..... :.-.. : -.-- .- : . .: =-..: .:::-=. .- ..:-=+#@@@@@@@@%***#####%%#****#*##*+-:. .... :-+#**#++=-:. .:::-+-:. . .:=+
.. . :--..... .-.: ::: :-:-- :: :.:: ::-. .::*#*:.:- :..+*+. -*#- : .:-==-=+**###*--+=-----:. :.: :+=:-=:.:=--:. -+*######+. .:=+####
.. ...... ... -...... .:.:- -:.:- .: :: .+*-.==*#=. : -*+*%%= .==*+ :#+- ......................---::.==::::. :::::=+#######=. .---::=+**%%
... .::..:... .:... .-::-...-.. . -. ..:.. .%*+:*+-**-.=:=*. .+#@%*.:**+*-.-%%#=. -+*#%%%%%%%%%%%#*: .:::.=+***#%%%%##
... ...:.-=::-:::...:: -:-... .. ::.:-. .=. .:-: :. .::-. +*#+:*=-==--=:=*: :+%%%==%%##*-:*@%%+. .. .. .-:::---==-----:.. +###%%%%#######**+
..... ..:-: :::--: .:: . -%@%.:::.:: :::--. =. := .-.--.: .: :%*#**=*=--=*****::: -*%%#%@@%%#=:*@%%*- -==+=::... :=+***+*####%%%%%%*- .:-==-------::-:-
.... .. .. .--- .. . .=@#=::--: :::..: .- .-:.: =- -- :.: -@#@*+%%==--*****=-+:. .=+#%@@@@#=-*@@@%=. =++=:. .-+*#####*++===+*******#+. .--=+*%%%%%%@@@
.........--:::= :+#+=%.=-. *@:+@#+-:::= .:.: ::. : :-: ..::..-: ::: -::- *%@%*#@%%#=-=+-===:+*+==:.-::+%@@@@%+=*#@@@%+-. :*%@%*+=-. :*##*+====++*#%%%@@%%%%%+: :=+*#%%%@@@@@@@@%%%@
.......-+*##*:-=-:+*:#%#%+.%@@%##*=.:-::.=:. : .-- : -.:-- -. -: .-:--.- -: +@%@*#%@@%*=-*+#*==-=--++=##=::=*#@@%%%##%@@@@#*=: :*%@@@@%*=::-*##@#+**--=-::+*+- .. .-=****+*#####+=-:::-:.::::
.....:#+%##%%+-##%=%%%####%%##**=. :::-. -:+- .-. .:- :.=-. +#*.=#*+: .-.. :#%@##%@@%%#+======-====-==+==-:..:-+*#%%%%@@@@@@%*=-..-=*%%%%%%##+*%%%%#%%%*=+- .:---==++===-...-=*########
....+@%@%#%*+###*@##@*%%%##.:::..:--..=%#+--. ...:-. - -.-.: :@%%+#*=.*#=- ..:: *@@%#%@@%%##*========++=--==*+=+--------===*+**%%@@@%#+=+#%=-#%*-*%*:*##*-: :-===++++++++++*****####%@@@@@@@@@
...+@@%=#%%=.=+%@#%%#%%**%@%.. *@%*@%==%##%%+......+-..--. :%@%@@%=+#+- :=.:. :*@@%%%@@%%%%#+=++====-==-====+--------------::::----=#++*#+**#+**#=-: .*################%%%@@@%%%%%%%%%%%%
..:@%####@%*-%%-**%@@@=#@*%#=**=#@#%%#%##%%#*#%# ::. :::+%%#@#:=:##= .:+@%%%%%@%%%#*===-::::::---------====------::=::----=:-==-=+=-. . .::::-::=*#@@@@@@@@@@@@@%#*++==+****##%@%%
..-@#@%%%@%*%@%%#=@%%#*@*@@@%#**%#@%%@@#@#%%%%%#. :. +@*: .=#+.-:=-%@+##=%@*. :. .=#@@%%%@@%%%%#++-:.. .......... ....::::::-:::::-----:. ..:--=+**##%@@@@@@@%#*##**+-:::... ..-
.::@#%@%**@*%%%%#+%@@##@%@%@*%%@+%%@@###@###@@#*:. :-*%@@# -:::%@*:-=*=%@+*%@@@%.:.:.. .=#@@%%%@@@%%%%#**+=---==++-::::-==+++++*++-:.. -%@@%%@@@@@%@@@@@@@@@%#*=: ........ .
.+@##@@%*@%%%%@@**@@#*@@%@@*%@%%%@%%@*#%@#@%@@=. .::=++:-+%+.-@@*==:..:*#*#**#%@@@+#*:-:-:.: :-+**##%%%%%%@%%%%%@@@@@@%@%%#*+=-:. .::-=+++++===--::.. ............ ................
=@@**%*@%@%*@%@@%*%@@*%@@@%@*%@@####@%*@@#@%****.**+-%#%::-:. =-:::--..-- +#%@@%%@#+:==.=. . .:-===+++++==---::. ............... ........ . .... ................................: