external run      : t -> unit = "viewer_run"