          if not self.summary:
              logger.debug("No summary data loaded. Nothing to save")
              print("No summary data loaded. Nothing to save")
              return
          savefile = FileHandler("save", "csv").retfile
          if not savefile:
              logger.debug("No save file. Returning")
              get_config().set_cursor_default()
              return
 
</s> remove         return self.state["sessions"][str(session_id)]["iterations"]
 </s> add         session = self.state["sessions"].get(str(session_id), None)
        if session is None:
            logger.warning("No session data found for session id: %s", session_id)
            return 0
        return session["iterations"]
            get_config().set_cursor_default()
          if not self.summary:
              logger.debug("No summary data loaded. Nothing to save")
              print("No summary data loaded. Nothing to save")
            get_config().set_cursor_default()
              return
          savefile = FileHandler("save", "csv").retfile
          if not savefile:
              logger.debug("No save file. Returning")
              get_config().set_cursor_default()
              return
keep keep add keep keep keep keep keep keep
 GUI Fixups

- Analysis: Handle missing session Ids
- Analysis: Handle invalid data selections
- Analysis: Don't update graph on check box selection
- Analysis: Add cursor events to analysis tab
- Analysis: Change default graph view
- Training: Prevent GUI from attempting to close graphs which do not exist
- Extract/Convert: Make file extensions case-insensitive for preview
- Progress bar: Make compatible for downloads
- Progress bar: Add TQDM Description to progress bar stats text 
lib/gui/display_analysis.py