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