;. ....,:iL@@@@@@@@@@@@@@@@@@808@@@@@@@@@@@@@@@@@@@@@@@@@@@@@8                          .                          
                                              ..  ...,:i8@@@@@@@@@@@@@@@@@@@@0G808@@@@@@@@@@@@@@@@8@@@@@@@@8G.                                 .                  
                                            ,..,....,;i@@@@@@@@@@@@@@@@@@@@@880G0CftLC8@@@@@88GCLLLLC@@@@@@88;1                      .   i    ,:                  
                                           ......,,,;1@@@@@@@@@@@@@@@@@G;i1i8@8CfLtiG@@@@L111fLLft1ii1C@@@@@8G                      ,.       :;                   
                                          .......:;if@@@@@@@@@@@@@@@@;iii;i1t8888888@@@GL0@i.,1Lt11;;;i10@@8Lt                          :                         
                         ,,,:,,,.        ...,,,,,;18@@@@@@@@@@@@@@8;;;iiiitfL0@@@@@@8GL00:@L@@iL1ii;;;;i1888LG                          .                         
                        ,,:,::::;:      :,::::;;if@@@@@@@@@@@@@@f;;;iii1tffCLCG0880CLLGG1:t@Gf1ii;;;;;;i1C888ttGGLLfLf                                            
                       ,::::::;itL     ,:;;;ii1tG0@@@@@@@@@@@1:;;;;i1i1tLC80GG0GLffttf1ffLfttii;;;;;i;;ii108fi00GCCCCCCCCC:            i                          
                      ,::::;;itLGC   .,;;;;ittLGG08@@@@@@@1;;;;;;ii11fLG888880GGfttttttt1t11ii;::::;i;ii11t1ii@0GCCCCCCCCCCCC                                     
              i;iiit;:::;;;i1LG0GCLi;iiiiii11fGGG008@@@L;;;;iiii11ttC8@@@@880000Cft1ttt11i;;;;;;;;;;iii1111iC@@0GCCCCCCCCCCCCCL       .                           
            :;;;i1tf;;;;;iitL000GLttt11iiii;;;GG00088:;;;iiii111tfC8@@8@@@@f0000GLt1ttt1111i;ii;iiii111111t1@@@0GGCCCCCCCCCCCCCG      i                           
           ;;;ii1fG;;;iii1LG00GGCCffftt111ii;;;;;;;i;iiii1i11ffLC8@@@@88800GGG00GGfttttttftiiiiiiiii111111tt@@@8GGGGGCCCCCCCCCCCG                                 
          ;i11tttLG1iiiitCG0000CLLffffft11iiiii;iiiii11111tfLC0@@@@8888000GGCCCGGGLfttttffff1111iiii111111tt0@@8GGGGGGGGCCCCCCCCCL 1 t                            
          11iitLCGGCLtLLCG0000CGCCCCLfftt11111iii111111tfLG0@@@@@@@800000GGCLLCGGGCf111tffLLL111i1111111111fC@0GGGGGGGGGCCCCCCCCCGCC .                            
          111tfCG000CLG0000000GGCLCLLLfttttt111111ttLLC008@@@@@@@@@@00GGCLLfffLGGGCLfftL00fCLtt1111ttttttttfG0GGGGGGGGGGCCCCCCCCCCC                               
          1LLCGG000GCCCfLLLCCLLCCLCCCLLLfftttttttfLCG08888@@@@@@@@@@@00GGCLLfffCG088880GC080GGfCLG0880fttffL0000GGGGGGGGGGGCCCCCCCG t                             
         ,;;;tLi1LGLCfffLCCCGCCLLCCCCGCLLLftttffCG000888888@@@@@@@@@@@80GGCCLLLLLG08@@8088@88800000CLfffffLL00000G00GGGGGGGCCCCCCCGf                              
  .......:;;ii1tffttCCCCGCGGGGGCCfLCCCLLfffCCCCG00888888888888@@@@@@@@@@80GGCCCLCG08@@@@88@@0GGGGGft1ttffLL0000000000GGGGGGGCCCCCCG0                              
  ......,;;;;iiii1tLCGGGG0CCGGCCCCLfffffLCLLfLC008888888888888888@@@@@@@@8800GGGG08@@@@0CfLGGGGCLffttttfLLC0000000000GGGGGGGCCCCCCG0                              
  ,,,,,,;;i;;i1tttfLLCGG0CGGGGCLLLfLfLCCG00000088888888888888888888@@@@@@@@88808@@@@@88000GCCLLLLCfttttfLLCG0000000000GGGGGGCCCCCCG0                              
  ::::::;;iii11ttfftt1tGGGGCLLLffffLG088000000888888888888888888888888@@@@@@@888@8088800GCCCG080CftttttLLLGG000000000GGGGGGGGCCGGGG0                      .     ..
  ;;;;;;;ii111ii11ii1tf1LGLftffLLCC000GGGG000888888888888888888888888@@@@@@@@8@@8000888888@@@@0CftttfLGCLCCGG@@800000000GGGGGGGGGGG0 ..  ..        .. . ..........
  i;i;;;iiiiii1i;;i1tii111GLLLLGG008800G00888888@@@88@@@@@888888888@@@@@@@@@@@@88@@88880000000LftfLL008GCLLCG0@@@@@80000GGGGGGGGGGG0,,,,,,,,,,,,..,,,.,,.,,,,,,,,,
  1iiiiiiiiii;;;itfiiiii11tt00888@8888008@@@@@@@@@@@@@@@@@888888@@@@@@@@@@@@@@@@888@@@800000000G000@@@fLLfLCC0@888888@@@880GGGGGGGG0::::::::::::::::::::::::::::;;