          ``True`` if the preview is standalone, ``False`` if it is embedded in the GUI
          """
          logger.debug("Binding key events")
          root = self._canvas.winfo_toplevel()
          for key in ("Left", "Right", "Up", "Down"):
              root.bind(f"<{key}>", self._on_key_move)
          for key in ("Key-plus", "Key-minus", "Key-KP_Add", "Key-KP_Subtract"):
 
</s> remove         Variable that indicates a save preview has been requested
 </s> add         Variable that indicates a save preview has been requested in standalone mode
    is_standalone: bool
        ``True`` if the preview is running in standalone mode. ``False`` if it is running in the
        GUI </s> remove     @property
    def icons(self) -> Dict[str, ImageTk.PhotoImage]:
        """ dict: The faceswap icons for all parts of the GUI. The dictionary key is the icon
        name (`str`) the value is the icon sized and formatted for display
        (:class:`PIL.ImageTK.PhotoImage`).
 </s> add 
        if not is_standalone:
            # Don't bind keys for GUI as it adds complication
            return
          ``True`` if the preview is standalone, ``False`` if it is embedded in the GUI
          """
        if not is_standalone:
            # Don't bind keys for GUI as it adds complication
            return
          logger.debug("Binding key events")
          root = self._canvas.winfo_toplevel()
          for key in ("Left", "Right", "Up", "Down"):
              root.bind(f"<{key}>", self._on_key_move)
          for key in ("Key-plus", "Key-minus", "Key-KP_Add", "Key-KP_Subtract"):
keep add keep keep keep keep keep
 GUI - Preview updates
  - Training preview. Embed preview pop-out window
  - Bugfix - convert/extract previews 
lib/training/preview_tk.py