      def toggle_mask(self):
          """ Toggle the mask overlay on or off based on user input. """
          self._samples.toggle_mask_display()
  
      def train_one_step(self, viewer, timelapse_kwargs):
          """ Running training on a batch of images for each side.
  
          Triggered from the training cycle in :class:`scripts.train.Train`.
  
          * Runs a training batch through the model.
 
</s> remove     def toggle_mask(self):
 </s> add     def toggle_mask(self) -> None: </s> remove         logger.verbose("Enabled TensorBoard Logging")
 </s> add         logger.verbose("Enabled TensorBoard Logging")  # type: ignore </s> remove     def toggle_mask_display(self):
 </s> add     def toggle_mask_display(self) -> None: </s> remove         print("\n")  # Break to not garble loss output
 </s> add         print("")  # Break to not garble loss output </s> remove         self.images = {}
 </s> add         self.images: Dict[Literal["a", "b"], List[np.ndarray]] = {}
    def train_one_step(self,
                       viewer: Optional[Callable[[np.ndarray, str], None]],
                       timelapse_kwargs: Optional[Dict[str, str]]) -> None:
      def toggle_mask(self):
          """ Toggle the mask overlay on or off based on user input. """
          self._samples.toggle_mask_display()
  
    def train_one_step(self,
                       viewer: Optional[Callable[[np.ndarray, str], None]],
                       timelapse_kwargs: Optional[Dict[str, str]]) -> None:
          """ Running training on a batch of images for each side.
  
          Triggered from the training cycle in :class:`scripts.train.Train`.
  
          * Runs a training batch through the model.
keep keep keep keep replace keep keep keep keep keep
 Data Augmentation update (#1263)

- lib.detected_face
    - Subclass Masks for Landmark based masks
    - Add training mask propery + methods to DetectedFace
  - lib.training_training
    - subclass TrainingDataGenerator for training and preview data
    - Split cache into own module
    - Reduce thread count to 1 to prevent image corruption + data re-use
    - Process on largest model input/output size rather than stored image size
    - Size and crop masks during caching stage
    - Implement ring buffer for data flow
    - Fix preview reload bug
  - augmentation
    - typing
    - switch color aug order
    - better initialization
    - Fix warp + landmark warp to correctly apply at different image scales
    - Slightly improved warp caching
    - Don't store whether image is_preview. Handle all data as training images implicitly
  - plugins.trainer: Typing and fixes to work with trainingdata refactor 
plugins/train/trainer/_base.py