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