/* machine.c generated by valac 0.39.5, the Vala compiler
 * generated from machine.vala, do not modify */

/* This file is part of GNOME Boxes. License: LGPLv2+*/

#include <glib.h>
#include <glib-object.h>
#include <gio/gio.h>
#include <gdk-pixbuf/gdk-pixbuf.h>
#include <libcommon.h>
#include <stdlib.h>
#include <string.h>
#include <libsecret/secret.h>
#include <gtk/gtk.h>
#include <cairo.h>
#include <gdk/gdk.h>
#include <glib/gi18n-lib.h>
#include <float.h>
#include <math.h>
#include <glib/gstdio.h>


#define BOXES_TYPE_UI (boxes_ui_get_type ())
#define BOXES_UI(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_UI, BoxesUI))
#define BOXES_IS_UI(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_UI))
#define BOXES_UI_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), BOXES_TYPE_UI, BoxesUIIface))

typedef struct _BoxesUI BoxesUI;
typedef struct _BoxesUIIface BoxesUIIface;

#define BOXES_TYPE_UI_STATE (boxes_ui_state_get_type ())

#define BOXES_TYPE_COLLECTION_ITEM (boxes_collection_item_get_type ())
#define BOXES_COLLECTION_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_COLLECTION_ITEM, BoxesCollectionItem))
#define BOXES_COLLECTION_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_COLLECTION_ITEM, BoxesCollectionItemClass))
#define BOXES_IS_COLLECTION_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_COLLECTION_ITEM))
#define BOXES_IS_COLLECTION_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_COLLECTION_ITEM))
#define BOXES_COLLECTION_ITEM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_COLLECTION_ITEM, BoxesCollectionItemClass))

typedef struct _BoxesCollectionItem BoxesCollectionItem;
typedef struct _BoxesCollectionItemClass BoxesCollectionItemClass;
typedef struct _BoxesCollectionItemPrivate BoxesCollectionItemPrivate;

#define BOXES_TYPE_IPROPERTIES_PROVIDER (boxes_iproperties_provider_get_type ())
#define BOXES_IPROPERTIES_PROVIDER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_IPROPERTIES_PROVIDER, BoxesIPropertiesProvider))
#define BOXES_IS_IPROPERTIES_PROVIDER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_IPROPERTIES_PROVIDER))
#define BOXES_IPROPERTIES_PROVIDER_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), BOXES_TYPE_IPROPERTIES_PROVIDER, BoxesIPropertiesProviderIface))

typedef struct _BoxesIPropertiesProvider BoxesIPropertiesProvider;
typedef struct _BoxesIPropertiesProviderIface BoxesIPropertiesProviderIface;

#define BOXES_TYPE_PROPERTIES_PAGE (boxes_properties_page_get_type ())

#define BOXES_TYPE_PROPERTY (boxes_property_get_type ())
#define BOXES_PROPERTY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_PROPERTY, BoxesProperty))
#define BOXES_PROPERTY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_PROPERTY, BoxesPropertyClass))
#define BOXES_IS_PROPERTY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_PROPERTY))
#define BOXES_IS_PROPERTY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_PROPERTY))
#define BOXES_PROPERTY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_PROPERTY, BoxesPropertyClass))

typedef struct _BoxesProperty BoxesProperty;
typedef struct _BoxesPropertyClass BoxesPropertyClass;

#define BOXES_TYPE_MACHINE (boxes_machine_get_type ())
#define BOXES_MACHINE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_MACHINE, BoxesMachine))
#define BOXES_MACHINE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_MACHINE, BoxesMachineClass))
#define BOXES_IS_MACHINE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_MACHINE))
#define BOXES_IS_MACHINE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_MACHINE))
#define BOXES_MACHINE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_MACHINE, BoxesMachineClass))

typedef struct _BoxesMachine BoxesMachine;
typedef struct _BoxesMachineClass BoxesMachineClass;
typedef struct _BoxesMachinePrivate BoxesMachinePrivate;

#define BOXES_MACHINE_TYPE_CONNECT_FLAGS (boxes_machine_connect_flags_get_type ())

#define BOXES_TYPE_MACHINE_THUMBNAILER (boxes_machine_thumbnailer_get_type ())
#define BOXES_MACHINE_THUMBNAILER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_MACHINE_THUMBNAILER, BoxesMachineThumbnailer))
#define BOXES_MACHINE_THUMBNAILER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_MACHINE_THUMBNAILER, BoxesMachineThumbnailerClass))
#define BOXES_IS_MACHINE_THUMBNAILER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_MACHINE_THUMBNAILER))
#define BOXES_IS_MACHINE_THUMBNAILER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_MACHINE_THUMBNAILER))
#define BOXES_MACHINE_THUMBNAILER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_MACHINE_THUMBNAILER, BoxesMachineThumbnailerClass))

typedef struct _BoxesMachineThumbnailer BoxesMachineThumbnailer;
typedef struct _BoxesMachineThumbnailerClass BoxesMachineThumbnailerClass;

#define BOXES_MACHINE_TYPE_MACHINE_STATE (boxes_machine_machine_state_get_type ())

#define BOXES_TYPE_APP_WINDOW (boxes_app_window_get_type ())
#define BOXES_APP_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_APP_WINDOW, BoxesAppWindow))
#define BOXES_APP_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_APP_WINDOW, BoxesAppWindowClass))
#define BOXES_IS_APP_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_APP_WINDOW))
#define BOXES_IS_APP_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_APP_WINDOW))
#define BOXES_APP_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_APP_WINDOW, BoxesAppWindowClass))

typedef struct _BoxesAppWindow BoxesAppWindow;
typedef struct _BoxesAppWindowClass BoxesAppWindowClass;

#define BOXES_TYPE_DISPLAY (boxes_display_get_type ())
#define BOXES_DISPLAY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_DISPLAY, BoxesDisplay))
#define BOXES_DISPLAY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_DISPLAY, BoxesDisplayClass))
#define BOXES_IS_DISPLAY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_DISPLAY))
#define BOXES_IS_DISPLAY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_DISPLAY))
#define BOXES_DISPLAY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_DISPLAY, BoxesDisplayClass))

typedef struct _BoxesDisplay BoxesDisplay;
typedef struct _BoxesDisplayClass BoxesDisplayClass;

#define BOXES_TYPE_AUTH_NOTIFICATION (boxes_auth_notification_get_type ())
#define BOXES_AUTH_NOTIFICATION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_AUTH_NOTIFICATION, BoxesAuthNotification))
#define BOXES_AUTH_NOTIFICATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_AUTH_NOTIFICATION, BoxesAuthNotificationClass))
#define BOXES_IS_AUTH_NOTIFICATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_AUTH_NOTIFICATION))
#define BOXES_IS_AUTH_NOTIFICATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_AUTH_NOTIFICATION))
#define BOXES_AUTH_NOTIFICATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_AUTH_NOTIFICATION, BoxesAuthNotificationClass))

typedef struct _BoxesAuthNotification BoxesAuthNotification;
typedef struct _BoxesAuthNotificationClass BoxesAuthNotificationClass;
enum  {
	BOXES_MACHINE_0_PROPERTY,
	BOXES_MACHINE_PIXBUF_PROPERTY,
	BOXES_MACHINE_THUMBNAILER_PROPERTY,
	BOXES_MACHINE_INFO_PROPERTY,
	BOXES_MACHINE_STATUS_PROPERTY,
	BOXES_MACHINE_SUSPEND_AT_EXIT_PROPERTY,
	BOXES_MACHINE_CAN_SAVE_PROPERTY,
	BOXES_MACHINE_CAN_RESTART_PROPERTY,
	BOXES_MACHINE_CAN_CLONE_PROPERTY,
	BOXES_MACHINE_CAN_DELETE_PROPERTY,
	BOXES_MACHINE_UNDER_CONSTRUCTION_PROPERTY,
	BOXES_MACHINE_SHOULD_AUTOSAVE_PROPERTY,
	BOXES_MACHINE_IS_CONNECTED_PROPERTY,
	BOXES_MACHINE_IS_RUNNING_PROPERTY,
	BOXES_MACHINE_IS_ON_PROPERTY,
	BOXES_MACHINE_IS_STOPPED_PROPERTY,
	BOXES_MACHINE_IS_LOCAL_PROPERTY,
	BOXES_MACHINE_CONNECTING_CANCELLABLE_PROPERTY,
	BOXES_MACHINE_STATE_PROPERTY,
	BOXES_MACHINE_WINDOW_PROPERTY,
	BOXES_MACHINE_DELETED_PROPERTY,
	BOXES_MACHINE_DISPLAY_PROPERTY,
	BOXES_MACHINE_NUM_PROPERTIES
};
static GParamSpec* boxes_machine_properties[BOXES_MACHINE_NUM_PROPERTIES];
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
#define _g_free0(var) (var = (g_free (var), NULL))
#define _secret_schema_unref0(var) ((var == NULL) ? NULL : (var = (secret_schema_unref (var), NULL)))
typedef struct _BoxesAppWindowPrivate BoxesAppWindowPrivate;

#define BOXES_TYPE_WIZARD_WINDOW (boxes_wizard_window_get_type ())
#define BOXES_WIZARD_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_WIZARD_WINDOW, BoxesWizardWindow))
#define BOXES_WIZARD_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_WIZARD_WINDOW, BoxesWizardWindowClass))
#define BOXES_IS_WIZARD_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_WIZARD_WINDOW))
#define BOXES_IS_WIZARD_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_WIZARD_WINDOW))
#define BOXES_WIZARD_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_WIZARD_WINDOW, BoxesWizardWindowClass))

typedef struct _BoxesWizardWindow BoxesWizardWindow;
typedef struct _BoxesWizardWindowClass BoxesWizardWindowClass;

#define BOXES_TYPE_PROPERTIES_WINDOW (boxes_properties_window_get_type ())
#define BOXES_PROPERTIES_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_PROPERTIES_WINDOW, BoxesPropertiesWindow))
#define BOXES_PROPERTIES_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_PROPERTIES_WINDOW, BoxesPropertiesWindowClass))
#define BOXES_IS_PROPERTIES_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_PROPERTIES_WINDOW))
#define BOXES_IS_PROPERTIES_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_PROPERTIES_WINDOW))
#define BOXES_PROPERTIES_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_PROPERTIES_WINDOW, BoxesPropertiesWindowClass))

typedef struct _BoxesPropertiesWindow BoxesPropertiesWindow;
typedef struct _BoxesPropertiesWindowClass BoxesPropertiesWindowClass;

#define BOXES_TYPE_SEARCHBAR (boxes_searchbar_get_type ())
#define BOXES_SEARCHBAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_SEARCHBAR, BoxesSearchbar))
#define BOXES_SEARCHBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_SEARCHBAR, BoxesSearchbarClass))
#define BOXES_IS_SEARCHBAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_SEARCHBAR))
#define BOXES_IS_SEARCHBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_SEARCHBAR))
#define BOXES_SEARCHBAR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_SEARCHBAR, BoxesSearchbarClass))

typedef struct _BoxesSearchbar BoxesSearchbar;
typedef struct _BoxesSearchbarClass BoxesSearchbarClass;

#define BOXES_TYPE_TOPBAR (boxes_topbar_get_type ())
#define BOXES_TOPBAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_TOPBAR, BoxesTopbar))
#define BOXES_TOPBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_TOPBAR, BoxesTopbarClass))
#define BOXES_IS_TOPBAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_TOPBAR))
#define BOXES_IS_TOPBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_TOPBAR))
#define BOXES_TOPBAR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_TOPBAR, BoxesTopbarClass))

typedef struct _BoxesTopbar BoxesTopbar;
typedef struct _BoxesTopbarClass BoxesTopbarClass;

#define BOXES_TYPE_SELECTIONBAR (boxes_selectionbar_get_type ())
#define BOXES_SELECTIONBAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_SELECTIONBAR, BoxesSelectionbar))
#define BOXES_SELECTIONBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_SELECTIONBAR, BoxesSelectionbarClass))
#define BOXES_IS_SELECTIONBAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_SELECTIONBAR))
#define BOXES_IS_SELECTIONBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_SELECTIONBAR))
#define BOXES_SELECTIONBAR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_SELECTIONBAR, BoxesSelectionbarClass))

typedef struct _BoxesSelectionbar BoxesSelectionbar;
typedef struct _BoxesSelectionbarClass BoxesSelectionbarClass;

#define BOXES_TYPE_DISPLAY_PAGE (boxes_display_page_get_type ())
#define BOXES_DISPLAY_PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_DISPLAY_PAGE, BoxesDisplayPage))
#define BOXES_DISPLAY_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_DISPLAY_PAGE, BoxesDisplayPageClass))
#define BOXES_IS_DISPLAY_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_DISPLAY_PAGE))
#define BOXES_IS_DISPLAY_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_DISPLAY_PAGE))
#define BOXES_DISPLAY_PAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_DISPLAY_PAGE, BoxesDisplayPageClass))

typedef struct _BoxesDisplayPage BoxesDisplayPage;
typedef struct _BoxesDisplayPageClass BoxesDisplayPageClass;

#define BOXES_TYPE_EMPTY_BOXES (boxes_empty_boxes_get_type ())
#define BOXES_EMPTY_BOXES(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_EMPTY_BOXES, BoxesEmptyBoxes))
#define BOXES_EMPTY_BOXES_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_EMPTY_BOXES, BoxesEmptyBoxesClass))
#define BOXES_IS_EMPTY_BOXES(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_EMPTY_BOXES))
#define BOXES_IS_EMPTY_BOXES_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_EMPTY_BOXES))
#define BOXES_EMPTY_BOXES_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_EMPTY_BOXES, BoxesEmptyBoxesClass))

typedef struct _BoxesEmptyBoxes BoxesEmptyBoxes;
typedef struct _BoxesEmptyBoxesClass BoxesEmptyBoxesClass;

#define BOXES_TYPE_TROUBLESHOOT_VIEW (boxes_troubleshoot_view_get_type ())
#define BOXES_TROUBLESHOOT_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_TROUBLESHOOT_VIEW, BoxesTroubleshootView))
#define BOXES_TROUBLESHOOT_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_TROUBLESHOOT_VIEW, BoxesTroubleshootViewClass))
#define BOXES_IS_TROUBLESHOOT_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_TROUBLESHOOT_VIEW))
#define BOXES_IS_TROUBLESHOOT_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_TROUBLESHOOT_VIEW))
#define BOXES_TROUBLESHOOT_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_TROUBLESHOOT_VIEW, BoxesTroubleshootViewClass))

typedef struct _BoxesTroubleshootView BoxesTroubleshootView;
typedef struct _BoxesTroubleshootViewClass BoxesTroubleshootViewClass;

#define BOXES_TYPE_APP (boxes_app_get_type ())
#define BOXES_APP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_APP, BoxesApp))
#define BOXES_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_APP, BoxesAppClass))
#define BOXES_IS_APP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_APP))
#define BOXES_IS_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_APP))
#define BOXES_APP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_APP, BoxesAppClass))

typedef struct _BoxesApp BoxesApp;
typedef struct _BoxesAppClass BoxesAppClass;
#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))
typedef struct _BoxesMachineSaveData BoxesMachineSaveData;
typedef struct _BoxesMachineSaveRealData BoxesMachineSaveRealData;
typedef struct _BoxesMachineTakeScreenshotData BoxesMachineTakeScreenshotData;
typedef struct _BoxesMachineUpdateScreenshotData BoxesMachineUpdateScreenshotData;
#define _cairo_pattern_destroy0(var) ((var == NULL) ? NULL : (var = (cairo_pattern_destroy (var), NULL)))
#define _cairo_destroy0(var) ((var == NULL) ? NULL : (var = (cairo_destroy (var), NULL)))
#define _cairo_surface_destroy0(var) ((var == NULL) ? NULL : (var = (cairo_surface_destroy (var), NULL)))
typedef struct _Block59Data Block59Data;

#define BOXES_TYPE_NOTIFICATION (boxes_notification_get_type ())
#define BOXES_NOTIFICATION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_NOTIFICATION, BoxesNotification))
#define BOXES_NOTIFICATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_NOTIFICATION, BoxesNotificationClass))
#define BOXES_IS_NOTIFICATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_NOTIFICATION))
#define BOXES_IS_NOTIFICATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_NOTIFICATION))
#define BOXES_NOTIFICATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_NOTIFICATION, BoxesNotificationClass))

typedef struct _BoxesNotification BoxesNotification;
typedef struct _BoxesNotificationClass BoxesNotificationClass;

#define BOXES_TYPE_NOTIFICATIONBAR (boxes_notificationbar_get_type ())
#define BOXES_NOTIFICATIONBAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_NOTIFICATIONBAR, BoxesNotificationbar))
#define BOXES_NOTIFICATIONBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_NOTIFICATIONBAR, BoxesNotificationbarClass))
#define BOXES_IS_NOTIFICATIONBAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_NOTIFICATIONBAR))
#define BOXES_IS_NOTIFICATIONBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_NOTIFICATIONBAR))
#define BOXES_NOTIFICATIONBAR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_NOTIFICATIONBAR, BoxesNotificationbarClass))

typedef struct _BoxesNotificationbar BoxesNotificationbar;
typedef struct _BoxesNotificationbarClass BoxesNotificationbarClass;

#define BOXES_TYPE_LIBVIRT_MACHINE (boxes_libvirt_machine_get_type ())
#define BOXES_LIBVIRT_MACHINE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_LIBVIRT_MACHINE, BoxesLibvirtMachine))
#define BOXES_LIBVIRT_MACHINE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_LIBVIRT_MACHINE, BoxesLibvirtMachineClass))
#define BOXES_IS_LIBVIRT_MACHINE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_LIBVIRT_MACHINE))
#define BOXES_IS_LIBVIRT_MACHINE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_LIBVIRT_MACHINE))
#define BOXES_LIBVIRT_MACHINE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_LIBVIRT_MACHINE, BoxesLibvirtMachineClass))

typedef struct _BoxesLibvirtMachine BoxesLibvirtMachine;
typedef struct _BoxesLibvirtMachineClass BoxesLibvirtMachineClass;
typedef struct _BoxesLibvirtMachinePrivate BoxesLibvirtMachinePrivate;

#define BOXES_TYPE_LIBVIRT_MACHINE_PROPERTIES (boxes_libvirt_machine_properties_get_type ())
#define BOXES_LIBVIRT_MACHINE_PROPERTIES(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_LIBVIRT_MACHINE_PROPERTIES, BoxesLibvirtMachineProperties))
#define BOXES_LIBVIRT_MACHINE_PROPERTIES_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_LIBVIRT_MACHINE_PROPERTIES, BoxesLibvirtMachinePropertiesClass))
#define BOXES_IS_LIBVIRT_MACHINE_PROPERTIES(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_LIBVIRT_MACHINE_PROPERTIES))
#define BOXES_IS_LIBVIRT_MACHINE_PROPERTIES_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_LIBVIRT_MACHINE_PROPERTIES))
#define BOXES_LIBVIRT_MACHINE_PROPERTIES_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_LIBVIRT_MACHINE_PROPERTIES, BoxesLibvirtMachinePropertiesClass))

typedef struct _BoxesLibvirtMachineProperties BoxesLibvirtMachineProperties;
typedef struct _BoxesLibvirtMachinePropertiesClass BoxesLibvirtMachinePropertiesClass;
typedef struct _BoxesMachineTryConnectDisplayData BoxesMachineTryConnectDisplayData;
#define _g_variant_unref0(var) ((var == NULL) ? NULL : (var = (g_variant_unref (var), NULL)))
#define _g_variant_builder_unref0(var) ((var == NULL) ? NULL : (var = (g_variant_builder_unref (var), NULL)))
typedef struct _Block60Data Block60Data;
typedef struct _BoxesMachineTrySaveData BoxesMachineTrySaveData;
typedef struct _BoxesDisplayPrivate BoxesDisplayPrivate;
enum  {
	BOXES_MACHINE_GOT_ERROR_SIGNAL,
	BOXES_MACHINE_NUM_SIGNALS
};
static guint boxes_machine_signals[BOXES_MACHINE_NUM_SIGNALS] = {0};
#define _vala_assert(expr, msg) if G_LIKELY (expr) ; else g_assertion_message_expr (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg);
#define _vala_return_if_fail(expr, msg) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return; }
#define _vala_return_val_if_fail(expr, msg, val) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return val; }
#define _vala_warn_if_fail(expr, msg) if G_LIKELY (expr) ; else g_warn_message (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg);

typedef enum  {
	BOXES_UI_STATE_NONE,
	BOXES_UI_STATE_COLLECTION,
	BOXES_UI_STATE_CREDS,
	BOXES_UI_STATE_DISPLAY,
	BOXES_UI_STATE_WIZARD,
	BOXES_UI_STATE_PROPERTIES,
	BOXES_UI_STATE_TROUBLESHOOT
} BoxesUIState;

struct _BoxesUIIface {
	GTypeInterface parent_iface;
	BoxesUIState (*get_previous_ui_state) (BoxesUI* self);
	void (*set_previous_ui_state) (BoxesUI* self, BoxesUIState value);
	BoxesUIState (*get_ui_state) (BoxesUI* self);
	void (*set_ui_state) (BoxesUI* self, BoxesUIState value);
};

struct _BoxesCollectionItem {
	GObject parent_instance;
	BoxesCollectionItemPrivate * priv;
};

struct _BoxesCollectionItemClass {
	GObjectClass parent_class;
	gint (*compare) (BoxesCollectionItem* self, BoxesCollectionItem* other);
};

typedef enum  {
	BOXES_PROPERTIES_PAGE_GENERAL,
	BOXES_PROPERTIES_PAGE_SYSTEM,
	BOXES_PROPERTIES_PAGE_DEVICES,
	BOXES_PROPERTIES_PAGE_SNAPSHOTS,
	BOXES_PROPERTIES_PAGE_LAST
} BoxesPropertiesPage;

struct _BoxesIPropertiesProviderIface {
	GTypeInterface parent_iface;
	GList* (*get_properties) (BoxesIPropertiesProvider* self, BoxesPropertiesPage page);
};

typedef enum  {
	BOXES_MACHINE_CONNECT_FLAGS_NONE = 0,
	BOXES_MACHINE_CONNECT_FLAGS_IGNORE_SAVED_STATE = 1 << 0
} BoxesMachineConnectFlags;

struct _BoxesMachine {
	BoxesCollectionItem parent_instance;
	BoxesMachinePrivate * priv;
	BoxesCollectionSource* source;
	BoxesBoxConfig* config;
	gboolean stay_on_display;
};

struct _BoxesMachineClass {
	BoxesCollectionItemClass parent_class;
	void (*save_real) (BoxesMachine* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*save_real_finish) (BoxesMachine* self, GAsyncResult* _res_, GError** error);
	void (*take_screenshot) (BoxesMachine* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
	GdkPixbuf* (*take_screenshot_finish) (BoxesMachine* self, GAsyncResult* _res_, GError** error);
	GList* (*get_properties) (BoxesMachine* self, BoxesPropertiesPage page);
	void (*connect_display) (BoxesMachine* self, BoxesMachineConnectFlags flags, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*connect_display_finish) (BoxesMachine* self, GAsyncResult* _res_, GError** error);
	void (*restart) (BoxesMachine* self);
	void (*clone) (BoxesMachine* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*clone_finish) (BoxesMachine* self, GAsyncResult* _res_);
	void (*disconnect_display) (BoxesMachine* self);
	void (*update_status) (BoxesMachine* self);
	void (*delete) (BoxesMachine* self, gboolean by_user);
	gboolean (*get_suspend_at_exit) (BoxesMachine* self);
	gboolean (*get_can_save) (BoxesMachine* self);
	gboolean (*get_can_restart) (BoxesMachine* self);
	gboolean (*get_can_clone) (BoxesMachine* self);
	gboolean (*get_should_autosave) (BoxesMachine* self);
	gboolean (*get_is_local) (BoxesMachine* self);
};

typedef enum  {
	BOXES_MACHINE_MACHINE_STATE_UNKNOWN,
	BOXES_MACHINE_MACHINE_STATE_STOPPED,
	BOXES_MACHINE_MACHINE_STATE_FORCE_STOPPED,
	BOXES_MACHINE_MACHINE_STATE_RUNNING,
	BOXES_MACHINE_MACHINE_STATE_PAUSED,
	BOXES_MACHINE_MACHINE_STATE_SAVED,
	BOXES_MACHINE_MACHINE_STATE_SLEEPING
} BoxesMachineMachineState;

struct _BoxesMachinePrivate {
	GdkPixbuf* _pixbuf;
	BoxesMachineThumbnailer* _thumbnailer;
	gchar* _info;
	gchar* _status;
	gboolean _can_delete;
	gboolean _under_construction;
	GCancellable* auth_cancellable;
	SecretSchema* secret_auth_schema;
	gulong show_id;
	gulong hide_id;
	gulong disconnected_id;
	gulong need_password_id;
	gulong need_username_id;
	gulong ui_state_id;
	gulong got_error_id;
	guint screenshot_id;
	gboolean updating_screenshot;
	gchar* username;
	gchar* password;
	guint autosave_timeout_id;
	GCancellable* _connecting_cancellable;
	GdkPixbuf* orig_pixbuf;
	BoxesMachineMachineState _state;
	BoxesAppWindow* _window;
	gboolean _deleted;
	BoxesDisplay* _display;
	gboolean saving;
	gint screenshot_counter;
	GBinding* name_status_bind;
	BoxesAuthNotification* auth_notification;
};

struct _BoxesAppWindow {
	GtkApplicationWindow parent_instance;
	BoxesAppWindowPrivate * priv;
	BoxesWizardWindow* wizard_window;
	BoxesPropertiesWindow* props_window;
	BoxesSearchbar* searchbar;
	BoxesTopbar* topbar;
	BoxesSelectionbar* selectionbar;
	BoxesDisplayPage* display_page;
	BoxesEmptyBoxes* empty_boxes;
	BoxesTroubleshootView* troubleshoot_view;
	GtkStack* below_bin;
	GSettings* settings;
};

struct _BoxesAppWindowClass {
	GtkApplicationWindowClass parent_class;
};

struct _BoxesMachineSaveData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	BoxesMachine* self;
	BoxesMachineMachineState _tmp0_;
	BoxesMachineMachineState _tmp1_;
	const gchar* _tmp2_;
	const gchar* _tmp3_;
	GError * _inner_error_;
};

struct _BoxesMachineSaveRealData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	BoxesMachine* self;
};

struct _BoxesMachineTakeScreenshotData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	BoxesMachine* self;
	GdkPixbuf* result;
	BoxesDisplay* _tmp0_;
	BoxesDisplay* _tmp1_;
	GdkPixbuf* _tmp2_;
	BoxesDisplay* _tmp3_;
	BoxesDisplay* _tmp4_;
	GdkPixbuf* _tmp5_;
	GdkPixbuf* _tmp6_;
	GError * _inner_error_;
};

struct _BoxesMachineUpdateScreenshotData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	BoxesMachine* self;
	gboolean force_save;
	gboolean first_check;
	gboolean _tmp0_;
	GdkPixbuf* large_screenshot;
	GdkPixbuf* _tmp1_;
	GdkPixbuf* _tmp2_;
	GdkPixbuf* _tmp3_;
	GdkPixbuf* _tmp4_;
	GdkPixbuf* _tmp5_;
	GdkPixbuf* _tmp6_;
	GError* _error_;
	GdkPixbuf* _tmp7_;
	gboolean _tmp8_;
	gint _tmp9_;
	GdkPixbuf* _tmp10_;
	GError * _inner_error_;
};

struct _Block59Data {
	int _ref_count_;
	BoxesMachine* self;
	BoxesMachineConnectFlags flags;
	gpointer _async_data_;
};

typedef void (*BoxesNotificationOKFunc) (void* user_data);
typedef void (*BoxesNotificationDismissFunc) (void* user_data);
struct _BoxesLibvirtMachine {
	BoxesMachine parent_instance;
	BoxesLibvirtMachinePrivate * priv;
	BoxesLibvirtMachineProperties* properties;
	gdouble* cpu_stats;
	gint cpu_stats_length1;
	gint _cpu_stats_size_;
	gdouble* io_stats;
	gint io_stats_length1;
	gint _io_stats_size_;
	gdouble* net_stats;
	gint net_stats_length1;
	gint _net_stats_size_;
};

struct _BoxesLibvirtMachineClass {
	BoxesMachineClass parent_class;
};

