fix so many bug