::--+**######*+=:: ::--+**######*+=::
..=*#################*=.. ..=*#################*=..
--*#######################*-- ::*#######################*--
::#############################-- ::#############################--
=###############################+ =###############################+
+#################################*##########*#################################*
=################################################################################+
..##################################################################################::
=##################################################################################*
+###################################################################################
+##################################################################################*
::##################################################################################=
*###################################################*=--::::::::--=*####################
..#################################################+--....................--+#################::
..###############################################=............................--*##############::
+###########################################*--................................::*###########+..
..+########################################=......................................::#########*::
..=###################################*=::..........................................+######+..
..--+*########################**+=--::................................................--#*+--..
*##########*++===------::::................................................................
#####*+=--::........................................................................................
#*+--::..................................................................................................
--..........................................................................................................
............................................................................................................
............................................................................................................
............................................................................................................
............................................................................................................
............................................................................................................
............................................................................................................
...........................................................................................................
.........................................................................................................
.......................................................................................................
....................................................................................................
................................................................................................
.............................................................................................
........................................................................................
....................................................................................
............................................................................
....................................................................
..::....................................................::..
..----::::........................................::::----..
..----------::::..............................::::--------..
..--------------::::::................::::::--------------..
..----------------------::::::::::::---------------------..
..-------------------------------------------------------..