struct _BoxesMachineTryConnectDisplayData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	BoxesMachine* self;
	BoxesMachineConnectFlags flags;
	Block59Data* _data59_;
	GError* e;
	gchar* message;
	const gchar* _tmp0_;
	const gchar* _tmp1_;
	gchar* _tmp2_;
	BoxesNotification* notification;
	BoxesAppWindow* _tmp3_;
	BoxesAppWindow* _tmp4_;
	BoxesNotificationbar* _tmp5_;
	BoxesNotificationbar* _tmp6_;
	const gchar* _tmp7_;
	BoxesNotification* _tmp8_;
	BoxesNotification* _tmp9_;
	GError* _vala1_e;
	const gchar* _tmp10_;
	const gchar* _tmp11_;
	GError* _tmp12_;
	const gchar* _tmp13_;
	BoxesAppWindow* _tmp14_;
	BoxesAppWindow* _tmp15_;
	gchar* msg;
	const gchar* _tmp16_;
	const gchar* _tmp17_;
	gchar* _tmp18_;
	BoxesNotificationOKFunc troubleshoot;
	void* troubleshoot_target;
	GDestroyNotify troubleshoot_target_destroy_notify;
	BoxesAppWindow* _tmp19_;
	BoxesAppWindow* _tmp20_;
	BoxesNotificationbar* _tmp21_;
	BoxesNotificationbar* _tmp22_;
	const gchar* _tmp23_;
	BoxesNotificationOKFunc _tmp24_;
	void* _tmp24__target;
	GDestroyNotify _tmp24__target_destroy_notify;
	BoxesNotification* _tmp25_;
	BoxesNotification* _tmp26_;
	BoxesAppWindow* _tmp27_;
	BoxesAppWindow* _tmp28_;
	BoxesNotificationbar* _tmp29_;
	BoxesNotificationbar* _tmp30_;
	const gchar* _tmp31_;
	BoxesNotification* _tmp32_;
	BoxesNotification* _tmp33_;
	GError* _vala2_e;
	const gchar* _tmp34_;
	const gchar* _tmp35_;
	GError* _tmp36_;
	const gchar* _tmp37_;
	BoxesAppWindow* _tmp38_;
	BoxesAppWindow* _tmp39_;
	BoxesAppWindow* _tmp40_;
	BoxesAppWindow* _tmp41_;
	BoxesNotificationbar* _tmp42_;
	BoxesNotificationbar* _tmp43_;
	const gchar* _tmp44_;
	const gchar* _tmp45_;
	gchar* _tmp46_;
	gchar* _tmp47_;
	BoxesNotification* _tmp48_;
	BoxesNotification* _tmp49_;
	GError * _inner_error_;
};

typedef void (*BoxesAuthNotificationAuthFunc) (const gchar* username, const gchar* password, void* user_data);
struct _Block60Data {
	int _ref_count_;
	BoxesMachine* self;
	gboolean need_username;
	BoxesAuthNotificationAuthFunc auth_func;
	gpointer auth_func_target;
	GDestroyNotify auth_func_target_destroy_notify;
	BoxesNotificationDismissFunc dismiss_func;
	gpointer dismiss_func_target;
	GDestroyNotify dismiss_func_target_destroy_notify;
};

struct _BoxesMachineTrySaveData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	BoxesMachine* self;
	GError* _error_;
	const gchar* _tmp0_;
	const gchar* _tmp1_;
	GError* _tmp2_;
	const gchar* _tmp3_;
	GError * _inner_error_;
};

typedef gint (*BoxesDisplayOpenFDFunc) (void* user_data);
struct _BoxesDisplay {
	GObject parent_instance;
	BoxesDisplayPrivate * priv;
	gboolean connected;
	GHashTable* displays;
};

struct _BoxesDisplayClass {
	GObjectClass parent_class;
	GtkWidget* (*get_display) (BoxesDisplay* self, gint n);
	GdkPixbuf* (*get_pixbuf) (BoxesDisplay* self, gint n, GError** error);
	void (*set_enable_audio) (BoxesDisplay* self, gboolean enable);
	gboolean (*should_keep_alive) (BoxesDisplay* self);
	void (*connect_it) (BoxesDisplay* self, BoxesDisplayOpenFDFunc open_fd, void* open_fd_target, GDestroyNotify open_fd_target_destroy_notify, GError** error);
	void (*disconnect_it) (BoxesDisplay* self);
	void (*collect_logs) (BoxesDisplay* self, GString* builder);
	void (*transfer_files) (BoxesDisplay* self, GList* uris);
	void (*send_keys) (BoxesDisplay* self, guint* keyvals, int keyvals_length1);
	GList* (*get_properties) (BoxesDisplay* self, BoxesPropertiesPage page);
	const gchar* (*get_protocol) (BoxesDisplay* self);
	gchar* (*get_uri) (BoxesDisplay* self);
	gboolean (*get_can_transfer_files) (BoxesDisplay* self);
};


static gpointer boxes_machine_parent_class = NULL;
static cairo_surface_t* boxes_machine_grid_surface;
static cairo_surface_t* boxes_machine_grid_surface = NULL;
extern BoxesApp* boxes_app_app;
static BoxesIPropertiesProviderIface * boxes_machine_boxes_iproperties_provider_parent_iface = NULL;

GType boxes_ui_state_get_type (void) G_GNUC_CONST;
GType boxes_ui_get_type (void) G_GNUC_CONST;
GType boxes_collection_item_get_type (void) G_GNUC_CONST;
GType boxes_properties_page_get_type (void) G_GNUC_CONST;
GType boxes_property_get_type (void) G_GNUC_CONST;
GType boxes_iproperties_provider_get_type (void) G_GNUC_CONST;
GType boxes_machine_get_type (void) G_GNUC_CONST;
GType boxes_machine_connect_flags_get_type (void) G_GNUC_CONST;
GType boxes_machine_thumbnailer_get_type (void) G_GNUC_CONST;
GType boxes_machine_machine_state_get_type (void) G_GNUC_CONST;
GType boxes_app_window_get_type (void) G_GNUC_CONST;
GType boxes_display_get_type (void) G_GNUC_CONST;
GType boxes_auth_notification_get_type (void) G_GNUC_CONST;
#define BOXES_MACHINE_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), BOXES_TYPE_MACHINE, BoxesMachinePrivate))
#define BOXES_MACHINE_AUTOSAVE_TIMEOUT ((guint) 60)
#define BOXES_MACHINE_SCREENSHOT_WIDTH 180
#define BOXES_MACHINE_SCREENSHOT_HEIGHT 134
#define BOXES_MACHINE_CENTERED_EMBLEM_SIZE 32
#define BOXES_MACHINE_EMBLEM_SIZE 16
void boxes_machine_show_display (BoxesMachine* self);
BoxesAppWindow* boxes_machine_get_window (BoxesMachine* self);
BoxesUIState boxes_ui_get_ui_state (BoxesUI* self);
void boxes_ui_set_state (BoxesUI* self,
                         BoxesUIState new_state);
BoxesDisplay* boxes_machine_get_display (BoxesMachine* self);
GtkWidget* boxes_display_get_display (BoxesDisplay* self,
                                      gint n);
void boxes_widget_remove (GtkWidget* widget);
GType boxes_wizard_window_get_type (void) G_GNUC_CONST;
GType boxes_properties_window_get_type (void) G_GNUC_CONST;
GType boxes_searchbar_get_type (void) G_GNUC_CONST;
GType boxes_topbar_get_type (void) G_GNUC_CONST;
GType boxes_selectionbar_get_type (void) G_GNUC_CONST;
GType boxes_display_page_get_type (void) G_GNUC_CONST;
GType boxes_empty_boxes_get_type (void) G_GNUC_CONST;
GType boxes_troubleshoot_view_get_type (void) G_GNUC_CONST;
void boxes_display_page_show_display (BoxesDisplayPage* self,
                                      BoxesDisplay* display,
                                      GtkWidget* widget);
void boxes_display_page_replace_display (BoxesDisplayPage* self,
                                         BoxesDisplay* display,
                                         GtkWidget* widget);
BoxesMachine* boxes_machine_construct (GType object_type,
                                       BoxesCollectionSource* source,
                                       const gchar* name,
                                       const gchar* uuid);
BoxesCollectionItem* boxes_collection_item_construct (GType object_type);
void boxes_collection_item_set_name (BoxesCollectionItem* self,
                                     const gchar* value);
void boxes_machine_set_connecting_cancellable (BoxesMachine* self,
                                               GCancellable* value);
static void boxes_machine_ui_state_changed (BoxesMachine* self);
static void _boxes_machine_ui_state_changed_g_object_notify (GObject* _sender,
                                                      GParamSpec* pspec,
                                                      gpointer self);
GType boxes_app_get_type (void) G_GNUC_CONST;
BoxesAppWindow* boxes_app_get_main_window (BoxesApp* self);
static void __lambda259_ (BoxesMachine* self);
void boxes_machine_set_screenshot_enable (BoxesMachine* self,
                                          gboolean enable);
static void ___lambda259__g_object_notify (GObject* _sender,
                                    GParamSpec* pspec,
                                    gpointer self);
static void boxes_machine_create_display_config (BoxesMachine* self,
                                          const gchar* uuid);
BoxesMachineThumbnailer* boxes_machine_thumbnailer_new (BoxesMachine* machine,
                                                        gint width,
                                                        gint height,
                                                        gint centred_emblem_size,
                                                        gint emblem_size,
                                                        GdkRGBA* border_color,
                                                        GdkRGBA* background_color);
BoxesMachineThumbnailer* boxes_machine_thumbnailer_construct (GType object_type,
                                                              BoxesMachine* machine,
                                                              gint width,
                                                              gint height,
                                                              gint centred_emblem_size,
                                                              gint emblem_size,
                                                              GdkRGBA* border_color,
                                                              GdkRGBA* background_color);
static void boxes_machine_set_thumbnailer (BoxesMachine* self,
                                    BoxesMachineThumbnailer* value);
void boxes_machine_load_screenshot (BoxesMachine* self);
BoxesMachineMachineState boxes_machine_get_state (BoxesMachine* self);
static gchar* boxes_machine_get_screenshot_filename (BoxesMachine* self,
                                              GError** error);
static void boxes_machine_set_screenshot (BoxesMachine* self,
                                   GdkPixbuf* large_screenshot,
                                   gboolean save);
static void boxes_machine_update_screenshot (BoxesMachine* self,
                                      gboolean force_save,
                                      gboolean first_check,
                                      GAsyncReadyCallback _callback_,
                                      gpointer _user_data_);
static void boxes_machine_update_screenshot_finish (BoxesMachine* self,
                                             GAsyncResult* _res_);
static gboolean ___lambda25_ (BoxesMachine* self);
static gboolean ____lambda25__gsource_func (gpointer self);
static void boxes_machine_save_data_free (gpointer _data);
void boxes_machine_save (BoxesMachine* self,
                         GAsyncReadyCallback _callback_,
                         gpointer _user_data_);
void boxes_machine_save_finish (BoxesMachine* self,
                                GAsyncResult* _res_,
                                GError** error);
static gboolean boxes_machine_save_co (BoxesMachineSaveData* _data_);
const gchar* boxes_collection_item_get_name (BoxesCollectionItem* self);
void boxes_machine_update_status (BoxesMachine* self);
void boxes_machine_save_real (BoxesMachine* self,
                              GAsyncReadyCallback _callback_,
                              gpointer _user_data_);
void boxes_machine_save_real_finish (BoxesMachine* self,
                                     GAsyncResult* _res_,
                                     GError** error);
static void boxes_machine_save_ready (GObject* source_object,
                               GAsyncResult* _res_,
                               gpointer _user_data_);
void boxes_machine_schedule_autosave (BoxesMachine* self);
gboolean boxes_machine_get_should_autosave (BoxesMachine* self);
static gboolean __lambda54_ (BoxesMachine* self);
static void boxes_machine_try_save (BoxesMachine* self,
                             GAsyncReadyCallback _callback_,
                             gpointer _user_data_);
static void boxes_machine_try_save_finish (BoxesMachine* self,
                                    GAsyncResult* _res_);
static gboolean ___lambda54__gsource_func (gpointer self);
void boxes_machine_unschedule_autosave (BoxesMachine* self);
static void boxes_machine_real_save_real_data_free (gpointer _data);
static void boxes_machine_real_save_real (BoxesMachine* self,
                                   GAsyncReadyCallback _callback_,
                                   gpointer _user_data_);
static gboolean boxes_machine_real_save_real_co (BoxesMachineSaveRealData* _data_);
static void boxes_machine_real_take_screenshot_data_free (gpointer _data);
static void boxes_machine_real_take_screenshot (BoxesMachine* self,
                                         GAsyncReadyCallback _callback_,
                                         gpointer _user_data_);
void boxes_machine_take_screenshot (BoxesMachine* self,
                                    GAsyncReadyCallback _callback_,
                                    gpointer _user_data_);
GdkPixbuf* boxes_machine_take_screenshot_finish (BoxesMachine* self,
                                                 GAsyncResult* _res_,
                                                 GError** error);
static gboolean boxes_machine_real_take_screenshot_co (BoxesMachineTakeScreenshotData* _data_);
GdkPixbuf* boxes_display_get_pixbuf (BoxesDisplay* self,
                                     gint n,
                                     GError** error);
GList* boxes_machine_get_properties (BoxesMachine* self,
                                     BoxesPropertiesPage page);
static GList* boxes_machine_real_get_properties (BoxesMachine* self,
                                          BoxesPropertiesPage page);
void boxes_machine_connect_display (BoxesMachine* self,
                                    BoxesMachineConnectFlags flags,
                                    GAsyncReadyCallback _callback_,
                                    gpointer _user_data_);
void boxes_machine_connect_display_finish (BoxesMachine* self,
                                           GAsyncResult* _res_,
                                           GError** error);
void boxes_machine_restart (BoxesMachine* self);
static void boxes_machine_real_restart (BoxesMachine* self);
void boxes_machine_clone (BoxesMachine* self,
                          GAsyncReadyCallback _callback_,
                          gpointer _user_data_);
void boxes_machine_clone_finish (BoxesMachine* self,
                                 GAsyncResult* _res_);
void boxes_machine_disconnect_display (BoxesMachine* self);
static void boxes_machine_real_disconnect_display (BoxesMachine* self);
GtkWidget* boxes_display_page_remove_display (BoxesDisplayPage* self);
gboolean boxes_display_should_keep_alive (BoxesDisplay* self);
void boxes_display_disconnect_it (BoxesDisplay* self);
void boxes_machine_set_display (BoxesMachine* self,
                                BoxesDisplay* value);
void boxes_display_set_enable_audio (BoxesDisplay* self,
                                     gboolean enable);
void boxes_machine_set_window (BoxesMachine* self,
                               BoxesAppWindow* value);
static void boxes_machine_real_update_status (BoxesMachine* self);
void boxes_machine_set_status (BoxesMachine* self,
                               const gchar* value);
static void boxes_machine_save_pixbuf_as_screenshot (BoxesMachine* self,
                                              GdkPixbuf* pixbuf);
static gint boxes_machine_pixbuf_energy (BoxesMachine* self,
                                  GdkPixbuf* pixbuf);
static GdkPixbuf* boxes_machine_draw_vm (BoxesMachine* self,
                                  GdkPixbuf* pixbuf,
                                  gint width,
                                  gint height);
void boxes_machine_set_pixbuf (BoxesMachine* self,
                               GdkPixbuf* value);
static GdkPixbuf* boxes_machine_draw_stopped_vm (gint width,
                                          gint height);
static void boxes_machine_update_screenshot_data_free (gpointer _data);
static gboolean boxes_machine_update_screenshot_co (BoxesMachineUpdateScreenshotData* _data_);
static void boxes_machine_update_screenshot_ready (GObject* source_object,
                                            GAsyncResult* _res_,
                                            gpointer _user_data_);
gboolean boxes_machine_get_is_running (BoxesMachine* self);
void boxes_machine_delete (BoxesMachine* self,
                           gboolean by_user);
static void boxes_machine_real_delete (BoxesMachine* self,
                                gboolean by_user);
static void boxes_machine_set_deleted (BoxesMachine* self,
                                gboolean value);
void boxes_topbar_set_status (BoxesTopbar* self,
                              const gchar* value);
static void boxes_machine_try_connect_display (BoxesMachine* self,
                                        BoxesMachineConnectFlags flags,
                                        GAsyncReadyCallback _callback_,
                                        gpointer _user_data_);
static void boxes_machine_try_connect_display_finish (BoxesMachine* self,
                                               GAsyncResult* _res_);
BoxesUIState boxes_ui_get_previous_ui_state (BoxesUI* self);
BoxesCollectionItem* boxes_app_window_get_current_item (BoxesAppWindow* self);
void boxes_auth_notification_dismiss (BoxesAuthNotification* self);
static void boxes_machine_try_connect_display_data_free (gpointer _data);
static gboolean boxes_machine_try_connect_display_co (BoxesMachineTryConnectDisplayData* _data_);
static Block59Data* block59_data_ref (Block59Data* _data59_);
static void block59_data_unref (void * _userdata_);
static void boxes_machine_try_connect_display_ready (GObject* source_object,
                                              GAsyncResult* _res_,
                                              gpointer _user_data_);
GType boxes_notification_get_type (void) G_GNUC_CONST;
GType boxes_notificationbar_get_type (void) G_GNUC_CONST;
BoxesNotificationbar* boxes_app_window_get_notificationbar (BoxesAppWindow* self);
BoxesNotification* boxes_notificationbar_display_for_action (BoxesNotificationbar* self,
                                                             const gchar* message,
                                                             const gchar* action_label,
                                                             BoxesNotificationOKFunc action_func,
                                                             void* action_func_target,
                                                             GDestroyNotify action_func_target_destroy_notify,
                                                             BoxesNotificationDismissFunc ignore_func,
                                                             void* ignore_func_target,
                                                             GDestroyNotify ignore_func_target_destroy_notify,
                                                             gint timeout);
static void ___lambda251_ (Block59Data* _data59_);
static void ____lambda251__boxes_notification_ok_func (gpointer self);
#define BOXES_NOTIFICATIONBAR_DEFAULT_TIMEOUT 6
static void ___lambda252_ (BoxesMachine* self);
static void ____lambda252__boxes_notification_dismissed (BoxesNotification* _sender,
                                                  gpointer self);
GType boxes_libvirt_machine_get_type (void) G_GNUC_CONST;
static void ____lambda253_ (BoxesMachine* self);
void boxes_app_window_set_current_item (BoxesAppWindow* self,
                                        BoxesCollectionItem* value);
void boxes_app_window_show_properties (BoxesAppWindow* self);
GType boxes_libvirt_machine_properties_get_type (void) G_GNUC_CONST;
gchar* boxes_libvirt_machine_properties_collect_logs (BoxesLibvirtMachineProperties* self);
void boxes_properties_window_show_troubleshoot_log (BoxesPropertiesWindow* self,
                                                    const gchar* log);
static void _____lambda253__boxes_notification_ok_func (gpointer self);
BoxesNotification* boxes_notificationbar_display_error (BoxesNotificationbar* self,
                                                        const gchar* message,
                                                        gint timeout);
static void boxes_machine_store_auth_credentials (BoxesMachine* self);
static void __lambda254_ (BoxesMachine* self,
                   GObject* obj,
                   GAsyncResult* res);
static void ___lambda254__gasync_ready_callback (GObject* source_object,
                                          GAsyncResult* res,
                                          gpointer self);
static void boxes_machine_handle_auth (BoxesMachine* self);
static Block60Data* block60_data_ref (Block60Data* _data60_);
static void block60_data_unref (void * _userdata_);
gboolean boxes_display_get_need_username (BoxesDisplay* self);
gboolean boxes_display_get_need_password (BoxesDisplay* self);
static void __lambda250_ (BoxesMachine* self,
                   const gchar* username,
                   const gchar* password);
static void ___lambda250__boxes_auth_notification_auth_func (const gchar* username,
                                                      const gchar* password,
                                                      gpointer self);
static void __lambda255_ (BoxesMachine* self);
static void ___lambda255__boxes_notification_dismiss_func (gpointer self);
static void __lambda256_ (Block60Data* _data60_,
                   GObject* obj,
                   GAsyncResult* res);
BoxesAuthNotification* boxes_notificationbar_display_for_auth (BoxesNotificationbar* self,
                                                               const gchar* auth_string,
                                                               BoxesAuthNotificationAuthFunc auth_func,
                                                               void* auth_func_target,
                                                               GDestroyNotify auth_func_target_destroy_notify,
                                                               BoxesNotificationDismissFunc dismiss_func,
                                                               void* dismiss_func_target,
                                                               GDestroyNotify dismiss_func_target_destroy_notify,
                                                               gboolean need_username);
static void ___lambda256__gasync_ready_callback (GObject* source_object,
                                          GAsyncResult* res,
                                          gpointer self);
static gint boxes_machine_real_compare (BoxesCollectionItem* base,
                                 BoxesCollectionItem* other);
static void boxes_machine_try_save_data_free (gpointer _data);
static gboolean boxes_machine_try_save_co (BoxesMachineTrySaveData* _data_);
static void boxes_machine_try_save_ready (GObject* source_object,
                                   GAsyncResult* _res_,
                                   gpointer _user_data_);
GdkPixbuf* boxes_machine_get_pixbuf (BoxesMachine* self);
BoxesMachineThumbnailer* boxes_machine_get_thumbnailer (BoxesMachine* self);
const gchar* boxes_machine_get_info (BoxesMachine* self);
void boxes_machine_set_info (BoxesMachine* self,
                             const gchar* value);
const gchar* boxes_machine_get_status (BoxesMachine* self);
gboolean boxes_machine_get_suspend_at_exit (BoxesMachine* self);
gboolean boxes_machine_get_can_save (BoxesMachine* self);
gboolean boxes_machine_get_can_restart (BoxesMachine* self);
gboolean boxes_machine_get_can_clone (BoxesMachine* self);
gboolean boxes_machine_get_can_delete (BoxesMachine* self);
void boxes_machine_set_can_delete (BoxesMachine* self,
                                   gboolean value);
gboolean boxes_machine_get_under_construction (BoxesMachine* self);
void boxes_machine_set_under_construction (BoxesMachine* self,
                                           gboolean value);
gboolean boxes_machine_get_is_connected (BoxesMachine* self);
gboolean boxes_machine_get_is_on (BoxesMachine* self);
gboolean boxes_machine_get_is_stopped (BoxesMachine* self);
gboolean boxes_machine_get_is_local (BoxesMachine* self);
GCancellable* boxes_machine_get_connecting_cancellable (BoxesMachine* self);
void boxes_machine_set_state (BoxesMachine* self,
                              BoxesMachineMachineState value);
const gchar* boxes_machine_machine_state_to_string (BoxesMachineMachineState self);
gboolean boxes_machine_get_deleted (BoxesMachine* self);
static void _boxes_machine_display___lambda246_ (BoxesMachine* self,
                                          gint id);
static void __boxes_machine_display___lambda246__boxes_display_show (BoxesDisplay* _sender,
                                                              gint display_id,
                                                              gpointer self);
static void _boxes_machine_display___lambda247_ (BoxesMachine* self,
                                          gint id);
static void __boxes_machine_display___lambda247__boxes_display_hide (BoxesDisplay* _sender,
                                                              gint display_id,
                                                              gpointer self);
static void _boxes_machine_display___lambda248_ (BoxesMachine* self,
                                          const gchar* message);
static void __boxes_machine_display___lambda248__boxes_display_got_error (BoxesDisplay* _sender,
                                                                   const gchar* message,
                                                                   gpointer self);
static void _boxes_machine_display___lambda249_ (BoxesMachine* self,
                                          gboolean failed);
static void __boxes_machine_display___lambda249__boxes_display_disconnected (BoxesDisplay* _sender,
                                                                      gboolean connection_failed,
                                                                      gpointer self);
static void _boxes_machine_handle_auth_g_object_notify (GObject* _sender,
                                                 GParamSpec* pspec,
                                                 gpointer self);
void boxes_display_set_username (BoxesDisplay* self,
                                 const gchar* value);
void boxes_display_set_password (BoxesDisplay* self,
                                 const gchar* value);
static void boxes_machine_finalize (GObject * obj);
static void _vala_boxes_machine_get_property (GObject * object,
                                       guint property_id,
                                       GValue * value,
                                       GParamSpec * pspec);
static void _vala_boxes_machine_set_property (GObject * object,
                                       guint property_id,
                                       const GValue * value,
                                       GParamSpec * pspec);

const GdkRGBA BOXES_MACHINE_FRAME_BORDER_COLOR = {0x3b / 255.0, 0x3c / 255.0, 0x38 / 255.0, 1.0};
const GdkRGBA BOXES_MACHINE_FRAME_BACKGROUND_COLOR = {0x2d / 255.0, 0x2d / 255.0, 0x2d / 255.0, 1.0};
static GRegex* _tmp_regex_0 = NULL;

GType
boxes_machine_machine_state_get_type (void)
{
	static volatile gsize boxes_machine_machine_state_type_id__volatile = 0;
	if (g_once_init_enter (&boxes_machine_machine_state_type_id__volatile)) {
		static const GEnumValue values[] = {{BOXES_MACHINE_MACHINE_STATE_UNKNOWN, "BOXES_MACHINE_MACHINE_STATE_UNKNOWN", "unknown"}, {BOXES_MACHINE_MACHINE_STATE_STOPPED, "BOXES_MACHINE_MACHINE_STATE_STOPPED", "stopped"}, {BOXES_MACHINE_MACHINE_STATE_FORCE_STOPPED, "BOXES_MACHINE_MACHINE_STATE_FORCE_STOPPED", "force-stopped"}, {BOXES_MACHINE_MACHINE_STATE_RUNNING, "BOXES_MACHINE_MACHINE_STATE_RUNNING", "running"}, {BOXES_MACHINE_MACHINE_STATE_PAUSED, "BOXES_MACHINE_MACHINE_STATE_PAUSED", "paused"}, {BOXES_MACHINE_MACHINE_STATE_SAVED, "BOXES_MACHINE_MACHINE_STATE_SAVED", "saved"}, {BOXES_MACHINE_MACHINE_STATE_SLEEPING, "BOXES_MACHINE_MACHINE_STATE_SLEEPING", "sleeping"}, {0, NULL, NULL}};
		GType boxes_machine_machine_state_type_id;
		boxes_machine_machine_state_type_id = g_enum_register_static ("BoxesMachineMachineState", values);
		g_once_init_leave (&boxes_machine_machine_state_type_id__volatile, boxes_machine_machine_state_type_id);
	}
	return boxes_machine_machine_state_type_id__volatile;
}


GType
boxes_machine_connect_flags_get_type (void)
{
	static volatile gsize boxes_machine_connect_flags_type_id__volatile = 0;
	if (g_once_init_enter (&boxes_machine_connect_flags_type_id__volatile)) {
		static const GFlagsValue values[] = {{BOXES_MACHINE_CONNECT_FLAGS_NONE, "BOXES_MACHINE_CONNECT_FLAGS_NONE", "none"}, {BOXES_MACHINE_CONNECT_FLAGS_IGNORE_SAVED_STATE, "BOXES_MACHINE_CONNECT_FLAGS_IGNORE_SAVED_STATE", "ignore-saved-state"}, {0, NULL, NULL}};
		GType boxes_machine_connect_flags_type_id;
		boxes_machine_connect_flags_type_id = g_flags_register_static ("BoxesMachineConnectFlags", values);
		g_once_init_leave (&boxes_machine_connect_flags_type_id__volatile, boxes_machine_connect_flags_type_id);
	}
	return boxes_machine_connect_flags_type_id__volatile;
}


