优化了基础版本