精简代码，增加注释，少量bug fix