  
          if exclude_gpus and self._tf_version[0] == 2 and self._tf_version[1] == 2:
              # TODO remove this hacky fix to disable mixed precision compatibility testing when
              # tensorflow 2.2 support dropped
              # pylint:disable=import-outside-toplevel,protected-access,import-error
              from tensorflow.python.keras.mixed_precision.experimental import \
                  device_compatibility_check
              logger.debug("Overriding tensorflow _logged_compatibility_check parameter. Initial "
                           "value: %s", device_compatibility_check._logged_compatibility_check)
              device_compatibility_check._logged_compatibility_check = True
 
</s> remove         if exclude_gpus and self._tf_version[0] == 2 and self._tf_version[1] == 2:
 </s> add         if exclude_gpus and get_tf_version() == 2.2: </s> remove         if self._tf_version[0] == 2 and self._tf_version[1] < 4:
 </s> add         if get_tf_version() < 2.4: </s> remove         if use_mixed_precision and self._tf_version[0] == 2 and self._tf_version[1] < 4:
 </s> add         if use_mixed_precision and get_tf_version() < 2.4: </s> remove         self._tf_version = [int(i) for i in tf.__version__.split(".")[:2]]
 </s> add  </s> remove         max_ver = 2.6
 </s> add         max_ver = 2.8
            # pylint:disable=import-outside-toplevel,protected-access
            # pylint:disable=import-error,no-name-in-module
  
          if exclude_gpus and self._tf_version[0] == 2 and self._tf_version[1] == 2:
              # TODO remove this hacky fix to disable mixed precision compatibility testing when
              # tensorflow 2.2 support dropped
            # pylint:disable=import-outside-toplevel,protected-access
            # pylint:disable=import-error,no-name-in-module
              from tensorflow.python.keras.mixed_precision.experimental import \
                  device_compatibility_check
              logger.debug("Overriding tensorflow _logged_compatibility_check parameter. Initial "
                           "value: %s", device_compatibility_check._logged_compatibility_check)
              device_compatibility_check._logged_compatibility_check = True
keep keep keep keep replace keep keep keep keep keep
 Update code to support Tensorflow versions up to 2.8 (#1213)

* Update maximum tf version in setup + requirements

* - bump max version of tf version in launcher
- standardise tf version check

* update keras get_custom_objects  for tf>2.6

* bugfix: force black text in GUI file dialogs (linux)

* dssim loss - Move to stock tf.ssim function

* Update optimizer imports for compatibility

* fix logging for tf2.8

* Fix GUI graphing for TF2.8

* update tests

* bump requirements.txt versions

* Remove limit on nvidia-ml-py

* Graphing bugfixes
  - Prevent live graph from displaying if data not yet available

* bugfix: Live graph. Collect loss labels correctly

* fix: live graph - swallow inconsistent loss errors

* Bugfix: Prevent live graph from clearing during training

* Fix graphing for AMD 
plugins/train/model/_base.py