          >>>         extract_media.set_image(image)
          >>>         extractor.input_queue.put(extract_media)
          """
          retval = len(self._phases)
          logger.trace(retval)
          return retval
  
      @property
      def phase_text(self):
          """ str: The plugins that are running in the current phase, formatted for info text
 
</s> remove     def phase_text(self):
 </s> add     def phase_text(self) -> str: </s> remove         logger.trace(retval)
 </s> add         logger.trace(retval)  # type: ignore </s> remove         logger.trace(retval)
 </s> add         logger.trace(retval)  # type: ignore </s> remove     def _current_phase(self):
 </s> add     def _current_phase(self) -> List[str]: </s> remove     def _final_phase(self):
 </s> add     def _final_phase(self) -> str:
        logger.trace(retval)  # type: ignore
          >>>         extract_media.set_image(image)
          >>>         extractor.input_queue.put(extract_media)
          """
          retval = len(self._phases)
        logger.trace(retval)  # type: ignore
          return retval
  
      @property
      def phase_text(self):
          """ str: The plugins that are running in the current phase, formatted for info text
keep keep keep keep replace keep keep keep keep keep
 extract: Add batch processing mode 
plugins/extract/pipeline.py