bugfix and 重构代码