class_docstr: State space representation of a time series process, with Kalman filter
  and smoother.
  
  Parameters
  ----------
  k_endog : {array_like, int}
      The observed time-series process :math:`y` if array like or the
      number of variables in the process if an integer.
  k_states : int
      The dimension of the unobserved state process.
  k_posdef : int, optional
      The dimension of a guaranteed positive definite covariance matrix
      describing the shocks in the measurement equation. Must be less than
      or equal to `k_states`. Default is `k_states`.
  results_class : class, optional
      Default results class to use to save filtering output. Default is
      `SmootherResults`. If specified, class must extend from
      `SmootherResults`.
  **kwargs
      Keyword arguments may be used to provide default values for state space
      matrices, for Kalman filtering options, or for Kalman smoothing
      options. See `Representation` for more details.
code: def _smooth(
      self,
      smoother_output=None,
      smooth_method=None,
      prefix=None,
      complex_step=False,
      results=None,
      **kwargs,
  ):
      # Initialize the smoother
      (
          prefix,
          dtype,
          create_smoother,
          create_filter,
          create_statespace,
      ) = self._initialize_smoother(
          smoother_output, smooth_method, prefix=prefix, **kwargs
      )
  
      # Check that the filter and statespace weren't just recreated
      if create_filter or create_statespace:
          raise ValueError(
              "Passed settings forced re-creation of the"
              " Kalman filter. Please run `_filter` before"
              " running `_smooth`."
          )
  
      # Get the appropriate smoother
      smoother = self._kalman_smoothers[prefix]
  
      # Run the smoother
      smoother()
  
      return smoother
  
imports: import numpy
  from types import SimpleNamespace
  from statsmodels.tsa.statespace.representation import OptionWrapper
  from statsmodels.tsa.statespace.kalman_filter import KalmanFilter, FilterResults
  from statsmodels.tsa.statespace.tools import reorder_missing_matrix, reorder_missing_vector, copy_index_matrix
  from statsmodels.tsa.statespace import tools, initialization
label_desc: Use image node_id 7 for calling the KalmanSmoother obj's underlying member method code with example usage: obj._smooth(smoother_output, smooth_method, prefix, complex_step, results) and returns: smoother