code: def forward(self, x):
      residual = x
  
      out = self.conv1(x)
      out = self.bn1(out)
      out = self.relu(out)
  
      out = self.conv2(out)
      out = self.bn2(out)
      out = self.relu(out)
  
      out = self.conv3(out)
      out = self.bn3(out)
  
      if self.downsample is not None:
          residual = self.downsample(x)
          if out.size() != residual.size():
              out = self.pool(out)
  
      out += residual
      out = self.relu(out)
  
      return out
  
imports: from __future__ import annotations
  import math
  from collections.abc import Sequence
  from typing import Union
  import torch
  import torch.nn
  import torch.nn.functional
  from monai.networks.blocks.fcn import FCN
  from monai.networks.layers.factories import Act, Conv, Norm, Pool
label_desc: Use image node_id 2 for calling the Bottleneck3x3x1 obj's underlying member method code with example usage: obj.forward(x) and returns: out