void
boxes_machine_show_display (BoxesMachine* self)
{
	BoxesAppWindow* _tmp0_;
	BoxesAppWindow* _tmp1_;
	BoxesUIState _tmp2_;
	BoxesUIState _tmp3_;
#line 153 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_if_fail (self != NULL);
#line 155 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = boxes_machine_get_window (self);
#line 155 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp1_ = _tmp0_;
#line 155 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp2_ = boxes_ui_get_ui_state ((BoxesUI*) _tmp1_);
#line 155 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp3_ = _tmp2_;
#line 155 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	switch (_tmp3_) {
#line 155 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_UI_STATE_CREDS:
#line 1074 "machine.c"
		{
			BoxesAppWindow* _tmp4_;
			BoxesAppWindow* _tmp5_;
#line 157 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp4_ = boxes_machine_get_window (self);
#line 157 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp5_ = _tmp4_;
#line 157 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			boxes_ui_set_state ((BoxesUI*) _tmp5_, BOXES_UI_STATE_DISPLAY);
#line 158 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			boxes_machine_show_display (self);
#line 159 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			break;
#line 1088 "machine.c"
		}
#line 155 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_UI_STATE_DISPLAY:
#line 1092 "machine.c"
		{
			GtkWidget* widget = NULL;
			BoxesDisplay* _tmp6_;
			BoxesDisplay* _tmp7_;
			GtkWidget* _tmp8_;
			GtkWidget* _tmp9_;
			BoxesAppWindow* _tmp10_;
			BoxesAppWindow* _tmp11_;
			BoxesDisplayPage* _tmp12_;
			BoxesDisplay* _tmp13_;
			BoxesDisplay* _tmp14_;
			GtkWidget* _tmp15_;
			GtkWidget* _tmp16_;
#line 162 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp6_ = boxes_machine_get_display (self);
#line 162 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp7_ = _tmp6_;
#line 162 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp8_ = boxes_display_get_display (_tmp7_, 0);
#line 162 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			widget = _tmp8_;
#line 163 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp9_ = widget;
#line 163 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			boxes_widget_remove (_tmp9_);
#line 164 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp10_ = boxes_machine_get_window (self);
#line 164 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp11_ = _tmp10_;
#line 164 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp12_ = _tmp11_->display_page;
#line 164 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp13_ = boxes_machine_get_display (self);
#line 164 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp14_ = _tmp13_;
#line 164 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp15_ = widget;
#line 164 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			boxes_display_page_show_display (_tmp12_, _tmp14_, _tmp15_);
#line 165 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp16_ = widget;
#line 165 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			gtk_widget_grab_focus (_tmp16_);
#line 167 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_g_object_unref0 (widget);
#line 167 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			break;
#line 1140 "machine.c"
		}
#line 155 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_UI_STATE_PROPERTIES:
#line 1144 "machine.c"
		{
			GtkWidget* widget = NULL;
			BoxesDisplay* _tmp17_;
			BoxesDisplay* _tmp18_;
			GtkWidget* _tmp19_;
			GtkWidget* _tmp20_;
			BoxesAppWindow* _tmp21_;
			BoxesAppWindow* _tmp22_;
			BoxesDisplayPage* _tmp23_;
			BoxesDisplay* _tmp24_;
			BoxesDisplay* _tmp25_;
			GtkWidget* _tmp26_;
#line 170 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp17_ = boxes_machine_get_display (self);
#line 170 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp18_ = _tmp17_;
#line 170 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp19_ = boxes_display_get_display (_tmp18_, 0);
#line 170 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			widget = _tmp19_;
#line 171 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp20_ = widget;
#line 171 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			boxes_widget_remove (_tmp20_);
#line 172 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp21_ = boxes_machine_get_window (self);
#line 172 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp22_ = _tmp21_;
#line 172 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp23_ = _tmp22_->display_page;
#line 172 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp24_ = boxes_machine_get_display (self);
#line 172 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp25_ = _tmp24_;
#line 172 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp26_ = widget;
#line 172 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			boxes_display_page_replace_display (_tmp23_, _tmp25_, _tmp26_);
#line 173 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_g_object_unref0 (widget);
#line 173 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			break;
#line 1187 "machine.c"
		}
		default:
#line 155 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 1192 "machine.c"
	}
}


static gpointer
_g_object_ref0 (gpointer self)
{
#line 256 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return self ? g_object_ref (self) : NULL;
#line 1202 "machine.c"
}


static void
_boxes_machine_ui_state_changed_g_object_notify (GObject* _sender,
                                                 GParamSpec* pspec,
                                                 gpointer self)
{
#line 259 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_ui_state_changed ((BoxesMachine*) self);
#line 1213 "machine.c"
}


static void
__lambda259_ (BoxesMachine* self)
{
	BoxesApp* _tmp0_;
	BoxesAppWindow* _tmp1_;
	BoxesAppWindow* _tmp2_;
	BoxesUIState _tmp3_;
	BoxesUIState _tmp4_;
#line 261 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = boxes_app_app;
#line 261 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp1_ = boxes_app_get_main_window (_tmp0_);
#line 261 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp2_ = _tmp1_;
#line 261 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp3_ = boxes_ui_get_ui_state ((BoxesUI*) _tmp2_);
#line 261 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp4_ = _tmp3_;
#line 261 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp4_ == BOXES_UI_STATE_DISPLAY) {
#line 262 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_machine_set_screenshot_enable (self, FALSE);
#line 1239 "machine.c"
	} else {
#line 264 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_machine_set_screenshot_enable (self, TRUE);
#line 1243 "machine.c"
	}
}


static void
___lambda259__g_object_notify (GObject* _sender,
                               GParamSpec* pspec,
                               gpointer self)
{
#line 260 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	__lambda259_ ((BoxesMachine*) self);
#line 1255 "machine.c"
}


BoxesMachine*
boxes_machine_construct (GType object_type,
                         BoxesCollectionSource* source,
                         const gchar* name,
                         const gchar* uuid)
{
	BoxesMachine * self = NULL;
	BoxesCollectionSource* _tmp0_;
	GCancellable* _tmp1_;
	GCancellable* _tmp2_;
	BoxesApp* _tmp3_;
	BoxesAppWindow* _tmp4_;
	BoxesAppWindow* _tmp5_;
	gulong _tmp6_;
	BoxesMachineThumbnailer* _tmp7_;
	BoxesMachineThumbnailer* _tmp8_;
#line 254 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_val_if_fail (source != NULL, NULL);
#line 254 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_val_if_fail (name != NULL, NULL);
#line 254 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	self = (BoxesMachine*) boxes_collection_item_construct (object_type);
#line 255 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_collection_item_set_name ((BoxesCollectionItem*) self, name);
#line 256 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = _g_object_ref0 (source);
#line 256 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_object_unref0 (self->source);
#line 256 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	self->source = _tmp0_;
#line 257 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp1_ = g_cancellable_new ();
#line 257 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp2_ = _tmp1_;
#line 257 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_set_connecting_cancellable (self, _tmp2_);
#line 257 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_object_unref0 (_tmp2_);
#line 259 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_signal_connect_object ((GObject*) self, "notify::ui-state", (GCallback) _boxes_machine_ui_state_changed_g_object_notify, self, 0);
#line 260 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp3_ = boxes_app_app;
#line 260 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp4_ = boxes_app_get_main_window (_tmp3_);
#line 260 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp5_ = _tmp4_;
#line 260 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp6_ = g_signal_connect_object ((GObject*) _tmp5_, "notify::ui-state", (GCallback) ___lambda259__g_object_notify, self, 0);
#line 260 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	self->priv->ui_state_id = _tmp6_;
#line 267 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_create_display_config (self, uuid);
#line 270 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp7_ = boxes_machine_thumbnailer_new (self, BOXES_MACHINE_SCREENSHOT_WIDTH, BOXES_MACHINE_SCREENSHOT_HEIGHT, BOXES_MACHINE_CENTERED_EMBLEM_SIZE, BOXES_MACHINE_EMBLEM_SIZE, &BOXES_MACHINE_FRAME_BORDER_COLOR, &BOXES_MACHINE_FRAME_BACKGROUND_COLOR);
#line 270 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp8_ = _tmp7_;
#line 270 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_set_thumbnailer (self, _tmp8_);
#line 270 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_object_unref0 (_tmp8_);
#line 254 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return self;
#line 1321 "machine.c"
}


void
boxes_machine_load_screenshot (BoxesMachine* self)
{
	GError * _inner_error_ = NULL;
#line 276 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_if_fail (self != NULL);
#line 1331 "machine.c"
	{
		GdkPixbuf* _tmp0_ = NULL;
		gboolean _tmp1_ = FALSE;
		BoxesMachineMachineState _tmp2_;
		BoxesMachineMachineState _tmp3_;
		GdkPixbuf* screenshot = NULL;
		GdkPixbuf* _tmp9_;
		GdkPixbuf* _tmp10_;
#line 278 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp2_ = boxes_machine_get_state (self);
#line 278 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp3_ = _tmp2_;
#line 278 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		if (_tmp3_ != BOXES_MACHINE_MACHINE_STATE_STOPPED) {
#line 1346 "machine.c"
			BoxesMachineMachineState _tmp4_;
			BoxesMachineMachineState _tmp5_;
#line 278 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp4_ = boxes_machine_get_state (self);
#line 278 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp5_ = _tmp4_;
#line 278 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp1_ = _tmp5_ != BOXES_MACHINE_MACHINE_STATE_FORCE_STOPPED;
#line 1355 "machine.c"
		} else {
#line 278 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp1_ = FALSE;
#line 1359 "machine.c"
		}
#line 278 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		if (_tmp1_) {
#line 1363 "machine.c"
			gchar* _tmp6_ = NULL;
			gchar* _tmp7_;
			GdkPixbuf* _tmp8_;
#line 279 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp7_ = boxes_machine_get_screenshot_filename (self, &_inner_error_);
#line 279 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp6_ = _tmp7_;
#line 279 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 279 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_g_object_unref0 (_tmp0_);
#line 1375 "machine.c"
				goto __catch51_g_error;
			}
#line 279 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp8_ = gdk_pixbuf_new_from_file (_tmp6_, &_inner_error_);
#line 279 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_g_object_unref0 (_tmp0_);
#line 279 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp0_ = _tmp8_;
#line 279 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 279 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_g_free0 (_tmp6_);
#line 279 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_g_object_unref0 (_tmp0_);
#line 1390 "machine.c"
				goto __catch51_g_error;
			}
#line 278 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_g_free0 (_tmp6_);
#line 1395 "machine.c"
		} else {
#line 280 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_g_object_unref0 (_tmp0_);
#line 280 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp0_ = NULL;
#line 1401 "machine.c"
		}
#line 278 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp9_ = _g_object_ref0 (_tmp0_);
#line 278 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		screenshot = _tmp9_;
#line 281 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp10_ = screenshot;
#line 281 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_machine_set_screenshot (self, _tmp10_, FALSE);
#line 277 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_object_unref0 (screenshot);
#line 277 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_object_unref0 (_tmp0_);
#line 1415 "machine.c"
	}
	goto __finally51;
	__catch51_g_error:
	{
		GError* _error_ = NULL;
#line 277 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_error_ = _inner_error_;
#line 277 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_inner_error_ = NULL;
#line 277 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_error_free0 (_error_);
#line 1427 "machine.c"
	}
	__finally51:
#line 277 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 277 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 277 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_clear_error (&_inner_error_);
#line 277 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return;
#line 1438 "machine.c"
	}
}


static gboolean
___lambda25_ (BoxesMachine* self)
{
	gboolean result = FALSE;
#line 293 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_update_screenshot (self, FALSE, FALSE, NULL, NULL);
#line 295 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	result = TRUE;
#line 295 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return result;
#line 1453 "machine.c"
}


static gboolean
____lambda25__gsource_func (gpointer self)
{
	gboolean result;
	result = ___lambda25_ ((BoxesMachine*) self);
#line 292 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return result;
#line 1464 "machine.c"
}


void
boxes_machine_set_screenshot_enable (BoxesMachine* self,
                                     gboolean enable)
{
#line 286 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_if_fail (self != NULL);
#line 287 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (enable) {
#line 1476 "machine.c"
		guint _tmp0_;
		gint interval = 0;
		BoxesApp* _tmp1_;
		BoxesAppWindow* _tmp2_;
		BoxesAppWindow* _tmp3_;
		GSettings* _tmp4_;
		gint _tmp5_;
#line 288 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp0_ = self->priv->screenshot_id;
#line 288 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		if (_tmp0_ != ((guint) 0)) {
#line 289 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			return;
#line 1490 "machine.c"
		}
#line 290 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_machine_update_screenshot (self, FALSE, TRUE, NULL, NULL);
#line 291 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp1_ = boxes_app_app;
#line 291 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp2_ = boxes_app_get_main_window (_tmp1_);
#line 291 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp3_ = _tmp2_;
#line 291 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp4_ = _tmp3_->settings;
#line 291 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		interval = g_settings_get_int (_tmp4_, "screenshot-interval");
#line 292 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp5_ = interval;
#line 292 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		self->priv->screenshot_id = g_timeout_add_seconds_full (G_PRIORITY_DEFAULT, (guint) _tmp5_, ____lambda25__gsource_func, g_object_ref (self), g_object_unref);
#line 1508 "machine.c"
	} else {
		guint _tmp6_;
#line 298 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp6_ = self->priv->screenshot_id;
#line 298 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		if (_tmp6_ != ((guint) 0)) {
#line 1515 "machine.c"
			guint _tmp7_;
#line 299 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp7_ = self->priv->screenshot_id;
#line 299 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			g_source_remove (_tmp7_);
#line 1521 "machine.c"
		}
#line 300 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		self->priv->screenshot_id = (guint) 0;
#line 1525 "machine.c"
	}
}


static gchar*
boxes_machine_get_screenshot_filename (BoxesMachine* self,
                                       GError** error)
{
	gchar* result = NULL;
	BoxesBoxConfig* _tmp0_;
	gchar* _tmp1_;
	gchar* _tmp2_;
	gchar* _tmp3_;
	gboolean _tmp4_;
	BoxesBoxConfig* _tmp6_;
	gchar* _tmp7_;
	gchar* _tmp8_;
	gchar* _tmp9_;
	gchar* _tmp10_;
	gchar* _tmp11_;
	GError * _inner_error_ = NULL;
#line 304 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 305 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = self->config;
#line 305 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp1_ = boxes_box_config_get_uuid (_tmp0_);
#line 305 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp2_ = _tmp1_;
#line 305 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp3_ = _tmp2_;
#line 305 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp4_ = _tmp3_ == NULL;
#line 305 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_free0 (_tmp3_);
#line 305 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp4_) {
#line 1563 "machine.c"
		GError* _tmp5_;
#line 306 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp5_ = g_error_new_literal (BOXES_ERROR, BOXES_ERROR_INVALID, "no uuid, cannot build screenshot filename");
#line 306 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_inner_error_ = _tmp5_;
#line 306 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		if (_inner_error_->domain == BOXES_ERROR) {
#line 306 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			g_propagate_error (error, _inner_error_);
#line 306 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			return NULL;
#line 1575 "machine.c"
		} else {
#line 306 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 306 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			g_clear_error (&_inner_error_);
#line 306 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			return NULL;
#line 1583 "machine.c"
		}
	}
#line 308 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp6_ = self->config;
#line 308 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp7_ = boxes_box_config_get_uuid (_tmp6_);
#line 308 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp8_ = _tmp7_;
#line 308 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp9_ = _tmp8_;
#line 308 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp10_ = boxes_get_screenshot_filename (_tmp9_);
#line 308 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp11_ = _tmp10_;
#line 308 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_free0 (_tmp9_);
#line 308 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	result = _tmp11_;
#line 308 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return result;
#line 1604 "machine.c"
}


static void
boxes_machine_save_data_free (gpointer _data)
{
	BoxesMachineSaveData* _data_;
	_data_ = _data;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_object_unref0 (_data_->self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_slice_free (BoxesMachineSaveData, _data_);
#line 1617 "machine.c"
}


void
boxes_machine_save (BoxesMachine* self,
                    GAsyncReadyCallback _callback_,
                    gpointer _user_data_)
{
	BoxesMachineSaveData* _data_;
	BoxesMachine* _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_ = g_slice_new0 (BoxesMachineSaveData);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_task_set_task_data (_data_->_async_result, _data_, boxes_machine_save_data_free);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->self = _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_save_co (_data_);
#line 1640 "machine.c"
}


void
boxes_machine_save_finish (BoxesMachine* self,
                           GAsyncResult* _res_,
                           GError** error)
{
	BoxesMachineSaveData* _data_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_ = g_task_propagate_pointer (G_TASK (_res_), error);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (NULL == _data_) {
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return;
#line 1656 "machine.c"
	}
}


static void
boxes_machine_save_ready (GObject* source_object,
                          GAsyncResult* _res_,
                          gpointer _user_data_)
{
	BoxesMachineSaveData* _data_;
#line 322 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_ = _user_data_;
#line 322 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_source_object_ = source_object;
#line 322 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_res_ = _res_;
#line 322 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_save_co (_data_);
#line 1675 "machine.c"
}


static gboolean
boxes_machine_save_co (BoxesMachineSaveData* _data_)
{
#line 312 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	switch (_data_->_state_) {
#line 312 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case 0:
#line 1686 "machine.c"
		goto _state_0;
#line 312 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case 1:
#line 1690 "machine.c"
		goto _state_1;
		default:
#line 312 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_assert_not_reached ();
#line 1695 "machine.c"
	}
	_state_0:
#line 313 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_tmp0_ = boxes_machine_get_state (_data_->self);
#line 313 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_tmp1_ = _data_->_tmp0_;
#line 313 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_data_->_tmp1_ == BOXES_MACHINE_MACHINE_STATE_SAVED) {
#line 314 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp2_ = boxes_collection_item_get_name ((BoxesCollectionItem*) _data_->self);
#line 314 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp3_ = _data_->_tmp2_;
#line 314 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_debug ("machine.vala:314: Not saving '%s' since it's already in saved state.", _data_->_tmp3_);
#line 315 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 315 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		if (_data_->_state_ != 0) {
#line 315 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 315 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 1718 "machine.c"
			}
		}
#line 315 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_object_unref (_data_->_async_result);
#line 315 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return FALSE;
#line 1725 "machine.c"
	}
#line 318 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->self->priv->saving = TRUE;
#line 319 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_update_status (_data_->self);
#line 1731 "machine.c"
	{
#line 322 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_state_ = 1;
#line 322 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_machine_save_real (_data_->self, boxes_machine_save_ready, _data_);
#line 322 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return FALSE;
#line 1739 "machine.c"
		_state_1:
#line 322 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_machine_save_real_finish (_data_->self, _data_->_res_, &_data_->_inner_error_);
#line 322 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 1745 "machine.c"
			goto __finally52;
		}
	}
	__finally52:
	{
#line 324 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->self->priv->saving = FALSE;
#line 325 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_machine_update_status (_data_->self);
#line 1755 "machine.c"
	}
#line 321 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 321 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 321 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_object_unref (_data_->_async_result);
#line 321 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return FALSE;
#line 1765 "machine.c"
	}
#line 312 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 312 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_data_->_state_ != 0) {
#line 312 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 312 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 1775 "machine.c"
		}
	}
#line 312 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_object_unref (_data_->_async_result);
#line 312 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return FALSE;
#line 1782 "machine.c"
}


static gboolean
__lambda54_ (BoxesMachine* self)
{
	gboolean result = FALSE;
#line 335 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_try_save (self, NULL, NULL);
#line 336 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	self->priv->autosave_timeout_id = (guint) 0;
#line 338 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	result = FALSE;
#line 338 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return result;
#line 1798 "machine.c"
}


static gboolean
___lambda54__gsource_func (gpointer self)
{
	gboolean result;
	result = __lambda54_ ((BoxesMachine*) self);
#line 334 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return result;
#line 1809 "machine.c"
}


void
boxes_machine_schedule_autosave (BoxesMachine* self)
{
	gboolean _tmp0_;
	gboolean _tmp1_;
	const gchar* _tmp2_;
	const gchar* _tmp3_;
#line 329 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_if_fail (self != NULL);
#line 330 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = boxes_machine_get_should_autosave (self);
#line 330 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp1_ = _tmp0_;
#line 330 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (!_tmp1_) {
#line 331 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return;
#line 1830 "machine.c"
	}
#line 333 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp2_ = boxes_collection_item_get_name ((BoxesCollectionItem*) self);
#line 333 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp3_ = _tmp2_;
#line 333 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_debug ("machine.vala:333: Scheduling autosave for '%s'", _tmp3_);
#line 334 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	self->priv->autosave_timeout_id = g_timeout_add_seconds_full (G_PRIORITY_DEFAULT, BOXES_MACHINE_AUTOSAVE_TIMEOUT, ___lambda54__gsource_func, g_object_ref (self), g_object_unref);
#line 1840 "machine.c"
}


void
boxes_machine_unschedule_autosave (BoxesMachine* self)
{
	guint _tmp0_;
	const gchar* _tmp1_;
	const gchar* _tmp2_;
	guint _tmp3_;
#line 342 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_if_fail (self != NULL);
#line 343 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = self->priv->autosave_timeout_id;
#line 343 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp0_ == ((guint) 0)) {
#line 344 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return;
#line 1859 "machine.c"
	}
#line 346 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp1_ = boxes_collection_item_get_name ((BoxesCollectionItem*) self);
#line 346 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp2_ = _tmp1_;
#line 346 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_debug ("machine.vala:346: Unscheduling autosave for '%s'", _tmp2_);
#line 347 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp3_ = self->priv->autosave_timeout_id;
#line 347 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_source_remove (_tmp3_);
#line 348 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	self->priv->autosave_timeout_id = (guint) 0;
#line 1873 "machine.c"
}


static void
boxes_machine_real_save_real_data_free (gpointer _data)
{
	BoxesMachineSaveRealData* _data_;
	_data_ = _data;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_object_unref0 (_data_->self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_slice_free (BoxesMachineSaveRealData, _data_);
#line 1886 "machine.c"
}


static void
boxes_machine_real_save_real (BoxesMachine* self,
                              GAsyncReadyCallback _callback_,
                              gpointer _user_data_)
{
	BoxesMachineSaveRealData* _data_;
	BoxesMachine* _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_ = g_slice_new0 (BoxesMachineSaveRealData);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_task_set_task_data (_data_->_async_result, _data_, boxes_machine_real_save_real_data_free);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->self = _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_real_save_real_co (_data_);
#line 1909 "machine.c"
}


static void
boxes_machine_real_save_real_finish (BoxesMachine* self,
                                     GAsyncResult* _res_,
                                     GError** error)
{
	BoxesMachineSaveRealData* _data_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_ = g_task_propagate_pointer (G_TASK (_res_), error);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (NULL == _data_) {
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return;
#line 1925 "machine.c"
	}
}


static gboolean
boxes_machine_real_save_real_co (BoxesMachineSaveRealData* _data_)
{
#line 351 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	switch (_data_->_state_) {
#line 351 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case 0:
#line 1937 "machine.c"
		goto _state_0;
		default:
#line 351 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_assert_not_reached ();
#line 1942 "machine.c"
	}
	_state_0:
#line 351 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 351 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_data_->_state_ != 0) {
#line 351 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 351 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 1953 "machine.c"
		}
	}
#line 351 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_object_unref (_data_->_async_result);
#line 351 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return FALSE;
#line 1960 "machine.c"
}


void
boxes_machine_save_real (BoxesMachine* self,
                         GAsyncReadyCallback _callback_,
                         gpointer _user_data_)
{
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	BOXES_MACHINE_GET_CLASS (self)->save_real (self, _callback_, _user_data_);
#line 1971 "machine.c"
}


void
boxes_machine_save_real_finish (BoxesMachine* self,
                                GAsyncResult* _res_,
                                GError** error)
{
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	BOXES_MACHINE_GET_CLASS (self)->save_real_finish (self, _res_, error);
#line 1982 "machine.c"
}


static void
boxes_machine_real_take_screenshot_data_free (gpointer _data)
{
	BoxesMachineTakeScreenshotData* _data_;
	_data_ = _data;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_object_unref0 (_data_->result);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_object_unref0 (_data_->self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_slice_free (BoxesMachineTakeScreenshotData, _data_);
#line 1997 "machine.c"
}


static void
boxes_machine_real_take_screenshot (BoxesMachine* self,
                                    GAsyncReadyCallback _callback_,
                                    gpointer _user_data_)
{
	BoxesMachineTakeScreenshotData* _data_;
	BoxesMachine* _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_ = g_slice_new0 (BoxesMachineTakeScreenshotData);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_task_set_task_data (_data_->_async_result, _data_, boxes_machine_real_take_screenshot_data_free);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->self = _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_real_take_screenshot_co (_data_);
#line 2020 "machine.c"
}


static GdkPixbuf*
boxes_machine_real_take_screenshot_finish (BoxesMachine* self,
                                           GAsyncResult* _res_,
                                           GError** error)
{
	GdkPixbuf* result;
	BoxesMachineTakeScreenshotData* _data_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_ = g_task_propagate_pointer (G_TASK (_res_), error);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (NULL == _data_) {
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return NULL;
#line 2037 "machine.c"
	}
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	result = _data_->result;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->result = NULL;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return result;
#line 2045 "machine.c"
}


static gboolean
boxes_machine_real_take_screenshot_co (BoxesMachineTakeScreenshotData* _data_)
{
#line 360 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	switch (_data_->_state_) {
#line 360 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case 0:
#line 2056 "machine.c"
		goto _state_0;
		default:
#line 360 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_assert_not_reached ();
#line 2061 "machine.c"
	}
	_state_0:
#line 361 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_tmp0_ = boxes_machine_get_display (_data_->self);
#line 361 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_tmp1_ = _data_->_tmp0_;
#line 361 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_data_->_tmp1_ == NULL) {
#line 362 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->result = NULL;
#line 362 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 362 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		if (_data_->_state_ != 0) {
#line 362 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 362 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 2080 "machine.c"
			}
		}
#line 362 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_object_unref (_data_->_async_result);
#line 362 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return FALSE;
#line 2087 "machine.c"
	}
#line 364 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_tmp3_ = boxes_machine_get_display (_data_->self);
#line 364 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_tmp4_ = _data_->_tmp3_;
#line 364 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_tmp5_ = boxes_display_get_pixbuf (_data_->_tmp4_, 0, &_data_->_inner_error_);
#line 364 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_tmp2_ = _data_->_tmp5_;
#line 364 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 364 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 364 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_object_unref (_data_->_async_result);
#line 364 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return FALSE;
#line 2105 "machine.c"
	}
#line 364 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_tmp6_ = _data_->_tmp2_;
#line 364 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_tmp2_ = NULL;
#line 364 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->result = _data_->_tmp6_;
#line 364 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_object_unref0 (_data_->_tmp2_);
#line 364 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 364 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_data_->_state_ != 0) {
#line 364 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 364 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 2123 "machine.c"
		}
	}
#line 364 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_object_unref (_data_->_async_result);
#line 364 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return FALSE;
#line 2130 "machine.c"
}


void
boxes_machine_take_screenshot (BoxesMachine* self,
                               GAsyncReadyCallback _callback_,
                               gpointer _user_data_)
{
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	BOXES_MACHINE_GET_CLASS (self)->take_screenshot (self, _callback_, _user_data_);
#line 2141 "machine.c"
}


GdkPixbuf*
boxes_machine_take_screenshot_finish (BoxesMachine* self,
                                      GAsyncResult* _res_,
                                      GError** error)
{
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return BOXES_MACHINE_GET_CLASS (self)->take_screenshot_finish (self, _res_, error);
#line 2152 "machine.c"
}


static GList*
boxes_machine_real_get_properties (BoxesMachine* self,
                                   BoxesPropertiesPage page)
{
#line 367 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_critical ("Type `%s' does not implement abstract method `boxes_machine_get_properties'", g_type_name (G_TYPE_FROM_INSTANCE (self)));
#line 367 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return NULL;
#line 2164 "machine.c"
}


GList*
boxes_machine_get_properties (BoxesMachine* self,
                              BoxesPropertiesPage page)
{
#line 367 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 367 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return BOXES_MACHINE_GET_CLASS (self)->get_properties (self, page);
#line 2176 "machine.c"
}


void
boxes_machine_connect_display (BoxesMachine* self,
                               BoxesMachineConnectFlags flags,
                               GAsyncReadyCallback _callback_,
                               gpointer _user_data_)
{
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	BOXES_MACHINE_GET_CLASS (self)->connect_display (self, flags, _callback_, _user_data_);
#line 2188 "machine.c"
}


void
boxes_machine_connect_display_finish (BoxesMachine* self,
                                      GAsyncResult* _res_,
                                      GError** error)
{
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	BOXES_MACHINE_GET_CLASS (self)->connect_display_finish (self, _res_, error);
#line 2199 "machine.c"
}


static void
boxes_machine_real_restart (BoxesMachine* self)
{
#line 370 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_critical ("Type `%s' does not implement abstract method `boxes_machine_restart'", g_type_name (G_TYPE_FROM_INSTANCE (self)));
#line 370 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return;
#line 2210 "machine.c"
}


void
boxes_machine_restart (BoxesMachine* self)
{
#line 370 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_if_fail (self != NULL);
#line 370 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	BOXES_MACHINE_GET_CLASS (self)->restart (self);
#line 2221 "machine.c"
}


void
boxes_machine_clone (BoxesMachine* self,
                     GAsyncReadyCallback _callback_,
                     gpointer _user_data_)
{
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	BOXES_MACHINE_GET_CLASS (self)->clone (self, _callback_, _user_data_);
#line 2232 "machine.c"
}


