              var_x = LeakyReLU(0.1, name="{}_leakyrelu".format(name))(var_x)
          return var_x
  
      def upscale(self, inp, filters, kernel_size=3, padding="same",
                  use_instance_norm=False, res_block_follows=False, **kwargs):
          """ Upscale Layer """
          logger.debug("inp: %s, filters: %s, kernel_size: %s, use_instance_norm: %s, kwargs: %s)",
                       inp, filters, kernel_size, use_instance_norm, kwargs)
          name = self.get_name("upscale")
          if self.use_reflect_padding:
 
</s> remove             var_x = SubPixelUpscaling(name="{}_subpixel".format(name))(var_x)
 </s> add             var_x = SubPixelUpscaling(name="{}_subpixel".format(name),
                                      scale_factor=scale_factor)(var_x) </s> remove             var_x = PixelShuffler(name="{}_pixelshuffler".format(name))(var_x)
 </s> add             var_x = PixelShuffler(name="{}_pixelshuffler".format(name), size=scale_factor)(var_x) </s> remove opencv-python
 </s> add opencv-python>=4.0
                use_instance_norm=False, res_block_follows=False, scale_factor=2, **kwargs):
              var_x = LeakyReLU(0.1, name="{}_leakyrelu".format(name))(var_x)
          return var_x
  
      def upscale(self, inp, filters, kernel_size=3, padding="same",
                use_instance_norm=False, res_block_follows=False, scale_factor=2, **kwargs):
          """ Upscale Layer """
          logger.debug("inp: %s, filters: %s, kernel_size: %s, use_instance_norm: %s, kwargs: %s)",
                       inp, filters, kernel_size, use_instance_norm, kwargs)
          name = self.get_name("upscale")
          if self.use_reflect_padding:
keep keep keep keep replace keep keep keep keep keep
 Nnblocks added scale factor to Upscaler (#869)

* Update nn_blocks.py 
lib/model/nn_blocks.py