          steps = (1,) * len(axes) if self._steps is None else self._steps
          assert len(axes) == len(steps) == len(self._starts) == len(self._ends)
          return list(zip(axes, self._starts, self._ends, steps))
  
      def compute_output_shape(self, input_shape: Tuple[int, ...]) -> Tuple[int, ...]:
          """Computes the output shape of the layer.
  
          Assumes that the layer will be built to match that input shape provided.
  
          Parameters
 
</s> remove     def _get_inputs(self) -> List[keras.layers.Input]:
 </s> add     def _get_inputs(self) -> T.List[tf.keras.layers.Input]: </s> remove             if get_backend() != "amd":
                retval = tf.image.resize(inputs, (size, size), method=self.interpolation)
            else:
                raise NotImplementedError
 </s> add             retval = tf.image.resize(inputs, (size, size), method=self.interpolation) </s> remove     def _get_input_shape(self) -> Tuple[int, int, int]:
 </s> add     def _get_input_shape(self) -> T.Tuple[int, int, int]: </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         self.backend: Optional[Literal["nvidia", "amd", "apple_silicon",
 </s> add         self.backend: Optional[Literal["nvidia", "apple_silicon",
    def compute_output_shape(self, input_shape: T.Tuple[int, ...]) -> T.Tuple[int, ...]:
          steps = (1,) * len(axes) if self._steps is None else self._steps
          assert len(axes) == len(steps) == len(self._starts) == len(self._ends)
          return list(zip(axes, self._starts, self._ends, steps))
  
    def compute_output_shape(self, input_shape: T.Tuple[int, ...]) -> T.Tuple[int, ...]:
          """Computes the output shape of the layer.
  
          Assumes that the layer will be built to match that input shape provided.
  
          Parameters
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/extract/detect/s3fd.py