      """ For a given model, return all sub-models that occur (recursively) as children.
  
      Parameters
      ----------
      model: :class:`keras.models.Model`
          A Keras model to scan for sub models
      models: `None`
          Do not provide this parameter. It is used for recursion
  
      Returns
 
</s> remove         A list of all :class:`keras.models.Model` objects found within the given model. The
        provided model will always be returned in the first position
 </s> add         A list of all :class:`tensorflow.keras.models.Model` objects found within the given model.
        The provided model will always be returned in the first position </s> remove for name, obj in inspect.getmembers(sys.modules[__name__]):
 </s> add for name_, obj in inspect.getmembers(sys.modules[__name__]): </s> remove class _GlobalPooling2D(keras.layers.Layer):  # type:ignore[name-defined]
    """Abstract class for different global pooling 2D layers.
 </s> add class SubPixelUpscaling(tf.keras.layers.Layer):
    """ Sub-pixel convolutional up-scaling layer. </s> remove         retval = get_all_sub_models(load_model(self._weights_file, compile=False))
 </s> add         retval = get_all_sub_models(kmodels.load_model(self._weights_file, compile=False))
    model: :class:`tensorflow.keras.models.Model`
      """ For a given model, return all sub-models that occur (recursively) as children.
  
      Parameters
      ----------
    model: :class:`tensorflow.keras.models.Model`
          A Keras model to scan for sub models
      models: `None`
          Do not provide this parameter. It is used for recursion
  
      Returns
keep keep keep keep replace keep keep keep keep keep
 Training fixes:
  - Fix mixed precision layer storing and switching
  - typofix in _requirements_base.txt
  - lib.model.layers - cleanup, docs and tests fixes
  - lib.model.nn_blocks - typing fixes 
plugins/train/model/_base/io.py