code back up. The nio framework is not clear now V_V