修改了一些函数