整理代码，修复bug