_#######_#######_##___##____###____###___##_###___##_#######_#######
______##_##___##_##___##___##_##___####__##_####__##_##______##_____
______##_##___##_#######__##___##__##_##_##_##_##_##_#####___##_____
__##__##_##___##_##___##_#########_##__####_##__####_##______#######
_##___##_##___##_##___##_##_____##_##___###_##___###_##___________##
__#####__#######_##___##_##_____##_##____##_##____##_#######_#######