       """
      def __init__(self, environment: Environment, is_gui: bool = False) -> None:
          self._env = environment
          self._is_gui = is_gui
  
          if self._env.os_version[0] == "Windows":
              self._installer: Type[Installer] = WinPTYInstaller
          else:
 
</s> remove         self._operators = {"==": operator.eq,
                           ">=": operator.ge,
                           "<=": operator.le,
                           ">": operator.gt,
                           "<": operator.lt}
 </s> add  </s> remove     def __init__(self, logs_folder, is_training):
 </s> add     def __init__(self, logs_folder: str, is_training: bool) -> None: </s> remove         for pkg, version in self._env.missing_packages:
 </s> add         for pkg, version in self._packages.to_install: </s> remove     def cache_data(self, session_id, data, labels, is_live=False):
 </s> add     def cache_data(self,
                   session_id: int,
                   data: Dict[int, EventData],
                   labels: List[str],
                   is_live: bool = False) -> None: </s> remove     def __init__(self, logs_folder):
 </s> add     def __init__(self, logs_folder: str) -> None:
        self._packages = environment._packages
       """
      def __init__(self, environment: Environment, is_gui: bool = False) -> None:
          self._env = environment
        self._packages = environment._packages
          self._is_gui = is_gui
  
          if self._env.os_version[0] == "Windows":
              self._installer: Type[Installer] = WinPTYInstaller
          else:
keep keep add keep keep keep keep keep
 Bugfixes
  - plugin.train.unbalanced - decoder b
  - gui.stats - crash when log folder deleted
  - setup.py - install gcc=12.1.0 on linux (scipy dep)
  - setup.py - don't test ROCm unless valid
  - typofix - cli_args extract singleprocess help
typing
  - lib.gui.analysis.event_reader
  - lib.gpu_stats.directml - make platform specific
unit tests
  - lib.gui.analysis.event_reader 
setup.py