code: def __init__(
      self,
      inplanes,
      planes,
      stride=1,
      downsample=None,
      groups=1,
      base_width=64,
      dilation=1,
      norm_layer=None,
  ):
      super(BottleneckBlock, self).__init__()
      if norm_layer is None:
          norm_layer = nn.BatchNorm2D
      width = int(planes * (base_width / 64.0)) * groups
  
      self.conv1 = nn.Conv2D(inplanes, width, 1, bias_attr=False)
      self.bn1 = norm_layer(width)
  
      self.conv2 = nn.Conv2D(
          width,
          width,
          3,
          padding=dilation,
          stride=stride,
          groups=groups,
          dilation=dilation,
          bias_attr=False,
      )
      self.bn2 = norm_layer(width)
  
      self.conv3 = nn.Conv2D(
          width, planes * self.expansion, 1, bias_attr=False
      )
      self.bn3 = norm_layer(planes * self.expansion)
      self.relu = nn.ReLU()
      self.downsample = downsample
      self.stride = stride
  
imports: from __future__ import print_function
  import paddle
  import paddle.nn
  from paddle.utils.download import get_weights_path_from_url
label_desc: Use image node_id 1 to create a new BottleneckBlock object from inherited base classes: nn with example: obj = BottleneckBlock(inplanes, planes, stride, downsample, groups, base_width, dilation, norm_layer)