重构io