  import sys
  import tkinter as tk
  from tkinter import messagebox, ttk
  
  from lib.gui import (TaskBar, CliOptions, CommandNotebook, ConsoleOut, Session, DisplayNotebook,
                       get_images, initialize_images, initialize_config, LastSession,
                       MainMenuBar, preview_trigger, ProcessWrapper, StatusBar)
  
  logger = logging.getLogger(__name__)  # pylint: disable=invalid-name
  
 
</s> remove from .control_helper import ControlBuilder, ControlPanelOption
from .display_graph import SessionGraph
from .display_page import DisplayPage
from .stats import Calculations, Session
 </s> add  </s> remove from .stats import Calculations
 </s> add from .stats import Calculations, Session </s> remove from lib.gui.stats import Session
 </s> add 
from lib.gui import (TaskBar, CliOptions, CommandNotebook, ConsoleOut, DisplayNotebook,
  import sys
  import tkinter as tk
  from tkinter import messagebox, ttk
  
from lib.gui import (TaskBar, CliOptions, CommandNotebook, ConsoleOut, DisplayNotebook,
                       get_images, initialize_images, initialize_config, LastSession,
                       MainMenuBar, preview_trigger, ProcessWrapper, StatusBar)
  
  logger = logging.getLogger(__name__)  # pylint: disable=invalid-name
  
keep keep keep keep replace keep keep keep keep keep
 GUI - Stats optimization (#1067)

* Faster stat loading + caching

* Compress data in cache

* Optimize some calculations

* Vectorize smoothing

* stats.Calculations optimized

* Load latest training data from live iterator

* Add options to training graph 
scripts/gui.py