void
boxes_machine_clone_finish (BoxesMachine* self,
                            GAsyncResult* _res_)
{
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	BOXES_MACHINE_GET_CLASS (self)->clone_finish (self, _res_);
#line 2242 "machine.c"
}


static void
boxes_machine_real_disconnect_display (BoxesMachine* self)
{
	BoxesDisplay* _tmp0_;
	BoxesDisplay* _tmp1_;
	gboolean _tmp2_ = FALSE;
	BoxesMachineMachineState _tmp3_;
	BoxesMachineMachineState _tmp4_;
	BoxesAppWindow* _tmp14_;
	BoxesAppWindow* _tmp15_;
	BoxesDisplayPage* _tmp16_;
	GtkWidget* _tmp17_;
	GtkWidget* _tmp18_;
	BoxesDisplay* _tmp19_;
	BoxesDisplay* _tmp20_;
	GError * _inner_error_ = NULL;
#line 374 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = boxes_machine_get_display (self);
#line 374 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp1_ = _tmp0_;
#line 374 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp1_ == NULL) {
#line 375 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return;
#line 2270 "machine.c"
	}
#line 377 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp3_ = boxes_machine_get_state (self);
#line 377 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp4_ = _tmp3_;
#line 377 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp4_ != BOXES_MACHINE_MACHINE_STATE_STOPPED) {
#line 2278 "machine.c"
		BoxesMachineMachineState _tmp5_;
		BoxesMachineMachineState _tmp6_;
#line 377 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp5_ = boxes_machine_get_state (self);
#line 377 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp6_ = _tmp5_;
#line 377 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp2_ = _tmp6_ != BOXES_MACHINE_MACHINE_STATE_FORCE_STOPPED;
#line 2287 "machine.c"
	} else {
#line 377 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp2_ = FALSE;
#line 2291 "machine.c"
	}
#line 377 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp2_) {
#line 2295 "machine.c"
		{
			GdkPixbuf* pixbuf = NULL;
			BoxesDisplay* _tmp7_;
			BoxesDisplay* _tmp8_;
			GdkPixbuf* _tmp9_;
			GdkPixbuf* _tmp10_;
#line 379 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp7_ = boxes_machine_get_display (self);
#line 379 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp8_ = _tmp7_;
#line 379 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp9_ = boxes_display_get_pixbuf (_tmp8_, 0, &_inner_error_);
#line 379 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			pixbuf = _tmp9_;
#line 379 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 2312 "machine.c"
				goto __catch53_g_error;
			}
#line 380 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp10_ = pixbuf;
#line 380 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			if (_tmp10_ != NULL) {
#line 2319 "machine.c"
				GdkPixbuf* _tmp11_;
#line 381 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_tmp11_ = pixbuf;
#line 381 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				boxes_machine_set_screenshot (self, _tmp11_, TRUE);
#line 2325 "machine.c"
			}
#line 378 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_g_object_unref0 (pixbuf);
#line 2329 "machine.c"
		}
		goto __finally53;
		__catch53_g_error:
		{
			GError* _error_ = NULL;
			GError* _tmp12_;
			const gchar* _tmp13_;
#line 378 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_error_ = _inner_error_;
#line 378 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_inner_error_ = NULL;
#line 383 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp12_ = _error_;
#line 383 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp13_ = _tmp12_->message;
#line 383 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			g_warning ("machine.vala:383: %s", _tmp13_);
#line 378 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_g_error_free0 (_error_);
#line 2349 "machine.c"
		}
		__finally53:
#line 378 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 378 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 378 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			g_clear_error (&_inner_error_);
#line 378 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			return;
#line 2360 "machine.c"
		}
	}
#line 387 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp14_ = boxes_machine_get_window (self);
#line 387 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp15_ = _tmp14_;
#line 387 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp16_ = _tmp15_->display_page;
#line 387 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp17_ = boxes_display_page_remove_display (_tmp16_);
#line 387 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp18_ = _tmp17_;
#line 387 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_object_unref0 (_tmp18_);
#line 388 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp19_ = boxes_machine_get_display (self);
#line 388 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp20_ = _tmp19_;
#line 388 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (!boxes_display_should_keep_alive (_tmp20_)) {
#line 2381 "machine.c"
		BoxesDisplay* _tmp21_;
		BoxesDisplay* _tmp22_;
#line 389 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp21_ = boxes_machine_get_display (self);
#line 389 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp22_ = _tmp21_;
#line 389 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_display_disconnect_it (_tmp22_);
#line 390 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_machine_set_display (self, NULL);
#line 2392 "machine.c"
	} else {
		BoxesDisplay* _tmp23_;
		BoxesDisplay* _tmp24_;
#line 392 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp23_ = boxes_machine_get_display (self);
#line 392 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp24_ = _tmp23_;
#line 392 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_display_set_enable_audio (_tmp24_, FALSE);
#line 2402 "machine.c"
	}
#line 395 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_set_window (self, NULL);
#line 2406 "machine.c"
}


void
boxes_machine_disconnect_display (BoxesMachine* self)
{
#line 373 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_if_fail (self != NULL);
#line 373 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	BOXES_MACHINE_GET_CLASS (self)->disconnect_display (self);
#line 2417 "machine.c"
}


static void
boxes_machine_create_display_config (BoxesMachine* self,
                                     const gchar* uuid)
{
	BoxesBoxConfig* _tmp0_;
	gchar* group = NULL;
	gchar* _tmp1_;
	BoxesCollectionSource* _tmp6_;
	const gchar* _tmp7_;
	BoxesBoxConfig* _tmp8_;
	BoxesBoxConfig* _tmp9_;
	gchar* _tmp10_;
	gchar* _tmp11_;
	gchar* _tmp12_;
	const gchar* _tmp13_;
	const gchar* _tmp14_;
	gboolean _tmp15_;
	gboolean _tmp19_ = FALSE;
	BoxesBoxConfig* _tmp25_;
	gchar* _tmp26_;
	gchar* _tmp27_;
	gchar* _tmp28_;
	gboolean _tmp29_;
	BoxesBoxConfig* _tmp33_;
	BoxesBoxConfig* _tmp34_;
#line 398 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_if_fail (self != NULL);
#line 398 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = self->config;
#line 398 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_vala_return_if_fail (_tmp0_ == NULL, "this.config == null");
#line 402 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp1_ = g_strdup ("display");
#line 402 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	group = _tmp1_;
#line 403 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (uuid != NULL) {
#line 2458 "machine.c"
		const gchar* _tmp2_;
		gchar* _tmp3_;
		gchar* _tmp4_;
		gchar* _tmp5_;
#line 404 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp2_ = group;
#line 404 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp3_ = g_strconcat (" ", uuid, NULL);
#line 404 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp4_ = _tmp3_;
#line 404 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp5_ = g_strconcat (_tmp2_, _tmp4_, NULL);
#line 404 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_free0 (group);
#line 404 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		group = _tmp5_;
#line 404 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_free0 (_tmp4_);
#line 2477 "machine.c"
	}
#line 406 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp6_ = self->source;
#line 406 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp7_ = group;
#line 406 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp8_ = boxes_box_config_new_with_group (_tmp6_, _tmp7_);
#line 406 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_object_unref0 (self->config);
#line 406 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	self->config = _tmp8_;
#line 407 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp9_ = self->config;
#line 407 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp10_ = boxes_box_config_get_last_seen_name (_tmp9_);
#line 407 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp11_ = _tmp10_;
#line 407 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp12_ = _tmp11_;
#line 407 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp13_ = boxes_collection_item_get_name ((BoxesCollectionItem*) self);
#line 407 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp14_ = _tmp13_;
#line 407 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp15_ = g_strcmp0 (_tmp12_, _tmp14_) != 0;
#line 407 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_free0 (_tmp12_);
#line 407 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp15_) {
#line 2507 "machine.c"
		BoxesBoxConfig* _tmp16_;
		const gchar* _tmp17_;
		const gchar* _tmp18_;
#line 408 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp16_ = self->config;
#line 408 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp17_ = boxes_collection_item_get_name ((BoxesCollectionItem*) self);
#line 408 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp18_ = _tmp17_;
#line 408 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_box_config_set_last_seen_name (_tmp16_, _tmp18_);
#line 2519 "machine.c"
	}
#line 410 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (uuid != NULL) {
#line 2523 "machine.c"
		BoxesBoxConfig* _tmp20_;
		gchar* _tmp21_;
		gchar* _tmp22_;
		gchar* _tmp23_;
#line 411 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp20_ = self->config;
#line 411 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp21_ = boxes_box_config_get_uuid (_tmp20_);
#line 411 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp22_ = _tmp21_;
#line 411 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp23_ = _tmp22_;
#line 411 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp19_ = g_strcmp0 (_tmp23_, uuid) != 0;
#line 411 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_free0 (_tmp23_);
#line 2540 "machine.c"
	} else {
#line 410 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp19_ = FALSE;
#line 2544 "machine.c"
	}
#line 410 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp19_) {
#line 2548 "machine.c"
		BoxesBoxConfig* _tmp24_;
#line 412 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp24_ = self->config;
#line 412 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_box_config_set_uuid (_tmp24_, uuid);
#line 2554 "machine.c"
	}
#line 414 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp25_ = self->config;
#line 414 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp26_ = boxes_box_config_get_uuid (_tmp25_);
#line 414 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp27_ = _tmp26_;
#line 414 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp28_ = _tmp27_;
#line 414 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp29_ = _tmp28_ == NULL;
#line 414 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_free0 (_tmp28_);
#line 414 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp29_) {
#line 2570 "machine.c"
		BoxesBoxConfig* _tmp30_;
		gchar* _tmp31_;
		gchar* _tmp32_;
#line 415 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp30_ = self->config;
#line 415 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp31_ = g_uuid_string_random ();
#line 415 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp32_ = _tmp31_;
#line 415 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_box_config_set_uuid (_tmp30_, _tmp32_);
#line 415 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_free0 (_tmp32_);
#line 2584 "machine.c"
	}
#line 417 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp33_ = self->config;
#line 417 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_iconfig_save ((BoxesIConfig*) _tmp33_);
#line 398 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_free0 (group);
#line 398 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp34_ = self->config;
#line 398 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_vala_warn_if_fail (_tmp34_ != NULL, "this.config != null");
#line 2596 "machine.c"
}


static void
boxes_machine_real_update_status (BoxesMachine* self)
{
	gboolean _tmp0_;
#line 421 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = self->priv->saving;
#line 421 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp0_) {
#line 422 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_machine_set_status (self, _ ("Saving…"));
#line 2610 "machine.c"
	} else {
#line 424 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_machine_set_status (self, NULL);
#line 2614 "machine.c"
	}
}


void
boxes_machine_update_status (BoxesMachine* self)
{
#line 420 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_if_fail (self != NULL);
#line 420 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	BOXES_MACHINE_GET_CLASS (self)->update_status (self);
#line 2626 "machine.c"
}


static void
boxes_machine_save_pixbuf_as_screenshot (BoxesMachine* self,
                                         GdkPixbuf* pixbuf)
{
	GError * _inner_error_ = NULL;
#line 427 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_if_fail (self != NULL);
#line 2637 "machine.c"
	{
		gchar* _tmp0_ = NULL;
		gchar* _tmp1_;
#line 429 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp1_ = boxes_machine_get_screenshot_filename (self, &_inner_error_);
#line 429 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp0_ = _tmp1_;
#line 429 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 2647 "machine.c"
			goto __catch54_g_error;
		}
#line 429 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		gdk_pixbuf_save (pixbuf, _tmp0_, "png", &_inner_error_, NULL);
#line 429 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 429 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_g_free0 (_tmp0_);
#line 2656 "machine.c"
			goto __catch54_g_error;
		}
#line 428 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_free0 (_tmp0_);
#line 2661 "machine.c"
	}
	goto __finally54;
	__catch54_g_error:
	{
		GError* _error_ = NULL;
		GError* _tmp2_;
		const gchar* _tmp3_;
#line 428 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_error_ = _inner_error_;
#line 428 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_inner_error_ = NULL;
#line 431 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp2_ = _error_;
#line 431 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp3_ = _tmp2_->message;
#line 431 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_warning ("machine.vala:431: %s", _tmp3_);
#line 428 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_error_free0 (_error_);
#line 2681 "machine.c"
	}
	__finally54:
#line 428 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 428 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 428 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_clear_error (&_inner_error_);
#line 428 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return;
#line 2692 "machine.c"
	}
}


static gint
boxes_machine_pixbuf_energy (BoxesMachine* self,
                             GdkPixbuf* pixbuf)
{
	gint result = 0;
	guint8* pixels = NULL;
	guint8* _tmp0_;
	gint pixels_length1;
	gint _pixels_size_;
	gint w = 0;
	gint h = 0;
	gint rowstride = 0;
	gint n_channels = 0;
	gint energy = 0;
	gint row_start = 0;
	gint _tmp29_;
	gint _tmp30_;
#line 437 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_val_if_fail (self != NULL, 0);
#line 437 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_val_if_fail (pixbuf != NULL, 0);
#line 438 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = gdk_pixbuf_get_pixels (pixbuf);
#line 438 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	pixels = _tmp0_;
#line 438 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	pixels_length1 = -1;
#line 438 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_pixels_size_ = pixels_length1;
#line 439 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	w = gdk_pixbuf_get_width (pixbuf);
#line 440 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	h = gdk_pixbuf_get_height (pixbuf);
#line 441 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	rowstride = gdk_pixbuf_get_rowstride (pixbuf);
#line 442 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	n_channels = gdk_pixbuf_get_n_channels (pixbuf);
#line 444 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	energy = 0;
#line 445 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	row_start = 0;
#line 2738 "machine.c"
	{
		gint y = 0;
#line 446 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		y = 0;
#line 2743 "machine.c"
		{
			gboolean _tmp1_ = FALSE;
#line 446 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp1_ = TRUE;
#line 446 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			while (TRUE) {
#line 2750 "machine.c"
				gint _tmp3_;
				gint _tmp4_;
				gint row_energy = 0;
				gint i = 0;
				gint _tmp5_;
				gint _tmp24_;
				gint _tmp25_;
				gint _tmp26_;
				gint _tmp27_;
				gint _tmp28_;
#line 446 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				if (!_tmp1_) {
#line 2763 "machine.c"
					gint _tmp2_;
#line 446 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
					_tmp2_ = y;
#line 446 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
					y = _tmp2_ + 1;
#line 2769 "machine.c"
				}
#line 446 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_tmp1_ = FALSE;
#line 446 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_tmp3_ = y;
#line 446 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_tmp4_ = h;
#line 446 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				if (!(_tmp3_ < _tmp4_)) {
#line 446 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
					break;
#line 2781 "machine.c"
				}
#line 447 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				row_energy = 0;
#line 448 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_tmp5_ = row_start;
#line 448 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				i = _tmp5_;
#line 2789 "machine.c"
				{
					gint x = 0;
#line 449 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
					x = 0;
#line 2794 "machine.c"
					{
						gboolean _tmp6_ = FALSE;
#line 449 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
						_tmp6_ = TRUE;
#line 449 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
						while (TRUE) {
#line 2801 "machine.c"
							gint _tmp8_;
							gint _tmp9_;
							gint max = 0;
							guint8* _tmp10_;
							gint _tmp10__length1;
							gint _tmp11_;
							guint8 _tmp12_;
							guint8* _tmp13_;
							gint _tmp13__length1;
							gint _tmp14_;
							guint8 _tmp15_;
							guint8* _tmp16_;
							gint _tmp16__length1;
							gint _tmp17_;
							guint8 _tmp18_;
							gint _tmp19_;
							gint _tmp20_;
							gint _tmp21_;
							gint _tmp22_;
							gint _tmp23_;
#line 449 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
							if (!_tmp6_) {
#line 2824 "machine.c"
								gint _tmp7_;
#line 449 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
								_tmp7_ = x;
#line 449 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
								x = _tmp7_ + 1;
#line 2830 "machine.c"
							}
#line 449 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
							_tmp6_ = FALSE;
#line 449 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
							_tmp8_ = x;
#line 449 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
							_tmp9_ = w;
#line 449 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
							if (!(_tmp8_ < _tmp9_)) {
#line 449 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
								break;
#line 2842 "machine.c"
							}
#line 450 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
							_tmp10_ = pixels;
#line 450 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
							_tmp10__length1 = pixels_length1;
#line 450 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
							_tmp11_ = i;
#line 450 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
							_tmp12_ = _tmp10_[_tmp11_ + 0];
#line 450 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
							_tmp13_ = pixels;
#line 450 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
							_tmp13__length1 = pixels_length1;
#line 450 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
							_tmp14_ = i;
#line 450 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
							_tmp15_ = _tmp13_[_tmp14_ + 1];
#line 450 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
							_tmp16_ = pixels;
#line 450 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
							_tmp16__length1 = pixels_length1;
#line 450 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
							_tmp17_ = i;
#line 450 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
							_tmp18_ = _tmp16_[_tmp17_ + 2];
#line 450 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
							max = MAX (MAX ((gint) _tmp12_, (gint) _tmp15_), (gint) _tmp18_);
#line 451 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
							_tmp19_ = row_energy;
#line 451 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
							_tmp20_ = max;
#line 451 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
							_tmp21_ = max;
#line 451 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
							row_energy = _tmp19_ + (_tmp20_ * _tmp21_);
#line 452 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
							_tmp22_ = i;
#line 452 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
							_tmp23_ = n_channels;
#line 452 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
							i = _tmp22_ + _tmp23_;
#line 2884 "machine.c"
						}
					}
				}
#line 454 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_tmp24_ = energy;
#line 454 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_tmp25_ = row_energy;
#line 454 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_tmp26_ = w;
#line 454 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				energy = _tmp24_ + (_tmp25_ / _tmp26_);
#line 455 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_tmp27_ = row_start;
#line 455 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_tmp28_ = rowstride;
#line 455 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				row_start = _tmp27_ + _tmp28_;
#line 2902 "machine.c"
			}
		}
	}
#line 457 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp29_ = energy;
#line 457 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp30_ = h;
#line 457 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	result = _tmp29_ / _tmp30_;
#line 457 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return result;
#line 2914 "machine.c"
}


static void
boxes_machine_set_screenshot (BoxesMachine* self,
                              GdkPixbuf* large_screenshot,
                              gboolean save)
{
#line 460 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_if_fail (self != NULL);
#line 461 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (large_screenshot != NULL) {
#line 2927 "machine.c"
		gint pw = 0;
		gint ph = 0;
		gdouble s = 0.0;
		gint _tmp0_;
		gint _tmp1_;
		gint w = 0;
		gint _tmp2_;
		gdouble _tmp3_;
		gint h = 0;
		gint _tmp4_;
		gdouble _tmp5_;
		GdkPixbuf* small_screenshot = NULL;
		gboolean _tmp6_;
		gboolean _tmp7_;
		gint _tmp8_;
		gint _tmp9_;
		GdkPixbuf* _tmp10_;
		GdkPixbuf* _tmp11_;
		gint _tmp12_;
		gint _tmp13_;
		gdouble _tmp14_;
		gdouble _tmp15_;
		GdkPixbuf* _tmp16_;
		GdkPixbuf* _tmp17_;
		GdkPixbuf* _tmp18_;
		GdkPixbuf* _tmp19_;
		GdkPixbuf* _tmp20_;
		GdkPixbuf* _tmp21_;
#line 462 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		pw = gdk_pixbuf_get_width (large_screenshot);
#line 463 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		ph = gdk_pixbuf_get_height (large_screenshot);
#line 464 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp0_ = pw;
#line 464 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp1_ = ph;
#line 464 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		s = MIN (((gdouble) BOXES_MACHINE_SCREENSHOT_WIDTH) / _tmp0_, ((gdouble) BOXES_MACHINE_SCREENSHOT_HEIGHT) / _tmp1_);
#line 465 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp2_ = pw;
#line 465 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp3_ = s;
#line 465 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		w = (gint) (_tmp2_ * _tmp3_);
#line 466 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp4_ = ph;
#line 466 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp5_ = s;
#line 466 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		h = (gint) (_tmp4_ * _tmp5_);
#line 468 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp6_ = gdk_pixbuf_get_has_alpha (large_screenshot);
#line 468 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp7_ = _tmp6_;
#line 468 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp8_ = w;
#line 468 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp9_ = h;
#line 468 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp10_ = gdk_pixbuf_new (GDK_COLORSPACE_RGB, _tmp7_, 8, _tmp8_, _tmp9_);
#line 468 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		small_screenshot = _tmp10_;
#line 469 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp11_ = small_screenshot;
#line 469 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp12_ = w;
#line 469 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp13_ = h;
#line 469 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp14_ = s;
#line 469 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp15_ = s;
#line 469 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		gdk_pixbuf_scale (large_screenshot, _tmp11_, 0, 0, _tmp12_, _tmp13_, (gdouble) 0, (gdouble) 0, _tmp14_, _tmp15_, GDK_INTERP_HYPER);
#line 479 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp16_ = small_screenshot;
#line 479 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		if (boxes_machine_pixbuf_energy (self, _tmp16_) < 50) {
#line 480 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_g_object_unref0 (small_screenshot);
#line 480 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			return;
#line 3010 "machine.c"
		}
#line 482 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp17_ = small_screenshot;
#line 482 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp18_ = _g_object_ref0 (_tmp17_);
#line 482 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_object_unref0 (self->priv->orig_pixbuf);
#line 482 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		self->priv->orig_pixbuf = _tmp18_;
#line 483 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp19_ = small_screenshot;
#line 483 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp20_ = boxes_machine_draw_vm (self, _tmp19_, BOXES_MACHINE_SCREENSHOT_WIDTH, BOXES_MACHINE_SCREENSHOT_HEIGHT);
#line 483 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp21_ = _tmp20_;
#line 483 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_machine_set_pixbuf (self, _tmp21_);
#line 483 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_object_unref0 (_tmp21_);
#line 484 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		if (save) {
#line 3032 "machine.c"
			GdkPixbuf* _tmp22_;
#line 485 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp22_ = small_screenshot;
#line 485 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			boxes_machine_save_pixbuf_as_screenshot (self, _tmp22_);
#line 3038 "machine.c"
		}
#line 461 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_object_unref0 (small_screenshot);
#line 3042 "machine.c"
	} else {
		GdkPixbuf* _tmp23_;
		GdkPixbuf* _tmp24_;
#line 488 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_object_unref0 (self->priv->orig_pixbuf);
#line 488 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		self->priv->orig_pixbuf = NULL;
#line 489 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp23_ = boxes_machine_draw_stopped_vm (BOXES_MACHINE_SCREENSHOT_WIDTH, BOXES_MACHINE_SCREENSHOT_HEIGHT);
#line 489 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp24_ = _tmp23_;
#line 489 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_machine_set_pixbuf (self, _tmp24_);
#line 489 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_object_unref0 (_tmp24_);
#line 3058 "machine.c"
	}
}


static void
boxes_machine_update_screenshot_data_free (gpointer _data)
{
	BoxesMachineUpdateScreenshotData* _data_;
	_data_ = _data;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_object_unref0 (_data_->self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_slice_free (BoxesMachineUpdateScreenshotData, _data_);
#line 3072 "machine.c"
}


static void
boxes_machine_update_screenshot (BoxesMachine* self,
                                 gboolean force_save,
                                 gboolean first_check,
                                 GAsyncReadyCallback _callback_,
                                 gpointer _user_data_)
{
	BoxesMachineUpdateScreenshotData* _data_;
	BoxesMachine* _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_ = g_slice_new0 (BoxesMachineUpdateScreenshotData);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_task_set_task_data (_data_->_async_result, _data_, boxes_machine_update_screenshot_data_free);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->self = _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->force_save = force_save;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->first_check = first_check;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_update_screenshot_co (_data_);
#line 3101 "machine.c"
}


static void
boxes_machine_update_screenshot_finish (BoxesMachine* self,
                                        GAsyncResult* _res_)
{
	BoxesMachineUpdateScreenshotData* _data_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_ = g_task_propagate_pointer (G_TASK (_res_), NULL);
#line 3112 "machine.c"
}


static void
boxes_machine_update_screenshot_ready (GObject* source_object,
                                       GAsyncResult* _res_,
                                       gpointer _user_data_)
{
	BoxesMachineUpdateScreenshotData* _data_;
#line 502 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_ = _user_data_;
#line 502 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_source_object_ = source_object;
#line 502 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_res_ = _res_;
#line 502 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_update_screenshot_co (_data_);
#line 3130 "machine.c"
}


static gboolean
boxes_machine_update_screenshot_co (BoxesMachineUpdateScreenshotData* _data_)
{
#line 494 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	switch (_data_->_state_) {
#line 494 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case 0:
#line 3141 "machine.c"
		goto _state_0;
#line 494 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case 1:
#line 3145 "machine.c"
		goto _state_1;
#line 494 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case 2:
#line 3149 "machine.c"
		goto _state_2;
		default:
#line 494 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_assert_not_reached ();
#line 3154 "machine.c"
	}
	_state_0:
#line 495 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_tmp0_ = _data_->self->priv->updating_screenshot;
#line 495 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_data_->_tmp0_) {
#line 496 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 496 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		if (_data_->_state_ != 0) {
#line 496 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 496 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 3169 "machine.c"
			}
		}
#line 496 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_object_unref (_data_->_async_result);
#line 496 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return FALSE;
#line 3176 "machine.c"
	}
#line 498 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->self->priv->updating_screenshot = TRUE;
#line 500 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->large_screenshot = NULL;
#line 3182 "machine.c"
	{
#line 502 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_state_ = 1;
#line 502 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_machine_take_screenshot (_data_->self, boxes_machine_update_screenshot_ready, _data_);
#line 502 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return FALSE;
#line 3190 "machine.c"
		_state_1:
#line 502 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp2_ = boxes_machine_take_screenshot_finish (_data_->self, _data_->_res_, &_data_->_inner_error_);
#line 502 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp1_ = _data_->_tmp2_;
#line 502 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 3198 "machine.c"
			goto __catch55_g_error;
		}
#line 502 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp3_ = _data_->_tmp1_;
#line 502 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp1_ = NULL;
#line 502 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_object_unref0 (_data_->large_screenshot);
#line 502 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->large_screenshot = _data_->_tmp3_;
#line 506 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		if (_data_->first_check) {
#line 507 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->_state_ = 2;
#line 507 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			boxes_machine_take_screenshot (_data_->self, boxes_machine_update_screenshot_ready, _data_);
#line 507 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			return FALSE;
#line 3217 "machine.c"
			_state_2:
#line 507 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->_tmp5_ = boxes_machine_take_screenshot_finish (_data_->self, _data_->_res_, &_data_->_inner_error_);
#line 507 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->_tmp4_ = _data_->_tmp5_;
#line 507 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 507 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_g_object_unref0 (_data_->_tmp1_);
#line 3227 "machine.c"
				goto __catch55_g_error;
			}
#line 507 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->_tmp6_ = _data_->_tmp4_;
#line 507 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->_tmp4_ = NULL;
#line 507 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_g_object_unref0 (_data_->large_screenshot);
#line 507 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->large_screenshot = _data_->_tmp6_;
#line 506 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_g_object_unref0 (_data_->_tmp4_);
#line 3240 "machine.c"
		}
#line 501 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_object_unref0 (_data_->_tmp1_);
#line 3244 "machine.c"
	}
	goto __finally55;
	__catch55_g_error:
	{
#line 501 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_error_ = _data_->_inner_error_;
#line 501 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_inner_error_ = NULL;
#line 501 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_error_free0 (_data_->_error_);
#line 3255 "machine.c"
	}
	__finally55:
#line 501 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 501 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_object_unref0 (_data_->large_screenshot);
#line 501 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _data_->_inner_error_->message, g_quark_to_string (_data_->_inner_error_->domain), _data_->_inner_error_->code);
#line 501 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_clear_error (&_data_->_inner_error_);
#line 501 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_object_unref (_data_->_async_result);
#line 501 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return FALSE;
#line 3270 "machine.c"
	}
#line 511 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_tmp7_ = _data_->large_screenshot;
#line 511 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_data_->_tmp7_ != NULL) {
#line 512 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		if (_data_->force_save) {
#line 512 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->_tmp8_ = TRUE;
#line 3280 "machine.c"
		} else {
#line 512 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->_tmp9_ = _data_->self->priv->screenshot_counter;
#line 512 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->self->priv->screenshot_counter = _data_->_tmp9_ + 1;
#line 512 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->_tmp8_ = (_data_->_tmp9_ % 12) == 0;
#line 3288 "machine.c"
		}
