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