/* libvirt-machine.c generated by valac 0.37.1.4-3591e, the Vala compiler
 * generated from libvirt-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 <float.h>
#include <math.h>
#include <libvirt-gobject/libvirt-gobject.h>
#include <libvirt-gconfig/libvirt-gconfig.h>
#include <stdlib.h>
#include <string.h>
#include <gtk/gtk.h>
#include <glib/gi18n-lib.h>
#include <libxml/uri.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_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;

#define BOXES_TYPE_VM_CREATOR (boxes_vm_creator_get_type ())
#define BOXES_VM_CREATOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_VM_CREATOR, BoxesVMCreator))
#define BOXES_VM_CREATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_VM_CREATOR, BoxesVMCreatorClass))
#define BOXES_IS_VM_CREATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_VM_CREATOR))
#define BOXES_IS_VM_CREATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_VM_CREATOR))
#define BOXES_VM_CREATOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_VM_CREATOR, BoxesVMCreatorClass))

typedef struct _BoxesVMCreator BoxesVMCreator;
typedef struct _BoxesVMCreatorClass BoxesVMCreatorClass;

#define BOXES_LIBVIRT_MACHINE_TYPE_MACHINE_STAT (boxes_libvirt_machine_machine_stat_get_type ())
typedef struct _BoxesLibvirtMachineMachineStat BoxesLibvirtMachineMachineStat;
enum  {
	BOXES_LIBVIRT_MACHINE_DUMMY_PROPERTY,
	BOXES_LIBVIRT_MACHINE_DOMAIN,
	BOXES_LIBVIRT_MACHINE_DOMAIN_CONFIG,
	BOXES_LIBVIRT_MACHINE_CONNECTION,
	BOXES_LIBVIRT_MACHINE_STORAGE_VOLUME,
	BOXES_LIBVIRT_MACHINE_VM_CREATOR,
	BOXES_LIBVIRT_MACHINE_IMPORTING,
	BOXES_LIBVIRT_MACHINE_SAVE_ON_QUIT,
	BOXES_LIBVIRT_MACHINE_SUSPEND_AT_EXIT,
	BOXES_LIBVIRT_MACHINE_CAN_SAVE,
	BOXES_LIBVIRT_MACHINE_CAN_RESTART,
	BOXES_LIBVIRT_MACHINE_CAN_CLONE,
	BOXES_LIBVIRT_MACHINE_SHOULD_AUTOSAVE,
	BOXES_LIBVIRT_MACHINE_RUN_IN_BG,
	BOXES_LIBVIRT_MACHINE_IS_LOCAL,
	BOXES_LIBVIRT_MACHINE_LAST_PROPERTY
};
static GParamSpec* boxes_libvirt_machine_properties[BOXES_LIBVIRT_MACHINE_LAST_PROPERTY];
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
#define _boxes_vm_creator_unref0(var) ((var == NULL) ? NULL : (var = (boxes_vm_creator_unref (var), NULL)))
#define _g_free0(var) (var = (g_free (var), NULL))
#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))

#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;
typedef struct _BoxesLibvirtMachineConnectDisplayData BoxesLibvirtMachineConnectDisplayData;

#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 __vala_GVirDomainInfo_free0(var) ((var == NULL) ? NULL : (var = (_vala_GVirDomainInfo_free (var), NULL)))

#define BOXES_MACHINE_TYPE_MACHINE_STATE (boxes_machine_machine_state_get_type ())
typedef struct _BoxesLibvirtMachineNewData BoxesLibvirtMachineNewData;
typedef struct _Block38Data Block38Data;
typedef struct _Block39Data Block39Data;

#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;
typedef struct _BoxesAppPrivate BoxesAppPrivate;

#define BOXES_TYPE_COLLECTION (boxes_collection_get_type ())
#define BOXES_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_COLLECTION, BoxesCollection))
#define BOXES_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_COLLECTION, BoxesCollectionClass))
#define BOXES_IS_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_COLLECTION))
#define BOXES_IS_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_COLLECTION))
#define BOXES_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_COLLECTION, BoxesCollectionClass))

typedef struct _BoxesCollection BoxesCollection;
typedef struct _BoxesCollectionClass BoxesCollectionClass;
#define __vala_GVirDomainDiskStats_free0(var) ((var == NULL) ? NULL : (var = (_vala_GVirDomainDiskStats_free (var), NULL)))
typedef struct _BoxesLibvirtMachineUpdateIoStatData BoxesLibvirtMachineUpdateIoStatData;
typedef struct _Block40Data Block40Data;
typedef struct _Block41Data Block41Data;
#define __vala_GVirDomainInterfaceStats_free0(var) ((var == NULL) ? NULL : (var = (_vala_GVirDomainInterfaceStats_free (var), NULL)))
typedef struct _BoxesLibvirtMachineUpdateNetStatData BoxesLibvirtMachineUpdateNetStatData;
typedef struct _BoxesLibvirtMachineUpdateStatsData BoxesLibvirtMachineUpdateStatsData;
typedef struct _Block42Data Block42Data;
#define __g_list_free__g_object_unref0_0(var) ((var == NULL) ? NULL : (var = (_g_list_free__g_object_unref0_ (var), NULL)))

#define BOXES_TYPE_SPICE_DISPLAY (boxes_spice_display_get_type ())
#define BOXES_SPICE_DISPLAY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_SPICE_DISPLAY, BoxesSpiceDisplay))
#define BOXES_SPICE_DISPLAY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_SPICE_DISPLAY, BoxesSpiceDisplayClass))
#define BOXES_IS_SPICE_DISPLAY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_SPICE_DISPLAY))
#define BOXES_IS_SPICE_DISPLAY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_SPICE_DISPLAY))
#define BOXES_SPICE_DISPLAY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_SPICE_DISPLAY, BoxesSpiceDisplayClass))

typedef struct _BoxesSpiceDisplay BoxesSpiceDisplay;
typedef struct _BoxesSpiceDisplayClass BoxesSpiceDisplayClass;

#define BOXES_TYPE_VNC_DISPLAY (boxes_vnc_display_get_type ())
#define BOXES_VNC_DISPLAY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_VNC_DISPLAY, BoxesVncDisplay))
#define BOXES_VNC_DISPLAY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_VNC_DISPLAY, BoxesVncDisplayClass))
#define BOXES_IS_VNC_DISPLAY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_VNC_DISPLAY))
#define BOXES_IS_VNC_DISPLAY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_VNC_DISPLAY))
#define BOXES_VNC_DISPLAY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_VNC_DISPLAY, BoxesVncDisplayClass))

typedef struct _BoxesVncDisplay BoxesVncDisplay;
typedef struct _BoxesVncDisplayClass BoxesVncDisplayClass;
typedef struct _Block43Data Block43Data;
typedef struct _BoxesLibvirtMachineTakeScreenshotData BoxesLibvirtMachineTakeScreenshotData;
typedef struct _Block44Data Block44Data;
typedef struct _BoxesLibvirtMachineSaveRealData BoxesLibvirtMachineSaveRealData;
typedef struct _BoxesLibvirtMachineSuspendData BoxesLibvirtMachineSuspendData;
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;
typedef struct _BoxesLibvirtMachineStartData BoxesLibvirtMachineStartData;

#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;
typedef struct _Block45Data Block45Data;

#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;
typedef struct _Block46Data Block46Data;

#define BOXES_TYPE_INSTALLER_MEDIA (boxes_installer_media_get_type ())
#define BOXES_INSTALLER_MEDIA(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_INSTALLER_MEDIA, BoxesInstallerMedia))
#define BOXES_INSTALLER_MEDIA_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_INSTALLER_MEDIA, BoxesInstallerMediaClass))
#define BOXES_IS_INSTALLER_MEDIA(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_INSTALLER_MEDIA))
#define BOXES_IS_INSTALLER_MEDIA_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_INSTALLER_MEDIA))
#define BOXES_INSTALLER_MEDIA_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_INSTALLER_MEDIA, BoxesInstallerMediaClass))

typedef struct _BoxesInstallerMedia BoxesInstallerMedia;
typedef struct _BoxesInstallerMediaClass BoxesInstallerMediaClass;

#define BOXES_TYPE_INSTALLED_MEDIA (boxes_installed_media_get_type ())
#define BOXES_INSTALLED_MEDIA(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_INSTALLED_MEDIA, BoxesInstalledMedia))
#define BOXES_INSTALLED_MEDIA_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_INSTALLED_MEDIA, BoxesInstalledMediaClass))
#define BOXES_IS_INSTALLED_MEDIA(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_INSTALLED_MEDIA))
#define BOXES_IS_INSTALLED_MEDIA_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_INSTALLED_MEDIA))
#define BOXES_INSTALLED_MEDIA_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_INSTALLED_MEDIA, BoxesInstalledMediaClass))

typedef struct _BoxesInstalledMedia BoxesInstalledMedia;
typedef struct _BoxesInstalledMediaClass BoxesInstalledMediaClass;

#define BOXES_TYPE_LIBVIRT_MEDIA (boxes_libvirt_media_get_type ())
#define BOXES_LIBVIRT_MEDIA(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_LIBVIRT_MEDIA, BoxesLibvirtMedia))
#define BOXES_LIBVIRT_MEDIA_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_LIBVIRT_MEDIA, BoxesLibvirtMediaClass))
#define BOXES_IS_LIBVIRT_MEDIA(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_LIBVIRT_MEDIA))
#define BOXES_IS_LIBVIRT_MEDIA_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_LIBVIRT_MEDIA))
#define BOXES_LIBVIRT_MEDIA_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_LIBVIRT_MEDIA, BoxesLibvirtMediaClass))

typedef struct _BoxesLibvirtMedia BoxesLibvirtMedia;
typedef struct _BoxesLibvirtMediaClass BoxesLibvirtMediaClass;

#define BOXES_TYPE_LIBVIRT_CLONED_MEDIA (boxes_libvirt_cloned_media_get_type ())
#define BOXES_LIBVIRT_CLONED_MEDIA(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_LIBVIRT_CLONED_MEDIA, BoxesLibvirtClonedMedia))
#define BOXES_LIBVIRT_CLONED_MEDIA_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_LIBVIRT_CLONED_MEDIA, BoxesLibvirtClonedMediaClass))
#define BOXES_IS_LIBVIRT_CLONED_MEDIA(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_LIBVIRT_CLONED_MEDIA))
#define BOXES_IS_LIBVIRT_CLONED_MEDIA_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_LIBVIRT_CLONED_MEDIA))
#define BOXES_LIBVIRT_CLONED_MEDIA_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_LIBVIRT_CLONED_MEDIA, BoxesLibvirtClonedMediaClass))

typedef struct _BoxesLibvirtClonedMedia BoxesLibvirtClonedMedia;
typedef struct _BoxesLibvirtClonedMediaClass BoxesLibvirtClonedMediaClass;
typedef struct _BoxesLibvirtMachineCloneData BoxesLibvirtMachineCloneData;
#define _g_date_time_unref0(var) ((var == NULL) ? NULL : (var = (g_date_time_unref (var), NULL)))
typedef struct _BoxesLibvirtMachineCreateSnapshotData BoxesLibvirtMachineCreateSnapshotData;
typedef struct _Block47Data Block47Data;
typedef struct _BoxesLibvirtMachineWaitForSaveData BoxesLibvirtMachineWaitForSaveData;
#define _xmlFreeURI0(var) ((var == NULL) ? NULL : (var = (xmlFreeURI (var), NULL)))

#define BOXES_TYPE_VM_IMPORTER (boxes_vm_importer_get_type ())
#define BOXES_VM_IMPORTER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_VM_IMPORTER, BoxesVMImporter))
#define BOXES_VM_IMPORTER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_VM_IMPORTER, BoxesVMImporterClass))
#define BOXES_IS_VM_IMPORTER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_VM_IMPORTER))
#define BOXES_IS_VM_IMPORTER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_VM_IMPORTER))
#define BOXES_VM_IMPORTER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_VM_IMPORTER, BoxesVMImporterClass))

typedef struct _BoxesVMImporter BoxesVMImporter;
typedef struct _BoxesVMImporterClass BoxesVMImporterClass;
enum  {
	BOXES_LIBVIRT_MACHINE_STATS_UPDATED_SIGNAL,
	BOXES_LIBVIRT_MACHINE_LAST_SIGNAL
};
static guint boxes_libvirt_machine_signals[BOXES_LIBVIRT_MACHINE_LAST_SIGNAL] = {0};

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
} 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);
};

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 _BoxesLibvirtMachineMachineStat {
	gint64 timestamp;
	gdouble cpu_time;
	gdouble cpu_time_abs;
	gdouble cpu_guest_percent;
	gdouble memory_percent;
	GVirDomainDiskStats* disk;
	gdouble disk_read;
	gdouble disk_write;
	GVirDomainInterfaceStats* net;
	gdouble net_read;
	gdouble net_write;
};

struct _BoxesLibvirtMachinePrivate {
	GVirDomain* _domain;
	GVirConfigDomain* _domain_config;
	GVirConnection* _connection;
	GVirStorageVol* _storage_volume;
	BoxesVMCreator* _vm_creator;
	gboolean _run_in_bg;
	guint shutdown_timeout;
	guint stats_update_timeout;
	GCancellable* stats_cancellable;
	BoxesLibvirtMachineMachineStat* stats;
	gint stats_length1;
	gint _stats_size_;
	gboolean force_stopped;
	gboolean saving;
	GVirConnection* system_virt_connection;
	BoxesBoxConfigSavedProperty* saved_properties;
	gint saved_properties_length1;
	gint _saved_properties_size_;
};

typedef gint (*BoxesDisplayOpenFDFunc) (void* user_data);
struct _BoxesLibvirtMachineConnectDisplayData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	BoxesLibvirtMachine* self;
	BoxesMachineConnectFlags flags;
	GCancellable* _tmp0_;
	GCancellable* _tmp1_;
	GCancellable* _tmp2_;
	GCancellable* _tmp3_;
	gboolean _tmp4_;
	GCancellable* _tmp5_;
	GCancellable* _tmp6_;
	BoxesMachineConnectFlags _tmp7_;
	GCancellable* _tmp8_;
	GCancellable* _tmp9_;
	GCancellable* _tmp10_;
	GCancellable* _tmp11_;
	gboolean _tmp12_;
	GCancellable* _tmp13_;
	GCancellable* _tmp14_;
	gboolean _tmp15_;
	gboolean _tmp16_;
	BoxesDisplayOpenFDFunc open_fd;
	void* open_fd_target;
	GDestroyNotify open_fd_target_destroy_notify;
	BoxesCollectionSource* _tmp17_;
	gchar* _tmp18_;
	gchar* _tmp19_;
	gchar* _tmp20_;
	gboolean _tmp21_;
	gboolean _tmp22_;
	BoxesDisplay* _tmp23_;
	BoxesDisplay* _tmp24_;
	BoxesDisplayOpenFDFunc _tmp25_;
	void* _tmp25__target;
	GDestroyNotify _tmp25__target_destroy_notify;
	BoxesDisplay* _tmp26_;
	BoxesDisplay* _tmp27_;
	GError * _inner_error_;
};

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 _BoxesLibvirtMachineNewData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	GType object_type;
	BoxesLibvirtMachine* self;
	BoxesCollectionSource* source;
	GVirConnection* connection;
	GVirDomain* domain;
	GVirConfigDomain* config;
	GVirDomain* _tmp0_;
	GVirConfigDomain* _tmp1_;
	const gchar* _tmp2_;
	GVirConfigDomain* _tmp3_;
	const gchar* _tmp4_;
	GVirDomain* _tmp5_;
	const gchar* _tmp6_;
	gchar* item_name;
	gchar* _tmp7_;
	BoxesCollectionSource* _tmp8_;
	const gchar* _tmp9_;
	GVirDomain* _tmp10_;
	const gchar* _tmp11_;
	GVirDomain* _tmp12_;
	const gchar* _tmp13_;
	gchar* _tmp14_;
	gchar* _tmp15_;
	GVirConnection* _tmp16_;
	GVirDomain* _tmp17_;
	BoxesLibvirtMachineProperties* _tmp18_;
	GVirDomainInfo* _tmp19_;
	GVirDomain* _tmp20_;
	GVirDomainInfo* _tmp21_;
	GVirDomainState s;
	GVirDomainInfo* _tmp22_;
	GVirDomainInfo* _tmp23_;
	GVirDomainState _tmp24_;
	GVirDomainState _tmp25_;
	GVirDomainState _tmp26_;
	GVirDomain* _tmp27_;
	gboolean _tmp28_;
	GError* _error_;
	GVirDomain* _tmp29_;
	GVirDomain* _tmp30_;
	GVirDomain* _tmp31_;
	GVirDomain* _tmp32_;
	GVirDomain* _tmp33_;
	GVirDomain* _tmp34_;
	BoxesMachineMachineState _tmp35_;
	BoxesMachineMachineState _tmp36_;
	GVirConnection* _tmp37_;
	GVirConnection* _tmp38_;
	GVirConnection* _tmp39_;
	GError* _vala1__error_;
	GError* _tmp40_;
	const gchar* _tmp41_;
	BoxesCollectionSource* _tmp42_;
	gchar* _tmp43_;
	GValue _tmp44_;
	BoxesBoxConfigSavedProperty _tmp45_;
	BoxesBoxConfigSavedProperty* _tmp46_;
	BoxesBoxConfig* _tmp47_;
	BoxesBoxConfigSavedProperty* _tmp48_;
	gint _tmp48__length1;
	GError * _inner_error_;
};

struct _Block38Data {
	int _ref_count_;
	BoxesLibvirtMachine* self;
	BoxesLibvirtMachineMachineStat* stat;
	gpointer _async_data_;
};

struct _Block39Data {
	int _ref_count_;
	Block38Data * _data38_;
	GVirDomainDisk* disk;
};

struct _BoxesApp {
	GtkApplication parent_instance;
	BoxesAppPrivate * priv;
	BoxesCollection* collection;
	BoxesAsyncLauncher* async_launcher;
};

struct _BoxesAppClass {
	GtkApplicationClass parent_class;
};

struct _BoxesLibvirtMachineUpdateIoStatData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	BoxesLibvirtMachine* self;
	GVirDomainInfo* info;
	BoxesLibvirtMachineMachineStat* stat;
	Block38Data* _data38_;
	BoxesLibvirtMachineMachineStat* _tmp0_;
	GVirDomainInfo* _tmp1_;
	GVirDomainState _tmp2_;
	Block39Data* _data39_;
	GVirDomainDisk* _tmp3_;
	GVirDomainDisk* _tmp4_;
	BoxesApp* _tmp5_;
	BoxesAsyncLauncher* _tmp6_;
	BoxesLibvirtMachineMachineStat prev;
	BoxesLibvirtMachineMachineStat* _tmp7_;
	gint _tmp7__length1;
	BoxesLibvirtMachineMachineStat _tmp8_;
	BoxesLibvirtMachineMachineStat _tmp9_;
	BoxesLibvirtMachineMachineStat _tmp10_;
	GVirDomainDiskStats* _tmp11_;
	BoxesLibvirtMachineMachineStat* _tmp12_;
	GVirDomainDiskStats* _tmp13_;
	gint64 _tmp14_;
	BoxesLibvirtMachineMachineStat _tmp15_;
	GVirDomainDiskStats* _tmp16_;
	gint64 _tmp17_;
	BoxesLibvirtMachineMachineStat* _tmp18_;
	GVirDomainDiskStats* _tmp19_;
	gint64 _tmp20_;
	BoxesLibvirtMachineMachineStat _tmp21_;
	GVirDomainDiskStats* _tmp22_;
	gint64 _tmp23_;
	GError* err;
	const gchar* _tmp24_;
	const gchar* _tmp25_;
	GError* _tmp26_;
	const gchar* _tmp27_;
	GError * _inner_error_;
};

struct _Block40Data {
	int _ref_count_;
	BoxesLibvirtMachine* self;
	BoxesLibvirtMachineMachineStat* stat;
	gpointer _async_data_;
};

struct _Block41Data {
	int _ref_count_;
	Block40Data * _data40_;
	GVirDomainInterface* net;
};

struct _BoxesLibvirtMachineUpdateNetStatData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	BoxesLibvirtMachine* self;
	GVirDomainInfo* info;
	BoxesLibvirtMachineMachineStat* stat;
	Block40Data* _data40_;
	BoxesLibvirtMachineMachineStat* _tmp0_;
	GVirDomainInfo* _tmp1_;
	GVirDomainState _tmp2_;
	Block41Data* _data41_;
	GVirDomainInterface* _tmp3_;
	GVirDomainInterface* _tmp4_;
	BoxesApp* _tmp5_;
	BoxesAsyncLauncher* _tmp6_;
	BoxesLibvirtMachineMachineStat prev;
	BoxesLibvirtMachineMachineStat* _tmp7_;
	gint _tmp7__length1;
	BoxesLibvirtMachineMachineStat _tmp8_;
	BoxesLibvirtMachineMachineStat _tmp9_;
	BoxesLibvirtMachineMachineStat _tmp10_;
	GVirDomainInterfaceStats* _tmp11_;
	BoxesLibvirtMachineMachineStat* _tmp12_;
	GVirDomainInterfaceStats* _tmp13_;
	gint64 _tmp14_;
	BoxesLibvirtMachineMachineStat _tmp15_;
	GVirDomainInterfaceStats* _tmp16_;
	gint64 _tmp17_;
	BoxesLibvirtMachineMachineStat* _tmp18_;
	GVirDomainInterfaceStats* _tmp19_;
	gint64 _tmp20_;
	BoxesLibvirtMachineMachineStat _tmp21_;
	GVirDomainInterfaceStats* _tmp22_;
	gint64 _tmp23_;
	GError* err;
	const gchar* _tmp24_;
	const gchar* _tmp25_;
	GError* _tmp26_;
	const gchar* _tmp27_;
	GError * _inner_error_;
};

struct _BoxesLibvirtMachineUpdateStatsData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	BoxesLibvirtMachine* self;
	gint64 now;
	gint64 _tmp0_;
	BoxesLibvirtMachineMachineStat stat;
	gint64 _tmp1_;
	BoxesLibvirtMachineMachineStat _tmp2_;
	GVirDomainInfo* info;
	GVirDomain* _tmp3_;
	GCancellable* _tmp4_;
	GVirDomainInfo* _tmp5_;
	GVirDomainInfo* _tmp6_;
	GVirDomainInfo* _tmp7_;
	GVirDomainInfo* _tmp8_;
	GVirDomainInfo* _tmp9_;
	BoxesLibvirtMachineMachineStat* _tmp10_;
	gint _tmp10__length1;
	BoxesLibvirtMachineMachineStat* _tmp11_;
	gint _tmp11__length1;
	BoxesLibvirtMachineMachineStat* _tmp12_;
	gint _tmp12__length1;
	BoxesLibvirtMachineMachineStat _tmp13_;
	BoxesLibvirtMachineMachineStat _tmp14_;
	GError* err;
	GError* _vala1_err;
	GError* _tmp15_;
	const gchar* _tmp16_;
	gdouble* _tmp17_;
	gdouble* _tmp18_;
	gdouble* _tmp19_;
	BoxesLibvirtMachineMachineStat* _tmp20_;
	gint _tmp20__length1;
	BoxesLibvirtMachineMachineStat* stat_collection;
	gint stat_collection_length1;
	gint _stat_collection_size_;
	gint stat_it;
	BoxesLibvirtMachineMachineStat _tmp21_;
	BoxesLibvirtMachineMachineStat _vala1_stat;
	gdouble* _tmp22_;
	gint _tmp22__length1;
	BoxesLibvirtMachineMachineStat _tmp23_;
	gdouble _tmp24_;
	gdouble* _tmp25_;
	gint _tmp25__length1;
	BoxesLibvirtMachineMachineStat _tmp26_;
	gdouble _tmp27_;
	BoxesLibvirtMachineMachineStat _tmp28_;
	gdouble _tmp29_;
	gdouble* _tmp30_;
	gint _tmp30__length1;
	BoxesLibvirtMachineMachineStat _tmp31_;
	gdouble _tmp32_;
	BoxesLibvirtMachineMachineStat _tmp33_;
	gdouble _tmp34_;
	GError * _inner_error_;
};

struct _Block42Data {
	int _ref_count_;
	BoxesLibvirtMachine* self;
	gboolean stats_updating;
};

struct _Block43Data {
	int _ref_count_;
	BoxesLibvirtMachine* self;
	GVirStream* stream;
	gpointer _async_data_;
};

struct _BoxesLibvirtMachineTakeScreenshotData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	BoxesLibvirtMachine* self;
	GdkPixbuf* result;
	Block43Data* _data43_;
	GVirDomainState state;
	GVirDomainInfo* _tmp0_;
	GVirDomain* _tmp1_;
	GVirDomainInfo* _tmp2_;
	GVirDomainInfo* _tmp3_;
	GVirDomainInfo* _tmp4_;
	GVirDomainState _tmp5_;
	GError* _error_;
	const gchar* _tmp6_;
	const gchar* _tmp7_;
	gboolean _tmp8_;
	gboolean _tmp9_;
	GVirDomainState _tmp10_;
	GVirDomainState _tmp11_;
	GVirDomainState _tmp12_;
	GVirConnection* _tmp13_;
	GVirStream* _tmp14_;
	BoxesApp* _tmp15_;
	BoxesAsyncLauncher* _tmp16_;
	GdkPixbufLoader* loader;
	GdkPixbufLoader* _tmp17_;
	GInputStream* input_stream;
	GVirStream* _tmp18_;
	GInputStream* _tmp19_;
	GInputStream* _tmp20_;
	guint8* buffer;
	guint8* _tmp21_;
	gint buffer_length1;
	gint _buffer_size_;
	gssize length;
	gboolean _tmp22_;
	gssize _tmp23_;
	gssize _tmp24_;
	GInputStream* _tmp25_;
	guint8* _tmp26_;
	gint _tmp26__length1;
	gssize _tmp27_;
	GdkPixbufLoader* _tmp28_;
	guint8* _tmp29_;
	gint _tmp29__length1;
	gssize _tmp30_;
	GdkPixbufLoader* _tmp31_;
	GdkPixbufLoader* _tmp32_;
	GdkPixbuf* _tmp33_;
	GdkPixbuf* _tmp34_;
	GError * _inner_error_;
};

struct _Block44Data {
	int _ref_count_;
	BoxesLibvirtMachine* self;
	GVirDomain* domain;
};

struct _BoxesLibvirtMachineSaveRealData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	BoxesLibvirtMachine* self;
	GVirDomain* _tmp0_;
	GError * _inner_error_;
};

struct _BoxesLibvirtMachineSuspendData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	BoxesLibvirtMachine* self;
	gboolean _tmp0_;
	gboolean _tmp1_;
	GVirDomain* _tmp2_;
	GError * _inner_error_;
};

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;
	GtkStack* below_bin;
	GSettings* settings;
};

struct _BoxesAppWindowClass {
	GtkApplicationWindowClass parent_class;
};

struct _BoxesLibvirtMachineStartData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	BoxesLibvirtMachine* self;
	BoxesMachineConnectFlags flags;
	GCancellable* cancellable;
	BoxesMachineMachineState _tmp0_;
	BoxesMachineMachineState _tmp1_;
	BoxesMachineMachineState _tmp2_;
	BoxesMachineMachineState _tmp3_;
	GVirDomain* _tmp4_;
	GCancellable* _tmp5_;
	BoxesMachineMachineState _tmp6_;
	BoxesMachineMachineState _tmp7_;
	GVirDomain* _tmp8_;
	GCancellable* _tmp9_;
	gboolean _tmp10_;
	GVirDomain* _tmp11_;
	gboolean _tmp12_;
	BoxesMachineConnectFlags _tmp13_;
	gboolean restore;
	gboolean _tmp14_;
	BoxesAppWindow* _tmp15_;
	BoxesAppWindow* _tmp16_;
	BoxesTopbar* _tmp17_;
	const gchar* _tmp18_;
	const gchar* _tmp19_;
	gchar* _tmp20_;
	gchar* _tmp21_;
	BoxesAppWindow* _tmp22_;
	BoxesAppWindow* _tmp23_;
	BoxesTopbar* _tmp24_;
	const gchar* _tmp25_;
	const gchar* _tmp26_;
	gchar* _tmp27_;
	gchar* _tmp28_;
	GVirDomain* _tmp29_;
	BoxesMachineConnectFlags _tmp30_;
	GVirDomainStartFlags _tmp31_;
	GCancellable* _tmp32_;
	GError* _error_;
	const gchar* _tmp33_;
	const gchar* _tmp34_;
	GError* _vala1__error_;
	gboolean _tmp35_;
	GError* _tmp36_;
	const gchar* _tmp37_;
	GError* _tmp38_;
	GError* _tmp39_;
	const gchar* _tmp40_;
	GError* _tmp41_;
	gboolean _tmp42_;
	GVirDomain* _tmp43_;
	GError* _vala2__error_;
	const gchar* _tmp44_;
	const gchar* _tmp45_;
	GError* _tmp46_;
	const gchar* _tmp47_;
	GError * _inner_error_;
};

struct _Block45Data {
	int _ref_count_;
	BoxesLibvirtMachine* self;
	gulong state_id;
	BoxesNotification* notification;
};

typedef void (*BoxesNotificationOKFunc) (void* user_data);
typedef void (*BoxesNotificationDismissFunc) (void* user_data);
struct _Block46Data {
	int _ref_count_;
	BoxesLibvirtMachine* self;
	BoxesLibvirtMachine* clone_machine;
	gulong under_construct_id;
};

struct _BoxesLibvirtMachineCloneData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	BoxesLibvirtMachine* self;
	GVirConfigDomain* _tmp0_;
	const gchar* _tmp1_;
	const gchar* _tmp2_;
	Block46Data* _data46_;
	gchar* xml;
	GVirConfigDomain* _tmp3_;
	gchar* _tmp4_;
	GVirConfigDomain* config;
	const gchar* _tmp5_;
	GVirConfigDomain* _tmp6_;
	GVirConfigDomain* _tmp7_;
	const gchar* _tmp8_;
	GVirStorageVol* _tmp9_;
	const gchar* _tmp10_;
	BoxesLibvirtClonedMedia* media;
	GVirConfigDomain* _tmp11_;
	BoxesLibvirtClonedMedia* _tmp12_;
	BoxesVMCreator* vm_cloner;
	BoxesLibvirtClonedMedia* _tmp13_;
	BoxesVMCreator* _tmp14_;
	BoxesVMCreator* _tmp15_;
	BoxesLibvirtMachine* _tmp16_;
	BoxesVMCreator* _tmp17_;
	BoxesLibvirtMachine* _tmp18_;
	BoxesBoxConfig* _tmp19_;
	gint64 _tmp20_;
	gint64 _tmp21_;
	BoxesLibvirtMachine* _tmp22_;
	gulong _tmp23_;
	GError* _error_;
	GVirConfigDomain* _tmp24_;
	const gchar* _tmp25_;
	const gchar* _tmp26_;
	GError* _tmp27_;
	const gchar* _tmp28_;
	GError * _inner_error_;
};

struct _BoxesLibvirtMachineCreateSnapshotData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	BoxesLibvirtMachine* self;
	gchar* description_prefix;
	GVirDomainSnapshot* result;
	GVirConfigDomainSnapshot* config;
	GVirConfigDomainSnapshot* _tmp0_;
	GDateTime* now;
	GDateTime* _tmp1_;
	gchar* _tmp2_;
	gchar* _tmp3_;
	const gchar* _tmp4_;
	gchar* _tmp5_;
	gchar* _tmp6_;
	gchar* _tmp7_;
	gchar* _tmp8_;
	GVirDomainSnapshot* _tmp9_;
	GVirDomain* _tmp10_;
	GVirDomainSnapshot* _tmp11_;
	GVirDomainSnapshot* _tmp12_;
	GError * _inner_error_;
};

struct _Block47Data {
	int _ref_count_;
	BoxesLibvirtMachine* self;
	gpointer _async_data_;
};

struct _BoxesLibvirtMachineWaitForSaveData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	BoxesLibvirtMachine* self;
	Block47Data* _data47_;
	gboolean _tmp0_;
	gulong state_notify_id;
	gulong _tmp1_;
	gulong cancelled_id;
	GCancellable* _tmp2_;
	GCancellable* _tmp3_;
	gulong _tmp4_;
	const gchar* _tmp5_;
	const gchar* _tmp6_;
	gulong _tmp7_;
	GCancellable* _tmp8_;
	GCancellable* _tmp9_;
	gulong _tmp10_;
};


static gpointer boxes_libvirt_machine_parent_class = NULL;
extern BoxesApp* boxes_app_app;

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_libvirt_machine_get_type (void) G_GNUC_CONST;
GType boxes_libvirt_machine_properties_get_type (void) G_GNUC_CONST;
gpointer boxes_vm_creator_ref (gpointer instance);
void boxes_vm_creator_unref (gpointer instance);
GParamSpec* boxes_param_spec_vm_creator (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
void boxes_value_set_vm_creator (GValue* value, gpointer v_object);
void boxes_value_take_vm_creator (GValue* value, gpointer v_object);
gpointer boxes_value_get_vm_creator (const GValue* value);
GType boxes_vm_creator_get_type (void) G_GNUC_CONST;
static GType boxes_libvirt_machine_machine_stat_get_type (void) G_GNUC_CONST G_GNUC_UNUSED;
static BoxesLibvirtMachineMachineStat* boxes_libvirt_machine_machine_stat_dup (const BoxesLibvirtMachineMachineStat* self);
static void boxes_libvirt_machine_machine_stat_free (BoxesLibvirtMachineMachineStat* self);
static void boxes_libvirt_machine_machine_stat_copy (const BoxesLibvirtMachineMachineStat* self, BoxesLibvirtMachineMachineStat* dest);
static void boxes_libvirt_machine_machine_stat_destroy (BoxesLibvirtMachineMachineStat* self);
#define BOXES_LIBVIRT_MACHINE_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), BOXES_TYPE_LIBVIRT_MACHINE, BoxesLibvirtMachinePrivate))
static void _vala_BoxesLibvirtMachineMachineStat_array_free (BoxesLibvirtMachineMachineStat * array, gint array_length);
static void _vala_BoxesBoxConfigSavedProperty_array_free (BoxesBoxConfigSavedProperty * array, gint array_length);
#define BOXES_LIBVIRT_MACHINE_STATS_SIZE 20
static void boxes_libvirt_machine_real_disconnect_display (BoxesMachine* base);
void boxes_machine_disconnect_display (BoxesMachine* self);
static void boxes_libvirt_machine_real_connect_display_data_free (gpointer _data);
static void boxes_libvirt_machine_real_connect_display (BoxesMachine* base, BoxesMachineConnectFlags flags, GAsyncReadyCallback _callback_, gpointer _user_data_);
static gboolean boxes_libvirt_machine_real_connect_display_co (BoxesLibvirtMachineConnectDisplayData* _data_);
GCancellable* boxes_machine_get_connecting_cancellable (BoxesMachine* self);
static void boxes_libvirt_machine_wait_for_save (BoxesLibvirtMachine* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
static void boxes_libvirt_machine_wait_for_save_finish (BoxesLibvirtMachine* self, GAsyncResult* _res_);
static void boxes_libvirt_machine_connect_display_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_);
void boxes_libvirt_machine_start (BoxesLibvirtMachine* self, BoxesMachineConnectFlags flags, GCancellable* cancellable, GAsyncReadyCallback _callback_, gpointer _user_data_);
void boxes_libvirt_machine_start_finish (BoxesLibvirtMachine* self, GAsyncResult* _res_, GError** error);
gboolean boxes_libvirt_machine_update_display (BoxesLibvirtMachine* self, GError** error);
static gint ____lambda166_ (BoxesLibvirtMachine* self);
GVirDomain* boxes_libvirt_machine_get_domain (BoxesLibvirtMachine* self);
const gchar* boxes_collection_item_get_name (BoxesCollectionItem* self);
static gint _____lambda166__boxes_display_open_fd_func (gpointer self);
GType boxes_display_get_type (void) G_GNUC_CONST;
BoxesDisplay* boxes_machine_get_display (BoxesMachine* self);
void boxes_display_connect_it (BoxesDisplay* self, BoxesDisplayOpenFDFunc open_fd, void* open_fd_target, GDestroyNotify open_fd_target_destroy_notify, GError** error);
void boxes_machine_show_display (BoxesMachine* self);
void boxes_display_set_enable_audio (BoxesDisplay* self, gboolean enable);
void boxes_libvirt_machine_update_domain_config (BoxesLibvirtMachine* self);
void boxes_libvirt_machine_set_domain_config (BoxesLibvirtMachine* self, GVirConfigDomain* value);
GVirStorageVol* boxes_get_storage_volume (GVirConnection* connection, GVirDomain* domain);
GVirConnection* boxes_libvirt_machine_get_connection (BoxesLibvirtMachine* self);
void boxes_libvirt_machine_set_storage_volume (BoxesLibvirtMachine* self, GVirStorageVol* value);
static void boxes_libvirt_machine_reconnect_display (BoxesLibvirtMachine* self);
GType boxes_app_window_get_type (void) G_GNUC_CONST;
BoxesAppWindow* boxes_machine_get_window (BoxesMachine* self);
void boxes_machine_set_window (BoxesMachine* self, BoxesAppWindow* value);
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);
static void boxes_libvirt_machine_construct_data_free (gpointer _data);
void boxes_libvirt_machine_new (BoxesCollectionSource* source, GVirConnection* connection, GVirDomain* domain, GAsyncReadyCallback _callback_, gpointer _user_data_);
BoxesLibvirtMachine* boxes_libvirt_machine_new_finish (GAsyncResult* _res_, GError** error);
void boxes_libvirt_machine_construct (GType object_type, BoxesCollectionSource* source, GVirConnection* connection, GVirDomain* domain, GAsyncReadyCallback _callback_, gpointer _user_data_);
BoxesLibvirtMachine* boxes_libvirt_machine_construct_finish (GAsyncResult* _res_, GError** error);
static gboolean boxes_libvirt_machine_construct_co (BoxesLibvirtMachineNewData* _data_);
BoxesMachine* boxes_machine_construct (GType object_type, BoxesCollectionSource* source, const gchar* name, const gchar* uuid);
void boxes_libvirt_machine_set_connection (BoxesLibvirtMachine* self, GVirConnection* value);
void boxes_libvirt_machine_set_domain (BoxesLibvirtMachine* self, GVirDomain* value);
BoxesLibvirtMachineProperties* boxes_libvirt_machine_properties_new (BoxesLibvirtMachine* machine);
BoxesLibvirtMachineProperties* boxes_libvirt_machine_properties_construct (GType object_type, BoxesLibvirtMachine* machine);
static void _vala_GVirDomainInfo_free (GVirDomainInfo* self);
GType boxes_machine_machine_state_get_type (void) G_GNUC_CONST;
void boxes_machine_set_state (BoxesMachine* self, BoxesMachineMachineState value);
static void boxes_libvirt_machine_set_stats_enable (BoxesLibvirtMachine* self, gboolean enable);
static void __lambda167_ (BoxesLibvirtMachine* self);
static void ___lambda167__gvir_domain_started (GVirDomain* _sender, gpointer self);
static void __lambda168_ (BoxesLibvirtMachine* self);
static void ___lambda168__gvir_domain_suspended (GVirDomain* _sender, gpointer self);
static void __lambda169_ (BoxesLibvirtMachine* self);
static void ___lambda169__gvir_domain_resumed (GVirDomain* _sender, gpointer self);
static void __lambda170_ (BoxesLibvirtMachine* self);
static void ___lambda170__gvir_domain_stopped (GVirDomain* _sender, gpointer self);
static void __lambda171_ (BoxesLibvirtMachine* self);
static void ___lambda171__gvir_domain_pmsuspended (GVirDomain* _sender, gpointer self);
static void __lambda172_ (BoxesLibvirtMachine* self);
BoxesMachineMachineState boxes_machine_get_state (BoxesMachine* self);
static void ___lambda172__g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self);
static void _boxes_libvirt_machine_update_domain_config_gvir_domain_updated (GVirDomain* _sender, gpointer self);
void boxes_machine_load_screenshot (BoxesMachine* self);
void boxes_machine_set_screenshot_enable (BoxesMachine* self, gboolean enable);
void boxes_get_system_virt_connection (GAsyncReadyCallback _callback_, gpointer _user_data_);
GVirConnection* boxes_get_system_virt_connection_finish (GAsyncResult* _res_, GError** error);
static void boxes_libvirt_machine_new_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_);
void boxes_machine_update_status (BoxesMachine* self);
static void boxes_libvirt_machine_update_info (BoxesLibvirtMachine* self);
static void _boxes_libvirt_machine_update_info_g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self);
static void boxes_libvirt_machine_update_cpu_stat (BoxesLibvirtMachine* self, GVirDomainInfo* info, BoxesLibvirtMachineMachineStat* stat);
static void boxes_libvirt_machine_update_mem_stat (BoxesLibvirtMachine* self, GVirDomainInfo* info, BoxesLibvirtMachineMachineStat* stat);
static void boxes_libvirt_machine_update_io_stat_data_free (gpointer _data);
static GVirDomainInfo* _vala_GVirDomainInfo_copy (GVirDomainInfo* self);
static void boxes_libvirt_machine_update_io_stat (BoxesLibvirtMachine* self, GVirDomainInfo* info, BoxesLibvirtMachineMachineStat* stat, GAsyncReadyCallback _callback_, gpointer _user_data_);
static void boxes_libvirt_machine_update_io_stat_finish (BoxesLibvirtMachine* self, GAsyncResult* _res_);
static gboolean boxes_libvirt_machine_update_io_stat_co (BoxesLibvirtMachineUpdateIoStatData* _data_);
static Block38Data* block38_data_ref (Block38Data* _data38_);
static void block38_data_unref (void * _userdata_);
static Block39Data* block39_data_ref (Block39Data* _data39_);
static void block39_data_unref (void * _userdata_);
GVirDomainDisk* boxes_libvirt_machine_get_domain_disk (BoxesLibvirtMachine* self, GError** error);
GType boxes_app_get_type (void) G_GNUC_CONST;
GType boxes_collection_get_type (void) G_GNUC_CONST;
static void ___lambda159_ (Block39Data* _data39_, GError** error);
static void _vala_GVirDomainDiskStats_free (GVirDomainDiskStats* self);
static void ____lambda159__boxes_async_launcher_run_in_thread_func (gpointer self, GError** error);
static void boxes_libvirt_machine_update_io_stat_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_);
static void boxes_libvirt_machine_update_net_stat_data_free (gpointer _data);
static void boxes_libvirt_machine_update_net_stat (BoxesLibvirtMachine* self, GVirDomainInfo* info, BoxesLibvirtMachineMachineStat* stat, GAsyncReadyCallback _callback_, gpointer _user_data_);
static void boxes_libvirt_machine_update_net_stat_finish (BoxesLibvirtMachine* self, GAsyncResult* _res_);
static gboolean boxes_libvirt_machine_update_net_stat_co (BoxesLibvirtMachineUpdateNetStatData* _data_);
static Block40Data* block40_data_ref (Block40Data* _data40_);
static void block40_data_unref (void * _userdata_);
static Block41Data* block41_data_ref (Block41Data* _data41_);
static void block41_data_unref (void * _userdata_);
static GVirDomainInterface* boxes_libvirt_machine_get_domain_network_interface (BoxesLibvirtMachine* self, GError** error);
static void ___lambda160_ (Block41Data* _data41_, GError** error);
static void _vala_GVirDomainInterfaceStats_free (GVirDomainInterfaceStats* self);
static void ____lambda160__boxes_async_launcher_run_in_thread_func (gpointer self, GError** error);
static void boxes_libvirt_machine_update_net_stat_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_);
static void boxes_libvirt_machine_update_stats_data_free (gpointer _data);
static void boxes_libvirt_machine_update_stats (BoxesLibvirtMachine* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
static void boxes_libvirt_machine_update_stats_finish (BoxesLibvirtMachine* self, GAsyncResult* _res_);
static gboolean boxes_libvirt_machine_update_stats_co (BoxesLibvirtMachineUpdateStatsData* _data_);
static void boxes_libvirt_machine_update_stats_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_);
static BoxesLibvirtMachineMachineStat* _vala_array_dup1 (BoxesLibvirtMachineMachineStat* self, int length);
static void _vala_array_add3 (BoxesLibvirtMachineMachineStat* * array, int* length, int* size, const BoxesLibvirtMachineMachineStat* value);
static void _vala_array_add4 (gdouble* * array, int* length, int* size, gdouble value);
static void _vala_array_add5 (gdouble* * array, int* length, int* size, gdouble value);
static void _vala_array_add6 (gdouble* * array, int* length, int* size, gdouble value);
static Block42Data* block42_data_ref (Block42Data* _data42_);
static void block42_data_unref (void * _userdata_);
static gboolean ___lambda158_ (Block42Data* _data42_);
static void __lambda161_ (Block42Data* _data42_);
static void ___lambda161__gasync_ready_callback (GObject* source_object, GAsyncResult* res, gpointer self);
static gboolean ____lambda158__gsource_func (gpointer self);
static GList* boxes_libvirt_machine_real_get_properties (BoxesMachine* base, BoxesPropertiesPage page);
GList* boxes_iproperties_provider_get_properties (BoxesIPropertiesProvider* self, BoxesPropertiesPage page);
GList* boxes_display_get_properties (BoxesDisplay* self, BoxesPropertiesPage page);
static void _g_object_unref0_ (gpointer var);
static inline void _g_list_free__g_object_unref0_ (GList* self);
static BoxesDisplay* boxes_libvirt_machine_create_display (BoxesLibvirtMachine* self, GError** error);
void boxes_machine_set_display (BoxesMachine* self, BoxesDisplay* value);
GVirConfigDomain* boxes_libvirt_machine_get_domain_config (BoxesLibvirtMachine* self);
gchar* boxes_extract_xpath (const gchar* xmldoc, const gchar* xpath, gboolean required, GError** error);
BoxesSpiceDisplay* boxes_spice_display_new (BoxesMachine* machine, BoxesBoxConfig* config, const gchar* host, gint port, gint tls_port, const gchar* host_subject);
BoxesSpiceDisplay* boxes_spice_display_construct (GType object_type, BoxesMachine* machine, BoxesBoxConfig* config, const gchar* host, gint port, gint tls_port, const gchar* host_subject);
GType boxes_spice_display_get_type (void) G_GNUC_CONST;
BoxesSpiceDisplay* boxes_spice_display_new_priv (BoxesMachine* machine, BoxesBoxConfig* config);
BoxesSpiceDisplay* boxes_spice_display_construct_priv (GType object_type, BoxesMachine* machine, BoxesBoxConfig* config);
BoxesVncDisplay* boxes_vnc_display_new (BoxesBoxConfig* config, const gchar* host, gint port);
BoxesVncDisplay* boxes_vnc_display_construct (GType object_type, BoxesBoxConfig* config, const gchar* host, gint port);
GType boxes_vnc_display_get_type (void) G_GNUC_CONST;
static void boxes_libvirt_machine_real_take_screenshot_data_free (gpointer _data);
static void boxes_libvirt_machine_real_take_screenshot (BoxesMachine* base, GAsyncReadyCallback _callback_, gpointer _user_data_);
static gboolean boxes_libvirt_machine_real_take_screenshot_co (BoxesLibvirtMachineTakeScreenshotData* _data_);
static Block43Data* block43_data_ref (Block43Data* _data43_);
static void block43_data_unref (void * _userdata_);
static void boxes_libvirt_machine_take_screenshot_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_);
static void __lambda173_ (Block43Data* _data43_, GError** error);
static void ___lambda173__boxes_async_launcher_run_in_thread_func (gpointer self, GError** error);
static void boxes_libvirt_machine_real_delete (BoxesMachine* base, gboolean by_user);
void boxes_machine_delete (BoxesMachine* self, gboolean by_user);
static Block44Data* block44_data_ref (Block44Data* _data44_);
static void block44_data_unref (void * _userdata_);
static void ___lambda162_ (Block44Data* _data44_, GError** error);
GVirStorageVol* boxes_libvirt_machine_get_storage_volume (BoxesLibvirtMachine* self);
static void ____lambda162__boxes_async_launcher_run_in_thread_func (gpointer self, GError** error);
static void boxes_libvirt_machine_real_save_real_data_free (gpointer _data);
static void boxes_libvirt_machine_real_save_real (BoxesMachine* base, GAsyncReadyCallback _callback_, gpointer _user_data_);
static gboolean boxes_libvirt_machine_real_save_real_co (BoxesLibvirtMachineSaveRealData* _data_);
static void boxes_libvirt_machine_save_real_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_);
static void boxes_libvirt_machine_suspend_data_free (gpointer _data);
void boxes_libvirt_machine_suspend (BoxesLibvirtMachine* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
void boxes_libvirt_machine_suspend_finish (BoxesLibvirtMachine* self, GAsyncResult* _res_, GError** error);
static gboolean boxes_libvirt_machine_suspend_co (BoxesLibvirtMachineSuspendData* _data_);
gboolean boxes_libvirt_machine_get_save_on_quit (BoxesLibvirtMachine* self);
void boxes_machine_save (BoxesMachine* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
void boxes_machine_save_finish (BoxesMachine* self, GAsyncResult* _res_, GError** error);
static void boxes_libvirt_machine_suspend_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_);
void boxes_libvirt_machine_force_shutdown (BoxesLibvirtMachine* self);
void boxes_libvirt_machine_try_shutdown (BoxesLibvirtMachine* self);
static GVirDomainStartFlags boxes_libvirt_machine_connect_flags_to_gvir (BoxesLibvirtMachine* self, BoxesMachineConnectFlags flags);
static void boxes_libvirt_machine_start_data_free (gpointer _data);
static gboolean boxes_libvirt_machine_start_co (BoxesLibvirtMachineStartData* _data_);
static void boxes_libvirt_machine_start_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_);
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;
void boxes_topbar_set_status (BoxesTopbar* self, const gchar* value);
static void boxes_libvirt_machine_real_restart (BoxesMachine* base);
GType boxes_notification_get_type (void) G_GNUC_CONST;
static Block45Data* block45_data_ref (Block45Data* _data45_);
static void block45_data_unref (void * _userdata_);
static void ___lambda110_ (BoxesLibvirtMachine* self, GObject* obj, GAsyncResult* res);
void boxes_machine_restart (BoxesMachine* self);
static void ____lambda110__gasync_ready_callback (GObject* source_object, GAsyncResult* res, gpointer self);
static void __lambda111_ (Block45Data* _data45_);
static void ___lambda112_ (BoxesLibvirtMachine* self, GObject* obj, GAsyncResult* res);
static void ____lambda112__gasync_ready_callback (GObject* source_object, GAsyncResult* res, gpointer self);
void boxes_notification_dismiss (BoxesNotification* self);
static void ___lambda111__g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self);
static gboolean __lambda113_ (Block45Data* _data45_);
static void __lambda114_ (Block45Data* _data45_);
static void ___lambda114__boxes_notification_ok_func (gpointer self);
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 gboolean ___lambda113__gsource_func (gpointer self);
static void boxes_libvirt_machine_real_clone_data_free (gpointer _data);
static void boxes_libvirt_machine_real_clone (BoxesMachine* base, GAsyncReadyCallback _callback_, gpointer _user_data_);
static gboolean boxes_libvirt_machine_real_clone_co (BoxesLibvirtMachineCloneData* _data_);
void boxes_machine_set_can_delete (BoxesMachine* self, gboolean value);
static Block46Data* block46_data_ref (Block46Data* _data46_);
static void block46_data_unref (void * _userdata_);
GType boxes_installer_media_get_type (void) G_GNUC_CONST;
GType boxes_installed_media_get_type (void) G_GNUC_CONST;
GType boxes_libvirt_media_get_type (void) G_GNUC_CONST;
GType boxes_libvirt_cloned_media_get_type (void) G_GNUC_CONST;
BoxesLibvirtClonedMedia* boxes_libvirt_cloned_media_new (const gchar* path, GVirConfigDomain* domain_config, GError** error);
BoxesLibvirtClonedMedia* boxes_libvirt_cloned_media_construct (GType object_type, const gchar* path, GVirConfigDomain* domain_config, GError** error);
BoxesVMCreator* boxes_installer_media_get_vm_creator (BoxesInstallerMedia* self);
void boxes_vm_creator_create_vm (BoxesVMCreator* self, GCancellable* cancellable, GAsyncReadyCallback _callback_, gpointer _user_data_);
BoxesLibvirtMachine* boxes_vm_creator_create_vm_finish (BoxesVMCreator* self, GAsyncResult* _res_, GError** error);
static void boxes_libvirt_machine_clone_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_);
void boxes_vm_creator_launch_vm (BoxesVMCreator* self, BoxesLibvirtMachine* machine, gint64 access_last_time, GError** error);
static void ___lambda174_ (Block46Data* _data46_);
gboolean boxes_machine_get_under_construction (BoxesMachine* self);
static void ____lambda174__g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self);
gchar* boxes_libvirt_machine_get_ip_address (BoxesLibvirtMachine* self);
gboolean boxes_machine_get_is_on (BoxesMachine* self);
static gchar* boxes_libvirt_machine_get_mac_address (BoxesLibvirtMachine* self);
static void boxes_libvirt_machine_create_snapshot_data_free (gpointer _data);
void boxes_libvirt_machine_create_snapshot (BoxesLibvirtMachine* self, const gchar* description_prefix, GAsyncReadyCallback _callback_, gpointer _user_data_);
GVirDomainSnapshot* boxes_libvirt_machine_create_snapshot_finish (BoxesLibvirtMachine* self, GAsyncResult* _res_, GError** error);
static gboolean boxes_libvirt_machine_create_snapshot_co (BoxesLibvirtMachineCreateSnapshotData* _data_);
static void boxes_libvirt_machine_create_snapshot_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_);
static void boxes_libvirt_machine_wait_for_save_data_free (gpointer _data);
static gboolean boxes_libvirt_machine_wait_for_save_co (BoxesLibvirtMachineWaitForSaveData* _data_);
static Block47Data* block47_data_ref (Block47Data* _data47_);
static void block47_data_unref (void * _userdata_);
static void __lambda163_ (Block47Data* _data47_);
static void ___lambda163__g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self);
static void __lambda164_ (Block47Data* _data47_);
static gboolean __lambda165_ (Block47Data* _data47_);
static gboolean ___lambda165__gsource_func (gpointer self);
static void ___lambda164__g_cancellable_cancelled (GCancellable* _sender, gpointer self);
static void boxes_libvirt_machine_real_update_status (BoxesMachine* base);
const gchar* boxes_machine_get_status (BoxesMachine* self);
gboolean boxes_vm_configurator_is_install_config (GVirConfigDomain* domain);
void boxes_machine_set_status (BoxesMachine* self, const gchar* value);
gboolean boxes_vm_configurator_is_live_config (GVirConfigDomain* domain);
gboolean boxes_vm_configurator_is_libvirt_cloning_config (GVirConfigDomain* domain);
gboolean boxes_vm_configurator_is_import_config (GVirConfigDomain* domain);
gboolean boxes_machine_get_is_local (BoxesMachine* self);
void boxes_machine_set_info (BoxesMachine* self, const gchar* value);
BoxesVMCreator* boxes_libvirt_machine_get_vm_creator (BoxesLibvirtMachine* self);
void boxes_libvirt_machine_set_vm_creator (BoxesLibvirtMachine* self, BoxesVMCreator* value);
gboolean boxes_libvirt_machine_get_importing (BoxesLibvirtMachine* self);
void boxes_machine_set_under_construction (BoxesMachine* self, gboolean value);
GType boxes_vm_importer_get_type (void) G_GNUC_CONST;
void boxes_libvirt_machine_set_save_on_quit (BoxesLibvirtMachine* self, gboolean value);
GVirConnection* boxes_app_get_default_connection (BoxesApp* self);
gboolean boxes_libvirt_machine_get_run_in_bg (BoxesLibvirtMachine* self);
gboolean boxes_machine_get_should_autosave (BoxesMachine* self);
void boxes_libvirt_machine_set_run_in_bg (BoxesLibvirtMachine* self, gboolean value);
static GObject * boxes_libvirt_machine_constructor (GType type, guint n_construct_properties, GObjectConstructParam * construct_properties);
static GVirDomainDiskStats* _vala_GVirDomainDiskStats_copy (GVirDomainDiskStats* self);
static GVirDomainInterfaceStats* _vala_GVirDomainInterfaceStats_copy (GVirDomainInterfaceStats* self);
static void boxes_libvirt_machine_finalize (GObject * obj);
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);
static void _vala_boxes_libvirt_machine_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec);
static void _vala_boxes_libvirt_machine_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec);

static GRegex* _tmp_regex_0 = NULL;

static void _vala_BoxesLibvirtMachineMachineStat_array_free (BoxesLibvirtMachineMachineStat * array, gint array_length) {
#line 126 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (array != NULL) {
#line 1397 "libvirt-machine.c"
		int i;
#line 126 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		for (i = 0; i < array_length; i = i + 1) {
#line 126 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			boxes_libvirt_machine_machine_stat_destroy (&array[i]);
#line 1403 "libvirt-machine.c"
		}
	}
#line 126 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_free (array);
#line 1408 "libvirt-machine.c"
}


static void _vala_BoxesBoxConfigSavedProperty_array_free (BoxesBoxConfigSavedProperty * array, gint array_length) {
#line 133 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (array != NULL) {
#line 1415 "libvirt-machine.c"
		int i;
#line 133 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		for (i = 0; i < array_length; i = i + 1) {
#line 133 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			boxes_box_config_saved_property_destroy (&array[i]);
#line 1421 "libvirt-machine.c"
		}
	}
#line 133 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_free (array);
#line 1426 "libvirt-machine.c"
}


static void boxes_libvirt_machine_real_disconnect_display (BoxesMachine* base) {
	BoxesLibvirtMachine * self;
#line 61 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self = (BoxesLibvirtMachine*) base;
#line 62 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	((BoxesMachine*) self)->stay_on_display = FALSE;
#line 64 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	BOXES_MACHINE_CLASS (boxes_libvirt_machine_parent_class)->disconnect_display (G_TYPE_CHECK_INSTANCE_CAST (self, BOXES_TYPE_MACHINE, BoxesMachine));
#line 1438 "libvirt-machine.c"
}


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


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


static void boxes_libvirt_machine_real_connect_display (BoxesMachine* base, BoxesMachineConnectFlags flags, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	BoxesLibvirtMachine * self;
	BoxesLibvirtMachineConnectDisplayData* _data_;
	BoxesLibvirtMachine* _tmp0_;
	BoxesMachineConnectFlags _tmp1_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self = (BoxesLibvirtMachine*) base;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_slice_new0 (BoxesLibvirtMachineConnectDisplayData);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_task_set_task_data (_data_->_async_result, _data_, boxes_libvirt_machine_real_connect_display_data_free);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self = _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = flags;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->flags = _tmp1_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_real_connect_display_co (_data_);
#line 1483 "libvirt-machine.c"
}


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


static void boxes_libvirt_machine_connect_display_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_) {
	BoxesLibvirtMachineConnectDisplayData* _data_;
#line 70 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = _user_data_;
#line 70 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_source_object_ = source_object;
#line 70 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_res_ = _res_;
#line 70 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_real_connect_display_co (_data_);
#line 1510 "libvirt-machine.c"
}


static gint ____lambda166_ (BoxesLibvirtMachine* self) {
	gint result = 0;
	gint _tmp7_ = 0;
	GError * _inner_error_ = NULL;
	{
		gint _tmp0_ = 0;
		GVirDomain* _tmp1_;
		gint _tmp2_;
#line 91 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp1_ = self->priv->_domain;
#line 91 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp2_ = gvir_domain_open_graphics_fd (_tmp1_, (guint) 0, (guint) 0, &_inner_error_);
#line 91 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp0_ = _tmp2_;
#line 91 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 1530 "libvirt-machine.c"
			goto __catch16_g_error;
		}
#line 91 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		result = _tmp0_;
#line 91 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return result;
#line 1537 "libvirt-machine.c"
	}
	goto __finally16;
	__catch16_g_error:
	{
		GError* _error_ = NULL;
		const gchar* _tmp3_;
		const gchar* _tmp4_;
		GError* _tmp5_;
		const gchar* _tmp6_;
#line 90 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_error_ = _inner_error_;
#line 90 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_inner_error_ = NULL;
#line 93 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp3_ = boxes_collection_item_get_name ((BoxesCollectionItem*) self);
#line 93 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp4_ = _tmp3_;
#line 93 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp5_ = _error_;
#line 93 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp6_ = _tmp5_->message;
#line 93 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_critical ("libvirt-machine.vala:93: Failed to open graphics for %s: %s", _tmp4_, _tmp6_);
#line 95 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		result = -1;
#line 95 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_error_free0 (_error_);
#line 95 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return result;
#line 1567 "libvirt-machine.c"
	}
	__finally16:
#line 90 "/home/fborges/checkout/gnome-boxes/src/libvirt-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 90 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_clear_error (&_inner_error_);
#line 90 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return _tmp7_;
#line 1576 "libvirt-machine.c"
}


static gint _____lambda166__boxes_display_open_fd_func (gpointer self) {
	gint result;
	result = ____lambda166_ ((BoxesLibvirtMachine*) self);
#line 89 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 1585 "libvirt-machine.c"
}


static gboolean boxes_libvirt_machine_real_connect_display_co (BoxesLibvirtMachineConnectDisplayData* _data_) {
#line 67 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	switch (_data_->_state_) {
#line 67 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 0:
#line 1594 "libvirt-machine.c"
		goto _state_0;
#line 67 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 1:
#line 1598 "libvirt-machine.c"
		goto _state_1;
#line 67 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 2:
#line 1602 "libvirt-machine.c"
		goto _state_2;
		default:
#line 67 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_assert_not_reached ();
#line 1607 "libvirt-machine.c"
	}
	_state_0:
#line 68 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp0_ = boxes_machine_get_connecting_cancellable ((BoxesMachine*) _data_->self);
#line 68 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp1_ = _data_->_tmp0_;
#line 68 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_cancellable_reset (_data_->_tmp1_);
#line 70 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_state_ = 1;
#line 70 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_wait_for_save (_data_->self, boxes_libvirt_machine_connect_display_ready, _data_);
#line 70 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return FALSE;
#line 1622 "libvirt-machine.c"
	_state_1:
#line 70 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_wait_for_save_finish (_data_->self, _data_->_res_);
#line 72 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp2_ = boxes_machine_get_connecting_cancellable ((BoxesMachine*) _data_->self);
#line 72 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp3_ = _data_->_tmp2_;
#line 72 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp4_ = g_cancellable_is_cancelled (_data_->_tmp3_);
#line 72 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_tmp4_) {
#line 73 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp5_ = boxes_machine_get_connecting_cancellable ((BoxesMachine*) _data_->self);
#line 73 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp6_ = _data_->_tmp5_;
#line 73 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_cancellable_reset (_data_->_tmp6_);
#line 75 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 75 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_state_ != 0) {
#line 75 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 75 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 1648 "libvirt-machine.c"
			}
		}
#line 75 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 75 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 1655 "libvirt-machine.c"
	}
#line 78 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp7_ = _data_->flags;
#line 78 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp8_ = boxes_machine_get_connecting_cancellable ((BoxesMachine*) _data_->self);
#line 78 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp9_ = _data_->_tmp8_;
#line 78 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_state_ = 2;
#line 78 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_start (_data_->self, _data_->_tmp7_, _data_->_tmp9_, boxes_libvirt_machine_connect_display_ready, _data_);
#line 78 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return FALSE;
#line 1669 "libvirt-machine.c"
	_state_2:
#line 78 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_start_finish (_data_->self, _data_->_res_, &_data_->_inner_error_);
#line 78 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 78 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 78 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 78 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 1681 "libvirt-machine.c"
	}
#line 79 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp10_ = boxes_machine_get_connecting_cancellable ((BoxesMachine*) _data_->self);
#line 79 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp11_ = _data_->_tmp10_;
#line 79 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp12_ = g_cancellable_is_cancelled (_data_->_tmp11_);
#line 79 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_tmp12_) {
#line 80 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp13_ = boxes_machine_get_connecting_cancellable ((BoxesMachine*) _data_->self);
#line 80 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp14_ = _data_->_tmp13_;
#line 80 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_cancellable_reset (_data_->_tmp14_);
#line 82 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 82 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_state_ != 0) {
#line 82 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 82 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 1705 "libvirt-machine.c"
			}
		}
#line 82 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 82 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 1712 "libvirt-machine.c"
	}
#line 85 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp16_ = boxes_libvirt_machine_update_display (_data_->self, &_data_->_inner_error_);
#line 85 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp15_ = _data_->_tmp16_;
#line 85 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 85 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 85 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 85 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 1726 "libvirt-machine.c"
	}
#line 85 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_tmp15_) {
#line 86 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->open_fd = NULL;
#line 86 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->open_fd_target = NULL;
#line 86 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->open_fd_target_destroy_notify = NULL;
#line 88 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp17_ = ((BoxesMachine*) _data_->self)->source;
#line 88 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp18_ = boxes_collection_source_get_uri (_data_->_tmp17_);
#line 88 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp19_ = _data_->_tmp18_;
#line 88 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp20_ = _data_->_tmp19_;
#line 88 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp21_ = g_str_has_prefix (_data_->_tmp20_, "qemu+unix");
#line 88 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp22_ = _data_->_tmp21_;
#line 88 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_free0 (_data_->_tmp20_);
#line 88 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_tmp22_) {
#line 89 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			(_data_->open_fd_target_destroy_notify == NULL) ? NULL : (_data_->open_fd_target_destroy_notify (_data_->open_fd_target), NULL);
#line 89 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->open_fd = NULL;
#line 89 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->open_fd_target = NULL;
#line 89 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->open_fd_target_destroy_notify = NULL;
#line 89 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->open_fd = _____lambda166__boxes_display_open_fd_func;
#line 89 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->open_fd_target = g_object_ref (_data_->self);
#line 89 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->open_fd_target_destroy_notify = g_object_unref;
#line 1766 "libvirt-machine.c"
		}
#line 99 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp23_ = boxes_machine_get_display ((BoxesMachine*) _data_->self);
#line 99 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp24_ = _data_->_tmp23_;
#line 99 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp25_ = _data_->open_fd;
#line 99 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp25__target = _data_->open_fd_target;
#line 99 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp25__target_destroy_notify = _data_->open_fd_target_destroy_notify;
#line 99 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->open_fd = NULL;
#line 99 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->open_fd_target = NULL;
#line 99 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->open_fd_target_destroy_notify = NULL;
#line 99 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_display_connect_it (_data_->_tmp24_, _data_->_tmp25_, _data_->_tmp25__target, _data_->_tmp25__target_destroy_notify, &_data_->_inner_error_);
#line 99 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 99 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 99 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			(_data_->open_fd_target_destroy_notify == NULL) ? NULL : (_data_->open_fd_target_destroy_notify (_data_->open_fd_target), NULL);
#line 99 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->open_fd = NULL;
#line 99 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->open_fd_target = NULL;
#line 99 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->open_fd_target_destroy_notify = NULL;
#line 99 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_object_unref (_data_->_async_result);
#line 99 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			return FALSE;
#line 1802 "libvirt-machine.c"
		}
#line 85 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		(_data_->open_fd_target_destroy_notify == NULL) ? NULL : (_data_->open_fd_target_destroy_notify (_data_->open_fd_target), NULL);
#line 85 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->open_fd = NULL;
#line 85 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->open_fd_target = NULL;
#line 85 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->open_fd_target_destroy_notify = NULL;
#line 1812 "libvirt-machine.c"
	} else {
#line 101 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_machine_show_display ((BoxesMachine*) _data_->self);
#line 102 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp26_ = boxes_machine_get_display ((BoxesMachine*) _data_->self);
#line 102 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp27_ = _data_->_tmp26_;
#line 102 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_display_set_enable_audio (_data_->_tmp27_, TRUE);
#line 1822 "libvirt-machine.c"
	}
#line 67 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 67 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_state_ != 0) {
#line 67 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 67 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 1832 "libvirt-machine.c"
		}
	}
#line 67 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_object_unref (_data_->_async_result);
#line 67 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return FALSE;
#line 1839 "libvirt-machine.c"
}


void boxes_libvirt_machine_update_domain_config (BoxesLibvirtMachine* self) {
	GError * _inner_error_ = NULL;
#line 140 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (self != NULL);
#line 1847 "libvirt-machine.c"
	{
		GVirConfigDomain* _tmp0_ = NULL;
		GVirDomain* _tmp1_;
		GVirConfigDomain* _tmp2_;
		GVirConnection* _tmp3_;
		GVirDomain* _tmp4_;
		GVirStorageVol* _tmp5_;
		GVirStorageVol* _tmp6_;
#line 142 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp1_ = self->priv->_domain;
#line 142 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp2_ = gvir_domain_get_config (_tmp1_, (guint) GVIR_DOMAIN_XML_NONE, &_inner_error_);
#line 142 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp0_ = _tmp2_;
#line 142 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 1864 "libvirt-machine.c"
			goto __catch17_g_error;
		}
#line 142 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_set_domain_config (self, _tmp0_);
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp3_ = self->priv->_connection;
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp4_ = self->priv->_domain;
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp5_ = boxes_get_storage_volume (_tmp3_, _tmp4_);
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp6_ = _tmp5_;
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_set_storage_volume (self, _tmp6_);
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (_tmp6_);
#line 141 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (_tmp0_);
#line 1883 "libvirt-machine.c"
	}
	goto __finally17;
	__catch17_g_error:
	{
		GError* _error_ = NULL;
		GVirDomain* _tmp7_;
		const gchar* _tmp8_;
		GError* _tmp9_;
		const gchar* _tmp10_;
#line 141 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_error_ = _inner_error_;
#line 141 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_inner_error_ = NULL;
#line 145 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp7_ = self->priv->_domain;
#line 145 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp8_ = gvir_domain_get_name (_tmp7_);
#line 145 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp9_ = _error_;
#line 145 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp10_ = _tmp9_->message;
#line 145 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_critical ("libvirt-machine.vala:145: Failed to fetch configuration for domain '%s" \
"': %s", _tmp8_, _tmp10_);
#line 141 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_error_free0 (_error_);
#line 1909 "libvirt-machine.c"
	}
	__finally17:
#line 141 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 141 "/home/fborges/checkout/gnome-boxes/src/libvirt-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 141 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_clear_error (&_inner_error_);
#line 141 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 1920 "libvirt-machine.c"
	}
}


static void boxes_libvirt_machine_reconnect_display (BoxesLibvirtMachine* self) {
	BoxesDisplay* _tmp0_;
	BoxesDisplay* _tmp1_;
	BoxesAppWindow* current_window = NULL;
	BoxesAppWindow* _tmp2_;
	BoxesAppWindow* _tmp3_;
	BoxesAppWindow* _tmp4_;
	BoxesAppWindow* _tmp5_;
#line 149 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (self != NULL);
#line 151 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = boxes_machine_get_display ((BoxesMachine*) self);
#line 151 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _tmp0_;
#line 151 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp1_ == NULL) {
#line 152 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 1943 "libvirt-machine.c"
	}
#line 154 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = boxes_machine_get_window ((BoxesMachine*) self);
#line 154 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = _tmp2_;
#line 154 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp4_ = _g_object_ref0 (_tmp3_);
#line 154 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	current_window = _tmp4_;
#line 155 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_machine_disconnect_display ((BoxesMachine*) self);
#line 156 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp5_ = current_window;
#line 156 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_machine_set_window ((BoxesMachine*) self, _tmp5_);
#line 157 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_machine_connect_display ((BoxesMachine*) self, BOXES_MACHINE_CONNECT_FLAGS_NONE, NULL, NULL);
#line 149 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (current_window);
#line 1963 "libvirt-machine.c"
}


static void boxes_libvirt_machine_construct_data_free (gpointer _data) {
	BoxesLibvirtMachineNewData* _data_;
	_data_ = _data;
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->source);
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->connection);
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->domain);
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->self);
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_slice_free (BoxesLibvirtMachineNewData, _data_);
#line 1980 "libvirt-machine.c"
}


void boxes_libvirt_machine_construct (GType object_type, BoxesCollectionSource* source, GVirConnection* connection, GVirDomain* domain, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	BoxesLibvirtMachineNewData* _data_;
	BoxesCollectionSource* _tmp0_;
	BoxesCollectionSource* _tmp1_;
	GVirConnection* _tmp2_;
	GVirConnection* _tmp3_;
	GVirDomain* _tmp4_;
	GVirDomain* _tmp5_;
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_slice_new0 (BoxesLibvirtMachineNewData);
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_async_result = g_task_new (NULL, NULL, _callback_, _user_data_);
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_task_set_task_data (_data_->_async_result, _data_, boxes_libvirt_machine_construct_data_free);
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->object_type = object_type;
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = source;
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _g_object_ref0 (_tmp0_);
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->source);
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->source = _tmp1_;
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = connection;
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = _g_object_ref0 (_tmp2_);
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->connection);
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->connection = _tmp3_;
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp4_ = domain;
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp5_ = _g_object_ref0 (_tmp4_);
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->domain);
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->domain = _tmp5_;
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_construct_co (_data_);
#line 2026 "libvirt-machine.c"
}


BoxesLibvirtMachine* boxes_libvirt_machine_construct_finish (GAsyncResult* _res_, GError** error) {
	BoxesLibvirtMachine* result;
	BoxesLibvirtMachineNewData* _data_;
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_task_propagate_pointer (G_TASK (_res_), error);
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (NULL == _data_) {
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 2039 "libvirt-machine.c"
	}
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	result = _data_->self;
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self = NULL;
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 2047 "libvirt-machine.c"
}


static void _vala_GVirDomainInfo_free (GVirDomainInfo* self) {
#line 173 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_boxed_free (gvir_domain_info_get_type (), self);
#line 2054 "libvirt-machine.c"
}


static void __lambda167_ (BoxesLibvirtMachine* self) {
#line 205 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_machine_set_state ((BoxesMachine*) self, BOXES_MACHINE_MACHINE_STATE_RUNNING);
#line 2061 "libvirt-machine.c"
}


static void ___lambda167__gvir_domain_started (GVirDomain* _sender, gpointer self) {
#line 205 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	__lambda167_ ((BoxesLibvirtMachine*) self);
#line 2068 "libvirt-machine.c"
}


static void __lambda168_ (BoxesLibvirtMachine* self) {
#line 206 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_machine_set_state ((BoxesMachine*) self, BOXES_MACHINE_MACHINE_STATE_PAUSED);
#line 2075 "libvirt-machine.c"
}


static void ___lambda168__gvir_domain_suspended (GVirDomain* _sender, gpointer self) {
#line 206 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	__lambda168_ ((BoxesLibvirtMachine*) self);
#line 2082 "libvirt-machine.c"
}


static void __lambda169_ (BoxesLibvirtMachine* self) {
#line 207 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_machine_set_state ((BoxesMachine*) self, BOXES_MACHINE_MACHINE_STATE_RUNNING);
#line 2089 "libvirt-machine.c"
}


static void ___lambda169__gvir_domain_resumed (GVirDomain* _sender, gpointer self) {
#line 207 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	__lambda169_ ((BoxesLibvirtMachine*) self);
#line 2096 "libvirt-machine.c"
}


static void __lambda170_ (BoxesLibvirtMachine* self) {
	GVirDomain* _tmp0_;
	GSignalInvocationHint* _tmp1_;
	GQuark _tmp2_;
	GQuark _tmp3_;
#line 209 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = self->priv->_domain;
#line 209 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = g_signal_get_invocation_hint (_tmp0_);
#line 209 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = (*_tmp1_).detail;
#line 209 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = g_quark_from_string ("saved");
#line 209 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp2_ == _tmp3_) {
#line 210 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_machine_set_state ((BoxesMachine*) self, BOXES_MACHINE_MACHINE_STATE_SAVED);
#line 2117 "libvirt-machine.c"
	} else {
		gboolean _tmp4_;
#line 211 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp4_ = self->priv->force_stopped;
#line 211 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (_tmp4_) {
#line 212 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			self->priv->force_stopped = FALSE;
#line 213 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			boxes_machine_set_state ((BoxesMachine*) self, BOXES_MACHINE_MACHINE_STATE_FORCE_STOPPED);
#line 2128 "libvirt-machine.c"
		} else {
#line 215 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			boxes_machine_set_state ((BoxesMachine*) self, BOXES_MACHINE_MACHINE_STATE_STOPPED);
#line 2132 "libvirt-machine.c"
		}
	}
}


static void ___lambda170__gvir_domain_stopped (GVirDomain* _sender, gpointer self) {
#line 208 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	__lambda170_ ((BoxesLibvirtMachine*) self);
#line 2141 "libvirt-machine.c"
}


static void __lambda171_ (BoxesLibvirtMachine* self) {
#line 218 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_machine_set_state ((BoxesMachine*) self, BOXES_MACHINE_MACHINE_STATE_SLEEPING);
#line 2148 "libvirt-machine.c"
}


static void ___lambda171__gvir_domain_pmsuspended (GVirDomain* _sender, gpointer self) {
#line 217 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	__lambda171_ ((BoxesLibvirtMachine*) self);
#line 2155 "libvirt-machine.c"
}


static void __lambda172_ (BoxesLibvirtMachine* self) {
	BoxesMachineMachineState _tmp0_;
	BoxesMachineMachineState _tmp1_;
#line 221 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = boxes_machine_get_state ((BoxesMachine*) self);
#line 221 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _tmp0_;
#line 221 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp1_ == BOXES_MACHINE_MACHINE_STATE_RUNNING) {
#line 222 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_reconnect_display (self);
#line 223 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_set_stats_enable (self, TRUE);
#line 2172 "libvirt-machine.c"
	} else {
#line 225 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_set_stats_enable (self, FALSE);
#line 2176 "libvirt-machine.c"
	}
}


static void ___lambda172__g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self) {
#line 220 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	__lambda172_ ((BoxesLibvirtMachine*) self);
#line 2184 "libvirt-machine.c"
}


static void _boxes_libvirt_machine_update_domain_config_gvir_domain_updated (GVirDomain* _sender, gpointer self) {
#line 229 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_update_domain_config ((BoxesLibvirtMachine*) self);
#line 2191 "libvirt-machine.c"
}


static void boxes_libvirt_machine_new_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_) {
	BoxesLibvirtMachineNewData* _data_;
#line 236 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = _user_data_;
#line 236 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_source_object_ = source_object;
#line 236 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_res_ = _res_;
#line 236 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_construct_co (_data_);
#line 2205 "libvirt-machine.c"
}


static void _boxes_libvirt_machine_update_info_g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self) {
#line 243 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_update_info ((BoxesLibvirtMachine*) self);
#line 2212 "libvirt-machine.c"
}


static gboolean boxes_libvirt_machine_construct_co (BoxesLibvirtMachineNewData* _data_) {
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	switch (_data_->_state_) {
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 0:
#line 2221 "libvirt-machine.c"
		goto _state_0;
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 1:
#line 2225 "libvirt-machine.c"
		goto _state_1;
		default:
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_assert_not_reached ();
#line 2230 "libvirt-machine.c"
	}
	_state_0:
#line 163 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp0_ = _data_->domain;
#line 163 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp1_ = gvir_domain_get_config (_data_->_tmp0_, (guint) GVIR_DOMAIN_XML_INACTIVE, &_data_->_inner_error_);
#line 163 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->config = _data_->_tmp1_;
#line 163 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 163 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 163 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 163 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 2247 "libvirt-machine.c"
	}
#line 164 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp3_ = _data_->config;
#line 164 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp4_ = gvir_config_domain_get_title (_data_->_tmp3_);
#line 164 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp2_ = _data_->_tmp4_;
#line 164 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_tmp2_ == NULL) {
#line 164 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp5_ = _data_->domain;
#line 164 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp6_ = gvir_domain_get_name (_data_->_tmp5_);
#line 164 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp2_ = _data_->_tmp6_;
#line 2263 "libvirt-machine.c"
	}
#line 164 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp7_ = g_strdup (_data_->_tmp2_);
#line 164 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->item_name = _data_->_tmp7_;
#line 165 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp8_ = _data_->source;
#line 165 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp9_ = _data_->item_name;
#line 165 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp10_ = _data_->domain;
#line 165 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp11_ = gvir_domain_get_uuid (_data_->_tmp10_);
#line 165 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self = (BoxesLibvirtMachine*) boxes_machine_construct (_data_->object_type, _data_->_tmp8_, _data_->_tmp9_, _data_->_tmp11_);
#line 167 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp12_ = _data_->domain;
#line 167 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp13_ = gvir_domain_get_name (_data_->_tmp12_);
#line 167 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp14_ = g_strconcat ("new libvirt machine: ", _data_->_tmp13_, NULL);
#line 167 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp15_ = _data_->_tmp14_;
#line 167 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_debug ("libvirt-machine.vala:167: %s", _data_->_tmp15_);
#line 167 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (_data_->_tmp15_);
#line 168 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp16_ = _data_->connection;
#line 168 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_set_connection (_data_->self, _data_->_tmp16_);
#line 169 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp17_ = _data_->domain;
#line 169 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_set_domain (_data_->self, _data_->_tmp17_);
#line 170 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp18_ = boxes_libvirt_machine_properties_new (_data_->self);
#line 170 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->self->properties);
#line 170 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self->properties = _data_->_tmp18_;
#line 2305 "libvirt-machine.c"
	{
#line 173 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp20_ = _data_->domain;
#line 173 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp21_ = gvir_domain_get_info (_data_->_tmp20_, &_data_->_inner_error_);
#line 173 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp19_ = _data_->_tmp21_;
#line 173 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 2315 "libvirt-machine.c"
			goto __catch18_g_error;
		}
#line 173 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp22_ = _data_->_tmp19_;
#line 173 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp19_ = NULL;
#line 173 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp23_ = _data_->_tmp22_;
#line 173 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp24_ = _data_->_tmp23_->state;
#line 173 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp25_ = _data_->_tmp24_;
#line 173 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		__vala_GVirDomainInfo_free0 (_data_->_tmp23_);
#line 173 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->s = _data_->_tmp25_;
#line 174 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp26_ = _data_->s;
#line 174 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		switch (_data_->_tmp26_) {
#line 174 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			case GVIR_DOMAIN_STATE_RUNNING:
#line 174 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			case GVIR_DOMAIN_STATE_BLOCKED:
#line 2340 "libvirt-machine.c"
			{
#line 177 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				boxes_machine_set_state ((BoxesMachine*) _data_->self, BOXES_MACHINE_MACHINE_STATE_RUNNING);
#line 178 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				boxes_libvirt_machine_set_stats_enable (_data_->self, TRUE);
#line 179 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				break;
#line 2348 "libvirt-machine.c"
			}
#line 174 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			case GVIR_DOMAIN_STATE_PAUSED:
#line 2352 "libvirt-machine.c"
			{
#line 181 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				boxes_machine_set_state ((BoxesMachine*) _data_->self, BOXES_MACHINE_MACHINE_STATE_PAUSED);
#line 182 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				break;
#line 2358 "libvirt-machine.c"
			}
#line 174 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			case GVIR_DOMAIN_STATE_SHUTDOWN:
#line 174 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			case GVIR_DOMAIN_STATE_SHUTOFF:
#line 2364 "libvirt-machine.c"
			{
#line 185 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp27_ = _data_->domain;
#line 185 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp28_ = gvir_domain_get_saved (_data_->_tmp27_);
#line 185 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				if (_data_->_tmp28_) {
#line 186 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					boxes_machine_set_state ((BoxesMachine*) _data_->self, BOXES_MACHINE_MACHINE_STATE_SAVED);
#line 2374 "libvirt-machine.c"
				} else {
#line 188 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					boxes_machine_set_state ((BoxesMachine*) _data_->self, BOXES_MACHINE_MACHINE_STATE_STOPPED);
#line 2378 "libvirt-machine.c"
				}
#line 189 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				break;
#line 2382 "libvirt-machine.c"
			}
#line 174 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			case GVIR_DOMAIN_STATE_CRASHED:
#line 2386 "libvirt-machine.c"
			{
#line 191 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				boxes_machine_set_state ((BoxesMachine*) _data_->self, BOXES_MACHINE_MACHINE_STATE_STOPPED);
#line 192 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				break;
#line 2392 "libvirt-machine.c"
			}
#line 174 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			case GVIR_DOMAIN_STATE_PMSUSPENDED:
#line 2396 "libvirt-machine.c"
			{
#line 194 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				boxes_machine_set_state ((BoxesMachine*) _data_->self, BOXES_MACHINE_MACHINE_STATE_SLEEPING);
#line 195 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				break;
#line 2402 "libvirt-machine.c"
			}
			default:
#line 174 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			case GVIR_DOMAIN_STATE_NONE:
#line 2407 "libvirt-machine.c"
			{
#line 198 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				boxes_machine_set_state ((BoxesMachine*) _data_->self, BOXES_MACHINE_MACHINE_STATE_UNKNOWN);
#line 199 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				break;
#line 2413 "libvirt-machine.c"
			}
		}
#line 172 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		__vala_GVirDomainInfo_free0 (_data_->_tmp19_);
#line 2418 "libvirt-machine.c"
	}
	goto __finally18;
	__catch18_g_error:
	{
#line 172 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_error_ = _data_->_inner_error_;
#line 172 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_inner_error_ = NULL;
#line 202 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_machine_set_state ((BoxesMachine*) _data_->self, BOXES_MACHINE_MACHINE_STATE_UNKNOWN);
#line 172 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_error_free0 (_data_->_error_);
#line 2431 "libvirt-machine.c"
	}
	__finally18:
#line 172 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 172 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 172 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_free0 (_data_->item_name);
#line 172 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (_data_->config);
#line 172 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 172 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 2446 "libvirt-machine.c"
	}
#line 205 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp29_ = _data_->domain;
#line 205 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_signal_connect_object (_data_->_tmp29_, "started", (GCallback) ___lambda167__gvir_domain_started, _data_->self, 0);
#line 206 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp30_ = _data_->domain;
#line 206 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_signal_connect_object (_data_->_tmp30_, "suspended", (GCallback) ___lambda168__gvir_domain_suspended, _data_->self, 0);
#line 207 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp31_ = _data_->domain;
#line 207 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_signal_connect_object (_data_->_tmp31_, "resumed", (GCallback) ___lambda169__gvir_domain_resumed, _data_->self, 0);
#line 208 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp32_ = _data_->domain;
#line 208 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_signal_connect_object (_data_->_tmp32_, "stopped", (GCallback) ___lambda170__gvir_domain_stopped, _data_->self, 0);
#line 217 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp33_ = _data_->domain;
#line 217 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_signal_connect_object (_data_->_tmp33_, "pmsuspended", (GCallback) ___lambda171__gvir_domain_pmsuspended, _data_->self, 0);
#line 220 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_signal_connect_object ((GObject*) _data_->self, "notify::state", (GCallback) ___lambda172__g_object_notify, _data_->self, 0);
#line 228 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_update_domain_config (_data_->self);
#line 229 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp34_ = _data_->domain;
#line 229 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_signal_connect_object (_data_->_tmp34_, "updated", (GCallback) _boxes_libvirt_machine_update_domain_config_gvir_domain_updated, _data_->self, 0);
#line 231 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp35_ = boxes_machine_get_state ((BoxesMachine*) _data_->self);
#line 231 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp36_ = _data_->_tmp35_;
#line 231 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_tmp36_ != BOXES_MACHINE_MACHINE_STATE_STOPPED) {
#line 232 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_machine_load_screenshot ((BoxesMachine*) _data_->self);
#line 2484 "libvirt-machine.c"
	}
#line 233 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_machine_set_screenshot_enable ((BoxesMachine*) _data_->self, TRUE);
#line 2488 "libvirt-machine.c"
	{
#line 236 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_state_ = 1;
#line 236 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_get_system_virt_connection (boxes_libvirt_machine_new_ready, _data_);
#line 236 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 2496 "libvirt-machine.c"
		_state_1:
#line 236 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp38_ = boxes_get_system_virt_connection_finish (_data_->_res_, &_data_->_inner_error_);
#line 236 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp37_ = _data_->_tmp38_;
#line 236 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 2504 "libvirt-machine.c"
			goto __catch19_g_error;
		}
#line 236 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp39_ = _data_->_tmp37_;
#line 236 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp37_ = NULL;
#line 236 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (_data_->self->priv->system_virt_connection);
#line 236 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->self->priv->system_virt_connection = _data_->_tmp39_;
#line 235 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (_data_->_tmp37_);
#line 2517 "libvirt-machine.c"
	}
	goto __finally19;
	__catch19_g_error:
	{
#line 235 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_vala1__error_ = _data_->_inner_error_;
#line 235 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_inner_error_ = NULL;
#line 238 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp40_ = _data_->_vala1__error_;
#line 238 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp41_ = _data_->_tmp40_->message;
#line 238 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_warning ("libvirt-machine.vala:238: Failed to connection to system libvirt: %s", _data_->_tmp41_);
#line 235 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_error_free0 (_data_->_vala1__error_);
#line 2534 "libvirt-machine.c"
	}
	__finally19:
#line 235 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 235 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 235 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_free0 (_data_->item_name);
#line 235 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (_data_->config);
#line 235 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 235 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 2549 "libvirt-machine.c"
	}
#line 241 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_machine_update_status ((BoxesMachine*) _data_->self);
#line 242 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_update_info (_data_->self);
#line 243 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp42_ = _data_->source;
#line 243 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_signal_connect_object ((GObject*) _data_->_tmp42_, "notify::uri", (GCallback) _boxes_libvirt_machine_update_info_g_object_notify, _data_->self, 0);
#line 245 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp43_ = g_strdup ("run-in-bg");
#line 245 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	memset (&_data_->_tmp44_, 0, sizeof (GValue));
#line 245 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_value_init (&_data_->_tmp44_, G_TYPE_BOOLEAN);
#line 245 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_value_set_boolean (&_data_->_tmp44_, FALSE);
#line 245 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	memset (&_data_->_tmp45_, 0, sizeof (BoxesBoxConfigSavedProperty));
#line 245 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	memset (&_data_->_tmp45_, 0, sizeof (BoxesBoxConfigSavedProperty));
#line 245 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (_data_->_tmp45_.name);
#line 245 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp45_.name = _data_->_tmp43_;
#line 245 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	G_IS_VALUE (&_data_->_tmp45_.default_value) ? (g_value_unset (&_data_->_tmp45_.default_value), NULL) : NULL;
#line 245 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp45_.default_value = _data_->_tmp44_;
#line 245 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp46_ = g_new0 (BoxesBoxConfigSavedProperty, 1);
#line 245 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp46_[0] = _data_->_tmp45_;
#line 245 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self->priv->saved_properties = (_vala_BoxesBoxConfigSavedProperty_array_free (_data_->self->priv->saved_properties, _data_->self->priv->saved_properties_length1), NULL);
#line 245 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self->priv->saved_properties = _data_->_tmp46_;
#line 245 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self->priv->saved_properties_length1 = 1;
#line 245 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self->priv->_saved_properties_size_ = _data_->self->priv->saved_properties_length1;
#line 249 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp47_ = ((BoxesMachine*) _data_->self)->config;
#line 249 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp48_ = _data_->self->priv->saved_properties;
#line 249 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp48__length1 = _data_->self->priv->saved_properties_length1;
#line 249 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_box_config_save_properties (_data_->_tmp47_, (GObject*) _data_->self, _data_->_tmp48_, _data_->_tmp48__length1);
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (_data_->item_name);
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->config);
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_state_ != 0) {
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 2611 "libvirt-machine.c"
		}
	}
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_object_unref (_data_->_async_result);
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return FALSE;
#line 2618 "libvirt-machine.c"
}


void boxes_libvirt_machine_new (BoxesCollectionSource* source, GVirConnection* connection, GVirDomain* domain, GAsyncReadyCallback _callback_, gpointer _user_data_) {
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_construct (BOXES_TYPE_LIBVIRT_MACHINE, source, connection, domain, _callback_, _user_data_);
#line 2625 "libvirt-machine.c"
}


BoxesLibvirtMachine* boxes_libvirt_machine_new_finish (GAsyncResult* _res_, GError** error) {
#line 160 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return boxes_libvirt_machine_construct_finish (_res_, error);
#line 2632 "libvirt-machine.c"
}


static void boxes_libvirt_machine_update_cpu_stat (BoxesLibvirtMachine* self, GVirDomainInfo* info, BoxesLibvirtMachineMachineStat* stat) {
	BoxesLibvirtMachineMachineStat prev = {0};
	BoxesLibvirtMachineMachineStat* _tmp0_;
	gint _tmp0__length1;
	BoxesLibvirtMachineMachineStat _tmp1_;
	BoxesLibvirtMachineMachineStat _tmp2_ = {0};
	gboolean _tmp3_ = FALSE;
	GVirDomainInfo* _tmp4_;
	GVirDomainState _tmp5_;
	GVirDomainInfo* _tmp8_;
	guint64 _tmp9_;
	BoxesLibvirtMachineMachineStat _tmp10_;
	gdouble _tmp11_;
	GVirDomainInfo* _tmp12_;
	guint64 _tmp13_;
	gint64 dt = 0LL;
	BoxesLibvirtMachineMachineStat _tmp14_;
	gint64 _tmp15_;
	BoxesLibvirtMachineMachineStat _tmp16_;
	gint64 _tmp17_;
	gdouble percent = 0.0;
	BoxesLibvirtMachineMachineStat _tmp18_;
	gdouble _tmp19_;
	gint64 _tmp20_;
	gdouble _tmp21_;
	GVirDomainInfo* _tmp22_;
	guint16 _tmp23_;
	gdouble _tmp24_;
	gdouble _tmp25_;
#line 252 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (self != NULL);
#line 252 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (info != NULL);
#line 252 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (stat != NULL);
#line 253 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = self->priv->stats;
#line 253 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0__length1 = self->priv->stats_length1;
#line 253 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _tmp0_[BOXES_LIBVIRT_MACHINE_STATS_SIZE - 1];
#line 253 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_machine_stat_copy (&_tmp1_, &_tmp2_);
#line 253 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	prev = _tmp2_;
#line 255 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp4_ = info;
#line 255 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp5_ = _tmp4_->state;
#line 255 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp5_ == GVIR_DOMAIN_STATE_CRASHED) {
#line 255 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp3_ = TRUE;
#line 2689 "libvirt-machine.c"
	} else {
		GVirDomainInfo* _tmp6_;
		GVirDomainState _tmp7_;
#line 256 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp6_ = info;
#line 256 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp7_ = _tmp6_->state;
#line 256 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp3_ = _tmp7_ == GVIR_DOMAIN_STATE_SHUTOFF;
#line 2699 "libvirt-machine.c"
	}
#line 255 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp3_) {
#line 257 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_machine_stat_destroy (&prev);
#line 257 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 2707 "libvirt-machine.c"
	}
#line 259 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp8_ = info;
#line 259 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp9_ = _tmp8_->cpuTime;
#line 259 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp10_ = prev;
#line 259 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp11_ = _tmp10_.cpu_time_abs;
#line 259 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	(*stat).cpu_time = _tmp9_ - _tmp11_;
#line 260 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp12_ = info;
#line 260 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp13_ = _tmp12_->cpuTime;
#line 260 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	(*stat).cpu_time_abs = (gdouble) _tmp13_;
#line 262 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp14_ = *stat;
#line 262 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp15_ = _tmp14_.timestamp;
#line 262 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp16_ = prev;
#line 262 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp17_ = _tmp16_.timestamp;
#line 262 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	dt = (_tmp15_ - _tmp17_) * 10;
#line 263 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp18_ = *stat;
#line 263 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp19_ = _tmp18_.cpu_time;
#line 263 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp20_ = dt;
#line 263 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	percent = _tmp19_ / _tmp20_;
#line 264 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp21_ = percent;
#line 264 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp22_ = info;
#line 264 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp23_ = _tmp22_->nrVirtCpu;
#line 264 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	percent = _tmp21_ / _tmp23_;
#line 265 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp24_ = percent;
#line 265 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp25_ = CLAMP (_tmp24_, (gdouble) 0, (gdouble) 100);
#line 265 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	(*stat).cpu_guest_percent = _tmp25_;
#line 252 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_machine_stat_destroy (&prev);
#line 2759 "libvirt-machine.c"
}


static void boxes_libvirt_machine_update_mem_stat (BoxesLibvirtMachine* self, GVirDomainInfo* info, BoxesLibvirtMachineMachineStat* stat) {
	GVirDomainInfo* _tmp0_;
	GVirDomainState _tmp1_;
	GVirDomainInfo* _tmp2_;
	guint64 _tmp3_;
	GVirDomainInfo* _tmp4_;
	guint64 _tmp5_;
#line 268 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (self != NULL);
#line 268 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (info != NULL);
#line 268 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (stat != NULL);
#line 269 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = info;
#line 269 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _tmp0_->state;
#line 269 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp1_ != GVIR_DOMAIN_STATE_RUNNING) {
#line 270 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 2784 "libvirt-machine.c"
	}
#line 272 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = info;
#line 272 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = _tmp2_->memory;
#line 272 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp4_ = info;
#line 272 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp5_ = _tmp4_->maxMem;
#line 272 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	(*stat).memory_percent = (_tmp3_ * 100.0) / _tmp5_;
#line 2796 "libvirt-machine.c"
}


static void boxes_libvirt_machine_update_io_stat_data_free (gpointer _data) {
	BoxesLibvirtMachineUpdateIoStatData* _data_;
	_data_ = _data;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	__vala_GVirDomainInfo_free0 (_data_->info);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_slice_free (BoxesLibvirtMachineUpdateIoStatData, _data_);
#line 2809 "libvirt-machine.c"
}


static GVirDomainInfo* _vala_GVirDomainInfo_copy (GVirDomainInfo* self) {
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return g_boxed_copy (gvir_domain_info_get_type (), self);
#line 2816 "libvirt-machine.c"
}


static gpointer __vala_GVirDomainInfo_copy0 (gpointer self) {
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return self ? _vala_GVirDomainInfo_copy (self) : NULL;
#line 2823 "libvirt-machine.c"
}


static void boxes_libvirt_machine_update_io_stat (BoxesLibvirtMachine* self, GVirDomainInfo* info, BoxesLibvirtMachineMachineStat* stat, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	BoxesLibvirtMachineUpdateIoStatData* _data_;
	BoxesLibvirtMachine* _tmp0_;
	GVirDomainInfo* _tmp1_;
	GVirDomainInfo* _tmp2_;
	BoxesLibvirtMachineMachineStat* _tmp3_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_slice_new0 (BoxesLibvirtMachineUpdateIoStatData);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_task_set_task_data (_data_->_async_result, _data_, boxes_libvirt_machine_update_io_stat_data_free);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self = _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = info;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = __vala_GVirDomainInfo_copy0 (_tmp1_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	__vala_GVirDomainInfo_free0 (_data_->info);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->info = _tmp2_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = stat;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->stat = _tmp3_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_update_io_stat_co (_data_);
#line 2857 "libvirt-machine.c"
}


static void boxes_libvirt_machine_update_io_stat_finish (BoxesLibvirtMachine* self, GAsyncResult* _res_) {
	BoxesLibvirtMachineUpdateIoStatData* _data_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_task_propagate_pointer (G_TASK (_res_), NULL);
#line 2865 "libvirt-machine.c"
}


static Block38Data* block38_data_ref (Block38Data* _data38_) {
#line 275 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_atomic_int_inc (&_data38_->_ref_count_);
#line 275 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return _data38_;
#line 2874 "libvirt-machine.c"
}


static void block38_data_unref (void * _userdata_) {
	Block38Data* _data38_;
	_data38_ = (Block38Data*) _userdata_;
#line 275 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (g_atomic_int_dec_and_test (&_data38_->_ref_count_)) {
#line 2883 "libvirt-machine.c"
		BoxesLibvirtMachine* self;
#line 275 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		self = _data38_->self;
#line 275 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (self);
#line 275 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_slice_free (Block38Data, _data38_);
#line 2891 "libvirt-machine.c"
	}
}


static Block39Data* block39_data_ref (Block39Data* _data39_) {
#line 279 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_atomic_int_inc (&_data39_->_ref_count_);
#line 279 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return _data39_;
#line 2901 "libvirt-machine.c"
}


static void block39_data_unref (void * _userdata_) {
	Block39Data* _data39_;
	_data39_ = (Block39Data*) _userdata_;
#line 279 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (g_atomic_int_dec_and_test (&_data39_->_ref_count_)) {
#line 2910 "libvirt-machine.c"
		BoxesLibvirtMachine* self;
#line 279 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		self = _data39_->_data38_->self;
#line 279 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (_data39_->disk);
#line 279 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		block38_data_unref (_data39_->_data38_);
#line 279 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data39_->_data38_ = NULL;
#line 279 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_slice_free (Block39Data, _data39_);
#line 2922 "libvirt-machine.c"
	}
}


static void _vala_GVirDomainDiskStats_free (GVirDomainDiskStats* self) {
#line 285 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_boxed_free (gvir_domain_disk_stats_get_type (), self);
#line 2930 "libvirt-machine.c"
}


static void ___lambda159_ (Block39Data* _data39_, GError** error) {
	Block38Data* _data38_;
	BoxesLibvirtMachine* self;
	GVirDomainDiskStats* _tmp0_ = NULL;
	GVirDomainDisk* _tmp1_;
	GVirDomainDiskStats* _tmp2_;
	GVirDomainDiskStats* _tmp3_;
	GError * _inner_error_ = NULL;
#line 284 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data38_ = _data39_->_data38_;
#line 284 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self = _data38_->self;
#line 285 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _data39_->disk;
#line 285 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = gvir_domain_disk_get_stats (_tmp1_, &_inner_error_);
#line 285 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = _tmp2_;
#line 285 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 285 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_propagate_error (error, _inner_error_);
#line 285 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 2958 "libvirt-machine.c"
	}
#line 285 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = _tmp0_;
#line 285 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = NULL;
#line 285 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	__vala_GVirDomainDiskStats_free0 ((*_data38_->stat).disk);
#line 285 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	(*_data38_->stat).disk = _tmp3_;
#line 284 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	__vala_GVirDomainDiskStats_free0 (_tmp0_);
#line 2970 "libvirt-machine.c"
}


static void ____lambda159__boxes_async_launcher_run_in_thread_func (gpointer self, GError** error) {
#line 284 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	___lambda159_ (self, error);
#line 2977 "libvirt-machine.c"
}


static void boxes_libvirt_machine_update_io_stat_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_) {
	BoxesLibvirtMachineUpdateIoStatData* _data_;
#line 284 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = _user_data_;
#line 284 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_source_object_ = source_object;
#line 284 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_res_ = _res_;
#line 284 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_update_io_stat_co (_data_);
#line 2991 "libvirt-machine.c"
}


static gboolean boxes_libvirt_machine_update_io_stat_co (BoxesLibvirtMachineUpdateIoStatData* _data_) {
#line 275 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	switch (_data_->_state_) {
#line 275 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 0:
#line 3000 "libvirt-machine.c"
		goto _state_0;
#line 275 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 1:
#line 3004 "libvirt-machine.c"
		goto _state_1;
		default:
#line 275 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_assert_not_reached ();
#line 3009 "libvirt-machine.c"
	}
	_state_0:
#line 275 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data38_ = g_slice_new0 (Block38Data);
#line 275 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data38_->_ref_count_ = 1;
#line 275 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data38_->self = g_object_ref (_data_->self);
#line 275 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp0_ = _data_->stat;
#line 275 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data38_->stat = _data_->_tmp0_;
#line 275 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data38_->_async_data_ = _data_;
#line 276 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp1_ = _data_->info;
#line 276 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp2_ = _data_->_tmp1_->state;
#line 276 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_tmp2_ != GVIR_DOMAIN_STATE_RUNNING) {
#line 277 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		block38_data_unref (_data_->_data38_);
#line 277 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data38_ = NULL;
#line 277 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 277 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_state_ != 0) {
#line 277 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 277 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 3042 "libvirt-machine.c"
			}
		}
#line 277 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 277 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 3049 "libvirt-machine.c"
	}
	{
#line 279 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data39_ = g_slice_new0 (Block39Data);
#line 279 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data39_->_ref_count_ = 1;
#line 279 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data39_->_data38_ = block38_data_ref (_data_->_data38_);
#line 280 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp3_ = boxes_libvirt_machine_get_domain_disk (_data_->self, &_data_->_inner_error_);
#line 280 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data39_->disk = _data_->_tmp3_;
#line 280 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 280 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			block39_data_unref (_data_->_data39_);
#line 280 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_data39_ = NULL;
#line 3068 "libvirt-machine.c"
			goto __catch20_g_error;
		}
#line 281 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp4_ = _data_->_data39_->disk;
#line 281 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_tmp4_ == NULL) {
#line 282 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			block39_data_unref (_data_->_data39_);
#line 282 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_data39_ = NULL;
#line 282 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			block38_data_unref (_data_->_data38_);
#line 282 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_data38_ = NULL;
#line 282 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 282 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			if (_data_->_state_ != 0) {
#line 282 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 282 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 3091 "libvirt-machine.c"
				}
			}
#line 282 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_object_unref (_data_->_async_result);
#line 282 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			return FALSE;
#line 3098 "libvirt-machine.c"
		}
#line 284 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp5_ = boxes_app_app;
#line 284 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp6_ = _data_->_tmp5_->async_launcher;
#line 284 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_state_ = 1;
#line 284 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_async_launcher_launch (_data_->_tmp6_, ____lambda159__boxes_async_launcher_run_in_thread_func, block39_data_ref (_data_->_data39_), block39_data_unref, boxes_libvirt_machine_update_io_stat_ready, _data_);
#line 284 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 3110 "libvirt-machine.c"
		_state_1:
#line 284 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_async_launcher_launch_finish (_data_->_tmp6_, _data_->_res_, &_data_->_inner_error_);
#line 284 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 284 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			block39_data_unref (_data_->_data39_);
#line 284 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_data39_ = NULL;
#line 3120 "libvirt-machine.c"
			goto __catch20_g_error;
		}
#line 287 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp7_ = _data_->self->priv->stats;
#line 287 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp7__length1 = _data_->self->priv->stats_length1;
#line 287 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp8_ = _data_->_tmp7_[BOXES_LIBVIRT_MACHINE_STATS_SIZE - 1];
#line 287 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		memset (&_data_->_tmp9_, 0, sizeof (BoxesLibvirtMachineMachineStat));
#line 287 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_machine_stat_copy (&_data_->_tmp8_, &_data_->_tmp9_);
#line 287 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->prev = _data_->_tmp9_;
#line 288 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp10_ = _data_->prev;
#line 288 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp11_ = _data_->_tmp10_.disk;
#line 288 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_tmp11_ != NULL) {
#line 289 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp12_ = _data_->_data38_->stat;
#line 289 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp13_ = (*_data_->_tmp12_).disk;
#line 289 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp14_ = _data_->_tmp13_->rd_bytes;
#line 289 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp15_ = _data_->prev;
#line 289 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp16_ = _data_->_tmp15_.disk;
#line 289 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp17_ = _data_->_tmp16_->rd_bytes;
#line 289 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			(*_data_->_data38_->stat).disk_read = (gdouble) (_data_->_tmp14_ - _data_->_tmp17_);
#line 290 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp18_ = _data_->_data38_->stat;
#line 290 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp19_ = (*_data_->_tmp18_).disk;
#line 290 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp20_ = _data_->_tmp19_->wr_bytes;
#line 290 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp21_ = _data_->prev;
#line 290 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp22_ = _data_->_tmp21_.disk;
#line 290 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp23_ = _data_->_tmp22_->wr_bytes;
#line 290 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			(*_data_->_data38_->stat).disk_write = (gdouble) (_data_->_tmp20_ - _data_->_tmp23_);
#line 3169 "libvirt-machine.c"
		}
#line 279 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_machine_stat_destroy (&_data_->prev);
#line 279 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		block39_data_unref (_data_->_data39_);
#line 279 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data39_ = NULL;
#line 3177 "libvirt-machine.c"
	}
	goto __finally20;
	__catch20_g_error:
	{
#line 279 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->err = _data_->_inner_error_;
#line 279 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_inner_error_ = NULL;
#line 293 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp24_ = boxes_collection_item_get_name ((BoxesCollectionItem*) _data_->self);
#line 293 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp25_ = _data_->_tmp24_;
#line 293 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp26_ = _data_->err;
#line 293 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp27_ = _data_->_tmp26_->message;
#line 293 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_warning ("libvirt-machine.vala:293: Failed to fetch I/O statistics for %s: %s", _data_->_tmp25_, _data_->_tmp27_);
#line 279 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_error_free0 (_data_->err);
#line 3198 "libvirt-machine.c"
	}
	__finally20:
#line 279 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 279 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		block38_data_unref (_data_->_data38_);
#line 279 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data38_ = NULL;
#line 279 "/home/fborges/checkout/gnome-boxes/src/libvirt-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 279 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_clear_error (&_data_->_inner_error_);
#line 279 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 279 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 3215 "libvirt-machine.c"
	}
#line 275 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	block38_data_unref (_data_->_data38_);
#line 275 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data38_ = NULL;
#line 275 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 275 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_state_ != 0) {
#line 275 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 275 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 3229 "libvirt-machine.c"
		}
	}
#line 275 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_object_unref (_data_->_async_result);
#line 275 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return FALSE;
#line 3236 "libvirt-machine.c"
}


static void boxes_libvirt_machine_update_net_stat_data_free (gpointer _data) {
	BoxesLibvirtMachineUpdateNetStatData* _data_;
	_data_ = _data;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	__vala_GVirDomainInfo_free0 (_data_->info);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_slice_free (BoxesLibvirtMachineUpdateNetStatData, _data_);
#line 3249 "libvirt-machine.c"
}


static void boxes_libvirt_machine_update_net_stat (BoxesLibvirtMachine* self, GVirDomainInfo* info, BoxesLibvirtMachineMachineStat* stat, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	BoxesLibvirtMachineUpdateNetStatData* _data_;
	BoxesLibvirtMachine* _tmp0_;
	GVirDomainInfo* _tmp1_;
	GVirDomainInfo* _tmp2_;
	BoxesLibvirtMachineMachineStat* _tmp3_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_slice_new0 (BoxesLibvirtMachineUpdateNetStatData);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_task_set_task_data (_data_->_async_result, _data_, boxes_libvirt_machine_update_net_stat_data_free);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self = _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = info;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = __vala_GVirDomainInfo_copy0 (_tmp1_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	__vala_GVirDomainInfo_free0 (_data_->info);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->info = _tmp2_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = stat;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->stat = _tmp3_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_update_net_stat_co (_data_);
#line 3283 "libvirt-machine.c"
}


static void boxes_libvirt_machine_update_net_stat_finish (BoxesLibvirtMachine* self, GAsyncResult* _res_) {
	BoxesLibvirtMachineUpdateNetStatData* _data_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_task_propagate_pointer (G_TASK (_res_), NULL);
#line 3291 "libvirt-machine.c"
}


static Block40Data* block40_data_ref (Block40Data* _data40_) {
#line 297 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_atomic_int_inc (&_data40_->_ref_count_);
#line 297 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return _data40_;
#line 3300 "libvirt-machine.c"
}


static void block40_data_unref (void * _userdata_) {
	Block40Data* _data40_;
	_data40_ = (Block40Data*) _userdata_;
#line 297 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (g_atomic_int_dec_and_test (&_data40_->_ref_count_)) {
#line 3309 "libvirt-machine.c"
		BoxesLibvirtMachine* self;
#line 297 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		self = _data40_->self;
#line 297 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (self);
#line 297 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_slice_free (Block40Data, _data40_);
#line 3317 "libvirt-machine.c"
	}
}


static Block41Data* block41_data_ref (Block41Data* _data41_) {
#line 301 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_atomic_int_inc (&_data41_->_ref_count_);
#line 301 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return _data41_;
#line 3327 "libvirt-machine.c"
}


static void block41_data_unref (void * _userdata_) {
	Block41Data* _data41_;
	_data41_ = (Block41Data*) _userdata_;
#line 301 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (g_atomic_int_dec_and_test (&_data41_->_ref_count_)) {
#line 3336 "libvirt-machine.c"
		BoxesLibvirtMachine* self;
#line 301 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		self = _data41_->_data40_->self;
#line 301 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (_data41_->net);
#line 301 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		block40_data_unref (_data41_->_data40_);
#line 301 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data41_->_data40_ = NULL;
#line 301 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_slice_free (Block41Data, _data41_);
#line 3348 "libvirt-machine.c"
	}
}


static void _vala_GVirDomainInterfaceStats_free (GVirDomainInterfaceStats* self) {
#line 307 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_boxed_free (gvir_domain_interface_stats_get_type (), self);
#line 3356 "libvirt-machine.c"
}


static void ___lambda160_ (Block41Data* _data41_, GError** error) {
	Block40Data* _data40_;
	BoxesLibvirtMachine* self;
	GVirDomainInterfaceStats* _tmp0_ = NULL;
	GVirDomainInterface* _tmp1_;
	GVirDomainInterfaceStats* _tmp2_;
	GVirDomainInterfaceStats* _tmp3_;
	GError * _inner_error_ = NULL;
#line 306 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data40_ = _data41_->_data40_;
#line 306 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self = _data40_->self;
#line 307 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _data41_->net;
#line 307 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = gvir_domain_interface_get_stats (_tmp1_, &_inner_error_);
#line 307 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = _tmp2_;
#line 307 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 307 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_propagate_error (error, _inner_error_);
#line 307 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 3384 "libvirt-machine.c"
	}
#line 307 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = _tmp0_;
#line 307 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = NULL;
#line 307 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	__vala_GVirDomainInterfaceStats_free0 ((*_data40_->stat).net);
#line 307 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	(*_data40_->stat).net = _tmp3_;
#line 306 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	__vala_GVirDomainInterfaceStats_free0 (_tmp0_);
#line 3396 "libvirt-machine.c"
}


static void ____lambda160__boxes_async_launcher_run_in_thread_func (gpointer self, GError** error) {
#line 306 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	___lambda160_ (self, error);
#line 3403 "libvirt-machine.c"
}


static void boxes_libvirt_machine_update_net_stat_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_) {
	BoxesLibvirtMachineUpdateNetStatData* _data_;
#line 306 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = _user_data_;
#line 306 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_source_object_ = source_object;
#line 306 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_res_ = _res_;
#line 306 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_update_net_stat_co (_data_);
#line 3417 "libvirt-machine.c"
}


static gboolean boxes_libvirt_machine_update_net_stat_co (BoxesLibvirtMachineUpdateNetStatData* _data_) {
#line 297 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	switch (_data_->_state_) {
#line 297 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 0:
#line 3426 "libvirt-machine.c"
		goto _state_0;
#line 297 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 1:
#line 3430 "libvirt-machine.c"
		goto _state_1;
		default:
#line 297 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_assert_not_reached ();
#line 3435 "libvirt-machine.c"
	}
	_state_0:
#line 297 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data40_ = g_slice_new0 (Block40Data);
#line 297 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data40_->_ref_count_ = 1;
#line 297 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data40_->self = g_object_ref (_data_->self);
#line 297 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp0_ = _data_->stat;
#line 297 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data40_->stat = _data_->_tmp0_;
#line 297 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data40_->_async_data_ = _data_;
#line 298 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp1_ = _data_->info;
#line 298 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp2_ = _data_->_tmp1_->state;
#line 298 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_tmp2_ != GVIR_DOMAIN_STATE_RUNNING) {
#line 299 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		block40_data_unref (_data_->_data40_);
#line 299 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data40_ = NULL;
#line 299 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 299 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_state_ != 0) {
#line 299 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 299 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 3468 "libvirt-machine.c"
			}
		}
#line 299 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 299 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 3475 "libvirt-machine.c"
	}
	{
#line 301 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data41_ = g_slice_new0 (Block41Data);
#line 301 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data41_->_ref_count_ = 1;
#line 301 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data41_->_data40_ = block40_data_ref (_data_->_data40_);
#line 302 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp3_ = boxes_libvirt_machine_get_domain_network_interface (_data_->self, &_data_->_inner_error_);
#line 302 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data41_->net = _data_->_tmp3_;
#line 302 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 302 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			block41_data_unref (_data_->_data41_);
#line 302 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_data41_ = NULL;
#line 3494 "libvirt-machine.c"
			goto __catch21_g_error;
		}
#line 303 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp4_ = _data_->_data41_->net;
#line 303 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_tmp4_ == NULL) {
#line 304 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			block41_data_unref (_data_->_data41_);
#line 304 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_data41_ = NULL;
#line 304 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			block40_data_unref (_data_->_data40_);
#line 304 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_data40_ = NULL;
#line 304 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 304 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			if (_data_->_state_ != 0) {
#line 304 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 304 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 3517 "libvirt-machine.c"
				}
			}
#line 304 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_object_unref (_data_->_async_result);
#line 304 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			return FALSE;
#line 3524 "libvirt-machine.c"
		}
#line 306 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp5_ = boxes_app_app;
#line 306 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp6_ = _data_->_tmp5_->async_launcher;
#line 306 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_state_ = 1;
#line 306 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_async_launcher_launch (_data_->_tmp6_, ____lambda160__boxes_async_launcher_run_in_thread_func, block41_data_ref (_data_->_data41_), block41_data_unref, boxes_libvirt_machine_update_net_stat_ready, _data_);
#line 306 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 3536 "libvirt-machine.c"
		_state_1:
#line 306 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_async_launcher_launch_finish (_data_->_tmp6_, _data_->_res_, &_data_->_inner_error_);
#line 306 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 306 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			block41_data_unref (_data_->_data41_);
#line 306 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_data41_ = NULL;
#line 3546 "libvirt-machine.c"
			goto __catch21_g_error;
		}
#line 309 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp7_ = _data_->self->priv->stats;
#line 309 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp7__length1 = _data_->self->priv->stats_length1;
#line 309 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp8_ = _data_->_tmp7_[BOXES_LIBVIRT_MACHINE_STATS_SIZE - 1];
#line 309 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		memset (&_data_->_tmp9_, 0, sizeof (BoxesLibvirtMachineMachineStat));
#line 309 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_machine_stat_copy (&_data_->_tmp8_, &_data_->_tmp9_);
#line 309 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->prev = _data_->_tmp9_;
#line 310 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp10_ = _data_->prev;
#line 310 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp11_ = _data_->_tmp10_.net;
#line 310 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_tmp11_ != NULL) {
#line 311 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp12_ = _data_->_data40_->stat;
#line 311 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp13_ = (*_data_->_tmp12_).net;
#line 311 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp14_ = _data_->_tmp13_->rx_bytes;
#line 311 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp15_ = _data_->prev;
#line 311 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp16_ = _data_->_tmp15_.net;
#line 311 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp17_ = _data_->_tmp16_->rx_bytes;
#line 311 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			(*_data_->_data40_->stat).net_read = (gdouble) (_data_->_tmp14_ - _data_->_tmp17_);
#line 312 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp18_ = _data_->_data40_->stat;
#line 312 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp19_ = (*_data_->_tmp18_).net;
#line 312 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp20_ = _data_->_tmp19_->tx_bytes;
#line 312 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp21_ = _data_->prev;
#line 312 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp22_ = _data_->_tmp21_.net;
#line 312 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp23_ = _data_->_tmp22_->tx_bytes;
#line 312 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			(*_data_->_data40_->stat).net_write = (gdouble) (_data_->_tmp20_ - _data_->_tmp23_);
#line 3595 "libvirt-machine.c"
		}
#line 301 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_machine_stat_destroy (&_data_->prev);
#line 301 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		block41_data_unref (_data_->_data41_);
#line 301 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data41_ = NULL;
#line 3603 "libvirt-machine.c"
	}
	goto __finally21;
	__catch21_g_error:
	{
#line 301 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->err = _data_->_inner_error_;
#line 301 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_inner_error_ = NULL;
#line 315 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp24_ = boxes_collection_item_get_name ((BoxesCollectionItem*) _data_->self);
#line 315 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp25_ = _data_->_tmp24_;
#line 315 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp26_ = _data_->err;
#line 315 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp27_ = _data_->_tmp26_->message;
#line 315 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_warning ("libvirt-machine.vala:315: Failed to fetch network statistics for %s: %" \
"s", _data_->_tmp25_, _data_->_tmp27_);
#line 301 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_error_free0 (_data_->err);
#line 3624 "libvirt-machine.c"
	}
	__finally21:
#line 301 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 301 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		block40_data_unref (_data_->_data40_);
#line 301 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data40_ = NULL;
#line 301 "/home/fborges/checkout/gnome-boxes/src/libvirt-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 301 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_clear_error (&_data_->_inner_error_);
#line 301 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 301 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 3641 "libvirt-machine.c"
	}
#line 297 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	block40_data_unref (_data_->_data40_);
#line 297 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data40_ = NULL;
#line 297 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 297 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_state_ != 0) {
#line 297 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 297 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 3655 "libvirt-machine.c"
		}
	}
#line 297 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_object_unref (_data_->_async_result);
#line 297 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return FALSE;
#line 3662 "libvirt-machine.c"
}


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


static void boxes_libvirt_machine_update_stats (BoxesLibvirtMachine* self, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	BoxesLibvirtMachineUpdateStatsData* _data_;
	BoxesLibvirtMachine* _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_slice_new0 (BoxesLibvirtMachineUpdateStatsData);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_task_set_task_data (_data_->_async_result, _data_, boxes_libvirt_machine_update_stats_data_free);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self = _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_update_stats_co (_data_);
#line 3692 "libvirt-machine.c"
}


static void boxes_libvirt_machine_update_stats_finish (BoxesLibvirtMachine* self, GAsyncResult* _res_) {
	BoxesLibvirtMachineUpdateStatsData* _data_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_task_propagate_pointer (G_TASK (_res_), NULL);
#line 3700 "libvirt-machine.c"
}


static void boxes_libvirt_machine_update_stats_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_) {
	BoxesLibvirtMachineUpdateStatsData* _data_;
#line 328 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = _user_data_;
#line 328 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_source_object_ = source_object;
#line 328 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_res_ = _res_;
#line 328 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_update_stats_co (_data_);
#line 3714 "libvirt-machine.c"
}


static BoxesLibvirtMachineMachineStat* _vala_array_dup1 (BoxesLibvirtMachineMachineStat* self, int length) {
	BoxesLibvirtMachineMachineStat* result;
	int i;
#line 335 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	result = g_new0 (BoxesLibvirtMachineMachineStat, length);
#line 335 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	for (i = 0; i < length; i++) {
#line 3725 "libvirt-machine.c"
		BoxesLibvirtMachineMachineStat _tmp0_ = {0};
#line 335 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_machine_stat_copy (&self[i], &_tmp0_);
#line 335 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		result[i] = _tmp0_;
#line 3731 "libvirt-machine.c"
	}
#line 335 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 3735 "libvirt-machine.c"
}


static void _vala_array_add3 (BoxesLibvirtMachineMachineStat* * array, int* length, int* size, const BoxesLibvirtMachineMachineStat* value) {
#line 336 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if ((*length) == (*size)) {
#line 336 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		*size = (*size) ? (2 * (*size)) : 4;
#line 336 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		*array = g_renew (BoxesLibvirtMachineMachineStat, *array, *size);
#line 3746 "libvirt-machine.c"
	}
#line 336 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	(*array)[(*length)++] = *value;
#line 3750 "libvirt-machine.c"
}


static void _vala_array_add4 (gdouble* * array, int* length, int* size, gdouble value) {
#line 349 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if ((*length) == (*size)) {
#line 349 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		*size = (*size) ? (2 * (*size)) : 4;
#line 349 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		*array = g_renew (gdouble, *array, *size);
#line 3761 "libvirt-machine.c"
	}
#line 349 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	(*array)[(*length)++] = value;
#line 3765 "libvirt-machine.c"
}


static void _vala_array_add5 (gdouble* * array, int* length, int* size, gdouble value) {
#line 350 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if ((*length) == (*size)) {
#line 350 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		*size = (*size) ? (2 * (*size)) : 4;
#line 350 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		*array = g_renew (gdouble, *array, *size);
#line 3776 "libvirt-machine.c"
	}
#line 350 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	(*array)[(*length)++] = value;
#line 3780 "libvirt-machine.c"
}


static void _vala_array_add6 (gdouble* * array, int* length, int* size, gdouble value) {
#line 351 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if ((*length) == (*size)) {
#line 351 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		*size = (*size) ? (2 * (*size)) : 4;
#line 351 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		*array = g_renew (gdouble, *array, *size);
#line 3791 "libvirt-machine.c"
	}
#line 351 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	(*array)[(*length)++] = value;
#line 3795 "libvirt-machine.c"
}


static gboolean boxes_libvirt_machine_update_stats_co (BoxesLibvirtMachineUpdateStatsData* _data_) {
#line 324 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	switch (_data_->_state_) {
#line 324 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 0:
#line 3804 "libvirt-machine.c"
		goto _state_0;
#line 324 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 1:
#line 3808 "libvirt-machine.c"
		goto _state_1;
#line 324 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 2:
#line 3812 "libvirt-machine.c"
		goto _state_2;
#line 324 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 3:
#line 3816 "libvirt-machine.c"
		goto _state_3;
		default:
#line 324 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_assert_not_reached ();
#line 3821 "libvirt-machine.c"
	}
	_state_0:
	{
#line 326 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp0_ = g_get_monotonic_time ();
#line 326 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->now = _data_->_tmp0_;
#line 327 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp1_ = _data_->now;
#line 327 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		memset (&_data_->_tmp2_, 0, sizeof (BoxesLibvirtMachineMachineStat));
#line 327 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		memset (&_data_->_tmp2_, 0, sizeof (BoxesLibvirtMachineMachineStat));
#line 327 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp2_.timestamp = _data_->_tmp1_;
#line 327 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->stat = _data_->_tmp2_;
#line 328 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp3_ = _data_->self->priv->_domain;
#line 328 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp4_ = _data_->self->priv->stats_cancellable;
#line 328 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_state_ = 1;
#line 328 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		gvir_domain_get_info_async (_data_->_tmp3_, _data_->_tmp4_, boxes_libvirt_machine_update_stats_ready, _data_);
#line 328 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 3849 "libvirt-machine.c"
		_state_1:
#line 328 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp5_ = gvir_domain_get_info_finish (_data_->_tmp3_, _data_->_res_, &_data_->_inner_error_);
#line 328 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->info = _data_->_tmp5_;
#line 328 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 328 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			boxes_libvirt_machine_machine_stat_destroy (&_data_->stat);
#line 328 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			if (g_error_matches (_data_->_inner_error_, G_IO_ERROR, G_IO_ERROR_CANCELLED)) {
#line 3861 "libvirt-machine.c"
				goto __catch22_g_io_error_cancelled;
			}
			goto __catch22_g_error;
		}
#line 330 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp6_ = _data_->info;
#line 330 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_update_cpu_stat (_data_->self, _data_->_tmp6_, &_data_->stat);
#line 331 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp7_ = _data_->info;
#line 331 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_update_mem_stat (_data_->self, _data_->_tmp7_, &_data_->stat);
#line 332 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp8_ = _data_->info;
#line 332 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_state_ = 2;
#line 332 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_update_io_stat (_data_->self, _data_->_tmp8_, &_data_->stat, boxes_libvirt_machine_update_stats_ready, _data_);
#line 332 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 3882 "libvirt-machine.c"
		_state_2:
#line 332 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_update_io_stat_finish (_data_->self, _data_->_res_);
#line 333 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp9_ = _data_->info;
#line 333 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_state_ = 3;
#line 333 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_update_net_stat (_data_->self, _data_->_tmp9_, &_data_->stat, boxes_libvirt_machine_update_stats_ready, _data_);
#line 333 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 3894 "libvirt-machine.c"
		_state_3:
#line 333 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_update_net_stat_finish (_data_->self, _data_->_res_);
#line 335 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp10_ = _data_->self->priv->stats;
#line 335 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp10__length1 = _data_->self->priv->stats_length1;
#line 335 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp11_ = ((_data_->_tmp10_ + 1) != NULL) ? _vala_array_dup1 (_data_->_tmp10_ + 1, BOXES_LIBVIRT_MACHINE_STATS_SIZE - 1) : ((gpointer) (_data_->_tmp10_ + 1));
#line 335 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp11__length1 = BOXES_LIBVIRT_MACHINE_STATS_SIZE - 1;
#line 335 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->self->priv->stats = (_vala_BoxesLibvirtMachineMachineStat_array_free (_data_->self->priv->stats, _data_->self->priv->stats_length1), NULL);
#line 335 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->self->priv->stats = _data_->_tmp11_;
#line 335 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->self->priv->stats_length1 = _data_->_tmp11__length1;
#line 335 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->self->priv->_stats_size_ = _data_->self->priv->stats_length1;
#line 336 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp12_ = _data_->self->priv->stats;
#line 336 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp12__length1 = _data_->self->priv->stats_length1;
#line 336 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp13_ = _data_->stat;
#line 336 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		memset (&_data_->_tmp14_, 0, sizeof (BoxesLibvirtMachineMachineStat));
#line 336 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_machine_stat_copy (&_data_->_tmp13_, &_data_->_tmp14_);
#line 336 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_vala_array_add3 (&_data_->self->priv->stats, &_data_->self->priv->stats_length1, &_data_->self->priv->_stats_size_, &_data_->_tmp14_);
#line 325 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		__vala_GVirDomainInfo_free0 (_data_->info);
#line 325 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_machine_stat_destroy (&_data_->stat);
#line 3930 "libvirt-machine.c"
	}
	goto __finally22;
	__catch22_g_io_error_cancelled:
	{
#line 325 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->err = _data_->_inner_error_;
#line 325 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_inner_error_ = NULL;
#line 339 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_error_free0 (_data_->err);
#line 339 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 339 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_state_ != 0) {
#line 339 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 339 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 3949 "libvirt-machine.c"
			}
		}
#line 339 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 339 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 3956 "libvirt-machine.c"
	}
	goto __finally22;
	__catch22_g_error:
	{
#line 325 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_vala1_err = _data_->_inner_error_;
#line 325 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_inner_error_ = NULL;
#line 341 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp15_ = _data_->_vala1_err;
#line 341 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp16_ = _data_->_tmp15_->message;
#line 341 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_warning ("libvirt-machine.vala:341: %s", _data_->_tmp16_);
#line 325 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_error_free0 (_data_->_vala1_err);
#line 3973 "libvirt-machine.c"
	}
	__finally22:
#line 325 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 325 "/home/fborges/checkout/gnome-boxes/src/libvirt-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 325 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_clear_error (&_data_->_inner_error_);
#line 325 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 325 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 3986 "libvirt-machine.c"
	}
#line 344 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp17_ = g_new0 (gdouble, 0);
#line 344 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self->cpu_stats = (g_free (_data_->self->cpu_stats), NULL);
#line 344 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self->cpu_stats = _data_->_tmp17_;
#line 344 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self->cpu_stats_length1 = 0;
#line 344 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self->_cpu_stats_size_ = _data_->self->cpu_stats_length1;
#line 345 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp18_ = g_new0 (gdouble, 0);
#line 345 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self->io_stats = (g_free (_data_->self->io_stats), NULL);
#line 345 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self->io_stats = _data_->_tmp18_;
#line 345 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self->io_stats_length1 = 0;
#line 345 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self->_io_stats_size_ = _data_->self->io_stats_length1;
#line 346 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp19_ = g_new0 (gdouble, 0);
#line 346 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self->net_stats = (g_free (_data_->self->net_stats), NULL);
#line 346 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self->net_stats = _data_->_tmp19_;
#line 346 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self->net_stats_length1 = 0;
#line 346 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self->_net_stats_size_ = _data_->self->net_stats_length1;
#line 348 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp20_ = _data_->self->priv->stats;
#line 348 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp20__length1 = _data_->self->priv->stats_length1;
#line 4022 "libvirt-machine.c"
	{
#line 348 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->stat_collection_length1 = 0;
#line 348 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_stat_collection_size_ = 0;
#line 348 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->stat_collection = _data_->_tmp20_;
#line 348 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->stat_collection_length1 = _data_->_tmp20__length1;
#line 348 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		for (_data_->stat_it = 0; _data_->stat_it < _data_->_tmp20__length1; _data_->stat_it = _data_->stat_it + 1) {
#line 348 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			memset (&_data_->_tmp21_, 0, sizeof (BoxesLibvirtMachineMachineStat));
#line 348 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			boxes_libvirt_machine_machine_stat_copy (&_data_->stat_collection[_data_->stat_it], &_data_->_tmp21_);
#line 348 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_vala1_stat = _data_->_tmp21_;
#line 4040 "libvirt-machine.c"
			{
#line 349 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp22_ = _data_->self->cpu_stats;
#line 349 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp22__length1 = _data_->self->cpu_stats_length1;
#line 349 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp23_ = _data_->_vala1_stat;
#line 349 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp24_ = _data_->_tmp23_.cpu_guest_percent;
#line 349 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_vala_array_add4 (&_data_->self->cpu_stats, &_data_->self->cpu_stats_length1, &_data_->self->_cpu_stats_size_, _data_->_tmp24_);
#line 350 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp25_ = _data_->self->net_stats;
#line 350 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp25__length1 = _data_->self->net_stats_length1;
#line 350 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp26_ = _data_->_vala1_stat;
#line 350 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp27_ = _data_->_tmp26_.net_read;
#line 350 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp28_ = _data_->_vala1_stat;
#line 350 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp29_ = _data_->_tmp28_.net_write;
#line 350 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_vala_array_add5 (&_data_->self->net_stats, &_data_->self->net_stats_length1, &_data_->self->_net_stats_size_, _data_->_tmp27_ + _data_->_tmp29_);
#line 351 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp30_ = _data_->self->io_stats;
#line 351 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp30__length1 = _data_->self->io_stats_length1;
#line 351 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp31_ = _data_->_vala1_stat;
#line 351 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp32_ = _data_->_tmp31_.disk_read;
#line 351 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp33_ = _data_->_vala1_stat;
#line 351 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp34_ = _data_->_tmp33_.disk_write;
#line 351 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_vala_array_add6 (&_data_->self->io_stats, &_data_->self->io_stats_length1, &_data_->self->_io_stats_size_, _data_->_tmp32_ + _data_->_tmp34_);
#line 348 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				boxes_libvirt_machine_machine_stat_destroy (&_data_->_vala1_stat);
#line 4082 "libvirt-machine.c"
			}
		}
	}
#line 354 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_signal_emit (_data_->self, boxes_libvirt_machine_signals[BOXES_LIBVIRT_MACHINE_STATS_UPDATED_SIGNAL], 0);
#line 324 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 324 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_state_ != 0) {
#line 324 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 324 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 4096 "libvirt-machine.c"
		}
	}
#line 324 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_object_unref (_data_->_async_result);
#line 324 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return FALSE;
#line 4103 "libvirt-machine.c"
}


static Block42Data* block42_data_ref (Block42Data* _data42_) {
#line 358 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_atomic_int_inc (&_data42_->_ref_count_);
#line 358 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return _data42_;
#line 4112 "libvirt-machine.c"
}


static void block42_data_unref (void * _userdata_) {
	Block42Data* _data42_;
	_data42_ = (Block42Data*) _userdata_;
#line 358 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (g_atomic_int_dec_and_test (&_data42_->_ref_count_)) {
#line 4121 "libvirt-machine.c"
		BoxesLibvirtMachine* self;
#line 358 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		self = _data42_->self;
#line 358 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (self);
#line 358 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_slice_free (Block42Data, _data42_);
#line 4129 "libvirt-machine.c"
	}
}


static void __lambda161_ (Block42Data* _data42_) {
	BoxesLibvirtMachine* self;
#line 373 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self = _data42_->self;
#line 373 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data42_->stats_updating = FALSE;
#line 4140 "libvirt-machine.c"
}


static void ___lambda161__gasync_ready_callback (GObject* source_object, GAsyncResult* res, gpointer self) {
#line 373 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	__lambda161_ (self);
#line 373 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	block42_data_unref (self);
#line 4149 "libvirt-machine.c"
}


static gboolean ___lambda158_ (Block42Data* _data42_) {
	BoxesLibvirtMachine* self;
	gboolean result = FALSE;
	gboolean _tmp0_;
#line 365 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self = _data42_->self;
#line 366 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = _data42_->stats_updating;
#line 366 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp0_) {
#line 4163 "libvirt-machine.c"
		const gchar* _tmp1_;
		const gchar* _tmp2_;
#line 367 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp1_ = boxes_collection_item_get_name ((BoxesCollectionItem*) self);
#line 367 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp2_ = _tmp1_;
#line 367 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_warning ("libvirt-machine.vala:367: Fetching of stats for '%s' is taking too lon" \
"g. Probably a libvirt bug.", _tmp2_);
#line 369 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		result = TRUE;
#line 369 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return result;
#line 4176 "libvirt-machine.c"
	}
#line 372 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data42_->stats_updating = TRUE;
#line 373 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_update_stats (self, ___lambda161__gasync_ready_callback, block42_data_ref (_data42_));
#line 375 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	result = TRUE;
#line 375 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 4186 "libvirt-machine.c"
}


static gboolean ____lambda158__gsource_func (gpointer self) {
	gboolean result;
	result = ___lambda158_ (self);
#line 365 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 4195 "libvirt-machine.c"
}


static void boxes_libvirt_machine_set_stats_enable (BoxesLibvirtMachine* self, gboolean enable) {
	gboolean _tmp0_;
#line 357 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (self != NULL);
#line 358 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = enable;
#line 358 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp0_) {
#line 4207 "libvirt-machine.c"
		Block42Data* _data42_;
		const gchar* _tmp1_;
		const gchar* _tmp2_;
		gchar* _tmp3_;
		gchar* _tmp4_;
		guint _tmp5_;
		GCancellable* _tmp6_;
		guint _tmp7_;
#line 358 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data42_ = g_slice_new0 (Block42Data);
#line 358 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data42_->_ref_count_ = 1;
#line 358 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data42_->self = g_object_ref (self);
#line 359 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp1_ = boxes_collection_item_get_name ((BoxesCollectionItem*) self);
#line 359 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp2_ = _tmp1_;
#line 359 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp3_ = g_strconcat ("enable statistics for ", _tmp2_, NULL);
#line 359 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp4_ = _tmp3_;
#line 359 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_debug ("libvirt-machine.vala:359: %s", _tmp4_);
#line 359 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_free0 (_tmp4_);
#line 360 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp5_ = self->priv->stats_update_timeout;
#line 360 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (_tmp5_ != ((guint) 0)) {
#line 361 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			block42_data_unref (_data42_);
#line 361 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data42_ = NULL;
#line 361 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			return;
#line 4244 "libvirt-machine.c"
		}
#line 363 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp6_ = self->priv->stats_cancellable;
#line 363 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_cancellable_reset (_tmp6_);
#line 364 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data42_->stats_updating = FALSE;
#line 365 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp7_ = g_timeout_add_seconds_full (G_PRIORITY_DEFAULT, (guint) 1, ____lambda158__gsource_func, block42_data_ref (_data42_), block42_data_unref);
#line 365 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		self->priv->stats_update_timeout = _tmp7_;
#line 358 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		block42_data_unref (_data42_);
#line 358 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data42_ = NULL;
#line 4260 "libvirt-machine.c"
	} else {
		const gchar* _tmp8_;
		const gchar* _tmp9_;
		gchar* _tmp10_;
		gchar* _tmp11_;
		guint _tmp12_;
#line 378 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp8_ = boxes_collection_item_get_name ((BoxesCollectionItem*) self);
#line 378 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp9_ = _tmp8_;
#line 378 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp10_ = g_strconcat ("disable statistics for ", _tmp9_, NULL);
#line 378 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp11_ = _tmp10_;
#line 378 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_debug ("libvirt-machine.vala:378: %s", _tmp11_);
#line 378 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_free0 (_tmp11_);
#line 379 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp12_ = self->priv->stats_update_timeout;
#line 379 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (_tmp12_ != ((guint) 0)) {
#line 4283 "libvirt-machine.c"
			GCancellable* _tmp13_;
			guint _tmp14_;
#line 380 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_tmp13_ = self->priv->stats_cancellable;
#line 380 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_cancellable_cancel (_tmp13_);
#line 381 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_tmp14_ = self->priv->stats_update_timeout;
#line 381 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_source_remove (_tmp14_);
#line 4294 "libvirt-machine.c"
		}
#line 383 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		self->priv->stats_update_timeout = (guint) 0;
#line 4298 "libvirt-machine.c"
	}
}


static void _g_object_unref0_ (gpointer var) {
#line 387 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	(var == NULL) ? NULL : (var = (g_object_unref (var), NULL));
#line 4306 "libvirt-machine.c"
}


static inline void _g_list_free__g_object_unref0_ (GList* self) {
#line 387 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_list_free_full (self, (GDestroyNotify) _g_object_unref0_);
#line 4313 "libvirt-machine.c"
}


static GList* boxes_libvirt_machine_real_get_properties (BoxesMachine* base, BoxesPropertiesPage page) {
	BoxesLibvirtMachine * self;
	GList* result = NULL;
	GList* list = NULL;
	BoxesLibvirtMachineProperties* _tmp0_;
	BoxesPropertiesPage _tmp1_;
	GList* _tmp2_;
	BoxesDisplay* _tmp3_;
	BoxesDisplay* _tmp4_;
#line 387 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self = (BoxesLibvirtMachine*) base;
#line 388 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = self->properties;
#line 388 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = page;
#line 388 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = boxes_iproperties_provider_get_properties ((BoxesIPropertiesProvider*) _tmp0_, _tmp1_);
#line 388 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	list = _tmp2_;
#line 390 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = boxes_machine_get_display ((BoxesMachine*) self);
#line 390 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp4_ = _tmp3_;
#line 390 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp4_ != NULL) {
#line 4342 "libvirt-machine.c"
		BoxesDisplay* _tmp5_;
		BoxesDisplay* _tmp6_;
		BoxesPropertiesPage _tmp7_;
		GList* _tmp8_;
#line 391 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp5_ = boxes_machine_get_display ((BoxesMachine*) self);
#line 391 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp6_ = _tmp5_;
#line 391 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp7_ = page;
#line 391 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp8_ = boxes_display_get_properties (_tmp6_, _tmp7_);
#line 391 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		list = g_list_concat (list, _tmp8_);
#line 4357 "libvirt-machine.c"
	}
#line 393 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	result = list;
#line 393 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 4363 "libvirt-machine.c"
}


gboolean boxes_libvirt_machine_update_display (BoxesLibvirtMachine* self, GError** error) {
	gboolean result = FALSE;
	gboolean created_display = FALSE;
	BoxesDisplay* _tmp0_;
	BoxesDisplay* _tmp1_;
	BoxesDisplay* _tmp2_;
	BoxesDisplay* _tmp3_;
	GError * _inner_error_ = NULL;
#line 396 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 397 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_update_domain_config (self);
#line 399 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = boxes_machine_get_display ((BoxesMachine*) self);
#line 399 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _tmp0_;
#line 399 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	created_display = _tmp1_ == NULL;
#line 400 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = boxes_machine_get_display ((BoxesMachine*) self);
#line 400 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = _tmp2_;
#line 400 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp3_ == NULL) {
#line 4391 "libvirt-machine.c"
		BoxesDisplay* _tmp4_ = NULL;
		BoxesDisplay* _tmp5_;
#line 401 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp5_ = boxes_libvirt_machine_create_display (self, &_inner_error_);
#line 401 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp4_ = _tmp5_;
#line 401 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 4400 "libvirt-machine.c"
			gboolean _tmp6_ = FALSE;
#line 401 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_propagate_error (error, _inner_error_);
#line 401 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			return _tmp6_;
#line 4406 "libvirt-machine.c"
		}
#line 401 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_machine_set_display ((BoxesMachine*) self, _tmp4_);
#line 400 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (_tmp4_);
#line 4412 "libvirt-machine.c"
	}
#line 402 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	result = created_display;
#line 402 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 4418 "libvirt-machine.c"
}


static const gchar* string_to_string (const gchar* self) {
	const gchar* result = NULL;
#line 1450 "/home/fborges/jhbuild/install/share/vala-0.38/vapi/glib-2.0.vapi"
	g_return_val_if_fail (self != NULL, NULL);
#line 1451 "/home/fborges/jhbuild/install/share/vala-0.38/vapi/glib-2.0.vapi"
	result = self;
#line 1451 "/home/fborges/jhbuild/install/share/vala-0.38/vapi/glib-2.0.vapi"
	return result;
#line 4430 "libvirt-machine.c"
}


static BoxesDisplay* boxes_libvirt_machine_create_display (BoxesLibvirtMachine* self, GError** error) {
	BoxesDisplay* result = NULL;
	gchar* type = NULL;
	gchar* port_str = NULL;
	gchar* socket = NULL;
	gchar* host = NULL;
	gchar* xmldoc = NULL;
	GVirConfigDomain* _tmp0_;
	gchar* _tmp1_;
	gchar* _tmp2_ = NULL;
	const gchar* _tmp3_;
	gchar* _tmp4_;
	gchar* _tmp5_;
	gchar* _tmp6_ = NULL;
	const gchar* _tmp7_;
	const gchar* _tmp8_;
	const gchar* _tmp9_;
	gchar* _tmp10_;
	gchar* _tmp11_;
	gchar* _tmp12_;
	gchar* _tmp13_;
	gchar* _tmp14_;
	gchar* _tmp15_ = NULL;
	const gchar* _tmp16_;
	const gchar* _tmp17_;
	const gchar* _tmp18_;
	gchar* _tmp19_;
	gchar* _tmp20_;
	gchar* _tmp21_;
	gchar* _tmp22_;
	gchar* _tmp23_;
	gchar* _tmp24_ = NULL;
	const gchar* _tmp25_;
	const gchar* _tmp26_;
	const gchar* _tmp27_;
	gchar* _tmp28_;
	gchar* _tmp29_;
	gchar* _tmp30_;
	gchar* _tmp31_;
	gchar* _tmp32_;
	gint port = 0;
	const gchar* _tmp33_;
	gint _tmp34_;
	gboolean _tmp35_ = FALSE;
	const gchar* _tmp36_;
	const gchar* _tmp39_;
	const gchar* _tmp40_;
	GQuark _tmp42_ = 0U;
#line 418 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	static GQuark _tmp41_label0 = 0;
#line 418 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	static GQuark _tmp41_label1 = 0;
#line 4486 "libvirt-machine.c"
	GError * _inner_error_ = NULL;
#line 405 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 408 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = self->priv->_domain_config;
#line 408 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = gvir_config_object_to_xml ((GVirConfigObject*) _tmp0_);
#line 408 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	xmldoc = _tmp1_;
#line 409 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = xmldoc;
#line 409 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp4_ = boxes_extract_xpath (_tmp3_, "string(/domain/devices/graphics/@type)", TRUE, &_inner_error_);
#line 409 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = _tmp4_;
#line 409 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 409 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (_inner_error_->domain == BOXES_ERROR) {
#line 409 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_propagate_error (error, _inner_error_);
#line 409 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (xmldoc);
#line 409 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (host);
#line 409 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (socket);
#line 409 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (port_str);
#line 409 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (type);
#line 409 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			return NULL;
#line 4520 "libvirt-machine.c"
		} else {
#line 409 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (xmldoc);
#line 409 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (host);
#line 409 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (socket);
#line 409 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (port_str);
#line 409 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (type);
#line 409 "/home/fborges/checkout/gnome-boxes/src/libvirt-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 409 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_clear_error (&_inner_error_);
#line 409 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			return NULL;
#line 4538 "libvirt-machine.c"
		}
	}
#line 409 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp5_ = _tmp2_;
#line 409 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = NULL;
#line 409 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (type);
#line 409 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	type = _tmp5_;
#line 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp7_ = xmldoc;
#line 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp8_ = type;
#line 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp9_ = string_to_string (_tmp8_);
#line 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp10_ = g_strconcat ("string(/domain/devices/graphics[@type='", _tmp9_, "']/@port)", NULL);
#line 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp11_ = _tmp10_;
#line 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp12_ = boxes_extract_xpath (_tmp7_, _tmp11_, FALSE, &_inner_error_);
#line 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp13_ = _tmp12_;
#line 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (_tmp11_);
#line 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp6_ = _tmp13_;
#line 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (_inner_error_->domain == BOXES_ERROR) {
#line 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_propagate_error (error, _inner_error_);
#line 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (_tmp2_);
#line 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (xmldoc);
#line 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (host);
#line 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (socket);
#line 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (port_str);
#line 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (type);
#line 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			return NULL;
#line 4587 "libvirt-machine.c"
		} else {
#line 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (_tmp2_);
#line 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (xmldoc);
#line 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (host);
#line 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (socket);
#line 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (port_str);
#line 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (type);
#line 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-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 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_clear_error (&_inner_error_);
#line 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			return NULL;
#line 4607 "libvirt-machine.c"
		}
	}
#line 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp14_ = _tmp6_;
#line 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp6_ = NULL;
#line 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (port_str);
#line 410 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	port_str = _tmp14_;
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp16_ = xmldoc;
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp17_ = type;
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp18_ = string_to_string (_tmp17_);
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp19_ = g_strconcat ("string(/domain/devices/graphics[@type='", _tmp18_, "']/@socket)", NULL);
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp20_ = _tmp19_;
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp21_ = boxes_extract_xpath (_tmp16_, _tmp20_, FALSE, &_inner_error_);
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp22_ = _tmp21_;
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (_tmp20_);
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp15_ = _tmp22_;
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (_inner_error_->domain == BOXES_ERROR) {
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_propagate_error (error, _inner_error_);
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (_tmp6_);
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (_tmp2_);
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (xmldoc);
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (host);
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (socket);
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (port_str);
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (type);
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			return NULL;
#line 4658 "libvirt-machine.c"
		} else {
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (_tmp6_);
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (_tmp2_);
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (xmldoc);
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (host);
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (socket);
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (port_str);
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (type);
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-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 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_clear_error (&_inner_error_);
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			return NULL;
#line 4680 "libvirt-machine.c"
		}
	}
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp23_ = _tmp15_;
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp15_ = NULL;
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (socket);
#line 411 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	socket = _tmp23_;
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp25_ = xmldoc;
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp26_ = type;
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp27_ = string_to_string (_tmp26_);
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp28_ = g_strconcat ("string(/domain/devices/graphics[@type='", _tmp27_, "']/@listen)", NULL);
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp29_ = _tmp28_;
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp30_ = boxes_extract_xpath (_tmp25_, _tmp29_, FALSE, &_inner_error_);
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp31_ = _tmp30_;
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (_tmp29_);
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp24_ = _tmp31_;
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (_inner_error_->domain == BOXES_ERROR) {
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_propagate_error (error, _inner_error_);
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (_tmp15_);
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (_tmp6_);
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (_tmp2_);
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (xmldoc);
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (host);
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (socket);
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (port_str);
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (type);
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			return NULL;
#line 4733 "libvirt-machine.c"
		} else {
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (_tmp15_);
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (_tmp6_);
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (_tmp2_);
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (xmldoc);
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (host);
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (socket);
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (port_str);
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (type);
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-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 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_clear_error (&_inner_error_);
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			return NULL;
#line 4757 "libvirt-machine.c"
		}
	}
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp32_ = _tmp24_;
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp24_ = NULL;
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (host);
#line 412 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	host = _tmp32_;
#line 413 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp33_ = port_str;
#line 413 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp34_ = atoi (_tmp33_);
#line 413 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	port = _tmp34_;
#line 415 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp36_ = host;
#line 415 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp36_ == NULL) {
#line 415 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp35_ = TRUE;
#line 4780 "libvirt-machine.c"
	} else {
		const gchar* _tmp37_;
#line 415 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp37_ = host;
#line 415 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp35_ = g_strcmp0 (_tmp37_, "") == 0;
#line 4787 "libvirt-machine.c"
	}
#line 415 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp35_) {
#line 4791 "libvirt-machine.c"
		gchar* _tmp38_;
#line 416 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp38_ = g_strdup ("localhost");
#line 416 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_free0 (host);
#line 416 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		host = _tmp38_;
#line 4799 "libvirt-machine.c"
	}
#line 418 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp39_ = type;
#line 418 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp40_ = _tmp39_;
#line 418 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp42_ = (NULL == _tmp40_) ? 0 : g_quark_from_string (_tmp40_);
#line 418 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp42_ == ((0 != _tmp41_label0) ? _tmp41_label0 : (_tmp41_label0 = g_quark_from_static_string ("spice")))) {
#line 418 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		switch (0) {
#line 4811 "libvirt-machine.c"
			default:
			{
				gint _tmp43_;
#line 420 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_tmp43_ = port;
#line 420 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				if (_tmp43_ > 0) {
#line 4819 "libvirt-machine.c"
					BoxesBoxConfig* _tmp44_;
					const gchar* _tmp45_;
					gint _tmp46_;
					BoxesSpiceDisplay* _tmp47_;
#line 421 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp44_ = ((BoxesMachine*) self)->config;
#line 421 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp45_ = host;
#line 421 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp46_ = port;
#line 421 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp47_ = boxes_spice_display_new ((BoxesMachine*) self, _tmp44_, _tmp45_, _tmp46_, 0, NULL);
#line 421 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					result = (BoxesDisplay*) _tmp47_;
#line 421 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (_tmp24_);
#line 421 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (_tmp15_);
#line 421 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (_tmp6_);
#line 421 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (_tmp2_);
#line 421 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (xmldoc);
#line 421 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (host);
#line 421 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (socket);
#line 421 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (port_str);
#line 421 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (type);
#line 421 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					return result;
#line 4854 "libvirt-machine.c"
				} else {
					BoxesBoxConfig* _tmp48_;
					BoxesSpiceDisplay* _tmp49_;
#line 423 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp48_ = ((BoxesMachine*) self)->config;
#line 423 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp49_ = boxes_spice_display_new_priv ((BoxesMachine*) self, _tmp48_);
#line 423 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					result = (BoxesDisplay*) _tmp49_;
#line 423 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (_tmp24_);
#line 423 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (_tmp15_);
#line 423 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (_tmp6_);
#line 423 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (_tmp2_);
#line 423 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (xmldoc);
#line 423 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (host);
#line 423 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (socket);
#line 423 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (port_str);
#line 423 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (type);
#line 423 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					return result;
#line 4884 "libvirt-machine.c"
				}
			}
		}
	} else if (_tmp42_ == ((0 != _tmp41_label1) ? _tmp41_label1 : (_tmp41_label1 = g_quark_from_static_string ("vnc")))) {
#line 418 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		switch (0) {
#line 4891 "libvirt-machine.c"
			default:
			{
				BoxesBoxConfig* _tmp50_;
				const gchar* _tmp51_;
				gint _tmp52_;
				BoxesVncDisplay* _tmp53_;
#line 426 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_tmp50_ = ((BoxesMachine*) self)->config;
#line 426 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_tmp51_ = host;
#line 426 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_tmp52_ = port;
#line 426 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_tmp53_ = boxes_vnc_display_new (_tmp50_, _tmp51_, _tmp52_);
#line 426 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				result = (BoxesDisplay*) _tmp53_;
#line 426 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_g_free0 (_tmp24_);
#line 426 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_g_free0 (_tmp15_);
#line 426 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_g_free0 (_tmp6_);
#line 426 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_g_free0 (_tmp2_);
#line 426 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_g_free0 (xmldoc);
#line 426 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_g_free0 (host);
#line 426 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_g_free0 (socket);
#line 426 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_g_free0 (port_str);
#line 426 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_g_free0 (type);
#line 426 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				return result;
#line 4928 "libvirt-machine.c"
			}
		}
	} else {
#line 418 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		switch (0) {
#line 4934 "libvirt-machine.c"
			default:
			{
				const gchar* _tmp54_;
				gchar* _tmp55_;
				gchar* _tmp56_;
				GError* _tmp57_;
				GError* _tmp58_;
#line 429 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_tmp54_ = type;
#line 429 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_tmp55_ = g_strconcat ("unsupported display of type ", _tmp54_, NULL);
#line 429 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_tmp56_ = _tmp55_;
#line 429 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_tmp57_ = g_error_new_literal (BOXES_ERROR, BOXES_ERROR_INVALID, _tmp56_);
#line 429 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_tmp58_ = _tmp57_;
#line 429 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_g_free0 (_tmp56_);
#line 429 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_inner_error_ = _tmp58_;
#line 429 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				if (_inner_error_->domain == BOXES_ERROR) {
#line 429 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					g_propagate_error (error, _inner_error_);
#line 429 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (_tmp24_);
#line 429 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (_tmp15_);
#line 429 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (_tmp6_);
#line 429 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (_tmp2_);
#line 429 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (xmldoc);
#line 429 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (host);
#line 429 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (socket);
#line 429 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (port_str);
#line 429 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (type);
#line 429 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					return NULL;
#line 4980 "libvirt-machine.c"
				} else {
#line 429 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (_tmp24_);
#line 429 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (_tmp15_);
#line 429 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (_tmp6_);
#line 429 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (_tmp2_);
#line 429 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (xmldoc);
#line 429 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (host);
#line 429 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (socket);
#line 429 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (port_str);
#line 429 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (type);
#line 429 "/home/fborges/checkout/gnome-boxes/src/libvirt-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 429 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					g_clear_error (&_inner_error_);
#line 429 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					return NULL;
#line 5006 "libvirt-machine.c"
				}
			}
		}
	}
#line 405 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (_tmp24_);
#line 405 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (_tmp15_);
#line 405 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (_tmp6_);
#line 405 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (_tmp2_);
#line 405 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (xmldoc);
#line 405 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (host);
#line 405 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (socket);
#line 405 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (port_str);
#line 405 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (type);
#line 5029 "libvirt-machine.c"
}


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


static void boxes_libvirt_machine_real_take_screenshot (BoxesMachine* base, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	BoxesLibvirtMachine * self;
	BoxesLibvirtMachineTakeScreenshotData* _data_;
	BoxesLibvirtMachine* _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self = (BoxesLibvirtMachine*) base;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_slice_new0 (BoxesLibvirtMachineTakeScreenshotData);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_task_set_task_data (_data_->_async_result, _data_, boxes_libvirt_machine_real_take_screenshot_data_free);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self = _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_real_take_screenshot_co (_data_);
#line 5064 "libvirt-machine.c"
}


static GdkPixbuf* boxes_libvirt_machine_real_take_screenshot_finish (BoxesMachine* base, GAsyncResult* _res_, GError** error) {
	GdkPixbuf* result;
	BoxesLibvirtMachineTakeScreenshotData* _data_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_task_propagate_pointer (G_TASK (_res_), error);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (NULL == _data_) {
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return NULL;
#line 5077 "libvirt-machine.c"
	}
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	result = _data_->result;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->result = NULL;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 5085 "libvirt-machine.c"
}


static Block43Data* block43_data_ref (Block43Data* _data43_) {
#line 433 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_atomic_int_inc (&_data43_->_ref_count_);
#line 433 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return _data43_;
#line 5094 "libvirt-machine.c"
}


static void block43_data_unref (void * _userdata_) {
	Block43Data* _data43_;
	_data43_ = (Block43Data*) _userdata_;
#line 433 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (g_atomic_int_dec_and_test (&_data43_->_ref_count_)) {
#line 5103 "libvirt-machine.c"
		BoxesLibvirtMachine* self;
#line 433 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		self = _data43_->self;
#line 433 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (_data43_->stream);
#line 433 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (self);
#line 433 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_slice_free (Block43Data, _data43_);
#line 5113 "libvirt-machine.c"
	}
}


static void boxes_libvirt_machine_take_screenshot_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_) {
	BoxesLibvirtMachineTakeScreenshotData* _data_;
#line 436 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = _user_data_;
#line 436 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_source_object_ = source_object;
#line 436 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_res_ = _res_;
#line 436 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_real_take_screenshot_co (_data_);
#line 5128 "libvirt-machine.c"
}


static void __lambda173_ (Block43Data* _data43_, GError** error) {
	BoxesLibvirtMachine* self;
	GVirDomain* _tmp0_;
	GVirStream* _tmp1_;
	gchar* _tmp2_;
	gchar* _tmp3_;
	GError * _inner_error_ = NULL;
#line 445 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self = _data43_->self;
#line 446 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = self->priv->_domain;
#line 446 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _data43_->stream;
#line 446 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = gvir_domain_screenshot (_tmp0_, _tmp1_, (guint) 0, (guint) 0, &_inner_error_);
#line 446 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = _tmp2_;
#line 446 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (_tmp3_);
#line 446 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 446 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_propagate_error (error, _inner_error_);
#line 446 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 5157 "libvirt-machine.c"
	}
}


static void ___lambda173__boxes_async_launcher_run_in_thread_func (gpointer self, GError** error) {
#line 445 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	__lambda173_ (self, error);
#line 5165 "libvirt-machine.c"
}


static gboolean boxes_libvirt_machine_real_take_screenshot_co (BoxesLibvirtMachineTakeScreenshotData* _data_) {
#line 433 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	switch (_data_->_state_) {
#line 433 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 0:
#line 5174 "libvirt-machine.c"
		goto _state_0;
#line 433 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 1:
#line 5178 "libvirt-machine.c"
		goto _state_1;
#line 433 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 2:
#line 5182 "libvirt-machine.c"
		goto _state_2;
#line 433 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 3:
#line 5186 "libvirt-machine.c"
		goto _state_3;
		default:
#line 433 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_assert_not_reached ();
#line 5191 "libvirt-machine.c"
	}
	_state_0:
#line 433 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data43_ = g_slice_new0 (Block43Data);
#line 433 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data43_->_ref_count_ = 1;
#line 433 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data43_->self = g_object_ref (_data_->self);
#line 433 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data43_->_async_data_ = _data_;
#line 434 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->state = GVIR_DOMAIN_STATE_NONE;
#line 5204 "libvirt-machine.c"
	{
#line 436 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp1_ = _data_->self->priv->_domain;
#line 436 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_state_ = 1;
#line 436 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		gvir_domain_get_info_async (_data_->_tmp1_, NULL, boxes_libvirt_machine_take_screenshot_ready, _data_);
#line 436 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 5214 "libvirt-machine.c"
		_state_1:
#line 436 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp2_ = gvir_domain_get_info_finish (_data_->_tmp1_, _data_->_res_, &_data_->_inner_error_);
#line 436 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp0_ = _data_->_tmp2_;
#line 436 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 5222 "libvirt-machine.c"
			goto __catch23_g_error;
		}
#line 436 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp3_ = _data_->_tmp0_;
#line 436 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp0_ = NULL;
#line 436 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp4_ = _data_->_tmp3_;
#line 436 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp5_ = _data_->_tmp4_->state;
#line 436 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->state = _data_->_tmp5_;
#line 436 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		__vala_GVirDomainInfo_free0 (_data_->_tmp4_);
#line 435 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		__vala_GVirDomainInfo_free0 (_data_->_tmp0_);
#line 5239 "libvirt-machine.c"
	}
	goto __finally23;
	__catch23_g_error:
	{
#line 435 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_error_ = _data_->_inner_error_;
#line 435 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_inner_error_ = NULL;
#line 438 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp6_ = boxes_collection_item_get_name ((BoxesCollectionItem*) _data_->self);
#line 438 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp7_ = _data_->_tmp6_;
#line 438 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_warning ("libvirt-machine.vala:438: Failed to get information on '%s'", _data_->_tmp7_);
#line 435 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_error_free0 (_data_->_error_);
#line 5256 "libvirt-machine.c"
	}
	__finally23:
#line 435 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 435 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 435 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		block43_data_unref (_data_->_data43_);
#line 435 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data43_ = NULL;
#line 435 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 435 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 5271 "libvirt-machine.c"
	}
#line 441 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp10_ = _data_->state;
#line 441 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_tmp10_ != GVIR_DOMAIN_STATE_RUNNING) {
#line 441 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp11_ = _data_->state;
#line 441 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp9_ = _data_->_tmp11_ != GVIR_DOMAIN_STATE_PAUSED;
#line 5281 "libvirt-machine.c"
	} else {
#line 441 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp9_ = FALSE;
#line 5285 "libvirt-machine.c"
	}
#line 441 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_tmp9_) {
#line 441 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp12_ = _data_->state;
#line 441 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp8_ = _data_->_tmp12_ != GVIR_DOMAIN_STATE_PMSUSPENDED;
#line 5293 "libvirt-machine.c"
	} else {
#line 441 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp8_ = FALSE;
#line 5297 "libvirt-machine.c"
	}
#line 441 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_tmp8_) {
#line 442 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->result = NULL;
#line 442 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		block43_data_unref (_data_->_data43_);
#line 442 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data43_ = NULL;
#line 442 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 442 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_state_ != 0) {
#line 442 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 442 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 5315 "libvirt-machine.c"
			}
		}
#line 442 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 442 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 5322 "libvirt-machine.c"
	}
#line 444 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp13_ = _data_->self->priv->_connection;
#line 444 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp14_ = gvir_connection_get_stream (_data_->_tmp13_, (guint) 0);
#line 444 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data43_->stream = _data_->_tmp14_;
#line 445 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp15_ = boxes_app_app;
#line 445 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp16_ = _data_->_tmp15_->async_launcher;
#line 445 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_state_ = 2;
#line 445 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_async_launcher_launch (_data_->_tmp16_, ___lambda173__boxes_async_launcher_run_in_thread_func, block43_data_ref (_data_->_data43_), block43_data_unref, boxes_libvirt_machine_take_screenshot_ready, _data_);
#line 445 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return FALSE;
#line 5340 "libvirt-machine.c"
	_state_2:
#line 445 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_async_launcher_launch_finish (_data_->_tmp16_, _data_->_res_, &_data_->_inner_error_);
#line 445 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 445 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 445 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		block43_data_unref (_data_->_data43_);
#line 445 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data43_ = NULL;
#line 445 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 445 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 5356 "libvirt-machine.c"
	}
#line 449 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp17_ = gdk_pixbuf_loader_new ();
#line 449 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->loader = _data_->_tmp17_;
#line 450 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp18_ = _data_->_data43_->stream;
#line 450 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp19_ = g_io_stream_get_input_stream ((GIOStream*) _data_->_tmp18_);
#line 450 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp20_ = _g_object_ref0 (_data_->_tmp19_);
#line 450 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->input_stream = _data_->_tmp20_;
#line 451 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp21_ = g_new0 (guint8, 65535);
#line 451 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->buffer = _data_->_tmp21_;
#line 451 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->buffer_length1 = 65535;
#line 451 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_buffer_size_ = _data_->buffer_length1;
#line 452 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->length = (gssize) 0;
#line 5380 "libvirt-machine.c"
	{
#line 453 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp22_ = TRUE;
#line 453 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		while (TRUE) {
#line 453 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			if (!_data_->_tmp22_) {
#line 456 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp23_ = _data_->length;
#line 456 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				if (!(_data_->_tmp23_ > ((gssize) 0))) {
#line 456 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					break;
#line 5394 "libvirt-machine.c"
				}
			}
#line 453 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp22_ = FALSE;
#line 454 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp25_ = _data_->input_stream;
#line 454 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp26_ = _data_->buffer;
#line 454 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp26__length1 = _data_->buffer_length1;
#line 454 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_state_ = 3;
#line 454 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_input_stream_read_async (_data_->_tmp25_, _data_->_tmp26_, (gsize) _data_->_tmp26__length1, G_PRIORITY_DEFAULT, NULL, boxes_libvirt_machine_take_screenshot_ready, _data_);
#line 454 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			return FALSE;
#line 5411 "libvirt-machine.c"
			_state_3:
#line 454 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp27_ = g_input_stream_read_finish (_data_->_tmp25_, _data_->_res_, &_data_->_inner_error_);
#line 454 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp24_ = _data_->_tmp27_;
#line 454 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 454 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 454 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->buffer = (g_free (_data_->buffer), NULL);
#line 454 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_g_object_unref0 (_data_->input_stream);
#line 454 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_g_object_unref0 (_data_->loader);
#line 454 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				block43_data_unref (_data_->_data43_);
#line 454 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_data43_ = NULL;
#line 454 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				g_object_unref (_data_->_async_result);
#line 454 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				return FALSE;
#line 5435 "libvirt-machine.c"
			}
#line 454 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->length = _data_->_tmp24_;
#line 455 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp28_ = _data_->loader;
#line 455 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp29_ = _data_->buffer;
#line 455 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp29__length1 = _data_->buffer_length1;
#line 455 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp30_ = _data_->length;
#line 455 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			gdk_pixbuf_loader_write (_data_->_tmp28_, _data_->_tmp29_ + 0, (gsize) (((gint) _data_->_tmp30_) - 0), &_data_->_inner_error_);
#line 455 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 455 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 455 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->buffer = (g_free (_data_->buffer), NULL);
#line 455 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_g_object_unref0 (_data_->input_stream);
#line 455 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_g_object_unref0 (_data_->loader);
#line 455 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				block43_data_unref (_data_->_data43_);
#line 455 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_data43_ = NULL;
#line 455 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				g_object_unref (_data_->_async_result);
#line 455 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				return FALSE;
#line 5467 "libvirt-machine.c"
			}
		}
	}
#line 457 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp31_ = _data_->loader;
#line 457 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	gdk_pixbuf_loader_close (_data_->_tmp31_, &_data_->_inner_error_);
#line 457 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 457 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 457 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->buffer = (g_free (_data_->buffer), NULL);
#line 457 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (_data_->input_stream);
#line 457 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (_data_->loader);
#line 457 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		block43_data_unref (_data_->_data43_);
#line 457 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data43_ = NULL;
#line 457 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 457 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 5493 "libvirt-machine.c"
	}
#line 459 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp32_ = _data_->loader;
#line 459 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp33_ = gdk_pixbuf_loader_get_pixbuf (_data_->_tmp32_);
#line 459 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp34_ = _g_object_ref0 (_data_->_tmp33_);
#line 459 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->result = _data_->_tmp34_;
#line 459 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->buffer = (g_free (_data_->buffer), NULL);
#line 459 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->input_stream);
#line 459 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->loader);
#line 459 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	block43_data_unref (_data_->_data43_);
#line 459 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data43_ = NULL;
#line 459 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 459 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_state_ != 0) {
#line 459 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 459 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 5521 "libvirt-machine.c"
		}
	}
#line 459 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_object_unref (_data_->_async_result);
#line 459 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return FALSE;
#line 5528 "libvirt-machine.c"
}


static Block44Data* block44_data_ref (Block44Data* _data44_) {
#line 472 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_atomic_int_inc (&_data44_->_ref_count_);
#line 472 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return _data44_;
#line 5537 "libvirt-machine.c"
}


static void block44_data_unref (void * _userdata_) {
	Block44Data* _data44_;
	_data44_ = (Block44Data*) _userdata_;
#line 472 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (g_atomic_int_dec_and_test (&_data44_->_ref_count_)) {
#line 5546 "libvirt-machine.c"
		BoxesLibvirtMachine* self;
#line 472 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		self = _data44_->self;
#line 472 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (_data44_->domain);
#line 472 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (self);
#line 472 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_slice_free (Block44Data, _data44_);
#line 5556 "libvirt-machine.c"
	}
}


static void ___lambda162_ (Block44Data* _data44_, GError** error) {
	BoxesLibvirtMachine* self;
	GVirStorageVol* _tmp6_;
	GError * _inner_error_ = NULL;
#line 477 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self = _data44_->self;
#line 5567 "libvirt-machine.c"
	{
		GVirDomain* _tmp0_;
#line 480 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp0_ = _data44_->domain;
#line 480 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		gvir_domain_delete (_tmp0_, (guint) (GVIR_DOMAIN_DELETE_SAVED_STATE | GVIR_DOMAIN_DELETE_SNAPSHOTS_METADATA), &_inner_error_);
#line 480 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 5576 "libvirt-machine.c"
			goto __catch24_g_error;
		}
	}
	goto __finally24;
	__catch24_g_error:
	{
		GError* err = NULL;
		GError* _tmp1_;
		const gchar* _tmp2_;
#line 478 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		err = _inner_error_;
#line 478 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_inner_error_ = NULL;
#line 483 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp1_ = err;
#line 483 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp2_ = _tmp1_->message;
#line 483 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_warning ("libvirt-machine.vala:483: %s", _tmp2_);
#line 478 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_error_free0 (err);
#line 5598 "libvirt-machine.c"
	}
	__finally24:
#line 478 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 478 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_propagate_error (error, _inner_error_);
#line 478 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 5607 "libvirt-machine.c"
	}
	{
		GVirDomain* _tmp3_;
#line 488 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp3_ = _data44_->domain;
#line 488 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		gvir_domain_stop (_tmp3_, (guint) 0, &_inner_error_);
#line 488 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 5617 "libvirt-machine.c"
			goto __catch25_g_error;
		}
	}
	goto __finally25;
	__catch25_g_error:
	{
		GError* err = NULL;
		GError* _tmp4_;
		const gchar* _tmp5_;
#line 486 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		err = _inner_error_;
#line 486 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_inner_error_ = NULL;
#line 490 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp4_ = err;
#line 490 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp5_ = _tmp4_->message;
#line 490 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_debug ("libvirt-machine.vala:490: %s", _tmp5_);
#line 486 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_error_free0 (err);
#line 5639 "libvirt-machine.c"
	}
	__finally25:
#line 486 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 486 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_propagate_error (error, _inner_error_);
#line 486 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 5648 "libvirt-machine.c"
	}
#line 494 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp6_ = self->priv->_storage_volume;
#line 494 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp6_ != NULL) {
#line 5654 "libvirt-machine.c"
		{
			GVirStorageVol* _tmp7_;
#line 496 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_tmp7_ = self->priv->_storage_volume;
#line 496 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			gvir_storage_vol_delete (_tmp7_, (guint) 0, &_inner_error_);
#line 496 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 5663 "libvirt-machine.c"
				goto __catch26_g_error;
			}
		}
		goto __finally26;
		__catch26_g_error:
		{
			GError* err = NULL;
			GError* _tmp8_;
			const gchar* _tmp9_;
#line 495 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			err = _inner_error_;
#line 495 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_inner_error_ = NULL;
#line 498 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_tmp8_ = err;
#line 498 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_tmp9_ = _tmp8_->message;
#line 498 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_warning ("libvirt-machine.vala:498: %s", _tmp9_);
#line 495 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_error_free0 (err);
#line 5685 "libvirt-machine.c"
		}
		__finally26:
#line 495 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 495 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_propagate_error (error, _inner_error_);
#line 495 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			return;
#line 5694 "libvirt-machine.c"
		}
	}
}


static void ____lambda162__boxes_async_launcher_run_in_thread_func (gpointer self, GError** error) {
#line 477 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	___lambda162_ (self, error);
#line 5703 "libvirt-machine.c"
}


static void boxes_libvirt_machine_real_delete (BoxesMachine* base, gboolean by_user) {
	BoxesLibvirtMachine * self;
	const gchar* _tmp0_;
	const gchar* _tmp1_;
	gchar* _tmp2_;
	gchar* _tmp3_;
	gboolean _tmp4_;
	guint _tmp5_;
	gboolean _tmp7_;
#line 462 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self = (BoxesLibvirtMachine*) base;
#line 463 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = boxes_collection_item_get_name ((BoxesCollectionItem*) self);
#line 463 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _tmp0_;
#line 463 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = g_strconcat ("delete libvirt machine: ", _tmp1_, NULL);
#line 463 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = _tmp2_;
#line 463 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_debug ("libvirt-machine.vala:463: %s", _tmp3_);
#line 463 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (_tmp3_);
#line 464 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp4_ = by_user;
#line 464 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	BOXES_MACHINE_CLASS (boxes_libvirt_machine_parent_class)->delete (G_TYPE_CHECK_INSTANCE_CAST (self, BOXES_TYPE_MACHINE, BoxesMachine), _tmp4_);
#line 466 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_set_stats_enable (self, FALSE);
#line 467 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp5_ = self->priv->shutdown_timeout;
#line 467 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp5_ != ((guint) 0)) {
#line 5740 "libvirt-machine.c"
		guint _tmp6_;
#line 468 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp6_ = self->priv->shutdown_timeout;
#line 468 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_source_remove (_tmp6_);
#line 469 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		self->priv->shutdown_timeout = (guint) 0;
#line 5748 "libvirt-machine.c"
	}
#line 472 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp7_ = by_user;
#line 472 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp7_) {
#line 5754 "libvirt-machine.c"
		Block44Data* _data44_;
		GVirDomain* _tmp8_;
		GVirDomain* _tmp9_;
		BoxesApp* _tmp10_;
		BoxesAsyncLauncher* _tmp11_;
#line 472 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data44_ = g_slice_new0 (Block44Data);
#line 472 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data44_->_ref_count_ = 1;
#line 472 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data44_->self = g_object_ref (self);
#line 473 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp8_ = self->priv->_domain;
#line 473 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp9_ = _g_object_ref0 (_tmp8_);
#line 473 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data44_->domain = _tmp9_;
#line 477 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp10_ = boxes_app_app;
#line 477 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp11_ = _tmp10_->async_launcher;
#line 477 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_async_launcher_launch (_tmp11_, ____lambda162__boxes_async_launcher_run_in_thread_func, block44_data_ref (_data44_), block44_data_unref, NULL, NULL);
#line 472 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		block44_data_unref (_data44_);
#line 472 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data44_ = NULL;
#line 5782 "libvirt-machine.c"
	}
}


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


static void boxes_libvirt_machine_real_save_real (BoxesMachine* base, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	BoxesLibvirtMachine * self;
	BoxesLibvirtMachineSaveRealData* _data_;
	BoxesLibvirtMachine* _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self = (BoxesLibvirtMachine*) base;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_slice_new0 (BoxesLibvirtMachineSaveRealData);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_task_set_task_data (_data_->_async_result, _data_, boxes_libvirt_machine_real_save_real_data_free);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self = _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_real_save_real_co (_data_);
#line 5816 "libvirt-machine.c"
}


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


static void boxes_libvirt_machine_save_real_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_) {
	BoxesLibvirtMachineSaveRealData* _data_;
#line 506 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = _user_data_;
#line 506 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_source_object_ = source_object;
#line 506 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_res_ = _res_;
#line 506 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_real_save_real_co (_data_);
#line 5843 "libvirt-machine.c"
}


static gboolean boxes_libvirt_machine_real_save_real_co (BoxesLibvirtMachineSaveRealData* _data_) {
#line 504 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	switch (_data_->_state_) {
#line 504 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 0:
#line 5852 "libvirt-machine.c"
		goto _state_0;
#line 504 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 1:
#line 5856 "libvirt-machine.c"
		goto _state_1;
		default:
#line 504 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_assert_not_reached ();
#line 5861 "libvirt-machine.c"
	}
	_state_0:
#line 505 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self->priv->saving = TRUE;
#line 506 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp0_ = _data_->self->priv->_domain;
#line 506 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_state_ = 1;
#line 506 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	gvir_domain_save_async (_data_->_tmp0_, (guint) 0, NULL, boxes_libvirt_machine_save_real_ready, _data_);
#line 506 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return FALSE;
#line 5874 "libvirt-machine.c"
	_state_1:
#line 506 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	gvir_domain_save_finish (_data_->_tmp0_, _data_->_res_, &_data_->_inner_error_);
#line 506 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 506 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 506 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 506 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 5886 "libvirt-machine.c"
	}
#line 507 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self->priv->saving = FALSE;
#line 504 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 504 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_state_ != 0) {
#line 504 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 504 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 5898 "libvirt-machine.c"
		}
	}
#line 504 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_object_unref (_data_->_async_result);
#line 504 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return FALSE;
#line 5905 "libvirt-machine.c"
}


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


void boxes_libvirt_machine_suspend (BoxesLibvirtMachine* self, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	BoxesLibvirtMachineSuspendData* _data_;
	BoxesLibvirtMachine* _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_slice_new0 (BoxesLibvirtMachineSuspendData);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_task_set_task_data (_data_->_async_result, _data_, boxes_libvirt_machine_suspend_data_free);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self = _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_suspend_co (_data_);
#line 5935 "libvirt-machine.c"
}


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


static void boxes_libvirt_machine_suspend_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_) {
	BoxesLibvirtMachineSuspendData* _data_;
#line 512 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = _user_data_;
#line 512 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_source_object_ = source_object;
#line 512 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_res_ = _res_;
#line 512 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_suspend_co (_data_);
#line 5962 "libvirt-machine.c"
}


static gboolean boxes_libvirt_machine_suspend_co (BoxesLibvirtMachineSuspendData* _data_) {
#line 510 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	switch (_data_->_state_) {
#line 510 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 0:
#line 5971 "libvirt-machine.c"
		goto _state_0;
#line 510 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 1:
#line 5975 "libvirt-machine.c"
		goto _state_1;
		default:
#line 510 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_assert_not_reached ();
#line 5980 "libvirt-machine.c"
	}
	_state_0:
#line 511 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp0_ = boxes_libvirt_machine_get_save_on_quit (_data_->self);
#line 511 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp1_ = _data_->_tmp0_;
#line 511 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_tmp1_) {
#line 512 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_state_ = 1;
#line 512 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_machine_save ((BoxesMachine*) _data_->self, boxes_libvirt_machine_suspend_ready, _data_);
#line 512 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 5995 "libvirt-machine.c"
		_state_1:
#line 512 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_machine_save_finish ((BoxesMachine*) _data_->self, _data_->_res_, &_data_->_inner_error_);
#line 512 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 512 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 512 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_object_unref (_data_->_async_result);
#line 512 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			return FALSE;
#line 6007 "libvirt-machine.c"
		}
	} else {
#line 514 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp2_ = _data_->self->priv->_domain;
#line 514 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		gvir_domain_suspend (_data_->_tmp2_, &_data_->_inner_error_);
#line 514 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 514 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 514 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_object_unref (_data_->_async_result);
#line 514 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			return FALSE;
#line 6022 "libvirt-machine.c"
		}
	}
#line 510 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 510 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_state_ != 0) {
#line 510 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 510 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 6033 "libvirt-machine.c"
		}
	}
#line 510 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_object_unref (_data_->_async_result);
#line 510 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return FALSE;
#line 6040 "libvirt-machine.c"
}


void boxes_libvirt_machine_force_shutdown (BoxesLibvirtMachine* self) {
	const gchar* _tmp0_;
	const gchar* _tmp1_;
	GError * _inner_error_ = NULL;
#line 517 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (self != NULL);
#line 518 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = boxes_collection_item_get_name ((BoxesCollectionItem*) self);
#line 518 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _tmp0_;
#line 518 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_debug ("libvirt-machine.vala:518: Force shutdown '%s'..", _tmp1_);
#line 6056 "libvirt-machine.c"
	{
		GVirDomain* _tmp2_;
#line 520 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		self->priv->force_stopped = TRUE;
#line 521 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp2_ = self->priv->_domain;
#line 521 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		gvir_domain_stop (_tmp2_, (guint) 0, &_inner_error_);
#line 521 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 6067 "libvirt-machine.c"
			goto __catch27_g_error;
		}
	}
	goto __finally27;
	__catch27_g_error:
	{
		GError* _error_ = NULL;
		GVirDomain* _tmp3_;
		const gchar* _tmp4_;
		GError* _tmp5_;
		const gchar* _tmp6_;
#line 519 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_error_ = _inner_error_;
#line 519 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_inner_error_ = NULL;
#line 523 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp3_ = self->priv->_domain;
#line 523 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp4_ = gvir_domain_get_name (_tmp3_);
#line 523 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp5_ = _error_;
#line 523 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp6_ = _tmp5_->message;
#line 523 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_warning ("libvirt-machine.vala:523: Failed to shutdown '%s': %s", _tmp4_, _tmp6_);
#line 519 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_error_free0 (_error_);
#line 6095 "libvirt-machine.c"
	}
	__finally27:
#line 519 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 519 "/home/fborges/checkout/gnome-boxes/src/libvirt-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 519 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_clear_error (&_inner_error_);
#line 519 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 6106 "libvirt-machine.c"
	}
}


void boxes_libvirt_machine_try_shutdown (BoxesLibvirtMachine* self) {
	GError * _inner_error_ = NULL;
#line 527 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (self != NULL);
#line 6115 "libvirt-machine.c"
	{
		GVirDomain* _tmp0_;
#line 529 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp0_ = self->priv->_domain;
#line 529 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		gvir_domain_shutdown (_tmp0_, (guint) 0, &_inner_error_);
#line 529 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 6124 "libvirt-machine.c"
			goto __catch28_g_error;
		}
	}
	goto __finally28;
	__catch28_g_error:
	{
		GError* _error_ = NULL;
		GVirDomain* _tmp1_;
		const gchar* _tmp2_;
		GError* _tmp3_;
		const gchar* _tmp4_;
#line 528 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_error_ = _inner_error_;
#line 528 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_inner_error_ = NULL;
#line 531 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp1_ = self->priv->_domain;
#line 531 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp2_ = gvir_domain_get_name (_tmp1_);
#line 531 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp3_ = _error_;
#line 531 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp4_ = _tmp3_->message;
#line 531 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_warning ("libvirt-machine.vala:531: Failed to reboot '%s': %s", _tmp2_, _tmp4_);
#line 528 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_error_free0 (_error_);
#line 6152 "libvirt-machine.c"
	}
	__finally28:
#line 528 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 528 "/home/fborges/checkout/gnome-boxes/src/libvirt-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 528 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_clear_error (&_inner_error_);
#line 528 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 6163 "libvirt-machine.c"
	}
}


GVirDomainDisk* boxes_libvirt_machine_get_domain_disk (BoxesLibvirtMachine* self, GError** error) {
	GVirDomainDisk* result = NULL;
	GVirDomainDisk* disk = NULL;
	gpointer _tmp0_;
	GVirDomainDisk* _tmp1_;
	GVirConfigDomain* _tmp2_;
	GList* _tmp3_;
	GError * _inner_error_ = NULL;
#line 535 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 536 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = NULL;
#line 536 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp0_, gvir_domain_disk_get_type ()) ? ((GVirDomainDisk*) _tmp0_) : NULL);
#line 536 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	disk = _tmp1_;
#line 538 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = self->priv->_domain_config;
#line 538 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = gvir_config_domain_get_devices (_tmp2_);
#line 6188 "libvirt-machine.c"
	{
		GList* device_config_collection = NULL;
		GList* device_config_it = NULL;
#line 538 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		device_config_collection = _tmp3_;
#line 538 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		for (device_config_it = device_config_collection; device_config_it != NULL; device_config_it = device_config_it->next) {
#line 6196 "libvirt-machine.c"
			GVirConfigDomainDevice* _tmp4_;
			GVirConfigDomainDevice* device_config = NULL;
#line 538 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_tmp4_ = _g_object_ref0 ((GVirConfigDomainDevice*) device_config_it->data);
#line 538 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			device_config = _tmp4_;
#line 6203 "libvirt-machine.c"
			{
				GVirConfigDomainDevice* _tmp5_;
#line 539 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_tmp5_ = device_config;
#line 539 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				if (G_TYPE_CHECK_INSTANCE_TYPE (_tmp5_, gvir_config_domain_disk_get_type ())) {
#line 6210 "libvirt-machine.c"
					GVirConfigDomainDisk* disk_config = NULL;
					GVirConfigDomainDevice* _tmp6_;
					GVirConfigDomainDisk* _tmp7_;
					GVirConfigDomainDiskGuestDeviceType disk_type = 0;
					GVirConfigDomainDisk* _tmp8_;
					GVirConfigDomainDiskGuestDeviceType _tmp9_;
					const gchar* _tmp10_ = NULL;
					GVirStorageVol* _tmp11_;
					gchar* storage_volume_path = NULL;
					gchar* _tmp14_;
					gboolean _tmp15_ = FALSE;
					GVirConfigDomainDiskGuestDeviceType _tmp16_;
#line 540 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp6_ = device_config;
#line 540 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp7_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp6_, gvir_config_domain_disk_get_type ()) ? ((GVirConfigDomainDisk*) _tmp6_) : NULL);
#line 540 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					disk_config = _tmp7_;
#line 541 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp8_ = disk_config;
#line 541 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp9_ = gvir_config_domain_disk_get_guest_device_type (_tmp8_);
#line 541 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					disk_type = _tmp9_;
#line 542 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp11_ = self->priv->_storage_volume;
#line 542 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					if (_tmp11_ != NULL) {
#line 6239 "libvirt-machine.c"
						GVirStorageVol* _tmp12_;
						const gchar* _tmp13_;
#line 542 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
						_tmp12_ = self->priv->_storage_volume;
#line 542 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
						_tmp13_ = gvir_storage_vol_get_path (_tmp12_, &_inner_error_);
#line 542 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
						_tmp10_ = _tmp13_;
#line 542 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
						if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 542 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
							g_propagate_error (error, _inner_error_);
#line 542 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
							_g_object_unref0 (disk_config);
#line 542 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
							_g_object_unref0 (device_config);
#line 542 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
							__g_list_free__g_object_unref0_0 (device_config_collection);
#line 542 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
							_g_object_unref0 (disk);
#line 542 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
							return NULL;
#line 6262 "libvirt-machine.c"
						}
					} else {
#line 542 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
						_tmp10_ = NULL;
#line 6267 "libvirt-machine.c"
					}
#line 542 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp14_ = g_strdup (_tmp10_);
#line 542 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					storage_volume_path = _tmp14_;
#line 545 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp16_ = disk_type;
#line 545 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					if (_tmp16_ == GVIR_CONFIG_DOMAIN_DISK_GUEST_DEVICE_DISK) {
#line 6277 "libvirt-machine.c"
						GVirConfigDomainDisk* _tmp17_;
						const gchar* _tmp18_;
						const gchar* _tmp19_;
#line 546 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
						_tmp17_ = disk_config;
#line 546 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
						_tmp18_ = gvir_config_domain_disk_get_source (_tmp17_);
#line 546 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
						_tmp19_ = storage_volume_path;
#line 546 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
						_tmp15_ = g_strcmp0 (_tmp18_, _tmp19_) == 0;
#line 6289 "libvirt-machine.c"
					} else {
#line 545 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
						_tmp15_ = FALSE;
#line 6293 "libvirt-machine.c"
					}
#line 545 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					if (_tmp15_) {
#line 6297 "libvirt-machine.c"
						GVirDomain* _tmp20_;
						GVirConfigDomainDevice* _tmp21_;
						GObject* _tmp22_;
						GObject* _tmp23_;
						GVirDomainDisk* _tmp24_;
#line 547 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
						_tmp20_ = self->priv->_domain;
#line 547 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
						_tmp21_ = device_config;
#line 547 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
						_tmp22_ = g_object_new (gvir_domain_disk_get_type (), "domain", _tmp20_, "config", _tmp21_, NULL);
#line 547 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
						_tmp23_ = G_IS_INITIALLY_UNOWNED (_tmp22_) ? g_object_ref_sink (_tmp22_) : _tmp22_;
#line 547 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
						_tmp24_ = G_TYPE_CHECK_INSTANCE_TYPE (_tmp23_, gvir_domain_disk_get_type ()) ? ((GVirDomainDisk*) _tmp23_) : NULL;
#line 547 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
						if (_tmp24_ == NULL) {
#line 547 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
							_g_object_unref0 (_tmp23_);
#line 6317 "libvirt-machine.c"
						}
#line 547 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
						_g_object_unref0 (disk);
#line 547 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
						disk = _tmp24_;
#line 551 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
						_g_free0 (storage_volume_path);
#line 551 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
						_g_object_unref0 (disk_config);
#line 551 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
						_g_object_unref0 (device_config);
#line 551 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
						break;
#line 6331 "libvirt-machine.c"
					}
#line 545 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (storage_volume_path);
#line 545 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_object_unref0 (disk_config);
#line 6337 "libvirt-machine.c"
				}
#line 539 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_g_object_unref0 (device_config);
#line 6341 "libvirt-machine.c"
			}
		}
#line 539 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		__g_list_free__g_object_unref0_0 (device_config_collection);
#line 6346 "libvirt-machine.c"
	}
#line 556 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	result = disk;
#line 556 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 6352 "libvirt-machine.c"
}


static GVirDomainInterface* boxes_libvirt_machine_get_domain_network_interface (BoxesLibvirtMachine* self, GError** error) {
	GVirDomainInterface* result = NULL;
	GVirDomainInterface* net = NULL;
	gpointer _tmp0_;
	GVirDomainInterface* _tmp1_;
	GVirConfigDomain* _tmp2_;
	GList* _tmp3_;
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 560 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = NULL;
#line 560 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp0_, gvir_domain_interface_get_type ()) ? ((GVirDomainInterface*) _tmp0_) : NULL);
#line 560 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	net = _tmp1_;
#line 563 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = self->priv->_domain_config;
#line 563 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = gvir_config_domain_get_devices (_tmp2_);
#line 6375 "libvirt-machine.c"
	{
		GList* device_config_collection = NULL;
		GList* device_config_it = NULL;
#line 563 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		device_config_collection = _tmp3_;
#line 563 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		for (device_config_it = device_config_collection; device_config_it != NULL; device_config_it = device_config_it->next) {
#line 6383 "libvirt-machine.c"
			GVirConfigDomainDevice* _tmp4_;
			GVirConfigDomainDevice* device_config = NULL;
#line 563 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_tmp4_ = _g_object_ref0 ((GVirConfigDomainDevice*) device_config_it->data);
#line 563 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			device_config = _tmp4_;
#line 6390 "libvirt-machine.c"
			{
				GVirConfigDomainDevice* _tmp5_;
#line 564 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_tmp5_ = device_config;
#line 564 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				if (G_TYPE_CHECK_INSTANCE_TYPE (_tmp5_, gvir_config_domain_interface_get_type ())) {
#line 6397 "libvirt-machine.c"
					GVirDomain* _tmp6_;
					GVirConfigDomainDevice* _tmp7_;
					GObject* _tmp8_;
					GObject* _tmp9_;
					GVirDomainInterface* _tmp10_;
#line 565 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp6_ = self->priv->_domain;
#line 565 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp7_ = device_config;
#line 565 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp8_ = g_object_new (gvir_domain_interface_get_type (), "domain", _tmp6_, "config", _tmp7_, NULL);
#line 565 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp9_ = G_IS_INITIALLY_UNOWNED (_tmp8_) ? g_object_ref_sink (_tmp8_) : _tmp8_;
#line 565 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp10_ = G_TYPE_CHECK_INSTANCE_TYPE (_tmp9_, gvir_domain_interface_get_type ()) ? ((GVirDomainInterface*) _tmp9_) : NULL;
#line 565 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					if (_tmp10_ == NULL) {
#line 565 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
						_g_object_unref0 (_tmp9_);
#line 6417 "libvirt-machine.c"
					}
#line 565 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_object_unref0 (net);
#line 565 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					net = _tmp10_;
#line 568 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_object_unref0 (device_config);
#line 568 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					break;
#line 6427 "libvirt-machine.c"
				}
#line 564 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_g_object_unref0 (device_config);
#line 6431 "libvirt-machine.c"
			}
		}
#line 564 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		__g_list_free__g_object_unref0_0 (device_config_collection);
#line 6436 "libvirt-machine.c"
	}
#line 572 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	result = net;
#line 572 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 6442 "libvirt-machine.c"
}


static GVirDomainStartFlags boxes_libvirt_machine_connect_flags_to_gvir (BoxesLibvirtMachine* self, BoxesMachineConnectFlags flags) {
	GVirDomainStartFlags result = 0;
	GVirDomainStartFlags gvir_flags = 0;
	BoxesMachineConnectFlags _tmp0_;
#line 575 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_val_if_fail (self != NULL, 0);
#line 576 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	gvir_flags = 0;
#line 577 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = flags;
#line 577 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if ((_tmp0_ & BOXES_MACHINE_CONNECT_FLAGS_IGNORE_SAVED_STATE) == BOXES_MACHINE_CONNECT_FLAGS_IGNORE_SAVED_STATE) {
#line 6458 "libvirt-machine.c"
		GVirDomainStartFlags _tmp1_;
#line 578 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp1_ = gvir_flags;
#line 578 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		gvir_flags = _tmp1_ | GVIR_DOMAIN_START_FORCE_BOOT;
#line 6464 "libvirt-machine.c"
	}
#line 579 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	result = gvir_flags;
#line 579 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 6470 "libvirt-machine.c"
}


static void boxes_libvirt_machine_start_data_free (gpointer _data) {
	BoxesLibvirtMachineStartData* _data_;
	_data_ = _data;
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->cancellable);
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->self);
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_slice_free (BoxesLibvirtMachineStartData, _data_);
#line 6483 "libvirt-machine.c"
}


void boxes_libvirt_machine_start (BoxesLibvirtMachine* self, BoxesMachineConnectFlags flags, GCancellable* cancellable, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	BoxesLibvirtMachineStartData* _data_;
	BoxesLibvirtMachine* _tmp0_;
	BoxesMachineConnectFlags _tmp1_;
	GCancellable* _tmp2_;
	GCancellable* _tmp3_;
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_slice_new0 (BoxesLibvirtMachineStartData);
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_async_result = g_task_new (G_OBJECT (self), cancellable, _callback_, _user_data_);
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_task_set_task_data (_data_->_async_result, _data_, boxes_libvirt_machine_start_data_free);
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self = _tmp0_;
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = flags;
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->flags = _tmp1_;
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = cancellable;
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = _g_object_ref0 (_tmp2_);
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->cancellable);
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->cancellable = _tmp3_;
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_start_co (_data_);
#line 6517 "libvirt-machine.c"
}


void boxes_libvirt_machine_start_finish (BoxesLibvirtMachine* self, GAsyncResult* _res_, GError** error) {
	BoxesLibvirtMachineStartData* _data_;
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_task_propagate_pointer (G_TASK (_res_), error);
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (NULL == _data_) {
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 6529 "libvirt-machine.c"
	}
}


static void boxes_libvirt_machine_start_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_) {
	BoxesLibvirtMachineStartData* _data_;
#line 587 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = _user_data_;
#line 587 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_source_object_ = source_object;
#line 587 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_res_ = _res_;
#line 587 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_start_co (_data_);
#line 6544 "libvirt-machine.c"
}


static gboolean boxes_libvirt_machine_start_co (BoxesLibvirtMachineStartData* _data_) {
#line 582 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	switch (_data_->_state_) {
#line 582 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 0:
#line 6553 "libvirt-machine.c"
		goto _state_0;
#line 582 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 1:
#line 6557 "libvirt-machine.c"
		goto _state_1;
#line 582 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 2:
#line 6561 "libvirt-machine.c"
		goto _state_2;
#line 582 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 3:
#line 6565 "libvirt-machine.c"
		goto _state_3;
#line 582 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 4:
#line 6569 "libvirt-machine.c"
		goto _state_4;
		default:
#line 582 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_assert_not_reached ();
#line 6574 "libvirt-machine.c"
	}
	_state_0:
#line 583 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp0_ = boxes_machine_get_state ((BoxesMachine*) _data_->self);
#line 583 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp1_ = _data_->_tmp0_;
#line 583 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_tmp1_ == BOXES_MACHINE_MACHINE_STATE_RUNNING) {
#line 584 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 584 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_state_ != 0) {
#line 584 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 584 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 6591 "libvirt-machine.c"
			}
		}
#line 584 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 584 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 6598 "libvirt-machine.c"
	}
#line 586 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp2_ = boxes_machine_get_state ((BoxesMachine*) _data_->self);
#line 586 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp3_ = _data_->_tmp2_;
#line 586 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_tmp3_ == BOXES_MACHINE_MACHINE_STATE_PAUSED) {
#line 587 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp4_ = _data_->self->priv->_domain;
#line 587 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp5_ = _data_->cancellable;
#line 587 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_state_ = 1;
#line 587 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		gvir_domain_resume_async (_data_->_tmp4_, _data_->_tmp5_, boxes_libvirt_machine_start_ready, _data_);
#line 587 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 6616 "libvirt-machine.c"
		_state_1:
#line 587 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		gvir_domain_resume_finish (_data_->_tmp4_, _data_->_res_, &_data_->_inner_error_);
#line 587 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 587 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 587 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_object_unref (_data_->_async_result);
#line 587 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			return FALSE;
#line 6628 "libvirt-machine.c"
		}
	} else {
#line 588 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp6_ = boxes_machine_get_state ((BoxesMachine*) _data_->self);
#line 588 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp7_ = _data_->_tmp6_;
#line 588 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_tmp7_ == BOXES_MACHINE_MACHINE_STATE_SLEEPING) {
#line 589 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp8_ = _data_->self->priv->_domain;
#line 589 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp9_ = _data_->cancellable;
#line 589 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_state_ = 2;
#line 589 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			gvir_domain_wakeup_async (_data_->_tmp8_, (guint) 0, _data_->_tmp9_, boxes_libvirt_machine_start_ready, _data_);
#line 589 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			return FALSE;
#line 6647 "libvirt-machine.c"
			_state_2:
#line 589 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			gvir_domain_wakeup_finish (_data_->_tmp8_, _data_->_res_, &_data_->_inner_error_);
#line 589 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 589 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 589 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				g_object_unref (_data_->_async_result);
#line 589 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				return FALSE;
#line 6659 "libvirt-machine.c"
			}
		} else {
#line 591 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp11_ = _data_->self->priv->_domain;
#line 591 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp12_ = gvir_domain_get_saved (_data_->_tmp11_);
#line 591 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			if (_data_->_tmp12_) {
#line 592 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp13_ = _data_->flags;
#line 592 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp10_ = !((_data_->_tmp13_ & BOXES_MACHINE_CONNECT_FLAGS_IGNORE_SAVED_STATE) == BOXES_MACHINE_CONNECT_FLAGS_IGNORE_SAVED_STATE);
#line 6672 "libvirt-machine.c"
			} else {
#line 591 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp10_ = FALSE;
#line 6676 "libvirt-machine.c"
			}
#line 591 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->restore = _data_->_tmp10_;
#line 593 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp14_ = _data_->restore;
#line 593 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			if (_data_->_tmp14_) {
#line 595 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp15_ = boxes_machine_get_window ((BoxesMachine*) _data_->self);
#line 595 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp16_ = _data_->_tmp15_;
#line 595 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp17_ = _data_->_tmp16_->topbar;
#line 595 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp18_ = boxes_collection_item_get_name ((BoxesCollectionItem*) _data_->self);
#line 595 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp19_ = _data_->_tmp18_;
#line 595 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp20_ = g_strdup_printf (_ ("Restoring %s from disk"), _data_->_tmp19_);
#line 595 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp21_ = _data_->_tmp20_;
#line 595 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				boxes_topbar_set_status (_data_->_tmp17_, _data_->_tmp21_);
#line 595 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_g_free0 (_data_->_tmp21_);
#line 6702 "libvirt-machine.c"
			} else {
#line 598 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp22_ = boxes_machine_get_window ((BoxesMachine*) _data_->self);
#line 598 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp23_ = _data_->_tmp22_;
#line 598 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp24_ = _data_->_tmp23_->topbar;
#line 598 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp25_ = boxes_collection_item_get_name ((BoxesCollectionItem*) _data_->self);
#line 598 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp26_ = _data_->_tmp25_;
#line 598 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp27_ = g_strdup_printf (_ ("Starting %s"), _data_->_tmp26_);
#line 598 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp28_ = _data_->_tmp27_;
#line 598 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				boxes_topbar_set_status (_data_->_tmp24_, _data_->_tmp28_);
#line 598 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_g_free0 (_data_->_tmp28_);
#line 6722 "libvirt-machine.c"
			}
			{
#line 600 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp29_ = _data_->self->priv->_domain;
#line 600 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp30_ = _data_->flags;
#line 600 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp31_ = boxes_libvirt_machine_connect_flags_to_gvir (_data_->self, _data_->_tmp30_);
#line 600 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp32_ = _data_->cancellable;
#line 600 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_state_ = 3;
#line 600 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				gvir_domain_start_async (_data_->_tmp29_, (guint) _data_->_tmp31_, _data_->_tmp32_, boxes_libvirt_machine_start_ready, _data_);
#line 600 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				return FALSE;
#line 6739 "libvirt-machine.c"
				_state_3:
#line 600 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				gvir_domain_start_finish (_data_->_tmp29_, _data_->_res_, &_data_->_inner_error_);
#line 600 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 600 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					if (g_error_matches (_data_->_inner_error_, G_IO_ERROR, G_IO_ERROR_CANCELLED)) {
#line 6747 "libvirt-machine.c"
						goto __catch29_g_io_error_cancelled;
					}
					goto __catch29_g_error;
				}
			}
			goto __finally29;
			__catch29_g_io_error_cancelled:
			{
#line 599 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_error_ = _data_->_inner_error_;
#line 599 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_inner_error_ = NULL;
#line 602 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp33_ = boxes_collection_item_get_name ((BoxesCollectionItem*) _data_->self);
#line 602 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp34_ = _data_->_tmp33_;
#line 602 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				g_debug ("libvirt-machine.vala:602: starting of %s was cancelled", _data_->_tmp34_);
#line 599 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_g_error_free0 (_data_->_error_);
#line 6768 "libvirt-machine.c"
			}
			goto __finally29;
			__catch29_g_error:
			{
#line 599 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_vala1__error_ = _data_->_inner_error_;
#line 599 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_inner_error_ = NULL;
#line 604 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp35_ = _data_->restore;
#line 604 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				if (_data_->_tmp35_) {
#line 605 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_data_->_tmp36_ = _data_->_vala1__error_;
#line 605 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_data_->_tmp37_ = _data_->_tmp36_->message;
#line 605 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_data_->_tmp38_ = g_error_new_literal (BOXES_ERROR, BOXES_ERROR_RESTORE_FAILED, _data_->_tmp37_);
#line 605 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_data_->_inner_error_ = _data_->_tmp38_;
#line 605 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_error_free0 (_data_->_vala1__error_);
#line 6791 "libvirt-machine.c"
					goto __finally29;
				} else {
#line 607 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_data_->_tmp39_ = _data_->_vala1__error_;
#line 607 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_data_->_tmp40_ = _data_->_tmp39_->message;
#line 607 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_data_->_tmp41_ = g_error_new_literal (BOXES_ERROR, BOXES_ERROR_START_FAILED, _data_->_tmp40_);
#line 607 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_data_->_inner_error_ = _data_->_tmp41_;
#line 607 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_error_free0 (_data_->_vala1__error_);
#line 6804 "libvirt-machine.c"
					goto __finally29;
				}
#line 599 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_g_error_free0 (_data_->_vala1__error_);
#line 6809 "libvirt-machine.c"
			}
			__finally29:
#line 599 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 599 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 599 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				g_object_unref (_data_->_async_result);
#line 599 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				return FALSE;
#line 6820 "libvirt-machine.c"
			}
#line 610 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp42_ = _data_->restore;
#line 610 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			if (_data_->_tmp42_) {
#line 6826 "libvirt-machine.c"
				{
#line 612 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_data_->_tmp43_ = _data_->self->priv->_domain;
#line 612 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_data_->_state_ = 4;
#line 612 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					gvir_domain_set_time_async (_data_->_tmp43_, NULL, (guint) 0, NULL, boxes_libvirt_machine_start_ready, _data_);
#line 612 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					return FALSE;
#line 6836 "libvirt-machine.c"
					_state_4:
#line 612 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					gvir_domain_set_time_finish (_data_->_tmp43_, _data_->_res_, &_data_->_inner_error_);
#line 612 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 6842 "libvirt-machine.c"
						goto __catch30_g_error;
					}
				}
				goto __finally30;
				__catch30_g_error:
				{
#line 611 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_data_->_vala2__error_ = _data_->_inner_error_;
#line 611 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_data_->_inner_error_ = NULL;
#line 614 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_data_->_tmp44_ = boxes_collection_item_get_name ((BoxesCollectionItem*) _data_->self);
#line 614 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_data_->_tmp45_ = _data_->_tmp44_;
#line 614 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_data_->_tmp46_ = _data_->_vala2__error_;
#line 614 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_data_->_tmp47_ = _data_->_tmp46_->message;
#line 614 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					g_debug ("libvirt-machine.vala:614: Failed to update clock on %s: %s", _data_->_tmp45_, _data_->_tmp47_);
#line 611 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_error_free0 (_data_->_vala2__error_);
#line 6865 "libvirt-machine.c"
				}
				__finally30:
#line 611 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 611 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 611 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					g_object_unref (_data_->_async_result);
#line 611 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					return FALSE;
#line 6876 "libvirt-machine.c"
				}
			}
		}
	}
#line 582 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 582 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_state_ != 0) {
#line 582 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 582 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 6889 "libvirt-machine.c"
		}
	}
#line 582 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_object_unref (_data_->_async_result);
#line 582 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return FALSE;
#line 6896 "libvirt-machine.c"
}


static Block45Data* block45_data_ref (Block45Data* _data45_) {
#line 620 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_atomic_int_inc (&_data45_->_ref_count_);
#line 620 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return _data45_;
#line 6905 "libvirt-machine.c"
}


static void block45_data_unref (void * _userdata_) {
	Block45Data* _data45_;
	_data45_ = (Block45Data*) _userdata_;
#line 620 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (g_atomic_int_dec_and_test (&_data45_->_ref_count_)) {
#line 6914 "libvirt-machine.c"
		BoxesLibvirtMachine* self;
#line 620 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		self = _data45_->self;
#line 620 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (_data45_->notification);
#line 620 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (self);
#line 620 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_slice_free (Block45Data, _data45_);
#line 6924 "libvirt-machine.c"
	}
}


static void ___lambda110_ (BoxesLibvirtMachine* self, GObject* obj, GAsyncResult* res) {
	GError * _inner_error_ = NULL;
#line 623 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (res != NULL);
#line 6933 "libvirt-machine.c"
	{
		GAsyncResult* _tmp0_;
#line 625 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp0_ = res;
#line 625 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_start_finish (self, _tmp0_, &_inner_error_);
#line 625 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 6942 "libvirt-machine.c"
			goto __catch31_g_error;
		}
#line 626 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_machine_restart ((BoxesMachine*) self);
#line 6947 "libvirt-machine.c"
	}
	goto __finally31;
	__catch31_g_error:
	{
		GError* _error_ = NULL;
		GVirDomain* _tmp1_;
		const gchar* _tmp2_;
		GError* _tmp3_;
		const gchar* _tmp4_;
#line 624 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_error_ = _inner_error_;
#line 624 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_inner_error_ = NULL;
#line 628 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp1_ = self->priv->_domain;
#line 628 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp2_ = gvir_domain_get_name (_tmp1_);
#line 628 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp3_ = _error_;
#line 628 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp4_ = _tmp3_->message;
#line 628 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_warning ("libvirt-machine.vala:628: Failed to start '%s': %s", _tmp2_, _tmp4_);
#line 624 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_error_free0 (_error_);
#line 6973 "libvirt-machine.c"
	}
	__finally31:
#line 624 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 624 "/home/fborges/checkout/gnome-boxes/src/libvirt-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 624 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_clear_error (&_inner_error_);
#line 624 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 6984 "libvirt-machine.c"
	}
}


static void ____lambda110__gasync_ready_callback (GObject* source_object, GAsyncResult* res, gpointer self) {
#line 623 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	___lambda110_ ((BoxesLibvirtMachine*) self, source_object, res);
#line 623 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_object_unref (self);
#line 6994 "libvirt-machine.c"
}


static void ___lambda112_ (BoxesLibvirtMachine* self, GObject* obj, GAsyncResult* res) {
	GError * _inner_error_ = NULL;
#line 644 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (res != NULL);
#line 7002 "libvirt-machine.c"
	{
		GAsyncResult* _tmp0_;
#line 646 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp0_ = res;
#line 646 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_start_finish (self, _tmp0_, &_inner_error_);
#line 646 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 7011 "libvirt-machine.c"
			goto __catch32_g_error;
		}
	}
	goto __finally32;
	__catch32_g_error:
	{
		GError* _error_ = NULL;
		GVirDomain* _tmp1_;
		const gchar* _tmp2_;
		GError* _tmp3_;
		const gchar* _tmp4_;
#line 645 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_error_ = _inner_error_;
#line 645 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_inner_error_ = NULL;
#line 648 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp1_ = self->priv->_domain;
#line 648 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp2_ = gvir_domain_get_name (_tmp1_);
#line 648 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp3_ = _error_;
#line 648 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp4_ = _tmp3_->message;
#line 648 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_warning ("libvirt-machine.vala:648: Failed to start '%s': %s", _tmp2_, _tmp4_);
#line 645 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_error_free0 (_error_);
#line 7039 "libvirt-machine.c"
	}
	__finally32:
#line 645 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 645 "/home/fborges/checkout/gnome-boxes/src/libvirt-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 645 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_clear_error (&_inner_error_);
#line 645 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 7050 "libvirt-machine.c"
	}
}


static void ____lambda112__gasync_ready_callback (GObject* source_object, GAsyncResult* res, gpointer self) {
#line 644 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	___lambda112_ ((BoxesLibvirtMachine*) self, source_object, res);
#line 644 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_object_unref (self);
#line 7060 "libvirt-machine.c"
}


static void __lambda111_ (Block45Data* _data45_) {
	BoxesLibvirtMachine* self;
	gboolean _tmp0_ = FALSE;
	BoxesMachineMachineState _tmp1_;
	BoxesMachineMachineState _tmp2_;
#line 640 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self = _data45_->self;
#line 641 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = boxes_machine_get_state ((BoxesMachine*) self);
#line 641 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = _tmp1_;
#line 641 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp2_ == BOXES_MACHINE_MACHINE_STATE_STOPPED) {
#line 641 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp0_ = TRUE;
#line 7079 "libvirt-machine.c"
	} else {
		BoxesMachineMachineState _tmp3_;
		BoxesMachineMachineState _tmp4_;
#line 642 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp3_ = boxes_machine_get_state ((BoxesMachine*) self);
#line 642 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp4_ = _tmp3_;
#line 642 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp0_ = _tmp4_ == BOXES_MACHINE_MACHINE_STATE_FORCE_STOPPED;
#line 7089 "libvirt-machine.c"
	}
#line 641 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp0_) {
#line 7093 "libvirt-machine.c"
		const gchar* _tmp5_;
		const gchar* _tmp6_;
		gulong _tmp7_;
		guint _tmp8_;
		BoxesNotification* _tmp10_;
#line 643 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp5_ = boxes_collection_item_get_name ((BoxesCollectionItem*) self);
#line 643 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp6_ = _tmp5_;
#line 643 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_debug ("libvirt-machine.vala:643: '%s' stopped.", _tmp6_);
#line 644 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_start (self, BOXES_MACHINE_CONNECT_FLAGS_NONE, NULL, ____lambda112__gasync_ready_callback, g_object_ref (self));
#line 652 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp7_ = _data45_->state_id;
#line 652 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_signal_handler_disconnect ((GObject*) self, _tmp7_);
#line 653 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp8_ = self->priv->shutdown_timeout;
#line 653 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (_tmp8_ != ((guint) 0)) {
#line 7115 "libvirt-machine.c"
			guint _tmp9_;
#line 654 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_tmp9_ = self->priv->shutdown_timeout;
#line 654 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_source_remove (_tmp9_);
#line 655 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			self->priv->shutdown_timeout = (guint) 0;
#line 7123 "libvirt-machine.c"
		}
#line 657 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp10_ = _data45_->notification;
#line 657 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (_tmp10_ != NULL) {
#line 7129 "libvirt-machine.c"
			BoxesNotification* _tmp11_;
#line 658 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_tmp11_ = _data45_->notification;
#line 658 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			boxes_notification_dismiss (_tmp11_);
#line 659 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_object_unref0 (_data45_->notification);
#line 659 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data45_->notification = NULL;
#line 7139 "libvirt-machine.c"
		}
	}
}


static void ___lambda111__g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self) {
#line 640 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	__lambda111_ (self);
#line 7148 "libvirt-machine.c"
}


static void __lambda114_ (Block45Data* _data45_) {
	BoxesLibvirtMachine* self;
#line 666 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self = _data45_->self;
#line 667 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data45_->notification);
#line 667 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data45_->notification = NULL;
#line 668 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_force_shutdown (self);
#line 7162 "libvirt-machine.c"
}


static void ___lambda114__boxes_notification_ok_func (gpointer self) {
#line 666 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	__lambda114_ (self);
#line 7169 "libvirt-machine.c"
}


static gboolean __lambda113_ (Block45Data* _data45_) {
	BoxesLibvirtMachine* self;
	gboolean result = FALSE;
	BoxesNotificationOKFunc really_force_shutdown = NULL;
	void* really_force_shutdown_target;
	GDestroyNotify really_force_shutdown_target_destroy_notify;
	gchar* message = NULL;
	const gchar* _tmp0_;
	const gchar* _tmp1_;
	gchar* _tmp2_;
	BoxesAppWindow* _tmp3_;
	BoxesAppWindow* _tmp4_;
	BoxesNotificationbar* _tmp5_;
	BoxesNotificationbar* _tmp6_;
	BoxesNotificationOKFunc _tmp7_;
	void* _tmp7__target;
	GDestroyNotify _tmp7__target_destroy_notify;
	BoxesNotification* _tmp8_;
#line 664 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self = _data45_->self;
#line 666 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	really_force_shutdown = ___lambda114__boxes_notification_ok_func;
#line 666 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	really_force_shutdown_target = block45_data_ref (_data45_);
#line 666 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	really_force_shutdown_target_destroy_notify = block45_data_unref;
#line 671 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = boxes_collection_item_get_name ((BoxesCollectionItem*) self);
#line 671 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _tmp0_;
#line 671 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = g_strdup_printf (_ ("Restart of “%s” is taking too long. Force it to shutdown?"), _tmp1_);
#line 671 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	message = _tmp2_;
#line 672 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = boxes_machine_get_window ((BoxesMachine*) self);
#line 672 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp4_ = _tmp3_;
#line 672 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp5_ = boxes_app_window_get_notificationbar (_tmp4_);
#line 672 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp6_ = _tmp5_;
#line 672 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp7_ = really_force_shutdown;
#line 672 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp7__target = really_force_shutdown_target;
#line 672 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp7__target_destroy_notify = really_force_shutdown_target_destroy_notify;
#line 672 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	really_force_shutdown = NULL;
#line 672 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	really_force_shutdown_target = NULL;
#line 672 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	really_force_shutdown_target_destroy_notify = NULL;
#line 672 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp8_ = boxes_notificationbar_display_for_action (_tmp6_, message, _ ("_Shutdown"), _tmp7_, _tmp7__target, _tmp7__target_destroy_notify, NULL, NULL, NULL, -1);
#line 672 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data45_->notification);
#line 672 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data45_->notification = _tmp8_;
#line 677 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self->priv->shutdown_timeout = (guint) 0;
#line 679 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	result = FALSE;
#line 679 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (message);
#line 679 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	(really_force_shutdown_target_destroy_notify == NULL) ? NULL : (really_force_shutdown_target_destroy_notify (really_force_shutdown_target), NULL);
#line 679 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	really_force_shutdown = NULL;
#line 679 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	really_force_shutdown_target = NULL;
#line 679 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	really_force_shutdown_target_destroy_notify = NULL;
#line 679 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 7249 "libvirt-machine.c"
}


static gboolean ___lambda113__gsource_func (gpointer self) {
	gboolean result;
	result = __lambda113_ (self);
#line 664 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 7258 "libvirt-machine.c"
}


static void boxes_libvirt_machine_real_restart (BoxesMachine* base) {
	BoxesLibvirtMachine * self;
	Block45Data* _data45_;
	BoxesMachineMachineState _tmp0_;
	BoxesMachineMachineState _tmp1_;
	const gchar* _tmp4_;
	const gchar* _tmp5_;
	gulong _tmp6_;
	guint _tmp7_;
#line 620 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self = (BoxesLibvirtMachine*) base;
#line 620 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data45_ = g_slice_new0 (Block45Data);
#line 620 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data45_->_ref_count_ = 1;
#line 620 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data45_->self = g_object_ref (self);
#line 621 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = boxes_machine_get_state ((BoxesMachine*) self);
#line 621 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _tmp0_;
#line 621 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp1_ == BOXES_MACHINE_MACHINE_STATE_SAVED) {
#line 7285 "libvirt-machine.c"
		const gchar* _tmp2_;
		const gchar* _tmp3_;
#line 622 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp2_ = boxes_collection_item_get_name ((BoxesCollectionItem*) self);
#line 622 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp3_ = _tmp2_;
#line 622 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_debug ("libvirt-machine.vala:622: '%s' is in saved state. Resuming it..", _tmp3_);
#line 623 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_start (self, BOXES_MACHINE_CONNECT_FLAGS_NONE, NULL, ____lambda110__gasync_ready_callback, g_object_ref (self));
#line 632 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		block45_data_unref (_data45_);
#line 632 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data45_ = NULL;
#line 632 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 7302 "libvirt-machine.c"
	}
#line 635 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	((BoxesMachine*) self)->stay_on_display = TRUE;
#line 636 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data45_->state_id = (gulong) 0;
#line 637 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data45_->notification = NULL;
#line 638 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp4_ = boxes_collection_item_get_name ((BoxesCollectionItem*) self);
#line 638 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp5_ = _tmp4_;
#line 638 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_debug ("libvirt-machine.vala:638: Rebooting '%s'..", _tmp5_);
#line 640 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp6_ = g_signal_connect_data ((GObject*) self, "notify::state", (GCallback) ___lambda111__g_object_notify, block45_data_ref (_data45_), (GClosureNotify) block45_data_unref, 0);
#line 640 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data45_->state_id = _tmp6_;
#line 664 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp7_ = g_timeout_add_seconds_full (G_PRIORITY_DEFAULT, (guint) 5, ___lambda113__gsource_func, block45_data_ref (_data45_), block45_data_unref);
#line 664 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self->priv->shutdown_timeout = _tmp7_;
#line 682 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_try_shutdown (self);
#line 620 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	block45_data_unref (_data45_);
#line 620 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data45_ = NULL;
#line 7330 "libvirt-machine.c"
}


static void boxes_libvirt_machine_real_clone_data_free (gpointer _data) {
	BoxesLibvirtMachineCloneData* _data_;
	_data_ = _data;
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->self);
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_slice_free (BoxesLibvirtMachineCloneData, _data_);
#line 7341 "libvirt-machine.c"
}


static void boxes_libvirt_machine_real_clone (BoxesMachine* base, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	BoxesLibvirtMachine * self;
	BoxesLibvirtMachineCloneData* _data_;
	BoxesLibvirtMachine* _tmp0_;
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self = (BoxesLibvirtMachine*) base;
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_slice_new0 (BoxesLibvirtMachineCloneData);
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_task_set_task_data (_data_->_async_result, _data_, boxes_libvirt_machine_real_clone_data_free);
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self = _tmp0_;
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_real_clone_co (_data_);
#line 7363 "libvirt-machine.c"
}


static void boxes_libvirt_machine_real_clone_finish (BoxesMachine* base, GAsyncResult* _res_) {
	BoxesLibvirtMachineCloneData* _data_;
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_task_propagate_pointer (G_TASK (_res_), NULL);
#line 7371 "libvirt-machine.c"
}


static Block46Data* block46_data_ref (Block46Data* _data46_) {
#line 689 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_atomic_int_inc (&_data46_->_ref_count_);
#line 689 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return _data46_;
#line 7380 "libvirt-machine.c"
}


static void block46_data_unref (void * _userdata_) {
	Block46Data* _data46_;
	_data46_ = (Block46Data*) _userdata_;
#line 689 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (g_atomic_int_dec_and_test (&_data46_->_ref_count_)) {
#line 7389 "libvirt-machine.c"
		BoxesLibvirtMachine* self;
#line 689 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		self = _data46_->self;
#line 689 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (_data46_->clone_machine);
#line 689 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (self);
#line 689 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_slice_free (Block46Data, _data46_);
#line 7399 "libvirt-machine.c"
	}
}


static void boxes_libvirt_machine_clone_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_) {
	BoxesLibvirtMachineCloneData* _data_;
#line 697 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = _user_data_;
#line 697 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_source_object_ = source_object;
#line 697 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_res_ = _res_;
#line 697 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_real_clone_co (_data_);
#line 7414 "libvirt-machine.c"
}


static void ___lambda174_ (Block46Data* _data46_) {
	BoxesLibvirtMachine* self;
	BoxesLibvirtMachine* _tmp0_;
	gboolean _tmp1_;
	gboolean _tmp2_;
#line 701 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self = _data46_->self;
#line 702 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = _data46_->clone_machine;
#line 702 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = boxes_machine_get_under_construction ((BoxesMachine*) _tmp0_);
#line 702 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = _tmp1_;
#line 702 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (!_tmp2_) {
#line 7433 "libvirt-machine.c"
		BoxesLibvirtMachine* _tmp3_;
		gulong _tmp4_;
#line 703 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_machine_set_can_delete ((BoxesMachine*) self, TRUE);
#line 704 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp3_ = _data46_->clone_machine;
#line 704 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp4_ = _data46_->under_construct_id;
#line 704 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_signal_handler_disconnect ((GObject*) _tmp3_, _tmp4_);
#line 7444 "libvirt-machine.c"
	}
}


static void ____lambda174__g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self) {
#line 701 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	___lambda174_ (self);
#line 7452 "libvirt-machine.c"
}


static gboolean boxes_libvirt_machine_real_clone_co (BoxesLibvirtMachineCloneData* _data_) {
#line 685 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	switch (_data_->_state_) {
#line 685 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 0:
#line 7461 "libvirt-machine.c"
		goto _state_0;
#line 685 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 1:
#line 7465 "libvirt-machine.c"
		goto _state_1;
		default:
#line 685 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_assert_not_reached ();
#line 7470 "libvirt-machine.c"
	}
	_state_0:
#line 686 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp0_ = _data_->self->priv->_domain_config;
#line 686 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp1_ = gvir_config_domain_get_name (_data_->_tmp0_);
#line 686 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp2_ = _data_->_tmp1_;
#line 686 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_debug ("libvirt-machine.vala:686: Cloning '%s'..", _data_->_tmp2_);
#line 687 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_machine_set_can_delete ((BoxesMachine*) _data_->self, FALSE);
#line 7483 "libvirt-machine.c"
	{
#line 689 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data46_ = g_slice_new0 (Block46Data);
#line 689 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data46_->_ref_count_ = 1;
#line 689 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data46_->self = g_object_ref (_data_->self);
#line 691 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp3_ = _data_->self->priv->_domain_config;
#line 691 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp4_ = gvir_config_object_to_xml ((GVirConfigObject*) _data_->_tmp3_);
#line 691 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->xml = _data_->_tmp4_;
#line 692 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp5_ = _data_->xml;
#line 692 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp6_ = gvir_config_domain_new_from_xml (_data_->_tmp5_, &_data_->_inner_error_);
#line 692 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->config = _data_->_tmp6_;
#line 692 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 692 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (_data_->xml);
#line 692 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			block46_data_unref (_data_->_data46_);
#line 692 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_data46_ = NULL;
#line 7511 "libvirt-machine.c"
			goto __catch33_g_error;
		}
#line 693 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp7_ = _data_->config;
#line 693 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		gvir_config_domain_set_uuid (_data_->_tmp7_, NULL);
#line 695 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp9_ = _data_->self->priv->_storage_volume;
#line 695 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp10_ = gvir_storage_vol_get_path (_data_->_tmp9_, &_data_->_inner_error_);
#line 695 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp8_ = _data_->_tmp10_;
#line 695 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 695 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_object_unref0 (_data_->config);
#line 695 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (_data_->xml);
#line 695 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			block46_data_unref (_data_->_data46_);
#line 695 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_data46_ = NULL;
#line 7534 "libvirt-machine.c"
			goto __catch33_g_error;
		}
#line 695 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp11_ = _data_->config;
#line 695 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp12_ = boxes_libvirt_cloned_media_new (_data_->_tmp8_, _data_->_tmp11_, &_data_->_inner_error_);
#line 695 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->media = _data_->_tmp12_;
#line 695 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 695 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_object_unref0 (_data_->config);
#line 695 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (_data_->xml);
#line 695 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			block46_data_unref (_data_->_data46_);
#line 695 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_data46_ = NULL;
#line 7553 "libvirt-machine.c"
			goto __catch33_g_error;
		}
#line 696 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp13_ = _data_->media;
#line 696 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp14_ = boxes_installer_media_get_vm_creator ((BoxesInstallerMedia*) _data_->_tmp13_);
#line 696 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->vm_cloner = _data_->_tmp14_;
#line 697 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp15_ = _data_->vm_cloner;
#line 697 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_state_ = 1;
#line 697 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_vm_creator_create_vm (_data_->_tmp15_, NULL, boxes_libvirt_machine_clone_ready, _data_);
#line 697 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 7570 "libvirt-machine.c"
		_state_1:
#line 697 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp16_ = boxes_vm_creator_create_vm_finish (_data_->_tmp15_, _data_->_res_, &_data_->_inner_error_);
#line 697 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data46_->clone_machine = _data_->_tmp16_;
#line 697 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 697 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_boxes_vm_creator_unref0 (_data_->vm_cloner);
#line 697 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_object_unref0 (_data_->media);
#line 697 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_object_unref0 (_data_->config);
#line 697 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (_data_->xml);
#line 697 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			block46_data_unref (_data_->_data46_);
#line 697 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_data46_ = NULL;
#line 7590 "libvirt-machine.c"
			goto __catch33_g_error;
		}
#line 698 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp17_ = _data_->vm_cloner;
#line 698 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp18_ = _data_->_data46_->clone_machine;
#line 698 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp19_ = ((BoxesMachine*) _data_->self)->config;
#line 698 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp20_ = boxes_box_config_get_access_last_time (_data_->_tmp19_);
#line 698 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp21_ = _data_->_tmp20_;
#line 698 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_vm_creator_launch_vm (_data_->_tmp17_, _data_->_tmp18_, _data_->_tmp21_, &_data_->_inner_error_);
#line 698 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 698 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_boxes_vm_creator_unref0 (_data_->vm_cloner);
#line 698 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_object_unref0 (_data_->media);
#line 698 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_object_unref0 (_data_->config);
#line 698 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (_data_->xml);
#line 698 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			block46_data_unref (_data_->_data46_);
#line 698 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_data_->_data46_ = NULL;
#line 7619 "libvirt-machine.c"
			goto __catch33_g_error;
		}
#line 700 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data46_->under_construct_id = (gulong) 0;
#line 701 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp22_ = _data_->_data46_->clone_machine;
#line 701 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp23_ = g_signal_connect_data ((GObject*) _data_->_tmp22_, "notify::under-construction", (GCallback) ____lambda174__g_object_notify, block46_data_ref (_data_->_data46_), (GClosureNotify) block46_data_unref, 0);
#line 701 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data46_->under_construct_id = _data_->_tmp23_;
#line 689 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_boxes_vm_creator_unref0 (_data_->vm_cloner);
#line 689 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (_data_->media);
#line 689 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (_data_->config);
#line 689 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_free0 (_data_->xml);
#line 689 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		block46_data_unref (_data_->_data46_);
#line 689 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data46_ = NULL;
#line 7642 "libvirt-machine.c"
	}
	goto __finally33;
	__catch33_g_error:
	{
#line 689 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_error_ = _data_->_inner_error_;
#line 689 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_inner_error_ = NULL;
#line 708 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp24_ = _data_->self->priv->_domain_config;
#line 708 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp25_ = gvir_config_domain_get_name (_data_->_tmp24_);
#line 708 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp26_ = _data_->_tmp25_;
#line 708 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp27_ = _data_->_error_;
#line 708 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp28_ = _data_->_tmp27_->message;
#line 708 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_warning ("libvirt-machine.vala:708: Failed to clone %s: %s", _data_->_tmp26_, _data_->_tmp28_);
#line 709 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_machine_set_can_delete ((BoxesMachine*) _data_->self, TRUE);
#line 689 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_error_free0 (_data_->_error_);
#line 7667 "libvirt-machine.c"
	}
	__finally33:
#line 689 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 689 "/home/fborges/checkout/gnome-boxes/src/libvirt-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 689 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_clear_error (&_data_->_inner_error_);
#line 689 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 689 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 7680 "libvirt-machine.c"
	}
#line 685 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 685 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_state_ != 0) {
#line 685 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 685 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 7690 "libvirt-machine.c"
		}
	}
#line 685 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_object_unref (_data_->_async_result);
#line 685 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return FALSE;
#line 7697 "libvirt-machine.c"
}


gchar* boxes_libvirt_machine_get_ip_address (BoxesLibvirtMachine* self) {
	gchar* result = NULL;
	gboolean _tmp0_ = FALSE;
	GVirConnection* _tmp1_;
	gchar* mac = NULL;
	gchar* _tmp4_;
	const gchar* _tmp5_;
	const gchar* _tmp6_;
	const gchar* _tmp7_;
	const gchar* _tmp8_;
	GVirConnection* _tmp9_;
	GList* _tmp10_;
	const gchar* _tmp33_;
	const gchar* _tmp34_;
	GError * _inner_error_ = NULL;
#line 713 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 714 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = self->priv->system_virt_connection;
#line 714 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp1_ == NULL) {
#line 714 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp0_ = TRUE;
#line 7724 "libvirt-machine.c"
	} else {
		gboolean _tmp2_;
		gboolean _tmp3_;
#line 714 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp2_ = boxes_machine_get_is_on ((BoxesMachine*) self);
#line 714 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp3_ = _tmp2_;
#line 714 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp0_ = !_tmp3_;
#line 7734 "libvirt-machine.c"
	}
#line 714 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp0_) {
#line 715 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		result = NULL;
#line 715 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return result;
#line 7742 "libvirt-machine.c"
	}
#line 717 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp4_ = boxes_libvirt_machine_get_mac_address (self);
#line 717 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	mac = _tmp4_;
#line 718 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp5_ = mac;
#line 718 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp5_ == NULL) {
#line 719 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		result = NULL;
#line 719 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_free0 (mac);
#line 719 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return result;
#line 7758 "libvirt-machine.c"
	}
#line 720 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp6_ = boxes_collection_item_get_name ((BoxesCollectionItem*) self);
#line 720 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp7_ = _tmp6_;
#line 720 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp8_ = mac;
#line 720 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_debug ("libvirt-machine.vala:720: MAC address of '%s': %s", _tmp7_, _tmp8_);
#line 722 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp9_ = self->priv->system_virt_connection;
#line 722 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp10_ = gvir_connection_get_networks (_tmp9_);
#line 7772 "libvirt-machine.c"
	{
		GList* network_collection = NULL;
		GList* network_it = NULL;
#line 722 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		network_collection = _tmp10_;
#line 722 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		for (network_it = network_collection; network_it != NULL; network_it = network_it->next) {
#line 7780 "libvirt-machine.c"
			GVirNetwork* _tmp11_;
			GVirNetwork* network = NULL;
#line 722 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_tmp11_ = _g_object_ref0 ((GVirNetwork*) network_it->data);
#line 722 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			network = _tmp11_;
#line 7787 "libvirt-machine.c"
			{
				{
					GList* leases = NULL;
					GVirNetwork* _tmp12_;
					const gchar* _tmp13_;
					GList* _tmp14_;
					gboolean _tmp15_ = FALSE;
					GList* _tmp16_;
					guint _tmp17_;
					const gchar* _tmp21_;
					const gchar* _tmp22_;
					GVirNetwork* _tmp23_;
					const gchar* _tmp24_;
					GList* _tmp25_;
					gconstpointer _tmp26_;
					const gchar* _tmp27_;
					gchar* _tmp28_;
#line 724 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp12_ = network;
#line 724 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp13_ = mac;
#line 724 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp14_ = gvir_network_get_dhcp_leases (_tmp12_, _tmp13_, (guint) 0, &_inner_error_);
#line 724 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					leases = _tmp14_;
#line 724 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 7815 "libvirt-machine.c"
						goto __catch34_g_error;
					}
#line 726 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp16_ = leases;
#line 726 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp17_ = g_list_length (_tmp16_);
#line 726 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					if (_tmp17_ == ((guint) 0)) {
#line 726 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
						_tmp15_ = TRUE;
#line 7826 "libvirt-machine.c"
					} else {
						GList* _tmp18_;
						gconstpointer _tmp19_;
						const gchar* _tmp20_;
#line 726 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
						_tmp18_ = leases;
#line 726 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
						_tmp19_ = _tmp18_->data;
#line 726 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
						_tmp20_ = gvir_network_dhcp_lease_get_iface ((GVirNetworkDHCPLease*) _tmp19_);
#line 726 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
						_tmp15_ = g_strcmp0 (_tmp20_, "virbr0") != 0;
#line 7839 "libvirt-machine.c"
					}
#line 726 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					if (_tmp15_) {
#line 727 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
						__g_list_free__g_object_unref0_0 (leases);
#line 727 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
						_g_object_unref0 (network);
#line 727 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
						continue;
#line 7849 "libvirt-machine.c"
					}
#line 728 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp21_ = boxes_collection_item_get_name ((BoxesCollectionItem*) self);
#line 728 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp22_ = _tmp21_;
#line 728 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp23_ = network;
#line 728 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp24_ = gvir_network_get_name (_tmp23_);
#line 728 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					g_debug ("libvirt-machine.vala:728: Found a lease for '%s' on network '%s'", _tmp22_, _tmp24_);
#line 731 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp25_ = leases;
#line 731 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp26_ = _tmp25_->data;
#line 731 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp27_ = gvir_network_dhcp_lease_get_ip ((GVirNetworkDHCPLease*) _tmp26_);
#line 731 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp28_ = g_strdup (_tmp27_);
#line 731 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					result = _tmp28_;
#line 731 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					__g_list_free__g_object_unref0_0 (leases);
#line 731 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_object_unref0 (network);
#line 731 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					__g_list_free__g_object_unref0_0 (network_collection);
#line 731 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (mac);
#line 731 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					return result;
#line 7881 "libvirt-machine.c"
				}
				goto __finally34;
				__catch34_g_error:
				{
					GError* _error_ = NULL;
					GVirNetwork* _tmp29_;
					const gchar* _tmp30_;
					GError* _tmp31_;
					const gchar* _tmp32_;
#line 723 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_error_ = _inner_error_;
#line 723 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_inner_error_ = NULL;
#line 733 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp29_ = network;
#line 733 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp30_ = gvir_network_get_name (_tmp29_);
#line 733 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp31_ = _error_;
#line 733 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp32_ = _tmp31_->message;
#line 733 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					g_warning ("libvirt-machine.vala:733: Failed to get DHCP leases from network '%s':" \
" %s", _tmp30_, _tmp32_);
#line 723 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_error_free0 (_error_);
#line 7907 "libvirt-machine.c"
				}
				__finally34:
#line 723 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 723 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_object_unref0 (network);
#line 723 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					__g_list_free__g_object_unref0_0 (network_collection);
#line 723 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (mac);
#line 723 "/home/fborges/checkout/gnome-boxes/src/libvirt-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 723 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					g_clear_error (&_inner_error_);
#line 723 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					return NULL;
#line 7924 "libvirt-machine.c"
				}
#line 722 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_g_object_unref0 (network);
#line 7928 "libvirt-machine.c"
			}
		}
#line 722 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		__g_list_free__g_object_unref0_0 (network_collection);
#line 7933 "libvirt-machine.c"
	}
#line 738 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp33_ = boxes_collection_item_get_name ((BoxesCollectionItem*) self);
#line 738 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp34_ = _tmp33_;
#line 738 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_debug ("libvirt-machine.vala:738: No lease for '%s' on any network", _tmp34_);
#line 740 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	result = NULL;
#line 740 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (mac);
#line 740 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 7947 "libvirt-machine.c"
}


static void boxes_libvirt_machine_create_snapshot_data_free (gpointer _data) {
	BoxesLibvirtMachineCreateSnapshotData* _data_;
	_data_ = _data;
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (_data_->description_prefix);
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->result);
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->self);
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_slice_free (BoxesLibvirtMachineCreateSnapshotData, _data_);
#line 7962 "libvirt-machine.c"
}


void boxes_libvirt_machine_create_snapshot (BoxesLibvirtMachine* self, const gchar* description_prefix, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	BoxesLibvirtMachineCreateSnapshotData* _data_;
	BoxesLibvirtMachine* _tmp0_;
	const gchar* _tmp1_;
	gchar* _tmp2_;
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_slice_new0 (BoxesLibvirtMachineCreateSnapshotData);
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_task_set_task_data (_data_->_async_result, _data_, boxes_libvirt_machine_create_snapshot_data_free);
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self = _tmp0_;
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = description_prefix;
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = g_strdup (_tmp1_);
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (_data_->description_prefix);
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->description_prefix = _tmp2_;
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_create_snapshot_co (_data_);
#line 7991 "libvirt-machine.c"
}


GVirDomainSnapshot* boxes_libvirt_machine_create_snapshot_finish (BoxesLibvirtMachine* self, GAsyncResult* _res_, GError** error) {
	GVirDomainSnapshot* result;
	BoxesLibvirtMachineCreateSnapshotData* _data_;
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_task_propagate_pointer (G_TASK (_res_), error);
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (NULL == _data_) {
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return NULL;
#line 8004 "libvirt-machine.c"
	}
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	result = _data_->result;
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->result = NULL;
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 8012 "libvirt-machine.c"
}


static void boxes_libvirt_machine_create_snapshot_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_) {
	BoxesLibvirtMachineCreateSnapshotData* _data_;
#line 749 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = _user_data_;
#line 749 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_source_object_ = source_object;
#line 749 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_res_ = _res_;
#line 749 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_create_snapshot_co (_data_);
#line 8026 "libvirt-machine.c"
}


static gboolean boxes_libvirt_machine_create_snapshot_co (BoxesLibvirtMachineCreateSnapshotData* _data_) {
#line 743 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	switch (_data_->_state_) {
#line 743 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 0:
#line 8035 "libvirt-machine.c"
		goto _state_0;
#line 743 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 1:
#line 8039 "libvirt-machine.c"
		goto _state_1;
		default:
#line 743 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_assert_not_reached ();
#line 8044 "libvirt-machine.c"
	}
	_state_0:
#line 744 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp0_ = gvir_config_domain_snapshot_new ();
#line 744 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->config = _data_->_tmp0_;
#line 745 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp1_ = g_date_time_new_now_local ();
#line 745 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->now = _data_->_tmp1_;
#line 746 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp2_ = g_date_time_format (_data_->now, "%F-%H-%M-%S");
#line 746 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp3_ = _data_->_tmp2_;
#line 746 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	gvir_config_domain_snapshot_set_name (_data_->config, _data_->_tmp3_);
#line 746 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (_data_->_tmp3_);
#line 747 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp4_ = _data_->description_prefix;
#line 747 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp5_ = g_date_time_format (_data_->now, "%x, %X");
#line 747 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp6_ = _data_->_tmp5_;
#line 747 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp7_ = g_strconcat (_data_->_tmp4_, _data_->_tmp6_, NULL);
#line 747 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp8_ = _data_->_tmp7_;
#line 747 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	gvir_config_domain_snapshot_set_description (_data_->config, _data_->_tmp8_);
#line 747 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (_data_->_tmp8_);
#line 747 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (_data_->_tmp6_);
#line 749 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp10_ = _data_->self->priv->_domain;
#line 749 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_state_ = 1;
#line 749 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	gvir_domain_create_snapshot_async (_data_->_tmp10_, _data_->config, (guint) 0, NULL, boxes_libvirt_machine_create_snapshot_ready, _data_);
#line 749 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return FALSE;
#line 8087 "libvirt-machine.c"
	_state_1:
#line 749 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp11_ = gvir_domain_create_snapshot_finish (_data_->_tmp10_, _data_->_res_, &_data_->_inner_error_);
#line 749 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp9_ = _data_->_tmp11_;
#line 749 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 749 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 749 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_date_time_unref0 (_data_->now);
#line 749 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (_data_->config);
#line 749 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 749 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 8105 "libvirt-machine.c"
	}
#line 749 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp12_ = _data_->_tmp9_;
#line 749 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp9_ = NULL;
#line 749 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->result = _data_->_tmp12_;
#line 749 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->_tmp9_);
#line 749 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_date_time_unref0 (_data_->now);
#line 749 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->config);
#line 749 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 749 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_state_ != 0) {
#line 749 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 749 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 8127 "libvirt-machine.c"
		}
	}
#line 749 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_object_unref (_data_->_async_result);
#line 749 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return FALSE;
#line 8134 "libvirt-machine.c"
}


static void boxes_libvirt_machine_wait_for_save_data_free (gpointer _data) {
	BoxesLibvirtMachineWaitForSaveData* _data_;
	_data_ = _data;
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->self);
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_slice_free (BoxesLibvirtMachineWaitForSaveData, _data_);
#line 8145 "libvirt-machine.c"
}


static void boxes_libvirt_machine_wait_for_save (BoxesLibvirtMachine* self, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	BoxesLibvirtMachineWaitForSaveData* _data_;
	BoxesLibvirtMachine* _tmp0_;
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_slice_new0 (BoxesLibvirtMachineWaitForSaveData);
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_task_set_task_data (_data_->_async_result, _data_, boxes_libvirt_machine_wait_for_save_data_free);
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->self = _tmp0_;
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_wait_for_save_co (_data_);
#line 8164 "libvirt-machine.c"
}


static void boxes_libvirt_machine_wait_for_save_finish (BoxesLibvirtMachine* self, GAsyncResult* _res_) {
	BoxesLibvirtMachineWaitForSaveData* _data_;
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_task_propagate_pointer (G_TASK (_res_), NULL);
#line 8172 "libvirt-machine.c"
}


static Block47Data* block47_data_ref (Block47Data* _data47_) {
#line 752 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_atomic_int_inc (&_data47_->_ref_count_);
#line 752 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return _data47_;
#line 8181 "libvirt-machine.c"
}


static void block47_data_unref (void * _userdata_) {
	Block47Data* _data47_;
	_data47_ = (Block47Data*) _userdata_;
#line 752 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (g_atomic_int_dec_and_test (&_data47_->_ref_count_)) {
#line 8190 "libvirt-machine.c"
		BoxesLibvirtMachine* self;
#line 752 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		self = _data47_->self;
#line 752 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (self);
#line 752 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_slice_free (Block47Data, _data47_);
#line 8198 "libvirt-machine.c"
	}
}


static void __lambda163_ (Block47Data* _data47_) {
	BoxesLibvirtMachine* self;
	BoxesMachineMachineState _tmp0_;
	BoxesMachineMachineState _tmp1_;
#line 756 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self = _data47_->self;
#line 757 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = boxes_machine_get_state ((BoxesMachine*) self);
#line 757 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _tmp0_;
#line 757 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp1_ == BOXES_MACHINE_MACHINE_STATE_SAVED) {
#line 758 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_wait_for_save_co (_data47_->_async_data_);
#line 8217 "libvirt-machine.c"
	}
}


static void ___lambda163__g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self) {
#line 756 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	__lambda163_ (self);
#line 8225 "libvirt-machine.c"
}


static gboolean __lambda165_ (Block47Data* _data47_) {
	BoxesLibvirtMachine* self;
	gboolean result = FALSE;
#line 761 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self = _data47_->self;
#line 765 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_wait_for_save_co (_data47_->_async_data_);
#line 767 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	result = FALSE;
#line 767 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 8240 "libvirt-machine.c"
}


static gboolean ___lambda165__gsource_func (gpointer self) {
	gboolean result;
	result = __lambda165_ (self);
#line 761 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 8249 "libvirt-machine.c"
}


static void __lambda164_ (Block47Data* _data47_) {
	BoxesLibvirtMachine* self;
#line 760 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self = _data47_->self;
#line 761 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_idle_add_full (G_PRIORITY_DEFAULT_IDLE, ___lambda165__gsource_func, block47_data_ref (_data47_), block47_data_unref);
#line 8259 "libvirt-machine.c"
}


static void ___lambda164__g_cancellable_cancelled (GCancellable* _sender, gpointer self) {
#line 760 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	__lambda164_ (self);
#line 8266 "libvirt-machine.c"
}


static gboolean boxes_libvirt_machine_wait_for_save_co (BoxesLibvirtMachineWaitForSaveData* _data_) {
#line 752 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	switch (_data_->_state_) {
#line 752 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 0:
#line 8275 "libvirt-machine.c"
		goto _state_0;
#line 752 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case 1:
#line 8279 "libvirt-machine.c"
		goto _state_1;
		default:
#line 752 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_assert_not_reached ();
#line 8284 "libvirt-machine.c"
	}
	_state_0:
#line 752 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data47_ = g_slice_new0 (Block47Data);
#line 752 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data47_->_ref_count_ = 1;
#line 752 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data47_->self = g_object_ref (_data_->self);
#line 752 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data47_->_async_data_ = _data_;
#line 753 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp0_ = _data_->self->priv->saving;
#line 753 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (!_data_->_tmp0_) {
#line 754 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		block47_data_unref (_data_->_data47_);
#line 754 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data47_ = NULL;
#line 754 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 754 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_state_ != 0) {
#line 754 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 754 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 8311 "libvirt-machine.c"
			}
		}
#line 754 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 754 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 8318 "libvirt-machine.c"
	}
#line 756 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp1_ = g_signal_connect_data ((GObject*) _data_->self, "notify::state", (GCallback) ___lambda163__g_object_notify, block47_data_ref (_data_->_data47_), (GClosureNotify) block47_data_unref, 0);
#line 756 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->state_notify_id = _data_->_tmp1_;
#line 760 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp2_ = boxes_machine_get_connecting_cancellable ((BoxesMachine*) _data_->self);
#line 760 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp3_ = _data_->_tmp2_;
#line 760 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp4_ = g_signal_connect_data (_data_->_tmp3_, "cancelled", (GCallback) ___lambda164__g_cancellable_cancelled, block47_data_ref (_data_->_data47_), (GClosureNotify) block47_data_unref, 0);
#line 760 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->cancelled_id = _data_->_tmp4_;
#line 771 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp5_ = boxes_collection_item_get_name ((BoxesCollectionItem*) _data_->self);
#line 771 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp6_ = _data_->_tmp5_;
#line 771 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_debug ("libvirt-machine.vala:771: %s is being saved, delaying starting until i" \
"t's saved", _data_->_tmp6_);
#line 772 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_state_ = 1;
#line 772 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return FALSE;
#line 8342 "libvirt-machine.c"
	_state_1:
	;
#line 774 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp7_ = _data_->state_notify_id;
#line 774 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_signal_handler_disconnect ((GObject*) _data_->self, _data_->_tmp7_);
#line 775 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp8_ = boxes_machine_get_connecting_cancellable ((BoxesMachine*) _data_->self);
#line 775 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp9_ = _data_->_tmp8_;
#line 775 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp10_ = _data_->cancelled_id;
#line 775 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_cancellable_disconnect (_data_->_tmp9_, _data_->_tmp10_);
#line 752 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	block47_data_unref (_data_->_data47_);
#line 752 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data47_ = NULL;
#line 752 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 752 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_state_ != 0) {
#line 752 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 752 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 8369 "libvirt-machine.c"
		}
	}
#line 752 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_object_unref (_data_->_async_result);
#line 752 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return FALSE;
#line 8376 "libvirt-machine.c"
}


static void boxes_libvirt_machine_real_update_status (BoxesMachine* base) {
	BoxesLibvirtMachine * self;
	const gchar* _tmp0_;
	const gchar* _tmp1_;
	GVirConfigDomain* _tmp2_;
	gboolean _tmp3_;
#line 778 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self = (BoxesLibvirtMachine*) base;
#line 779 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	BOXES_MACHINE_CLASS (boxes_libvirt_machine_parent_class)->update_status (G_TYPE_CHECK_INSTANCE_CAST (self, BOXES_TYPE_MACHINE, BoxesMachine));
#line 781 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = boxes_machine_get_status ((BoxesMachine*) self);
#line 781 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _tmp0_;
#line 781 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp1_ != NULL) {
#line 782 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 8398 "libvirt-machine.c"
	}
#line 784 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = self->priv->_domain_config;
#line 784 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = boxes_vm_configurator_is_install_config (_tmp2_);
#line 784 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp3_) {
#line 785 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_machine_set_status ((BoxesMachine*) self, _ ("Installing…"));
#line 8408 "libvirt-machine.c"
	} else {
		GVirConfigDomain* _tmp4_;
		gboolean _tmp5_;
#line 786 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp4_ = self->priv->_domain_config;
#line 786 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp5_ = boxes_vm_configurator_is_live_config (_tmp4_);
#line 786 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		if (_tmp5_) {
#line 787 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			boxes_machine_set_status ((BoxesMachine*) self, _ ("Live"));
#line 8420 "libvirt-machine.c"
		} else {
			GVirConfigDomain* _tmp6_;
			gboolean _tmp7_;
#line 788 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_tmp6_ = self->priv->_domain_config;
#line 788 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_tmp7_ = boxes_vm_configurator_is_libvirt_cloning_config (_tmp6_);
#line 788 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			if (_tmp7_) {
#line 789 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				boxes_machine_set_status ((BoxesMachine*) self, _ ("Setting up clone…"));
#line 8432 "libvirt-machine.c"
			} else {
				GVirConfigDomain* _tmp8_;
				gboolean _tmp9_;
#line 790 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_tmp8_ = self->priv->_domain_config;
#line 790 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_tmp9_ = boxes_vm_configurator_is_import_config (_tmp8_);
#line 790 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				if (_tmp9_) {
#line 791 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					boxes_machine_set_status ((BoxesMachine*) self, _ ("Importing…"));
#line 8444 "libvirt-machine.c"
				} else {
#line 793 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					boxes_machine_set_status ((BoxesMachine*) self, NULL);
#line 8448 "libvirt-machine.c"
				}
			}
		}
	}
}


static void boxes_libvirt_machine_update_info (BoxesLibvirtMachine* self) {
	gboolean _tmp0_;
	gboolean _tmp1_;
#line 796 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (self != NULL);
#line 797 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = boxes_machine_get_is_local ((BoxesMachine*) self);
#line 797 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _tmp0_;
#line 797 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (!_tmp1_) {
#line 8467 "libvirt-machine.c"
		xmlURI* uri = NULL;
		BoxesCollectionSource* _tmp2_;
		gchar* _tmp3_;
		gchar* _tmp4_;
		gchar* _tmp5_;
		xmlURI* _tmp6_;
		xmlURI* _tmp7_;
		xmlURI* _tmp8_;
		const gchar* _tmp9_;
		gchar* _tmp10_;
		gchar* _tmp11_;
#line 798 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp2_ = ((BoxesMachine*) self)->source;
#line 798 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp3_ = boxes_collection_source_get_uri (_tmp2_);
#line 798 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp4_ = _tmp3_;
#line 798 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp5_ = _tmp4_;
#line 798 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp6_ = xmlParseURI (_tmp5_);
#line 798 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp7_ = _tmp6_;
#line 798 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_free0 (_tmp5_);
#line 798 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		uri = _tmp7_;
#line 800 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp8_ = uri;
#line 800 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp9_ = _tmp8_->server;
#line 800 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp10_ = g_strdup_printf (_ ("host: %s"), _tmp9_);
#line 800 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp11_ = _tmp10_;
#line 800 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_machine_set_info ((BoxesMachine*) self, _tmp11_);
#line 800 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_free0 (_tmp11_);
#line 797 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_xmlFreeURI0 (uri);
#line 8509 "libvirt-machine.c"
	} else {
#line 802 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_machine_set_info ((BoxesMachine*) self, NULL);
#line 8513 "libvirt-machine.c"
	}
}


static gchar* boxes_libvirt_machine_get_mac_address (BoxesLibvirtMachine* self) {
	gchar* result = NULL;
	GVirConfigDomainInterface* iface_config = NULL;
	GVirConfigDomain* _tmp0_;
	GList* _tmp1_;
	GVirConfigDomainInterface* _tmp6_;
	GVirConfigDomainInterface* _tmp7_;
	const gchar* _tmp8_;
	gchar* _tmp9_;
#line 805 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 806 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	iface_config = NULL;
#line 808 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = self->priv->_domain_config;
#line 808 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = gvir_config_domain_get_devices (_tmp0_);
#line 8535 "libvirt-machine.c"
	{
		GList* device_config_collection = NULL;
		GList* device_config_it = NULL;
#line 808 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		device_config_collection = _tmp1_;
#line 808 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		for (device_config_it = device_config_collection; device_config_it != NULL; device_config_it = device_config_it->next) {
#line 8543 "libvirt-machine.c"
			GVirConfigDomainDevice* _tmp2_;
			GVirConfigDomainDevice* device_config = NULL;
#line 808 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			_tmp2_ = _g_object_ref0 ((GVirConfigDomainDevice*) device_config_it->data);
#line 808 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
			device_config = _tmp2_;
#line 8550 "libvirt-machine.c"
			{
				GVirConfigDomainDevice* _tmp3_;
#line 811 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_tmp3_ = device_config;
#line 811 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				if (G_TYPE_CHECK_INSTANCE_TYPE (_tmp3_, gvir_config_domain_interface_bridge_get_type ())) {
#line 8557 "libvirt-machine.c"
					GVirConfigDomainDevice* _tmp4_;
					GVirConfigDomainInterface* _tmp5_;
#line 812 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp4_ = device_config;
#line 812 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_tmp5_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp4_, gvir_config_domain_interface_get_type ()) ? ((GVirConfigDomainInterface*) _tmp4_) : NULL);
#line 812 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_object_unref0 (iface_config);
#line 812 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					iface_config = _tmp5_;
#line 814 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					_g_object_unref0 (device_config);
#line 814 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
					break;
#line 8572 "libvirt-machine.c"
				}
#line 808 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
				_g_object_unref0 (device_config);
#line 8576 "libvirt-machine.c"
			}
		}
#line 808 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		__g_list_free__g_object_unref0_0 (device_config_collection);
#line 8581 "libvirt-machine.c"
	}
#line 818 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp6_ = iface_config;
#line 818 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp6_ == NULL) {
#line 819 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		result = NULL;
#line 819 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (iface_config);
#line 819 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return result;
#line 8593 "libvirt-machine.c"
	}
#line 821 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp7_ = iface_config;
#line 821 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp8_ = gvir_config_domain_interface_get_mac (_tmp7_);
#line 821 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp9_ = g_strdup (_tmp8_);
#line 821 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	result = _tmp9_;
#line 821 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (iface_config);
#line 821 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 8607 "libvirt-machine.c"
}


GVirDomain* boxes_libvirt_machine_get_domain (BoxesLibvirtMachine* self) {
	GVirDomain* result;
	GVirDomain* _tmp0_;
#line 6 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 6 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = self->priv->_domain;
#line 6 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	result = _tmp0_;
#line 6 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 8622 "libvirt-machine.c"
}


void boxes_libvirt_machine_set_domain (BoxesLibvirtMachine* self, GVirDomain* value) {
#line 6 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (self != NULL);
#line 6 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (boxes_libvirt_machine_get_domain (self) != value) {
#line 8631 "libvirt-machine.c"
		GVirDomain* _tmp0_;
		GVirDomain* _tmp1_;
#line 6 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp0_ = value;
#line 6 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp1_ = _g_object_ref0 (_tmp0_);
#line 6 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (self->priv->_domain);
#line 6 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		self->priv->_domain = _tmp1_;
#line 6 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_object_notify_by_pspec ((GObject *) self, boxes_libvirt_machine_properties[BOXES_LIBVIRT_MACHINE_DOMAIN]);
#line 8644 "libvirt-machine.c"
	}
}


GVirConfigDomain* boxes_libvirt_machine_get_domain_config (BoxesLibvirtMachine* self) {
	GVirConfigDomain* result;
	GVirConfigDomain* _tmp0_;
#line 7 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 7 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = self->priv->_domain_config;
#line 7 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	result = _tmp0_;
#line 7 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 8660 "libvirt-machine.c"
}


void boxes_libvirt_machine_set_domain_config (BoxesLibvirtMachine* self, GVirConfigDomain* value) {
#line 7 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (self != NULL);
#line 7 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (boxes_libvirt_machine_get_domain_config (self) != value) {
#line 8669 "libvirt-machine.c"
		GVirConfigDomain* _tmp0_;
		GVirConfigDomain* _tmp1_;
#line 7 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp0_ = value;
#line 7 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp1_ = _g_object_ref0 (_tmp0_);
#line 7 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (self->priv->_domain_config);
#line 7 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		self->priv->_domain_config = _tmp1_;
#line 7 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_object_notify_by_pspec ((GObject *) self, boxes_libvirt_machine_properties[BOXES_LIBVIRT_MACHINE_DOMAIN_CONFIG]);
#line 8682 "libvirt-machine.c"
	}
}


GVirConnection* boxes_libvirt_machine_get_connection (BoxesLibvirtMachine* self) {
	GVirConnection* result;
	GVirConnection* _tmp0_;
#line 8 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 8 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = self->priv->_connection;
#line 8 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	result = _tmp0_;
#line 8 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 8698 "libvirt-machine.c"
}


void boxes_libvirt_machine_set_connection (BoxesLibvirtMachine* self, GVirConnection* value) {
#line 8 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (self != NULL);
#line 8 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (boxes_libvirt_machine_get_connection (self) != value) {
#line 8707 "libvirt-machine.c"
		GVirConnection* _tmp0_;
		GVirConnection* _tmp1_;
#line 8 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp0_ = value;
#line 8 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp1_ = _g_object_ref0 (_tmp0_);
#line 8 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (self->priv->_connection);
#line 8 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		self->priv->_connection = _tmp1_;
#line 8 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_object_notify_by_pspec ((GObject *) self, boxes_libvirt_machine_properties[BOXES_LIBVIRT_MACHINE_CONNECTION]);
#line 8720 "libvirt-machine.c"
	}
}


GVirStorageVol* boxes_libvirt_machine_get_storage_volume (BoxesLibvirtMachine* self) {
	GVirStorageVol* result;
	GVirStorageVol* _tmp0_;
#line 9 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 9 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = self->priv->_storage_volume;
#line 9 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	result = _tmp0_;
#line 9 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 8736 "libvirt-machine.c"
}


void boxes_libvirt_machine_set_storage_volume (BoxesLibvirtMachine* self, GVirStorageVol* value) {
#line 9 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (self != NULL);
#line 9 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (boxes_libvirt_machine_get_storage_volume (self) != value) {
#line 8745 "libvirt-machine.c"
		GVirStorageVol* _tmp0_;
		GVirStorageVol* _tmp1_;
#line 9 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp0_ = value;
#line 9 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp1_ = _g_object_ref0 (_tmp0_);
#line 9 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (self->priv->_storage_volume);
#line 9 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		self->priv->_storage_volume = _tmp1_;
#line 9 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_object_notify_by_pspec ((GObject *) self, boxes_libvirt_machine_properties[BOXES_LIBVIRT_MACHINE_STORAGE_VOLUME]);
#line 8758 "libvirt-machine.c"
	}
}


BoxesVMCreator* boxes_libvirt_machine_get_vm_creator (BoxesLibvirtMachine* self) {
	BoxesVMCreator* result;
	BoxesVMCreator* _tmp0_;
#line 12 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 13 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = self->priv->_vm_creator;
#line 13 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	result = _tmp0_;
#line 13 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 8774 "libvirt-machine.c"
}


static gpointer _boxes_vm_creator_ref0 (gpointer self) {
#line 17 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return self ? boxes_vm_creator_ref (self) : NULL;
#line 8781 "libvirt-machine.c"
}


void boxes_libvirt_machine_set_vm_creator (BoxesLibvirtMachine* self, BoxesVMCreator* value) {
	BoxesVMCreator* _tmp0_;
	BoxesVMCreator* _tmp1_;
	gboolean _tmp2_;
	gboolean _tmp3_;
	gboolean _tmp4_ = FALSE;
	BoxesVMCreator* _tmp5_;
	BoxesVMCreator* _tmp8_;
#line 16 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (self != NULL);
#line 17 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = value;
#line 17 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _boxes_vm_creator_ref0 (_tmp0_);
#line 17 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_boxes_vm_creator_unref0 (self->priv->_vm_creator);
#line 17 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self->priv->_vm_creator = _tmp1_;
#line 18 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = boxes_libvirt_machine_get_importing (self);
#line 18 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = _tmp2_;
#line 18 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_machine_set_can_delete ((BoxesMachine*) self, !_tmp3_);
#line 19 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp5_ = value;
#line 19 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp5_ != NULL) {
#line 8813 "libvirt-machine.c"
		GVirConfigDomain* _tmp6_;
		gboolean _tmp7_;
#line 19 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp6_ = self->priv->_domain_config;
#line 19 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp7_ = boxes_vm_configurator_is_live_config (_tmp6_);
#line 19 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp4_ = !_tmp7_;
#line 8822 "libvirt-machine.c"
	} else {
#line 19 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp4_ = FALSE;
#line 8826 "libvirt-machine.c"
	}
#line 19 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_machine_set_under_construction ((BoxesMachine*) self, _tmp4_);
#line 20 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_object_notify ((GObject*) self, "importing");
#line 21 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp8_ = value;
#line 21 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp8_ == NULL) {
#line 22 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_update_domain_config (self);
#line 8838 "libvirt-machine.c"
	}
#line 23 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_machine_update_status ((BoxesMachine*) self);
#line 16 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_object_notify_by_pspec ((GObject *) self, boxes_libvirt_machine_properties[BOXES_LIBVIRT_MACHINE_VM_CREATOR]);
#line 8844 "libvirt-machine.c"
}


gboolean boxes_libvirt_machine_get_importing (BoxesLibvirtMachine* self) {
	gboolean result;
	gboolean _tmp0_ = FALSE;
	BoxesVMCreator* _tmp1_;
	BoxesVMCreator* _tmp2_;
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = boxes_libvirt_machine_get_vm_creator (self);
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = _tmp1_;
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp2_ != NULL) {
#line 8861 "libvirt-machine.c"
		BoxesVMCreator* _tmp3_;
		BoxesVMCreator* _tmp4_;
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp3_ = boxes_libvirt_machine_get_vm_creator (self);
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp4_ = _tmp3_;
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp0_ = G_TYPE_CHECK_INSTANCE_TYPE (_tmp4_, BOXES_TYPE_VM_IMPORTER);
#line 8870 "libvirt-machine.c"
	} else {
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp0_ = FALSE;
#line 8874 "libvirt-machine.c"
	}
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	result = _tmp0_;
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 8880 "libvirt-machine.c"
}


gboolean boxes_libvirt_machine_get_save_on_quit (BoxesLibvirtMachine* self) {
	gboolean result;
	BoxesCollectionSource* _tmp0_;
	gboolean _tmp1_;
#line 32 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 32 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = ((BoxesMachine*) self)->source;
#line 32 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = boxes_iconfig_get_boolean ((BoxesIConfig*) _tmp0_, "source", "save-on-quit", FALSE);
#line 32 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	result = _tmp1_;
#line 32 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 8898 "libvirt-machine.c"
}


void boxes_libvirt_machine_set_save_on_quit (BoxesLibvirtMachine* self, gboolean value) {
	BoxesCollectionSource* _tmp0_;
	gboolean _tmp1_;
#line 33 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (self != NULL);
#line 33 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = ((BoxesMachine*) self)->source;
#line 33 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = value;
#line 33 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_iconfig_set_boolean ((BoxesIConfig*) _tmp0_, "source", "save-on-quit", _tmp1_);
#line 33 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_object_notify_by_pspec ((GObject *) self, boxes_libvirt_machine_properties[BOXES_LIBVIRT_MACHINE_SAVE_ON_QUIT]);
#line 8915 "libvirt-machine.c"
}


static gboolean boxes_libvirt_machine_real_get_suspend_at_exit (BoxesMachine* base) {
	gboolean result;
	BoxesLibvirtMachine* self;
	gboolean _tmp0_ = FALSE;
	GVirConnection* _tmp1_;
	BoxesApp* _tmp2_;
	GVirConnection* _tmp3_;
	GVirConnection* _tmp4_;
	GVirConnection* _tmp5_;
	gboolean _tmp6_;
#line 36 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self = (BoxesLibvirtMachine*) base;
#line 36 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = self->priv->_connection;
#line 36 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = boxes_app_app;
#line 36 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = boxes_app_get_default_connection (_tmp2_);
#line 36 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp4_ = _tmp3_;
#line 36 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp5_ = _tmp4_;
#line 36 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp6_ = _tmp1_ == _tmp5_;
#line 36 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_tmp5_);
#line 36 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp6_) {
#line 8947 "libvirt-machine.c"
		gboolean _tmp7_;
#line 36 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp7_ = self->priv->_run_in_bg;
#line 36 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp0_ = !_tmp7_;
#line 8953 "libvirt-machine.c"
	} else {
#line 36 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp0_ = FALSE;
#line 8957 "libvirt-machine.c"
	}
#line 36 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	result = _tmp0_;
#line 36 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 8963 "libvirt-machine.c"
}


static gboolean boxes_libvirt_machine_real_get_can_save (BoxesMachine* base) {
	gboolean result;
	BoxesLibvirtMachine* self;
	gboolean _tmp0_ = FALSE;
	gboolean _tmp1_ = FALSE;
	gboolean _tmp2_;
#line 37 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self = (BoxesLibvirtMachine*) base;
#line 37 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = self->priv->saving;
#line 37 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (!_tmp2_) {
#line 8979 "libvirt-machine.c"
		BoxesMachineMachineState _tmp3_;
		BoxesMachineMachineState _tmp4_;
#line 37 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp3_ = boxes_machine_get_state ((BoxesMachine*) self);
#line 37 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp4_ = _tmp3_;
#line 37 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp1_ = _tmp4_ != BOXES_MACHINE_MACHINE_STATE_SAVED;
#line 8988 "libvirt-machine.c"
	} else {
#line 37 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp1_ = FALSE;
#line 8992 "libvirt-machine.c"
	}
#line 37 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp1_) {
#line 8996 "libvirt-machine.c"
		gboolean _tmp5_;
		gboolean _tmp6_;
#line 37 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp5_ = boxes_libvirt_machine_get_importing (self);
#line 37 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp6_ = _tmp5_;
#line 37 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp0_ = !_tmp6_;
#line 9005 "libvirt-machine.c"
	} else {
#line 37 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp0_ = FALSE;
#line 9009 "libvirt-machine.c"
	}
#line 37 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	result = _tmp0_;
#line 37 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 9015 "libvirt-machine.c"
}


static gboolean boxes_libvirt_machine_real_get_can_restart (BoxesMachine* base) {
	gboolean result;
	BoxesLibvirtMachine* self;
	gboolean _tmp0_ = FALSE;
	BoxesMachineMachineState _tmp1_;
	BoxesMachineMachineState _tmp2_;
#line 38 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self = (BoxesLibvirtMachine*) base;
#line 38 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = boxes_machine_get_state ((BoxesMachine*) self);
#line 38 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = _tmp1_;
#line 38 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp2_ == BOXES_MACHINE_MACHINE_STATE_RUNNING) {
#line 38 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp0_ = TRUE;
#line 9035 "libvirt-machine.c"
	} else {
		BoxesMachineMachineState _tmp3_;
		BoxesMachineMachineState _tmp4_;
#line 38 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp3_ = boxes_machine_get_state ((BoxesMachine*) self);
#line 38 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp4_ = _tmp3_;
#line 38 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp0_ = _tmp4_ == BOXES_MACHINE_MACHINE_STATE_SAVED;
#line 9045 "libvirt-machine.c"
	}
#line 38 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	result = _tmp0_;
#line 38 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 9051 "libvirt-machine.c"
}


static gboolean boxes_libvirt_machine_real_get_can_clone (BoxesMachine* base) {
	gboolean result;
	BoxesLibvirtMachine* self;
	gboolean _tmp0_;
	gboolean _tmp1_;
#line 39 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self = (BoxesLibvirtMachine*) base;
#line 39 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = boxes_libvirt_machine_get_importing (self);
#line 39 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _tmp0_;
#line 39 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	result = !_tmp1_;
#line 39 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 9070 "libvirt-machine.c"
}


static gboolean boxes_libvirt_machine_real_get_should_autosave (BoxesMachine* base) {
	gboolean result;
	BoxesLibvirtMachine* self;
	gboolean _tmp0_ = FALSE;
	gboolean _tmp1_ = FALSE;
	gboolean _tmp2_ = FALSE;
	gboolean _tmp3_;
#line 41 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self = (BoxesLibvirtMachine*) base;
#line 42 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = BOXES_MACHINE_CLASS (boxes_libvirt_machine_parent_class)->get_should_autosave (G_TYPE_CHECK_INSTANCE_CAST (self, BOXES_TYPE_MACHINE, BoxesMachine));
#line 42 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp3_) {
#line 9087 "libvirt-machine.c"
		GVirConnection* _tmp4_;
		BoxesApp* _tmp5_;
		GVirConnection* _tmp6_;
		GVirConnection* _tmp7_;
		GVirConnection* _tmp8_;
#line 43 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp4_ = self->priv->_connection;
#line 43 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp5_ = boxes_app_app;
#line 43 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp6_ = boxes_app_get_default_connection (_tmp5_);
#line 43 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp7_ = _tmp6_;
#line 43 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp8_ = _tmp7_;
#line 43 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp2_ = _tmp4_ == _tmp8_;
#line 43 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (_tmp8_);
#line 9107 "libvirt-machine.c"
	} else {
#line 42 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp2_ = FALSE;
#line 9111 "libvirt-machine.c"
	}
#line 42 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp2_) {
#line 9115 "libvirt-machine.c"
		gboolean _tmp9_;
#line 44 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp9_ = self->priv->_run_in_bg;
#line 44 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp1_ = !_tmp9_;
#line 9121 "libvirt-machine.c"
	} else {
#line 42 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp1_ = FALSE;
#line 9125 "libvirt-machine.c"
	}
#line 42 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp1_) {
#line 9129 "libvirt-machine.c"
		BoxesVMCreator* _tmp10_;
		BoxesVMCreator* _tmp11_;
#line 45 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp10_ = boxes_libvirt_machine_get_vm_creator (self);
#line 45 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp11_ = _tmp10_;
#line 45 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp0_ = _tmp11_ == NULL;
#line 9138 "libvirt-machine.c"
	} else {
#line 42 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp0_ = FALSE;
#line 9142 "libvirt-machine.c"
	}
#line 42 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	result = _tmp0_;
#line 42 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 9148 "libvirt-machine.c"
}


gboolean boxes_libvirt_machine_get_run_in_bg (BoxesLibvirtMachine* self) {
	gboolean result;
	gboolean _tmp0_;
#line 49 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 49 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = self->priv->_run_in_bg;
#line 49 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	result = _tmp0_;
#line 49 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 9163 "libvirt-machine.c"
}


void boxes_libvirt_machine_set_run_in_bg (BoxesLibvirtMachine* self, gboolean value) {
#line 49 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (self != NULL);
#line 49 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (boxes_libvirt_machine_get_run_in_bg (self) != value) {
#line 9172 "libvirt-machine.c"
		gboolean _tmp0_;
#line 49 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		_tmp0_ = value;
#line 49 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		self->priv->_run_in_bg = _tmp0_;
#line 49 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_object_notify_by_pspec ((GObject *) self, boxes_libvirt_machine_properties[BOXES_LIBVIRT_MACHINE_RUN_IN_BG]);
#line 9180 "libvirt-machine.c"
	}
}


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


static gboolean boxes_libvirt_machine_real_get_is_local (BoxesMachine* base) {
	gboolean result;
	BoxesLibvirtMachine* self;
	BoxesCollectionSource* _tmp0_;
	gchar* _tmp1_;
	gchar* _tmp2_;
	gchar* _tmp3_;
	gboolean _tmp4_;
	gboolean _tmp5_;
	gboolean _tmp6_;
#line 52 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self = (BoxesLibvirtMachine*) base;
#line 54 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = ((BoxesMachine*) self)->source;
#line 54 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = boxes_collection_source_get_uri (_tmp0_);
#line 54 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = _tmp1_;
#line 54 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = _tmp2_;
#line 54 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp4_ = g_regex_match (_thread_safe_regex_init (&_tmp_regex_0, "^qemu(\\+unix)?:\\/\\/\\/(system|session)", 0 | G_REGEX_CASELESS), _tmp3_, 0, NULL);
#line 54 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp5_ = _tmp4_;
#line 54 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (_tmp3_);
#line 54 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp5_) {
#line 55 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		result = TRUE;
#line 55 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		return result;
#line 9232 "libvirt-machine.c"
	}
#line 57 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp6_ = BOXES_MACHINE_CLASS (boxes_libvirt_machine_parent_class)->get_is_local (G_TYPE_CHECK_INSTANCE_CAST (self, BOXES_TYPE_MACHINE, BoxesMachine));
#line 57 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	result = _tmp6_;
#line 57 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 9240 "libvirt-machine.c"
}


static GObject * boxes_libvirt_machine_constructor (GType type, guint n_construct_properties, GObjectConstructParam * construct_properties) {
	GObject * obj;
	GObjectClass * parent_class;
	BoxesLibvirtMachine * self;
	BoxesLibvirtMachineMachineStat* _tmp0_;
	GCancellable* _tmp1_;
#line 135 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	parent_class = G_OBJECT_CLASS (boxes_libvirt_machine_parent_class);
#line 135 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	obj = parent_class->constructor (type, n_construct_properties, construct_properties);
#line 135 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, BOXES_TYPE_LIBVIRT_MACHINE, BoxesLibvirtMachine);
#line 136 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = g_new0 (BoxesLibvirtMachineMachineStat, BOXES_LIBVIRT_MACHINE_STATS_SIZE);
#line 136 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self->priv->stats = (_vala_BoxesLibvirtMachineMachineStat_array_free (self->priv->stats, self->priv->stats_length1), NULL);
#line 136 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self->priv->stats = _tmp0_;
#line 136 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self->priv->stats_length1 = BOXES_LIBVIRT_MACHINE_STATS_SIZE;
#line 136 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self->priv->_stats_size_ = self->priv->stats_length1;
#line 137 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = g_cancellable_new ();
#line 137 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (self->priv->stats_cancellable);
#line 137 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self->priv->stats_cancellable = _tmp1_;
#line 135 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return obj;
#line 9274 "libvirt-machine.c"
}


static GVirDomainDiskStats* _vala_GVirDomainDiskStats_copy (GVirDomainDiskStats* self) {
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return g_boxed_copy (gvir_domain_disk_stats_get_type (), self);
#line 9281 "libvirt-machine.c"
}


static gpointer __vala_GVirDomainDiskStats_copy0 (gpointer self) {
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return self ? _vala_GVirDomainDiskStats_copy (self) : NULL;
#line 9288 "libvirt-machine.c"
}


static GVirDomainInterfaceStats* _vala_GVirDomainInterfaceStats_copy (GVirDomainInterfaceStats* self) {
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return g_boxed_copy (gvir_domain_interface_stats_get_type (), self);
#line 9295 "libvirt-machine.c"
}


static gpointer __vala_GVirDomainInterfaceStats_copy0 (gpointer self) {
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return self ? _vala_GVirDomainInterfaceStats_copy (self) : NULL;
#line 9302 "libvirt-machine.c"
}


static void boxes_libvirt_machine_machine_stat_copy (const BoxesLibvirtMachineMachineStat* self, BoxesLibvirtMachineMachineStat* dest) {
	gint64 _tmp0_;
	gdouble _tmp1_;
	gdouble _tmp2_;
	gdouble _tmp3_;
	gdouble _tmp4_;
	GVirDomainDiskStats* _tmp5_;
	GVirDomainDiskStats* _tmp6_;
	gdouble _tmp7_;
	gdouble _tmp8_;
	GVirDomainInterfaceStats* _tmp9_;
	GVirDomainInterfaceStats* _tmp10_;
	gdouble _tmp11_;
	gdouble _tmp12_;
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = (*self).timestamp;
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	(*dest).timestamp = _tmp0_;
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = (*self).cpu_time;
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	(*dest).cpu_time = _tmp1_;
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = (*self).cpu_time_abs;
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	(*dest).cpu_time_abs = _tmp2_;
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = (*self).cpu_guest_percent;
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	(*dest).cpu_guest_percent = _tmp3_;
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp4_ = (*self).memory_percent;
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	(*dest).memory_percent = _tmp4_;
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp5_ = (*self).disk;
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp6_ = __vala_GVirDomainDiskStats_copy0 (_tmp5_);
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	__vala_GVirDomainDiskStats_free0 ((*dest).disk);
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	(*dest).disk = _tmp6_;
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp7_ = (*self).disk_read;
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	(*dest).disk_read = _tmp7_;
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp8_ = (*self).disk_write;
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	(*dest).disk_write = _tmp8_;
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp9_ = (*self).net;
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp10_ = __vala_GVirDomainInterfaceStats_copy0 (_tmp9_);
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	__vala_GVirDomainInterfaceStats_free0 ((*dest).net);
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	(*dest).net = _tmp10_;
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp11_ = (*self).net_read;
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	(*dest).net_read = _tmp11_;
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_tmp12_ = (*self).net_write;
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	(*dest).net_write = _tmp12_;
#line 9372 "libvirt-machine.c"
}


static void boxes_libvirt_machine_machine_stat_destroy (BoxesLibvirtMachineMachineStat* self) {
#line 112 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	__vala_GVirDomainDiskStats_free0 ((*self).disk);
#line 115 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	__vala_GVirDomainInterfaceStats_free0 ((*self).net);
#line 9381 "libvirt-machine.c"
}


static BoxesLibvirtMachineMachineStat* boxes_libvirt_machine_machine_stat_dup (const BoxesLibvirtMachineMachineStat* self) {
	BoxesLibvirtMachineMachineStat* dup;
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	dup = g_new0 (BoxesLibvirtMachineMachineStat, 1);
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_machine_stat_copy (self, dup);
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	return dup;
#line 9393 "libvirt-machine.c"
}


static void boxes_libvirt_machine_machine_stat_free (BoxesLibvirtMachineMachineStat* self) {
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_machine_stat_destroy (self);
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_free (self);
#line 9402 "libvirt-machine.c"
}


static GType boxes_libvirt_machine_machine_stat_get_type (void) {
	static volatile gsize boxes_libvirt_machine_machine_stat_type_id__volatile = 0;
	if (g_once_init_enter (&boxes_libvirt_machine_machine_stat_type_id__volatile)) {
		GType boxes_libvirt_machine_machine_stat_type_id;
		boxes_libvirt_machine_machine_stat_type_id = g_boxed_type_register_static ("BoxesLibvirtMachineMachineStat", (GBoxedCopyFunc) boxes_libvirt_machine_machine_stat_dup, (GBoxedFreeFunc) boxes_libvirt_machine_machine_stat_free);
		g_once_init_leave (&boxes_libvirt_machine_machine_stat_type_id__volatile, boxes_libvirt_machine_machine_stat_type_id);
	}
	return boxes_libvirt_machine_machine_stat_type_id__volatile;
}


static void boxes_libvirt_machine_class_init (BoxesLibvirtMachineClass * klass) {
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_parent_class = g_type_class_peek_parent (klass);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_type_class_add_private (klass, sizeof (BoxesLibvirtMachinePrivate));
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	((BoxesMachineClass *) klass)->disconnect_display = (void (*) (BoxesMachine *)) boxes_libvirt_machine_real_disconnect_display;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	((BoxesMachineClass *) klass)->connect_display = (void (*) (BoxesMachine *, BoxesMachineConnectFlags, GAsyncReadyCallback, gpointer)) boxes_libvirt_machine_real_connect_display;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	((BoxesMachineClass *) klass)->connect_display_finish = (void (*) (BoxesMachine *, GAsyncResult*, GError**)) boxes_libvirt_machine_real_connect_display_finish;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	((BoxesMachineClass *) klass)->get_properties = (GList* (*) (BoxesMachine *, BoxesPropertiesPage)) boxes_libvirt_machine_real_get_properties;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	((BoxesMachineClass *) klass)->take_screenshot = (void (*) (BoxesMachine *, GAsyncReadyCallback, gpointer)) boxes_libvirt_machine_real_take_screenshot;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	((BoxesMachineClass *) klass)->take_screenshot_finish = (GdkPixbuf* (*) (BoxesMachine *, GAsyncResult*, GError**)) boxes_libvirt_machine_real_take_screenshot_finish;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	((BoxesMachineClass *) klass)->delete = (void (*) (BoxesMachine *, gboolean)) boxes_libvirt_machine_real_delete;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	((BoxesMachineClass *) klass)->save_real = (void (*) (BoxesMachine *, GAsyncReadyCallback, gpointer)) boxes_libvirt_machine_real_save_real;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	((BoxesMachineClass *) klass)->save_real_finish = (void (*) (BoxesMachine *, GAsyncResult*, GError**)) boxes_libvirt_machine_real_save_real_finish;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	((BoxesMachineClass *) klass)->restart = (void (*) (BoxesMachine *)) boxes_libvirt_machine_real_restart;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	((BoxesMachineClass *) klass)->clone = (void (*) (BoxesMachine *, GAsyncReadyCallback, gpointer)) boxes_libvirt_machine_real_clone;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	((BoxesMachineClass *) klass)->clone_finish = (void (*) (BoxesMachine *, GAsyncResult*)) boxes_libvirt_machine_real_clone_finish;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	((BoxesMachineClass *) klass)->update_status = (void (*) (BoxesMachine *)) boxes_libvirt_machine_real_update_status;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	BOXES_MACHINE_CLASS (klass)->get_suspend_at_exit = boxes_libvirt_machine_real_get_suspend_at_exit;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	BOXES_MACHINE_CLASS (klass)->get_can_save = boxes_libvirt_machine_real_get_can_save;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	BOXES_MACHINE_CLASS (klass)->get_can_restart = boxes_libvirt_machine_real_get_can_restart;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	BOXES_MACHINE_CLASS (klass)->get_can_clone = boxes_libvirt_machine_real_get_can_clone;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	BOXES_MACHINE_CLASS (klass)->get_should_autosave = boxes_libvirt_machine_real_get_should_autosave;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	BOXES_MACHINE_CLASS (klass)->get_is_local = boxes_libvirt_machine_real_get_is_local;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_boxes_libvirt_machine_get_property;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_boxes_libvirt_machine_set_property;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	G_OBJECT_CLASS (klass)->constructor = boxes_libvirt_machine_constructor;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	G_OBJECT_CLASS (klass)->finalize = boxes_libvirt_machine_finalize;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_LIBVIRT_MACHINE_DOMAIN, boxes_libvirt_machine_properties[BOXES_LIBVIRT_MACHINE_DOMAIN] = g_param_spec_object ("domain", "domain", "domain", gvir_domain_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/libvirt-machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_LIBVIRT_MACHINE_DOMAIN_CONFIG, boxes_libvirt_machine_properties[BOXES_LIBVIRT_MACHINE_DOMAIN_CONFIG] = g_param_spec_object ("domain-config", "domain-config", "domain-config", gvir_config_domain_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/libvirt-machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_LIBVIRT_MACHINE_CONNECTION, boxes_libvirt_machine_properties[BOXES_LIBVIRT_MACHINE_CONNECTION] = g_param_spec_object ("connection", "connection", "connection", gvir_connection_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/libvirt-machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_LIBVIRT_MACHINE_STORAGE_VOLUME, boxes_libvirt_machine_properties[BOXES_LIBVIRT_MACHINE_STORAGE_VOLUME] = g_param_spec_object ("storage-volume", "storage-volume", "storage-volume", gvir_storage_vol_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/libvirt-machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_LIBVIRT_MACHINE_VM_CREATOR, boxes_libvirt_machine_properties[BOXES_LIBVIRT_MACHINE_VM_CREATOR] = boxes_param_spec_vm_creator ("vm-creator", "vm-creator", "vm-creator", BOXES_TYPE_VM_CREATOR, 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/libvirt-machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_LIBVIRT_MACHINE_IMPORTING, boxes_libvirt_machine_properties[BOXES_LIBVIRT_MACHINE_IMPORTING] = g_param_spec_boolean ("importing", "importing", "importing", FALSE, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_LIBVIRT_MACHINE_SAVE_ON_QUIT, boxes_libvirt_machine_properties[BOXES_LIBVIRT_MACHINE_SAVE_ON_QUIT] = g_param_spec_boolean ("save-on-quit", "save-on-quit", "save-on-quit", 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/libvirt-machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_LIBVIRT_MACHINE_SUSPEND_AT_EXIT, boxes_libvirt_machine_properties[BOXES_LIBVIRT_MACHINE_SUSPEND_AT_EXIT] = 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/libvirt-machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_LIBVIRT_MACHINE_CAN_SAVE, boxes_libvirt_machine_properties[BOXES_LIBVIRT_MACHINE_CAN_SAVE] = 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/libvirt-machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_LIBVIRT_MACHINE_CAN_RESTART, boxes_libvirt_machine_properties[BOXES_LIBVIRT_MACHINE_CAN_RESTART] = 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/libvirt-machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_LIBVIRT_MACHINE_CAN_CLONE, boxes_libvirt_machine_properties[BOXES_LIBVIRT_MACHINE_CAN_CLONE] = 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/libvirt-machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_LIBVIRT_MACHINE_SHOULD_AUTOSAVE, boxes_libvirt_machine_properties[BOXES_LIBVIRT_MACHINE_SHOULD_AUTOSAVE] = 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/libvirt-machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_LIBVIRT_MACHINE_RUN_IN_BG, boxes_libvirt_machine_properties[BOXES_LIBVIRT_MACHINE_RUN_IN_BG] = g_param_spec_boolean ("run-in-bg", "run-in-bg", "run-in-bg", 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/libvirt-machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOXES_LIBVIRT_MACHINE_IS_LOCAL, boxes_libvirt_machine_properties[BOXES_LIBVIRT_MACHINE_IS_LOCAL] = 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/libvirt-machine.vala"
	boxes_libvirt_machine_signals[BOXES_LIBVIRT_MACHINE_STATS_UPDATED_SIGNAL] = g_signal_new ("stats-updated", BOXES_TYPE_LIBVIRT_MACHINE, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
#line 9498 "libvirt-machine.c"
}


static void boxes_libvirt_machine_instance_init (BoxesLibvirtMachine * self) {
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self->priv = BOXES_LIBVIRT_MACHINE_GET_PRIVATE (self);
#line 9505 "libvirt-machine.c"
}


static void boxes_libvirt_machine_finalize (GObject * obj) {
	BoxesLibvirtMachine * self;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, BOXES_TYPE_LIBVIRT_MACHINE, BoxesLibvirtMachine);
#line 6 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (self->priv->_domain);
#line 7 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (self->priv->_domain_config);
#line 8 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (self->priv->_connection);
#line 9 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (self->priv->_storage_volume);
#line 10 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_boxes_vm_creator_unref0 (self->priv->_vm_creator);
#line 29 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (self->properties);
#line 123 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (self->priv->stats_cancellable);
#line 126 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self->priv->stats = (_vala_BoxesLibvirtMachineMachineStat_array_free (self->priv->stats, self->priv->stats_length1), NULL);
#line 131 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (self->priv->system_virt_connection);
#line 133 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self->priv->saved_properties = (_vala_BoxesBoxConfigSavedProperty_array_free (self->priv->saved_properties, self->priv->saved_properties_length1), NULL);
#line 321 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self->cpu_stats = (g_free (self->cpu_stats), NULL);
#line 322 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self->io_stats = (g_free (self->io_stats), NULL);
#line 323 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	self->net_stats = (g_free (self->net_stats), NULL);
#line 559 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	G_OBJECT_CLASS (boxes_libvirt_machine_parent_class)->finalize (obj);
#line 9541 "libvirt-machine.c"
}


GType boxes_libvirt_machine_get_type (void) {
	static volatile gsize boxes_libvirt_machine_type_id__volatile = 0;
	if (g_once_init_enter (&boxes_libvirt_machine_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (BoxesLibvirtMachineClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) boxes_libvirt_machine_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (BoxesLibvirtMachine), 0, (GInstanceInitFunc) boxes_libvirt_machine_instance_init, NULL };
		GType boxes_libvirt_machine_type_id;
		boxes_libvirt_machine_type_id = g_type_register_static (BOXES_TYPE_MACHINE, "BoxesLibvirtMachine", &g_define_type_info, 0);
		g_once_init_leave (&boxes_libvirt_machine_type_id__volatile, boxes_libvirt_machine_type_id);
	}
	return boxes_libvirt_machine_type_id__volatile;
}


static void _vala_boxes_libvirt_machine_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) {
	BoxesLibvirtMachine * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, BOXES_TYPE_LIBVIRT_MACHINE, BoxesLibvirtMachine);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	switch (property_id) {
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_DOMAIN:
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_value_set_object (value, boxes_libvirt_machine_get_domain (self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_DOMAIN_CONFIG:
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_value_set_object (value, boxes_libvirt_machine_get_domain_config (self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_CONNECTION:
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_value_set_object (value, boxes_libvirt_machine_get_connection (self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_STORAGE_VOLUME:
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_value_set_object (value, boxes_libvirt_machine_get_storage_volume (self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_VM_CREATOR:
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_value_set_vm_creator (value, boxes_libvirt_machine_get_vm_creator (self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_IMPORTING:
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_value_set_boolean (value, boxes_libvirt_machine_get_importing (self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_SAVE_ON_QUIT:
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_value_set_boolean (value, boxes_libvirt_machine_get_save_on_quit (self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_SUSPEND_AT_EXIT:
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_value_set_boolean (value, boxes_machine_get_suspend_at_exit ((BoxesMachine*) self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_CAN_SAVE:
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_value_set_boolean (value, boxes_machine_get_can_save ((BoxesMachine*) self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_CAN_RESTART:
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_value_set_boolean (value, boxes_machine_get_can_restart ((BoxesMachine*) self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_CAN_CLONE:
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_value_set_boolean (value, boxes_machine_get_can_clone ((BoxesMachine*) self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_SHOULD_AUTOSAVE:
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_value_set_boolean (value, boxes_machine_get_should_autosave ((BoxesMachine*) self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_RUN_IN_BG:
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_value_set_boolean (value, boxes_libvirt_machine_get_run_in_bg (self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_IS_LOCAL:
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		g_value_set_boolean (value, boxes_machine_get_is_local ((BoxesMachine*) self));
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 9646 "libvirt-machine.c"
		default:
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 9652 "libvirt-machine.c"
	}
}


static void _vala_boxes_libvirt_machine_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec) {
	BoxesLibvirtMachine * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, BOXES_TYPE_LIBVIRT_MACHINE, BoxesLibvirtMachine);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
	switch (property_id) {
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_DOMAIN:
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_set_domain (self, g_value_get_object (value));
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_DOMAIN_CONFIG:
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_set_domain_config (self, g_value_get_object (value));
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_CONNECTION:
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_set_connection (self, g_value_get_object (value));
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_STORAGE_VOLUME:
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_set_storage_volume (self, g_value_get_object (value));
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_VM_CREATOR:
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_set_vm_creator (self, boxes_value_get_vm_creator (value));
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_SAVE_ON_QUIT:
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_set_save_on_quit (self, g_value_get_boolean (value));
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_RUN_IN_BG:
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_set_run_in_bg (self, g_value_get_boolean (value));
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 9704 "libvirt-machine.c"
		default:
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 9710 "libvirt-machine.c"
	}
}



