  
      def extract_options(self, cli_source, mod_classes):
          """ Extract the existing ArgParse Options
              into master options Dictionary """
          subopts = dict()
          for classname in mod_classes:
              logger.debug("Processing: (classname: '%s')", classname)
              command = self.format_command_name(classname)
              info, options = self.get_cli_arguments(cli_source, classname, command)
              options = self.process_options(options, command)
 
</s> remove         self.commands = dict()
        self.opts = dict()
 </s> add         self.commands = {}
        self.opts = {} </s> remove         ctl_dict = dict()
 </s> add         ctl_dict = {} </s> remove     def refresh_config(self):
 </s> add     def refresh_config(self) -> None: </s> remove     def set_default_options(self):
 </s> add     def set_default_options(self) -> None: </s> remove     def __init__(self, root, cli_opts, statusbar):
 </s> add     def __init__(self, root: tk.Tk, cli_opts: "CliOptions", statusbar: "StatusBar") -> None:
        subopts = {}
  
      def extract_options(self, cli_source, mod_classes):
          """ Extract the existing ArgParse Options
              into master options Dictionary """
        subopts = {}
          for classname in mod_classes:
              logger.debug("Processing: (classname: '%s')", classname)
              command = self.format_command_name(classname)
              info, options = self.get_cli_arguments(cli_source, classname, command)
              options = self.process_options(options, command)
keep keep keep keep replace keep keep keep keep keep
 Bugfix: Preview for extract in batch mode 
lib/gui/options.py