######################################## ######################################## ######################################## ######################################## ######################################## ######################################## ######################################## ################........################ ##############............############## ############................############ ###########..................########### ##########....................########## #########......................######### #########......###....###......######### ########......#+++#..#+++#......######## ########......#+++#..#+++#......######## #######.......#++##..#++##.......####### #######.......#+###..#+###.......####### #######.......#+###..#+###.......####### #######........###....###........####### #######..........................####### #######..........................####### #######..........................####### ########....##............##....######## ########.....###........###.....######## #########.....############.....######### #########......##########......######### ##########......########......########## ###########.......####.......########### ############................############ ##############............############## ################........################ ######################################## ######################################## ######################################## ######################################## ######################################## ######################################## ######################################## ########################################