          var_x = ResidualBlock(self.dense_filters, use_bias=False)(var_x)
  
          decoder_b_complexity = self.config["complexity_decoder"]
          for idx in range(self.upscalers_no - 2):
              var_x = UpscaleBlock(decoder_b_complexity // 2**idx)(var_x)
              var_x = ResidualBlock(decoder_b_complexity // 2**idx, use_bias=False)(var_x)
              var_x = ResidualBlock(decoder_b_complexity // 2**idx, use_bias=True)(var_x)
          var_x = UpscaleBlock(decoder_b_complexity // 2**(idx + 1))(var_x)
  
          var_x = Conv2DOutput(3, 5, name="face_out_b")(var_x)
 
</s> remove         var_x = UpscaleBlock(decoder_b_complexity // 2**(idx + 1))(var_x)
 </s> add         var_x = UpscaleBlock(decoder_b_complexity // 2**(idx + 1), activation="leakyrelu")(var_x) </s> remove             var_x = UpscaleBlock(decoder_a_complexity // 2**idx)(var_x)
        var_x = UpscaleBlock(decoder_a_complexity // 2**(idx + 1))(var_x)
 </s> add             var_x = UpscaleBlock(decoder_a_complexity // 2**idx, activation="leakyrelu")(var_x)
        var_x = UpscaleBlock(decoder_a_complexity // 2**(idx + 1), activation="leakyrelu")(var_x) </s> remove             var_x = Conv2DBlock(encoder_complexity * 2**idx)(var_x)
            var_x = ResidualBlock(encoder_complexity * 2**idx, use_bias=True)(var_x)
            var_x = ResidualBlock(encoder_complexity * 2**idx, use_bias=True)(var_x)
 </s> add             var_x = Conv2DBlock(encoder_complexity * 2**idx, activation="leakyrelu")(var_x)
            var_x = ResidualBlock(encoder_complexity * 2**idx,
                                  use_bias=True,
                                  activation="leakyrelu")(var_x)
            var_x = ResidualBlock(encoder_complexity * 2**idx,
                                  use_bias=True,
                                  activation="leakyrelu")(var_x) </s> remove         var_x = Upscale2xBlock(decoder_b_complexity, fast=False)(var_x)
        var_x = ResidualBlock(decoder_b_complexity, use_bias=True)(var_x)
        var_x = ResidualBlock(decoder_b_complexity, use_bias=False)(var_x)
 </s> add         var_x = Upscale2xBlock(dec_b_complexity, activation=None, fast=False)(var_x)
        var_x = ResidualBlock(dec_b_complexity, use_bias=True)(var_x)
        var_x = ResidualBlock(dec_b_complexity, use_bias=False)(var_x) </s> remove         var_x = Upscale2xBlock(decoder_b_complexity // 2, fast=False)(var_x)
        var_x = ResidualBlock(decoder_b_complexity // 2, use_bias=True)(var_x)
        var_x = Upscale2xBlock(decoder_b_complexity // 4, fast=False)(var_x)
        var_x = ResidualBlock(decoder_b_complexity // 4, use_bias=False)(var_x)
 </s> add         var_x = Upscale2xBlock(dec_b_complexity // 2, activation=None, fast=False)(var_x)
        var_x = ResidualBlock(dec_b_complexity // 2, use_bias=True)(var_x)
        var_x = Upscale2xBlock(dec_b_complexity // 4, activation=None, fast=False)(var_x)
        var_x = ResidualBlock(dec_b_complexity // 4, use_bias=False)(var_x)
            var_x = UpscaleBlock(decoder_b_complexity // 2**idx, activation=None)(var_x)
          var_x = ResidualBlock(self.dense_filters, use_bias=False)(var_x)
  
          decoder_b_complexity = self.config["complexity_decoder"]
          for idx in range(self.upscalers_no - 2):
            var_x = UpscaleBlock(decoder_b_complexity // 2**idx, activation=None)(var_x)
              var_x = ResidualBlock(decoder_b_complexity // 2**idx, use_bias=False)(var_x)
              var_x = ResidualBlock(decoder_b_complexity // 2**idx, use_bias=True)(var_x)
          var_x = UpscaleBlock(decoder_b_complexity // 2**(idx + 1))(var_x)
  
          var_x = Conv2DOutput(3, 5, name="face_out_b")(var_x)
keep keep keep keep replace keep keep keep keep keep
 lib.model - Maintenance
  - Add Depthwise option to Conv Block
  - Add Swish Activation function
  - remove res_block_follows and add_instance_norm_args
  - Add explicit normalization and activation args
  - Add K.resize_images layer
plugins.train.model - Inference creation bugfix 
plugins/train/model/realface.py