###############################
############......#############
###########...................#
###########...................#
###########...................#
############......#...........#
###################...........#
######################........#
######################........#
######################........#
######################........#
######################........#
###########......#####.......##
#####~#####..................##
#####~~~#~~......#####.......##
####~~~~~~~~.....#####.......##
####~~~~#~~......#####.......##
###########......#####.......##
###########......#####.......##
###############################
###############################
