add 自适应