  
  class Converter():
      """ Swap a source face with a target """
      def __init__(self, output_dir, output_size, output_has_mask,
                   draw_transparent, pre_encode, arguments):
          logger.debug("Initializing %s: (output_dir: '%s', output_size: %s,  output_has_mask: %s, "
                       "draw_transparent: %s, pre_encode: %s, arguments: %s)",
                       self.__class__.__name__, output_dir, output_size, output_has_mask,
                       draw_transparent, pre_encode, arguments)
          self.output_dir = output_dir
 
</s> remove                      "draw_transparent: %s, pre_encode: %s, arguments: %s)",
 </s> add                      "draw_transparent: %s, pre_encode: %s, arguments: %s, configfile: %s)", </s> remove                      draw_transparent, pre_encode, arguments)
 </s> add                      draw_transparent, pre_encode, arguments, configfile) </s> remove     def __init__(self, mask_type, output_size, predicted_available, config=None):
 </s> add     def __init__(self, mask_type, output_size, predicted_available, configfile=None, config=None): </s> remove                      "predicted_available: %s, config: %s)",
                     self.__class__.__name__, mask_type, output_size, predicted_available, config)
        self.config = self.set_config(config)
 </s> add                      "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> remove         logger.debug("Initializing %s: (loglevel: %s, git_model_id: %s, model_filename: '%s', "
                     "colorspace: '%s'. input_size: %s)", self.__class__.__name__, loglevel,
                     git_model_id, model_filename, colorspace, input_size)
 </s> add         logger.debug("Initializing %s: (loglevel: %s, configfile: %s, git_model_id: %s, "
                     "model_filename: '%s', colorspace: '%s'. input_size: %s)",
                     self.__class__.__name__, loglevel, configfile, git_model_id, model_filename,
                     colorspace, input_size)
                 draw_transparent, pre_encode, arguments, configfile=None):
  
  class Converter():
      """ Swap a source face with a target """
      def __init__(self, output_dir, output_size, output_has_mask,
                 draw_transparent, pre_encode, arguments, configfile=None):
          logger.debug("Initializing %s: (output_dir: '%s', output_size: %s,  output_has_mask: %s, "
                       "draw_transparent: %s, pre_encode: %s, arguments: %s)",
                       self.__class__.__name__, output_dir, output_size, output_has_mask,
                       draw_transparent, pre_encode, arguments)
          self.output_dir = output_dir
keep keep keep keep replace keep keep keep keep keep
 Config Changes + Bugfixes

Bugfix: Fully disable keypress monitor for GUI
Bugfix: Preview - Handle missing alignments file
Config changes:
    - Separate plugin defaults into their own files
    - Move mask_type to global training config
    - Add ability to pass in custom config files 
lib/convert.py