          logger.trace("Patched image: '%s'", predicted.inbound.filename)  # type: ignore
          return retval
  
      def _get_new_image(self,
                         predicted: "ConvertItem",
                         frame_size: Tuple[int, int]) -> Tuple[np.ndarray, np.ndarray]:
          """ Get the new face from the predictor and apply pre-warp manipulations.
  
          Applies any requested adjustments to the raw output of the Faceswap model
          before transforming the image into the target frame.
  
 
</s> remove                               detected_face: "DetectedFace",
                              reference_face: "AlignedFace",
                              predicted_mask: Optional[np.ndarray]) -> np.ndarray:
 </s> add                               detected_face: DetectedFace,
                              reference_face: AlignedFace,
                              predicted_mask: np.ndarray | None) -> np.ndarray: </s> remove     def _patch_image(self, predicted: "ConvertItem") -> Union[np.ndarray, List[bytes]]:
 </s> add     def _patch_image(self, predicted: ConvertItem) -> np.ndarray | list[bytes]: </s> remove                         detected_face: "DetectedFace",
                        predicted_mask: Optional[np.ndarray],
                        reference_face: "AlignedFace") -> Tuple[np.ndarray, np.ndarray]:
 </s> add                         detected_face: DetectedFace,
                        predicted_mask: np.ndarray | None,
                        reference_face: AlignedFace) -> tuple[np.ndarray, np.ndarray]: </s> remove             retval: Union[np.ndarray, List[bytes]] = patched_face
 </s> add             retval: np.ndarray | list[bytes] = patched_face </s> remove     def load_video_frame(self, filename: str) -> "np.ndarray":
 </s> add     def load_video_frame(self, filename: str) -> np.ndarray:
                       predicted: ConvertItem,
                       frame_size: tuple[int, int]) -> tuple[np.ndarray, np.ndarray]:
          logger.trace("Patched image: '%s'", predicted.inbound.filename)  # type: ignore
          return retval
  
      def _get_new_image(self,
                       predicted: ConvertItem,
                       frame_size: tuple[int, int]) -> tuple[np.ndarray, np.ndarray]:
                       predicted: ConvertItem,
                       frame_size: tuple[int, int]) -> tuple[np.ndarray, np.ndarray]:
          """ Get the new face from the predictor and apply pre-warp manipulations.
  
          Applies any requested adjustments to the raw output of the Faceswap model
          before transforming the image into the target frame.
  
keep keep keep keep replace replace keep keep keep keep keep
 Rebase code (#1326)

* Remove tensorflow_probability requirement

* setup.py - fix progress bars

* requirements.txt: Remove pre python 3.9 packages

* update apple requirements.txt

* update INSTALL.md

* Remove python<3.9 code

* setup.py - fix Windows Installer

* typing: python3.9 compliant

* Update pytest and readthedocs python versions

* typing fixes

* Python Version updates
  - Reduce max version to 3.10
  - Default to 3.10 in installers
  - Remove incompatible 3.11 tests

* Update dependencies

* Downgrade imageio dep for Windows

* typing: merge optional unions and fixes

* Updates
  - min python version 3.10
  - typing to python 3.10 spec
  - remove pre-tf2.10 code
  - Add conda tests

* train: re-enable optimizer saving

* Update dockerfiles

* Update setup.py
  - Apple Conda deps to setup.py
  - Better Cuda + dependency handling

* bugfix: Patch logging to prevent Autograph errors

* Update dockerfiles

* Setup.py - Setup.py - stdout to utf-8

* Add more OSes to github Actions

* suppress mac-os end to end test 
lib/convert.py