protected function ...