fix bug function