__######__##___##_###___##_########_##___##_#######_######_
_##_______________####__##____##____##___##_##______##___##
_##__###__##___##_##_##_##____##____#######_#####___##___##
_##____##_##___##_##__####____##____##___##_##______######_
_##____##_##___##_##___###____##____##___##_##______##___##
__######___#####__##____##____##____##___##_#######_##___##