                                                                  
                                                                  
##    ##   ##   ##   #       #####   ##   ###### ## ##   #   #### 
###  ###   ##   ###  #       ##      ##     ##   ## ###  #  ##    
#### ###  # ##  #### #       ##     # ##    ##   ## #### # ##     
# ### ##  # ##  # #### ##### ####   # ##    ##   ## # #### ##  ## 
#  #  ## ###### #  ###       ##    ######   ##   ## #  ### ##  ## 
#  #  ## #   ## #   ##       ##    #   ##   ##   ## #   ##  ## ## 
#     ## #   ## #    #       ##### #   ##   ##   ## #    #   #### 
                                                                  
                                                                  
