code: def __init__(self, num_nodes, filters, reduction):
      super().__init__()
      self.preproc0 = Calibration(filters)
      self.preproc1 = Calibration(filters)
  
      self.nodes = []
      node_labels = [InputChoice.NO_KEY, InputChoice.NO_KEY]
      name_prefix = "reduce" if reduction else "normal"
      for i in range(num_nodes):
          node_labels.append("{}_node_{}".format(name_prefix, i))
          self.nodes.append(
              Node(node_labels[-1], node_labels[:-1], filters)
          )
  
      self.conv_ops = [
          Conv2D(filters, kernel_size=1, padding="same", use_bias=False)
          for _ in range(num_nodes + 2)
      ]
      self.bn = BatchNormalization(trainable=False)
  
imports: import tensorflow
  from tensorflow.keras import Model, Sequential
  from tensorflow.keras.layers import AveragePooling2D, BatchNormalization, Conv2D, Dense, Dropout, GlobalAveragePooling2D, MaxPool2D, ReLU, SeparableConv2D
  from nni.nas.tensorflow.mutables import InputChoice, LayerChoice, MutableScope
label_desc: Use image node_id 1 to create a new ENASLayer object from inherited base classes: Model with example: obj = ENASLayer(num_nodes, filters, reduction)