
                     ....::""""""""""""""""""""".          .
     .  .          .* #### ;".    ~~.  :::::     :
                 .4#####:^.'  `.. ::::::    `. .   `           o
               .4#####::' :         ::::..'  ..  .   .
              .d####::  .  `. .    :       :: .
  .    o     .####::...:        .  `.    .  .  ....
            .d##::.d$$  `.           .       ::$$b. .  .      : .
          .d###::d$$$'::. ` .     .    .      :$$$$
        .d####:::$$$$#:: .......               .`$$b  :  .
        d####::.. `d##:.'                      : '$':: .
  o    d####::' . d$#::      .,  .              .  :.     .     o
     .d###::. ;  $$##:: ....'             .      ; . .
 . .d####::' :. .q$$###::                        :         .     :
   $###::. _.^.  `q$$$$##::    ..>  .   ..  .   :'  .
  $###::. ,--  ..:.`....::::..' .     .    .. .'      ::: .' :
  $##:: :`. .....'''''  ```.....  .  ......'''````...... :.
  $##:  ...' .......''''''''    """""   `````````.....  `. .  .
 d##: .' ...' ......."""""""""""""""""""""""""""....  `.  ;   .
 $#::.`.    .'    .^.        :     . '       ...    `..   :   .
(###  `.""""  .. .  ::...   .   :.                 .   ""''   :
 `@#$$$$$$$$$$$$$$$$$$$$$$#####::::::$$  :  : . .     .
     """""""""""""""""""""""""""""'' '  '
  o  .   o      .     o    .  o      .   o         o       . :  .
 . :   o  .  o   : o  .   o   .   o      .   o .  : . o .   o . .
    o        .       o       o        o      :    .       :    o
 $$$b  $$ .d$b. $$$b   $$$b  $$ .d$b. $$$b   $$$b  $$ .d$b. $$$b
 $ `$b $$ $$ $$ $ `$b  $ `$b $$ $$ $$ $ `$b  $ `$b $$ $$ $$ $ `$b
 $$$$' $$ $$ $$ $$$$'  $$$$' $$ $$ $$ $$$$'  $$$$' $$ $$ $$ $$$$'
 $ '$b $$ $$ $$ $ '$b  $ '$b $$ $$ $$ $ '$b  $ '$b $$ $$ $$ $ '$b
 $$$$' $$$`$$$' $$$$'  $$$$' $$$`$$$' $$$$'  $$$$' $$$`$$$' $$$$'
