重构代码，添加注释