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