code: def forward_expected(self, inputs):
      F = chainer.functions
      expander = self.expander
      axis = self.axis
  
      if self.update_statistics:
          decay = 0.9  # defaut value of F.batch_renormalization
      else:
          decay = None
  
      x_arr, gamma_arr, beta_arr, gy_arr = inputs
      x = chainer.Variable(x_arr)
      gamma = chainer.Variable(gamma_arr[expander])
      beta = chainer.Variable(beta_arr[expander])
  
      x_mean = F.mean(x, axis=axis, keepdims=True)
      x_var = F.mean((x - x_mean) ** 2, axis=axis, keepdims=True)
      running_mean = self.running_mean.copy()
      running_var = self.running_var.copy()
      y = _naive_batch_renormalization(
          x,
          gamma,
          beta,
          x_mean,
          x_var,
          running_mean[expander],
          running_var[expander],
          self.rmax,
          self.dmax,
          self.eps,
          decay,
      )
  
      # backward gradients
      gx, ggamma, gbeta = self._compute_backward(
          x, gamma, beta, y, chainer.Variable(gy_arr)
      )
      ggamma = numpy.squeeze(ggamma, axis)
      gbeta = numpy.squeeze(gbeta, axis)
  
      return (y.array, running_mean, running_var, gx, ggamma, gbeta)
  
imports: import numpy
  import six
  import chainer
  from chainer.functions.normalization import batch_renormalization
  from chainer import testing
  import chainerx
label_desc: Use image node_id 5 for calling the TestBatchRenormalizationForward obj's underlying member method code with example usage: obj.forward_expected(inputs) and returns: y,  running_mean,  running_var,  gx,  ggamma,  gbeta