',.                                                                          
                    .lkxc.                         '                                              
.,;.                 ;xxx:                        ':'                               .             
':dx;     ',.        'dxxd;                       lol.               ....          ;o'            
lodx:    'd.         .oxxxd,                 .c:..okc.             'codxo:.        ;xl.           
.cxo. 'lxd,          .oxxxxo'                ,xl..lkl.            'c,.;oxxxo.     .;dxo.          
 .lxc:dxxo:;,'.      .lxxdxxo.  .,cc;        ,xl..ckd            'dc.  .:dxxo.  .,;codxxo,        
  'oxxxdl;'..'ll.    .lkx:;dxl,;oxl,.        ,xl..lxxo.         ;lx,     ,dxxl .oo. .':dxd,       
   ,dxo'     .ck:.   .lkx;.:xxxdc'           ,xl..oxdxo.        oxd'      ;xxx  lxo:'...,'.       
    ;dd'     .lkc. ...'oxxocccoxd,           ,xl.'xl,lxo'       xxd'      .oxxxc. ':lool:,'.      
     ;xo.    .ok:....;dxx:.  .:xd:.          ,xo,cd' .cxd:.     xxx;       cxxcoc.   ..,:lddc;.   
     .cxl.   ,dx;    .oxx,     ,oxl'         .oxl:.    ;dxl'    xxxl.      ;xx,dx,        .,lxd:. 
      'dx;   ;xd'    'dxd'      .:dd:.        ...       .cxd:.  xxxx;      ;xo.cxc           'lxl.
       :ko.  ;xo.    ;xxo.        .cdo;.       ..'',,;;;;:oxxl'  xxxd,     :x; 'dd'           .od'
       ,xd,  ;xl.   .cxxc           'cdo;.  ..'''''''''',;coxxxd llxxd:.  .oc. .:xo'           co.
       'oo'  ,xo.    ':;.             'cdo;.'               ';cdxl'cxxxdl:c;.   .:xd;.        .c' 
        ..   .ld'.,.                    .:dd:.                ,'d   ,cooc;.       'lxdc,.. .....  
              'oc.                        .,:,.                      'cd'            ';cllc:,'.   
               .;.