code: def __init__(self, in_dim, out_dim, kernel, padding=0):
      super().__init__()
  
      with self.name_scope():
          self.weight = self.params.get(
              "weight_orig",
              shape=(out_dim, in_dim, kernel, kernel),
              grad_req="write",
              init=mx.init.Normal(1),
          )
          self.bias = self.params.get(
              "bias",
              shape=(out_dim),
              grad_req="write",
              init=mx.init.Zero(),
          )
          self.kernel = (kernel, kernel)
          self.channel = out_dim
          self.padding = (padding, padding)
  
imports: import numpy
  from math import sqrt
  import mxnet
  import mxnet.ndarray
  import mxnet.gluon.nn
  from numpy import prod
label_desc: Use image node_id 1 to create a new EqualConv2d object from inherited base classes: nn with example: obj = EqualConv2d(in_dim, out_dim, kernel, padding)