#line 512 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp10_ = _data_->large_screenshot;
#line 512 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_machine_set_screenshot (_data_->self, _data_->_tmp10_, _data_->_tmp8_);
#line 3294 "machine.c"
	}
#line 514 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->self->priv->updating_screenshot = FALSE;
#line 494 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_object_unref0 (_data_->large_screenshot);
#line 494 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 494 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_data_->_state_ != 0) {
#line 494 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 494 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 3308 "machine.c"
		}
	}
#line 494 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_object_unref (_data_->_async_result);
#line 494 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return FALSE;
#line 3315 "machine.c"
}


static GdkPixbuf*
boxes_machine_draw_vm (BoxesMachine* self,
                       GdkPixbuf* pixbuf,
                       gint width,
                       gint height)
{
	GdkPixbuf* result = NULL;
	cairo_surface_t* surface = NULL;
	cairo_surface_t* _tmp0_;
	cairo_t* context = NULL;
	cairo_surface_t* _tmp1_;
	cairo_t* _tmp2_;
	gint pw = 0;
	gint ph = 0;
	gint x = 0;
	gint _tmp3_;
	gint y = 0;
	gint _tmp4_;
	cairo_t* _tmp5_;
	gint _tmp6_;
	gint _tmp7_;
	gint _tmp8_;
	gint _tmp9_;
	cairo_t* _tmp10_;
	cairo_t* _tmp11_;
	gint _tmp12_;
	gint _tmp13_;
	cairo_t* _tmp14_;
	cairo_t* _tmp15_;
	gboolean _tmp16_;
	gboolean _tmp17_;
	cairo_surface_t* _tmp29_;
	GdkPixbuf* _tmp30_;
#line 517 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 517 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_val_if_fail (pixbuf != NULL, NULL);
#line 518 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = cairo_image_surface_create (CAIRO_FORMAT_ARGB32, width, height);
#line 518 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	surface = _tmp0_;
#line 519 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp1_ = surface;
#line 519 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp2_ = cairo_create (_tmp1_);
#line 519 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	context = _tmp2_;
#line 521 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	pw = gdk_pixbuf_get_width (pixbuf);
#line 522 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	ph = gdk_pixbuf_get_height (pixbuf);
#line 523 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp3_ = pw;
#line 523 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	x = (width - _tmp3_) / 2;
#line 524 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp4_ = ph;
#line 524 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	y = (height - _tmp4_) / 2;
#line 526 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp5_ = context;
#line 526 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp6_ = x;
#line 526 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp7_ = y;
#line 526 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp8_ = pw;
#line 526 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp9_ = ph;
#line 526 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	cairo_rectangle (_tmp5_, (gdouble) _tmp6_, (gdouble) _tmp7_, (gdouble) _tmp8_, (gdouble) _tmp9_);
#line 527 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp10_ = context;
#line 527 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	cairo_clip (_tmp10_);
#line 529 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp11_ = context;
#line 529 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp12_ = x;
#line 529 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp13_ = y;
#line 529 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	gdk_cairo_set_source_pixbuf (_tmp11_, pixbuf, (gdouble) _tmp12_, (gdouble) _tmp13_);
#line 530 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp14_ = context;
#line 530 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	cairo_set_operator (_tmp14_, CAIRO_OPERATOR_SOURCE);
#line 531 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp15_ = context;
#line 531 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	cairo_paint (_tmp15_);
#line 533 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp16_ = boxes_machine_get_is_running (self);
#line 533 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp17_ = _tmp16_;
#line 533 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (!_tmp17_) {
#line 3416 "machine.c"
		cairo_t* _tmp18_;
		cairo_t* _tmp19_;
		cairo_t* _tmp20_;
		cairo_t* _tmp21_;
		cairo_pattern_t* grid = NULL;
		cairo_surface_t* _tmp22_;
		cairo_pattern_t* _tmp23_;
		cairo_pattern_t* _tmp24_;
		cairo_t* _tmp25_;
		cairo_t* _tmp26_;
		cairo_t* _tmp27_;
		cairo_pattern_t* _tmp28_;
#line 534 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp18_ = context;
#line 534 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		cairo_set_source_rgba (_tmp18_, (gdouble) 1, (gdouble) 1, (gdouble) 1, (gdouble) 1);
#line 535 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp19_ = context;
#line 535 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		cairo_set_operator (_tmp19_, CAIRO_OPERATOR_HSL_SATURATION);
#line 536 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp20_ = context;
#line 536 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		cairo_paint (_tmp20_);
#line 538 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp21_ = context;
#line 538 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		cairo_scale (_tmp21_, 2.0, 2.0);
#line 539 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp22_ = boxes_machine_grid_surface;
#line 539 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp23_ = cairo_pattern_create_for_surface (_tmp22_);
#line 539 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		grid = _tmp23_;
#line 540 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp24_ = grid;
#line 540 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		cairo_pattern_set_extend (_tmp24_, CAIRO_EXTEND_REPEAT);
#line 541 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp25_ = context;
#line 541 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		cairo_set_source_rgba (_tmp25_, 0.2, 0.2, 0.2, (gdouble) 1);
#line 542 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp26_ = context;
#line 542 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		cairo_set_operator (_tmp26_, CAIRO_OPERATOR_ADD);
#line 543 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp27_ = context;
#line 543 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp28_ = grid;
#line 543 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		cairo_mask (_tmp27_, _tmp28_);
#line 533 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_cairo_pattern_destroy0 (grid);
#line 3471 "machine.c"
	}
#line 546 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp29_ = surface;
#line 546 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp30_ = gdk_pixbuf_get_from_surface (_tmp29_, 0, 0, width, height);
#line 546 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	result = _tmp30_;
#line 546 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_cairo_destroy0 (context);
#line 546 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_cairo_surface_destroy0 (surface);
#line 546 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return result;
#line 3485 "machine.c"
}


static GdkPixbuf*
boxes_machine_draw_stopped_vm (gint width,
                               gint height)
{
	GdkPixbuf* result = NULL;
	cairo_surface_t* surface = NULL;
	cairo_surface_t* _tmp0_;
	GdkPixbuf* _tmp1_;
#line 551 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = cairo_image_surface_create (CAIRO_FORMAT_RGB24, width, height);
#line 551 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	surface = _tmp0_;
#line 552 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp1_ = gdk_pixbuf_get_from_surface (surface, 0, 0, width, height);
#line 552 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	result = _tmp1_;
#line 552 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_cairo_surface_destroy0 (surface);
#line 552 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return result;
#line 3509 "machine.c"
}


static void
boxes_machine_real_delete (BoxesMachine* self,
                           gboolean by_user)
{
	gulong _tmp0_;
	BoxesBoxConfig* _tmp5_;
	GError * _inner_error_ = NULL;
#line 556 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_set_deleted (self, TRUE);
#line 558 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_set_screenshot_enable (self, FALSE);
#line 559 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = self->priv->ui_state_id;
#line 559 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp0_ != ((gulong) 0)) {
#line 3528 "machine.c"
		BoxesApp* _tmp1_;
		BoxesAppWindow* _tmp2_;
		BoxesAppWindow* _tmp3_;
		gulong _tmp4_;
#line 560 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp1_ = boxes_app_app;
#line 560 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp2_ = boxes_app_get_main_window (_tmp1_);
#line 560 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp3_ = _tmp2_;
#line 560 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp4_ = self->priv->ui_state_id;
#line 560 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_signal_handler_disconnect ((GObject*) _tmp3_, _tmp4_);
#line 561 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		self->priv->ui_state_id = (gulong) 0;
#line 3545 "machine.c"
	}
#line 564 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp5_ = self->config;
#line 564 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_box_config_delete (_tmp5_);
#line 3551 "machine.c"
	{
		gchar* _tmp6_ = NULL;
		gchar* _tmp7_;
#line 566 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp7_ = boxes_machine_get_screenshot_filename (self, &_inner_error_);
#line 566 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp6_ = _tmp7_;
#line 566 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 566 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			if (_inner_error_->domain == BOXES_ERROR) {
#line 3563 "machine.c"
				goto __catch56_boxes_error;
			}
#line 566 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 566 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			g_clear_error (&_inner_error_);
#line 566 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			return;
#line 3572 "machine.c"
		}
#line 566 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_unlink (_tmp6_);
#line 565 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_free0 (_tmp6_);
#line 3578 "machine.c"
	}
	goto __finally56;
	__catch56_boxes_error:
	{
		GError* e = NULL;
		GError* _tmp8_;
		const gchar* _tmp9_;
#line 565 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		e = _inner_error_;
#line 565 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_inner_error_ = NULL;
#line 568 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp8_ = e;
#line 568 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp9_ = _tmp8_->message;
#line 568 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_debug ("machine.vala:568: Could not delete screenshot: %s", _tmp9_);
#line 565 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_error_free0 (e);
#line 3598 "machine.c"
	}
	__finally56:
#line 565 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 565 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 565 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_clear_error (&_inner_error_);
#line 565 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return;
#line 3609 "machine.c"
	}
}


void
boxes_machine_delete (BoxesMachine* self,
                      gboolean by_user)
{
#line 555 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_if_fail (self != NULL);
#line 555 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	BOXES_MACHINE_GET_CLASS (self)->delete (self, by_user);
#line 3622 "machine.c"
}


static void
boxes_machine_ui_state_changed (BoxesMachine* self)
{
	GBinding* _tmp0_;
	BoxesUIState _tmp8_;
	BoxesUIState _tmp9_;
#line 574 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_if_fail (self != NULL);
#line 575 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = self->priv->name_status_bind;
#line 575 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp0_ != NULL) {
#line 3638 "machine.c"
		BoxesTopbar* topbar = NULL;
		GBinding* _tmp1_;
		GObject* _tmp2_;
		GObject* _tmp3_;
		BoxesTopbar* _tmp4_;
		BoxesTopbar* _tmp5_;
		GBinding* _tmp6_;
		GBinding* _tmp7_;
#line 576 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp1_ = self->priv->name_status_bind;
#line 576 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp2_ = g_binding_get_target (_tmp1_);
#line 576 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp3_ = _tmp2_;
#line 576 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp4_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp3_, BOXES_TYPE_TOPBAR) ? ((BoxesTopbar*) _tmp3_) : NULL);
#line 576 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		topbar = _tmp4_;
#line 577 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp5_ = topbar;
#line 577 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_topbar_set_status (_tmp5_, NULL);
#line 578 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp6_ = self->priv->name_status_bind;
#line 578 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp7_ = _g_object_ref0 (_tmp6_);
#line 578 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_binding_unbind (_tmp7_);
#line 579 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_object_unref0 (self->priv->name_status_bind);
#line 579 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		self->priv->name_status_bind = NULL;
#line 575 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_object_unref0 (topbar);
#line 3673 "machine.c"
	}
#line 582 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp8_ = boxes_ui_get_ui_state ((BoxesUI*) self);
#line 582 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp9_ = _tmp8_;
#line 582 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	switch (_tmp9_) {
#line 582 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_UI_STATE_CREDS:
#line 3683 "machine.c"
		{
			BoxesAppWindow* _tmp10_;
			BoxesAppWindow* _tmp11_;
			GtkStack* _tmp12_;
#line 584 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp10_ = boxes_machine_get_window (self);
#line 584 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp11_ = _tmp10_;
#line 584 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp12_ = _tmp11_->below_bin;
#line 584 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			gtk_stack_set_visible_child_name (_tmp12_, "connecting-page");
#line 585 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			boxes_machine_try_connect_display (self, BOXES_MACHINE_CONNECT_FLAGS_NONE, NULL, NULL);
#line 587 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			break;
#line 3700 "machine.c"
		}
#line 582 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_UI_STATE_DISPLAY:
#line 3704 "machine.c"
		{
			BoxesUIState _tmp13_;
			BoxesUIState _tmp14_;
			BoxesAppWindow* _tmp18_;
			BoxesAppWindow* _tmp19_;
			BoxesCollectionItem* _tmp20_;
			BoxesCollectionItem* _tmp21_;
#line 589 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp13_ = boxes_ui_get_previous_ui_state ((BoxesUI*) self);
#line 589 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp14_ = _tmp13_;
#line 589 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			if (_tmp14_ == BOXES_UI_STATE_PROPERTIES) {
#line 3718 "machine.c"
				BoxesAppWindow* _tmp15_;
				BoxesAppWindow* _tmp16_;
				GtkStack* _tmp17_;
#line 590 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_tmp15_ = boxes_machine_get_window (self);
#line 590 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_tmp16_ = _tmp15_;
#line 590 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_tmp17_ = _tmp16_->below_bin;
#line 590 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				gtk_stack_set_visible_child_name (_tmp17_, "display-page");
#line 3730 "machine.c"
			}
#line 591 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp18_ = boxes_machine_get_window (self);
#line 591 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp19_ = _tmp18_;
#line 591 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp20_ = boxes_app_window_get_current_item (_tmp19_);
#line 591 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp21_ = _tmp20_;
#line 591 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			if (_tmp21_ == G_TYPE_CHECK_INSTANCE_CAST (self, BOXES_TYPE_COLLECTION_ITEM, BoxesCollectionItem)) {
#line 3742 "machine.c"
				BoxesAppWindow* _tmp22_;
				BoxesAppWindow* _tmp23_;
				BoxesTopbar* _tmp24_;
				GBinding* _tmp25_;
				GBinding* _tmp26_;
#line 592 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_tmp22_ = boxes_machine_get_window (self);
#line 592 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_tmp23_ = _tmp22_;
#line 592 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_tmp24_ = _tmp23_->topbar;
#line 592 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_tmp25_ = g_object_bind_property_with_closures ((GObject*) self, "name", (GObject*) _tmp24_, "status", G_BINDING_SYNC_CREATE, (GClosure*) ((NULL == NULL) ? NULL : g_cclosure_new ((GCallback) NULL, NULL, (GClosureNotify) NULL)), (GClosure*) ((NULL == NULL) ? NULL : g_cclosure_new ((GCallback) NULL, NULL, (GClosureNotify) NULL)));
#line 592 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_tmp26_ = _g_object_ref0 (_tmp25_);
#line 592 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_g_object_unref0 (self->priv->name_status_bind);
#line 592 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				self->priv->name_status_bind = _tmp26_;
#line 3762 "machine.c"
			}
#line 594 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			break;
#line 3766 "machine.c"
		}
#line 582 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_UI_STATE_COLLECTION:
#line 3770 "machine.c"
		{
			BoxesAuthNotification* _tmp27_;
			GCancellable* _tmp29_;
			GCancellable* _tmp30_;
#line 597 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp27_ = self->priv->auth_notification;
#line 597 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			if (_tmp27_ != NULL) {
#line 3779 "machine.c"
				BoxesAuthNotification* _tmp28_;
#line 598 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_tmp28_ = self->priv->auth_notification;
#line 598 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				boxes_auth_notification_dismiss (_tmp28_);
#line 3785 "machine.c"
			}
#line 599 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			boxes_machine_disconnect_display (self);
#line 601 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp29_ = self->priv->auth_cancellable;
#line 601 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			g_cancellable_cancel (_tmp29_);
#line 602 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp30_ = g_cancellable_new ();
#line 602 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_g_object_unref0 (self->priv->auth_cancellable);
#line 602 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			self->priv->auth_cancellable = _tmp30_;
#line 604 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			break;
#line 3801 "machine.c"
		}
		default:
#line 582 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 3806 "machine.c"
	}
}


static void
boxes_machine_try_connect_display_data_free (gpointer _data)
{
	BoxesMachineTryConnectDisplayData* _data_;
	_data_ = _data;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_object_unref0 (_data_->self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_slice_free (BoxesMachineTryConnectDisplayData, _data_);
#line 3820 "machine.c"
}


static void
boxes_machine_try_connect_display (BoxesMachine* self,
                                   BoxesMachineConnectFlags flags,
                                   GAsyncReadyCallback _callback_,
                                   gpointer _user_data_)
{
	BoxesMachineTryConnectDisplayData* _data_;
	BoxesMachine* _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_ = g_slice_new0 (BoxesMachineTryConnectDisplayData);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_task_set_task_data (_data_->_async_result, _data_, boxes_machine_try_connect_display_data_free);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->self = _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->flags = flags;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_try_connect_display_co (_data_);
#line 3846 "machine.c"
}


static void
boxes_machine_try_connect_display_finish (BoxesMachine* self,
                                          GAsyncResult* _res_)
{
	BoxesMachineTryConnectDisplayData* _data_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_ = g_task_propagate_pointer (G_TASK (_res_), NULL);
#line 3857 "machine.c"
}


static Block59Data*
block59_data_ref (Block59Data* _data59_)
{
#line 608 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_atomic_int_inc (&_data59_->_ref_count_);
#line 608 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return _data59_;
#line 3868 "machine.c"
}


static void
block59_data_unref (void * _userdata_)
{
	Block59Data* _data59_;
	_data59_ = (Block59Data*) _userdata_;
#line 608 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (g_atomic_int_dec_and_test (&_data59_->_ref_count_)) {
#line 3879 "machine.c"
		BoxesMachine* self;
#line 608 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		self = _data59_->self;
#line 608 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_object_unref0 (self);
#line 608 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_slice_free (Block59Data, _data59_);
#line 3887 "machine.c"
	}
}


static void
boxes_machine_try_connect_display_ready (GObject* source_object,
                                         GAsyncResult* _res_,
                                         gpointer _user_data_)
{
	BoxesMachineTryConnectDisplayData* _data_;
#line 610 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_ = _user_data_;
#line 610 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_source_object_ = source_object;
#line 610 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_res_ = _res_;
#line 610 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_try_connect_display_co (_data_);
#line 3906 "machine.c"
}


static void
___lambda251_ (Block59Data* _data59_)
{
	BoxesMachine* self;
#line 613 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	self = _data59_->self;
#line 614 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_try_connect_display (self, _data59_->flags | BOXES_MACHINE_CONNECT_FLAGS_IGNORE_SAVED_STATE, NULL, NULL);
#line 3918 "machine.c"
}


static void
____lambda251__boxes_notification_ok_func (gpointer self)
{
#line 613 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	___lambda251_ (self);
#line 3927 "machine.c"
}


static void
___lambda252_ (BoxesMachine* self)
{
	BoxesAppWindow* _tmp0_;
	BoxesAppWindow* _tmp1_;
#line 617 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = boxes_machine_get_window (self);
#line 617 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp1_ = _tmp0_;
#line 617 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_ui_set_state ((BoxesUI*) _tmp1_, BOXES_UI_STATE_COLLECTION);
#line 3942 "machine.c"
}


static void
____lambda252__boxes_notification_dismissed (BoxesNotification* _sender,
                                             gpointer self)
{
#line 616 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	___lambda252_ ((BoxesMachine*) self);
#line 3952 "machine.c"
}


static void
____lambda253_ (BoxesMachine* self)
{
	BoxesAppWindow* _tmp0_;
	BoxesAppWindow* _tmp1_;
	BoxesAppWindow* _tmp2_;
	BoxesAppWindow* _tmp3_;
	gchar* logs = NULL;
	BoxesLibvirtMachineProperties* _tmp4_;
	gchar* _tmp5_;
	BoxesAppWindow* _tmp6_;
	BoxesAppWindow* _tmp7_;
	BoxesPropertiesWindow* _tmp8_;
#line 626 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = boxes_machine_get_window (self);
#line 626 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp1_ = _tmp0_;
#line 626 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_app_window_set_current_item (_tmp1_, (BoxesCollectionItem*) self);
#line 627 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp2_ = boxes_machine_get_window (self);
#line 627 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp3_ = _tmp2_;
#line 627 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_app_window_show_properties (_tmp3_);
#line 629 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp4_ = (G_TYPE_CHECK_INSTANCE_TYPE (self, BOXES_TYPE_LIBVIRT_MACHINE) ? ((BoxesLibvirtMachine*) self) : NULL)->properties;
#line 629 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp5_ = boxes_libvirt_machine_properties_collect_logs (_tmp4_);
#line 629 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	logs = _tmp5_;
#line 630 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp6_ = boxes_machine_get_window (self);
#line 630 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp7_ = _tmp6_;
#line 630 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp8_ = _tmp7_->props_window;
#line 630 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_properties_window_show_troubleshoot_log (_tmp8_, logs);
#line 625 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_free0 (logs);
#line 3997 "machine.c"
}


static void
_____lambda253__boxes_notification_ok_func (gpointer self)
{
#line 625 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	____lambda253_ ((BoxesMachine*) self);
#line 4006 "machine.c"
}


static gboolean
boxes_machine_try_connect_display_co (BoxesMachineTryConnectDisplayData* _data_)
{
#line 608 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	switch (_data_->_state_) {
#line 608 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case 0:
#line 4017 "machine.c"
		goto _state_0;
#line 608 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case 1:
#line 4021 "machine.c"
		goto _state_1;
		default:
#line 608 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_assert_not_reached ();
#line 4026 "machine.c"
	}
	_state_0:
#line 608 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_data59_ = g_slice_new0 (Block59Data);
#line 608 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_data59_->_ref_count_ = 1;
#line 608 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_data59_->self = g_object_ref (_data_->self);
#line 608 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_data59_->flags = _data_->flags;
#line 608 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_data59_->_async_data_ = _data_;
#line 4039 "machine.c"
	{
#line 610 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_state_ = 1;
#line 610 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_machine_connect_display (_data_->self, _data_->_data59_->flags, boxes_machine_try_connect_display_ready, _data_);
#line 610 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return FALSE;
#line 4047 "machine.c"
		_state_1:
#line 610 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_machine_connect_display_finish (_data_->self, _data_->_res_, &_data_->_inner_error_);
#line 610 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 610 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			if (g_error_matches (_data_->_inner_error_, BOXES_ERROR, BOXES_ERROR_RESTORE_FAILED)) {
#line 4055 "machine.c"
				goto __catch57_boxes_error_restore_failed;
			}
#line 610 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			if (g_error_matches (_data_->_inner_error_, BOXES_ERROR, BOXES_ERROR_START_FAILED)) {
#line 4060 "machine.c"
				goto __catch57_boxes_error_start_failed;
			}
			goto __catch57_g_error;
		}
	}
	goto __finally57;
	__catch57_boxes_error_restore_failed:
	{
#line 609 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->e = _data_->_inner_error_;
#line 609 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_inner_error_ = NULL;
#line 612 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp0_ = boxes_collection_item_get_name ((BoxesCollectionItem*) _data_->self);
#line 612 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp1_ = _data_->_tmp0_;
#line 612 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp2_ = g_strdup_printf (_ ("“%s” could not be restored from disk\nTry without saved state?"), _data_->_tmp1_);
#line 612 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->message = _data_->_tmp2_;
#line 613 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp3_ = boxes_machine_get_window (_data_->self);
#line 613 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp4_ = _data_->_tmp3_;
#line 613 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp5_ = boxes_app_window_get_notificationbar (_data_->_tmp4_);
#line 613 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp6_ = _data_->_tmp5_;
#line 613 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp7_ = _data_->message;
#line 613 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp8_ = boxes_notificationbar_display_for_action (_data_->_tmp6_, _data_->_tmp7_, _ ("Restart"), ____lambda251__boxes_notification_ok_func, block59_data_ref (_data_->_data59_), block59_data_unref, NULL, NULL, NULL, BOXES_NOTIFICATIONBAR_DEFAULT_TIMEOUT);
#line 613 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->notification = _data_->_tmp8_;
#line 616 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp9_ = _data_->notification;
#line 616 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_signal_connect_object (_data_->_tmp9_, "dismissed", (GCallback) ____lambda252__boxes_notification_dismissed, _data_->self, 0);
#line 609 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_object_unref0 (_data_->notification);
#line 609 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_free0 (_data_->message);
#line 609 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_error_free0 (_data_->e);
#line 4105 "machine.c"
	}
	goto __finally57;
	__catch57_boxes_error_start_failed:
	{
#line 609 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_vala1_e = _data_->_inner_error_;
#line 609 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_inner_error_ = NULL;
#line 620 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp10_ = boxes_collection_item_get_name ((BoxesCollectionItem*) _data_->self);
#line 620 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp11_ = _data_->_tmp10_;
#line 620 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp12_ = _data_->_vala1_e;
#line 620 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp13_ = _data_->_tmp12_->message;
#line 620 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_warning ("machine.vala:620: Failed to start %s: %s", _data_->_tmp11_, _data_->_tmp13_);
#line 621 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp14_ = boxes_machine_get_window (_data_->self);
#line 621 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp15_ = _data_->_tmp14_;
#line 621 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_ui_set_state ((BoxesUI*) _data_->_tmp15_, BOXES_UI_STATE_COLLECTION);
#line 623 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp16_ = boxes_collection_item_get_name ((BoxesCollectionItem*) _data_->self);
#line 623 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp17_ = _data_->_tmp16_;
#line 623 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp18_ = g_strdup_printf (_ ("Failed to start “%s”"), _data_->_tmp17_);
#line 623 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->msg = _data_->_tmp18_;
#line 624 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		if (G_TYPE_CHECK_INSTANCE_TYPE (_data_->self, BOXES_TYPE_LIBVIRT_MACHINE)) {
#line 625 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->troubleshoot = _____lambda253__boxes_notification_ok_func;
#line 625 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->troubleshoot_target = g_object_ref (_data_->self);
#line 625 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->troubleshoot_target_destroy_notify = g_object_unref;
#line 633 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->_tmp19_ = boxes_machine_get_window (_data_->self);
#line 633 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->_tmp20_ = _data_->_tmp19_;
#line 633 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->_tmp21_ = boxes_app_window_get_notificationbar (_data_->_tmp20_);
#line 633 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->_tmp22_ = _data_->_tmp21_;
#line 633 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->_tmp23_ = _data_->msg;
#line 633 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->_tmp24_ = _data_->troubleshoot;
#line 633 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->_tmp24__target = _data_->troubleshoot_target;
#line 633 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->_tmp24__target_destroy_notify = _data_->troubleshoot_target_destroy_notify;
#line 633 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->troubleshoot = NULL;
#line 633 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->troubleshoot_target = NULL;
#line 633 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->troubleshoot_target_destroy_notify = NULL;
#line 633 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->_tmp25_ = boxes_notificationbar_display_for_action (_data_->_tmp22_, _data_->_tmp23_, _ ("Troubleshooting Log"), _data_->_tmp24_, _data_->_tmp24__target, _data_->_tmp24__target_destroy_notify, NULL, NULL, NULL, BOXES_NOTIFICATIONBAR_DEFAULT_TIMEOUT);
#line 633 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->_tmp26_ = _data_->_tmp25_;
#line 633 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_g_object_unref0 (_data_->_tmp26_);
#line 624 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			(_data_->troubleshoot_target_destroy_notify == NULL) ? NULL : (_data_->troubleshoot_target_destroy_notify (_data_->troubleshoot_target), NULL);
#line 624 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->troubleshoot = NULL;
#line 624 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->troubleshoot_target = NULL;
#line 624 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->troubleshoot_target_destroy_notify = NULL;
#line 4182 "machine.c"
		} else {
#line 635 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->_tmp27_ = boxes_machine_get_window (_data_->self);
#line 635 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->_tmp28_ = _data_->_tmp27_;
#line 635 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->_tmp29_ = boxes_app_window_get_notificationbar (_data_->_tmp28_);
#line 635 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->_tmp30_ = _data_->_tmp29_;
#line 635 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->_tmp31_ = _data_->msg;
#line 635 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->_tmp32_ = boxes_notificationbar_display_error (_data_->_tmp30_, _data_->_tmp31_, BOXES_NOTIFICATIONBAR_DEFAULT_TIMEOUT);
#line 635 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_data_->_tmp33_ = _data_->_tmp32_;
#line 635 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_g_object_unref0 (_data_->_tmp33_);
#line 4200 "machine.c"
		}
