/* libvirt-machine.c generated by valac 0.20.0.2-fd7ed, 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 <clutter/clutter.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 <clutter-gtk/clutter-gtk.h>
#include <glib/gi18n-lib.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_UI_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_UI, BoxesUIClass))
#define BOXES_IS_UI(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_UI))
#define BOXES_IS_UI_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_UI))
#define BOXES_UI_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_UI, BoxesUIClass))

typedef struct _BoxesUI BoxesUI;
typedef struct _BoxesUIClass BoxesUIClass;
typedef struct _BoxesUIPrivate BoxesUIPrivate;

#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 TYPE_PROPERTY_CREATION_FLAG (property_creation_flag_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_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_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_LIBVIRT_MACHINE_TYPE_MACHINE_STAT (boxes_libvirt_machine_machine_stat_get_type ())
typedef struct _BoxesLibvirtMachineMachineStat BoxesLibvirtMachineMachineStat;
#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 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 _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))
#define _g_free0(var) (var = (g_free (var), NULL))
#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 _Block21Data Block21Data;
typedef struct _Block22Data Block22Data;
#define __vala_GVirDomainDiskStats_free0(var) ((var == NULL) ? NULL : (var = (_vala_GVirDomainDiskStats_free (var), NULL)))
typedef struct _BoxesLibvirtMachineUpdateIoStatData BoxesLibvirtMachineUpdateIoStatData;
typedef struct _Block23Data Block23Data;
typedef struct _Block24Data Block24Data;
#define __vala_GVirDomainInterfaceStats_free0(var) ((var == NULL) ? NULL : (var = (_vala_GVirDomainInterfaceStats_free (var), NULL)))
typedef struct _BoxesLibvirtMachineUpdateNetStatData BoxesLibvirtMachineUpdateNetStatData;
typedef struct _BoxesLibvirtMachineUpdateStatsData BoxesLibvirtMachineUpdateStatsData;
typedef struct _Block25Data Block25Data;
#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 _Block26Data Block26Data;
typedef struct _BoxesLibvirtMachineTakeScreenshotData BoxesLibvirtMachineTakeScreenshotData;
typedef struct _Block27Data Block27Data;
typedef struct _BoxesLibvirtMachineSaveRealData BoxesLibvirtMachineSaveRealData;
typedef struct _BoxesLibvirtMachineSuspendData BoxesLibvirtMachineSuspendData;

#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_CLUTTER_WIDGET (boxes_clutter_widget_get_type ())
#define BOXES_CLUTTER_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_CLUTTER_WIDGET, BoxesClutterWidget))
#define BOXES_CLUTTER_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_CLUTTER_WIDGET, BoxesClutterWidgetClass))
#define BOXES_IS_CLUTTER_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_CLUTTER_WIDGET))
#define BOXES_IS_CLUTTER_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_CLUTTER_WIDGET))
#define BOXES_CLUTTER_WIDGET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_CLUTTER_WIDGET, BoxesClutterWidgetClass))

typedef struct _BoxesClutterWidget BoxesClutterWidget;
typedef struct _BoxesClutterWidgetClass BoxesClutterWidgetClass;

#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_NOTIFICATIONBAR (boxes_notificationbar_get_type ())
#define BOXES_NOTIFICATIONBAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_NOTIFICATIONBAR, BoxesNotificationbar))
#define BOXES_NOTIFICATIONBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_NOTIFICATIONBAR, BoxesNotificationbarClass))
#define BOXES_IS_NOTIFICATIONBAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_NOTIFICATIONBAR))
#define BOXES_IS_NOTIFICATIONBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_NOTIFICATIONBAR))
#define BOXES_NOTIFICATIONBAR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_NOTIFICATIONBAR, BoxesNotificationbarClass))

typedef struct _BoxesNotificationbar BoxesNotificationbar;
typedef struct _BoxesNotificationbarClass BoxesNotificationbarClass;

#define BOXES_TYPE_REVEALER (boxes_revealer_get_type ())
#define BOXES_REVEALER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_REVEALER, BoxesRevealer))
#define BOXES_REVEALER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_REVEALER, BoxesRevealerClass))
#define BOXES_IS_REVEALER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_REVEALER))
#define BOXES_IS_REVEALER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_REVEALER))
#define BOXES_REVEALER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_REVEALER, BoxesRevealerClass))

typedef struct _BoxesRevealer BoxesRevealer;
typedef struct _BoxesRevealerClass BoxesRevealerClass;

#define BOXES_TYPE_SIDEBAR (boxes_sidebar_get_type ())
#define BOXES_SIDEBAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_SIDEBAR, BoxesSidebar))
#define BOXES_SIDEBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_SIDEBAR, BoxesSidebarClass))
#define BOXES_IS_SIDEBAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_SIDEBAR))
#define BOXES_IS_SIDEBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_SIDEBAR))
#define BOXES_SIDEBAR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_SIDEBAR, BoxesSidebarClass))

typedef struct _BoxesSidebar BoxesSidebar;
typedef struct _BoxesSidebarClass BoxesSidebarClass;

#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_WIZARD (boxes_wizard_get_type ())
#define BOXES_WIZARD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_WIZARD, BoxesWizard))
#define BOXES_WIZARD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_WIZARD, BoxesWizardClass))
#define BOXES_IS_WIZARD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_WIZARD))
#define BOXES_IS_WIZARD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_WIZARD))
#define BOXES_WIZARD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_WIZARD, BoxesWizardClass))

typedef struct _BoxesWizard BoxesWizard;
typedef struct _BoxesWizardClass BoxesWizardClass;

#define BOXES_TYPE_PROPERTIES (boxes_properties_get_type ())
#define BOXES_PROPERTIES(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_PROPERTIES, BoxesProperties))
#define BOXES_PROPERTIES_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_PROPERTIES, BoxesPropertiesClass))
#define BOXES_IS_PROPERTIES(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_PROPERTIES))
#define BOXES_IS_PROPERTIES_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_PROPERTIES))
#define BOXES_PROPERTIES_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_PROPERTIES, BoxesPropertiesClass))

typedef struct _BoxesProperties BoxesProperties;
typedef struct _BoxesPropertiesClass BoxesPropertiesClass;

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

typedef struct _BoxesDisplayPage BoxesDisplayPage;
typedef struct _BoxesDisplayPageClass BoxesDisplayPageClass;

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

typedef struct _BoxesEmptyBoxes BoxesEmptyBoxes;
typedef struct _BoxesEmptyBoxesClass BoxesEmptyBoxesClass;

#define BOXES_TYPE_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 BOXES_TYPE_COLLECTION_FILTER (boxes_collection_filter_get_type ())
#define BOXES_COLLECTION_FILTER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_COLLECTION_FILTER, BoxesCollectionFilter))
#define BOXES_COLLECTION_FILTER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_COLLECTION_FILTER, BoxesCollectionFilterClass))
#define BOXES_IS_COLLECTION_FILTER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_COLLECTION_FILTER))
#define BOXES_IS_COLLECTION_FILTER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_COLLECTION_FILTER))
#define BOXES_COLLECTION_FILTER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_COLLECTION_FILTER, BoxesCollectionFilterClass))

typedef struct _BoxesCollectionFilter BoxesCollectionFilter;
typedef struct _BoxesCollectionFilterClass BoxesCollectionFilterClass;

#define BOXES_TYPE_COLLECTION_VIEW (boxes_collection_view_get_type ())
#define BOXES_COLLECTION_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_COLLECTION_VIEW, BoxesCollectionView))
#define BOXES_COLLECTION_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_COLLECTION_VIEW, BoxesCollectionViewClass))
#define BOXES_IS_COLLECTION_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_COLLECTION_VIEW))
#define BOXES_IS_COLLECTION_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_COLLECTION_VIEW))
#define BOXES_COLLECTION_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_COLLECTION_VIEW, BoxesCollectionViewClass))

typedef struct _BoxesCollectionView BoxesCollectionView;
typedef struct _BoxesCollectionViewClass BoxesCollectionViewClass;
typedef struct _BoxesLibvirtMachineStartData BoxesLibvirtMachineStartData;

struct _BoxesUI {
	GObject parent_instance;
	BoxesUIPrivate * priv;
};

struct _BoxesUIClass {
	GObjectClass parent_class;
	void (*ui_state_changed) (BoxesUI* self);
	ClutterActor* (*get_actor) (BoxesUI* self);
};

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

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

typedef enum  {
	BOXES_PROPERTIES_PAGE_LOGIN,
	BOXES_PROPERTIES_PAGE_SYSTEM,
	BOXES_PROPERTIES_PAGE_DISPLAY,
	BOXES_PROPERTIES_PAGE_DEVICES,
	BOXES_PROPERTIES_PAGE_LAST
} BoxesPropertiesPage;

typedef enum  {
	PROPERTY_CREATION_FLAG_NONE = 0,
	PROPERTY_CREATION_FLAG_NO_USB = 1 << 0
} PropertyCreationFlag;

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

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;
	gboolean suspend_at_exit;
	gboolean deleted;
};

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, PropertyCreationFlag* flags);
	void (*connect_display) (BoxesMachine* self, BoxesMachineConnectFlags flags, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*connect_display_finish) (BoxesMachine* self, GAsyncResult* _res_, GError** error);
	void (*disconnect_display) (BoxesMachine* self);
	void (*delete) (BoxesMachine* self, gboolean by_user);
};

struct _BoxesLibvirtMachine {
	BoxesMachine parent_instance;
	BoxesLibvirtMachinePrivate * priv;
	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;
	BoxesLibvirtMachineProperties* properties;
	guint shutdown_timeout;
	guint stats_update_timeout;
	GCancellable* stats_cancellable;
	BoxesLibvirtMachineMachineStat* stats;
	gint stats_length1;
	gint _stats_size_;
	gboolean force_stopped;
};

struct _BoxesLibvirtMachineConnectDisplayData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GSimpleAsyncResult* _async_result;
	BoxesLibvirtMachine* self;
	BoxesMachineConnectFlags flags;
	BoxesMachineConnectFlags _tmp0_;
	GCancellable* _tmp1_;
	GCancellable* _tmp2_;
	GCancellable* _tmp3_;
	GCancellable* _tmp4_;
	gboolean _tmp5_;
	GCancellable* _tmp6_;
	GCancellable* _tmp7_;
	gboolean _tmp8_;
	gboolean _tmp9_;
	BoxesDisplay* _tmp10_;
	BoxesDisplay* _tmp11_;
	BoxesDisplay* _tmp12_;
	BoxesDisplay* _tmp13_;
	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 _Block21Data {
	int _ref_count_;
	BoxesLibvirtMachine * self;
	BoxesLibvirtMachineMachineStat* stat;
	gpointer _async_data_;
};

struct _Block22Data {
	int _ref_count_;
	Block21Data * _data21_;
	GVirDomainDisk* disk;
};

struct _BoxesLibvirtMachineUpdateIoStatData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GSimpleAsyncResult* _async_result;
	BoxesLibvirtMachine* self;
	GVirDomainInfo* info;
	BoxesLibvirtMachineMachineStat* stat;
	Block21Data* _data21_;
	BoxesLibvirtMachineMachineStat* _tmp0_;
	GVirDomainInfo* _tmp1_;
	GVirDomainState _tmp2_;
	Block22Data* _data22_;
	GVirDomainDisk* _tmp3_;
	GVirDomainDisk* _tmp4_;
	BoxesLibvirtMachineMachineStat* _tmp5_;
	gint _tmp5__length1;
	BoxesLibvirtMachineMachineStat _tmp6_;
	BoxesLibvirtMachineMachineStat _tmp7_;
	BoxesLibvirtMachineMachineStat prev;
	BoxesLibvirtMachineMachineStat _tmp8_;
	GVirDomainDiskStats* _tmp9_;
	BoxesLibvirtMachineMachineStat* _tmp10_;
	BoxesLibvirtMachineMachineStat* _tmp11_;
	GVirDomainDiskStats* _tmp12_;
	gint64 _tmp13_;
	BoxesLibvirtMachineMachineStat _tmp14_;
	GVirDomainDiskStats* _tmp15_;
	gint64 _tmp16_;
	BoxesLibvirtMachineMachineStat* _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 _Block23Data {
	int _ref_count_;
	BoxesLibvirtMachine * self;
	BoxesLibvirtMachineMachineStat* stat;
	gpointer _async_data_;
};

struct _Block24Data {
	int _ref_count_;
	Block23Data * _data23_;
	GVirDomainInterface* net;
};

struct _BoxesLibvirtMachineUpdateNetStatData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GSimpleAsyncResult* _async_result;
	BoxesLibvirtMachine* self;
	GVirDomainInfo* info;
	BoxesLibvirtMachineMachineStat* stat;
	Block23Data* _data23_;
	BoxesLibvirtMachineMachineStat* _tmp0_;
	GVirDomainInfo* _tmp1_;
	GVirDomainState _tmp2_;
	Block24Data* _data24_;
	GVirDomainInterface* _tmp3_;
	GVirDomainInterface* _tmp4_;
	BoxesLibvirtMachineMachineStat* _tmp5_;
	gint _tmp5__length1;
	BoxesLibvirtMachineMachineStat _tmp6_;
	BoxesLibvirtMachineMachineStat _tmp7_;
	BoxesLibvirtMachineMachineStat prev;
	BoxesLibvirtMachineMachineStat _tmp8_;
	GVirDomainInterfaceStats* _tmp9_;
	BoxesLibvirtMachineMachineStat* _tmp10_;
	BoxesLibvirtMachineMachineStat* _tmp11_;
	GVirDomainInterfaceStats* _tmp12_;
	gint64 _tmp13_;
	BoxesLibvirtMachineMachineStat _tmp14_;
	GVirDomainInterfaceStats* _tmp15_;
	gint64 _tmp16_;
	BoxesLibvirtMachineMachineStat* _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_;
	GSimpleAsyncResult* _async_result;
	BoxesLibvirtMachine* self;
	gint64 _tmp0_;
	gint64 now;
	gint64 _tmp1_;
	BoxesLibvirtMachineMachineStat _tmp2_;
	BoxesLibvirtMachineMachineStat stat;
	GVirDomain* _tmp3_;
	GCancellable* _tmp4_;
	GVirDomainInfo* _tmp5_;
	GVirDomainInfo* info;
	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 _Block25Data {
	int _ref_count_;
	BoxesLibvirtMachine * self;
	gboolean stats_updating;
};

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

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

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

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

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

struct _BoxesApp {
	BoxesUI parent_instance;
	BoxesAppPrivate * priv;
	GtkApplicationWindow* window;
	GtkNotebook* notebook;
	BoxesClutterWidget* embed;
	ClutterStage* stage;
	ClutterBinLayout* stage_bin;
	ClutterActor* overlay_bin_actor;
	ClutterBinLayout* overlay_bin;
	BoxesCollectionItem* current_item;
	BoxesSearchbar* searchbar;
	BoxesTopbar* topbar;
	BoxesNotificationbar* notificationbar;
	BoxesRevealer* sidebar_revealer;
	BoxesRevealer* searchbar_revealer;
	BoxesSidebar* sidebar;
	BoxesSelectionbar* selectionbar;
	guint duration;
	GSettings* settings;
	BoxesWizard* wizard;
	BoxesProperties* properties;
	BoxesDisplayPage* display_page;
	BoxesEmptyBoxes* empty_boxes;
	BoxesCollection* collection;
	BoxesCollectionFilter* filter;
	BoxesCollectionView* view;
};

struct _BoxesAppClass {
	BoxesUIClass parent_class;
};

struct _BoxesLibvirtMachineStartData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GSimpleAsyncResult* _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 _tmp14_;
	gboolean restore;
	gboolean _tmp15_;
	const gchar* _tmp16_;
	const gchar* _tmp17_;
	const gchar* _tmp18_;
	gchar* _tmp19_;
	gchar* _tmp20_;
	const gchar* _tmp21_;
	const gchar* _tmp22_;
	const gchar* _tmp23_;
	gchar* _tmp24_;
	gchar* _tmp25_;
	GVirDomain* _tmp26_;
	BoxesMachineConnectFlags _tmp27_;
	GVirDomainStartFlags _tmp28_;
	GCancellable* _tmp29_;
	GError* _error_;
	const gchar* _tmp30_;
	const gchar* _tmp31_;
	GError* _vala1__error_;
	gboolean _tmp32_;
	GError* _tmp33_;
	GError* _tmp34_;
	GError* _tmp35_;
	GError * _inner_error_;
};


static gpointer boxes_libvirt_machine_parent_class = NULL;
extern BoxesApp* boxes_app_app;

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 property_creation_flag_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;
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;
GType boxes_libvirt_machine_properties_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))
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_SAVE_ON_QUIT
};
static void _vala_BoxesLibvirtMachineMachineStat_array_free (BoxesLibvirtMachineMachineStat* 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_);
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);
GCancellable* boxes_machine_get_connecting_cancellable (BoxesMachine* self);
static void boxes_libvirt_machine_connect_display_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_);
gboolean boxes_libvirt_machine_update_display (BoxesLibvirtMachine* self, GError** error);
GType boxes_display_get_type (void) G_GNUC_CONST;
BoxesDisplay* boxes_machine_get_display (BoxesMachine* self);
void boxes_display_connect_it (BoxesDisplay* self, 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);
GVirDomain* boxes_libvirt_machine_get_domain (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);
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);
BoxesLibvirtMachine* boxes_libvirt_machine_new (BoxesCollectionSource* source, GVirConnection* connection, GVirDomain* domain, GError** error);
BoxesLibvirtMachine* boxes_libvirt_machine_construct (GType object_type, BoxesCollectionSource* source, GVirConnection* connection, GVirDomain* domain, GError** error);
BoxesMachine* boxes_machine_construct (GType object_type, BoxesCollectionSource* source, const gchar* name);
void boxes_machine_create_display_config (BoxesMachine* self, 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 __lambda140_ (BoxesLibvirtMachine* self);
static void ___lambda140__gvir_domain_started (GVirDomain* _sender, gpointer self);
static void __lambda141_ (BoxesLibvirtMachine* self);
static void ___lambda141__gvir_domain_suspended (GVirDomain* _sender, gpointer self);
static void __lambda142_ (BoxesLibvirtMachine* self);
static void ___lambda142__gvir_domain_resumed (GVirDomain* _sender, gpointer self);
static void __lambda143_ (BoxesLibvirtMachine* self);
static void ___lambda143__gvir_domain_stopped (GVirDomain* _sender, gpointer self);
static void __lambda144_ (BoxesLibvirtMachine* self);
static void ___lambda144__gvir_domain_pmsuspended (GVirDomain* _sender, gpointer self);
static void __lambda145_ (BoxesLibvirtMachine* self);
BoxesMachineMachineState boxes_machine_get_state (BoxesMachine* self);
static void ___lambda145__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);
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 Block21Data* block21_data_ref (Block21Data* _data21_);
static void block21_data_unref (void * _userdata_);
static Block22Data* block22_data_ref (Block22Data* _data22_);
static void block22_data_unref (void * _userdata_);
GVirDomainDisk* boxes_libvirt_machine_get_domain_disk (BoxesLibvirtMachine* self, GError** error);
static void ___lambda137_ (Block22Data* _data22_, GError** error);
static void _vala_GVirDomainDiskStats_free (GVirDomainDiskStats* self);
static void ____lambda137__boxes_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_);
const gchar* boxes_collection_item_get_name (BoxesCollectionItem* self);
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 Block23Data* block23_data_ref (Block23Data* _data23_);
static void block23_data_unref (void * _userdata_);
static Block24Data* block24_data_ref (Block24Data* _data24_);
static void block24_data_unref (void * _userdata_);
static GVirDomainInterface* boxes_libvirt_machine_get_domain_network_interface (BoxesLibvirtMachine* self, GError** error);
static void ___lambda138_ (Block24Data* _data24_, GError** error);
static void _vala_GVirDomainInterfaceStats_free (GVirDomainInterfaceStats* self);
static void ____lambda138__boxes_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_add2 (BoxesLibvirtMachineMachineStat** array, int* length, int* size, const BoxesLibvirtMachineMachineStat* value);
static void _vala_array_add3 (gdouble** array, int* length, int* size, gdouble 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 Block25Data* block25_data_ref (Block25Data* _data25_);
static void block25_data_unref (void * _userdata_);
static gboolean ___lambda136_ (Block25Data* _data25_);
static void __lambda139_ (Block25Data* _data25_);
static void ___lambda139__gasync_ready_callback (GObject* source_object, GAsyncResult* res, gpointer self);
static gboolean ____lambda136__gsource_func (gpointer self);
static GList* boxes_libvirt_machine_real_get_properties (BoxesMachine* base, BoxesPropertiesPage page, PropertyCreationFlag* flags);
GList* boxes_iproperties_provider_get_properties (BoxesIPropertiesProvider* self, BoxesPropertiesPage page, PropertyCreationFlag* flags);
GList* boxes_display_get_properties (BoxesDisplay* self, BoxesPropertiesPage page, PropertyCreationFlag* flags);
static void _g_object_unref0_ (gpointer var);
static 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 (BoxesBoxConfig* config, const gchar* host, gint port, gint tls_port);
BoxesSpiceDisplay* boxes_spice_display_construct (GType object_type, BoxesBoxConfig* config, const gchar* host, gint port, gint tls_port);
GType boxes_spice_display_get_type (void) G_GNUC_CONST;
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 Block26Data* block26_data_ref (Block26Data* _data26_);
static void block26_data_unref (void * _userdata_);
static void boxes_libvirt_machine_take_screenshot_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_);
static void __lambda146_ (Block26Data* _data26_, GError** error);
static void ___lambda146__boxes_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 Block27Data* block27_data_ref (Block27Data* _data27_);
static void block27_data_unref (void * _userdata_);
static void ___lambda147_ (Block27Data* _data27_, GError** error);
GVirStorageVol* boxes_libvirt_machine_get_storage_volume (BoxesLibvirtMachine* self);
static void ____lambda147__boxes_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, gboolean confirm);
GType boxes_app_get_type (void) G_GNUC_CONST;
GType boxes_clutter_widget_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_notificationbar_get_type (void) G_GNUC_CONST;
GType boxes_revealer_get_type (void) G_GNUC_CONST;
GType boxes_sidebar_get_type (void) G_GNUC_CONST;
GType boxes_selectionbar_get_type (void) G_GNUC_CONST;
GType boxes_wizard_get_type (void) G_GNUC_CONST;
GType boxes_properties_get_type (void) G_GNUC_CONST;
GType boxes_display_page_get_type (void) G_GNUC_CONST;
GType boxes_empty_boxes_get_type (void) G_GNUC_CONST;
GType boxes_collection_get_type (void) G_GNUC_CONST;
GType boxes_collection_filter_get_type (void) G_GNUC_CONST;
GType boxes_collection_view_get_type (void) G_GNUC_CONST;
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_);
void boxes_machine_set_status (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);
void boxes_libvirt_machine_set_save_on_quit (BoxesLibvirtMachine* self, gboolean value);
static GObject * boxes_libvirt_machine_constructor (GType type, guint n_construct_properties, GObjectConstructParam * construct_properties);
void boxes_machine_set_can_save (BoxesMachine* self, gboolean value);
static GVirDomainDiskStats* _vala_GVirDomainDiskStats_copy (GVirDomainDiskStats* self);
static GVirDomainInterfaceStats* _vala_GVirDomainInterfaceStats_copy (GVirDomainInterfaceStats* self);
static void boxes_libvirt_machine_finalize (GObject* obj);
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 void _vala_BoxesLibvirtMachineMachineStat_array_free (BoxesLibvirtMachineMachineStat* array, gint array_length) {
#line 61 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (array != NULL) {
#line 1040 "libvirt-machine.c"
		int i;
#line 61 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		for (i = 0; i < array_length; i = i + 1) {
#line 61 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			boxes_libvirt_machine_machine_stat_destroy (&array[i]);
#line 1046 "libvirt-machine.c"
		}
	}
#line 61 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_free (array);
#line 1051 "libvirt-machine.c"
}


static void boxes_libvirt_machine_real_disconnect_display (BoxesMachine* base) {
	BoxesLibvirtMachine * self;
#line 19 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	self = (BoxesLibvirtMachine*) base;
#line 20 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	((BoxesMachine*) self)->stay_on_display = FALSE;
#line 22 "/extra-data/checkout/gnome/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 1063 "libvirt-machine.c"
}


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


static gpointer _g_object_ref0 (gpointer self) {
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return self ? g_object_ref (self) : NULL;
#line 1081 "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 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	self = (BoxesLibvirtMachine*) base;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_slice_new0 (BoxesLibvirtMachineConnectDisplayData);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_async_result = g_simple_async_result_new (G_OBJECT (self), _callback_, _user_data_, boxes_libvirt_machine_real_connect_display);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_simple_async_result_set_op_res_gpointer (_data_->_async_result, _data_, boxes_libvirt_machine_real_connect_display_data_free);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->self = _tmp0_;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = flags;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->flags = _tmp1_;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_real_connect_display_co (_data_);
#line 1108 "libvirt-machine.c"
}


static void boxes_libvirt_machine_real_connect_display_finish (BoxesMachine* base, GAsyncResult* _res_, GError** error) {
	BoxesLibvirtMachineConnectDisplayData* _data_;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (g_simple_async_result_propagate_error (G_SIMPLE_ASYNC_RESULT (_res_), error)) {
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 1118 "libvirt-machine.c"
	}
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_simple_async_result_get_op_res_gpointer (G_SIMPLE_ASYNC_RESULT (_res_));
#line 1122 "libvirt-machine.c"
}


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


static gboolean boxes_libvirt_machine_real_connect_display_co (BoxesLibvirtMachineConnectDisplayData* _data_) {
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	switch (_data_->_state_) {
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case 0:
#line 1145 "libvirt-machine.c"
		goto _state_0;
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case 1:
#line 1149 "libvirt-machine.c"
		goto _state_1;
		default:
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_assert_not_reached ();
#line 1154 "libvirt-machine.c"
	}
	_state_0:
#line 26 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp0_ = _data_->flags;
#line 26 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp1_ = boxes_machine_get_connecting_cancellable ((BoxesMachine*) _data_->self);
#line 26 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp2_ = _data_->_tmp1_;
#line 26 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_state_ = 1;
#line 26 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_start (_data_->self, _data_->_tmp0_, _data_->_tmp2_, boxes_libvirt_machine_connect_display_ready, _data_);
#line 26 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return FALSE;
#line 1169 "libvirt-machine.c"
	_state_1:
#line 26 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_start_finish (_data_->self, _data_->_res_, &_data_->_inner_error_);
#line 26 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_inner_error_ != NULL) {
#line 26 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_simple_async_result_set_from_error (_data_->_async_result, _data_->_inner_error_);
#line 26 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_error_free (_data_->_inner_error_);
#line 26 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_state_ == 0) {
#line 26 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_simple_async_result_complete_in_idle (_data_->_async_result);
#line 1183 "libvirt-machine.c"
		} else {
#line 26 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_simple_async_result_complete (_data_->_async_result);
#line 1187 "libvirt-machine.c"
		}
#line 26 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 26 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 1193 "libvirt-machine.c"
	}
#line 27 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp3_ = boxes_machine_get_connecting_cancellable ((BoxesMachine*) _data_->self);
#line 27 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp4_ = _data_->_tmp3_;
#line 27 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp5_ = FALSE;
#line 27 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp5_ = g_cancellable_is_cancelled (_data_->_tmp4_);
#line 27 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_tmp5_) {
#line 28 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp6_ = boxes_machine_get_connecting_cancellable ((BoxesMachine*) _data_->self);
#line 28 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp7_ = _data_->_tmp6_;
#line 28 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_cancellable_reset (_data_->_tmp7_);
#line 30 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_state_ == 0) {
#line 30 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_simple_async_result_complete_in_idle (_data_->_async_result);
#line 1215 "libvirt-machine.c"
		} else {
#line 30 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_simple_async_result_complete (_data_->_async_result);
#line 1219 "libvirt-machine.c"
		}
#line 30 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 30 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 1225 "libvirt-machine.c"
	}
#line 33 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp8_ = FALSE;
#line 33 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp8_ = boxes_libvirt_machine_update_display (_data_->self, &_data_->_inner_error_);
#line 33 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp9_ = _data_->_tmp8_;
#line 33 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_inner_error_ != NULL) {
#line 33 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_simple_async_result_set_from_error (_data_->_async_result, _data_->_inner_error_);
#line 33 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_error_free (_data_->_inner_error_);
#line 33 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_state_ == 0) {
#line 33 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_simple_async_result_complete_in_idle (_data_->_async_result);
#line 1243 "libvirt-machine.c"
		} else {
#line 33 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_simple_async_result_complete (_data_->_async_result);
#line 1247 "libvirt-machine.c"
		}
#line 33 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 33 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 1253 "libvirt-machine.c"
	}
#line 33 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_tmp9_) {
#line 34 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp10_ = boxes_machine_get_display ((BoxesMachine*) _data_->self);
#line 34 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp11_ = _data_->_tmp10_;
#line 34 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_display_connect_it (_data_->_tmp11_, &_data_->_inner_error_);
#line 34 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_inner_error_ != NULL) {
#line 34 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_simple_async_result_set_from_error (_data_->_async_result, _data_->_inner_error_);
#line 34 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_error_free (_data_->_inner_error_);
#line 34 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			if (_data_->_state_ == 0) {
#line 34 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				g_simple_async_result_complete_in_idle (_data_->_async_result);
#line 1273 "libvirt-machine.c"
			} else {
#line 34 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				g_simple_async_result_complete (_data_->_async_result);
#line 1277 "libvirt-machine.c"
			}
#line 34 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_object_unref (_data_->_async_result);
#line 34 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			return FALSE;
#line 1283 "libvirt-machine.c"
		}
	} else {
#line 36 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_machine_show_display ((BoxesMachine*) _data_->self);
#line 37 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp12_ = boxes_machine_get_display ((BoxesMachine*) _data_->self);
#line 37 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp13_ = _data_->_tmp12_;
#line 37 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_display_set_enable_audio (_data_->_tmp13_, TRUE);
#line 1294 "libvirt-machine.c"
	}
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_state_ == 0) {
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_simple_async_result_complete_in_idle (_data_->_async_result);
#line 1300 "libvirt-machine.c"
	} else {
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_simple_async_result_complete (_data_->_async_result);
#line 1304 "libvirt-machine.c"
	}
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_object_unref (_data_->_async_result);
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return FALSE;
#line 1310 "libvirt-machine.c"
}


void boxes_libvirt_machine_update_domain_config (BoxesLibvirtMachine* self) {
	GError * _inner_error_ = NULL;
#line 71 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (self != NULL);
#line 1318 "libvirt-machine.c"
	{
		GVirDomain* _tmp0_;
		GVirConfigDomain* _tmp1_ = NULL;
		GVirConfigDomain* _tmp2_;
		GVirConfigDomain* _tmp3_;
		GVirConnection* _tmp4_;
		GVirDomain* _tmp5_;
		GVirStorageVol* _tmp6_ = NULL;
		GVirStorageVol* _tmp7_;
#line 73 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp0_ = self->priv->_domain;
#line 73 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp1_ = gvir_domain_get_config (_tmp0_, (guint) GVIR_DOMAIN_XML_NONE, &_inner_error_);
#line 73 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp2_ = _tmp1_;
#line 73 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_inner_error_ != NULL) {
#line 1336 "libvirt-machine.c"
			goto __catch12_g_error;
		}
#line 73 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp3_ = _tmp2_;
#line 73 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_set_domain_config (self, _tmp3_);
#line 73 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (_tmp3_);
#line 74 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp4_ = self->priv->_connection;
#line 74 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp5_ = self->priv->_domain;
#line 74 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp6_ = boxes_get_storage_volume (_tmp4_, _tmp5_);
#line 74 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp7_ = _tmp6_;
#line 74 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_set_storage_volume (self, _tmp7_);
#line 74 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (_tmp7_);
#line 1357 "libvirt-machine.c"
	}
	goto __finally12;
	__catch12_g_error:
	{
		GError* _error_ = NULL;
		GVirDomain* _tmp8_;
		const gchar* _tmp9_ = NULL;
		GError* _tmp10_;
		const gchar* _tmp11_;
#line 72 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_error_ = _inner_error_;
#line 72 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_inner_error_ = NULL;
#line 76 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp8_ = self->priv->_domain;
#line 76 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp9_ = gvir_domain_get_name (_tmp8_);
#line 76 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp10_ = _error_;
#line 76 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp11_ = _tmp10_->message;
#line 76 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_critical ("libvirt-machine.vala:76: Failed to fetch configuration for domain '%s'" \
": %s", _tmp9_, _tmp11_);
#line 72 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_error_free0 (_error_);
#line 1383 "libvirt-machine.c"
	}
	__finally12:
#line 72 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_inner_error_ != NULL) {
#line 72 "/extra-data/checkout/gnome/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 72 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_clear_error (&_inner_error_);
#line 72 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 1394 "libvirt-machine.c"
	}
}


static void boxes_libvirt_machine_reconnect_display (BoxesLibvirtMachine* self) {
	BoxesDisplay* _tmp0_;
	BoxesDisplay* _tmp1_;
#line 80 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (self != NULL);
#line 82 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = boxes_machine_get_display ((BoxesMachine*) self);
#line 82 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _tmp0_;
#line 82 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp1_ == NULL) {
#line 83 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 1412 "libvirt-machine.c"
	}
#line 85 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_machine_disconnect_display ((BoxesMachine*) self);
#line 86 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_machine_connect_display ((BoxesMachine*) self, BOXES_MACHINE_CONNECT_FLAGS_NONE, NULL, NULL);
#line 1418 "libvirt-machine.c"
}


static void _vala_GVirDomainInfo_free (GVirDomainInfo* self) {
#line 103 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_boxed_free (gvir_domain_info_get_type (), self);
#line 1425 "libvirt-machine.c"
}


static void __lambda140_ (BoxesLibvirtMachine* self) {
#line 135 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_machine_set_state ((BoxesMachine*) self, BOXES_MACHINE_MACHINE_STATE_RUNNING);
#line 1432 "libvirt-machine.c"
}


static void ___lambda140__gvir_domain_started (GVirDomain* _sender, gpointer self) {
#line 135 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	__lambda140_ (self);
#line 1439 "libvirt-machine.c"
}


static void __lambda141_ (BoxesLibvirtMachine* self) {
#line 136 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_machine_set_state ((BoxesMachine*) self, BOXES_MACHINE_MACHINE_STATE_PAUSED);
#line 1446 "libvirt-machine.c"
}


static void ___lambda141__gvir_domain_suspended (GVirDomain* _sender, gpointer self) {
#line 136 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	__lambda141_ (self);
#line 1453 "libvirt-machine.c"
}


static void __lambda142_ (BoxesLibvirtMachine* self) {
#line 137 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_machine_set_state ((BoxesMachine*) self, BOXES_MACHINE_MACHINE_STATE_RUNNING);
#line 1460 "libvirt-machine.c"
}


static void ___lambda142__gvir_domain_resumed (GVirDomain* _sender, gpointer self) {
#line 137 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	__lambda142_ (self);
#line 1467 "libvirt-machine.c"
}


static void __lambda143_ (BoxesLibvirtMachine* self) {
	GVirDomain* _tmp0_;
	GSignalInvocationHint* _tmp1_ = NULL;
	GQuark _tmp2_;
	GQuark _tmp3_ = 0U;
#line 139 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = self->priv->_domain;
#line 139 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = g_signal_get_invocation_hint (_tmp0_);
#line 139 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = (*_tmp1_).detail;
#line 139 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = g_quark_from_string ("saved");
#line 139 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp2_ == _tmp3_) {
#line 140 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_machine_set_state ((BoxesMachine*) self, BOXES_MACHINE_MACHINE_STATE_SAVED);
#line 1488 "libvirt-machine.c"
	} else {
		gboolean _tmp4_;
#line 141 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp4_ = self->priv->force_stopped;
#line 141 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_tmp4_) {
#line 142 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			self->priv->force_stopped = FALSE;
#line 143 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			boxes_machine_set_state ((BoxesMachine*) self, BOXES_MACHINE_MACHINE_STATE_FORCE_STOPPED);
#line 1499 "libvirt-machine.c"
		} else {
#line 145 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			boxes_machine_set_state ((BoxesMachine*) self, BOXES_MACHINE_MACHINE_STATE_STOPPED);
#line 1503 "libvirt-machine.c"
		}
	}
}


static void ___lambda143__gvir_domain_stopped (GVirDomain* _sender, gpointer self) {
#line 138 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	__lambda143_ (self);
#line 1512 "libvirt-machine.c"
}


static void __lambda144_ (BoxesLibvirtMachine* self) {
#line 148 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_machine_set_state ((BoxesMachine*) self, BOXES_MACHINE_MACHINE_STATE_SLEEPING);
#line 1519 "libvirt-machine.c"
}


static void ___lambda144__gvir_domain_pmsuspended (GVirDomain* _sender, gpointer self) {
#line 147 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	__lambda144_ (self);
#line 1526 "libvirt-machine.c"
}


static void __lambda145_ (BoxesLibvirtMachine* self) {
	BoxesMachineMachineState _tmp0_;
	BoxesMachineMachineState _tmp1_;
#line 151 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = boxes_machine_get_state ((BoxesMachine*) self);
#line 151 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _tmp0_;
#line 151 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp1_ == BOXES_MACHINE_MACHINE_STATE_RUNNING) {
#line 152 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_reconnect_display (self);
#line 153 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_set_stats_enable (self, TRUE);
#line 1543 "libvirt-machine.c"
	} else {
#line 155 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_set_stats_enable (self, FALSE);
#line 1547 "libvirt-machine.c"
	}
}


static void ___lambda145__g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self) {
#line 150 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	__lambda145_ (self);
#line 1555 "libvirt-machine.c"
}


static void _boxes_libvirt_machine_update_domain_config_gvir_domain_updated (GVirDomain* _sender, gpointer self) {
#line 159 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_update_domain_config (self);
#line 1562 "libvirt-machine.c"
}


BoxesLibvirtMachine* boxes_libvirt_machine_construct (GType object_type, BoxesCollectionSource* source, GVirConnection* connection, GVirDomain* domain, GError** error) {
	BoxesLibvirtMachine * self = NULL;
	GVirDomain* _tmp0_;
	GVirConfigDomain* _tmp1_ = NULL;
	GVirConfigDomain* config;
	GVirConfigDomain* _tmp2_;
	const gchar* _tmp3_ = NULL;
	gchar* _tmp4_;
	gchar* _tmp5_;
	const gchar* _tmp6_;
	const gchar* _tmp10_;
	gchar* _tmp11_;
	gchar* item_name;
	BoxesCollectionSource* _tmp12_;
	const gchar* _tmp13_;
	GVirDomain* _tmp14_;
	const gchar* _tmp15_ = NULL;
	gchar* _tmp16_;
	gchar* _tmp17_;
	GVirDomain* _tmp18_;
	const gchar* _tmp19_ = NULL;
	GVirConnection* _tmp20_;
	GVirDomain* _tmp21_;
	BoxesLibvirtMachineProperties* _tmp22_;
	GVirDomain* _tmp32_;
	GVirDomain* _tmp33_;
	GVirDomain* _tmp34_;
	GVirDomain* _tmp35_;
	GVirDomain* _tmp36_;
	GVirDomain* _tmp37_;
	BoxesMachineMachineState _tmp38_;
	BoxesMachineMachineState _tmp39_;
	GError * _inner_error_ = NULL;
#line 89 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_return_val_if_fail (source != NULL, NULL);
#line 89 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_return_val_if_fail (connection != NULL, NULL);
#line 89 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_return_val_if_fail (domain != NULL, NULL);
#line 92 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = domain;
#line 92 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = gvir_domain_get_config (_tmp0_, (guint) GVIR_DOMAIN_XML_INACTIVE, &_inner_error_);
#line 92 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	config = _tmp1_;
#line 92 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_inner_error_ != NULL) {
#line 92 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_propagate_error (error, _inner_error_);
#line 92 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (self);
#line 92 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return NULL;
#line 1619 "libvirt-machine.c"
	}
#line 93 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = config;
#line 93 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = gvir_config_domain_get_title (_tmp2_);
#line 93 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp4_ = g_strdup (_tmp3_);
#line 93 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp5_ = _tmp4_;
#line 93 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp6_ = _tmp5_;
#line 93 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp6_ == NULL) {
#line 1633 "libvirt-machine.c"
		GVirDomain* _tmp7_;
		const gchar* _tmp8_ = NULL;
		gchar* _tmp9_;
#line 93 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp7_ = domain;
#line 93 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp8_ = gvir_domain_get_name (_tmp7_);
#line 93 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp9_ = g_strdup (_tmp8_);
#line 93 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_free0 (_tmp5_);
#line 93 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp5_ = _tmp9_;
#line 1647 "libvirt-machine.c"
	}
#line 93 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp10_ = _tmp5_;
#line 93 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp11_ = g_strdup (_tmp10_);
#line 93 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	item_name = _tmp11_;
#line 94 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp12_ = source;
#line 94 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp13_ = item_name;
#line 94 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	self = (BoxesLibvirtMachine*) boxes_machine_construct (object_type, _tmp12_, _tmp13_);
#line 96 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp14_ = domain;
#line 96 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp15_ = gvir_domain_get_name (_tmp14_);
#line 96 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp16_ = g_strconcat ("new libvirt machine: ", _tmp15_, NULL);
#line 96 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp17_ = _tmp16_;
#line 96 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_debug ("libvirt-machine.vala:96: %s", _tmp17_);
#line 96 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (_tmp17_);
#line 97 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp18_ = domain;
#line 97 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp19_ = gvir_domain_get_uuid (_tmp18_);
#line 97 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_machine_create_display_config ((BoxesMachine*) self, _tmp19_);
#line 98 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp20_ = connection;
#line 98 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_set_connection (self, _tmp20_);
#line 99 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp21_ = domain;
#line 99 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_set_domain (self, _tmp21_);
#line 100 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp22_ = boxes_libvirt_machine_properties_new (self);
#line 100 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (self->priv->properties);
#line 100 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	self->priv->properties = _tmp22_;
#line 1693 "libvirt-machine.c"
	{
		GVirDomain* _tmp23_;
		GVirDomainInfo* _tmp24_ = NULL;
		GVirDomainInfo* _tmp25_;
		GVirDomainInfo* _tmp26_;
		GVirDomainState _tmp27_;
		GVirDomainState _tmp28_;
		GVirDomainState s;
		GVirDomainState _tmp29_;
#line 103 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp23_ = domain;
#line 103 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp24_ = gvir_domain_get_info (_tmp23_, &_inner_error_);
#line 103 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp25_ = _tmp24_;
#line 103 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_inner_error_ != NULL) {
#line 1711 "libvirt-machine.c"
			goto __catch13_g_error;
		}
#line 103 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp26_ = _tmp25_;
#line 103 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp27_ = _tmp26_->state;
#line 103 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp28_ = _tmp27_;
#line 103 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		__vala_GVirDomainInfo_free0 (_tmp26_);
#line 103 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		s = _tmp28_;
#line 104 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp29_ = s;
#line 104 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		switch (_tmp29_) {
#line 104 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			case GVIR_DOMAIN_STATE_RUNNING:
#line 104 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			case GVIR_DOMAIN_STATE_BLOCKED:
#line 1732 "libvirt-machine.c"
			{
#line 107 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				boxes_machine_set_state ((BoxesMachine*) self, BOXES_MACHINE_MACHINE_STATE_RUNNING);
#line 108 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				boxes_libvirt_machine_set_stats_enable (self, TRUE);
#line 109 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				break;
#line 1740 "libvirt-machine.c"
			}
#line 104 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			case GVIR_DOMAIN_STATE_PAUSED:
#line 1744 "libvirt-machine.c"
			{
#line 111 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				boxes_machine_set_state ((BoxesMachine*) self, BOXES_MACHINE_MACHINE_STATE_PAUSED);
#line 112 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				break;
#line 1750 "libvirt-machine.c"
			}
#line 104 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			case GVIR_DOMAIN_STATE_SHUTDOWN:
#line 104 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			case GVIR_DOMAIN_STATE_SHUTOFF:
#line 1756 "libvirt-machine.c"
			{
				GVirDomain* _tmp30_;
				gboolean _tmp31_ = FALSE;
#line 115 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_tmp30_ = domain;
#line 115 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_tmp31_ = gvir_domain_get_saved (_tmp30_);
#line 115 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				if (_tmp31_) {
#line 116 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					boxes_machine_set_state ((BoxesMachine*) self, BOXES_MACHINE_MACHINE_STATE_SAVED);
#line 1768 "libvirt-machine.c"
				} else {
#line 118 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					boxes_machine_set_state ((BoxesMachine*) self, BOXES_MACHINE_MACHINE_STATE_STOPPED);
#line 1772 "libvirt-machine.c"
				}
#line 119 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				break;
#line 1776 "libvirt-machine.c"
			}
#line 104 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			case GVIR_DOMAIN_STATE_CRASHED:
#line 1780 "libvirt-machine.c"
			{
#line 121 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				boxes_machine_set_state ((BoxesMachine*) self, BOXES_MACHINE_MACHINE_STATE_STOPPED);
#line 122 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				break;
#line 1786 "libvirt-machine.c"
			}
#line 104 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			case GVIR_DOMAIN_STATE_PMSUSPENDED:
#line 1790 "libvirt-machine.c"
			{
#line 124 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				boxes_machine_set_state ((BoxesMachine*) self, BOXES_MACHINE_MACHINE_STATE_SLEEPING);
#line 125 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				break;
#line 1796 "libvirt-machine.c"
			}
			default:
#line 104 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			case GVIR_DOMAIN_STATE_NONE:
#line 1801 "libvirt-machine.c"
			{
#line 128 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				boxes_machine_set_state ((BoxesMachine*) self, BOXES_MACHINE_MACHINE_STATE_UNKNOWN);
#line 129 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				break;
#line 1807 "libvirt-machine.c"
			}
		}
	}
	goto __finally13;
	__catch13_g_error:
	{
		GError* _error_ = NULL;
#line 102 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_error_ = _inner_error_;
#line 102 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_inner_error_ = NULL;
#line 132 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_machine_set_state ((BoxesMachine*) self, BOXES_MACHINE_MACHINE_STATE_UNKNOWN);
#line 102 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_error_free0 (_error_);
#line 1823 "libvirt-machine.c"
	}
	__finally13:
#line 102 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_inner_error_ != NULL) {
#line 102 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_propagate_error (error, _inner_error_);
#line 102 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_free0 (item_name);
#line 102 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_free0 (_tmp5_);
#line 102 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (config);
#line 102 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (self);
#line 102 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return NULL;
#line 1840 "libvirt-machine.c"
	}
#line 135 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp32_ = domain;
#line 135 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_signal_connect_object (_tmp32_, "started", (GCallback) ___lambda140__gvir_domain_started, self, 0);
#line 136 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp33_ = domain;
#line 136 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_signal_connect_object (_tmp33_, "suspended", (GCallback) ___lambda141__gvir_domain_suspended, self, 0);
#line 137 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp34_ = domain;
#line 137 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_signal_connect_object (_tmp34_, "resumed", (GCallback) ___lambda142__gvir_domain_resumed, self, 0);
#line 138 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp35_ = domain;
#line 138 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_signal_connect_object (_tmp35_, "stopped", (GCallback) ___lambda143__gvir_domain_stopped, self, 0);
#line 147 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp36_ = domain;
#line 147 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_signal_connect_object (_tmp36_, "pmsuspended", (GCallback) ___lambda144__gvir_domain_pmsuspended, self, 0);
#line 150 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_signal_connect_object ((GObject*) self, "notify::state", (GCallback) ___lambda145__g_object_notify, self, 0);
#line 158 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_update_domain_config (self);
#line 159 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp37_ = domain;
#line 159 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_signal_connect_object (_tmp37_, "updated", (GCallback) _boxes_libvirt_machine_update_domain_config_gvir_domain_updated, self, 0);
#line 161 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp38_ = boxes_machine_get_state ((BoxesMachine*) self);
#line 161 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp39_ = _tmp38_;
#line 161 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp39_ != BOXES_MACHINE_MACHINE_STATE_STOPPED) {
#line 162 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_machine_load_screenshot ((BoxesMachine*) self);
#line 1878 "libvirt-machine.c"
	}
#line 163 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_machine_set_screenshot_enable ((BoxesMachine*) self, TRUE);
#line 89 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (item_name);
#line 89 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (_tmp5_);
#line 89 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (config);
#line 89 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return self;
#line 1890 "libvirt-machine.c"
}


BoxesLibvirtMachine* boxes_libvirt_machine_new (BoxesCollectionSource* source, GVirConnection* connection, GVirDomain* domain, GError** error) {
#line 89 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return boxes_libvirt_machine_construct (BOXES_TYPE_LIBVIRT_MACHINE, source, connection, domain, error);
#line 1897 "libvirt-machine.c"
}


static void boxes_libvirt_machine_update_cpu_stat (BoxesLibvirtMachine* self, GVirDomainInfo* info, BoxesLibvirtMachineMachineStat* stat) {
	BoxesLibvirtMachineMachineStat* _tmp0_;
	gint _tmp0__length1;
	BoxesLibvirtMachineMachineStat _tmp1_;
	BoxesLibvirtMachineMachineStat _tmp2_ = {0};
	BoxesLibvirtMachineMachineStat prev;
	gboolean _tmp3_ = FALSE;
	GVirDomainInfo* _tmp4_;
	GVirDomainState _tmp5_;
	gboolean _tmp8_;
	GVirDomainInfo* _tmp9_;
	guint64 _tmp10_;
	BoxesLibvirtMachineMachineStat _tmp11_;
	gdouble _tmp12_;
	GVirDomainInfo* _tmp13_;
	guint64 _tmp14_;
	BoxesLibvirtMachineMachineStat _tmp15_;
	gint64 _tmp16_;
	BoxesLibvirtMachineMachineStat _tmp17_;
	gint64 _tmp18_;
	gint64 dt;
	BoxesLibvirtMachineMachineStat _tmp19_;
	gdouble _tmp20_;
	gint64 _tmp21_;
	gdouble percent;
	gdouble _tmp22_;
	GVirDomainInfo* _tmp23_;
	guint16 _tmp24_;
	gdouble _tmp25_;
	gdouble _tmp26_ = 0.0;
#line 166 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (self != NULL);
#line 166 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (info != NULL);
#line 166 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (stat != NULL);
#line 167 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = self->priv->stats;
#line 167 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0__length1 = self->priv->stats_length1;
#line 167 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _tmp0_[BOXES_LIBVIRT_MACHINE_STATS_SIZE - 1];
#line 167 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_machine_stat_copy (&_tmp1_, &_tmp2_);
#line 167 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	prev = _tmp2_;
#line 169 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp4_ = info;
#line 169 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp5_ = _tmp4_->state;
#line 169 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp5_ == GVIR_DOMAIN_STATE_CRASHED) {
#line 169 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp3_ = TRUE;
#line 1955 "libvirt-machine.c"
	} else {
		GVirDomainInfo* _tmp6_;
		GVirDomainState _tmp7_;
#line 170 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp6_ = info;
#line 170 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp7_ = _tmp6_->state;
#line 170 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp3_ = _tmp7_ == GVIR_DOMAIN_STATE_SHUTOFF;
#line 1965 "libvirt-machine.c"
	}
#line 169 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp8_ = _tmp3_;
#line 169 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp8_) {
#line 171 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_machine_stat_destroy (&prev);
#line 171 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 1975 "libvirt-machine.c"
	}
#line 173 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp9_ = info;
#line 173 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp10_ = _tmp9_->cpuTime;
#line 173 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp11_ = prev;
#line 173 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp12_ = _tmp11_.cpu_time_abs;
#line 173 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	(*stat).cpu_time = _tmp10_ - _tmp12_;
#line 174 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp13_ = info;
#line 174 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp14_ = _tmp13_->cpuTime;
#line 174 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	(*stat).cpu_time_abs = (gdouble) _tmp14_;
#line 176 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp15_ = *stat;
#line 176 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp16_ = _tmp15_.timestamp;
#line 176 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp17_ = prev;
#line 176 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp18_ = _tmp17_.timestamp;
#line 176 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	dt = (_tmp16_ - _tmp18_) * 10;
#line 177 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp19_ = *stat;
#line 177 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp20_ = _tmp19_.cpu_time;
#line 177 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp21_ = dt;
#line 177 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	percent = _tmp20_ / _tmp21_;
#line 178 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp22_ = percent;
#line 178 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp23_ = info;
#line 178 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp24_ = _tmp23_->nrVirtCpu;
#line 178 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	percent = _tmp22_ / _tmp24_;
#line 179 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp25_ = percent;
#line 179 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp26_ = CLAMP (_tmp25_, (gdouble) 0, (gdouble) 100);
#line 179 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	(*stat).cpu_guest_percent = _tmp26_;
#line 166 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_machine_stat_destroy (&prev);
#line 2027 "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 182 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (self != NULL);
#line 182 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (info != NULL);
#line 182 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (stat != NULL);
#line 183 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = info;
#line 183 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _tmp0_->state;
#line 183 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp1_ != GVIR_DOMAIN_STATE_RUNNING) {
#line 184 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 2052 "libvirt-machine.c"
	}
#line 186 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = info;
#line 186 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = _tmp2_->memory;
#line 186 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp4_ = info;
#line 186 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp5_ = _tmp4_->maxMem;
#line 186 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	(*stat).memory_percent = (_tmp3_ * 100.0) / _tmp5_;
#line 2064 "libvirt-machine.c"
}


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


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


static gpointer __vala_GVirDomainInfo_copy0 (gpointer self) {
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return self ? _vala_GVirDomainInfo_copy (self) : NULL;
#line 2091 "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 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_slice_new0 (BoxesLibvirtMachineUpdateIoStatData);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_async_result = g_simple_async_result_new (G_OBJECT (self), _callback_, _user_data_, boxes_libvirt_machine_update_io_stat);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_simple_async_result_set_op_res_gpointer (_data_->_async_result, _data_, boxes_libvirt_machine_update_io_stat_data_free);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->self = _tmp0_;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = info;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = __vala_GVirDomainInfo_copy0 (_tmp1_);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	__vala_GVirDomainInfo_free0 (_data_->info);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->info = _tmp2_;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = stat;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->stat = _tmp3_;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_update_io_stat_co (_data_);
#line 2125 "libvirt-machine.c"
}


static void boxes_libvirt_machine_update_io_stat_finish (BoxesLibvirtMachine* self, GAsyncResult* _res_) {
	BoxesLibvirtMachineUpdateIoStatData* _data_;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_simple_async_result_get_op_res_gpointer (G_SIMPLE_ASYNC_RESULT (_res_));
#line 2133 "libvirt-machine.c"
}


static Block21Data* block21_data_ref (Block21Data* _data21_) {
#line 189 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_atomic_int_inc (&_data21_->_ref_count_);
#line 189 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return _data21_;
#line 2142 "libvirt-machine.c"
}


static void block21_data_unref (void * _userdata_) {
	Block21Data* _data21_;
	_data21_ = (Block21Data*) _userdata_;
#line 189 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (g_atomic_int_dec_and_test (&_data21_->_ref_count_)) {
#line 2151 "libvirt-machine.c"
		BoxesLibvirtMachine * self;
#line 189 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		self = _data21_->self;
#line 189 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (self);
#line 189 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_slice_free (Block21Data, _data21_);
#line 2159 "libvirt-machine.c"
	}
}


static Block22Data* block22_data_ref (Block22Data* _data22_) {
#line 193 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_atomic_int_inc (&_data22_->_ref_count_);
#line 193 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return _data22_;
#line 2169 "libvirt-machine.c"
}


static void block22_data_unref (void * _userdata_) {
	Block22Data* _data22_;
	_data22_ = (Block22Data*) _userdata_;
#line 193 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (g_atomic_int_dec_and_test (&_data22_->_ref_count_)) {
#line 2178 "libvirt-machine.c"
		BoxesLibvirtMachine * self;
#line 193 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		self = _data22_->_data21_->self;
#line 193 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (_data22_->disk);
#line 193 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		block21_data_unref (_data22_->_data21_);
#line 193 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data22_->_data21_ = NULL;
#line 193 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_slice_free (Block22Data, _data22_);
#line 2190 "libvirt-machine.c"
	}
}


static void _vala_GVirDomainDiskStats_free (GVirDomainDiskStats* self) {
#line 199 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_boxed_free (gvir_domain_disk_stats_get_type (), self);
#line 2198 "libvirt-machine.c"
}


static void ___lambda137_ (Block22Data* _data22_, GError** error) {
	Block21Data* _data21_;
	BoxesLibvirtMachine * self;
	GVirDomainDisk* _tmp0_;
	GVirDomainDiskStats* _tmp1_ = NULL;
	GVirDomainDiskStats* _tmp2_;
	BoxesLibvirtMachineMachineStat* _tmp3_;
	GError * _inner_error_ = NULL;
#line 198 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data21_ = _data22_->_data21_;
#line 198 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	self = _data21_->self;
#line 199 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = _data22_->disk;
#line 199 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = gvir_domain_disk_get_stats (_tmp0_, &_inner_error_);
#line 199 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = _tmp1_;
#line 199 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_inner_error_ != NULL) {
#line 199 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_propagate_error (error, _inner_error_);
#line 199 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 2226 "libvirt-machine.c"
	}
#line 199 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = _data21_->stat;
#line 199 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	__vala_GVirDomainDiskStats_free0 ((*_tmp3_).disk);
#line 199 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	(*_tmp3_).disk = _tmp2_;
#line 2234 "libvirt-machine.c"
}


static void ____lambda137__boxes_run_in_thread_func (gpointer self, GError** error) {
#line 198 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	___lambda137_ (self, error);
#line 2241 "libvirt-machine.c"
}


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


static gboolean boxes_libvirt_machine_update_io_stat_co (BoxesLibvirtMachineUpdateIoStatData* _data_) {
#line 189 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	switch (_data_->_state_) {
#line 189 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case 0:
#line 2264 "libvirt-machine.c"
		goto _state_0;
#line 189 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case 1:
#line 2268 "libvirt-machine.c"
		goto _state_1;
		default:
#line 189 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_assert_not_reached ();
#line 2273 "libvirt-machine.c"
	}
	_state_0:
#line 189 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data21_ = g_slice_new0 (Block21Data);
#line 189 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data21_->_ref_count_ = 1;
#line 189 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data21_->self = g_object_ref (_data_->self);
#line 189 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp0_ = _data_->stat;
#line 189 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data21_->stat = _data_->_tmp0_;
#line 189 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data21_->_async_data_ = _data_;
#line 190 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp1_ = _data_->info;
#line 190 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp2_ = _data_->_tmp1_->state;
#line 190 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_tmp2_ != GVIR_DOMAIN_STATE_RUNNING) {
#line 191 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		block21_data_unref (_data_->_data21_);
#line 191 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data21_ = NULL;
#line 191 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_state_ == 0) {
#line 191 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_simple_async_result_complete_in_idle (_data_->_async_result);
#line 2302 "libvirt-machine.c"
		} else {
#line 191 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_simple_async_result_complete (_data_->_async_result);
#line 2306 "libvirt-machine.c"
		}
#line 191 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 191 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 2312 "libvirt-machine.c"
	}
	{
#line 193 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data22_ = g_slice_new0 (Block22Data);
#line 193 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data22_->_ref_count_ = 1;
#line 193 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data22_->_data21_ = block21_data_ref (_data_->_data21_);
#line 194 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp3_ = NULL;
#line 194 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp3_ = boxes_libvirt_machine_get_domain_disk (_data_->self, &_data_->_inner_error_);
#line 194 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data22_->disk = _data_->_tmp3_;
#line 194 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_inner_error_ != NULL) {
#line 194 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			block22_data_unref (_data_->_data22_);
#line 194 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_data22_ = NULL;
#line 2333 "libvirt-machine.c"
			goto __catch14_g_error;
		}
#line 195 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp4_ = _data_->_data22_->disk;
#line 195 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_tmp4_ == NULL) {
#line 196 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			block22_data_unref (_data_->_data22_);
#line 196 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_data22_ = NULL;
#line 196 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			block21_data_unref (_data_->_data21_);
#line 196 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_data21_ = NULL;
#line 196 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			if (_data_->_state_ == 0) {
#line 196 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				g_simple_async_result_complete_in_idle (_data_->_async_result);
#line 2352 "libvirt-machine.c"
			} else {
#line 196 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				g_simple_async_result_complete (_data_->_async_result);
#line 2356 "libvirt-machine.c"
			}
#line 196 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_object_unref (_data_->_async_result);
#line 196 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			return FALSE;
#line 2362 "libvirt-machine.c"
		}
#line 198 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_state_ = 1;
#line 198 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_run_in_thread (____lambda137__boxes_run_in_thread_func, block22_data_ref (_data_->_data22_), block22_data_unref, NULL, boxes_libvirt_machine_update_io_stat_ready, _data_);
#line 198 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 2370 "libvirt-machine.c"
		_state_1:
#line 198 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_run_in_thread_finish (_data_->_res_, &_data_->_inner_error_);
#line 198 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_inner_error_ != NULL) {
#line 198 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			block22_data_unref (_data_->_data22_);
#line 198 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_data22_ = NULL;
#line 2380 "libvirt-machine.c"
			goto __catch14_g_error;
		}
#line 201 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp5_ = _data_->self->priv->stats;
#line 201 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp5__length1 = _data_->self->priv->stats_length1;
#line 201 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp6_ = _data_->_tmp5_[BOXES_LIBVIRT_MACHINE_STATS_SIZE - 1];
#line 201 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		memset (&_data_->_tmp7_, 0, sizeof (BoxesLibvirtMachineMachineStat));
#line 201 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_machine_stat_copy (&_data_->_tmp6_, &_data_->_tmp7_);
#line 201 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->prev = _data_->_tmp7_;
#line 202 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp8_ = _data_->prev;
#line 202 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp9_ = _data_->_tmp8_.disk;
#line 202 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_tmp9_ != NULL) {
#line 203 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp10_ = _data_->_data21_->stat;
#line 203 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp11_ = _data_->_data21_->stat;
#line 203 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp12_ = (*_data_->_tmp11_).disk;
#line 203 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp13_ = _data_->_tmp12_->rd_bytes;
#line 203 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp14_ = _data_->prev;
#line 203 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp15_ = _data_->_tmp14_.disk;
#line 203 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp16_ = _data_->_tmp15_->rd_bytes;
#line 203 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			(*_data_->_tmp10_).disk_read = (gdouble) (_data_->_tmp13_ - _data_->_tmp16_);
#line 204 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp17_ = _data_->_data21_->stat;
#line 204 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp18_ = _data_->_data21_->stat;
#line 204 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp19_ = (*_data_->_tmp18_).disk;
#line 204 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp20_ = _data_->_tmp19_->wr_bytes;
#line 204 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp21_ = _data_->prev;
#line 204 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp22_ = _data_->_tmp21_.disk;
#line 204 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp23_ = _data_->_tmp22_->wr_bytes;
#line 204 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			(*_data_->_tmp17_).disk_write = (gdouble) (_data_->_tmp20_ - _data_->_tmp23_);
#line 2433 "libvirt-machine.c"
		}
#line 193 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_machine_stat_destroy (&_data_->prev);
#line 193 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		block22_data_unref (_data_->_data22_);
#line 193 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data22_ = NULL;
#line 2441 "libvirt-machine.c"
	}
	goto __finally14;
	__catch14_g_error:
	{
#line 193 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->err = _data_->_inner_error_;
#line 193 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_inner_error_ = NULL;
#line 207 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp24_ = boxes_collection_item_get_name ((BoxesCollectionItem*) _data_->self);
#line 207 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp25_ = _data_->_tmp24_;
#line 207 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp26_ = _data_->err;
#line 207 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp27_ = _data_->_tmp26_->message;
#line 207 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_warning ("libvirt-machine.vala:207: Failed to fetch I/O statistics for %s: %s", _data_->_tmp25_, _data_->_tmp27_);
#line 193 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_error_free0 (_data_->err);
#line 2462 "libvirt-machine.c"
	}
	__finally14:
#line 193 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_inner_error_ != NULL) {
#line 193 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		block21_data_unref (_data_->_data21_);
#line 193 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data21_ = NULL;
#line 193 "/extra-data/checkout/gnome/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 193 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_clear_error (&_data_->_inner_error_);
#line 193 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 2477 "libvirt-machine.c"
	}
#line 189 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	block21_data_unref (_data_->_data21_);
#line 189 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data21_ = NULL;
#line 189 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_state_ == 0) {
#line 189 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_simple_async_result_complete_in_idle (_data_->_async_result);
#line 2487 "libvirt-machine.c"
	} else {
#line 189 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_simple_async_result_complete (_data_->_async_result);
#line 2491 "libvirt-machine.c"
	}
#line 189 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_object_unref (_data_->_async_result);
#line 189 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return FALSE;
#line 2497 "libvirt-machine.c"
}


static void boxes_libvirt_machine_update_net_stat_data_free (gpointer _data) {
	BoxesLibvirtMachineUpdateNetStatData* _data_;
	_data_ = _data;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	__vala_GVirDomainInfo_free0 (_data_->info);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->self);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_slice_free (BoxesLibvirtMachineUpdateNetStatData, _data_);
#line 2510 "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 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_slice_new0 (BoxesLibvirtMachineUpdateNetStatData);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_async_result = g_simple_async_result_new (G_OBJECT (self), _callback_, _user_data_, boxes_libvirt_machine_update_net_stat);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_simple_async_result_set_op_res_gpointer (_data_->_async_result, _data_, boxes_libvirt_machine_update_net_stat_data_free);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->self = _tmp0_;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = info;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = __vala_GVirDomainInfo_copy0 (_tmp1_);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	__vala_GVirDomainInfo_free0 (_data_->info);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->info = _tmp2_;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = stat;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->stat = _tmp3_;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_update_net_stat_co (_data_);
#line 2544 "libvirt-machine.c"
}


static void boxes_libvirt_machine_update_net_stat_finish (BoxesLibvirtMachine* self, GAsyncResult* _res_) {
	BoxesLibvirtMachineUpdateNetStatData* _data_;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_simple_async_result_get_op_res_gpointer (G_SIMPLE_ASYNC_RESULT (_res_));
#line 2552 "libvirt-machine.c"
}


static Block23Data* block23_data_ref (Block23Data* _data23_) {
#line 211 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_atomic_int_inc (&_data23_->_ref_count_);
#line 211 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return _data23_;
#line 2561 "libvirt-machine.c"
}


static void block23_data_unref (void * _userdata_) {
	Block23Data* _data23_;
	_data23_ = (Block23Data*) _userdata_;
#line 211 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (g_atomic_int_dec_and_test (&_data23_->_ref_count_)) {
#line 2570 "libvirt-machine.c"
		BoxesLibvirtMachine * self;
#line 211 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		self = _data23_->self;
#line 211 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (self);
#line 211 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_slice_free (Block23Data, _data23_);
#line 2578 "libvirt-machine.c"
	}
}


static Block24Data* block24_data_ref (Block24Data* _data24_) {
#line 215 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_atomic_int_inc (&_data24_->_ref_count_);
#line 215 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return _data24_;
#line 2588 "libvirt-machine.c"
}


static void block24_data_unref (void * _userdata_) {
	Block24Data* _data24_;
	_data24_ = (Block24Data*) _userdata_;
#line 215 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (g_atomic_int_dec_and_test (&_data24_->_ref_count_)) {
#line 2597 "libvirt-machine.c"
		BoxesLibvirtMachine * self;
#line 215 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		self = _data24_->_data23_->self;
#line 215 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (_data24_->net);
#line 215 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		block23_data_unref (_data24_->_data23_);
#line 215 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data24_->_data23_ = NULL;
#line 215 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_slice_free (Block24Data, _data24_);
#line 2609 "libvirt-machine.c"
	}
}


static void _vala_GVirDomainInterfaceStats_free (GVirDomainInterfaceStats* self) {
#line 221 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_boxed_free (gvir_domain_interface_stats_get_type (), self);
#line 2617 "libvirt-machine.c"
}


static void ___lambda138_ (Block24Data* _data24_, GError** error) {
	Block23Data* _data23_;
	BoxesLibvirtMachine * self;
	GVirDomainInterface* _tmp0_;
	GVirDomainInterfaceStats* _tmp1_ = NULL;
	GVirDomainInterfaceStats* _tmp2_;
	BoxesLibvirtMachineMachineStat* _tmp3_;
	GError * _inner_error_ = NULL;
#line 220 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data23_ = _data24_->_data23_;
#line 220 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	self = _data23_->self;
#line 221 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = _data24_->net;
#line 221 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = gvir_domain_interface_get_stats (_tmp0_, &_inner_error_);
#line 221 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = _tmp1_;
#line 221 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_inner_error_ != NULL) {
#line 221 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_propagate_error (error, _inner_error_);
#line 221 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 2645 "libvirt-machine.c"
	}
#line 221 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = _data23_->stat;
#line 221 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	__vala_GVirDomainInterfaceStats_free0 ((*_tmp3_).net);
#line 221 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	(*_tmp3_).net = _tmp2_;
#line 2653 "libvirt-machine.c"
}


static void ____lambda138__boxes_run_in_thread_func (gpointer self, GError** error) {
#line 220 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	___lambda138_ (self, error);
#line 2660 "libvirt-machine.c"
}


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


static gboolean boxes_libvirt_machine_update_net_stat_co (BoxesLibvirtMachineUpdateNetStatData* _data_) {
#line 211 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	switch (_data_->_state_) {
#line 211 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case 0:
#line 2683 "libvirt-machine.c"
		goto _state_0;
#line 211 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case 1:
#line 2687 "libvirt-machine.c"
		goto _state_1;
		default:
#line 211 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_assert_not_reached ();
#line 2692 "libvirt-machine.c"
	}
	_state_0:
#line 211 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data23_ = g_slice_new0 (Block23Data);
#line 211 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data23_->_ref_count_ = 1;
#line 211 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data23_->self = g_object_ref (_data_->self);
#line 211 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp0_ = _data_->stat;
#line 211 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data23_->stat = _data_->_tmp0_;
#line 211 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data23_->_async_data_ = _data_;
#line 212 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp1_ = _data_->info;
#line 212 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp2_ = _data_->_tmp1_->state;
#line 212 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_tmp2_ != GVIR_DOMAIN_STATE_RUNNING) {
#line 213 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		block23_data_unref (_data_->_data23_);
#line 213 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data23_ = NULL;
#line 213 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_state_ == 0) {
#line 213 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_simple_async_result_complete_in_idle (_data_->_async_result);
#line 2721 "libvirt-machine.c"
		} else {
#line 213 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_simple_async_result_complete (_data_->_async_result);
#line 2725 "libvirt-machine.c"
		}
#line 213 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 213 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 2731 "libvirt-machine.c"
	}
	{
#line 215 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data24_ = g_slice_new0 (Block24Data);
#line 215 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data24_->_ref_count_ = 1;
#line 215 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data24_->_data23_ = block23_data_ref (_data_->_data23_);
#line 216 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp3_ = NULL;
#line 216 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp3_ = boxes_libvirt_machine_get_domain_network_interface (_data_->self, &_data_->_inner_error_);
#line 216 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data24_->net = _data_->_tmp3_;
#line 216 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_inner_error_ != NULL) {
#line 216 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			block24_data_unref (_data_->_data24_);
#line 216 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_data24_ = NULL;
#line 2752 "libvirt-machine.c"
			goto __catch15_g_error;
		}
#line 217 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp4_ = _data_->_data24_->net;
#line 217 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_tmp4_ == NULL) {
#line 218 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			block24_data_unref (_data_->_data24_);
#line 218 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_data24_ = NULL;
#line 218 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			block23_data_unref (_data_->_data23_);
#line 218 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_data23_ = NULL;
#line 218 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			if (_data_->_state_ == 0) {
#line 218 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				g_simple_async_result_complete_in_idle (_data_->_async_result);
#line 2771 "libvirt-machine.c"
			} else {
#line 218 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				g_simple_async_result_complete (_data_->_async_result);
#line 2775 "libvirt-machine.c"
			}
#line 218 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_object_unref (_data_->_async_result);
#line 218 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			return FALSE;
#line 2781 "libvirt-machine.c"
		}
#line 220 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_state_ = 1;
#line 220 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_run_in_thread (____lambda138__boxes_run_in_thread_func, block24_data_ref (_data_->_data24_), block24_data_unref, NULL, boxes_libvirt_machine_update_net_stat_ready, _data_);
#line 220 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 2789 "libvirt-machine.c"
		_state_1:
#line 220 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_run_in_thread_finish (_data_->_res_, &_data_->_inner_error_);
#line 220 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_inner_error_ != NULL) {
#line 220 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			block24_data_unref (_data_->_data24_);
#line 220 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_data24_ = NULL;
#line 2799 "libvirt-machine.c"
			goto __catch15_g_error;
		}
#line 223 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp5_ = _data_->self->priv->stats;
#line 223 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp5__length1 = _data_->self->priv->stats_length1;
#line 223 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp6_ = _data_->_tmp5_[BOXES_LIBVIRT_MACHINE_STATS_SIZE - 1];
#line 223 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		memset (&_data_->_tmp7_, 0, sizeof (BoxesLibvirtMachineMachineStat));
#line 223 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_machine_stat_copy (&_data_->_tmp6_, &_data_->_tmp7_);
#line 223 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->prev = _data_->_tmp7_;
#line 224 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp8_ = _data_->prev;
#line 224 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp9_ = _data_->_tmp8_.net;
#line 224 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_tmp9_ != NULL) {
#line 225 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp10_ = _data_->_data23_->stat;
#line 225 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp11_ = _data_->_data23_->stat;
#line 225 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp12_ = (*_data_->_tmp11_).net;
#line 225 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp13_ = _data_->_tmp12_->rx_bytes;
#line 225 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp14_ = _data_->prev;
#line 225 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp15_ = _data_->_tmp14_.net;
#line 225 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp16_ = _data_->_tmp15_->rx_bytes;
#line 225 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			(*_data_->_tmp10_).net_read = (gdouble) (_data_->_tmp13_ - _data_->_tmp16_);
#line 226 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp17_ = _data_->_data23_->stat;
#line 226 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp18_ = _data_->_data23_->stat;
#line 226 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp19_ = (*_data_->_tmp18_).net;
#line 226 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp20_ = _data_->_tmp19_->tx_bytes;
#line 226 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp21_ = _data_->prev;
#line 226 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp22_ = _data_->_tmp21_.net;
#line 226 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp23_ = _data_->_tmp22_->tx_bytes;
#line 226 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			(*_data_->_tmp17_).net_write = (gdouble) (_data_->_tmp20_ - _data_->_tmp23_);
#line 2852 "libvirt-machine.c"
		}
#line 215 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_machine_stat_destroy (&_data_->prev);
#line 215 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		block24_data_unref (_data_->_data24_);
#line 215 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data24_ = NULL;
#line 2860 "libvirt-machine.c"
	}
	goto __finally15;
	__catch15_g_error:
	{
#line 215 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->err = _data_->_inner_error_;
#line 215 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_inner_error_ = NULL;
#line 229 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp24_ = boxes_collection_item_get_name ((BoxesCollectionItem*) _data_->self);
#line 229 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp25_ = _data_->_tmp24_;
#line 229 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp26_ = _data_->err;
#line 229 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp27_ = _data_->_tmp26_->message;
#line 229 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_warning ("libvirt-machine.vala:229: Failed to fetch network statistics for %s: %" \
"s", _data_->_tmp25_, _data_->_tmp27_);
#line 215 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_error_free0 (_data_->err);
#line 2881 "libvirt-machine.c"
	}
	__finally15:
#line 215 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_inner_error_ != NULL) {
#line 215 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		block23_data_unref (_data_->_data23_);
#line 215 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data23_ = NULL;
#line 215 "/extra-data/checkout/gnome/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 215 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_clear_error (&_data_->_inner_error_);
#line 215 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 2896 "libvirt-machine.c"
	}
#line 211 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	block23_data_unref (_data_->_data23_);
#line 211 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data23_ = NULL;
#line 211 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_state_ == 0) {
#line 211 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_simple_async_result_complete_in_idle (_data_->_async_result);
#line 2906 "libvirt-machine.c"
	} else {
#line 211 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_simple_async_result_complete (_data_->_async_result);
#line 2910 "libvirt-machine.c"
	}
#line 211 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_object_unref (_data_->_async_result);
#line 211 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return FALSE;
#line 2916 "libvirt-machine.c"
}


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


static void boxes_libvirt_machine_update_stats (BoxesLibvirtMachine* self, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	BoxesLibvirtMachineUpdateStatsData* _data_;
	BoxesLibvirtMachine* _tmp0_;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_slice_new0 (BoxesLibvirtMachineUpdateStatsData);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_async_result = g_simple_async_result_new (G_OBJECT (self), _callback_, _user_data_, boxes_libvirt_machine_update_stats);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_simple_async_result_set_op_res_gpointer (_data_->_async_result, _data_, boxes_libvirt_machine_update_stats_data_free);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->self = _tmp0_;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_update_stats_co (_data_);
#line 2946 "libvirt-machine.c"
}


static void boxes_libvirt_machine_update_stats_finish (BoxesLibvirtMachine* self, GAsyncResult* _res_) {
	BoxesLibvirtMachineUpdateStatsData* _data_;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_simple_async_result_get_op_res_gpointer (G_SIMPLE_ASYNC_RESULT (_res_));
#line 2954 "libvirt-machine.c"
}


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


static BoxesLibvirtMachineMachineStat* _vala_array_dup1 (BoxesLibvirtMachineMachineStat* self, int length) {
	BoxesLibvirtMachineMachineStat* result;
	int i;
#line 249 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	result = g_new0 (BoxesLibvirtMachineMachineStat, length);
#line 249 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	for (i = 0; i < length; i++) {
#line 2979 "libvirt-machine.c"
		BoxesLibvirtMachineMachineStat _tmp0_ = {0};
#line 249 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_machine_stat_copy (&self[i], &_tmp0_);
#line 249 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		result[i] = _tmp0_;
#line 2985 "libvirt-machine.c"
	}
#line 249 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 2989 "libvirt-machine.c"
}


static void _vala_array_add2 (BoxesLibvirtMachineMachineStat** array, int* length, int* size, const BoxesLibvirtMachineMachineStat* value) {
#line 250 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if ((*length) == (*size)) {
#line 250 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		*size = (*size) ? (2 * (*size)) : 4;
#line 250 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		*array = g_renew (BoxesLibvirtMachineMachineStat, *array, *size);
#line 3000 "libvirt-machine.c"
	}
#line 250 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	(*array)[(*length)++] = *value;
#line 3004 "libvirt-machine.c"
}


static void _vala_array_add3 (gdouble** array, int* length, int* size, gdouble value) {
#line 263 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if ((*length) == (*size)) {
#line 263 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		*size = (*size) ? (2 * (*size)) : 4;
#line 263 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		*array = g_renew (gdouble, *array, *size);
#line 3015 "libvirt-machine.c"
	}
#line 263 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	(*array)[(*length)++] = value;
#line 3019 "libvirt-machine.c"
}


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


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


static gboolean boxes_libvirt_machine_update_stats_co (BoxesLibvirtMachineUpdateStatsData* _data_) {
#line 238 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	switch (_data_->_state_) {
#line 238 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case 0:
#line 3058 "libvirt-machine.c"
		goto _state_0;
#line 238 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case 1:
#line 3062 "libvirt-machine.c"
		goto _state_1;
#line 238 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case 2:
#line 3066 "libvirt-machine.c"
		goto _state_2;
#line 238 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case 3:
#line 3070 "libvirt-machine.c"
		goto _state_3;
		default:
#line 238 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_assert_not_reached ();
#line 3075 "libvirt-machine.c"
	}
	_state_0:
	{
#line 240 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp0_ = 0LL;
#line 240 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp0_ = g_get_monotonic_time ();
#line 240 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->now = _data_->_tmp0_;
#line 241 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp1_ = _data_->now;
#line 241 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		memset (&_data_->_tmp2_, 0, sizeof (BoxesLibvirtMachineMachineStat));
#line 241 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		memset (&_data_->_tmp2_, 0, sizeof (BoxesLibvirtMachineMachineStat));
#line 241 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp2_.timestamp = _data_->_tmp1_;
#line 241 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->stat = _data_->_tmp2_;
#line 242 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp3_ = _data_->self->priv->_domain;
#line 242 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp4_ = _data_->self->priv->stats_cancellable;
#line 242 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_state_ = 1;
#line 242 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		gvir_domain_get_info_async (_data_->_tmp3_, _data_->_tmp4_, boxes_libvirt_machine_update_stats_ready, _data_);
#line 242 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 3105 "libvirt-machine.c"
		_state_1:
#line 242 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp5_ = NULL;
#line 242 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp5_ = gvir_domain_get_info_finish (_data_->_tmp3_, _data_->_res_, &_data_->_inner_error_);
#line 242 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->info = _data_->_tmp5_;
#line 242 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_inner_error_ != NULL) {
#line 242 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			boxes_libvirt_machine_machine_stat_destroy (&_data_->stat);
#line 242 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			if (g_error_matches (_data_->_inner_error_, G_IO_ERROR, G_IO_ERROR_CANCELLED)) {
#line 3119 "libvirt-machine.c"
				goto __catch16_g_io_error_cancelled;
			}
			goto __catch16_g_error;
		}
#line 244 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp6_ = _data_->info;
#line 244 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_update_cpu_stat (_data_->self, _data_->_tmp6_, &_data_->stat);
#line 245 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp7_ = _data_->info;
#line 245 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_update_mem_stat (_data_->self, _data_->_tmp7_, &_data_->stat);
#line 246 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp8_ = _data_->info;
#line 246 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_state_ = 2;
#line 246 "/extra-data/checkout/gnome/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 246 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 3140 "libvirt-machine.c"
		_state_2:
#line 246 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_update_io_stat_finish (_data_->self, _data_->_res_);
#line 247 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp9_ = _data_->info;
#line 247 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_state_ = 3;
#line 247 "/extra-data/checkout/gnome/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 247 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 3152 "libvirt-machine.c"
		_state_3:
#line 247 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_update_net_stat_finish (_data_->self, _data_->_res_);
#line 249 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp10_ = _data_->self->priv->stats;
#line 249 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp10__length1 = _data_->self->priv->stats_length1;
#line 249 "/extra-data/checkout/gnome/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 249 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp11__length1 = BOXES_LIBVIRT_MACHINE_STATS_SIZE - 1;
#line 249 "/extra-data/checkout/gnome/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 249 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->self->priv->stats = _data_->_tmp11_;
#line 249 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->self->priv->stats_length1 = _data_->_tmp11__length1;
#line 249 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->self->priv->_stats_size_ = _data_->self->priv->stats_length1;
#line 250 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp12_ = _data_->self->priv->stats;
#line 250 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp12__length1 = _data_->self->priv->stats_length1;
#line 250 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp13_ = _data_->stat;
#line 250 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		memset (&_data_->_tmp14_, 0, sizeof (BoxesLibvirtMachineMachineStat));
#line 250 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_machine_stat_copy (&_data_->_tmp13_, &_data_->_tmp14_);
#line 250 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_vala_array_add2 (&_data_->self->priv->stats, &_data_->self->priv->stats_length1, &_data_->self->priv->_stats_size_, &_data_->_tmp14_);
#line 239 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		__vala_GVirDomainInfo_free0 (_data_->info);
#line 239 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_machine_stat_destroy (&_data_->stat);
#line 3188 "libvirt-machine.c"
	}
	goto __finally16;
	__catch16_g_io_error_cancelled:
	{
#line 239 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->err = _data_->_inner_error_;
#line 239 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_inner_error_ = NULL;
#line 253 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_error_free0 (_data_->err);
#line 253 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_state_ == 0) {
#line 253 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_simple_async_result_complete_in_idle (_data_->_async_result);
#line 3203 "libvirt-machine.c"
		} else {
#line 253 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_simple_async_result_complete (_data_->_async_result);
#line 3207 "libvirt-machine.c"
		}
#line 253 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 253 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 3213 "libvirt-machine.c"
	}
	goto __finally16;
	__catch16_g_error:
	{
#line 239 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_vala1_err = _data_->_inner_error_;
#line 239 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_inner_error_ = NULL;
#line 255 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp15_ = _data_->_vala1_err;
#line 255 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp16_ = _data_->_tmp15_->message;
#line 255 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_warning ("libvirt-machine.vala:255: %s", _data_->_tmp16_);
#line 239 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_error_free0 (_data_->_vala1_err);
#line 3230 "libvirt-machine.c"
	}
	__finally16:
#line 239 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_inner_error_ != NULL) {
#line 239 "/extra-data/checkout/gnome/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 239 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_clear_error (&_data_->_inner_error_);
#line 239 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 3241 "libvirt-machine.c"
	}
#line 258 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp17_ = NULL;
#line 258 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp17_ = g_new0 (gdouble, 0);
#line 258 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->self->cpu_stats = (g_free (_data_->self->cpu_stats), NULL);
#line 258 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->self->cpu_stats = _data_->_tmp17_;
#line 258 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->self->cpu_stats_length1 = 0;
#line 258 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->self->_cpu_stats_size_ = _data_->self->cpu_stats_length1;
#line 259 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp18_ = NULL;
#line 259 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp18_ = g_new0 (gdouble, 0);
#line 259 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->self->io_stats = (g_free (_data_->self->io_stats), NULL);
#line 259 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->self->io_stats = _data_->_tmp18_;
#line 259 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->self->io_stats_length1 = 0;
#line 259 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->self->_io_stats_size_ = _data_->self->io_stats_length1;
#line 260 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp19_ = NULL;
#line 260 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp19_ = g_new0 (gdouble, 0);
#line 260 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->self->net_stats = (g_free (_data_->self->net_stats), NULL);
#line 260 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->self->net_stats = _data_->_tmp19_;
#line 260 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->self->net_stats_length1 = 0;
#line 260 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->self->_net_stats_size_ = _data_->self->net_stats_length1;
#line 262 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp20_ = _data_->self->priv->stats;
#line 262 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp20__length1 = _data_->self->priv->stats_length1;
#line 3283 "libvirt-machine.c"
	{
#line 262 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->stat_collection_length1 = 0;
#line 262 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_stat_collection_size_ = 0;
#line 262 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->stat_collection = _data_->_tmp20_;
#line 262 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->stat_collection_length1 = _data_->_tmp20__length1;
#line 262 "/extra-data/checkout/gnome/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 262 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			memset (&_data_->_tmp21_, 0, sizeof (BoxesLibvirtMachineMachineStat));
#line 262 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			boxes_libvirt_machine_machine_stat_copy (&_data_->stat_collection[_data_->stat_it], &_data_->_tmp21_);
#line 262 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_vala1_stat = _data_->_tmp21_;
#line 3301 "libvirt-machine.c"
			{
#line 263 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp22_ = _data_->self->cpu_stats;
#line 263 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp22__length1 = _data_->self->cpu_stats_length1;
#line 263 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp23_ = _data_->_vala1_stat;
#line 263 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp24_ = _data_->_tmp23_.cpu_guest_percent;
#line 263 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_vala_array_add3 (&_data_->self->cpu_stats, &_data_->self->cpu_stats_length1, &_data_->self->_cpu_stats_size_, _data_->_tmp24_);
#line 264 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp25_ = _data_->self->net_stats;
#line 264 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp25__length1 = _data_->self->net_stats_length1;
#line 264 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp26_ = _data_->_vala1_stat;
#line 264 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp27_ = _data_->_tmp26_.net_read;
#line 264 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp28_ = _data_->_vala1_stat;
#line 264 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp29_ = _data_->_tmp28_.net_write;
#line 264 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_vala_array_add4 (&_data_->self->net_stats, &_data_->self->net_stats_length1, &_data_->self->_net_stats_size_, _data_->_tmp27_ + _data_->_tmp29_);
#line 265 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp30_ = _data_->self->io_stats;
#line 265 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp30__length1 = _data_->self->io_stats_length1;
#line 265 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp31_ = _data_->_vala1_stat;
#line 265 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp32_ = _data_->_tmp31_.disk_read;
#line 265 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp33_ = _data_->_vala1_stat;
#line 265 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp34_ = _data_->_tmp33_.disk_write;
#line 265 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_vala_array_add5 (&_data_->self->io_stats, &_data_->self->io_stats_length1, &_data_->self->_io_stats_size_, _data_->_tmp32_ + _data_->_tmp34_);
#line 262 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				boxes_libvirt_machine_machine_stat_destroy (&_data_->_vala1_stat);
#line 3343 "libvirt-machine.c"
			}
		}
	}
#line 268 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_signal_emit_by_name (_data_->self, "stats-updated");
#line 238 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_state_ == 0) {
#line 238 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_simple_async_result_complete_in_idle (_data_->_async_result);
#line 3353 "libvirt-machine.c"
	} else {
#line 238 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_simple_async_result_complete (_data_->_async_result);
#line 3357 "libvirt-machine.c"
	}
#line 238 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_object_unref (_data_->_async_result);
#line 238 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return FALSE;
#line 3363 "libvirt-machine.c"
}


static Block25Data* block25_data_ref (Block25Data* _data25_) {
#line 272 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_atomic_int_inc (&_data25_->_ref_count_);
#line 272 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return _data25_;
#line 3372 "libvirt-machine.c"
}


static void block25_data_unref (void * _userdata_) {
	Block25Data* _data25_;
	_data25_ = (Block25Data*) _userdata_;
#line 272 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (g_atomic_int_dec_and_test (&_data25_->_ref_count_)) {
#line 3381 "libvirt-machine.c"
		BoxesLibvirtMachine * self;
#line 272 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		self = _data25_->self;
#line 272 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (self);
#line 272 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_slice_free (Block25Data, _data25_);
#line 3389 "libvirt-machine.c"
	}
}


static void __lambda139_ (Block25Data* _data25_) {
	BoxesLibvirtMachine * self;
#line 287 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	self = _data25_->self;
#line 287 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data25_->stats_updating = FALSE;
#line 3400 "libvirt-machine.c"
}


static void ___lambda139__gasync_ready_callback (GObject* source_object, GAsyncResult* res, gpointer self) {
#line 287 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	__lambda139_ (self);
#line 287 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	block25_data_unref (self);
#line 3409 "libvirt-machine.c"
}


static gboolean ___lambda136_ (Block25Data* _data25_) {
	BoxesLibvirtMachine * self;
	gboolean result = FALSE;
	gboolean _tmp0_;
#line 279 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	self = _data25_->self;
#line 280 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = _data25_->stats_updating;
#line 280 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp0_) {
#line 3423 "libvirt-machine.c"
		const gchar* _tmp1_;
		const gchar* _tmp2_;
#line 281 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp1_ = boxes_collection_item_get_name ((BoxesCollectionItem*) self);
#line 281 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp2_ = _tmp1_;
#line 281 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_warning ("libvirt-machine.vala:281: Fetching of stats for '%s' is taking too lon" \
"g. Probably a libvirt bug.", _tmp2_);
#line 283 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		result = TRUE;
#line 283 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return result;
#line 3436 "libvirt-machine.c"
	}
#line 286 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data25_->stats_updating = TRUE;
#line 287 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_update_stats (self, ___lambda139__gasync_ready_callback, block25_data_ref (_data25_));
#line 289 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	result = TRUE;
#line 289 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 3446 "libvirt-machine.c"
}


static gboolean ____lambda136__gsource_func (gpointer self) {
	gboolean result;
	result = ___lambda136_ (self);
#line 279 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 3455 "libvirt-machine.c"
}


static void boxes_libvirt_machine_set_stats_enable (BoxesLibvirtMachine* self, gboolean enable) {
	gboolean _tmp0_;
#line 271 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (self != NULL);
#line 272 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = enable;
#line 272 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp0_) {
#line 3467 "libvirt-machine.c"
		Block25Data* _data25_;
		const gchar* _tmp1_;
		const gchar* _tmp2_;
		gchar* _tmp3_;
		gchar* _tmp4_;
		guint _tmp5_;
		GCancellable* _tmp6_;
		guint _tmp7_ = 0U;
#line 272 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data25_ = g_slice_new0 (Block25Data);
#line 272 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data25_->_ref_count_ = 1;
#line 272 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data25_->self = g_object_ref (self);
#line 273 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp1_ = boxes_collection_item_get_name ((BoxesCollectionItem*) self);
#line 273 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp2_ = _tmp1_;
#line 273 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp3_ = g_strconcat ("enable statistics for ", _tmp2_, NULL);
#line 273 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp4_ = _tmp3_;
#line 273 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_debug ("libvirt-machine.vala:273: %s", _tmp4_);
#line 273 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_free0 (_tmp4_);
#line 274 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp5_ = self->priv->stats_update_timeout;
#line 274 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_tmp5_ != ((guint) 0)) {
#line 275 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			block25_data_unref (_data25_);
#line 275 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data25_ = NULL;
#line 275 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			return;
#line 3504 "libvirt-machine.c"
		}
#line 277 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp6_ = self->priv->stats_cancellable;
#line 277 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_cancellable_reset (_tmp6_);
#line 278 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data25_->stats_updating = FALSE;
#line 279 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp7_ = g_timeout_add_seconds_full (G_PRIORITY_DEFAULT, (guint) 1, ____lambda136__gsource_func, block25_data_ref (_data25_), block25_data_unref);
#line 279 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		self->priv->stats_update_timeout = _tmp7_;
#line 272 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		block25_data_unref (_data25_);
#line 272 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data25_ = NULL;
#line 3520 "libvirt-machine.c"
	} else {
		const gchar* _tmp8_;
		const gchar* _tmp9_;
		gchar* _tmp10_;
		gchar* _tmp11_;
		guint _tmp12_;
#line 292 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp8_ = boxes_collection_item_get_name ((BoxesCollectionItem*) self);
#line 292 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp9_ = _tmp8_;
#line 292 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp10_ = g_strconcat ("disable statistics for ", _tmp9_, NULL);
#line 292 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp11_ = _tmp10_;
#line 292 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_debug ("libvirt-machine.vala:292: %s", _tmp11_);
#line 292 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_free0 (_tmp11_);
#line 293 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp12_ = self->priv->stats_update_timeout;
#line 293 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_tmp12_ != ((guint) 0)) {
#line 3543 "libvirt-machine.c"
			GCancellable* _tmp13_;
			guint _tmp14_;
#line 294 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_tmp13_ = self->priv->stats_cancellable;
#line 294 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_cancellable_cancel (_tmp13_);
#line 295 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_tmp14_ = self->priv->stats_update_timeout;
#line 295 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_source_remove (_tmp14_);
#line 3554 "libvirt-machine.c"
		}
#line 297 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		self->priv->stats_update_timeout = (guint) 0;
#line 3558 "libvirt-machine.c"
	}
}


static void _g_object_unref0_ (gpointer var) {
#line 301 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	(var == NULL) ? NULL : (var = (g_object_unref (var), NULL));
#line 3566 "libvirt-machine.c"
}


static void _g_list_free__g_object_unref0_ (GList* self) {
#line 301 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_list_foreach (self, (GFunc) _g_object_unref0_, NULL);
#line 301 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_list_free (self);
#line 3575 "libvirt-machine.c"
}


static GList* boxes_libvirt_machine_real_get_properties (BoxesMachine* base, BoxesPropertiesPage page, PropertyCreationFlag* flags) {
	BoxesLibvirtMachine * self;
	GList* result = NULL;
	BoxesLibvirtMachineProperties* _tmp0_;
	BoxesPropertiesPage _tmp1_;
	GList* _tmp2_ = NULL;
	GList* list;
	BoxesDisplay* _tmp3_;
	BoxesDisplay* _tmp4_;
#line 301 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	self = (BoxesLibvirtMachine*) base;
#line 302 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = self->priv->properties;
#line 302 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = page;
#line 302 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = boxes_iproperties_provider_get_properties ((BoxesIPropertiesProvider*) _tmp0_, _tmp1_, flags);
#line 302 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	list = _tmp2_;
#line 304 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = boxes_machine_get_display ((BoxesMachine*) self);
#line 304 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp4_ = _tmp3_;
#line 304 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp4_ != NULL) {
#line 3604 "libvirt-machine.c"
		BoxesDisplay* _tmp5_;
		BoxesDisplay* _tmp6_;
		BoxesPropertiesPage _tmp7_;
		GList* _tmp8_ = NULL;
#line 305 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp5_ = boxes_machine_get_display ((BoxesMachine*) self);
#line 305 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp6_ = _tmp5_;
#line 305 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp7_ = page;
#line 305 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp8_ = boxes_display_get_properties (_tmp6_, _tmp7_, flags);
#line 305 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		list = g_list_concat (list, _tmp8_);
#line 3619 "libvirt-machine.c"
	}
#line 308 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	result = list;
#line 308 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 3625 "libvirt-machine.c"
}


gboolean boxes_libvirt_machine_update_display (BoxesLibvirtMachine* self, GError** error) {
	gboolean result = FALSE;
	BoxesDisplay* _tmp0_;
	BoxesDisplay* _tmp1_;
	gboolean created_display;
	BoxesDisplay* _tmp2_;
	BoxesDisplay* _tmp3_;
	GError * _inner_error_ = NULL;
#line 311 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 312 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_update_domain_config (self);
#line 314 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = boxes_machine_get_display ((BoxesMachine*) self);
#line 314 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _tmp0_;
#line 314 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	created_display = _tmp1_ == NULL;
#line 315 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = boxes_machine_get_display ((BoxesMachine*) self);
#line 315 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = _tmp2_;
#line 315 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp3_ == NULL) {
#line 3653 "libvirt-machine.c"
		BoxesDisplay* _tmp4_ = NULL;
		BoxesDisplay* _tmp5_;
		BoxesDisplay* _tmp6_;
#line 316 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp4_ = boxes_libvirt_machine_create_display (self, &_inner_error_);
#line 316 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp5_ = _tmp4_;
#line 316 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_inner_error_ != NULL) {
#line 316 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_propagate_error (error, _inner_error_);
#line 316 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			return FALSE;
#line 3667 "libvirt-machine.c"
		}
#line 316 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp6_ = _tmp5_;
#line 316 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_machine_set_display ((BoxesMachine*) self, _tmp6_);
#line 316 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (_tmp6_);
#line 3675 "libvirt-machine.c"
	}
#line 317 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	result = created_display;
#line 317 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 3681 "libvirt-machine.c"
}


static const gchar* string_to_string (const gchar* self) {
	const gchar* result = NULL;
#line 1274 "/home/zeenix/jhbuild/share/vala-0.20/vapi/glib-2.0.vapi"
	g_return_val_if_fail (self != NULL, NULL);
#line 1275 "/home/zeenix/jhbuild/share/vala-0.20/vapi/glib-2.0.vapi"
	result = self;
#line 1275 "/home/zeenix/jhbuild/share/vala-0.20/vapi/glib-2.0.vapi"
	return result;
#line 3693 "libvirt-machine.c"
}


static BoxesDisplay* boxes_libvirt_machine_create_display (BoxesLibvirtMachine* self, GError** error) {
	BoxesDisplay* result = NULL;
	gchar* type = NULL;
	gchar* port = NULL;
	gchar* socket = NULL;
	gchar* host = NULL;
	GVirConfigDomain* _tmp0_;
	gchar* _tmp1_ = NULL;
	gchar* xmldoc;
	const gchar* _tmp2_;
	gchar* _tmp3_ = NULL;
	gchar* _tmp4_;
	const gchar* _tmp5_;
	const gchar* _tmp6_;
	const gchar* _tmp7_ = NULL;
	gchar* _tmp8_ = NULL;
	gchar* _tmp9_;
	gchar* _tmp10_ = NULL;
	gchar* _tmp11_;
	gchar* _tmp12_;
	const gchar* _tmp13_;
	const gchar* _tmp14_;
	const gchar* _tmp15_ = NULL;
	gchar* _tmp16_ = NULL;
	gchar* _tmp17_;
	gchar* _tmp18_ = NULL;
	gchar* _tmp19_;
	gchar* _tmp20_;
	const gchar* _tmp21_;
	const gchar* _tmp22_;
	const gchar* _tmp23_ = NULL;
	gchar* _tmp24_ = NULL;
	gchar* _tmp25_;
	gchar* _tmp26_ = NULL;
	gchar* _tmp27_;
	gchar* _tmp28_;
	gboolean _tmp29_ = FALSE;
	const gchar* _tmp30_;
	gboolean _tmp32_;
	const gchar* _tmp34_;
	const gchar* _tmp35_;
	GQuark _tmp37_ = 0U;
#line 332 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	static GQuark _tmp36_label0 = 0;
#line 332 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	static GQuark _tmp36_label1 = 0;
#line 3743 "libvirt-machine.c"
	GError * _inner_error_ = NULL;
#line 320 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 323 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = self->priv->_domain_config;
#line 323 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = gvir_config_object_to_xml ((GVirConfigObject*) _tmp0_);
#line 323 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	xmldoc = _tmp1_;
#line 324 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = xmldoc;
#line 324 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = boxes_extract_xpath (_tmp2_, "string(/domain/devices/graphics/@type)", TRUE, &_inner_error_);
#line 324 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp4_ = _tmp3_;
#line 324 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_inner_error_ != NULL) {
#line 324 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_inner_error_->domain == BOXES_ERROR) {
#line 324 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_propagate_error (error, _inner_error_);
#line 324 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (xmldoc);
#line 324 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (host);
#line 324 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (socket);
#line 324 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (port);
#line 324 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (type);
#line 324 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			return NULL;
#line 3777 "libvirt-machine.c"
		} else {
#line 324 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (xmldoc);
#line 324 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (host);
#line 324 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (socket);
#line 324 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (port);
#line 324 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (type);
#line 324 "/extra-data/checkout/gnome/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 324 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_clear_error (&_inner_error_);
#line 324 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			return NULL;
#line 3795 "libvirt-machine.c"
		}
	}
#line 324 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (type);
#line 324 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	type = _tmp4_;
#line 325 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp5_ = xmldoc;
#line 325 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp6_ = type;
#line 325 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp7_ = string_to_string (_tmp6_);
#line 325 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp8_ = g_strconcat ("string(/domain/devices/graphics[@type='", _tmp7_, "']/@port)", NULL);
#line 325 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp9_ = _tmp8_;
#line 325 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp10_ = boxes_extract_xpath (_tmp5_, _tmp9_, FALSE, &_inner_error_);
#line 325 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp11_ = _tmp10_;
#line 325 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (_tmp9_);
#line 325 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp12_ = _tmp11_;
#line 325 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_inner_error_ != NULL) {
#line 325 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_inner_error_->domain == BOXES_ERROR) {
#line 325 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_propagate_error (error, _inner_error_);
#line 325 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (xmldoc);
#line 325 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (host);
#line 325 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (socket);
#line 325 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (port);
#line 325 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (type);
#line 325 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			return NULL;
#line 3838 "libvirt-machine.c"
		} else {
#line 325 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (xmldoc);
#line 325 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (host);
#line 325 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (socket);
#line 325 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (port);
#line 325 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (type);
#line 325 "/extra-data/checkout/gnome/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 325 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_clear_error (&_inner_error_);
#line 325 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			return NULL;
#line 3856 "libvirt-machine.c"
		}
	}
#line 325 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (port);
#line 325 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	port = _tmp12_;
#line 326 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp13_ = xmldoc;
#line 326 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp14_ = type;
#line 326 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp15_ = string_to_string (_tmp14_);
#line 326 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp16_ = g_strconcat ("string(/domain/devices/graphics[@type='", _tmp15_, "']/@socket)", NULL);
#line 326 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp17_ = _tmp16_;
#line 326 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp18_ = boxes_extract_xpath (_tmp13_, _tmp17_, FALSE, &_inner_error_);
#line 326 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp19_ = _tmp18_;
#line 326 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (_tmp17_);
#line 326 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp20_ = _tmp19_;
#line 326 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_inner_error_ != NULL) {
#line 326 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_inner_error_->domain == BOXES_ERROR) {
#line 326 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_propagate_error (error, _inner_error_);
#line 326 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (xmldoc);
#line 326 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (host);
#line 326 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (socket);
#line 326 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (port);
#line 326 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (type);
#line 326 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			return NULL;
#line 3899 "libvirt-machine.c"
		} else {
#line 326 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (xmldoc);
#line 326 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (host);
#line 326 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (socket);
#line 326 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (port);
#line 326 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (type);
#line 326 "/extra-data/checkout/gnome/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 326 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_clear_error (&_inner_error_);
#line 326 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			return NULL;
#line 3917 "libvirt-machine.c"
		}
	}
#line 326 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (socket);
#line 326 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	socket = _tmp20_;
#line 327 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp21_ = xmldoc;
#line 327 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp22_ = type;
#line 327 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp23_ = string_to_string (_tmp22_);
#line 327 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp24_ = g_strconcat ("string(/domain/devices/graphics[@type='", _tmp23_, "']/@listen)", NULL);
#line 327 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp25_ = _tmp24_;
#line 327 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp26_ = boxes_extract_xpath (_tmp21_, _tmp25_, FALSE, &_inner_error_);
#line 327 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp27_ = _tmp26_;
#line 327 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (_tmp25_);
#line 327 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp28_ = _tmp27_;
#line 327 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_inner_error_ != NULL) {
#line 327 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_inner_error_->domain == BOXES_ERROR) {
#line 327 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_propagate_error (error, _inner_error_);
#line 327 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (xmldoc);
#line 327 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (host);
#line 327 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (socket);
#line 327 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (port);
#line 327 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (type);
#line 327 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			return NULL;
#line 3960 "libvirt-machine.c"
		} else {
#line 327 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (xmldoc);
#line 327 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (host);
#line 327 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (socket);
#line 327 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (port);
#line 327 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_free0 (type);
#line 327 "/extra-data/checkout/gnome/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 327 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_clear_error (&_inner_error_);
#line 327 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			return NULL;
#line 3978 "libvirt-machine.c"
		}
	}
#line 327 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (host);
#line 327 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	host = _tmp28_;
#line 329 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp30_ = host;
#line 329 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp30_ == NULL) {
#line 329 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp29_ = TRUE;
#line 3991 "libvirt-machine.c"
	} else {
		const gchar* _tmp31_;
#line 329 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp31_ = host;
#line 329 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp29_ = g_strcmp0 (_tmp31_, "") == 0;
#line 3998 "libvirt-machine.c"
	}
#line 329 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp32_ = _tmp29_;
#line 329 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp32_) {
#line 4004 "libvirt-machine.c"
		gchar* _tmp33_;
#line 330 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp33_ = g_strdup ("localhost");
#line 330 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_free0 (host);
#line 330 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		host = _tmp33_;
#line 4012 "libvirt-machine.c"
	}
#line 332 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp34_ = type;
#line 332 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp35_ = _tmp34_;
#line 332 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp37_ = (NULL == _tmp35_) ? 0 : g_quark_from_string (_tmp35_);
#line 332 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp37_ == ((0 != _tmp36_label0) ? _tmp36_label0 : (_tmp36_label0 = g_quark_from_static_string ("spice")))) {
#line 332 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		switch (0) {
#line 4024 "libvirt-machine.c"
			default:
			{
				BoxesBoxConfig* _tmp38_;
				const gchar* _tmp39_;
				const gchar* _tmp40_;
				gint _tmp41_ = 0;
				BoxesSpiceDisplay* _tmp42_;
#line 334 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_tmp38_ = ((BoxesMachine*) self)->config;
#line 334 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_tmp39_ = host;
#line 334 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_tmp40_ = port;
#line 334 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_tmp41_ = atoi (_tmp40_);
#line 334 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_tmp42_ = boxes_spice_display_new (_tmp38_, _tmp39_, _tmp41_, 0);
#line 334 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				result = (BoxesDisplay*) _tmp42_;
#line 334 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_g_free0 (xmldoc);
#line 334 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_g_free0 (host);
#line 334 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_g_free0 (socket);
#line 334 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_g_free0 (port);
#line 334 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_g_free0 (type);
#line 334 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				return result;
#line 4056 "libvirt-machine.c"
			}
		}
	} else if (_tmp37_ == ((0 != _tmp36_label1) ? _tmp36_label1 : (_tmp36_label1 = g_quark_from_static_string ("vnc")))) {
#line 332 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		switch (0) {
#line 4062 "libvirt-machine.c"
			default:
			{
				BoxesBoxConfig* _tmp43_;
				const gchar* _tmp44_;
				const gchar* _tmp45_;
				gint _tmp46_ = 0;
				BoxesVncDisplay* _tmp47_;
#line 337 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_tmp43_ = ((BoxesMachine*) self)->config;
#line 337 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_tmp44_ = host;
#line 337 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_tmp45_ = port;
#line 337 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_tmp46_ = atoi (_tmp45_);
#line 337 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_tmp47_ = boxes_vnc_display_new (_tmp43_, _tmp44_, _tmp46_);
#line 337 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				result = (BoxesDisplay*) _tmp47_;
#line 337 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_g_free0 (xmldoc);
#line 337 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_g_free0 (host);
#line 337 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_g_free0 (socket);
#line 337 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_g_free0 (port);
#line 337 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_g_free0 (type);
#line 337 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				return result;
#line 4094 "libvirt-machine.c"
			}
		}
	} else {
#line 332 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		switch (0) {
#line 4100 "libvirt-machine.c"
			default:
			{
				const gchar* _tmp48_;
				gchar* _tmp49_;
				gchar* _tmp50_;
				GError* _tmp51_;
				GError* _tmp52_;
#line 340 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_tmp48_ = type;
#line 340 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_tmp49_ = g_strconcat ("unsupported display of type ", _tmp48_, NULL);
#line 340 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_tmp50_ = _tmp49_;
#line 340 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_tmp51_ = g_error_new_literal (BOXES_ERROR, BOXES_ERROR_INVALID, _tmp50_);
#line 340 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_tmp52_ = _tmp51_;
#line 340 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_g_free0 (_tmp50_);
#line 340 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_inner_error_ = _tmp52_;
#line 340 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				if (_inner_error_->domain == BOXES_ERROR) {
#line 340 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					g_propagate_error (error, _inner_error_);
#line 340 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (xmldoc);
#line 340 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (host);
#line 340 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (socket);
#line 340 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (port);
#line 340 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (type);
#line 340 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					return NULL;
#line 4138 "libvirt-machine.c"
				} else {
#line 340 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (xmldoc);
#line 340 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (host);
#line 340 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (socket);
#line 340 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (port);
#line 340 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (type);
#line 340 "/extra-data/checkout/gnome/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 340 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					g_clear_error (&_inner_error_);
#line 340 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					return NULL;
#line 4156 "libvirt-machine.c"
				}
			}
		}
	}
#line 320 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (xmldoc);
#line 320 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (host);
#line 320 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (socket);
#line 320 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (port);
#line 320 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (type);
#line 4171 "libvirt-machine.c"
}


static void boxes_libvirt_machine_real_take_screenshot_data_free (gpointer _data) {
	BoxesLibvirtMachineTakeScreenshotData* _data_;
	_data_ = _data;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->result);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->self);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_slice_free (BoxesLibvirtMachineTakeScreenshotData, _data_);
#line 4184 "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 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	self = (BoxesLibvirtMachine*) base;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_slice_new0 (BoxesLibvirtMachineTakeScreenshotData);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_async_result = g_simple_async_result_new (G_OBJECT (self), _callback_, _user_data_, boxes_libvirt_machine_real_take_screenshot);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_simple_async_result_set_op_res_gpointer (_data_->_async_result, _data_, boxes_libvirt_machine_real_take_screenshot_data_free);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->self = _tmp0_;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_real_take_screenshot_co (_data_);
#line 4206 "libvirt-machine.c"
}


static GdkPixbuf* boxes_libvirt_machine_real_take_screenshot_finish (BoxesMachine* base, GAsyncResult* _res_, GError** error) {
	GdkPixbuf* result;
	BoxesLibvirtMachineTakeScreenshotData* _data_;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (g_simple_async_result_propagate_error (G_SIMPLE_ASYNC_RESULT (_res_), error)) {
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return NULL;
#line 4217 "libvirt-machine.c"
	}
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_simple_async_result_get_op_res_gpointer (G_SIMPLE_ASYNC_RESULT (_res_));
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	result = _data_->result;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->result = NULL;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 4227 "libvirt-machine.c"
}


static Block26Data* block26_data_ref (Block26Data* _data26_) {
#line 344 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_atomic_int_inc (&_data26_->_ref_count_);
#line 344 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return _data26_;
#line 4236 "libvirt-machine.c"
}


static void block26_data_unref (void * _userdata_) {
	Block26Data* _data26_;
	_data26_ = (Block26Data*) _userdata_;
#line 344 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (g_atomic_int_dec_and_test (&_data26_->_ref_count_)) {
#line 4245 "libvirt-machine.c"
		BoxesLibvirtMachine * self;
#line 344 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		self = _data26_->self;
#line 344 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (_data26_->stream);
#line 344 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (self);
#line 344 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_slice_free (Block26Data, _data26_);
#line 4255 "libvirt-machine.c"
	}
}


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


static void __lambda146_ (Block26Data* _data26_, GError** error) {
	BoxesLibvirtMachine * self;
	GVirDomain* _tmp0_;
	GVirStream* _tmp1_;
	gchar* _tmp2_ = NULL;
	gchar* _tmp3_;
	GError * _inner_error_ = NULL;
#line 356 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	self = _data26_->self;
#line 357 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = self->priv->_domain;
#line 357 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _data26_->stream;
#line 357 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = gvir_domain_screenshot (_tmp0_, _tmp1_, (guint) 0, (guint) 0, &_inner_error_);
#line 357 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = _tmp2_;
#line 357 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (_tmp3_);
#line 357 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_inner_error_ != NULL) {
#line 357 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_propagate_error (error, _inner_error_);
#line 357 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 4299 "libvirt-machine.c"
	}
}


static void ___lambda146__boxes_run_in_thread_func (gpointer self, GError** error) {
#line 356 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	__lambda146_ (self, error);
#line 4307 "libvirt-machine.c"
}


static gboolean boxes_libvirt_machine_real_take_screenshot_co (BoxesLibvirtMachineTakeScreenshotData* _data_) {
#line 344 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	switch (_data_->_state_) {
#line 344 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case 0:
#line 4316 "libvirt-machine.c"
		goto _state_0;
#line 344 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case 1:
#line 4320 "libvirt-machine.c"
		goto _state_1;
#line 344 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case 2:
#line 4324 "libvirt-machine.c"
		goto _state_2;
#line 344 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case 3:
#line 4328 "libvirt-machine.c"
		goto _state_3;
		default:
#line 344 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_assert_not_reached ();
#line 4333 "libvirt-machine.c"
	}
	_state_0:
#line 344 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data26_ = g_slice_new0 (Block26Data);
#line 344 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data26_->_ref_count_ = 1;
#line 344 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data26_->self = g_object_ref (_data_->self);
#line 344 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data26_->_async_data_ = _data_;
#line 345 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->state = GVIR_DOMAIN_STATE_NONE;
#line 4346 "libvirt-machine.c"
	{
#line 347 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp0_ = _data_->self->priv->_domain;
#line 347 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_state_ = 1;
#line 347 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		gvir_domain_get_info_async (_data_->_tmp0_, NULL, boxes_libvirt_machine_take_screenshot_ready, _data_);
#line 347 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 4356 "libvirt-machine.c"
		_state_1:
#line 347 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp1_ = NULL;
#line 347 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp1_ = gvir_domain_get_info_finish (_data_->_tmp0_, _data_->_res_, &_data_->_inner_error_);
#line 347 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp2_ = _data_->_tmp1_;
#line 347 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_inner_error_ != NULL) {
#line 4366 "libvirt-machine.c"
			goto __catch17_g_error;
		}
#line 347 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp3_ = _data_->_tmp2_;
#line 347 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp4_ = _data_->_tmp3_->state;
#line 347 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->state = _data_->_tmp4_;
#line 347 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		__vala_GVirDomainInfo_free0 (_data_->_tmp3_);
#line 4377 "libvirt-machine.c"
	}
	goto __finally17;
	__catch17_g_error:
	{
#line 346 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_error_ = _data_->_inner_error_;
#line 346 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_inner_error_ = NULL;
#line 349 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp5_ = boxes_collection_item_get_name ((BoxesCollectionItem*) _data_->self);
#line 349 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp6_ = _data_->_tmp5_;
#line 349 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_warning ("libvirt-machine.vala:349: Failed to get information on '%s'", _data_->_tmp6_);
#line 346 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_error_free0 (_data_->_error_);
#line 4394 "libvirt-machine.c"
	}
	__finally17:
#line 346 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_inner_error_ != NULL) {
#line 346 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_simple_async_result_set_from_error (_data_->_async_result, _data_->_inner_error_);
#line 346 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_error_free (_data_->_inner_error_);
#line 346 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		block26_data_unref (_data_->_data26_);
#line 346 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data26_ = NULL;
#line 346 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_state_ == 0) {
#line 346 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_simple_async_result_complete_in_idle (_data_->_async_result);
#line 4411 "libvirt-machine.c"
		} else {
#line 346 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_simple_async_result_complete (_data_->_async_result);
#line 4415 "libvirt-machine.c"
		}
#line 346 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 346 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 4421 "libvirt-machine.c"
	}
#line 352 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp9_ = _data_->state;
#line 352 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_tmp9_ != GVIR_DOMAIN_STATE_RUNNING) {
#line 352 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp10_ = _data_->state;
#line 352 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp8_ = _data_->_tmp10_ != GVIR_DOMAIN_STATE_PAUSED;
#line 4431 "libvirt-machine.c"
	} else {
#line 352 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp8_ = FALSE;
#line 4435 "libvirt-machine.c"
	}
#line 352 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp11_ = _data_->_tmp8_;
#line 352 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_tmp11_) {
#line 352 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp12_ = _data_->state;
#line 352 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp7_ = _data_->_tmp12_ != GVIR_DOMAIN_STATE_PMSUSPENDED;
#line 4445 "libvirt-machine.c"
	} else {
#line 352 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp7_ = FALSE;
#line 4449 "libvirt-machine.c"
	}
#line 352 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp13_ = _data_->_tmp7_;
#line 352 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_tmp13_) {
#line 353 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->result = NULL;
#line 353 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		block26_data_unref (_data_->_data26_);
#line 353 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data26_ = NULL;
#line 353 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_state_ == 0) {
#line 353 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_simple_async_result_complete_in_idle (_data_->_async_result);
#line 4465 "libvirt-machine.c"
		} else {
#line 353 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_simple_async_result_complete (_data_->_async_result);
#line 4469 "libvirt-machine.c"
		}
#line 353 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 353 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 4475 "libvirt-machine.c"
	}
#line 355 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp14_ = _data_->self->priv->_connection;
#line 355 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp15_ = NULL;
#line 355 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp15_ = gvir_connection_get_stream (_data_->_tmp14_, (guint) 0);
#line 355 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data26_->stream = _data_->_tmp15_;
#line 356 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_state_ = 2;
#line 356 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_run_in_thread (___lambda146__boxes_run_in_thread_func, block26_data_ref (_data_->_data26_), block26_data_unref, NULL, boxes_libvirt_machine_take_screenshot_ready, _data_);
#line 356 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return FALSE;
#line 4491 "libvirt-machine.c"
	_state_2:
#line 356 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_run_in_thread_finish (_data_->_res_, &_data_->_inner_error_);
#line 356 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_inner_error_ != NULL) {
#line 356 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_simple_async_result_set_from_error (_data_->_async_result, _data_->_inner_error_);
#line 356 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_error_free (_data_->_inner_error_);
#line 356 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		block26_data_unref (_data_->_data26_);
#line 356 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data26_ = NULL;
#line 356 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_state_ == 0) {
#line 356 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_simple_async_result_complete_in_idle (_data_->_async_result);
#line 4509 "libvirt-machine.c"
		} else {
#line 356 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_simple_async_result_complete (_data_->_async_result);
#line 4513 "libvirt-machine.c"
		}
#line 356 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 356 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 4519 "libvirt-machine.c"
	}
#line 360 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp16_ = gdk_pixbuf_loader_new ();
#line 360 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->loader = _data_->_tmp16_;
#line 361 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp17_ = _data_->_data26_->stream;
#line 361 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp18_ = NULL;
#line 361 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp18_ = g_io_stream_get_input_stream ((GIOStream*) _data_->_tmp17_);
#line 361 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp19_ = _g_object_ref0 (_data_->_tmp18_);
#line 361 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->input_stream = _data_->_tmp19_;
#line 362 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp20_ = NULL;
#line 362 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp20_ = g_new0 (guint8, 65535);
#line 362 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->buffer = _data_->_tmp20_;
#line 362 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->buffer_length1 = 65535;
#line 362 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_buffer_size_ = _data_->buffer_length1;
#line 363 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->length = (gssize) 0;
#line 4547 "libvirt-machine.c"
	{
#line 364 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp21_ = TRUE;
#line 364 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		while (TRUE) {
#line 364 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp22_ = _data_->_tmp21_;
#line 364 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			if (!_data_->_tmp22_) {
#line 367 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp23_ = _data_->length;
#line 367 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				if (!(_data_->_tmp23_ > ((gssize) 0))) {
#line 367 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					break;
#line 4563 "libvirt-machine.c"
				}
			}
#line 364 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp21_ = FALSE;
#line 365 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp24_ = _data_->input_stream;
#line 365 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp25_ = _data_->buffer;
#line 365 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp25__length1 = _data_->buffer_length1;
#line 365 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_state_ = 3;
#line 365 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_input_stream_read_async (_data_->_tmp24_, (void*) _data_->_tmp25_, (gsize) _data_->_tmp25__length1, G_PRIORITY_DEFAULT, NULL, boxes_libvirt_machine_take_screenshot_ready, _data_);
#line 365 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			return FALSE;
#line 4580 "libvirt-machine.c"
			_state_3:
#line 365 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp26_ = 0L;
#line 365 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp26_ = g_input_stream_read_finish (_data_->_tmp24_, _data_->_res_, &_data_->_inner_error_);
#line 365 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp27_ = _data_->_tmp26_;
#line 365 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			if (_data_->_inner_error_ != NULL) {
#line 365 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				g_simple_async_result_set_from_error (_data_->_async_result, _data_->_inner_error_);
#line 365 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				g_error_free (_data_->_inner_error_);
#line 365 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->buffer = (g_free (_data_->buffer), NULL);
#line 365 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_g_object_unref0 (_data_->input_stream);
#line 365 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_g_object_unref0 (_data_->loader);
#line 365 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				block26_data_unref (_data_->_data26_);
#line 365 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_data26_ = NULL;
#line 365 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				if (_data_->_state_ == 0) {
#line 365 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					g_simple_async_result_complete_in_idle (_data_->_async_result);
#line 4608 "libvirt-machine.c"
				} else {
#line 365 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					g_simple_async_result_complete (_data_->_async_result);
#line 4612 "libvirt-machine.c"
				}
#line 365 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				g_object_unref (_data_->_async_result);
#line 365 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				return FALSE;
#line 4618 "libvirt-machine.c"
			}
#line 365 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->length = _data_->_tmp27_;
#line 366 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp28_ = _data_->loader;
#line 366 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp29_ = _data_->buffer;
#line 366 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp29__length1 = _data_->buffer_length1;
#line 366 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp30_ = _data_->length;
#line 366 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			gdk_pixbuf_loader_write (_data_->_tmp28_, _data_->_tmp29_ + 0, (gsize) (_data_->_tmp30_ - 0), &_data_->_inner_error_);
#line 366 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			if (_data_->_inner_error_ != NULL) {
#line 366 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				g_simple_async_result_set_from_error (_data_->_async_result, _data_->_inner_error_);
#line 366 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				g_error_free (_data_->_inner_error_);
#line 366 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->buffer = (g_free (_data_->buffer), NULL);
#line 366 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_g_object_unref0 (_data_->input_stream);
#line 366 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_g_object_unref0 (_data_->loader);
#line 366 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				block26_data_unref (_data_->_data26_);
#line 366 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_data26_ = NULL;
#line 366 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				if (_data_->_state_ == 0) {
#line 366 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					g_simple_async_result_complete_in_idle (_data_->_async_result);
#line 4652 "libvirt-machine.c"
				} else {
#line 366 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					g_simple_async_result_complete (_data_->_async_result);
#line 4656 "libvirt-machine.c"
				}
#line 366 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				g_object_unref (_data_->_async_result);
#line 366 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				return FALSE;
#line 4662 "libvirt-machine.c"
			}
		}
	}
#line 368 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp31_ = _data_->loader;
#line 368 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	gdk_pixbuf_loader_close (_data_->_tmp31_, &_data_->_inner_error_);
#line 368 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_inner_error_ != NULL) {
#line 368 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_simple_async_result_set_from_error (_data_->_async_result, _data_->_inner_error_);
#line 368 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_error_free (_data_->_inner_error_);
#line 368 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->buffer = (g_free (_data_->buffer), NULL);
#line 368 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (_data_->input_stream);
#line 368 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (_data_->loader);
#line 368 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		block26_data_unref (_data_->_data26_);
#line 368 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_data26_ = NULL;
#line 368 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_state_ == 0) {
#line 368 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_simple_async_result_complete_in_idle (_data_->_async_result);
#line 4690 "libvirt-machine.c"
		} else {
#line 368 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_simple_async_result_complete (_data_->_async_result);
#line 4694 "libvirt-machine.c"
		}
#line 368 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 368 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 4700 "libvirt-machine.c"
	}
#line 370 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp32_ = _data_->loader;
#line 370 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp33_ = NULL;
#line 370 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp33_ = gdk_pixbuf_loader_get_pixbuf (_data_->_tmp32_);
#line 370 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp34_ = _g_object_ref0 (_data_->_tmp33_);
#line 370 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->result = _data_->_tmp34_;
#line 370 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->buffer = (g_free (_data_->buffer), NULL);
#line 370 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->input_stream);
#line 370 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->loader);
#line 370 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	block26_data_unref (_data_->_data26_);
#line 370 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data26_ = NULL;
#line 370 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_state_ == 0) {
#line 370 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_simple_async_result_complete_in_idle (_data_->_async_result);
#line 4726 "libvirt-machine.c"
	} else {
#line 370 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_simple_async_result_complete (_data_->_async_result);
#line 4730 "libvirt-machine.c"
	}
#line 370 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_object_unref (_data_->_async_result);
#line 370 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return FALSE;
#line 344 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->buffer = (g_free (_data_->buffer), NULL);
#line 344 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->input_stream);
#line 344 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->loader);
#line 344 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	block26_data_unref (_data_->_data26_);
#line 344 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_data26_ = NULL;
#line 344 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_state_ == 0) {
#line 344 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_simple_async_result_complete_in_idle (_data_->_async_result);
#line 4750 "libvirt-machine.c"
	} else {
#line 344 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_simple_async_result_complete (_data_->_async_result);
#line 4754 "libvirt-machine.c"
	}
#line 344 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_object_unref (_data_->_async_result);
#line 344 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return FALSE;
#line 4760 "libvirt-machine.c"
}


static Block27Data* block27_data_ref (Block27Data* _data27_) {
#line 383 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_atomic_int_inc (&_data27_->_ref_count_);
#line 383 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return _data27_;
#line 4769 "libvirt-machine.c"
}


static void block27_data_unref (void * _userdata_) {
	Block27Data* _data27_;
	_data27_ = (Block27Data*) _userdata_;
#line 383 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (g_atomic_int_dec_and_test (&_data27_->_ref_count_)) {
#line 4778 "libvirt-machine.c"
		BoxesLibvirtMachine * self;
#line 383 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		self = _data27_->self;
#line 383 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (_data27_->domain);
#line 383 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (self);
#line 383 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_slice_free (Block27Data, _data27_);
#line 4788 "libvirt-machine.c"
	}
}


static void ___lambda147_ (Block27Data* _data27_, GError** error) {
	BoxesLibvirtMachine * self;
	GVirStorageVol* _tmp6_;
	GError * _inner_error_ = NULL;
#line 388 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	self = _data27_->self;
#line 4799 "libvirt-machine.c"
	{
		GVirDomain* _tmp0_;
#line 391 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp0_ = _data27_->domain;
#line 391 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		gvir_domain_delete (_tmp0_, (guint) GVIR_DOMAIN_DELETE_SAVED_STATE, &_inner_error_);
#line 391 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_inner_error_ != NULL) {
#line 4808 "libvirt-machine.c"
			goto __catch18_g_error;
		}
	}
	goto __finally18;
	__catch18_g_error:
	{
		GError* err = NULL;
		GError* _tmp1_;
		const gchar* _tmp2_;
#line 389 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		err = _inner_error_;
#line 389 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_inner_error_ = NULL;
#line 393 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp1_ = err;
#line 393 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp2_ = _tmp1_->message;
#line 393 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_warning ("libvirt-machine.vala:393: %s", _tmp2_);
#line 389 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_error_free0 (err);
#line 4830 "libvirt-machine.c"
	}
	__finally18:
#line 389 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_inner_error_ != NULL) {
#line 389 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_propagate_error (error, _inner_error_);
#line 389 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 4839 "libvirt-machine.c"
	}
	{
		GVirDomain* _tmp3_;
#line 398 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp3_ = _data27_->domain;
#line 398 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		gvir_domain_stop (_tmp3_, (guint) 0, &_inner_error_);
#line 398 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_inner_error_ != NULL) {
#line 4849 "libvirt-machine.c"
			goto __catch19_g_error;
		}
	}
	goto __finally19;
	__catch19_g_error:
	{
		GError* err = NULL;
		GError* _tmp4_;
		const gchar* _tmp5_;
#line 396 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		err = _inner_error_;
#line 396 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_inner_error_ = NULL;
#line 400 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp4_ = err;
#line 400 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp5_ = _tmp4_->message;
#line 400 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_debug ("libvirt-machine.vala:400: %s", _tmp5_);
#line 396 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_error_free0 (err);
#line 4871 "libvirt-machine.c"
	}
	__finally19:
#line 396 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_inner_error_ != NULL) {
#line 396 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_propagate_error (error, _inner_error_);
#line 396 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 4880 "libvirt-machine.c"
	}
#line 404 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp6_ = self->priv->_storage_volume;
#line 404 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp6_ != NULL) {
#line 4886 "libvirt-machine.c"
		{
			GVirStorageVol* _tmp7_;
#line 406 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_tmp7_ = self->priv->_storage_volume;
#line 406 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			gvir_storage_vol_delete (_tmp7_, (guint) 0, &_inner_error_);
#line 406 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			if (_inner_error_ != NULL) {
#line 4895 "libvirt-machine.c"
				goto __catch20_g_error;
			}
		}
		goto __finally20;
		__catch20_g_error:
		{
			GError* err = NULL;
			GError* _tmp8_;
			const gchar* _tmp9_;
#line 405 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			err = _inner_error_;
#line 405 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_inner_error_ = NULL;
#line 408 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_tmp8_ = err;
#line 408 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_tmp9_ = _tmp8_->message;
#line 408 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_warning ("libvirt-machine.vala:408: %s", _tmp9_);
#line 405 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_error_free0 (err);
#line 4917 "libvirt-machine.c"
		}
		__finally20:
#line 405 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_inner_error_ != NULL) {
#line 405 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_propagate_error (error, _inner_error_);
#line 405 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			return;
#line 4926 "libvirt-machine.c"
		}
	}
}


static void ____lambda147__boxes_run_in_thread_func (gpointer self, GError** error) {
#line 388 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	___lambda147_ (self, error);
#line 4935 "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 373 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	self = (BoxesLibvirtMachine*) base;
#line 374 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = boxes_collection_item_get_name ((BoxesCollectionItem*) self);
#line 374 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _tmp0_;
#line 374 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = g_strconcat ("delete libvirt machine: ", _tmp1_, NULL);
#line 374 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = _tmp2_;
#line 374 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_debug ("libvirt-machine.vala:374: %s", _tmp3_);
#line 374 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_free0 (_tmp3_);
#line 375 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp4_ = by_user;
#line 375 "/extra-data/checkout/gnome/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 377 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_set_stats_enable (self, FALSE);
#line 378 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp5_ = self->priv->shutdown_timeout;
#line 378 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp5_ != ((guint) 0)) {
#line 4972 "libvirt-machine.c"
		guint _tmp6_;
#line 379 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp6_ = self->priv->shutdown_timeout;
#line 379 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_source_remove (_tmp6_);
#line 380 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		self->priv->shutdown_timeout = (guint) 0;
#line 4980 "libvirt-machine.c"
	}
#line 383 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp7_ = by_user;
#line 383 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp7_) {
#line 4986 "libvirt-machine.c"
		Block27Data* _data27_;
		GVirDomain* _tmp8_;
		GVirDomain* _tmp9_;
#line 383 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data27_ = g_slice_new0 (Block27Data);
#line 383 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data27_->_ref_count_ = 1;
#line 383 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data27_->self = g_object_ref (self);
#line 384 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp8_ = self->priv->_domain;
#line 384 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp9_ = _g_object_ref0 (_tmp8_);
#line 384 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data27_->domain = _tmp9_;
#line 388 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_run_in_thread (____lambda147__boxes_run_in_thread_func, block27_data_ref (_data27_), block27_data_unref, NULL, NULL, NULL);
#line 383 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		block27_data_unref (_data27_);
#line 383 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data27_ = NULL;
#line 5008 "libvirt-machine.c"
	}
}


static void boxes_libvirt_machine_real_save_real_data_free (gpointer _data) {
	BoxesLibvirtMachineSaveRealData* _data_;
	_data_ = _data;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->self);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_slice_free (BoxesLibvirtMachineSaveRealData, _data_);
#line 5020 "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 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	self = (BoxesLibvirtMachine*) base;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_slice_new0 (BoxesLibvirtMachineSaveRealData);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_async_result = g_simple_async_result_new (G_OBJECT (self), _callback_, _user_data_, boxes_libvirt_machine_real_save_real);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_simple_async_result_set_op_res_gpointer (_data_->_async_result, _data_, boxes_libvirt_machine_real_save_real_data_free);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->self = _tmp0_;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_real_save_real_co (_data_);
#line 5042 "libvirt-machine.c"
}


static void boxes_libvirt_machine_real_save_real_finish (BoxesMachine* base, GAsyncResult* _res_, GError** error) {
	BoxesLibvirtMachineSaveRealData* _data_;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (g_simple_async_result_propagate_error (G_SIMPLE_ASYNC_RESULT (_res_), error)) {
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 5052 "libvirt-machine.c"
	}
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_simple_async_result_get_op_res_gpointer (G_SIMPLE_ASYNC_RESULT (_res_));
#line 5056 "libvirt-machine.c"
}


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


static gboolean boxes_libvirt_machine_real_save_real_co (BoxesLibvirtMachineSaveRealData* _data_) {
#line 414 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	switch (_data_->_state_) {
#line 414 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case 0:
#line 5079 "libvirt-machine.c"
		goto _state_0;
#line 414 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case 1:
#line 5083 "libvirt-machine.c"
		goto _state_1;
		default:
#line 414 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_assert_not_reached ();
#line 5088 "libvirt-machine.c"
	}
	_state_0:
#line 415 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp0_ = _data_->self->priv->_domain;
#line 415 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_state_ = 1;
#line 415 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	gvir_domain_save_async (_data_->_tmp0_, (guint) 0, NULL, boxes_libvirt_machine_save_real_ready, _data_);
#line 415 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return FALSE;
#line 5099 "libvirt-machine.c"
	_state_1:
#line 415 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	gvir_domain_save_finish (_data_->_tmp0_, _data_->_res_, &_data_->_inner_error_);
#line 415 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_inner_error_ != NULL) {
#line 415 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_simple_async_result_set_from_error (_data_->_async_result, _data_->_inner_error_);
#line 415 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_error_free (_data_->_inner_error_);
#line 415 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_state_ == 0) {
#line 415 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_simple_async_result_complete_in_idle (_data_->_async_result);
#line 5113 "libvirt-machine.c"
		} else {
#line 415 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_simple_async_result_complete (_data_->_async_result);
#line 5117 "libvirt-machine.c"
		}
#line 415 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 415 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 5123 "libvirt-machine.c"
	}
#line 414 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_state_ == 0) {
#line 414 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_simple_async_result_complete_in_idle (_data_->_async_result);
#line 5129 "libvirt-machine.c"
	} else {
#line 414 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_simple_async_result_complete (_data_->_async_result);
#line 5133 "libvirt-machine.c"
	}
#line 414 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_object_unref (_data_->_async_result);
#line 414 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return FALSE;
#line 5139 "libvirt-machine.c"
}


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


void boxes_libvirt_machine_suspend (BoxesLibvirtMachine* self, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	BoxesLibvirtMachineSuspendData* _data_;
	BoxesLibvirtMachine* _tmp0_;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_slice_new0 (BoxesLibvirtMachineSuspendData);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_async_result = g_simple_async_result_new (G_OBJECT (self), _callback_, _user_data_, boxes_libvirt_machine_suspend);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_simple_async_result_set_op_res_gpointer (_data_->_async_result, _data_, boxes_libvirt_machine_suspend_data_free);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->self = _tmp0_;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_suspend_co (_data_);
#line 5169 "libvirt-machine.c"
}


void boxes_libvirt_machine_suspend_finish (BoxesLibvirtMachine* self, GAsyncResult* _res_, GError** error) {
	BoxesLibvirtMachineSuspendData* _data_;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (g_simple_async_result_propagate_error (G_SIMPLE_ASYNC_RESULT (_res_), error)) {
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 5179 "libvirt-machine.c"
	}
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_simple_async_result_get_op_res_gpointer (G_SIMPLE_ASYNC_RESULT (_res_));
#line 5183 "libvirt-machine.c"
}


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


static gboolean boxes_libvirt_machine_suspend_co (BoxesLibvirtMachineSuspendData* _data_) {
#line 418 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	switch (_data_->_state_) {
#line 418 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case 0:
#line 5206 "libvirt-machine.c"
		goto _state_0;
#line 418 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case 1:
#line 5210 "libvirt-machine.c"
		goto _state_1;
		default:
#line 418 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_assert_not_reached ();
#line 5215 "libvirt-machine.c"
	}
	_state_0:
#line 419 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp0_ = boxes_libvirt_machine_get_save_on_quit (_data_->self);
#line 419 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp1_ = _data_->_tmp0_;
#line 419 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_tmp1_) {
#line 420 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_state_ = 1;
#line 420 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_machine_save ((BoxesMachine*) _data_->self, boxes_libvirt_machine_suspend_ready, _data_);
#line 420 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 5230 "libvirt-machine.c"
		_state_1:
#line 420 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_machine_save_finish ((BoxesMachine*) _data_->self, _data_->_res_, &_data_->_inner_error_);
#line 420 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_inner_error_ != NULL) {
#line 420 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_simple_async_result_set_from_error (_data_->_async_result, _data_->_inner_error_);
#line 420 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_error_free (_data_->_inner_error_);
#line 420 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			if (_data_->_state_ == 0) {
#line 420 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				g_simple_async_result_complete_in_idle (_data_->_async_result);
#line 5244 "libvirt-machine.c"
			} else {
#line 420 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				g_simple_async_result_complete (_data_->_async_result);
#line 5248 "libvirt-machine.c"
			}
#line 420 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_object_unref (_data_->_async_result);
#line 420 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			return FALSE;
#line 5254 "libvirt-machine.c"
		}
	} else {
#line 422 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp2_ = _data_->self->priv->_domain;
#line 422 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		gvir_domain_suspend (_data_->_tmp2_, &_data_->_inner_error_);
#line 422 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_inner_error_ != NULL) {
#line 422 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_simple_async_result_set_from_error (_data_->_async_result, _data_->_inner_error_);
#line 422 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_error_free (_data_->_inner_error_);
#line 422 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			if (_data_->_state_ == 0) {
#line 422 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				g_simple_async_result_complete_in_idle (_data_->_async_result);
#line 5271 "libvirt-machine.c"
			} else {
#line 422 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				g_simple_async_result_complete (_data_->_async_result);
#line 5275 "libvirt-machine.c"
			}
#line 422 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_object_unref (_data_->_async_result);
#line 422 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			return FALSE;
#line 5281 "libvirt-machine.c"
		}
	}
#line 418 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_state_ == 0) {
#line 418 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_simple_async_result_complete_in_idle (_data_->_async_result);
#line 5288 "libvirt-machine.c"
	} else {
#line 418 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_simple_async_result_complete (_data_->_async_result);
#line 5292 "libvirt-machine.c"
	}
#line 418 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_object_unref (_data_->_async_result);
#line 418 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return FALSE;
#line 5298 "libvirt-machine.c"
}


void boxes_libvirt_machine_force_shutdown (BoxesLibvirtMachine* self, gboolean confirm) {
	gboolean _tmp0_;
	const gchar* _tmp9_;
	const gchar* _tmp10_;
	GError * _inner_error_ = NULL;
#line 425 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (self != NULL);
#line 426 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = confirm;
#line 426 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_tmp0_) {
#line 5313 "libvirt-machine.c"
		BoxesApp* _tmp1_;
		GtkApplicationWindow* _tmp2_;
		const gchar* _tmp3_ = NULL;
		GtkMessageDialog* _tmp4_;
		GtkMessageDialog* dialog;
		GtkMessageDialog* _tmp5_;
		gint _tmp6_ = 0;
		gint response;
		GtkMessageDialog* _tmp7_;
		gint _tmp8_;
#line 427 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp1_ = boxes_app_app;
#line 427 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp2_ = _tmp1_->window;
#line 427 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp3_ = _ ("When you force shutdown, the box may lose data.");
#line 427 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp4_ = (GtkMessageDialog*) gtk_message_dialog_new ((GtkWindow*) _tmp2_, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_QUESTION, GTK_BUTTONS_OK_CANCEL, _tmp3_);
#line 427 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_object_ref_sink (_tmp4_);
#line 427 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		dialog = _tmp4_;
#line 432 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp5_ = dialog;
#line 432 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp6_ = gtk_dialog_run ((GtkDialog*) _tmp5_);
#line 432 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		response = _tmp6_;
#line 433 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp7_ = dialog;
#line 433 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		gtk_widget_destroy ((GtkWidget*) _tmp7_);
#line 435 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp8_ = response;
#line 435 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_tmp8_ != ((gint) GTK_RESPONSE_OK)) {
#line 436 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_g_object_unref0 (dialog);
#line 436 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			return;
#line 5354 "libvirt-machine.c"
		}
#line 426 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_object_unref0 (dialog);
#line 5358 "libvirt-machine.c"
	}
#line 439 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp9_ = boxes_collection_item_get_name ((BoxesCollectionItem*) self);
#line 439 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp10_ = _tmp9_;
#line 439 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_debug ("libvirt-machine.vala:439: Force shutdown '%s'..", _tmp10_);
#line 5366 "libvirt-machine.c"
	{
		GVirDomain* _tmp11_;
#line 441 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		self->priv->force_stopped = TRUE;
#line 442 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp11_ = self->priv->_domain;
#line 442 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		gvir_domain_stop (_tmp11_, (guint) 0, &_inner_error_);
#line 442 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_inner_error_ != NULL) {
#line 5377 "libvirt-machine.c"
			goto __catch21_g_error;
		}
	}
	goto __finally21;
	__catch21_g_error:
	{
		GError* _error_ = NULL;
		GVirDomain* _tmp12_;
		const gchar* _tmp13_ = NULL;
		GError* _tmp14_;
		const gchar* _tmp15_;
#line 440 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_error_ = _inner_error_;
#line 440 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_inner_error_ = NULL;
#line 444 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp12_ = self->priv->_domain;
#line 444 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp13_ = gvir_domain_get_name (_tmp12_);
#line 444 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp14_ = _error_;
#line 444 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp15_ = _tmp14_->message;
#line 444 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_warning ("libvirt-machine.vala:444: Failed to shutdown '%s': %s", _tmp13_, _tmp15_);
#line 440 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_error_free0 (_error_);
#line 5405 "libvirt-machine.c"
	}
	__finally21:
#line 440 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_inner_error_ != NULL) {
#line 440 "/extra-data/checkout/gnome/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 440 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_clear_error (&_inner_error_);
#line 440 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 5416 "libvirt-machine.c"
	}
}


void boxes_libvirt_machine_try_shutdown (BoxesLibvirtMachine* self) {
	GError * _inner_error_ = NULL;
#line 448 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (self != NULL);
#line 5425 "libvirt-machine.c"
	{
		GVirDomain* _tmp0_;
#line 450 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp0_ = self->priv->_domain;
#line 450 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		gvir_domain_shutdown (_tmp0_, (guint) 0, &_inner_error_);
#line 450 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_inner_error_ != NULL) {
#line 5434 "libvirt-machine.c"
			goto __catch22_g_error;
		}
	}
	goto __finally22;
	__catch22_g_error:
	{
		GError* _error_ = NULL;
		GVirDomain* _tmp1_;
		const gchar* _tmp2_ = NULL;
		GError* _tmp3_;
		const gchar* _tmp4_;
#line 449 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_error_ = _inner_error_;
#line 449 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_inner_error_ = NULL;
#line 452 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp1_ = self->priv->_domain;
#line 452 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp2_ = gvir_domain_get_name (_tmp1_);
#line 452 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp3_ = _error_;
#line 452 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp4_ = _tmp3_->message;
#line 452 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_warning ("libvirt-machine.vala:452: Failed to reboot '%s': %s", _tmp2_, _tmp4_);
#line 449 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_g_error_free0 (_error_);
#line 5462 "libvirt-machine.c"
	}
	__finally22:
#line 449 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_inner_error_ != NULL) {
#line 449 "/extra-data/checkout/gnome/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 449 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_clear_error (&_inner_error_);
#line 449 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 5473 "libvirt-machine.c"
	}
}


GVirDomainDisk* boxes_libvirt_machine_get_domain_disk (BoxesLibvirtMachine* self, GError** error) {
	GVirDomainDisk* result = NULL;
	gpointer _tmp0_;
	GVirDomainDisk* _tmp1_;
	GVirDomainDisk* disk;
	GVirConfigDomain* _tmp2_;
	GList* _tmp3_ = NULL;
	GError * _inner_error_ = NULL;
#line 456 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 457 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = NULL;
#line 457 "/extra-data/checkout/gnome/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 457 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	disk = _tmp1_;
#line 459 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = self->priv->_domain_config;
#line 459 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = gvir_config_domain_get_devices (_tmp2_);
#line 5498 "libvirt-machine.c"
	{
		GList* device_config_collection = NULL;
		GList* device_config_it = NULL;
#line 459 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		device_config_collection = _tmp3_;
#line 459 "/extra-data/checkout/gnome/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 5506 "libvirt-machine.c"
			GVirConfigDomainDevice* _tmp4_;
			GVirConfigDomainDevice* device_config = NULL;
#line 459 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_tmp4_ = _g_object_ref0 ((GVirConfigDomainDevice*) device_config_it->data);
#line 459 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			device_config = _tmp4_;
#line 5513 "libvirt-machine.c"
			{
				GVirConfigDomainDevice* _tmp5_;
#line 460 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_tmp5_ = device_config;
#line 460 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				if (G_TYPE_CHECK_INSTANCE_TYPE (_tmp5_, gvir_config_domain_disk_get_type ())) {
#line 5520 "libvirt-machine.c"
					GVirConfigDomainDevice* _tmp6_;
					GVirConfigDomainDisk* _tmp7_;
					GVirConfigDomainDisk* disk_config;
					GVirConfigDomainDisk* _tmp8_;
					GVirConfigDomainDiskGuestDeviceType _tmp9_ = 0;
					GVirConfigDomainDiskGuestDeviceType disk_type;
					const gchar* _tmp10_ = NULL;
					GVirStorageVol* _tmp11_;
					const gchar* _tmp14_;
					gchar* _tmp15_;
					gchar* storage_volume_path;
					gboolean _tmp16_ = FALSE;
					GVirConfigDomainDiskGuestDeviceType _tmp17_;
					gboolean _tmp21_;
#line 461 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_tmp6_ = device_config;
#line 461 "/extra-data/checkout/gnome/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 461 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					disk_config = _tmp7_;
#line 462 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_tmp8_ = disk_config;
#line 462 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_tmp9_ = gvir_config_domain_disk_get_guest_device_type (_tmp8_);
#line 462 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					disk_type = _tmp9_;
#line 463 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_tmp11_ = self->priv->_storage_volume;
#line 463 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					if (_tmp11_ != NULL) {
#line 5551 "libvirt-machine.c"
						GVirStorageVol* _tmp12_;
						const gchar* _tmp13_ = NULL;
#line 463 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
						_tmp12_ = self->priv->_storage_volume;
#line 463 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
						_tmp13_ = gvir_storage_vol_get_path (_tmp12_, &_inner_error_);
#line 463 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
						_tmp10_ = _tmp13_;
#line 463 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
						if (_inner_error_ != NULL) {
#line 463 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
							g_propagate_error (error, _inner_error_);
#line 463 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
							_g_object_unref0 (disk_config);
#line 463 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
							_g_object_unref0 (device_config);
#line 463 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
							__g_list_free__g_object_unref0_0 (device_config_collection);
#line 463 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
							_g_object_unref0 (disk);
#line 463 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
							return NULL;
#line 5574 "libvirt-machine.c"
						}
					} else {
#line 463 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
						_tmp10_ = NULL;
#line 5579 "libvirt-machine.c"
					}
#line 463 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_tmp14_ = _tmp10_;
#line 463 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_tmp15_ = g_strdup (_tmp14_);
#line 463 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					storage_volume_path = _tmp15_;
#line 466 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_tmp17_ = disk_type;
#line 466 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					if (_tmp17_ == GVIR_CONFIG_DOMAIN_DISK_GUEST_DEVICE_DISK) {
#line 5591 "libvirt-machine.c"
						GVirConfigDomainDisk* _tmp18_;
						const gchar* _tmp19_ = NULL;
						const gchar* _tmp20_;
#line 467 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
						_tmp18_ = disk_config;
#line 467 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
						_tmp19_ = gvir_config_domain_disk_get_source (_tmp18_);
#line 467 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
						_tmp20_ = storage_volume_path;
#line 467 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
						_tmp16_ = g_strcmp0 (_tmp19_, _tmp20_) == 0;
#line 5603 "libvirt-machine.c"
					} else {
#line 466 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
						_tmp16_ = FALSE;
#line 5607 "libvirt-machine.c"
					}
#line 466 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_tmp21_ = _tmp16_;
#line 466 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					if (_tmp21_) {
#line 5613 "libvirt-machine.c"
						GVirDomain* _tmp22_;
						GVirConfigDomainDevice* _tmp23_;
						GObject* _tmp24_ = NULL;
						GObject* _tmp25_;
						GVirDomainDisk* _tmp26_;
#line 468 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
						_tmp22_ = self->priv->_domain;
#line 468 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
						_tmp23_ = device_config;
#line 468 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
						_tmp24_ = g_object_new (gvir_domain_disk_get_type (), "domain", _tmp22_, "config", _tmp23_, NULL);
#line 468 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
						_tmp25_ = G_IS_INITIALLY_UNOWNED (_tmp24_) ? g_object_ref_sink (_tmp24_) : _tmp24_;
#line 468 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
						_tmp26_ = G_TYPE_CHECK_INSTANCE_TYPE (_tmp25_, gvir_domain_disk_get_type ()) ? ((GVirDomainDisk*) _tmp25_) : NULL;
#line 468 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
						if (_tmp26_ == NULL) {
#line 468 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
							_g_object_unref0 (_tmp25_);
#line 5633 "libvirt-machine.c"
						}
#line 468 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
						_g_object_unref0 (disk);
#line 468 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
						disk = _tmp26_;
#line 472 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
						_g_free0 (storage_volume_path);
#line 472 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
						_g_object_unref0 (disk_config);
#line 472 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
						_g_object_unref0 (device_config);
#line 472 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
						break;
#line 5647 "libvirt-machine.c"
					}
#line 466 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_g_free0 (storage_volume_path);
#line 466 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_g_object_unref0 (disk_config);
#line 5653 "libvirt-machine.c"
				}
#line 460 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_g_object_unref0 (device_config);
#line 5657 "libvirt-machine.c"
			}
		}
#line 460 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		__g_list_free__g_object_unref0_0 (device_config_collection);
#line 5662 "libvirt-machine.c"
	}
#line 477 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	result = disk;
#line 477 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 5668 "libvirt-machine.c"
}


static GVirDomainInterface* boxes_libvirt_machine_get_domain_network_interface (BoxesLibvirtMachine* self, GError** error) {
	GVirDomainInterface* result = NULL;
	gpointer _tmp0_;
	GVirDomainInterface* _tmp1_;
	GVirDomainInterface* net;
	GVirConfigDomain* _tmp2_;
	GList* _tmp3_ = NULL;
#line 480 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 481 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = NULL;
#line 481 "/extra-data/checkout/gnome/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 481 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	net = _tmp1_;
#line 484 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = self->priv->_domain_config;
#line 484 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = gvir_config_domain_get_devices (_tmp2_);
#line 5691 "libvirt-machine.c"
	{
		GList* device_config_collection = NULL;
		GList* device_config_it = NULL;
#line 484 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		device_config_collection = _tmp3_;
#line 484 "/extra-data/checkout/gnome/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 5699 "libvirt-machine.c"
			GVirConfigDomainDevice* _tmp4_;
			GVirConfigDomainDevice* device_config = NULL;
#line 484 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_tmp4_ = _g_object_ref0 ((GVirConfigDomainDevice*) device_config_it->data);
#line 484 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			device_config = _tmp4_;
#line 5706 "libvirt-machine.c"
			{
				GVirConfigDomainDevice* _tmp5_;
#line 485 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_tmp5_ = device_config;
#line 485 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				if (G_TYPE_CHECK_INSTANCE_TYPE (_tmp5_, gvir_config_domain_interface_get_type ())) {
#line 5713 "libvirt-machine.c"
					GVirDomain* _tmp6_;
					GVirConfigDomainDevice* _tmp7_;
					GObject* _tmp8_ = NULL;
					GObject* _tmp9_;
					GVirDomainInterface* _tmp10_;
#line 486 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_tmp6_ = self->priv->_domain;
#line 486 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_tmp7_ = device_config;
#line 486 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_tmp8_ = g_object_new (gvir_domain_interface_get_type (), "domain", _tmp6_, "config", _tmp7_, NULL);
#line 486 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_tmp9_ = G_IS_INITIALLY_UNOWNED (_tmp8_) ? g_object_ref_sink (_tmp8_) : _tmp8_;
#line 486 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_tmp10_ = G_TYPE_CHECK_INSTANCE_TYPE (_tmp9_, gvir_domain_interface_get_type ()) ? ((GVirDomainInterface*) _tmp9_) : NULL;
#line 486 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					if (_tmp10_ == NULL) {
#line 486 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
						_g_object_unref0 (_tmp9_);
#line 5733 "libvirt-machine.c"
					}
#line 486 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_g_object_unref0 (net);
#line 486 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					net = _tmp10_;
#line 489 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_g_object_unref0 (device_config);
#line 489 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					break;
#line 5743 "libvirt-machine.c"
				}
#line 485 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_g_object_unref0 (device_config);
#line 5747 "libvirt-machine.c"
			}
		}
#line 485 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		__g_list_free__g_object_unref0_0 (device_config_collection);
#line 5752 "libvirt-machine.c"
	}
#line 493 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	result = net;
#line 493 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 5758 "libvirt-machine.c"
}


static GVirDomainStartFlags boxes_libvirt_machine_connect_flags_to_gvir (BoxesLibvirtMachine* self, BoxesMachineConnectFlags flags) {
	GVirDomainStartFlags result = 0;
	GVirDomainStartFlags gvir_flags;
	BoxesMachineConnectFlags _tmp0_;
#line 496 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_return_val_if_fail (self != NULL, 0);
#line 497 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	gvir_flags = 0;
#line 498 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = flags;
#line 498 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if ((_tmp0_ & BOXES_MACHINE_CONNECT_FLAGS_IGNORE_SAVED_STATE) == BOXES_MACHINE_CONNECT_FLAGS_IGNORE_SAVED_STATE) {
#line 5774 "libvirt-machine.c"
		GVirDomainStartFlags _tmp1_;
#line 499 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_tmp1_ = gvir_flags;
#line 499 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		gvir_flags = _tmp1_ | GVIR_DOMAIN_START_FORCE_BOOT;
#line 5780 "libvirt-machine.c"
	}
#line 500 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	result = gvir_flags;
#line 500 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 5786 "libvirt-machine.c"
}


static void boxes_libvirt_machine_start_data_free (gpointer _data) {
	BoxesLibvirtMachineStartData* _data_;
	_data_ = _data;
#line 480 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->cancellable);
#line 480 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->self);
#line 480 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_slice_free (BoxesLibvirtMachineStartData, _data_);
#line 5799 "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 480 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_slice_new0 (BoxesLibvirtMachineStartData);
#line 480 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_async_result = g_simple_async_result_new (G_OBJECT (self), _callback_, _user_data_, boxes_libvirt_machine_start);
#line 480 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_simple_async_result_set_op_res_gpointer (_data_->_async_result, _data_, boxes_libvirt_machine_start_data_free);
#line 480 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 480 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->self = _tmp0_;
#line 480 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = flags;
#line 480 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->flags = _tmp1_;
#line 480 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = cancellable;
#line 480 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = _g_object_ref0 (_tmp2_);
#line 480 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (_data_->cancellable);
#line 480 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->cancellable = _tmp3_;
#line 480 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_start_co (_data_);
#line 5833 "libvirt-machine.c"
}


void boxes_libvirt_machine_start_finish (BoxesLibvirtMachine* self, GAsyncResult* _res_, GError** error) {
	BoxesLibvirtMachineStartData* _data_;
#line 480 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (g_simple_async_result_propagate_error (G_SIMPLE_ASYNC_RESULT (_res_), error)) {
#line 480 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return;
#line 5843 "libvirt-machine.c"
	}
#line 480 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_ = g_simple_async_result_get_op_res_gpointer (G_SIMPLE_ASYNC_RESULT (_res_));
#line 5847 "libvirt-machine.c"
}


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


static gpointer _g_error_copy0 (gpointer self) {
#line 528 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return self ? g_error_copy (self) : NULL;
#line 5868 "libvirt-machine.c"
}


static gboolean boxes_libvirt_machine_start_co (BoxesLibvirtMachineStartData* _data_) {
#line 503 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	switch (_data_->_state_) {
#line 503 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case 0:
#line 5877 "libvirt-machine.c"
		goto _state_0;
#line 503 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case 1:
#line 5881 "libvirt-machine.c"
		goto _state_1;
#line 503 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case 2:
#line 5885 "libvirt-machine.c"
		goto _state_2;
#line 503 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case 3:
#line 5889 "libvirt-machine.c"
		goto _state_3;
		default:
#line 503 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_assert_not_reached ();
#line 5894 "libvirt-machine.c"
	}
	_state_0:
#line 504 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp0_ = boxes_machine_get_state ((BoxesMachine*) _data_->self);
#line 504 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp1_ = _data_->_tmp0_;
#line 504 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_tmp1_ == BOXES_MACHINE_MACHINE_STATE_RUNNING) {
#line 505 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_state_ == 0) {
#line 505 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_simple_async_result_complete_in_idle (_data_->_async_result);
#line 5907 "libvirt-machine.c"
		} else {
#line 505 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_simple_async_result_complete (_data_->_async_result);
#line 5911 "libvirt-machine.c"
		}
#line 505 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_object_unref (_data_->_async_result);
#line 505 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 5917 "libvirt-machine.c"
	}
#line 507 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp2_ = boxes_machine_get_state ((BoxesMachine*) _data_->self);
#line 507 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_data_->_tmp3_ = _data_->_tmp2_;
#line 507 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_tmp3_ == BOXES_MACHINE_MACHINE_STATE_PAUSED) {
#line 508 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp4_ = _data_->self->priv->_domain;
#line 508 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp5_ = _data_->cancellable;
#line 508 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_state_ = 1;
#line 508 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		gvir_domain_resume_async (_data_->_tmp4_, _data_->_tmp5_, boxes_libvirt_machine_start_ready, _data_);
#line 508 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		return FALSE;
#line 5935 "libvirt-machine.c"
		_state_1:
#line 508 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		gvir_domain_resume_finish (_data_->_tmp4_, _data_->_res_, &_data_->_inner_error_);
#line 508 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_inner_error_ != NULL) {
#line 508 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_simple_async_result_set_from_error (_data_->_async_result, _data_->_inner_error_);
#line 508 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_error_free (_data_->_inner_error_);
#line 508 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			if (_data_->_state_ == 0) {
#line 508 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				g_simple_async_result_complete_in_idle (_data_->_async_result);
#line 5949 "libvirt-machine.c"
			} else {
#line 508 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				g_simple_async_result_complete (_data_->_async_result);
#line 5953 "libvirt-machine.c"
			}
#line 508 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			g_object_unref (_data_->_async_result);
#line 508 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			return FALSE;
#line 5959 "libvirt-machine.c"
		}
	} else {
#line 509 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp6_ = boxes_machine_get_state ((BoxesMachine*) _data_->self);
#line 509 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		_data_->_tmp7_ = _data_->_tmp6_;
#line 509 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		if (_data_->_tmp7_ == BOXES_MACHINE_MACHINE_STATE_SLEEPING) {
#line 510 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp8_ = _data_->self->priv->_domain;
#line 510 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp9_ = _data_->cancellable;
#line 510 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_state_ = 2;
#line 510 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			gvir_domain_wakeup_async (_data_->_tmp8_, (guint) 0, _data_->_tmp9_, boxes_libvirt_machine_start_ready, _data_);
#line 510 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			return FALSE;
#line 5978 "libvirt-machine.c"
			_state_2:
#line 510 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			gvir_domain_wakeup_finish (_data_->_tmp8_, _data_->_res_, &_data_->_inner_error_);
#line 510 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			if (_data_->_inner_error_ != NULL) {
#line 510 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				g_simple_async_result_set_from_error (_data_->_async_result, _data_->_inner_error_);
#line 510 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				g_error_free (_data_->_inner_error_);
#line 510 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				if (_data_->_state_ == 0) {
#line 510 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					g_simple_async_result_complete_in_idle (_data_->_async_result);
#line 5992 "libvirt-machine.c"
				} else {
#line 510 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					g_simple_async_result_complete (_data_->_async_result);
#line 5996 "libvirt-machine.c"
				}
#line 510 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				g_object_unref (_data_->_async_result);
#line 510 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				return FALSE;
#line 6002 "libvirt-machine.c"
			}
		} else {
#line 512 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp11_ = _data_->self->priv->_domain;
#line 512 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp12_ = FALSE;
#line 512 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp12_ = gvir_domain_get_saved (_data_->_tmp11_);
#line 512 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			if (_data_->_tmp12_) {
#line 513 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp13_ = _data_->flags;
#line 513 "/extra-data/checkout/gnome/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 6017 "libvirt-machine.c"
			} else {
#line 512 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp10_ = FALSE;
#line 6021 "libvirt-machine.c"
			}
#line 512 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp14_ = _data_->_tmp10_;
#line 512 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->restore = _data_->_tmp14_;
#line 514 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			_data_->_tmp15_ = _data_->restore;
#line 514 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			if (_data_->_tmp15_) {
#line 516 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp16_ = NULL;
#line 516 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp16_ = _ ("Restoring %s from disk");
#line 516 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp17_ = boxes_collection_item_get_name ((BoxesCollectionItem*) _data_->self);
#line 516 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp18_ = _data_->_tmp17_;
#line 516 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp19_ = NULL;
#line 516 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp19_ = g_strdup_printf (_data_->_tmp16_, _data_->_tmp18_);
#line 516 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp20_ = _data_->_tmp19_;
#line 516 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				boxes_machine_set_status ((BoxesMachine*) _data_->self, _data_->_tmp20_);
#line 516 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_g_free0 (_data_->_tmp20_);
#line 6049 "libvirt-machine.c"
			} else {
#line 519 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp21_ = NULL;
#line 519 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp21_ = _ ("Starting %s");
#line 519 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp22_ = boxes_collection_item_get_name ((BoxesCollectionItem*) _data_->self);
#line 519 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp23_ = _data_->_tmp22_;
#line 519 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp24_ = NULL;
#line 519 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp24_ = g_strdup_printf (_data_->_tmp21_, _data_->_tmp23_);
#line 519 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp25_ = _data_->_tmp24_;
#line 519 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				boxes_machine_set_status ((BoxesMachine*) _data_->self, _data_->_tmp25_);
#line 519 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_g_free0 (_data_->_tmp25_);
#line 6069 "libvirt-machine.c"
			}
			{
#line 521 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp26_ = _data_->self->priv->_domain;
#line 521 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp27_ = _data_->flags;
#line 521 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp28_ = 0;
#line 521 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp28_ = boxes_libvirt_machine_connect_flags_to_gvir (_data_->self, _data_->_tmp27_);
#line 521 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp29_ = _data_->cancellable;
#line 521 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_state_ = 3;
#line 521 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				gvir_domain_start_async (_data_->_tmp26_, (guint) _data_->_tmp28_, _data_->_tmp29_, boxes_libvirt_machine_start_ready, _data_);
#line 521 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				return FALSE;
#line 6088 "libvirt-machine.c"
				_state_3:
#line 521 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				gvir_domain_start_finish (_data_->_tmp26_, _data_->_res_, &_data_->_inner_error_);
#line 521 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				if (_data_->_inner_error_ != NULL) {
#line 521 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					if (g_error_matches (_data_->_inner_error_, G_IO_ERROR, G_IO_ERROR_CANCELLED)) {
#line 6096 "libvirt-machine.c"
						goto __catch23_g_io_error_cancelled;
					}
					goto __catch23_g_error;
				}
			}
			goto __finally23;
			__catch23_g_io_error_cancelled:
			{
#line 520 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_error_ = _data_->_inner_error_;
#line 520 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_inner_error_ = NULL;
#line 523 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp30_ = boxes_collection_item_get_name ((BoxesCollectionItem*) _data_->self);
#line 523 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp31_ = _data_->_tmp30_;
#line 523 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				g_debug ("libvirt-machine.vala:523: starting of %s was cancelled", _data_->_tmp31_);
#line 520 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_g_error_free0 (_data_->_error_);
#line 6117 "libvirt-machine.c"
			}
			goto __finally23;
			__catch23_g_error:
			{
#line 520 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_vala1__error_ = _data_->_inner_error_;
#line 520 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_inner_error_ = NULL;
#line 525 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_data_->_tmp32_ = _data_->restore;
#line 525 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				if (_data_->_tmp32_) {
#line 526 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_data_->_tmp33_ = g_error_new_literal (BOXES_ERROR, BOXES_ERROR_RESTORE_FAILED, "Restore failed");
#line 526 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_data_->_inner_error_ = _data_->_tmp33_;
#line 526 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_g_error_free0 (_data_->_vala1__error_);
#line 6136 "libvirt-machine.c"
					goto __finally23;
				} else {
#line 528 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_data_->_tmp34_ = _data_->_vala1__error_;
#line 528 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_data_->_tmp35_ = _g_error_copy0 (_data_->_tmp34_);
#line 528 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_data_->_inner_error_ = _data_->_tmp35_;
#line 528 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					_g_error_free0 (_data_->_vala1__error_);
#line 6147 "libvirt-machine.c"
					goto __finally23;
				}
#line 520 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				_g_error_free0 (_data_->_vala1__error_);
#line 6152 "libvirt-machine.c"
			}
			__finally23:
#line 520 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
			if (_data_->_inner_error_ != NULL) {
#line 520 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				g_simple_async_result_set_from_error (_data_->_async_result, _data_->_inner_error_);
#line 520 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				g_error_free (_data_->_inner_error_);
#line 520 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				if (_data_->_state_ == 0) {
#line 520 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					g_simple_async_result_complete_in_idle (_data_->_async_result);
#line 6165 "libvirt-machine.c"
				} else {
#line 520 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
					g_simple_async_result_complete (_data_->_async_result);
#line 6169 "libvirt-machine.c"
				}
#line 520 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				g_object_unref (_data_->_async_result);
#line 520 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
				return FALSE;
#line 6175 "libvirt-machine.c"
			}
		}
	}
#line 503 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	if (_data_->_state_ == 0) {
#line 503 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_simple_async_result_complete_in_idle (_data_->_async_result);
#line 6183 "libvirt-machine.c"
	} else {
#line 503 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_simple_async_result_complete (_data_->_async_result);
#line 6187 "libvirt-machine.c"
	}
#line 503 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_object_unref (_data_->_async_result);
#line 503 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return FALSE;
#line 6193 "libvirt-machine.c"
}


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


void boxes_libvirt_machine_set_domain (BoxesLibvirtMachine* self, GVirDomain* value) {
	GVirDomain* _tmp0_;
	GVirDomain* _tmp1_;
#line 6 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (self != NULL);
#line 6 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = value;
#line 6 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _g_object_ref0 (_tmp0_);
#line 6 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (self->priv->_domain);
#line 6 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	self->priv->_domain = _tmp1_;
#line 6 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_object_notify ((GObject *) self, "domain");
#line 6227 "libvirt-machine.c"
}


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


void boxes_libvirt_machine_set_domain_config (BoxesLibvirtMachine* self, GVirConfigDomain* value) {
	GVirConfigDomain* _tmp0_;
	GVirConfigDomain* _tmp1_;
#line 7 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (self != NULL);
#line 7 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = value;
#line 7 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _g_object_ref0 (_tmp0_);
#line 7 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (self->priv->_domain_config);
#line 7 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	self->priv->_domain_config = _tmp1_;
#line 7 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_object_notify ((GObject *) self, "domain-config");
#line 6261 "libvirt-machine.c"
}


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


void boxes_libvirt_machine_set_connection (BoxesLibvirtMachine* self, GVirConnection* value) {
	GVirConnection* _tmp0_;
	GVirConnection* _tmp1_;
#line 8 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (self != NULL);
#line 8 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = value;
#line 8 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _g_object_ref0 (_tmp0_);
#line 8 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (self->priv->_connection);
#line 8 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	self->priv->_connection = _tmp1_;
#line 8 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_object_notify ((GObject *) self, "connection");
#line 6295 "libvirt-machine.c"
}


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


void boxes_libvirt_machine_set_storage_volume (BoxesLibvirtMachine* self, GVirStorageVol* value) {
	GVirStorageVol* _tmp0_;
	GVirStorageVol* _tmp1_;
#line 9 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (self != NULL);
#line 9 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = value;
#line 9 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _g_object_ref0 (_tmp0_);
#line 9 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (self->priv->_storage_volume);
#line 9 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	self->priv->_storage_volume = _tmp1_;
#line 9 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_object_notify ((GObject *) self, "storage-volume");
#line 6329 "libvirt-machine.c"
}


BoxesVMCreator* boxes_libvirt_machine_get_vm_creator (BoxesLibvirtMachine* self) {
	BoxesVMCreator* result;
	BoxesVMCreator* _tmp0_;
#line 10 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 10 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = self->priv->_vm_creator;
#line 10 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	result = _tmp0_;
#line 10 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return result;
#line 6344 "libvirt-machine.c"
}


static gpointer _boxes_vm_creator_ref0 (gpointer self) {
#line 10 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return self ? boxes_vm_creator_ref (self) : NULL;
#line 6351 "libvirt-machine.c"
}


void boxes_libvirt_machine_set_vm_creator (BoxesLibvirtMachine* self, BoxesVMCreator* value) {
	BoxesVMCreator* _tmp0_;
	BoxesVMCreator* _tmp1_;
#line 10 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (self != NULL);
#line 10 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = value;
#line 10 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = _boxes_vm_creator_ref0 (_tmp0_);
#line 10 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_boxes_vm_creator_unref0 (self->priv->_vm_creator);
#line 10 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	self->priv->_vm_creator = _tmp1_;
#line 10 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_object_notify ((GObject *) self, "vm-creator");
#line 6370 "libvirt-machine.c"
}


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


void boxes_libvirt_machine_set_save_on_quit (BoxesLibvirtMachine* self, gboolean value) {
	BoxesCollectionSource* _tmp0_;
	gboolean _tmp1_;
#line 16 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_return_if_fail (self != NULL);
#line 16 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = ((BoxesMachine*) self)->source;
#line 16 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = value;
#line 16 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_iconfig_set_boolean ((BoxesIConfig*) _tmp0_, "source", "save-on-quit", _tmp1_);
#line 16 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_object_notify ((GObject *) self, "save-on-quit");
#line 6405 "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_ = NULL;
	GCancellable* _tmp1_;
#line 65 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	parent_class = G_OBJECT_CLASS (boxes_libvirt_machine_parent_class);
#line 65 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	obj = parent_class->constructor (type, n_construct_properties, construct_properties);
#line 65 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, BOXES_TYPE_LIBVIRT_MACHINE, BoxesLibvirtMachine);
#line 66 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = g_new0 (BoxesLibvirtMachineMachineStat, BOXES_LIBVIRT_MACHINE_STATS_SIZE);
#line 66 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	self->priv->stats = (_vala_BoxesLibvirtMachineMachineStat_array_free (self->priv->stats, self->priv->stats_length1), NULL);
#line 66 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	self->priv->stats = _tmp0_;
#line 66 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	self->priv->stats_length1 = BOXES_LIBVIRT_MACHINE_STATS_SIZE;
#line 66 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	self->priv->_stats_size_ = self->priv->stats_length1;
#line 67 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = g_cancellable_new ();
#line 67 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (self->priv->stats_cancellable);
#line 67 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	self->priv->stats_cancellable = _tmp1_;
#line 68 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_machine_set_can_save ((BoxesMachine*) self, TRUE);
#line 65 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return obj;
#line 6441 "libvirt-machine.c"
}


static GVirDomainDiskStats* _vala_GVirDomainDiskStats_copy (GVirDomainDiskStats* self) {
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return g_boxed_copy (gvir_domain_disk_stats_get_type (), self);
#line 6448 "libvirt-machine.c"
}


static gpointer __vala_GVirDomainDiskStats_copy0 (gpointer self) {
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return self ? _vala_GVirDomainDiskStats_copy (self) : NULL;
#line 6455 "libvirt-machine.c"
}


static GVirDomainInterfaceStats* _vala_GVirDomainInterfaceStats_copy (GVirDomainInterfaceStats* self) {
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return g_boxed_copy (gvir_domain_interface_stats_get_type (), self);
#line 6462 "libvirt-machine.c"
}


static gpointer __vala_GVirDomainInterfaceStats_copy0 (gpointer self) {
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	return self ? _vala_GVirDomainInterfaceStats_copy (self) : NULL;
#line 6469 "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 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp0_ = (*self).timestamp;
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	(*dest).timestamp = _tmp0_;
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp1_ = (*self).cpu_time;
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	(*dest).cpu_time = _tmp1_;
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp2_ = (*self).cpu_time_abs;
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	(*dest).cpu_time_abs = _tmp2_;
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp3_ = (*self).cpu_guest_percent;
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	(*dest).cpu_guest_percent = _tmp3_;
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp4_ = (*self).memory_percent;
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	(*dest).memory_percent = _tmp4_;
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp5_ = (*self).disk;
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp6_ = __vala_GVirDomainDiskStats_copy0 (_tmp5_);
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	__vala_GVirDomainDiskStats_free0 ((*dest).disk);
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	(*dest).disk = _tmp6_;
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp7_ = (*self).disk_read;
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	(*dest).disk_read = _tmp7_;
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp8_ = (*self).disk_write;
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	(*dest).disk_write = _tmp8_;
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp9_ = (*self).net;
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp10_ = __vala_GVirDomainInterfaceStats_copy0 (_tmp9_);
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	__vala_GVirDomainInterfaceStats_free0 ((*dest).net);
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	(*dest).net = _tmp10_;
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp11_ = (*self).net_read;
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	(*dest).net_read = _tmp11_;
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_tmp12_ = (*self).net_write;
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	(*dest).net_write = _tmp12_;
#line 6539 "libvirt-machine.c"
}


static void boxes_libvirt_machine_machine_stat_destroy (BoxesLibvirtMachineMachineStat* self) {
#line 47 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	__vala_GVirDomainDiskStats_free0 ((*self).disk);
#line 50 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	__vala_GVirDomainInterfaceStats_free0 ((*self).net);
#line 6548 "libvirt-machine.c"
}


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


static void boxes_libvirt_machine_machine_stat_free (BoxesLibvirtMachineMachineStat* self) {
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_machine_stat_destroy (self);
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_free (self);
#line 6569 "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 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	boxes_libvirt_machine_parent_class = g_type_class_peek_parent (klass);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_type_class_add_private (klass, sizeof (BoxesLibvirtMachinePrivate));
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	BOXES_MACHINE_CLASS (klass)->disconnect_display = boxes_libvirt_machine_real_disconnect_display;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	BOXES_MACHINE_CLASS (klass)->connect_display = boxes_libvirt_machine_real_connect_display;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	BOXES_MACHINE_CLASS (klass)->connect_display_finish = boxes_libvirt_machine_real_connect_display_finish;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	BOXES_MACHINE_CLASS (klass)->get_properties = boxes_libvirt_machine_real_get_properties;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	BOXES_MACHINE_CLASS (klass)->take_screenshot = boxes_libvirt_machine_real_take_screenshot;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	BOXES_MACHINE_CLASS (klass)->take_screenshot_finish = boxes_libvirt_machine_real_take_screenshot_finish;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	BOXES_MACHINE_CLASS (klass)->delete = boxes_libvirt_machine_real_delete;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	BOXES_MACHINE_CLASS (klass)->save_real = boxes_libvirt_machine_real_save_real;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	BOXES_MACHINE_CLASS (klass)->save_real_finish = boxes_libvirt_machine_real_save_real_finish;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_boxes_libvirt_machine_get_property;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_boxes_libvirt_machine_set_property;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	G_OBJECT_CLASS (klass)->constructor = boxes_libvirt_machine_constructor;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	G_OBJECT_CLASS (klass)->finalize = boxes_libvirt_machine_finalize;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), 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 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), 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 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), 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 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), 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 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), 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 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), 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 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	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 6629 "libvirt-machine.c"
}


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


static void boxes_libvirt_machine_finalize (GObject* obj) {
	BoxesLibvirtMachine * self;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, BOXES_TYPE_LIBVIRT_MACHINE, BoxesLibvirtMachine);
#line 6 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (self->priv->_domain);
#line 7 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (self->priv->_domain_config);
#line 8 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (self->priv->_connection);
#line 9 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (self->priv->_storage_volume);
#line 10 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_boxes_vm_creator_unref0 (self->priv->_vm_creator);
#line 12 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (self->priv->properties);
#line 58 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	_g_object_unref0 (self->priv->stats_cancellable);
#line 61 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	self->priv->stats = (_vala_BoxesLibvirtMachineMachineStat_array_free (self->priv->stats, self->priv->stats_length1), NULL);
#line 235 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	self->cpu_stats = (g_free (self->cpu_stats), NULL);
#line 236 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	self->io_stats = (g_free (self->io_stats), NULL);
#line 237 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	self->net_stats = (g_free (self->net_stats), NULL);
#line 480 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	G_OBJECT_CLASS (boxes_libvirt_machine_parent_class)->finalize (obj);
#line 6668 "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 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	switch (property_id) {
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_DOMAIN:
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_value_set_object (value, boxes_libvirt_machine_get_domain (self));
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_DOMAIN_CONFIG:
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_value_set_object (value, boxes_libvirt_machine_get_domain_config (self));
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_CONNECTION:
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_value_set_object (value, boxes_libvirt_machine_get_connection (self));
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_STORAGE_VOLUME:
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_value_set_object (value, boxes_libvirt_machine_get_storage_volume (self));
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_VM_CREATOR:
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_value_set_vm_creator (value, boxes_libvirt_machine_get_vm_creator (self));
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_SAVE_ON_QUIT:
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		g_value_set_boolean (value, boxes_libvirt_machine_get_save_on_quit (self));
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 6725 "libvirt-machine.c"
		default:
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 6731 "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 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
	switch (property_id) {
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_DOMAIN:
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_set_domain (self, g_value_get_object (value));
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_DOMAIN_CONFIG:
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_set_domain_config (self, g_value_get_object (value));
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_CONNECTION:
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_set_connection (self, g_value_get_object (value));
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_STORAGE_VOLUME:
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_set_storage_volume (self, g_value_get_object (value));
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_VM_CREATOR:
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_set_vm_creator (self, boxes_value_get_vm_creator (value));
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		case BOXES_LIBVIRT_MACHINE_SAVE_ON_QUIT:
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		boxes_libvirt_machine_set_save_on_quit (self, g_value_get_boolean (value));
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 6777 "libvirt-machine.c"
		default:
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/libvirt-machine.vala"
		break;
#line 6783 "libvirt-machine.c"
	}
}



