code: def __init__(
      self,
      kernel_size: Union[int, Tuple[int, int]] = 3,
      stride: Union[int, Tuple[int, int]] = 2,
      **kwargs,
  ):
      super().__init__()
      self.pool = nn.MaxPool2d(kernel_size, stride, **kwargs)
      self.stride = self.pool.stride
      self.kernel_size = self.pool.kernel_size
  
      if isinstance(self.stride, int):
          self.stride = [self.stride] * 2
      if isinstance(self.kernel_size, int):
          self.kernel_size = [self.kernel_size] * 2
  
imports: import math
  from typing import Tuple, Union
  import torch
  import torch.nn
  from mmcv.cnn.bricks import Swish, build_norm_layer
  from torch.nn import functional
  from torch.nn.init import _calculate_fan_in_and_fan_out, trunc_normal_
  from mmdet.registry import MODELS
  from mmdet.utils import OptConfigType
label_desc: Use image node_id 1 to create a new MaxPool2dSamePadding object from inherited base classes: nn with example: obj = MaxPool2dSamePadding(kernel_size, stride)