                        for key in option.keys() if key != "opts"}
              self.parser.add_argument(*args, **kwargs)
  
  
  class ExtractConvertArgs(FaceSwapArgs):
      """ This class is used as a parent class to capture arguments that
          will be used in both the extract and convert process.
 
</s> remove                                       "then alignment (2 passes). Useful if VRAM is at a premium. "
                                      "Only has an effect if both the aligner and detector use "
                                      "the GPU, otherwise this is automatically off. NB: AMD "
                                      "cards do not support parallel processing, so if both "
                                      "aligner and detector use an AMD GPU this will "
                                      "automatically be enabled."})
 </s> add                                       "then alignment (2 passes). Useful if VRAM is at a "
                                      "premium."})
    def process_suppressions(self):
        """ Suppress option if it is not available for running backend """
        fs_backend = get_backend().lower()
        for opt_list in [self.global_arguments, self.argument_list, self.optional_arguments]:
            for opts in opt_list:
                if opts.get("backend", None) is None:
                    continue
                opt_backend = opts.pop("backend")
                if isinstance(opt_backend, (list, tuple)):
                    opt_backend = [backend.lower() for backend in opt_backend]
                else:
                    opt_backend = [opt_backend.lower()]
                if fs_backend not in opt_backend:
                    opts["help"] = argparse.SUPPRESS

                        for key in option.keys() if key != "opts"}
              self.parser.add_argument(*args, **kwargs)
  
    def process_suppressions(self):
        """ Suppress option if it is not available for running backend """
        fs_backend = get_backend().lower()
        for opt_list in [self.global_arguments, self.argument_list, self.optional_arguments]:
            for opts in opt_list:
                if opts.get("backend", None) is None:
                    continue
                opt_backend = opts.pop("backend")
                if isinstance(opt_backend, (list, tuple)):
                    opt_backend = [backend.lower() for backend in opt_backend]
                else:
                    opt_backend = [opt_backend.lower()]
                if fs_backend not in opt_backend:
                    opts["help"] = argparse.SUPPRESS

  
  class ExtractConvertArgs(FaceSwapArgs):
      """ This class is used as a parent class to capture arguments that
          will be used in both the extract and convert process.
keep keep add keep keep keep keep
 More seamless AMD Integration

- utils.py: Set FS backend if .faceswap config file doesn't exist
- setup.py: set .faceswap config on setup
- Dynamically load options for AMD/CPU/NVIDIA backends 
lib/cli.py