code: def forward(self, x_in: Tuple):
      x, _ = x_in
  
      # if x1, x2,... y1, y2... is one multivariate ts containing x and y, and a1, a2... one covariate ts
      # we reshape into x1, y1, a1, x2, y2, a2... etc
      x = torch.reshape(
          x, (x.shape[0], self.input_chunk_length_multi, 1)
      )
      # squeeze last dimension (because model is univariate)
      x = x.squeeze(dim=2)
  
      # One vector of length target_length per parameter in the distribution
      y = torch.zeros(
          x.shape[0],
          self.target_length,
          self.nr_params,
          device=x.device,
          dtype=x.dtype,
      )
  
      for stack in self.stacks_list:
          # compute stack output
          stack_residual, stack_forecast = stack(x)
  
          # add stack forecast to final output
          y = y + stack_forecast
  
          # set current stack residual as input for next stack
          x = stack_residual
  
      # In multivariate case, we get a result [x1_param1, x1_param2], [y1_param1, y1_param2], [x2..], [y2..], ...
      # We want to reshape to original format. We also get rid of the covariates and keep only the target dimensions.
      # The covariates are by construction added as extra time series on the right side. So we need to get rid of this
      # right output (keeping only :self.output_dim).
      y = y.view(
          y.shape[0],
          self.output_chunk_length,
          self.input_dim,
          self.nr_params,
      )[:, :, : self.output_dim, :]
  
      return y
  
imports: from enum import Enum
  from typing import List, NewType, Tuple, Union
  import numpy
  import torch
  import torch.nn
  from darts.logging import get_logger, raise_if_not, raise_log
  from darts.models.forecasting.pl_forecasting_module import PLPastCovariatesModule, io_processor
  from darts.models.forecasting.torch_forecasting_model import PastCovariatesTorchModel
  from darts.utils.torch import MonteCarloDropout
label_desc: Use image node_id 2 for calling the _NBEATSModule obj's underlying member method code with example usage: obj.forward(x_in) and returns: y