extraction public function