ooo
                  o$$$$$$          o$$$$$o             ooo
                 $$$$$$"""""""""$o$$$$$$$$oo"""""""o o$$$$$$o
                  ""$             $$$$$"            $$$$$$$$$
                   $                $                 $$$$$$$
                 o ooooo                               "$$$"
               o  $$$o$$   o$$o   o" ooo                "$
               $   """    "$ o$$ o o$" $    $$"$$$      
               o     ooo    ""$"  o"$$"      "$$$$$      $
           oo$$$"" "o "$""         "    o      """     oo"
         o$$$$o        """"oo$$$$oo"$ $"$"  o     o"$$$$
       o$$$$$$$$"$$$$$$$$$$$$$$$$$ $$$o$""""          "$$$
       $$$$$$$$$o$$$$$$$$$$$$$$$$$o$$$$$$$o             $$$$
       $$$$$$$$$$$$$$$$$$$$$$$$$$ $$$$$$$$$$o     oo$$$$$$$$o
      o$$$$$$$$$$$$$$$$$$$$$$$$$$ $$$$$$$$$$$$$oo$$$$$$$$$$$$
   o$$$$$o"$$$$"          "$$$""  $$$$$$$$$$$$$$o"$$$$$$$$$""o
 o$$$$$$$                          "$$$$$$$$$$$$$$o"$$$$$"     $$o    ooo
 $$$$$$$$                        $     "$$$$$$$$$$$$           $$$$$o$$$$$
 $$$$$$$$o              ooo$$$$$$$         """""""$"          $$$$$$$$$$$"
  $$$$$$$$   o$$$$$$$$$$$$$$$$$$$$o   oo$$$$$$$$$o     o$$$$$ $$$$$$$$$$$
   $$$$$$$"o$$$$$$$$$$$$$$$$$$$$$$$oo$$$$$$$$$$$$$$$$$$$$$$$$$o$$$$$$$$"
   o$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$"$$$$$
  $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$"$$$$$$$$$$$$$$$$$$$$$$$$$$$$$"""
 $$$$$$$$ $$$$$$$$$$$$$$$$$$$$$$$$"    "$$$$$$$$$$$$$$$$$$$$$$$$$$$$
 "$$$$"" $$$$$$$$"""$$$$$$""""           "$$$$$$$$$$$$$$$$$""$$$$$"
          $$$$$"                              """"$$$$$""