class_docstr: A module which applies the following actions:
      - convolution with 3x3 kernel;
      - batch normalization (if enabled);
      - ELU.
  Attributes:
      in_ch: Number of input channels.
      out_ch: Number of output channels.
      bn: A boolean indicating if Batch Normalization is enabled or not.
class_docstr_tok: ["A","module","which","applies","the","following","actions",":","-","convolution","with","3x3","kernel",";","-","batch","normalization","(","if","enabled",")",";","-","ELU",".","Attributes",":","in_ch",":","Number","of","input","channels",".","out_ch",":","Number","of","output","channels",".","bn",":","A","boolean","indicating","if","Batch","Normalization","is","enabled","or","not","."]
code: def __init__(self, in_ch: int, out_ch: int, bn=True):
      super(Conv3BN, self).__init__()
      self.conv = nn.Conv2d(in_ch, out_ch, 3, padding=1)
      self.bn = nn.BatchNorm2d(out_ch) if bn else None
      self.activation = nn.ELU(inplace=True)
  
imports: import torch
  import torch.nn
  import torch.nn.functional
label_desc: Use image node_id 1 to create a new Conv3BN object from inherited base classes: nn with example: obj = Conv3BN(in_ch, out_ch, bn)