code: def _verify_train_dataset_type(self, train_dataset: TrainingDataset):
      raise_if_not(
          isinstance(train_dataset, DualCovariatesShiftedDataset),
          "RNNModel requires a training dataset of type DualCovariatesShiftedDataset.",
      )
      raise_if_not(
          train_dataset.ds_past.shift == 1,
          "RNNModel requires a shifted training dataset with shift=1.",
      )
  
imports: import inspect
  from abc import ABC, abstractmethod
  from typing import Optional, Sequence, Tuple, Type, Union
  import torch
  import torch.nn
  from darts.logging import get_logger, raise_if_not, raise_log
  from darts.models.forecasting.pl_forecasting_module import PLDualCovariatesModule, io_processor
  from darts.models.forecasting.torch_forecasting_model import DualCovariatesTorchModel
  from darts.timeseries import TimeSeries
  from darts.utils.data import DualCovariatesShiftedDataset, TrainingDataset
label_desc: Use image node_id 4 for calling the RNNModel obj's underlying member method code with example usage: obj._verify_train_dataset_type(train_dataset) without return types