code: def _make_layer(
      self,
      block,
      planes,
      blocks,
      stride=1,
      dilation=1,
      norm_layer=nn.BatchNorm2d,
  ):
      downsample = None
      if stride != 1 or self.inplanes != planes * block.expansion:
          downsample = nn.Sequential(
              nn.Conv2d(
                  self.inplanes,
                  planes * block.expansion,
                  1,
                  stride,
                  bias=False,
              ),
              norm_layer(planes * block.expansion),
          )
  
      layers = []
      if dilation in (1, 2):
          layers.append(
              block(
                  self.inplanes,
                  planes,
                  stride,
                  dilation=1,
                  downsample=downsample,
                  previous_dilation=dilation,
              )
          )
      elif dilation == 4:
          layers.append(
              block(
                  self.inplanes,
                  planes,
                  stride,
                  dilation=2,
                  downsample=downsample,
                  previous_dilation=dilation,
              )
          )
      else:
          raise RuntimeError(
              "=> unknown dilation size: {}".format(dilation)
          )
      self.inplanes = planes * block.expansion
      for _ in range(1, blocks):
          layers.append(
              block(
                  self.inplanes,
                  planes,
                  dilation=dilation,
                  previous_dilation=dilation,
              )
          )
  
      return nn.Sequential(*layers)
  
imports: import torch
  import torch.nn
  import torch.utils.model_zoo
label_desc: Use image node_id 2 for calling the ResNetV1b obj's underlying member method code with example usage: obj._make_layer(block, planes, blocks, stride, dilation, norm_layer) and returns: nn