#line 609 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_free0 (_data_->msg);
#line 609 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_error_free0 (_data_->_vala1_e);
#line 4206 "machine.c"
	}
	goto __finally57;
	__catch57_g_error:
	{
#line 609 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_vala2_e = _data_->_inner_error_;
#line 609 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_inner_error_ = NULL;
#line 638 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp34_ = boxes_collection_item_get_name ((BoxesCollectionItem*) _data_->self);
#line 638 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp35_ = _data_->_tmp34_;
#line 638 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp36_ = _data_->_vala2_e;
#line 638 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp37_ = _data_->_tmp36_->message;
#line 638 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_warning ("machine.vala:638: Failed to connect to %s: %s", _data_->_tmp35_, _data_->_tmp37_);
#line 639 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp38_ = boxes_machine_get_window (_data_->self);
#line 639 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp39_ = _data_->_tmp38_;
#line 639 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_ui_set_state ((BoxesUI*) _data_->_tmp39_, BOXES_UI_STATE_COLLECTION);
#line 640 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp40_ = boxes_machine_get_window (_data_->self);
#line 640 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp41_ = _data_->_tmp40_;
#line 640 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp42_ = boxes_app_window_get_notificationbar (_data_->_tmp41_);
#line 640 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp43_ = _data_->_tmp42_;
#line 640 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp44_ = boxes_collection_item_get_name ((BoxesCollectionItem*) _data_->self);
#line 640 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp45_ = _data_->_tmp44_;
#line 640 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp46_ = g_strdup_printf (_ ("Connection to “%s” failed"), _data_->_tmp45_);
#line 640 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp47_ = _data_->_tmp46_;
#line 640 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp48_ = boxes_notificationbar_display_error (_data_->_tmp43_, _data_->_tmp47_, BOXES_NOTIFICATIONBAR_DEFAULT_TIMEOUT);
#line 640 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp49_ = _data_->_tmp48_;
#line 640 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_object_unref0 (_data_->_tmp49_);
#line 640 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_free0 (_data_->_tmp47_);
#line 609 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_error_free0 (_data_->_vala2_e);
#line 4257 "machine.c"
	}
	__finally57:
#line 609 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 609 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		block59_data_unref (_data_->_data59_);
#line 609 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_data59_ = NULL;
#line 609 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _data_->_inner_error_->message, g_quark_to_string (_data_->_inner_error_->domain), _data_->_inner_error_->code);
#line 609 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_clear_error (&_data_->_inner_error_);
#line 609 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_object_unref (_data_->_async_result);
#line 609 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return FALSE;
#line 4274 "machine.c"
	}
#line 608 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	block59_data_unref (_data_->_data59_);
#line 608 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_data59_ = NULL;
#line 608 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 608 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_data_->_state_ != 0) {
#line 608 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 608 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 4288 "machine.c"
		}
	}
#line 608 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_object_unref (_data_->_async_result);
#line 608 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return FALSE;
#line 4295 "machine.c"
}


static void
__lambda254_ (BoxesMachine* self,
              GObject* obj,
              GAsyncResult* res)
{
	GError * _inner_error_ = NULL;
#line 663 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_if_fail (res != NULL);
#line 4307 "machine.c"
	{
#line 665 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		secret_password_store_finish (res, &_inner_error_);
#line 665 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 4313 "machine.c"
			goto __catch58_g_error;
		}
	}
	goto __finally58;
	__catch58_g_error:
	{
		GError* _error_ = NULL;
		BoxesBoxConfig* _tmp0_;
		gchar* _tmp1_;
		gchar* _tmp2_;
		gchar* _tmp3_;
		GError* _tmp4_;
		const gchar* _tmp5_;
#line 664 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_error_ = _inner_error_;
#line 664 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_inner_error_ = NULL;
#line 667 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp0_ = self->config;
#line 667 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp1_ = boxes_box_config_get_uuid (_tmp0_);
#line 667 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp2_ = _tmp1_;
#line 667 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp3_ = _tmp2_;
#line 667 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp4_ = _error_;
#line 667 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp5_ = _tmp4_->message;
#line 667 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_warning ("machine.vala:667: Failed to store password for '%s' in the keyring: %s", _tmp3_, _tmp5_);
#line 667 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_free0 (_tmp3_);
#line 664 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_error_free0 (_error_);
#line 4349 "machine.c"
	}
	__finally58:
#line 664 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 664 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 664 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_clear_error (&_inner_error_);
#line 664 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return;
#line 4360 "machine.c"
	}
}


static void
___lambda254__gasync_ready_callback (GObject* source_object,
                                     GAsyncResult* res,
                                     gpointer self)
{
#line 658 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	__lambda254_ ((BoxesMachine*) self, source_object, res);
#line 658 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_object_unref (self);
#line 4374 "machine.c"
}


static void
boxes_machine_store_auth_credentials (BoxesMachine* self)
{
	gboolean _tmp0_ = FALSE;
	const gchar* _tmp1_;
	GVariantBuilder* builder = NULL;
	const GVariantType* _tmp3_;
	GVariantBuilder* _tmp4_;
	const gchar* _tmp5_;
	GVariantBuilder* _tmp10_;
	const gchar* _tmp11_;
	GVariant* _tmp12_;
	GVariant* _tmp13_;
	gchar* credentials_str = NULL;
	GVariantBuilder* _tmp14_;
	GVariant* _tmp15_;
	GVariant* _tmp16_;
	gchar* _tmp17_;
	gchar* _tmp18_;
	gchar* label = NULL;
	BoxesBoxConfig* _tmp19_;
	gchar* _tmp20_;
	gchar* _tmp21_;
	gchar* _tmp22_;
	gchar* _tmp23_;
	gchar* _tmp24_;
	SecretSchema* _tmp25_;
	const gchar* _tmp26_;
	const gchar* _tmp27_;
	BoxesBoxConfig* _tmp28_;
	gchar* _tmp29_;
	gchar* _tmp30_;
	gchar* _tmp31_;
#line 644 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_if_fail (self != NULL);
#line 645 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp1_ = self->priv->password;
#line 645 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (g_strcmp0 (_tmp1_, "") == 0) {
#line 645 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp0_ = TRUE;
#line 4419 "machine.c"
	} else {
		const gchar* _tmp2_;
#line 645 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp2_ = self->priv->password;
#line 645 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp0_ = _tmp2_ == NULL;
#line 4426 "machine.c"
	}
#line 645 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp0_) {
#line 646 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return;
#line 4432 "machine.c"
	}
#line 648 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp3_ = G_VARIANT_TYPE_VARDICT;
#line 648 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp4_ = g_variant_builder_new (_tmp3_);
#line 648 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	builder = _tmp4_;
#line 650 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp5_ = self->priv->username;
#line 650 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp5_ != NULL) {
#line 4444 "machine.c"
		GVariantBuilder* _tmp6_;
		const gchar* _tmp7_;
		GVariant* _tmp8_;
		GVariant* _tmp9_;
#line 651 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp6_ = builder;
#line 651 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp7_ = self->priv->username;
#line 651 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp8_ = g_variant_new ("s", _tmp7_, NULL);
#line 651 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_variant_ref_sink (_tmp8_);
#line 651 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp9_ = _tmp8_;
#line 651 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_variant_builder_add (_tmp6_, "{sv}", "username", _tmp9_, NULL);
#line 651 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_variant_unref0 (_tmp9_);
#line 4463 "machine.c"
	}
#line 653 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp10_ = builder;
#line 653 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp11_ = self->priv->password;
#line 653 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp12_ = g_variant_new ("s", _tmp11_, NULL);
#line 653 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_variant_ref_sink (_tmp12_);
#line 653 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp13_ = _tmp12_;
#line 653 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_variant_builder_add (_tmp10_, "{sv}", "password", _tmp13_, NULL);
#line 653 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_variant_unref0 (_tmp13_);
#line 655 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp14_ = builder;
#line 655 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp15_ = g_variant_builder_end (_tmp14_);
#line 655 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_variant_ref_sink (_tmp15_);
#line 655 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp16_ = _tmp15_;
#line 655 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp17_ = g_variant_print (_tmp16_, TRUE);
#line 655 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp18_ = _tmp17_;
#line 655 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_variant_unref0 (_tmp16_);
#line 655 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	credentials_str = _tmp18_;
#line 657 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp19_ = self->config;
#line 657 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp20_ = boxes_box_config_get_uuid (_tmp19_);
#line 657 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp21_ = _tmp20_;
#line 657 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp22_ = _tmp21_;
#line 657 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp23_ = g_strdup_printf ("GNOME Boxes credentials for '%s'", _tmp22_);
#line 657 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp24_ = _tmp23_;
#line 657 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_free0 (_tmp22_);
#line 657 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	label = _tmp24_;
#line 658 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp25_ = self->priv->secret_auth_schema;
#line 658 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp26_ = label;
#line 658 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp27_ = credentials_str;
#line 658 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp28_ = self->config;
#line 658 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp29_ = boxes_box_config_get_uuid (_tmp28_);
#line 658 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp30_ = _tmp29_;
#line 658 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp31_ = _tmp30_;
#line 658 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	secret_password_store (_tmp25_, SECRET_COLLECTION_DEFAULT, _tmp26_, _tmp27_, NULL, ___lambda254__gasync_ready_callback, g_object_ref (self), "gnome-boxes-machine-uuid", _tmp31_, NULL);
#line 658 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_free0 (_tmp31_);
#line 644 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_free0 (label);
#line 644 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_free0 (credentials_str);
#line 644 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_variant_builder_unref0 (builder);
#line 4535 "machine.c"
}


static Block60Data*
block60_data_ref (Block60Data* _data60_)
{
#line 674 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_atomic_int_inc (&_data60_->_ref_count_);
#line 674 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return _data60_;
#line 4546 "machine.c"
}


static void
block60_data_unref (void * _userdata_)
{
	Block60Data* _data60_;
	_data60_ = (Block60Data*) _userdata_;
#line 674 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (g_atomic_int_dec_and_test (&_data60_->_ref_count_)) {
#line 4557 "machine.c"
		BoxesMachine* self;
#line 674 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		self = _data60_->self;
#line 674 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		(_data60_->dismiss_func_target_destroy_notify == NULL) ? NULL : (_data60_->dismiss_func_target_destroy_notify (_data60_->dismiss_func_target), NULL);
#line 674 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data60_->dismiss_func = NULL;
#line 674 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data60_->dismiss_func_target = NULL;
#line 674 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data60_->dismiss_func_target_destroy_notify = NULL;
#line 674 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		(_data60_->auth_func_target_destroy_notify == NULL) ? NULL : (_data60_->auth_func_target_destroy_notify (_data60_->auth_func_target), NULL);
#line 674 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data60_->auth_func = NULL;
#line 674 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data60_->auth_func_target = NULL;
#line 674 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data60_->auth_func_target_destroy_notify = NULL;
#line 674 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_object_unref0 (self);
#line 674 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_slice_free (Block60Data, _data60_);
#line 4581 "machine.c"
	}
}


static void
__lambda250_ (BoxesMachine* self,
              const gchar* username,
              const gchar* password)
{
#line 682 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_if_fail (username != NULL);
#line 682 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_if_fail (password != NULL);
#line 683 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (g_strcmp0 (username, "") != 0) {
#line 4597 "machine.c"
		gchar* _tmp0_;
#line 684 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp0_ = g_strdup (username);
#line 684 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_free0 (self->priv->username);
#line 684 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		self->priv->username = _tmp0_;
#line 4605 "machine.c"
	}
#line 685 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (g_strcmp0 (password, "") != 0) {
#line 4609 "machine.c"
		gchar* _tmp1_;
#line 686 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp1_ = g_strdup (password);
#line 686 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_free0 (self->priv->password);
#line 686 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		self->priv->password = _tmp1_;
#line 4617 "machine.c"
	}
#line 688 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_try_connect_display (self, BOXES_MACHINE_CONNECT_FLAGS_NONE, NULL, NULL);
#line 691 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_store_auth_credentials (self);
#line 4623 "machine.c"
}


static void
___lambda250__boxes_auth_notification_auth_func (const gchar* username,
                                                 const gchar* password,
                                                 gpointer self)
{
#line 682 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	__lambda250_ ((BoxesMachine*) self, username, password);
#line 4634 "machine.c"
}


static void
__lambda255_ (BoxesMachine* self)
{
	BoxesAppWindow* _tmp0_;
	BoxesAppWindow* _tmp1_;
#line 695 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_object_unref0 (self->priv->auth_notification);
#line 695 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	self->priv->auth_notification = NULL;
#line 696 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = boxes_machine_get_window (self);
#line 696 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp1_ = _tmp0_;
#line 696 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_ui_set_state ((BoxesUI*) _tmp1_, BOXES_UI_STATE_COLLECTION);
#line 4653 "machine.c"
}


static void
___lambda255__boxes_notification_dismiss_func (gpointer self)
{
#line 694 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	__lambda255_ ((BoxesMachine*) self);
#line 4662 "machine.c"
}


static gpointer
_g_error_copy0 (gpointer self)
{
#line 704 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return self ? g_error_copy (self) : NULL;
#line 4671 "machine.c"
}


static void
__lambda256_ (Block60Data* _data60_,
              GObject* obj,
              GAsyncResult* res)
{
	BoxesMachine* self;
	GError * _inner_error_ = NULL;
#line 699 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	self = _data60_->self;
#line 699 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_if_fail (res != NULL);
#line 4686 "machine.c"
	{
		GError* parsing_error = NULL;
		GError* _tmp0_;
		gchar* credentials_str = NULL;
		gchar* _tmp1_;
		gboolean _tmp2_ = FALSE;
		const gchar* _tmp3_;
#line 701 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp0_ = g_error_new_literal (BOXES_ERROR, BOXES_ERROR_INVALID, "couldn't unpack a string for the machine credentials");
#line 701 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		parsing_error = _tmp0_;
#line 702 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp1_ = secret_password_lookup_finish (res, &_inner_error_);
#line 702 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		credentials_str = _tmp1_;
#line 702 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 702 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_g_error_free0 (parsing_error);
#line 4706 "machine.c"
			goto __catch59_g_error;
		}
#line 703 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp3_ = credentials_str;
#line 703 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		if (_tmp3_ == NULL) {
#line 703 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp2_ = TRUE;
#line 4715 "machine.c"
		} else {
			const gchar* _tmp4_;
#line 703 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp4_ = credentials_str;
#line 703 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp2_ = g_strcmp0 (_tmp4_, "") == 0;
#line 4722 "machine.c"
		}
#line 703 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		if (_tmp2_) {
#line 4726 "machine.c"
			GError* _tmp5_;
			GError* _tmp6_;
#line 704 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp5_ = parsing_error;
#line 704 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp6_ = _g_error_copy0 (_tmp5_);
#line 704 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_inner_error_ = _tmp6_;
#line 704 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_g_free0 (credentials_str);
#line 704 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_g_error_free0 (parsing_error);
#line 4739 "machine.c"
			goto __catch59_g_error;
		}
		{
			GVariant* credentials_variant = NULL;
			const gchar* _tmp7_;
			GVariant* _tmp8_;
			gchar* username_str = NULL;
			GVariant* _tmp9_;
			gboolean _tmp10_ = FALSE;
			const gchar* _tmp11_;
			gchar* password_str = NULL;
			GVariant* _tmp15_;
			gboolean _tmp16_ = FALSE;
			const gchar* _tmp17_;
#line 707 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp7_ = credentials_str;
#line 707 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp8_ = g_variant_parse (NULL, _tmp7_, NULL, NULL, &_inner_error_);
#line 707 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			credentials_variant = _tmp8_;
#line 707 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 4762 "machine.c"
				goto __catch60_g_error;
			}
#line 710 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp9_ = credentials_variant;
#line 710 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			g_variant_lookup (_tmp9_, "username", "s", &username_str, NULL);
#line 711 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp11_ = username_str;
#line 711 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			if (_tmp11_ != NULL) {
#line 4773 "machine.c"
				const gchar* _tmp12_;
#line 711 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_tmp12_ = username_str;
#line 711 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_tmp10_ = g_strcmp0 (_tmp12_, "") != 0;
#line 4779 "machine.c"
			} else {
#line 711 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_tmp10_ = FALSE;
#line 4783 "machine.c"
			}
#line 711 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			if (_tmp10_) {
#line 4787 "machine.c"
				const gchar* _tmp13_;
				gchar* _tmp14_;
#line 712 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_tmp13_ = username_str;
#line 712 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_tmp14_ = g_strdup (_tmp13_);
#line 712 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_g_free0 (self->priv->username);
#line 712 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				self->priv->username = _tmp14_;
#line 4798 "machine.c"
			}
#line 715 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp15_ = credentials_variant;
#line 715 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			g_variant_lookup (_tmp15_, "password", "s", &password_str, NULL);
#line 716 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp17_ = password_str;
#line 716 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			if (_tmp17_ != NULL) {
#line 4808 "machine.c"
				const gchar* _tmp18_;
#line 716 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_tmp18_ = password_str;
#line 716 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_tmp16_ = g_strcmp0 (_tmp18_, "") != 0;
#line 4814 "machine.c"
			} else {
#line 716 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_tmp16_ = FALSE;
#line 4818 "machine.c"
			}
#line 716 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			if (_tmp16_) {
#line 4822 "machine.c"
				const gchar* _tmp19_;
				gchar* _tmp20_;
#line 717 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_tmp19_ = password_str;
#line 717 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_tmp20_ = g_strdup (_tmp19_);
#line 717 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				_g_free0 (self->priv->password);
#line 717 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
				self->priv->password = _tmp20_;
#line 4833 "machine.c"
			}
#line 719 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			boxes_machine_try_connect_display (self, BOXES_MACHINE_CONNECT_FLAGS_NONE, NULL, NULL);
#line 706 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_g_free0 (password_str);
#line 706 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_g_free0 (username_str);
#line 706 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_g_variant_unref0 (credentials_variant);
#line 4843 "machine.c"
		}
		goto __finally60;
		__catch60_g_error:
		{
			GError* _error_ = NULL;
			GError* _tmp21_;
			GError* _tmp22_;
#line 706 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_error_ = _inner_error_;
#line 706 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_inner_error_ = NULL;
#line 721 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp21_ = parsing_error;
#line 721 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp22_ = _g_error_copy0 (_tmp21_);
#line 721 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_inner_error_ = _tmp22_;
#line 721 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_g_error_free0 (_error_);
#line 4863 "machine.c"
			goto __finally60;
		}
		__finally60:
#line 706 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 706 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_g_free0 (credentials_str);
#line 706 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_g_error_free0 (parsing_error);
#line 4873 "machine.c"
			goto __catch59_g_error;
		}
#line 700 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_free0 (credentials_str);
#line 700 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_error_free0 (parsing_error);
#line 4880 "machine.c"
	}
	goto __finally59;
	__catch59_g_error:
	{
		GError* _error_ = NULL;
		gchar* auth_string = NULL;
		const gchar* _tmp23_;
		const gchar* _tmp24_;
		gchar* _tmp25_;
		BoxesAppWindow* _tmp26_;
		BoxesAppWindow* _tmp27_;
		BoxesNotificationbar* _tmp28_;
		BoxesNotificationbar* _tmp29_;
		const gchar* _tmp30_;
		BoxesAuthNotificationAuthFunc _tmp31_;
		void* _tmp31__target;
		GDestroyNotify _tmp31__target_destroy_notify;
		BoxesNotificationDismissFunc _tmp32_;
		void* _tmp32__target;
		GDestroyNotify _tmp32__target_destroy_notify;
		gboolean _tmp33_;
		BoxesAuthNotification* _tmp34_;
#line 700 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_error_ = _inner_error_;
#line 700 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_inner_error_ = NULL;
#line 724 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_debug ("machine.vala:724: No credentials found in keyring. Prompting user.");
#line 727 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp23_ = boxes_collection_item_get_name ((BoxesCollectionItem*) self);
#line 727 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp24_ = _tmp23_;
#line 727 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp25_ = g_strdup_printf (_ ("“%s” requires authentication"), _tmp24_);
#line 727 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		auth_string = _tmp25_;
#line 728 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp26_ = boxes_machine_get_window (self);
#line 728 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp27_ = _tmp26_;
#line 728 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp28_ = boxes_app_window_get_notificationbar (_tmp27_);
#line 728 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp29_ = _tmp28_;
#line 728 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp30_ = auth_string;
#line 728 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp31_ = _data60_->auth_func;
#line 728 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp31__target = _data60_->auth_func_target;
#line 728 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp31__target_destroy_notify = _data60_->auth_func_target_destroy_notify;
#line 728 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data60_->auth_func = NULL;
#line 728 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data60_->auth_func_target = NULL;
#line 728 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data60_->auth_func_target_destroy_notify = NULL;
#line 728 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp32_ = _data60_->dismiss_func;
#line 728 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp32__target = _data60_->dismiss_func_target;
#line 728 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp32__target_destroy_notify = _data60_->dismiss_func_target_destroy_notify;
#line 728 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data60_->dismiss_func = NULL;
#line 728 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data60_->dismiss_func_target = NULL;
#line 728 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data60_->dismiss_func_target_destroy_notify = NULL;
#line 728 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp33_ = _data60_->need_username;
#line 728 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp34_ = boxes_notificationbar_display_for_auth (_tmp29_, _tmp30_, _tmp31_, _tmp31__target, _tmp31__target_destroy_notify, _tmp32_, _tmp32__target, _tmp32__target_destroy_notify, _tmp33_);
#line 728 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_object_unref0 (self->priv->auth_notification);
#line 728 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		self->priv->auth_notification = _tmp34_;
#line 700 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_free0 (auth_string);
#line 700 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_error_free0 (_error_);
#line 4963 "machine.c"
	}
	__finally59:
#line 700 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 700 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 700 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_clear_error (&_inner_error_);
#line 700 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return;
#line 4974 "machine.c"
	}
}


static void
___lambda256__gasync_ready_callback (GObject* source_object,
                                     GAsyncResult* res,
                                     gpointer self)
{
#line 699 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	__lambda256_ (self, source_object, res);
#line 699 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	block60_data_unref (self);
#line 4988 "machine.c"
}


static void
boxes_machine_handle_auth (BoxesMachine* self)
{
	Block60Data* _data60_;
	BoxesAuthNotification* _tmp0_;
	BoxesDisplay* _tmp1_;
	BoxesDisplay* _tmp2_;
	gboolean _tmp3_;
	gboolean _tmp4_;
	gboolean _tmp5_ = FALSE;
	BoxesDisplay* _tmp6_;
	BoxesDisplay* _tmp7_;
	gboolean _tmp8_;
	gboolean _tmp9_;
	SecretSchema* _tmp14_;
	GCancellable* _tmp15_;
	BoxesBoxConfig* _tmp16_;
	gchar* _tmp17_;
	gchar* _tmp18_;
	gchar* _tmp19_;
#line 674 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_if_fail (self != NULL);
#line 674 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data60_ = g_slice_new0 (Block60Data);
#line 674 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data60_->_ref_count_ = 1;
#line 674 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data60_->self = g_object_ref (self);
#line 675 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = self->priv->auth_notification;
#line 675 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp0_ != NULL) {
#line 676 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		block60_data_unref (_data60_);
#line 676 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data60_ = NULL;
#line 676 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return;
#line 5030 "machine.c"
	}
#line 677 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp1_ = boxes_machine_get_display (self);
#line 677 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp2_ = _tmp1_;
#line 677 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp3_ = boxes_display_get_need_username (_tmp2_);
#line 677 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp4_ = _tmp3_;
#line 677 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data60_->need_username = _tmp4_;
#line 678 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp6_ = boxes_machine_get_display (self);
#line 678 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp7_ = _tmp6_;
#line 678 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp8_ = boxes_display_get_need_username (_tmp7_);
#line 678 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp9_ = _tmp8_;
#line 678 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (!_tmp9_) {
#line 5052 "machine.c"
		BoxesDisplay* _tmp10_;
		BoxesDisplay* _tmp11_;
		gboolean _tmp12_;
		gboolean _tmp13_;
#line 678 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp10_ = boxes_machine_get_display (self);
#line 678 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp11_ = _tmp10_;
#line 678 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp12_ = boxes_display_get_need_password (_tmp11_);
#line 678 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp13_ = _tmp12_;
#line 678 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp5_ = !_tmp13_;
#line 5067 "machine.c"
	} else {
#line 678 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp5_ = FALSE;
#line 5071 "machine.c"
	}
#line 678 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp5_) {
#line 679 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		block60_data_unref (_data60_);
#line 679 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data60_ = NULL;
#line 679 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return;
#line 5081 "machine.c"
	}
#line 680 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_set_display (self, NULL);
#line 682 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data60_->auth_func = ___lambda250__boxes_auth_notification_auth_func;
#line 682 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data60_->auth_func_target = g_object_ref (self);
#line 682 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data60_->auth_func_target_destroy_notify = g_object_unref;
#line 694 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data60_->dismiss_func = ___lambda255__boxes_notification_dismiss_func;
#line 694 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data60_->dismiss_func_target = g_object_ref (self);
#line 694 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data60_->dismiss_func_target_destroy_notify = g_object_unref;
#line 699 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp14_ = self->priv->secret_auth_schema;
#line 699 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp15_ = self->priv->auth_cancellable;
#line 699 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp16_ = self->config;
#line 699 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp17_ = boxes_box_config_get_uuid (_tmp16_);
#line 699 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp18_ = _tmp17_;
#line 699 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp19_ = _tmp18_;
#line 699 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	secret_password_lookup (_tmp14_, _tmp15_, ___lambda256__gasync_ready_callback, block60_data_ref (_data60_), "gnome-boxes-machine-uuid", _tmp19_, NULL);
#line 699 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_free0 (_tmp19_);
#line 674 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	block60_data_unref (_data60_);
#line 674 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data60_ = NULL;
#line 5117 "machine.c"
}


static gint
boxes_machine_real_compare (BoxesCollectionItem* base,
                            BoxesCollectionItem* other)
{
	BoxesMachine * self;
	gint result = 0;
#line 736 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	self = (BoxesMachine*) base;
#line 736 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_val_if_fail (other != NULL, 0);
#line 737 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (G_TYPE_CHECK_INSTANCE_TYPE (other, BOXES_TYPE_MACHINE)) {
#line 5133 "machine.c"
		BoxesBoxConfig* _tmp0_;
		BoxesBoxConfig* _tmp1_;
#line 738 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp0_ = self->config;
#line 738 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp1_ = (G_TYPE_CHECK_INSTANCE_TYPE (other, BOXES_TYPE_MACHINE) ? ((BoxesMachine*) other) : NULL)->config;
#line 738 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		result = boxes_box_config_compare (_tmp0_, _tmp1_);
#line 738 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return result;
#line 5144 "machine.c"
	} else {
#line 740 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		result = -1;
#line 740 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return result;
#line 5150 "machine.c"
	}
}


static void
boxes_machine_try_save_data_free (gpointer _data)
{
	BoxesMachineTrySaveData* _data_;
	_data_ = _data;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_object_unref0 (_data_->self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_slice_free (BoxesMachineTrySaveData, _data_);
#line 5164 "machine.c"
}


static void
boxes_machine_try_save (BoxesMachine* self,
                        GAsyncReadyCallback _callback_,
                        gpointer _user_data_)
{
	BoxesMachineTrySaveData* _data_;
	BoxesMachine* _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_ = g_slice_new0 (BoxesMachineTrySaveData);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_task_set_task_data (_data_->_async_result, _data_, boxes_machine_try_save_data_free);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->self = _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_try_save_co (_data_);
#line 5187 "machine.c"
}


static void
boxes_machine_try_save_finish (BoxesMachine* self,
                               GAsyncResult* _res_)
{
	BoxesMachineTrySaveData* _data_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_ = g_task_propagate_pointer (G_TASK (_res_), NULL);
#line 5198 "machine.c"
}


static void
boxes_machine_try_save_ready (GObject* source_object,
                              GAsyncResult* _res_,
                              gpointer _user_data_)
{
	BoxesMachineTrySaveData* _data_;
#line 745 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_ = _user_data_;
#line 745 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_source_object_ = source_object;
#line 745 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_data_->_res_ = _res_;
#line 745 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_try_save_co (_data_);
#line 5216 "machine.c"
}


static gboolean
boxes_machine_try_save_co (BoxesMachineTrySaveData* _data_)
{
#line 743 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	switch (_data_->_state_) {
#line 743 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case 0:
#line 5227 "machine.c"
		goto _state_0;
#line 743 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case 1:
#line 5231 "machine.c"
		goto _state_1;
		default:
#line 743 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_assert_not_reached ();
#line 5236 "machine.c"
	}
	_state_0:
	{
#line 745 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_state_ = 1;
#line 745 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_machine_save (_data_->self, boxes_machine_try_save_ready, _data_);
#line 745 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return FALSE;
#line 5246 "machine.c"
		_state_1:
#line 745 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_machine_save_finish (_data_->self, _data_->_res_, &_data_->_inner_error_);
#line 745 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 5252 "machine.c"
			goto __catch61_g_error;
		}
	}
	goto __finally61;
	__catch61_g_error:
	{
#line 744 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_error_ = _data_->_inner_error_;
#line 744 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_inner_error_ = NULL;
#line 747 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp0_ = boxes_collection_item_get_name ((BoxesCollectionItem*) _data_->self);
#line 747 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp1_ = _data_->_tmp0_;
#line 747 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp2_ = _data_->_error_;
#line 747 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_data_->_tmp3_ = _data_->_tmp2_->message;
#line 747 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_warning ("machine.vala:747: Failed to save '%s': %s", _data_->_tmp1_, _data_->_tmp3_);
#line 744 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_error_free0 (_data_->_error_);
#line 5275 "machine.c"
	}
	__finally61:
