  
          logger.debug("Input locations: %s", retval)
          return retval
  
      def _validate_batchmode(self):
          """ Validate the command line arguments.
  
          If batch-mode selected and there is only one object to extract from, then batch mode is
          disabled
  
 
</s> remove     def _normalize_faces(self, faces):
 </s> add     def _normalize_faces(self, faces: List[np.ndarray]) -> List[np.ndarray]: </s> remove         logger.trace("Normalizing faces")
 </s> add         logger.trace("Normalizing faces")  # type:ignore </s> remove     def predict(self, batch):
        """ Predict the 68 point landmarks """
 </s> add     def predict(self, batch: np.ndarray) -> np.ndarray:
        """ Predict the 68 point landmarks

        Parameters
        ----------
        batch: :class:`numpy.ndarray`
            The batch to feed into the aligner

        Returns
        -------
        :class:`numpy.ndarray`
            The predictions from the aligner
        """
    def _validate_batchmode(self) -> None:
  
          logger.debug("Input locations: %s", retval)
          return retval
  
    def _validate_batchmode(self) -> None:
          """ Validate the command line arguments.
  
          If batch-mode selected and there is only one object to extract from, then batch mode is
          disabled
  
keep keep keep keep replace keep keep keep keep keep
 Extract updates:
  - Default CPU detector to MTCNN
  - add basic Aligner false positive filters
  - Typing: align + plugins
  - Use specific AlignerBatch class for alignment
  - 
scripts/extract.py