code: def __init__(
      self,
      input_size: int,
      output_size: int = None,
      trainable_add: bool = True,
  ):
      super().__init__()
  
      self.input_size = input_size
      self.trainable_add = trainable_add
      self.output_size = output_size or input_size
  
      if self.input_size != self.output_size:
          self.resample = TimeDistributedInterpolation(
              self.output_size, batch_first=True, trainable=False
          )
  
      if self.trainable_add:
          self.mask = nn.Parameter(
              torch.zeros(self.output_size, dtype=torch.float)
          )
          self.gate = nn.Sigmoid()
      self.norm = nn.LayerNorm(self.output_size)
  
imports: import math
  from typing import Dict, List, Tuple, Union
  import torch
  import torch.nn
  import torch.nn.functional
label_desc: Use image node_id 1 to create a new ResampleNorm object from inherited base classes: nn with example: obj = ResampleNorm(input_size, output_size, trainable_add)