#line 744 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 744 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _data_->_inner_error_->message, g_quark_to_string (_data_->_inner_error_->domain), _data_->_inner_error_->code);
#line 744 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_clear_error (&_data_->_inner_error_);
#line 744 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_object_unref (_data_->_async_result);
#line 744 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return FALSE;
#line 5288 "machine.c"
	}
#line 743 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 743 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_data_->_state_ != 0) {
#line 743 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 743 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 5298 "machine.c"
		}
	}
#line 743 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_object_unref (_data_->_async_result);
#line 743 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return FALSE;
#line 5305 "machine.c"
}


GdkPixbuf*
boxes_machine_get_pixbuf (BoxesMachine* self)
{
	GdkPixbuf* result;
	GdkPixbuf* _tmp0_;
#line 10 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 10 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = self->priv->_pixbuf;
#line 10 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	result = _tmp0_;
#line 10 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return result;
#line 5322 "machine.c"
}


void
boxes_machine_set_pixbuf (BoxesMachine* self,
                          GdkPixbuf* value)
{
#line 10 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_if_fail (self != NULL);
#line 10 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (boxes_machine_get_pixbuf (self) != value) {
#line 5334 "machine.c"
		GdkPixbuf* _tmp0_;
#line 10 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp0_ = _g_object_ref0 (value);
#line 10 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_object_unref0 (self->priv->_pixbuf);
#line 10 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		self->priv->_pixbuf = _tmp0_;
#line 10 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_object_notify_by_pspec ((GObject *) self, boxes_machine_properties[BOXES_MACHINE_PIXBUF_PROPERTY]);
#line 5344 "machine.c"
	}
}


BoxesMachineThumbnailer*
boxes_machine_get_thumbnailer (BoxesMachine* self)
{
	BoxesMachineThumbnailer* result;
	BoxesMachineThumbnailer* _tmp0_;
#line 11 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 11 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = self->priv->_thumbnailer;
#line 11 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	result = _tmp0_;
#line 11 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return result;
#line 5362 "machine.c"
}


static void
boxes_machine_set_thumbnailer (BoxesMachine* self,
                               BoxesMachineThumbnailer* value)
{
#line 11 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_if_fail (self != NULL);
#line 11 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (boxes_machine_get_thumbnailer (self) != value) {
#line 5374 "machine.c"
		BoxesMachineThumbnailer* _tmp0_;
#line 11 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp0_ = _g_object_ref0 (value);
#line 11 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_object_unref0 (self->priv->_thumbnailer);
#line 11 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		self->priv->_thumbnailer = _tmp0_;
#line 11 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_object_notify_by_pspec ((GObject *) self, boxes_machine_properties[BOXES_MACHINE_THUMBNAILER_PROPERTY]);
#line 5384 "machine.c"
	}
}


const gchar*
boxes_machine_get_info (BoxesMachine* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 13 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 13 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = self->priv->_info;
#line 13 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	result = _tmp0_;
#line 13 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return result;
#line 5402 "machine.c"
}


void
boxes_machine_set_info (BoxesMachine* self,
                        const gchar* value)
{
#line 13 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_if_fail (self != NULL);
#line 13 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (g_strcmp0 (value, boxes_machine_get_info (self)) != 0) {
#line 5414 "machine.c"
		gchar* _tmp0_;
#line 13 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp0_ = g_strdup (value);
#line 13 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_free0 (self->priv->_info);
#line 13 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		self->priv->_info = _tmp0_;
#line 13 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_object_notify_by_pspec ((GObject *) self, boxes_machine_properties[BOXES_MACHINE_INFO_PROPERTY]);
#line 5424 "machine.c"
	}
}


const gchar*
boxes_machine_get_status (BoxesMachine* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 14 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 14 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = self->priv->_status;
#line 14 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	result = _tmp0_;
#line 14 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return result;
#line 5442 "machine.c"
}


void
boxes_machine_set_status (BoxesMachine* self,
                          const gchar* value)
{
#line 14 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_if_fail (self != NULL);
#line 14 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (g_strcmp0 (value, boxes_machine_get_status (self)) != 0) {
#line 5454 "machine.c"
		gchar* _tmp0_;
#line 14 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp0_ = g_strdup (value);
#line 14 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_free0 (self->priv->_status);
#line 14 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		self->priv->_status = _tmp0_;
#line 14 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_object_notify_by_pspec ((GObject *) self, boxes_machine_properties[BOXES_MACHINE_STATUS_PROPERTY]);
#line 5464 "machine.c"
	}
}


gboolean
boxes_machine_get_suspend_at_exit (BoxesMachine* self)
{
#line 15 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 15 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return BOXES_MACHINE_GET_CLASS (self)->get_suspend_at_exit (self);
#line 5476 "machine.c"
}


static gboolean
boxes_machine_real_get_suspend_at_exit (BoxesMachine* base)
{
	gboolean result;
	BoxesMachine* self;
#line 15 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	self = base;
#line 15 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	result = FALSE;
#line 15 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return result;
#line 5491 "machine.c"
}


gboolean
boxes_machine_get_can_save (BoxesMachine* self)
{
#line 17 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 17 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return BOXES_MACHINE_GET_CLASS (self)->get_can_save (self);
#line 5502 "machine.c"
}


static gboolean
boxes_machine_real_get_can_save (BoxesMachine* base)
{
	gboolean result;
	BoxesMachine* self;
#line 17 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	self = base;
#line 17 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	result = FALSE;
#line 17 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return result;
#line 5517 "machine.c"
}


gboolean
boxes_machine_get_can_restart (BoxesMachine* self)
{
#line 18 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 18 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return BOXES_MACHINE_GET_CLASS (self)->get_can_restart (self);
#line 5528 "machine.c"
}


gboolean
boxes_machine_get_can_clone (BoxesMachine* self)
{
#line 19 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 19 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return BOXES_MACHINE_GET_CLASS (self)->get_can_clone (self);
#line 5539 "machine.c"
}


gboolean
boxes_machine_get_can_delete (BoxesMachine* self)
{
	gboolean result;
	gboolean _tmp0_;
#line 20 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 20 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = self->priv->_can_delete;
#line 20 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	result = _tmp0_;
#line 20 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return result;
#line 5556 "machine.c"
}


void
boxes_machine_set_can_delete (BoxesMachine* self,
                              gboolean value)
{
#line 20 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_if_fail (self != NULL);
#line 20 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (boxes_machine_get_can_delete (self) != value) {
#line 20 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		self->priv->_can_delete = value;
#line 20 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_object_notify_by_pspec ((GObject *) self, boxes_machine_properties[BOXES_MACHINE_CAN_DELETE_PROPERTY]);
#line 5572 "machine.c"
	}
}


gboolean
boxes_machine_get_under_construction (BoxesMachine* self)
{
	gboolean result;
	gboolean _tmp0_;
#line 21 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 21 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = self->priv->_under_construction;
#line 21 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	result = _tmp0_;
#line 21 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return result;
#line 5590 "machine.c"
}


void
boxes_machine_set_under_construction (BoxesMachine* self,
                                      gboolean value)
{
#line 21 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_if_fail (self != NULL);
#line 21 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (boxes_machine_get_under_construction (self) != value) {
#line 21 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		self->priv->_under_construction = value;
#line 21 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_object_notify_by_pspec ((GObject *) self, boxes_machine_properties[BOXES_MACHINE_UNDER_CONSTRUCTION_PROPERTY]);
#line 5606 "machine.c"
	}
}


gboolean
boxes_machine_get_should_autosave (BoxesMachine* self)
{
#line 32 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 32 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return BOXES_MACHINE_GET_CLASS (self)->get_should_autosave (self);
#line 5618 "machine.c"
}


static gboolean
boxes_machine_real_get_should_autosave (BoxesMachine* base)
{
	gboolean result;
	BoxesMachine* self;
	gboolean _tmp0_ = FALSE;
	gboolean _tmp1_ = FALSE;
	gboolean _tmp2_;
	gboolean _tmp3_;
#line 32 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	self = base;
#line 33 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp2_ = boxes_machine_get_can_save (self);
#line 33 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp3_ = _tmp2_;
#line 33 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp3_) {
#line 5639 "machine.c"
		gboolean _tmp4_;
		gboolean _tmp5_;
#line 33 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp4_ = boxes_machine_get_is_running (self);
#line 33 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp5_ = _tmp4_;
#line 33 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp1_ = _tmp5_;
#line 5648 "machine.c"
	} else {
#line 33 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp1_ = FALSE;
#line 5652 "machine.c"
	}
#line 33 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp1_) {
#line 5656 "machine.c"
		guint _tmp6_;
#line 33 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp6_ = self->priv->autosave_timeout_id;
#line 33 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp0_ = _tmp6_ == ((guint) 0);
#line 5662 "machine.c"
	} else {
#line 33 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp0_ = FALSE;
#line 5666 "machine.c"
	}
#line 33 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	result = _tmp0_;
#line 33 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return result;
#line 5672 "machine.c"
}


gboolean
boxes_machine_get_is_connected (BoxesMachine* self)
{
	gboolean result;
	BoxesDisplay* _tmp0_;
	BoxesDisplay* _tmp1_;
	BoxesDisplay* _tmp2_;
	BoxesDisplay* _tmp3_;
	gboolean _tmp4_;
#line 38 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 39 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = boxes_machine_get_display (self);
#line 39 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp1_ = _tmp0_;
#line 39 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp1_ == NULL) {
#line 40 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		result = FALSE;
#line 40 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return result;
#line 5697 "machine.c"
	}
#line 42 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp2_ = boxes_machine_get_display (self);
#line 42 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp3_ = _tmp2_;
#line 42 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp4_ = _tmp3_->connected;
#line 42 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	result = _tmp4_;
#line 42 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return result;
#line 5709 "machine.c"
}


gboolean
boxes_machine_get_is_running (BoxesMachine* self)
{
	gboolean result;
	BoxesMachineMachineState _tmp0_;
	BoxesMachineMachineState _tmp1_;
#line 47 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 48 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = boxes_machine_get_state (self);
#line 48 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp1_ = _tmp0_;
#line 48 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	result = _tmp1_ == BOXES_MACHINE_MACHINE_STATE_RUNNING;
#line 48 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return result;
#line 5729 "machine.c"
}


gboolean
boxes_machine_get_is_on (BoxesMachine* self)
{
	gboolean result;
	gboolean _tmp0_ = FALSE;
	gboolean _tmp1_ = FALSE;
	BoxesMachineMachineState _tmp2_;
	BoxesMachineMachineState _tmp3_;
#line 53 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 54 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp2_ = boxes_machine_get_state (self);
#line 54 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp3_ = _tmp2_;
#line 54 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp3_ == BOXES_MACHINE_MACHINE_STATE_RUNNING) {
#line 54 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp1_ = TRUE;
#line 5751 "machine.c"
	} else {
		BoxesMachineMachineState _tmp4_;
		BoxesMachineMachineState _tmp5_;
#line 55 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp4_ = boxes_machine_get_state (self);
#line 55 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp5_ = _tmp4_;
#line 55 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp1_ = _tmp5_ == BOXES_MACHINE_MACHINE_STATE_PAUSED;
#line 5761 "machine.c"
	}
#line 54 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp1_) {
#line 54 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp0_ = TRUE;
#line 5767 "machine.c"
	} else {
		BoxesMachineMachineState _tmp6_;
		BoxesMachineMachineState _tmp7_;
#line 56 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp6_ = boxes_machine_get_state (self);
#line 56 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp7_ = _tmp6_;
#line 56 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp0_ = _tmp7_ == BOXES_MACHINE_MACHINE_STATE_SLEEPING;
#line 5777 "machine.c"
	}
#line 54 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	result = _tmp0_;
#line 54 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return result;
#line 5783 "machine.c"
}


gboolean
boxes_machine_get_is_stopped (BoxesMachine* self)
{
	gboolean result;
	gboolean _tmp0_ = FALSE;
	BoxesMachineMachineState _tmp1_;
	BoxesMachineMachineState _tmp2_;
#line 61 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 62 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp1_ = boxes_machine_get_state (self);
#line 62 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp2_ = _tmp1_;
#line 62 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp2_ == BOXES_MACHINE_MACHINE_STATE_FORCE_STOPPED) {
#line 62 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp0_ = TRUE;
#line 5804 "machine.c"
	} else {
		BoxesMachineMachineState _tmp3_;
		BoxesMachineMachineState _tmp4_;
#line 62 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp3_ = boxes_machine_get_state (self);
#line 62 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp4_ = _tmp3_;
#line 62 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp0_ = _tmp4_ == BOXES_MACHINE_MACHINE_STATE_STOPPED;
#line 5814 "machine.c"
	}
#line 62 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	result = _tmp0_;
#line 62 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return result;
#line 5820 "machine.c"
}


gboolean
boxes_machine_get_is_local (BoxesMachine* self)
{
#line 67 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 67 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return BOXES_MACHINE_GET_CLASS (self)->get_is_local (self);
#line 5831 "machine.c"
}


static inline GRegex*
_thread_safe_regex_init (GRegex** re,
                         const gchar * pattern,
                         GRegexMatchFlags match_options)
{
#line 69 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (g_once_init_enter ((volatile gsize*) re)) {
#line 69 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		GRegex* val = g_regex_new (pattern, match_options, 0, NULL);
#line 69 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_once_init_leave ((volatile gsize*) re, (gsize) val);
#line 5846 "machine.c"
	}
#line 69 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return *re;
#line 5850 "machine.c"
}


static gboolean
boxes_machine_real_get_is_local (BoxesMachine* base)
{
	gboolean result;
	BoxesMachine* self;
	BoxesCollectionSource* _tmp0_;
	gchar* _tmp1_;
	gchar* _tmp2_;
	gchar* _tmp3_;
	gboolean _tmp4_;
	gboolean _tmp5_;
#line 67 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	self = base;
#line 69 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = self->source;
#line 69 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp1_ = boxes_collection_source_get_uri (_tmp0_);
#line 69 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp2_ = _tmp1_;
#line 69 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp3_ = _tmp2_;
#line 69 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp4_ = g_regex_match (_thread_safe_regex_init (&_tmp_regex_0, ":\\/\\/(127\\.\\d+\\.\\d+\\.\\d+|localhost)", 0 | G_REGEX_CASELESS), _tmp3_, 0, NULL);
#line 69 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp5_ = _tmp4_;
#line 69 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_free0 (_tmp3_);
#line 69 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp5_) {
#line 70 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		result = TRUE;
#line 70 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return result;
#line 5887 "machine.c"
	}
#line 72 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	result = FALSE;
#line 72 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return result;
#line 5893 "machine.c"
}


GCancellable*
boxes_machine_get_connecting_cancellable (BoxesMachine* self)
{
	GCancellable* result;
	GCancellable* _tmp0_;
#line 97 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 97 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = self->priv->_connecting_cancellable;
#line 97 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	result = _tmp0_;
#line 97 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return result;
#line 5910 "machine.c"
}


void
boxes_machine_set_connecting_cancellable (BoxesMachine* self,
                                          GCancellable* value)
{
#line 97 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_if_fail (self != NULL);
#line 97 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (boxes_machine_get_connecting_cancellable (self) != value) {
#line 5922 "machine.c"
		GCancellable* _tmp0_;
#line 97 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp0_ = _g_object_ref0 (value);
#line 97 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_object_unref0 (self->priv->_connecting_cancellable);
#line 97 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		self->priv->_connecting_cancellable = _tmp0_;
#line 97 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_object_notify_by_pspec ((GObject *) self, boxes_machine_properties[BOXES_MACHINE_CONNECTING_CANCELLABLE_PROPERTY]);
#line 5932 "machine.c"
	}
}


BoxesMachineMachineState
boxes_machine_get_state (BoxesMachine* self)
{
	BoxesMachineMachineState result;
	BoxesMachineMachineState _tmp0_;
#line 119 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_val_if_fail (self != NULL, 0);
#line 119 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = self->priv->_state;
#line 119 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	result = _tmp0_;
#line 119 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return result;
#line 5950 "machine.c"
}


void
boxes_machine_set_state (BoxesMachine* self,
                         BoxesMachineMachineState value)
{
	const gchar* _tmp0_;
	const gchar* _tmp1_;
	BoxesMachineMachineState _tmp2_;
	BoxesMachineMachineState _tmp3_;
	GEnumValue* _tmp4_;
	gboolean _tmp5_ = FALSE;
	gboolean _tmp10_ = FALSE;
	gboolean _tmp11_ = FALSE;
	gboolean _tmp12_ = FALSE;
	gboolean _tmp13_ = FALSE;
	gboolean _tmp14_ = FALSE;
	gboolean _tmp15_ = FALSE;
	BoxesDisplay* _tmp16_;
	BoxesDisplay* _tmp17_;
#line 120 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_if_fail (self != NULL);
#line 121 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	self->priv->_state = value;
#line 122 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = boxes_collection_item_get_name ((BoxesCollectionItem*) self);
#line 122 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp1_ = _tmp0_;
#line 122 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp2_ = boxes_machine_get_state (self);
#line 122 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp3_ = _tmp2_;
#line 122 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp4_ = g_enum_get_value (g_type_class_ref (BOXES_MACHINE_TYPE_MACHINE_STATE), _tmp3_);
#line 122 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_debug ("machine.vala:122: State of '%s' changed to %s", _tmp1_, (_tmp4_ != NULL) ? _tmp4_->value_name : NULL);
#line 123 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (value == BOXES_MACHINE_MACHINE_STATE_STOPPED) {
#line 123 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp5_ = TRUE;
#line 5992 "machine.c"
	} else {
#line 123 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp5_ = value == BOXES_MACHINE_MACHINE_STATE_FORCE_STOPPED;
#line 5996 "machine.c"
	}
#line 123 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp5_) {
#line 124 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_machine_set_screenshot (self, NULL, FALSE);
#line 6002 "machine.c"
	} else {
		GdkPixbuf* _tmp6_;
#line 127 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp6_ = self->priv->orig_pixbuf;
#line 127 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		if (_tmp6_ != NULL) {
#line 6009 "machine.c"
			GdkPixbuf* _tmp7_;
			GdkPixbuf* _tmp8_;
			GdkPixbuf* _tmp9_;
#line 128 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp7_ = self->priv->orig_pixbuf;
#line 128 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp8_ = boxes_machine_draw_vm (self, _tmp7_, BOXES_MACHINE_SCREENSHOT_WIDTH, BOXES_MACHINE_SCREENSHOT_HEIGHT);
#line 128 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp9_ = _tmp8_;
#line 128 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			boxes_machine_set_pixbuf (self, _tmp9_);
#line 128 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_g_object_unref0 (_tmp9_);
#line 6023 "machine.c"
		}
	}
#line 134 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp16_ = boxes_machine_get_display (self);
#line 134 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp17_ = _tmp16_;
#line 134 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp17_ != NULL) {
#line 6032 "machine.c"
		gboolean _tmp18_;
#line 134 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp18_ = self->stay_on_display;
#line 134 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp15_ = !_tmp18_;
#line 6038 "machine.c"
	} else {
#line 134 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp15_ = FALSE;
#line 6042 "machine.c"
	}
#line 134 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp15_) {
#line 6046 "machine.c"
		BoxesAppWindow* _tmp19_;
		BoxesAppWindow* _tmp20_;
#line 135 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp19_ = boxes_machine_get_window (self);
#line 135 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp20_ = _tmp19_;
#line 135 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp14_ = _tmp20_ != NULL;
#line 6055 "machine.c"
	} else {
#line 134 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp14_ = FALSE;
#line 6059 "machine.c"
	}
#line 134 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp14_) {
#line 6063 "machine.c"
		BoxesAppWindow* _tmp21_;
		BoxesAppWindow* _tmp22_;
		BoxesCollectionItem* _tmp23_;
		BoxesCollectionItem* _tmp24_;
#line 136 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp21_ = boxes_machine_get_window (self);
#line 136 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp22_ = _tmp21_;
#line 136 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp23_ = boxes_app_window_get_current_item (_tmp22_);
#line 136 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp24_ = _tmp23_;
#line 136 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp13_ = _tmp24_ == G_TYPE_CHECK_INSTANCE_CAST (self, BOXES_TYPE_COLLECTION_ITEM, BoxesCollectionItem);
#line 6078 "machine.c"
	} else {
#line 134 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp13_ = FALSE;
#line 6082 "machine.c"
	}
#line 134 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp13_) {
#line 137 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp12_ = value != BOXES_MACHINE_MACHINE_STATE_RUNNING;
#line 6088 "machine.c"
	} else {
#line 134 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp12_ = FALSE;
#line 6092 "machine.c"
	}
#line 134 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp12_) {
#line 6096 "machine.c"
		BoxesAppWindow* _tmp25_;
		BoxesAppWindow* _tmp26_;
		BoxesUIState _tmp27_;
		BoxesUIState _tmp28_;
#line 138 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp25_ = boxes_machine_get_window (self);
#line 138 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp26_ = _tmp25_;
#line 138 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp27_ = boxes_ui_get_ui_state ((BoxesUI*) _tmp26_);
#line 138 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp28_ = _tmp27_;
#line 138 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp11_ = _tmp28_ != BOXES_UI_STATE_PROPERTIES;
#line 6111 "machine.c"
	} else {
#line 134 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp11_ = FALSE;
#line 6115 "machine.c"
	}
#line 134 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp11_) {
#line 139 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp10_ = value != BOXES_MACHINE_MACHINE_STATE_UNKNOWN;
#line 6121 "machine.c"
	} else {
#line 134 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp10_ = FALSE;
#line 6125 "machine.c"
	}
#line 134 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp10_) {
#line 6129 "machine.c"
		BoxesAppWindow* _tmp29_;
		BoxesAppWindow* _tmp30_;
#line 140 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp29_ = boxes_machine_get_window (self);
#line 140 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp30_ = _tmp29_;
#line 140 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_ui_set_state ((BoxesUI*) _tmp30_, BOXES_UI_STATE_COLLECTION);
#line 6138 "machine.c"
	}
#line 120 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_object_notify_by_pspec ((GObject *) self, boxes_machine_properties[BOXES_MACHINE_STATE_PROPERTY]);
#line 6142 "machine.c"
}


BoxesAppWindow*
boxes_machine_get_window (BoxesMachine* self)
{
	BoxesAppWindow* result;
	BoxesAppWindow* _tmp0_ = NULL;
	BoxesAppWindow* _tmp1_;
#line 147 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 147 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp1_ = self->priv->_window;
#line 147 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = _tmp1_;
#line 147 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp0_ == NULL) {
#line 6160 "machine.c"
		BoxesApp* _tmp2_;
		BoxesAppWindow* _tmp3_;
		BoxesAppWindow* _tmp4_;
#line 147 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp2_ = boxes_app_app;
#line 147 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp3_ = boxes_app_get_main_window (_tmp2_);
#line 147 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp4_ = _tmp3_;
#line 147 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp0_ = _tmp4_;
#line 6172 "machine.c"
	}
#line 147 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	result = _tmp0_;
#line 147 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return result;
#line 6178 "machine.c"
}


void
boxes_machine_set_window (BoxesMachine* self,
                          BoxesAppWindow* value)
{
#line 148 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_if_fail (self != NULL);
#line 148 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	self->priv->_window = value;
#line 148 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_object_notify_by_pspec ((GObject *) self, boxes_machine_properties[BOXES_MACHINE_WINDOW_PROPERTY]);
#line 6192 "machine.c"
}


gboolean
boxes_machine_get_deleted (BoxesMachine* self)
{
	gboolean result;
	gboolean _tmp0_;
#line 151 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 151 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = self->priv->_deleted;
#line 151 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	result = _tmp0_;
#line 151 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return result;
#line 6209 "machine.c"
}


static void
boxes_machine_set_deleted (BoxesMachine* self,
                           gboolean value)
{
#line 151 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_if_fail (self != NULL);
#line 151 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (boxes_machine_get_deleted (self) != value) {
#line 151 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		self->priv->_deleted = value;
#line 151 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_object_notify_by_pspec ((GObject *) self, boxes_machine_properties[BOXES_MACHINE_DELETED_PROPERTY]);
#line 6225 "machine.c"
	}
}


BoxesDisplay*
boxes_machine_get_display (BoxesMachine* self)
{
	BoxesDisplay* result;
	BoxesDisplay* _tmp0_;
#line 179 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 179 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = self->priv->_display;
#line 179 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	result = _tmp0_;
#line 179 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	return result;
#line 6243 "machine.c"
}


static void
_boxes_machine_display___lambda246_ (BoxesMachine* self,
                                     gint id)
{
#line 203 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_show_display (self);
#line 6253 "machine.c"
}


static void
__boxes_machine_display___lambda246__boxes_display_show (BoxesDisplay* _sender,
                                                         gint display_id,
                                                         gpointer self)
{
#line 203 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_boxes_machine_display___lambda246_ ((BoxesMachine*) self, display_id);
#line 6264 "machine.c"
}


static void
_boxes_machine_display___lambda247_ (BoxesMachine* self,
                                     gint id)
{
	BoxesAppWindow* _tmp0_;
	BoxesAppWindow* _tmp1_;
#line 206 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = boxes_machine_get_window (self);
#line 206 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp1_ = _tmp0_;
#line 206 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp1_ != NULL) {
#line 6280 "machine.c"
		BoxesAppWindow* _tmp2_;
		BoxesAppWindow* _tmp3_;
		BoxesDisplayPage* _tmp4_;
		GtkWidget* _tmp5_;
		GtkWidget* _tmp6_;
#line 207 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp2_ = boxes_machine_get_window (self);
#line 207 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp3_ = _tmp2_;
#line 207 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp4_ = _tmp3_->display_page;
#line 207 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp5_ = boxes_display_page_remove_display (_tmp4_);
#line 207 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp6_ = _tmp5_;
#line 207 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_g_object_unref0 (_tmp6_);
#line 6298 "machine.c"
	}
}


static void
__boxes_machine_display___lambda247__boxes_display_hide (BoxesDisplay* _sender,
                                                         gint display_id,
                                                         gpointer self)
{
#line 205 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_boxes_machine_display___lambda247_ ((BoxesMachine*) self, display_id);
#line 6310 "machine.c"
}


static void
_boxes_machine_display___lambda248_ (BoxesMachine* self,
                                     const gchar* message)
{
#line 210 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_if_fail (message != NULL);
#line 211 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_signal_emit (self, boxes_machine_signals[BOXES_MACHINE_GOT_ERROR_SIGNAL], 0, message);
#line 6322 "machine.c"
}


static void
__boxes_machine_display___lambda248__boxes_display_got_error (BoxesDisplay* _sender,
                                                              const gchar* message,
                                                              gpointer self)
{
#line 210 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_boxes_machine_display___lambda248_ ((BoxesMachine*) self, message);
#line 6333 "machine.c"
}


static const gchar*
string_to_string (const gchar* self)
{
	const gchar* result = NULL;
#line 1456 "/home/fborges/jhbuild/install/share/vala-0.40/vapi/glib-2.0.vapi"
	g_return_val_if_fail (self != NULL, NULL);
#line 1457 "/home/fborges/jhbuild/install/share/vala-0.40/vapi/glib-2.0.vapi"
	result = self;
#line 1457 "/home/fborges/jhbuild/install/share/vala-0.40/vapi/glib-2.0.vapi"
	return result;
#line 6347 "machine.c"
}


static void
_boxes_machine_display___lambda249_ (BoxesMachine* self,
                                     gboolean failed)
{
	const gchar* _tmp0_;
	const gchar* _tmp1_;
	const gchar* _tmp2_;
	gchar* _tmp3_;
	gchar* _tmp4_;
	BoxesAppWindow* _tmp5_;
	BoxesAppWindow* _tmp6_;
	gboolean _tmp7_ = FALSE;
	BoxesAppWindow* _tmp8_;
	BoxesAppWindow* _tmp9_;
	BoxesUIState _tmp10_;
	BoxesUIState _tmp11_;
#line 215 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = boxes_collection_item_get_name ((BoxesCollectionItem*) self);
#line 215 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp1_ = _tmp0_;
#line 215 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp2_ = string_to_string (_tmp1_);
#line 215 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp3_ = g_strconcat ("display ", _tmp2_, " disconnected", NULL);
#line 215 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp4_ = _tmp3_;
#line 215 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_message ("machine.vala:215: %s", _tmp4_);
#line 215 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_free0 (_tmp4_);
#line 216 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp5_ = boxes_machine_get_window (self);
#line 216 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp6_ = _tmp5_;
#line 216 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp6_ == NULL) {
#line 217 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return;
#line 6389 "machine.c"
	}
