优化了main