          self._display_dims = (1, 1)
          self._tk_vars = tk_vars
          self._padding = padding
  
          self._faces = {}
          self._centering = None
          self._faces_source = None
          self._faces_dest = None
          self._tk_image = None
  
          # Set from Samples
          self.update_source = False
          self.source = []  # Source images, filenames + detected faces
          # Set from Patch
 
</s> remove         self.source = []  # Source images, filenames + detected faces
 </s> add         self.source: List[ConvertItem] = []  # Source images, filenames + detected faces </s> remove         self.destination = []  # Swapped + patched images
 </s> add         self.destination: List[np.ndarray] = []  # Swapped + patched images </s> remove         logger.trace("Initialized %s", self.__class__.__name__)
 </s> add         logger.trace("Initialized %s", self.__class__.__name__)  # type: ignore </s> remove     def __init__(self, size, padding, tk_vars):
        logger.trace("Initializing %s: (size: %s, padding: %s, tk_vars: %s)",
 </s> add     def __init__(self,
                 size: int,
                 padding: int,
                 tk_vars: Dict[Literal["refresh", "busy"], tk.BooleanVar]) -> None:
        logger.trace("Initializing %s: (size: %s, padding: %s, tk_vars: %s)",  # type: ignore </s> remove         self._output_dimensions: Optional[str] = None  # Fix dims on 1st received frame
 </s> add         self._output_dimensions: Optional[Tuple[int, int]] = None  # Fix dims on 1st received frame
        self._faces = _Faces()
        self._centering: Optional["CenteringType"] = None
        self._faces_source: np.ndarray = np.array([])
        self._faces_dest: np.ndarray = np.array([])
        self._tk_image: Optional[PhotoImage] = None
          self._display_dims = (1, 1)
          self._tk_vars = tk_vars
          self._padding = padding
  
        self._faces = _Faces()
        self._centering: Optional["CenteringType"] = None
        self._faces_source: np.ndarray = np.array([])
        self._faces_dest: np.ndarray = np.array([])
        self._tk_image: Optional[PhotoImage] = None
        self._faces = _Faces()
        self._centering: Optional["CenteringType"] = None
        self._faces_source: np.ndarray = np.array([])
        self._faces_dest: np.ndarray = np.array([])
        self._tk_image: Optional[PhotoImage] = None
        self._faces = _Faces()
        self._centering: Optional["CenteringType"] = None
        self._faces_source: np.ndarray = np.array([])
        self._faces_dest: np.ndarray = np.array([])
        self._tk_image: Optional[PhotoImage] = None
        self._faces = _Faces()
        self._centering: Optional["CenteringType"] = None
        self._faces_source: np.ndarray = np.array([])
        self._faces_dest: np.ndarray = np.array([])
        self._tk_image: Optional[PhotoImage] = None
        self._faces = _Faces()
        self._centering: Optional["CenteringType"] = None
        self._faces_source: np.ndarray = np.array([])
        self._faces_dest: np.ndarray = np.array([])
        self._tk_image: Optional[PhotoImage] = None
  
          # Set from Samples
          self.update_source = False
          self.source = []  # Source images, filenames + detected faces
          # Set from Patch
keep keep keep keep replace replace replace replace replace keep keep keep keep keep
 Bugfix: convert - Gif Writer
  - Fix non-launch error on Gif Writer
  - convert plugins - linting
  - convert/fs_media/preview/queue_manager - typing
  - Change convert items from dict to Dataclass 
tools/preview/preview.py