部分改进
修改了bug