              action.process(extract_media)
  
  
  class PostProcessAction():  # pylint: disable=too-few-public-methods
      """ Parent class for Post Processing Actions. Usable in Extract or Convert or both
          depending on context """
      def __init__(self, *args, **kwargs):
          logger.debug("Initializing %s: (args: %s, kwargs: %s)",
                       self.__class__.__name__, args, kwargs)
          self.valid = True  # Set to False if invalid parameters passed in to disable
          logger.debug("Initialized base class %s", self.__class__.__name__)
 
</s> remove         self.valid = True  # Set to False if invalid parameters passed in to disable
 </s> add         self._valid = True  # Set to False if invalid parameters passed in to disable </s> remove         """ Override for specific post processing action """
 </s> add         """ Override for specific post processing action

        Parameters
        ----------
        extract_media: :class:`~plugins.extract.pipeline.ExtractMedia`
            The :class:`~plugins.extract.pipeline.ExtractMedia` object to perform the
            action on.
        """ </s> remove     """ Filter in or out faces based on input image(s)
        Extract or Convert """
 </s> add     """ Filter in or out faces based on input image(s). Extract or Convert

    Parameters
    -----------
    args: tuple
        Unused
    kwargs: dict
        Keyword arguments for face filter:

        * **detector** (`str`) - The detector to use

        * **aligner** (`str`) - The aligner to use

        * **multiprocess** (`bool`) - Whether to run the extraction pipeline in single process \
        mode or not

        * **ref_threshold** (`float`) - The reference threshold for a positive match

        * **filter_lists** (`dict`) - The filter and nfilter image paths
    """ </s> remove                      "predicted_available: %s, configfile: %s, config: %s)",
                     self.__class__.__name__, mask_type, output_size, predicted_available,
                     configfile, config)
        self.config = self.set_config(configfile, config)
 </s> add                      "configfile: %s, config: %s)", self.__class__.__name__, mask_type,
                     output_size, configfile, config)
        self.config = self._set_config(configfile, config)
    """ Parent class for Post Processing Actions.

    Usable in Extract or Convert or both depending on context. Any post-processing actions should
    inherit from this class.

    Parameters
    -----------
    args: tuple
        Varies for specific post process action
    kwargs: dict
        Varies for specific post process action
    """
              action.process(extract_media)
  
  
  class PostProcessAction():  # pylint: disable=too-few-public-methods
    """ Parent class for Post Processing Actions.

    Usable in Extract or Convert or both depending on context. Any post-processing actions should
    inherit from this class.

    Parameters
    -----------
    args: tuple
        Varies for specific post process action
    kwargs: dict
        Varies for specific post process action
    """
    """ Parent class for Post Processing Actions.

    Usable in Extract or Convert or both depending on context. Any post-processing actions should
    inherit from this class.

    Parameters
    -----------
    args: tuple
        Varies for specific post process action
    kwargs: dict
        Varies for specific post process action
    """
      def __init__(self, *args, **kwargs):
          logger.debug("Initializing %s: (args: %s, kwargs: %s)",
                       self.__class__.__name__, args, kwargs)
          self.valid = True  # Set to False if invalid parameters passed in to disable
          logger.debug("Initialized base class %s", self.__class__.__name__)
keep keep keep keep replace replace keep keep keep keep keep
 Smart Masks to Convert (#957)

- scripts.convert - Use Smart Masks for Convert
    * Make on-the-fly conversion an explicit option

- Move BlurMask to lib.faces_detect

- tools.preview - Fix for smart masks
    * Subclass from tk.Tk
    * Options to lib.gui.control_helper
    *variable cleanup

- lib.logger - Demote more tensorflow deprecation messages

- Documentation:
    * lib.faces_detect.BlurMask
    * plugins.convert.mask
    * lib.convert
    * scripts.convert
    * scripts.fsmedia
    * tools.preview 
scripts/fsmedia.py