          self._threshold: Optional[float] = 0.25 if threshold < 0 else threshold
  
      def score_image(self,
                      filename: str,
                      image: Optional[np.ndarray],
                      alignments: Optional["PNGHeaderAlignmentsDict"]) -> None:
          """ Processing logic for sort by face method.
  
          Reads header information from the PNG file to look for VGGFace2 embedding. If it does not
          exist, the embedding is obtained and added back into the PNG Header.
  
 
</s> remove         self._threshold: Optional[float] = 0.25 if threshold < 0 else threshold
 </s> add         self._threshold: float | None = 0.25 if threshold < 0 else threshold </s> remove                         metadata: Dict[str, Any]) -> Optional["PNGHeaderAlignmentsDict"]:
 </s> add                         metadata: dict[str, T.Any]) -> PNGHeaderAlignmentsDict | None: </s> remove     def update_png_header(self, filename: str, alignments: "PNGHeaderAlignmentsDict") -> None:
 </s> add     def update_png_header(self, filename: str, alignments: PNGHeaderAlignmentsDict) -> None: </s> remove                     image: Optional[np.ndarray],
                    alignments: Optional["PNGHeaderAlignmentsDict"]) -> None:
 </s> add                     image: np.ndarray | None,
                    alignments: PNGHeaderAlignmentsDict | None) -> None: </s> remove                     image: Optional[np.ndarray],
                    alignments: Optional["PNGHeaderAlignmentsDict"]) -> None:
 </s> add                     image: np.ndarray | None,
                    alignments: PNGHeaderAlignmentsDict | None) -> None:
                    image: np.ndarray | None,
                    alignments: PNGHeaderAlignmentsDict | None) -> None:
          self._threshold: Optional[float] = 0.25 if threshold < 0 else threshold
  
      def score_image(self,
                      filename: str,
                    image: np.ndarray | None,
                    alignments: PNGHeaderAlignmentsDict | None) -> None:
                    image: np.ndarray | None,
                    alignments: PNGHeaderAlignmentsDict | None) -> None:
          """ Processing logic for sort by face method.
  
          Reads header information from the PNG file to look for VGGFace2 embedding. If it does not
          exist, the embedding is obtained and added back into the PNG Header.
  
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/sort/sort_methods.py