dddddddd                    
         tttt                                                1111111                       d::::::d                    
      ttt:::t                                               1::::::1                       d::::::d                    
      t:::::t                                              1:::::::1                       d::::::d                    
      t:::::t                                              111:::::1                       d:::::d                     
ttttttt:::::ttttttt   rrrrr   rrrrrrrrr                       1::::1               ddddddddd:::::d     eeeeeeeeeeee    
t:::::::::::::::::t   r::::rrr:::::::::r                      1::::1             dd::::::::::::::d   ee::::::::::::ee  
t:::::::::::::::::t   r:::::::::::::::::r                     1::::1            d::::::::::::::::d  e::::::eeeee:::::ee
tttttt:::::::tttttt   rr::::::rrrrr::::::r ---------------    1::::l           d:::::::ddddd:::::d e::::::e     e:::::e
      t:::::t          r:::::r     r:::::r -:::::::::::::-    1::::l           d::::::d    d:::::d e:::::::eeeee::::::e
      t:::::t          r:::::r     rrrrrrr ---------------    1::::l           d:::::d     d:::::d e:::::::::::::::::e 
      t:::::t          r:::::r                                1::::l           d:::::d     d:::::d e::::::eeeeeeeeeee  
      t:::::t    ttttttr:::::r                                1::::l           d:::::d     d:::::d e:::::::e           
      t::::::tttt:::::tr:::::r                             111::::::111        d::::::ddddd::::::dde::::::::e          
      tt::::::::::::::tr:::::r                             1::::::::::1 ......  d:::::::::::::::::d e::::::::eeeeeeee  
        tt:::::::::::ttr:::::r                             1::::::::::1 .::::.   d:::::::::ddd::::d  ee:::::::::::::e  
          ttttttttttt  rrrrrrr                             111111111111 ......    ddddddddd   ddddd    eeeeeeeeeeeeee