          The user configuration dictionary
      """
      def __init__(self,
                   side: Literal["a", "b", "both"],
                   input_shapes: Union[list, tuple],
                   config: dict) -> None:
          logger.debug("Initializing: %s (side: %s, input_shapes: %s)",
                       self.__class__.__name__, side, input_shapes)
          self._side = side
          self._config = config
 
</s> remove                  input_shape: Tuple[int, int, int],
 </s> add                  input_shape: T.Tuple[int, int, int], </s> remove                  layer_indicies: Optional[Tuple[int, int]] = None) -> None:
 </s> add                  layer_indicies: T.Optional[T.Tuple[int, int]] = None) -> None: </s> remove     def __init__(self, input_shape: Tuple[int, ...], config: dict) -> None:
 </s> add     def __init__(self, input_shape: T.Tuple[int, ...], config: dict) -> None: </s> remove     def __init__(self, saved_model: keras.models.Model, switch_sides: bool) -> None:
 </s> add     def __init__(self, saved_model: tf.keras.models.Model, switch_sides: bool) -> None: </s> remove                  images: Dict[Literal["a", "b"], List[str]],
                 model: 'ModelBase',
 </s> add                  images: T.Dict[Literal["a", "b"], T.List[str]],
                 model: ModelBase,
                 input_shapes: T.Union[list, tuple],
          The user configuration dictionary
      """
      def __init__(self,
                   side: Literal["a", "b", "both"],
                 input_shapes: T.Union[list, tuple],
                   config: dict) -> None:
          logger.debug("Initializing: %s (side: %s, input_shapes: %s)",
                       self.__class__.__name__, side, input_shapes)
          self._side = side
          self._config = config
keep keep keep keep replace keep keep keep keep keep
 Remove plaidML support (#1325)

* Remove PlaidML reference from readme files

* Remove AMD option from installers

* remove amd requirements and update setup.py

* remove plaidml test from CI workflow

* gpustats: remove plaidml backend

* plaid removals:
  - faceswap.py - python version check
  - setup.cfg - plaidml typing ignore
  - lib.keras_utils - All plaid code
  - lib.launcher.py - All plaidml checks and configuration

* remove tf2.2 specific code from GUI event reader

* lib.model - remove all plaidml implementations

* plugins.extract - remove plaidml code

* plugins.train remove plaidml code

* lib.convert - remove plaidml code

* tools.model: remove plaidml code

* Remove plaidML tests from unit tests

* remove plaidml_utils and docsting cleanups

* Remove plaidML refs from configs

* fix keras imports 
plugins/train/model/phaze_a.py