class_docstr: Deformable 2D convolution.
  
  Applies a deformable 2D convolution over an input signal composed of
  several input planes. DeformConv2d was described in the paper
  `Deformable Convolutional Networks
  <https://arxiv.org/pdf/1703.06211.pdf>`_
  
  Note:
      The argument ``im2col_step`` was added in version 1.3.17, which means
      number of samples processed by the ``im2col_cuda_kernel`` per call.
      It enables users to define ``batch_size`` and ``im2col_step`` more
      flexibly and solved `issue mmcv#1440
      <https://github.com/open-mmlab/mmcv/issues/1440>`_.
  
  Args:
      in_channels (int): Number of channels in the input image.
      out_channels (int): Number of channels produced by the convolution.
      kernel_size(int, tuple): Size of the convolving kernel.
      stride(int, tuple): Stride of the convolution. Default: 1.
      padding (int or tuple): Zero-padding added to both sides of the input.
          Default: 0.
      dilation (int or tuple): Spacing between kernel elements. Default: 1.
      groups (int): Number of blocked connections from input.
          channels to output channels. Default: 1.
      deform_groups (int): Number of deformable group partitions.
      bias (bool): If True, adds a learnable bias to the output.
          Default: False.
      im2col_step (int): Number of samples processed by im2col_cuda_kernel
          per call. It will work when ``batch_size`` > ``im2col_step``, but
          ``batch_size`` must be divisible by ``im2col_step``. Default: 32.
          `New in version 1.3.17.`
code: def __repr__(self):
      s = self.__class__.__name__
      s += f"(in_channels={self.in_channels},\n"
      s += f"out_channels={self.out_channels},\n"
      s += f"kernel_size={self.kernel_size},\n"
      s += f"stride={self.stride},\n"
      s += f"padding={self.padding},\n"
      s += f"dilation={self.dilation},\n"
      s += f"groups={self.groups},\n"
      s += f"deform_groups={self.deform_groups},\n"
      # bias is not supported in DeformConv2d.
      s += "bias=False)"
      return s
  
imports: from typing import Tuple, Union
  import torch
  import torch.nn
  import torch.nn.functional
  from torch import Tensor
  from torch.autograd import Function
  from torch.autograd.function import once_differentiable
  from torch.nn.modules.utils import _pair, _single
  from annotator.uniformer.mmcv.utils import deprecated_api_warning
  from ..cnn import CONV_LAYERS
  from ..utils import ext_loader, print_log
label_desc: Use image node_id 4 for calling the DeformConv2d obj's underlying member method code with example usage: obj.__repr__() and returns: s