              self.initializer = initializers.deserialize(self.initializer)
          var_x = self.initializer(new_shape, dtype)
          var_x = tf.transpose(var_x, perm=[2, 0, 1, 3])
          var_x = tf.image.resize_nearest_neighbor(
                           var_x,
                           size=(shape[0] * self.scale, shape[1] * self.scale),
                           align_corners=True)
          var_x = tf.space_to_depth(var_x, block_size=self.scale, data_format='NHWC')
          var_x = tf.transpose(var_x, perm=[1, 2, 0, 3])
          return var_x
  
      def get_config(self):
 
</s> remove         if type(self.initializer) is dict:
 </s> add         if isinstance(self.initializer, dict): </s> remove         encoder_complexity = self.config['complexity_encoder']
 </s> add         encoder_complexity = self.config["complexity_encoder"] </s> remove         var_xy = Dense(self.config['dense_nodes'])(Flatten()(var_xy))
 </s> add         var_xy = Dense(self.config["dense_nodes"])(Flatten()(var_xy)) </s> remove             kwargs["kernel_initializer"] = ICNR(initializer=kwargs["kernel_initializer"])
        var_x = Conv2D(filters * 4,
                       kernel_size=kernel_size,
                       padding=padding,
                       **kwargs)(inp)
        kwargs["kernel_initializer"] = temp
 </s> add             original_init = self.switch_kernel_initializer(
                kwargs,
                ICNR(initializer=kwargs["kernel_initializer"]))
        var_x = self.conv2d(inp, filters * 4,
                            kernel_size=kernel_size,
                            padding=padding,
                            force_initializer=True,
                            **kwargs)
        if self.use_icnr_init:
            self.switch_kernel_initializer(kwargs, original_init) </s> remove         var_x = Conv2D(3, kernel_size=5, padding='same', activation='sigmoid')(var_x)
 </s> add         var_x = self.blocks.conv2d(var_x, 3, kernel_size=5, padding="same", activation="sigmoid")
            var_x,
            size=(shape[0] * self.scale, shape[1] * self.scale),
            align_corners=True)
              self.initializer = initializers.deserialize(self.initializer)
          var_x = self.initializer(new_shape, dtype)
          var_x = tf.transpose(var_x, perm=[2, 0, 1, 3])
          var_x = tf.image.resize_nearest_neighbor(
            var_x,
            size=(shape[0] * self.scale, shape[1] * self.scale),
            align_corners=True)
            var_x,
            size=(shape[0] * self.scale, shape[1] * self.scale),
            align_corners=True)
            var_x,
            size=(shape[0] * self.scale, shape[1] * self.scale),
            align_corners=True)
          var_x = tf.space_to_depth(var_x, block_size=self.scale, data_format='NHWC')
          var_x = tf.transpose(var_x, perm=[1, 2, 0, 3])
          return var_x
  
      def get_config(self):
keep keep keep keep replace replace replace keep keep keep keep keep
 Add Convolutional Aware Initialization (#795)

* Training: Add Convolutional Aware Initialization config option

* Centralize Conv2D layer for handling initializer

* Add 'is-output' to NNMeta to indicate that network is an output to the Model 
lib/model/initializers.py