renamed self._kargs to self._function_options