fix a bugs