修改代码及单元测试