          meta = dict(alignments=face.to_png_meta(), source=source_info)
          update_existing_metadata(face_path, meta)
  
      def _save_alignments(self,
                           all_alignments: Dict[str, Dict[str, "AlignmentDict"]],
                           versions: Dict[str, float]) -> None:
          """ Save the newely generated alignments file(s).
  
          If an alignments file already exists in the source faces folder, back it up rather than
          overwriting
  
 
</s> remove         meta = dict(alignments=face.to_png_meta(), source=source_info)
 </s> add         meta = {"alignments": face.to_png_meta(), "source": source_info} </s> remove         all_versions: Dict[str, List[float]] = {}
        d_align: Dict[str, Dict[str, List[Tuple[int, "AlignmentFileDict", str, dict]]]] = {}
        filelist = cast(List[Tuple[str, "PNGHeaderDict"]], self._faces.file_list_sorted)
 </s> add         all_versions: dict[str, list[float]] = {}
        d_align: dict[str, dict[str, list[tuple[int, AlignmentFileDict, str, dict]]]] = {}
        filelist = T.cast(list[tuple[str, "PNGHeaderDict"]], self._faces.file_list_sorted) </s> remove                          ) -> Dict[str, Dict[str, "AlignmentDict"]]:
 </s> add                          ) -> dict[str, dict[str, AlignmentDict]]: </s> remove     def _rename_faces(self, filename_mappings: List[Tuple[str, str]]) -> int:
 </s> add     def _rename_faces(self, filename_mappings: list[tuple[str, str]]) -> int: </s> remove     def _load(self) -> Dict[str, Any]:
 </s> add     def _load(self) -> dict[str, T.Any]:
                         all_alignments: dict[str, dict[str, AlignmentDict]],
                         versions: dict[str, float]) -> None:
          meta = dict(alignments=face.to_png_meta(), source=source_info)
          update_existing_metadata(face_path, meta)
  
      def _save_alignments(self,
                         all_alignments: dict[str, dict[str, AlignmentDict]],
                         versions: dict[str, float]) -> None:
                         all_alignments: dict[str, dict[str, AlignmentDict]],
                         versions: dict[str, float]) -> None:
          """ Save the newely generated alignments file(s).
  
          If an alignments file already exists in the source faces folder, back it up rather than
          overwriting
  
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 
tools/alignments/jobs_faces.py