def _verify_lags(self, min_covariates_lag, max_covariates_lag):
        """Check the base requirements for `min_covariates_lag` and `max_covariates_lag`:
        - both must either be None or an integer
        - min_covariates_lag < max_covariates_lag

        This method can be extended by subclasses for past and future covariates lag requirements.
        """
        # check that either None one of min/max_covariates_lag are given, or both are given
        if (min_covariates_lag is not None and max_covariates_lag is None) or (
            min_covariates_lag is None and max_covariates_lag is not None
        ):
            raise_log(
                ValueError(
                    "`min_covariates_lag` and `max_covariates_lag` must either both be `None` or both be integers"
                ),
                logger=logger,
            )
        if min_covariates_lag is not None:
            # check that if one of the two is given, both must be integers
            if not isinstance(min_covariates_lag, int) or not isinstance(
                max_covariates_lag, int
            ):
                raise_log(
                    ValueError(
                        "`min_covariates_lag` and `max_covariates_lag` must be both be integers."
                    ),
                    logger=logger,
                )
            # minimum lag must be less than maximum lag
            if min_covariates_lag > max_covariates_lag:
                raise_log(
                    ValueError(
                        "`min_covariates_lag` must be smaller than/equal to `max_covariates_lag`."
                    ),
                    logger=logger,
                )
Check the base requirements for `min_covariates_lag` and `max_covariates_lag`:
        - both must either be None or an integer
        - min_covariates_lag < max_covariates_lag

        This method can be extended by subclasses for past and future covariates lag requirements.
        
darts/dataprocessing/encoders/encoder_base.py