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