#line 219 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp8_ = boxes_machine_get_window (self);
#line 219 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp9_ = _tmp8_;
#line 219 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp10_ = boxes_ui_get_ui_state ((BoxesUI*) _tmp9_);
#line 219 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp11_ = _tmp10_;
#line 219 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp11_ == BOXES_UI_STATE_CREDS) {
#line 219 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp7_ = TRUE;
#line 6403 "machine.c"
	} else {
		BoxesAppWindow* _tmp12_;
		BoxesAppWindow* _tmp13_;
		BoxesUIState _tmp14_;
		BoxesUIState _tmp15_;
#line 219 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp12_ = boxes_machine_get_window (self);
#line 219 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp13_ = _tmp12_;
#line 219 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp14_ = boxes_ui_get_ui_state ((BoxesUI*) _tmp13_);
#line 219 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp15_ = _tmp14_;
#line 219 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp7_ = _tmp15_ == BOXES_UI_STATE_DISPLAY;
#line 6419 "machine.c"
	}
#line 219 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp7_) {
#line 6423 "machine.c"
		gboolean _tmp16_ = FALSE;
		gboolean _tmp17_;
#line 220 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp17_ = self->stay_on_display;
#line 220 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		if (!_tmp17_) {
#line 6430 "machine.c"
			BoxesAppWindow* _tmp18_;
			BoxesAppWindow* _tmp19_;
			BoxesCollectionItem* _tmp20_;
			BoxesCollectionItem* _tmp21_;
#line 220 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp18_ = boxes_machine_get_window (self);
#line 220 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp19_ = _tmp18_;
#line 220 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp20_ = boxes_app_window_get_current_item (_tmp19_);
#line 220 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp21_ = _tmp20_;
#line 220 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp16_ = _tmp21_ == G_TYPE_CHECK_INSTANCE_CAST (self, BOXES_TYPE_COLLECTION_ITEM, BoxesCollectionItem);
#line 6445 "machine.c"
		} else {
#line 220 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp16_ = FALSE;
#line 6449 "machine.c"
		}
#line 220 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		if (_tmp16_) {
#line 6453 "machine.c"
			BoxesAppWindow* _tmp22_;
			BoxesAppWindow* _tmp23_;
#line 221 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp22_ = boxes_machine_get_window (self);
#line 221 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp23_ = _tmp22_;
#line 221 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			boxes_ui_set_state ((BoxesUI*) _tmp23_, BOXES_UI_STATE_COLLECTION);
#line 6462 "machine.c"
		}
#line 223 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		if (failed) {
#line 6466 "machine.c"
			BoxesAppWindow* _tmp24_;
			BoxesAppWindow* _tmp25_;
			BoxesNotificationbar* _tmp26_;
			BoxesNotificationbar* _tmp27_;
			const gchar* _tmp28_;
			const gchar* _tmp29_;
			gchar* _tmp30_;
			gchar* _tmp31_;
			BoxesNotification* _tmp32_;
			BoxesNotification* _tmp33_;
#line 224 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp24_ = boxes_machine_get_window (self);
#line 224 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp25_ = _tmp24_;
#line 224 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp26_ = boxes_app_window_get_notificationbar (_tmp25_);
#line 224 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp27_ = _tmp26_;
#line 224 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp28_ = boxes_collection_item_get_name ((BoxesCollectionItem*) self);
#line 224 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp29_ = _tmp28_;
#line 224 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp30_ = g_strdup_printf (_ ("Connection to “%s” failed"), _tmp29_);
#line 224 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp31_ = _tmp30_;
#line 224 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp32_ = boxes_notificationbar_display_error (_tmp27_, _tmp31_, BOXES_NOTIFICATIONBAR_DEFAULT_TIMEOUT);
#line 224 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_tmp33_ = _tmp32_;
#line 224 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_g_object_unref0 (_tmp33_);
#line 224 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
			_g_free0 (_tmp31_);
#line 6501 "machine.c"
		}
	}
#line 227 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_load_screenshot (self);
#line 229 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_disconnect_display (self);
#line 6508 "machine.c"
}


static void
__boxes_machine_display___lambda249__boxes_display_disconnected (BoxesDisplay* _sender,
                                                                 gboolean connection_failed,
                                                                 gpointer self)
{
#line 214 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_boxes_machine_display___lambda249_ ((BoxesMachine*) self, connection_failed);
#line 6519 "machine.c"
}


static void
_boxes_machine_handle_auth_g_object_notify (GObject* _sender,
                                            GParamSpec* pspec,
                                            gpointer self)
{
#line 232 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_handle_auth ((BoxesMachine*) self);
#line 6530 "machine.c"
}


void
boxes_machine_set_display (BoxesMachine* self,
                           BoxesDisplay* value)
{
	BoxesDisplay* _tmp0_;
	BoxesDisplay* _tmp13_;
	BoxesDisplay* _tmp14_;
	BoxesAppWindow* _tmp15_;
	BoxesAppWindow* _tmp16_;
	BoxesTopbar* _tmp17_;
	const gchar* _tmp18_;
	const gchar* _tmp19_;
	gchar* _tmp20_;
	gchar* _tmp21_;
	BoxesDisplay* _tmp22_;
	gulong _tmp23_;
	BoxesDisplay* _tmp24_;
	gulong _tmp25_;
	BoxesDisplay* _tmp26_;
	gulong _tmp27_;
	BoxesDisplay* _tmp28_;
	gulong _tmp29_;
	BoxesDisplay* _tmp30_;
	gulong _tmp31_;
	BoxesDisplay* _tmp32_;
	gulong _tmp33_;
	BoxesDisplay* _tmp34_;
	const gchar* _tmp35_;
	BoxesDisplay* _tmp36_;
	const gchar* _tmp37_;
#line 180 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_return_if_fail (self != NULL);
#line 181 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = self->priv->_display;
#line 181 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp0_ != NULL) {
#line 6570 "machine.c"
		BoxesDisplay* _tmp1_;
		gulong _tmp2_;
		BoxesDisplay* _tmp3_;
		gulong _tmp4_;
		BoxesDisplay* _tmp5_;
		gulong _tmp6_;
		BoxesDisplay* _tmp7_;
		gulong _tmp8_;
		BoxesDisplay* _tmp9_;
		gulong _tmp10_;
		BoxesDisplay* _tmp11_;
		gulong _tmp12_;
#line 182 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp1_ = self->priv->_display;
#line 182 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp2_ = self->priv->show_id;
#line 182 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_signal_handler_disconnect ((GObject*) _tmp1_, _tmp2_);
#line 183 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		self->priv->show_id = (gulong) 0;
#line 184 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp3_ = self->priv->_display;
#line 184 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp4_ = self->priv->hide_id;
#line 184 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_signal_handler_disconnect ((GObject*) _tmp3_, _tmp4_);
#line 185 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		self->priv->hide_id = (gulong) 0;
#line 186 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp5_ = self->priv->_display;
#line 186 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp6_ = self->priv->disconnected_id;
#line 186 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_signal_handler_disconnect ((GObject*) _tmp5_, _tmp6_);
#line 187 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		self->priv->disconnected_id = (gulong) 0;
#line 188 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp7_ = self->priv->_display;
#line 188 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp8_ = self->priv->need_password_id;
#line 188 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_signal_handler_disconnect ((GObject*) _tmp7_, _tmp8_);
#line 189 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		self->priv->need_password_id = (gulong) 0;
#line 190 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp9_ = self->priv->_display;
#line 190 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp10_ = self->priv->need_username_id;
#line 190 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_signal_handler_disconnect ((GObject*) _tmp9_, _tmp10_);
#line 191 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		self->priv->need_username_id = (gulong) 0;
#line 192 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp11_ = self->priv->_display;
#line 192 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		_tmp12_ = self->priv->got_error_id;
#line 192 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_signal_handler_disconnect ((GObject*) _tmp11_, _tmp12_);
#line 193 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		self->priv->got_error_id = (gulong) 0;
#line 6631 "machine.c"
	}
#line 196 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp13_ = _g_object_ref0 (value);
#line 196 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_object_unref0 (self->priv->_display);
#line 196 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	self->priv->_display = _tmp13_;
#line 197 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp14_ = self->priv->_display;
#line 197 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	if (_tmp14_ == NULL) {
#line 198 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		return;
#line 6645 "machine.c"
	}
#line 201 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp15_ = boxes_machine_get_window (self);
#line 201 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp16_ = _tmp15_;
#line 201 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp17_ = _tmp16_->topbar;
#line 201 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp18_ = boxes_collection_item_get_name ((BoxesCollectionItem*) self);
#line 201 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp19_ = _tmp18_;
#line 201 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp20_ = g_strdup_printf (_ ("Connecting to %s"), _tmp19_);
#line 201 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp21_ = _tmp20_;
#line 201 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_topbar_set_status (_tmp17_, _tmp21_);
#line 201 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_free0 (_tmp21_);
#line 203 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp22_ = self->priv->_display;
#line 203 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp23_ = g_signal_connect_object (_tmp22_, "show", (GCallback) __boxes_machine_display___lambda246__boxes_display_show, self, 0);
#line 203 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	self->priv->show_id = _tmp23_;
#line 205 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp24_ = self->priv->_display;
#line 205 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp25_ = g_signal_connect_object (_tmp24_, "hide", (GCallback) __boxes_machine_display___lambda247__boxes_display_hide, self, 0);
#line 205 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	self->priv->hide_id = _tmp25_;
#line 210 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp26_ = self->priv->_display;
#line 210 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp27_ = g_signal_connect_object (_tmp26_, "got-error", (GCallback) __boxes_machine_display___lambda248__boxes_display_got_error, self, 0);
#line 210 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	self->priv->got_error_id = _tmp27_;
#line 214 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp28_ = self->priv->_display;
#line 214 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp29_ = g_signal_connect_object (_tmp28_, "disconnected", (GCallback) __boxes_machine_display___lambda249__boxes_display_disconnected, self, 0);
#line 214 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	self->priv->disconnected_id = _tmp29_;
#line 232 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp30_ = self->priv->_display;
#line 232 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp31_ = g_signal_connect_object ((GObject*) _tmp30_, "notify::need-password", (GCallback) _boxes_machine_handle_auth_g_object_notify, self, 0);
#line 232 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	self->priv->need_password_id = _tmp31_;
#line 233 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp32_ = self->priv->_display;
#line 233 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp33_ = g_signal_connect_object ((GObject*) _tmp32_, "notify::need-username", (GCallback) _boxes_machine_handle_auth_g_object_notify, self, 0);
#line 233 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	self->priv->need_username_id = _tmp33_;
#line 235 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp34_ = self->priv->_display;
#line 235 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp35_ = self->priv->username;
#line 235 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_display_set_username (_tmp34_, _tmp35_);
#line 236 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp36_ = self->priv->_display;
#line 236 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp37_ = self->priv->password;
#line 236 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_display_set_password (_tmp36_, _tmp37_);
#line 180 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_object_notify_by_pspec ((GObject *) self, boxes_machine_properties[BOXES_MACHINE_DISPLAY_PROPERTY]);
#line 6715 "machine.c"
}


static void
boxes_machine_class_init (BoxesMachineClass * klass)
{
	cairo_surface_t* _tmp0_;
	cairo_t* cr = NULL;
	cairo_surface_t* _tmp1_;
	cairo_t* _tmp2_;
	cairo_t* _tmp3_;
	cairo_t* _tmp4_;
	cairo_t* _tmp5_;
	cairo_t* _tmp6_;
	cairo_t* _tmp7_;
	cairo_t* _tmp8_;
	cairo_t* _tmp9_;
	cairo_t* _tmp10_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_parent_class = g_type_class_peek_parent (klass);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_type_class_add_private (klass, sizeof (BoxesMachinePrivate));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	((BoxesMachineClass *) klass)->save_real = (void (*) (BoxesMachine *, GAsyncReadyCallback, gpointer)) boxes_machine_real_save_real;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	((BoxesMachineClass *) klass)->save_real_finish = (void (*) (BoxesMachine *, GAsyncResult*, GError**)) boxes_machine_real_save_real_finish;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	((BoxesMachineClass *) klass)->take_screenshot = (void (*) (BoxesMachine *, GAsyncReadyCallback, gpointer)) boxes_machine_real_take_screenshot;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	((BoxesMachineClass *) klass)->take_screenshot_finish = (GdkPixbuf* (*) (BoxesMachine *, GAsyncResult*, GError**)) boxes_machine_real_take_screenshot_finish;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	((BoxesMachineClass *) klass)->get_properties = (GList* (*) (BoxesMachine *, BoxesPropertiesPage)) boxes_machine_real_get_properties;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	((BoxesMachineClass *) klass)->restart = (void (*) (BoxesMachine *)) boxes_machine_real_restart;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	((BoxesMachineClass *) klass)->disconnect_display = (void (*) (BoxesMachine *)) boxes_machine_real_disconnect_display;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	((BoxesMachineClass *) klass)->update_status = (void (*) (BoxesMachine *)) boxes_machine_real_update_status;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	((BoxesMachineClass *) klass)->delete = (void (*) (BoxesMachine *, gboolean)) boxes_machine_real_delete;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	((BoxesCollectionItemClass *) klass)->compare = (gint (*) (BoxesCollectionItem *, BoxesCollectionItem*)) boxes_machine_real_compare;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	BOXES_MACHINE_CLASS (klass)->get_suspend_at_exit = boxes_machine_real_get_suspend_at_exit;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	BOXES_MACHINE_CLASS (klass)->get_can_save = boxes_machine_real_get_can_save;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	BOXES_MACHINE_CLASS (klass)->get_should_autosave = boxes_machine_real_get_should_autosave;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	BOXES_MACHINE_CLASS (klass)->get_is_local = boxes_machine_real_get_is_local;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_boxes_machine_get_property;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_boxes_machine_set_property;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	G_OBJECT_CLASS (klass)->finalize = boxes_machine_finalize;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_MACHINE_PIXBUF_PROPERTY, boxes_machine_properties[BOXES_MACHINE_PIXBUF_PROPERTY] = g_param_spec_object ("pixbuf", "pixbuf", "pixbuf", gdk_pixbuf_get_type (), G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_MACHINE_THUMBNAILER_PROPERTY, boxes_machine_properties[BOXES_MACHINE_THUMBNAILER_PROPERTY] = g_param_spec_object ("thumbnailer", "thumbnailer", "thumbnailer", BOXES_TYPE_MACHINE_THUMBNAILER, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_MACHINE_INFO_PROPERTY, boxes_machine_properties[BOXES_MACHINE_INFO_PROPERTY] = g_param_spec_string ("info", "info", "info", NULL, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_MACHINE_STATUS_PROPERTY, boxes_machine_properties[BOXES_MACHINE_STATUS_PROPERTY] = g_param_spec_string ("status", "status", "status", NULL, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_MACHINE_SUSPEND_AT_EXIT_PROPERTY, boxes_machine_properties[BOXES_MACHINE_SUSPEND_AT_EXIT_PROPERTY] = g_param_spec_boolean ("suspend-at-exit", "suspend-at-exit", "suspend-at-exit", FALSE, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_MACHINE_CAN_SAVE_PROPERTY, boxes_machine_properties[BOXES_MACHINE_CAN_SAVE_PROPERTY] = g_param_spec_boolean ("can-save", "can-save", "can-save", FALSE, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_MACHINE_CAN_RESTART_PROPERTY, boxes_machine_properties[BOXES_MACHINE_CAN_RESTART_PROPERTY] = g_param_spec_boolean ("can-restart", "can-restart", "can-restart", FALSE, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_MACHINE_CAN_CLONE_PROPERTY, boxes_machine_properties[BOXES_MACHINE_CAN_CLONE_PROPERTY] = g_param_spec_boolean ("can-clone", "can-clone", "can-clone", FALSE, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_MACHINE_CAN_DELETE_PROPERTY, boxes_machine_properties[BOXES_MACHINE_CAN_DELETE_PROPERTY] = g_param_spec_boolean ("can-delete", "can-delete", "can-delete", TRUE, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_MACHINE_UNDER_CONSTRUCTION_PROPERTY, boxes_machine_properties[BOXES_MACHINE_UNDER_CONSTRUCTION_PROPERTY] = g_param_spec_boolean ("under-construction", "under-construction", "under-construction", FALSE, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_MACHINE_SHOULD_AUTOSAVE_PROPERTY, boxes_machine_properties[BOXES_MACHINE_SHOULD_AUTOSAVE_PROPERTY] = g_param_spec_boolean ("should-autosave", "should-autosave", "should-autosave", FALSE, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_MACHINE_IS_CONNECTED_PROPERTY, boxes_machine_properties[BOXES_MACHINE_IS_CONNECTED_PROPERTY] = g_param_spec_boolean ("is-connected", "is-connected", "is-connected", FALSE, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_MACHINE_IS_RUNNING_PROPERTY, boxes_machine_properties[BOXES_MACHINE_IS_RUNNING_PROPERTY] = g_param_spec_boolean ("is-running", "is-running", "is-running", FALSE, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_MACHINE_IS_ON_PROPERTY, boxes_machine_properties[BOXES_MACHINE_IS_ON_PROPERTY] = g_param_spec_boolean ("is-on", "is-on", "is-on", FALSE, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_MACHINE_IS_STOPPED_PROPERTY, boxes_machine_properties[BOXES_MACHINE_IS_STOPPED_PROPERTY] = g_param_spec_boolean ("is-stopped", "is-stopped", "is-stopped", FALSE, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_MACHINE_IS_LOCAL_PROPERTY, boxes_machine_properties[BOXES_MACHINE_IS_LOCAL_PROPERTY] = g_param_spec_boolean ("is-local", "is-local", "is-local", FALSE, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_MACHINE_CONNECTING_CANCELLABLE_PROPERTY, boxes_machine_properties[BOXES_MACHINE_CONNECTING_CANCELLABLE_PROPERTY] = g_param_spec_object ("connecting-cancellable", "connecting-cancellable", "connecting-cancellable", g_cancellable_get_type (), G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_MACHINE_STATE_PROPERTY, boxes_machine_properties[BOXES_MACHINE_STATE_PROPERTY] = g_param_spec_enum ("state", "state", "state", BOXES_MACHINE_TYPE_MACHINE_STATE, 0, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_MACHINE_WINDOW_PROPERTY, boxes_machine_properties[BOXES_MACHINE_WINDOW_PROPERTY] = g_param_spec_object ("window", "window", "window", BOXES_TYPE_APP_WINDOW, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_MACHINE_DELETED_PROPERTY, boxes_machine_properties[BOXES_MACHINE_DELETED_PROPERTY] = g_param_spec_boolean ("deleted", "deleted", "deleted", FALSE, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_MACHINE_DISPLAY_PROPERTY, boxes_machine_properties[BOXES_MACHINE_DISPLAY_PROPERTY] = g_param_spec_object ("display", "display", "display", BOXES_TYPE_DISPLAY, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_signals[BOXES_MACHINE_GOT_ERROR_SIGNAL] = g_signal_new ("got-error", BOXES_TYPE_MACHINE, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__STRING, G_TYPE_NONE, 1, G_TYPE_STRING);
#line 241 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = cairo_image_surface_create (CAIRO_FORMAT_A8, 2, 2);
#line 241 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_cairo_surface_destroy0 (boxes_machine_grid_surface);
#line 241 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_grid_surface = _tmp0_;
#line 242 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp1_ = boxes_machine_grid_surface;
#line 242 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp2_ = cairo_create (_tmp1_);
#line 242 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	cr = _tmp2_;
#line 243 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp3_ = cr;
#line 243 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	cairo_set_source_rgba (_tmp3_, (gdouble) 0, (gdouble) 0, (gdouble) 0, (gdouble) 0);
#line 244 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp4_ = cr;
#line 244 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	cairo_paint (_tmp4_);
#line 246 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp5_ = cr;
#line 246 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	cairo_set_source_rgba (_tmp5_, (gdouble) 1, (gdouble) 1, (gdouble) 1, (gdouble) 1);
#line 247 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp6_ = cr;
#line 247 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	cairo_set_operator (_tmp6_, CAIRO_OPERATOR_SOURCE);
#line 248 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp7_ = cr;
#line 248 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	cairo_rectangle (_tmp7_, (gdouble) 0, (gdouble) 0, (gdouble) 1, (gdouble) 1);
#line 249 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp8_ = cr;
#line 249 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	cairo_fill (_tmp8_);
#line 250 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp9_ = cr;
#line 250 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	cairo_rectangle (_tmp9_, (gdouble) 1, (gdouble) 1, (gdouble) 1, (gdouble) 1);
#line 251 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp10_ = cr;
#line 251 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	cairo_fill (_tmp10_);
#line 240 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_cairo_destroy0 (cr);
#line 6862 "machine.c"
}


static void
boxes_machine_boxes_iproperties_provider_interface_init (BoxesIPropertiesProviderIface * iface)
{
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	boxes_machine_boxes_iproperties_provider_parent_iface = g_type_interface_peek_parent (iface);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	iface->get_properties = (GList* (*) (BoxesIPropertiesProvider *, BoxesPropertiesPage)) boxes_machine_get_properties;
#line 6873 "machine.c"
}


static void
boxes_machine_instance_init (BoxesMachine * self)
{
	GCancellable* _tmp0_;
	SecretSchema* _tmp1_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	self->priv = BOXES_MACHINE_GET_PRIVATE (self);
#line 20 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	self->priv->_can_delete = TRUE;
#line 21 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	self->priv->_under_construction = FALSE;
#line 23 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp0_ = g_cancellable_new ();
#line 23 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	self->priv->auth_cancellable = _tmp0_;
#line 24 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_tmp1_ = secret_schema_new ("org.gnome.Boxes", SECRET_SCHEMA_NONE, "gnome-boxes-machine-uuid", SECRET_SCHEMA_ATTRIBUTE_STRING, NULL);
#line 24 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	self->priv->secret_auth_schema = _tmp1_;
#line 6896 "machine.c"
}


static void
boxes_machine_finalize (GObject * obj)
{
	BoxesMachine * self;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, BOXES_TYPE_MACHINE, BoxesMachine);
#line 8 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_object_unref0 (self->source);
#line 9 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_object_unref0 (self->config);
#line 10 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_object_unref0 (self->priv->_pixbuf);
#line 11 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_object_unref0 (self->priv->_thumbnailer);
#line 13 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_free0 (self->priv->_info);
#line 14 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_free0 (self->priv->_status);
#line 23 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_object_unref0 (self->priv->auth_cancellable);
#line 24 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_secret_schema_unref0 (self->priv->secret_auth_schema);
#line 92 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_free0 (self->priv->username);
#line 93 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_free0 (self->priv->password);
#line 97 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_object_unref0 (self->priv->_connecting_cancellable);
#line 116 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_object_unref0 (self->priv->orig_pixbuf);
#line 177 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_object_unref0 (self->priv->_display);
#line 572 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_object_unref0 (self->priv->name_status_bind);
#line 672 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	_g_object_unref0 (self->priv->auth_notification);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	G_OBJECT_CLASS (boxes_machine_parent_class)->finalize (obj);
#line 6938 "machine.c"
}


GType
boxes_machine_get_type (void)
{
	static volatile gsize boxes_machine_type_id__volatile = 0;
	if (g_once_init_enter (&boxes_machine_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (BoxesMachineClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) boxes_machine_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (BoxesMachine), 0, (GInstanceInitFunc) boxes_machine_instance_init, NULL };
		static const GInterfaceInfo boxes_iproperties_provider_info = { (GInterfaceInitFunc) boxes_machine_boxes_iproperties_provider_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
		GType boxes_machine_type_id;
		boxes_machine_type_id = g_type_register_static (BOXES_TYPE_COLLECTION_ITEM, "BoxesMachine", &g_define_type_info, G_TYPE_FLAG_ABSTRACT);
		g_type_add_interface_static (boxes_machine_type_id, BOXES_TYPE_IPROPERTIES_PROVIDER, &boxes_iproperties_provider_info);
		g_once_init_leave (&boxes_machine_type_id__volatile, boxes_machine_type_id);
	}
	return boxes_machine_type_id__volatile;
}


static void
_vala_boxes_machine_get_property (GObject * object,
                                  guint property_id,
                                  GValue * value,
                                  GParamSpec * pspec)
{
	BoxesMachine * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, BOXES_TYPE_MACHINE, BoxesMachine);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	switch (property_id) {
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_MACHINE_PIXBUF_PROPERTY:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_value_set_object (value, boxes_machine_get_pixbuf (self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_MACHINE_THUMBNAILER_PROPERTY:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_value_set_object (value, boxes_machine_get_thumbnailer (self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_MACHINE_INFO_PROPERTY:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_value_set_string (value, boxes_machine_get_info (self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_MACHINE_STATUS_PROPERTY:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_value_set_string (value, boxes_machine_get_status (self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_MACHINE_SUSPEND_AT_EXIT_PROPERTY:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_value_set_boolean (value, boxes_machine_get_suspend_at_exit (self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_MACHINE_CAN_SAVE_PROPERTY:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_value_set_boolean (value, boxes_machine_get_can_save (self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_MACHINE_CAN_DELETE_PROPERTY:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_value_set_boolean (value, boxes_machine_get_can_delete (self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_MACHINE_UNDER_CONSTRUCTION_PROPERTY:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_value_set_boolean (value, boxes_machine_get_under_construction (self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_MACHINE_SHOULD_AUTOSAVE_PROPERTY:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_value_set_boolean (value, boxes_machine_get_should_autosave (self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_MACHINE_IS_CONNECTED_PROPERTY:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_value_set_boolean (value, boxes_machine_get_is_connected (self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_MACHINE_IS_RUNNING_PROPERTY:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_value_set_boolean (value, boxes_machine_get_is_running (self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_MACHINE_IS_ON_PROPERTY:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_value_set_boolean (value, boxes_machine_get_is_on (self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_MACHINE_IS_STOPPED_PROPERTY:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_value_set_boolean (value, boxes_machine_get_is_stopped (self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_MACHINE_IS_LOCAL_PROPERTY:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_value_set_boolean (value, boxes_machine_get_is_local (self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_MACHINE_CONNECTING_CANCELLABLE_PROPERTY:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_value_set_object (value, boxes_machine_get_connecting_cancellable (self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_MACHINE_STATE_PROPERTY:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_value_set_enum (value, boxes_machine_get_state (self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_MACHINE_WINDOW_PROPERTY:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_value_set_object (value, boxes_machine_get_window (self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_MACHINE_DELETED_PROPERTY:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_value_set_boolean (value, boxes_machine_get_deleted (self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_MACHINE_DISPLAY_PROPERTY:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		g_value_set_object (value, boxes_machine_get_display (self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 7082 "machine.c"
		default:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 7088 "machine.c"
	}
}


static void
_vala_boxes_machine_set_property (GObject * object,
                                  guint property_id,
                                  const GValue * value,
                                  GParamSpec * pspec)
{
	BoxesMachine * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, BOXES_TYPE_MACHINE, BoxesMachine);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
	switch (property_id) {
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_MACHINE_PIXBUF_PROPERTY:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_machine_set_pixbuf (self, g_value_get_object (value));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_MACHINE_THUMBNAILER_PROPERTY:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_machine_set_thumbnailer (self, g_value_get_object (value));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_MACHINE_INFO_PROPERTY:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_machine_set_info (self, g_value_get_string (value));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_MACHINE_STATUS_PROPERTY:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_machine_set_status (self, g_value_get_string (value));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_MACHINE_CAN_DELETE_PROPERTY:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_machine_set_can_delete (self, g_value_get_boolean (value));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_MACHINE_UNDER_CONSTRUCTION_PROPERTY:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_machine_set_under_construction (self, g_value_get_boolean (value));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_MACHINE_CONNECTING_CANCELLABLE_PROPERTY:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_machine_set_connecting_cancellable (self, g_value_get_object (value));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_MACHINE_STATE_PROPERTY:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_machine_set_state (self, g_value_get_enum (value));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_MACHINE_WINDOW_PROPERTY:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_machine_set_window (self, g_value_get_object (value));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_MACHINE_DELETED_PROPERTY:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_machine_set_deleted (self, g_value_get_boolean (value));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		case BOXES_MACHINE_DISPLAY_PROPERTY:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		boxes_machine_set_display (self, g_value_get_object (value));
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 7169 "machine.c"
		default:
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 5 "/home/fborges/checkout/gnome-boxes/src/machine.vala"
		break;
#line 7175 "machine.c"
	}
}



