          self._validate_image_counts(images)
          return images
  
      @classmethod
      def _validate_image_counts(cls, images: Dict[Literal["a", "b"], List[str]]) -> None:
          """ Validate that there are sufficient images to commence training without raising an
          error.
  
          Confirms that there are at least 24 images in each folder. Whilst this is not enough images
          to train a Neural Network to any successful degree, it should allow the process to train
 
</s> remove                       side: Literal["a", "b"],
 </s> add                       side: T.Literal["a", "b"], </s> remove     def add_skip_list(self, skip_list: List[int]) -> None:
 </s> add     def add_skip_list(self, skip_list: list[int]) -> None: </s> remove             loss: T.List[float] = self._model.model.train_on_batch(model_inputs, y=model_targets)
 </s> add             loss: list[float] = self._model.model.train_on_batch(model_inputs, y=model_targets) </s> remove     def _validate_version(self, png_meta: "PNGHeaderDict", filename: str) -> None:
 </s> add     def _validate_version(self, png_meta: PNGHeaderDict, filename: str) -> None: </s> remove     def _read_from_pty(self, proc: Any, winpty_error: Any) -> None:
 </s> add     def _read_from_pty(self, proc: T.Any, winpty_error: T.Any) -> None:
    def _validate_image_counts(cls, images: dict[T.Literal["a", "b"], list[str]]) -> None:
          self._validate_image_counts(images)
          return images
  
      @classmethod
    def _validate_image_counts(cls, images: dict[T.Literal["a", "b"], list[str]]) -> None:
          """ Validate that there are sufficient images to commence training without raising an
          error.
  
          Confirms that there are at least 24 images in each folder. Whilst this is not enough images
          to train a Neural Network to any successful degree, it should allow the process to train
keep keep keep keep 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 
scripts/train.py