* fix bug: this -> self