重构代码，完善高级功能的判断