##____________######____________##
##_____####################_____##
##______##____#____#____##______##
######__##____######____##__######
##__##__##____##__##____##__##__##
##__##__##____##__##____##__##__##
##____________######____________##
##_____####################_____##
##______##____#____#____##______##
######__##____######____##__######
##__##__##____##__##____##__##__##
##__##__##____##__##____##__##__##