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