fix some bug but find more bug