add some public function