_    .  ,   .        .                              .          .         *        *             .          .        _  *      *      *
    *  / \_ *  / \_      *        *   /\'__        *                                                                       ((       .     .
      /    \  /    \,          .    _/  /  \  *'.         .         *        *          .           .         *        *    `      .     
 .   /\/\  /\/ :' __ \_          _^/  ^/    `--.              .          *         .          *        .          *             .     *       * 
    /    \/  \  _/  \-'\   *    /.'  ^_   \_   .'\  *__
  /\  .-   `. \/     \ /~=-=~-=-;.  _/ \ -. `_/   \_/  \______==~=-=~=-=-==~=-=~=-=-==~=-=~=-=-==~=-=~=-=--=~=-=-==~=-=~=-=-==~=-=~=-=-==~=-=~=-=-
 /  `-.__ ^   / .-'.--\ =~-=~=^/  _ `--./ .-'  `-    --       \=~=-=~=-=-==~=-=~=-=-==~=-=~=-=-==~=-=~=-=--=~=-=-==~=-=~=-=-==~=-=~=-=-==~=-=~=-=-
/mrgc    `.  / /       `._   .'      '-._ `._  `    .  `  --   \==~=-=~=-=-==~=-=~=-=-==~=-=~=-=-==~=-=~=-=--=~=-=-==~=-=~=-=-==~=-=~=-=-==~=-=~=-