code: def _fit(
      self,
      series: TimeSeries,
      future_covariates: Optional[TimeSeries] = None,
  ):
      super()._fit(series, future_covariates)
      if self.kf is None:
          self.darts_kf.fit(series=series, covariates=future_covariates)
  
      return self
  
file_path: darts/darts/models/forecasting/kalman_forecaster.py
imports: from typing import Optional
  import numpy
  from nfoursid.kalman import Kalman
  from darts.logging import get_logger
  from darts.models.filtering.kalman_filter import KalmanFilter
  from darts.models.forecasting.forecasting_model import TransferableFutureCovariatesLocalForecastingModel
  from darts.timeseries import TimeSeries
label_desc: Use image node_id 2 for calling the KalmanForecaster obj's underlying member method code with example usage: obj._fit(series, future_covariates) and returns: self