code: def forward(self, input):
      output_d0 = self.conv0(input)
      output_d1 = self.conv1(output_d0)
      # comment to disable skip-connections
      output_d2 = self.conv2(output_d1)
  
      output = output_d2
      for layer in self.resnets:
          output = layer(output) + output
  
      output_u2 = self.upconv2(torch.cat((output, output_d2), dim=1))
  
      output_u1 = self.upconv1(torch.cat((output_u2, output_d1), dim=1))
      output = torch.cat((output_u1, output_d0, input), dim=1)
  
      output_11 = self.conv_11(output)
  
      if self.append_smoothers:
          output_11_a = self.conv_11_a(output_11)
      else:
          output_11_a = output_11
      output_12 = self.conv_12(output_11_a)
  
      output = output_12
  
      return output
  
imports: import torch
  import torch.nn
  from torch.autograd import Variable
  from torch.nn import functional
  import torchvision
  from torchvision import models
  import pytorch_lightning
label_desc: Use image node_id 3 for calling the Generator obj's underlying member method code with example usage: obj.forward(input) and returns: output