some bugs fixed but still have bugs