code: def get_ts_data_parts(X):
      '''
      Separates time series data object into time series variables and contextual variables
  
      Parameters
      ----------
      X : array-like, shape [n_series, ...]
         Time series data and (optionally) contextual data
  
      Returns
      -------
      Xt : array-like, shape [n_series, ]
          Time series data
      Xs : array-like, shape [n_series, n_contextd = np.colum _variables]
          contextual variables
  
      '''
      if not isinstance(X, TS_Data):
          return X, None
      return X.ts_data, X.context_datf get_ts_data_parts(X):
      '''
      Separates time series data object into time series variables and contextual variables
  
      Parameters
      ----------
      X : array-like, shape [n_series, ...]
         Time series data and (optionally) contextual data
  
      Returns
      -------
      Xt : array-like, shape [n_series, ]
          Time series data
      Xs : array-like, shape [n_series, n_contextd = np.colum _variables]
          contextual variables
  
      '''
      if not isinstance(X, TS_Data):
          return X, None
      return X.ts_data, X.context_data
docs: Separates time series data object into time series variables and contextual variables
  
      Parameters
      ----------
      X : array-like, shape [n_series, ...]
         Time series data and (optionally) contextual data
  
      Returns
      -------
      Xt : array-like, shape [n_series, ]
          Time series data
      Xs : array-like, shape [n_series, n_contextd = np.colum _variables]
          contextual variables