      """ Obtain a block of upscalers.
  
  
      For this reason, the Upscale Filter list is created as a class attribute of the
      :class:`UpscaleBlocks` layers for reference by either the Decoder or Fully Connected models
  
 
</s> remove class Decoder():  # pylint:disable=too-few-public-methods
    """ Decoder Network.
 </s> add     For this reason, the Upscale Filter list is created as a class attribute of the
    :class:`UpscaleBlocks` layers for reference by either the Decoder or Fully Connected models </s> remove         # Scale g_block filters to side dense
        g_filts = K.int_shape(var_x)[-1]
        var_x = Conv2D(g_filts, 3, strides=1, padding="same")(var_x)
        var_x = GaussianNoise(1.0)(var_x)
        var_x = self._g_block(var_x, style, g_filts)
        return KerasModel(self._inputs, var_x, name=f"g_block_{self._side}")
 </s> add class UpscaleBlocks():  # pylint: disable=too-few-public-methods
    """ Obtain a block of upscalers.
    This class exists outside of the :class:`Decoder` model, as it is possible to place some of
    the upscalers at the end of the Fully Connected Layers, so the upscale chain needs to be able
    to be calculated by both the Fully Connected Layers and by the Decoder if required.
      """ Obtain a block of upscalers.
  
    This class exists outside of the :class:`Decoder` model, as it is possible to place some of
    the upscalers at the end of the Fully Connected Layers, so the upscale chain needs to be able
    to be calculated by both the Fully Connected Layers and by the Decoder if required.
  
      For this reason, the Upscale Filter list is created as a class attribute of the
      :class:`UpscaleBlocks` layers for reference by either the Decoder or Fully Connected models
  
keep add keep keep keep keep
 Train updates
  - Output full model summary last
  - Fix activations in Phaze-A upscales
  - Phaze-A Add option to place some upscales in fc model 
plugins/train/model/phaze_a.py