fix bug and really work