第二次提交，完成版