.qggL  *  .gggr.  .         '            .              *            .     +
  PMML  . /|MM        '.       +                    '
  |!MM,' /`|MM  .d/"q,  qgg;+Ml qgg;+Ml vgg. .y.            Vv   Vv   Vv   Vv
  | YMM,j' |MM  MM;.jMl |MM` "  |MM` "   qM| j`   x  O      o,   o,   o,   o,
  |  qM#'  |MM  MM|     |MM  +  |MM    .  MMg'  /(_){-}+--===--===--===--===.j
  |.  qF  .+MM..'MMbxr` jMM.    jMM.  *   'MF   \=====/   > >  > >  > >  > >
   .   *                                  x, /
  .x/--\xxl ,xx     .   *     ,gb      ' v#' .        . '                 *
.dMT    'q| |MM  '            '"'         .dM               *
dMM       ` |MM/dMg,  qgg;+Ml qgg  j/"`+  qMM-. qgg/dM#,w#Mb  ,g'`fg, j/"`+
MMM         |MM  MM|  |MM` "  |MM  MMbx/  |MM   |MM  |M|  MM  `p'. M| MMbx/
'MMl      . |MM  MM|  |MM  .  |MM  .`vMMl |MM   |MM  |M|  MM  ,',!.'| .`vMMl
 'vMb...r/` jMM..MM|. jMM.  + jMM. +,.,P' 'MMx: jMM..dM|..MM, M j't | +,.,P'
     ""         .'        *                  .     *        <=-=:: -=->  . '