修复一个已知的bug，将代码拆分多个文件，优化代码
同步working分支内容