template
优化