code: def __init__(
      self,
      in_planes: int,
      out_planes: int,
      kernel_size: int = 3,
      stride: int = 1,
      groups: int = 1,
      norm_layer: Optional[Callable[..., nn.Module]] = None,
      activation_layer: Optional[Callable[..., nn.Module]] = None,
  ):
      super(ConvBNAct, self).__init__()
  
      padding = (kernel_size - 1) // 2
      if norm_layer is None:
          norm_layer = nn.BatchNorm2d
      if activation_layer is None:
          activation_layer = nn.SiLU  # alias Swish  (torch>=1.7)
  
      self.conv = nn.Conv2d(
          in_channels=in_planes,
          out_channels=out_planes,
          kernel_size=kernel_size,
          stride=stride,
          padding=padding,
          groups=groups,
          bias=False,
      )
  
      self.bn = norm_layer(out_planes)
      self.act = activation_layer()
  
imports: from collections import OrderedDict
  from functools import partial
  from typing import Callable, Optional
  import torch.nn
  import torch
  from torch import Tensor
  from utils import *
label_desc: Use image node_id 1 to create a new ConvBNAct object from inherited base classes: nn with example: obj = ConvBNAct(in_planes, out_planes, kernel_size, stride, groups, norm_layer, activation_layer)