code: def forward(self, values, aux_values=None):
      b, t, h, d = values.shape
  
      init_weight, weight = self.get_exponential_weight(t)
      output = conv1d_fft(self.dropout(values), weight, dim=1)
      output = init_weight * self.v0 + output
  
      if aux_values is not None:
          aux_weight = weight / (1 - self.weight) * self.weight
          aux_output = conv1d_fft(
              self.aux_dropout(aux_values), aux_weight
          )
          output = output + aux_output
  
      return output
  
imports: import os
  import math
  import numpy
  from math import sqrt
  from scipy.fftpack import next_fast_len
label_desc: Use image node_id 2 for calling the ExponentialSmoothing obj's underlying member method code with example usage: obj.forward(values, aux_values) and returns: output