/* libvirt-broker.c generated by valac 0.38.4, the Vala compiler
 * generated from libvirt-broker.vala, do not modify */

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

#include <glib.h>
#include <glib-object.h>
#include <gio/gio.h>
#include <libcommon.h>
#include <stdlib.h>
#include <string.h>
#include <libvirt-gobject/libvirt-gobject.h>
#include <gtk/gtk.h>
#include <libvirt-gconfig/libvirt-gconfig.h>
#include <osinfo/osinfo.h>


#define BOXES_TYPE_BROKER (boxes_broker_get_type ())
#define BOXES_BROKER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_BROKER, BoxesBroker))
#define BOXES_BROKER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_BROKER, BoxesBrokerClass))
#define BOXES_IS_BROKER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_BROKER))
#define BOXES_IS_BROKER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_BROKER))
#define BOXES_BROKER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_BROKER, BoxesBrokerClass))

typedef struct _BoxesBroker BoxesBroker;
typedef struct _BoxesBrokerClass BoxesBrokerClass;
typedef struct _BoxesBrokerPrivate BoxesBrokerPrivate;

#define BOXES_TYPE_LIBVIRT_BROKER (boxes_libvirt_broker_get_type ())
#define BOXES_LIBVIRT_BROKER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_LIBVIRT_BROKER, BoxesLibvirtBroker))
#define BOXES_LIBVIRT_BROKER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_LIBVIRT_BROKER, BoxesLibvirtBrokerClass))
#define BOXES_IS_LIBVIRT_BROKER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_LIBVIRT_BROKER))
#define BOXES_IS_LIBVIRT_BROKER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_LIBVIRT_BROKER))
#define BOXES_LIBVIRT_BROKER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_LIBVIRT_BROKER, BoxesLibvirtBrokerClass))

typedef struct _BoxesLibvirtBroker BoxesLibvirtBroker;
typedef struct _BoxesLibvirtBrokerClass BoxesLibvirtBrokerClass;
typedef struct _BoxesLibvirtBrokerPrivate BoxesLibvirtBrokerPrivate;
enum  {
	BOXES_LIBVIRT_BROKER_0_PROPERTY,
	BOXES_LIBVIRT_BROKER_NUM_PROPERTIES
};
static GParamSpec* boxes_libvirt_broker_properties[BOXES_LIBVIRT_BROKER_NUM_PROPERTIES];
#define _g_hash_table_unref0(var) ((var == NULL) ? NULL : (var = (g_hash_table_unref (var), NULL)))
#define __g_list_free__g_object_unref0_0(var) ((var == NULL) ? NULL : (var = (_g_list_free__g_object_unref0_ (var), NULL)))
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))

#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;

#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;

#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 _Block32Data Block32Data;
typedef struct _Block33Data Block33Data;

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

typedef struct _BoxesApp BoxesApp;
typedef struct _BoxesAppClass BoxesAppClass;
typedef struct _BoxesAppPrivate BoxesAppPrivate;

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

typedef struct _BoxesCollection BoxesCollection;
typedef struct _BoxesCollectionClass BoxesCollectionClass;
#define _g_free0(var) (var = (g_free (var), NULL))
#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))
typedef struct _BoxesLibvirtBrokerAddDomainData BoxesLibvirtBrokerAddDomainData;
typedef struct _BoxesLibvirtBrokerTryAddNewDomainData BoxesLibvirtBrokerTryAddNewDomainData;

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

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

typedef struct _BoxesVMImporter BoxesVMImporter;
typedef struct _BoxesVMImporterClass BoxesVMImporterClass;

#define BOXES_TYPE_LIBVIRT_VM_IMPORTER (boxes_libvirt_vm_importer_get_type ())
#define BOXES_LIBVIRT_VM_IMPORTER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_LIBVIRT_VM_IMPORTER, BoxesLibvirtVMImporter))
#define BOXES_LIBVIRT_VM_IMPORTER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_LIBVIRT_VM_IMPORTER, BoxesLibvirtVMImporterClass))
#define BOXES_IS_LIBVIRT_VM_IMPORTER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_LIBVIRT_VM_IMPORTER))
#define BOXES_IS_LIBVIRT_VM_IMPORTER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_LIBVIRT_VM_IMPORTER))
#define BOXES_LIBVIRT_VM_IMPORTER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_LIBVIRT_VM_IMPORTER, BoxesLibvirtVMImporterClass))

typedef struct _BoxesLibvirtVMImporter BoxesLibvirtVMImporter;
typedef struct _BoxesLibvirtVMImporterClass BoxesLibvirtVMImporterClass;

#define BOXES_TYPE_LIBVIRT_VM_CLONER (boxes_libvirt_vm_cloner_get_type ())
#define BOXES_LIBVIRT_VM_CLONER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_LIBVIRT_VM_CLONER, BoxesLibvirtVMCloner))
#define BOXES_LIBVIRT_VM_CLONER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_LIBVIRT_VM_CLONER, BoxesLibvirtVMClonerClass))
#define BOXES_IS_LIBVIRT_VM_CLONER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_LIBVIRT_VM_CLONER))
#define BOXES_IS_LIBVIRT_VM_CLONER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_LIBVIRT_VM_CLONER))
#define BOXES_LIBVIRT_VM_CLONER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_LIBVIRT_VM_CLONER, BoxesLibvirtVMClonerClass))

typedef struct _BoxesLibvirtVMCloner BoxesLibvirtVMCloner;
typedef struct _BoxesLibvirtVMClonerClass BoxesLibvirtVMClonerClass;
typedef struct _BoxesLibvirtBrokerTryAddExistingDomainData BoxesLibvirtBrokerTryAddExistingDomainData;
typedef struct _Block34Data Block34Data;
typedef struct _Block35Data Block35Data;

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

typedef struct _BoxesInstallerMedia BoxesInstallerMedia;
typedef struct _BoxesInstallerMediaClass BoxesInstallerMediaClass;

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

typedef struct _BoxesInstalledMedia BoxesInstalledMedia;
typedef struct _BoxesInstalledMediaClass BoxesInstalledMediaClass;
typedef struct _BoxesInstallerMediaPrivate BoxesInstallerMediaPrivate;
typedef struct _BoxesLibvirtBrokerAddSourceData BoxesLibvirtBrokerAddSourceData;

struct _BoxesBroker {
	GObject parent_instance;
	BoxesBrokerPrivate * priv;
};

struct _BoxesBrokerClass {
	GObjectClass parent_class;
	void (*add_source) (BoxesBroker* self, BoxesCollectionSource* source, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*add_source_finish) (BoxesBroker* self, GAsyncResult* _res_, GError** error);
};

struct _BoxesLibvirtBroker {
	BoxesBroker parent_instance;
	BoxesLibvirtBrokerPrivate * priv;
};

struct _BoxesLibvirtBrokerClass {
	BoxesBrokerClass parent_class;
};

struct _BoxesLibvirtBrokerPrivate {
	GHashTable* connections;
	GList* pending_domains;
};

struct _Block32Data {
	int _ref_count_;
	BoxesLibvirtBroker* self;
	GVirDomain* domain;
	gpointer _async_data_;
};

struct _Block33Data {
	int _ref_count_;
	Block32Data * _data32_;
	GSourceFunc callback;
	gpointer callback_target;
	GDestroyNotify callback_target_destroy_notify;
	gulong id;
};

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

struct _BoxesAppClass {
	GtkApplicationClass parent_class;
};

struct _BoxesLibvirtBrokerAddDomainData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	BoxesLibvirtBroker* self;
	BoxesCollectionSource* source;
	GVirConnection* connection;
	GVirDomain* domain;
	BoxesLibvirtMachine* result;
	Block32Data* _data32_;
	GVirDomain* _tmp0_;
	BoxesLibvirtBroker* _tmp1_;
	GList* _tmp2_;
	GVirDomain* _tmp3_;
	GList* _tmp4_;
	Block33Data* _data33_;
	BoxesApp* _tmp5_;
	BoxesCollection* _tmp6_;
	gulong _tmp7_;
	BoxesLibvirtMachine* machine;
	GVirDomain* _tmp8_;
	gconstpointer _tmp9_;
	BoxesLibvirtMachine* _tmp10_;
	BoxesLibvirtMachine* _tmp11_;
	GVirDomain* _tmp12_;
	GVirDomain* _tmp13_;
	BoxesLibvirtMachine* _tmp14_;
	BoxesCollectionSource* _tmp15_;
	GVirConnection* _tmp16_;
	GVirDomain* _tmp17_;
	BoxesLibvirtMachine* _tmp18_;
	BoxesLibvirtMachine* _tmp19_;
	GVirDomain* _tmp20_;
	GVirDomain* _tmp21_;
	BoxesLibvirtMachine* _tmp22_;
	BoxesLibvirtMachine* _tmp23_;
	BoxesApp* _tmp24_;
	BoxesCollection* _tmp25_;
	BoxesLibvirtMachine* _tmp26_;
	BoxesCollectionSource* _tmp27_;
	gchar* _tmp28_;
	gchar* _tmp29_;
	gchar* _tmp30_;
	gboolean _tmp31_;
	GVirConfigDomain* config;
	BoxesLibvirtMachine* _tmp32_;
	GVirDomain* _tmp33_;
	GVirDomain* _tmp34_;
	GVirConfigDomain* _tmp35_;
	GVirConfigDomain* _tmp36_;
	GVirConnection* _tmp37_;
	BoxesLibvirtMachine* _tmp38_;
	GVirDomain* _tmp39_;
	GVirDomain* _tmp40_;
	GVirConfigDomain* _tmp41_;
	GError* e;
	GVirDomain* _tmp42_;
	const gchar* _tmp43_;
	GError* _tmp44_;
	const gchar* _tmp45_;
	GError * _inner_error_;
};

struct _BoxesLibvirtBrokerTryAddNewDomainData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	BoxesLibvirtBroker* self;
	BoxesCollectionSource* source;
	GVirConnection* connection;
	GVirDomain* domain;
	GVirDomain* _tmp0_;
	const gchar* _tmp1_;
	gboolean _tmp2_;
	GVirDomain* _tmp3_;
	const gchar* _tmp4_;
	BoxesCollectionSource* _tmp5_;
	GVirConnection* _tmp6_;
	GVirDomain* _tmp7_;
	BoxesLibvirtMachine* _tmp8_;
	BoxesLibvirtMachine* _tmp9_;
	GError* _error_;
	BoxesCollectionSource* _tmp10_;
	gchar* _tmp11_;
	gchar* _tmp12_;
	gchar* _tmp13_;
	GError* _tmp14_;
	const gchar* _tmp15_;
	GError * _inner_error_;
};

struct _BoxesLibvirtBrokerTryAddExistingDomainData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	BoxesLibvirtBroker* self;
	BoxesCollectionSource* source;
	GVirConnection* connection;
	GVirDomain* domain;
	BoxesLibvirtMachine* result;
	BoxesLibvirtMachine* machine;
	BoxesCollectionSource* _tmp0_;
	GVirConnection* _tmp1_;
	GVirDomain* _tmp2_;
	BoxesLibvirtMachine* _tmp3_;
	GVirConfigDomain* config;
	GVirConfigDomain* _tmp4_;
	GVirConfigDomain* _tmp5_;
	GVirConfigDomain* _tmp6_;
	gboolean _tmp7_;
	GVirConfigDomain* _tmp8_;
	gboolean _tmp9_;
	GVirConfigDomain* _tmp10_;
	gboolean _tmp11_;
	const gchar* _tmp12_;
	const gchar* _tmp13_;
	BoxesVMCreator* _tmp14_;
	BoxesVMCreator* _tmp15_;
	GVirConfigDomain* _tmp16_;
	gboolean _tmp17_;
	const gchar* _tmp18_;
	const gchar* _tmp19_;
	BoxesVMImporter* _tmp20_;
	BoxesVMImporter* _tmp21_;
	GVirConfigDomain* _tmp22_;
	gboolean _tmp23_;
	const gchar* _tmp24_;
	const gchar* _tmp25_;
	BoxesLibvirtVMImporter* _tmp26_;
	BoxesLibvirtVMImporter* _tmp27_;
	GVirConfigDomain* _tmp28_;
	gboolean _tmp29_;
	const gchar* _tmp30_;
	const gchar* _tmp31_;
	BoxesLibvirtVMCloner* _tmp32_;
	BoxesLibvirtVMCloner* _tmp33_;
	GError* _error_;
	BoxesCollectionSource* _tmp34_;
	gchar* _tmp35_;
	gchar* _tmp36_;
	gchar* _tmp37_;
	GError* _tmp38_;
	const gchar* _tmp39_;
	GError * _inner_error_;
};

struct _Block34Data {
	int _ref_count_;
	BoxesLibvirtBroker* self;
	BoxesCollectionSource* source;
	gpointer _async_data_;
};

struct _Block35Data {
	int _ref_count_;
	Block34Data * _data34_;
	BoxesLibvirtMachine* clone;
	BoxesLibvirtMachine* cloned;
	gulong under_construct_id;
};

struct _BoxesInstallerMedia {
	GObject parent_instance;
	BoxesInstallerMediaPrivate * priv;
	OsinfoOs* os;
	OsinfoResources* resources;
	OsinfoMedia* os_media;
	gchar* label;
	gchar* device_file;
	gchar* mount_point;
	gboolean from_image;
};

struct _BoxesInstallerMediaClass {
	GObjectClass parent_class;
	void (*set_direct_boot_params) (BoxesInstallerMedia* self, GVirConfigDomainOs* os);
	void (*prepare) (BoxesInstallerMedia* self, BoxesActivityProgress* progress, GCancellable* cancellable, GAsyncReadyCallback _callback_, gpointer _user_data_);
	gboolean (*prepare_finish) (BoxesInstallerMedia* self, GAsyncResult* _res_);
	void (*prepare_for_installation) (BoxesInstallerMedia* self, const gchar* vm_name, GCancellable* cancellable, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*prepare_for_installation_finish) (BoxesInstallerMedia* self, GAsyncResult* _res_);
	void (*prepare_to_continue_installation) (BoxesInstallerMedia* self, const gchar* vm_name);
	void (*clean_up) (BoxesInstallerMedia* self);
	void (*clean_up_preparation_cache) (BoxesInstallerMedia* self);
	void (*setup_domain_config) (BoxesInstallerMedia* self, GVirConfigDomain* domain);
	void (*setup_post_install_domain_config) (BoxesInstallerMedia* self, GVirConfigDomain* domain);
	void (*populate_setup_box) (BoxesInstallerMedia* self, GtkBox* setup_box);
	GList* (*get_vm_properties) (BoxesInstallerMedia* self);
	BoxesVMCreator* (*get_vm_creator) (BoxesInstallerMedia* self);
	OsinfoDeviceList* (*get_supported_devices) (BoxesInstallerMedia* self);
	guint64 (*get_installed_size) (BoxesInstallerMedia* self);
	gboolean (*get_need_user_input_for_vm_creation) (BoxesInstallerMedia* self);
	gboolean (*get_ready_to_create) (BoxesInstallerMedia* self);
	gboolean (*get_live) (BoxesInstallerMedia* self);
	gboolean (*get_eject_after_install) (BoxesInstallerMedia* self);
	gchar* (*get_architecture) (BoxesInstallerMedia* self);
};

struct _BoxesLibvirtBrokerAddSourceData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	BoxesLibvirtBroker* self;
	BoxesCollectionSource* source;
	Block34Data* _data34_;
	BoxesCollectionSource* _tmp0_;
	GHashTable* _tmp1_;
	BoxesCollectionSource* _tmp2_;
	gchar* _tmp3_;
	gchar* _tmp4_;
	gchar* _tmp5_;
	gconstpointer _tmp6_;
	gboolean _tmp7_;
	GVirConnection* connection;
	BoxesCollectionSource* _tmp8_;
	gchar* _tmp9_;
	gchar* _tmp10_;
	gchar* _tmp11_;
	GVirConnection* _tmp12_;
	GVirConnection* _tmp13_;
	GVirConnection* _tmp14_;
	GVirConnection* _tmp15_;
	GVirConnection* _tmp16_;
	GVirConnection* _tmp17_;
	GVirStoragePool* _tmp18_;
	GVirStoragePool* _tmp19_;
	GHashTable* _tmp20_;
	BoxesCollectionSource* _tmp21_;
	gchar* _tmp22_;
	gchar* _tmp23_;
	GVirConnection* _tmp24_;
	GVirConnection* _tmp25_;
	GList* clones;
	GVirConnection* _tmp26_;
	GList* _tmp27_;
	GList* domain_collection;
	GList* domain_it;
	GVirDomain* _tmp28_;
	GVirDomain* domain;
	BoxesLibvirtMachine* machine;
	BoxesCollectionSource* _tmp29_;
	GVirConnection* _tmp30_;
	GVirDomain* _tmp31_;
	BoxesLibvirtMachine* _tmp32_;
	BoxesLibvirtMachine* _tmp33_;
	GVirConfigDomain* _tmp34_;
	GVirConfigDomain* _tmp35_;
	gboolean _tmp36_;
	BoxesLibvirtMachine* _tmp37_;
	BoxesLibvirtMachine* _tmp38_;
	GList* _tmp39_;
	GList* clone_collection;
	GList* clone_it;
	BoxesLibvirtMachine* _tmp40_;
	BoxesLibvirtMachine* clone;
	Block35Data* _data35_;
	gchar* disk_path;
	BoxesLibvirtMachine* _tmp41_;
	BoxesVMCreator* _tmp42_;
	BoxesVMCreator* _tmp43_;
	BoxesInstalledMedia* _tmp44_;
	BoxesInstalledMedia* _tmp45_;
	const gchar* _tmp46_;
	gchar* _tmp47_;
	gint i;
	gboolean _tmp48_;
	gint _tmp49_;
	gint _tmp50_;
	BoxesApp* _tmp51_;
	BoxesCollection* _tmp52_;
	guint _tmp53_;
	guint _tmp54_;
	BoxesCollectionItem* item;
	BoxesApp* _tmp55_;
	BoxesCollection* _tmp56_;
	gint _tmp57_;
	BoxesCollectionItem* _tmp58_;
	BoxesCollectionItem* _tmp59_;
	BoxesLibvirtMachine* _vala1_machine;
	BoxesCollectionItem* _tmp60_;
	BoxesLibvirtMachine* _tmp61_;
	GVirStorageVol* volume;
	BoxesLibvirtMachine* _tmp62_;
	GVirStorageVol* _tmp63_;
	GVirStorageVol* _tmp64_;
	GVirStorageVol* _tmp65_;
	gboolean _tmp66_;
	GVirStorageVol* _tmp67_;
	const gchar* _tmp68_;
	GVirStorageVol* _tmp69_;
	const gchar* _tmp70_;
	const gchar* _tmp71_;
	BoxesLibvirtMachine* _tmp72_;
	BoxesLibvirtMachine* _tmp73_;
	BoxesLibvirtMachine* _tmp74_;
	BoxesLibvirtMachine* _tmp75_;
	const gchar* _tmp76_;
	const gchar* _tmp77_;
	BoxesLibvirtMachine* _tmp78_;
	BoxesLibvirtMachine* _tmp79_;
	gulong _tmp80_;
	GVirConnection* _tmp81_;
	GVirConnection* _tmp82_;
	BoxesCollectionSource* _tmp83_;
	GError * _inner_error_;
};


static gpointer boxes_libvirt_broker_parent_class = NULL;
static BoxesLibvirtBroker* boxes_libvirt_broker_broker;
static BoxesLibvirtBroker* boxes_libvirt_broker_broker = NULL;
extern BoxesApp* boxes_app_app;

GType boxes_broker_get_type (void) G_GNUC_CONST;
GType boxes_libvirt_broker_get_type (void) G_GNUC_CONST;
#define BOXES_LIBVIRT_BROKER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), BOXES_TYPE_LIBVIRT_BROKER, BoxesLibvirtBrokerPrivate))
static void _g_object_unref0_ (gpointer var);
static inline void _g_list_free__g_object_unref0_ (GList* self);
BoxesLibvirtBroker* boxes_libvirt_broker_get_default (void);
static BoxesLibvirtBroker* boxes_libvirt_broker_new (void);
static BoxesLibvirtBroker* boxes_libvirt_broker_construct (GType object_type);
BoxesBroker* boxes_broker_construct (GType object_type);
static void _g_free0_ (gpointer var);
GVirConnection* boxes_libvirt_broker_get_connection (BoxesLibvirtBroker* self, const gchar* name);
static void boxes_libvirt_broker_add_domain_data_free (gpointer _data);
GType boxes_collection_item_get_type (void) G_GNUC_CONST;
GType boxes_machine_get_type (void) G_GNUC_CONST;
GType boxes_libvirt_machine_get_type (void) G_GNUC_CONST;
void boxes_libvirt_broker_add_domain (BoxesLibvirtBroker* self, BoxesCollectionSource* source, GVirConnection* connection, GVirDomain* domain, GAsyncReadyCallback _callback_, gpointer _user_data_);
BoxesLibvirtMachine* boxes_libvirt_broker_add_domain_finish (BoxesLibvirtBroker* self, GAsyncResult* _res_, GError** error);
static gboolean boxes_libvirt_broker_add_domain_co (BoxesLibvirtBrokerAddDomainData* _data_);
static Block32Data* block32_data_ref (Block32Data* _data32_);
static void block32_data_unref (void * _userdata_);
static Block33Data* block33_data_ref (Block33Data* _data33_);
static void block33_data_unref (void * _userdata_);
static gboolean _boxes_libvirt_broker_add_domain_co_gsource_func (gpointer self);
GType boxes_app_get_type (void) G_GNUC_CONST;
GType boxes_collection_get_type (void) G_GNUC_CONST;
static void ___lambda21_ (Block33Data* _data33_, BoxesCollectionItem* item);
GVirDomain* boxes_libvirt_machine_get_domain (BoxesLibvirtMachine* self);
static void ____lambda21__boxes_collection_item_added (BoxesCollection* _sender, BoxesCollectionItem* item, gpointer self);
void boxes_libvirt_machine_new (BoxesCollectionSource* source, GVirConnection* connection, GVirDomain* domain, GAsyncReadyCallback _callback_, gpointer _user_data_);
BoxesLibvirtMachine* boxes_libvirt_machine_new_finish (GAsyncResult* _res_, GError** error);
void boxes_libvirt_machine_construct (GType object_type, BoxesCollectionSource* source, GVirConnection* connection, GVirDomain* domain, GAsyncReadyCallback _callback_, gpointer _user_data_);
BoxesLibvirtMachine* boxes_libvirt_machine_construct_finish (GAsyncResult* _res_, GError** error);
static void boxes_libvirt_broker_add_domain_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_);
void boxes_collection_add_item (BoxesCollection* self, BoxesCollectionItem* item);
#define BOXES_APP_DEFAULT_SOURCE_NAME "QEMU Session"
void boxes_vm_configurator_update_existing_domain (GVirConfigDomain* domain, GVirConnection* connection, GAsyncReadyCallback _callback_, gpointer _user_data_);
void boxes_vm_configurator_update_existing_domain_finish (GAsyncResult* _res_);
static void boxes_libvirt_broker_try_add_new_domain_data_free (gpointer _data);
static void boxes_libvirt_broker_try_add_new_domain (BoxesLibvirtBroker* self, BoxesCollectionSource* source, GVirConnection* connection, GVirDomain* domain, GAsyncReadyCallback _callback_, gpointer _user_data_);
static void boxes_libvirt_broker_try_add_new_domain_finish (BoxesLibvirtBroker* self, GAsyncResult* _res_);
static gboolean boxes_libvirt_broker_try_add_new_domain_co (BoxesLibvirtBrokerTryAddNewDomainData* _data_);
static void boxes_libvirt_broker_try_add_new_domain_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_);
static void boxes_libvirt_broker_try_add_existing_domain_data_free (gpointer _data);
static void boxes_libvirt_broker_try_add_existing_domain (BoxesLibvirtBroker* self, BoxesCollectionSource* source, GVirConnection* connection, GVirDomain* domain, GAsyncReadyCallback _callback_, gpointer _user_data_);
static BoxesLibvirtMachine* boxes_libvirt_broker_try_add_existing_domain_finish (BoxesLibvirtBroker* self, GAsyncResult* _res_);
static gboolean boxes_libvirt_broker_try_add_existing_domain_co (BoxesLibvirtBrokerTryAddExistingDomainData* _data_);
static void boxes_libvirt_broker_try_add_existing_domain_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_);
GVirConfigDomain* boxes_libvirt_machine_get_domain_config (BoxesLibvirtMachine* self);
gboolean boxes_vm_configurator_is_install_config (GVirConfigDomain* domain);
gboolean boxes_vm_configurator_is_live_config (GVirConfigDomain* domain);
const gchar* boxes_collection_item_get_name (BoxesCollectionItem* self);
BoxesVMCreator* boxes_vm_creator_new_for_install_completion (BoxesLibvirtMachine* machine);
BoxesVMCreator* boxes_vm_creator_construct_for_install_completion (GType object_type, BoxesLibvirtMachine* machine);
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;
gboolean boxes_vm_configurator_is_import_config (GVirConfigDomain* domain);
BoxesVMImporter* boxes_vm_importer_new_for_import_completion (BoxesLibvirtMachine* machine);
BoxesVMImporter* boxes_vm_importer_construct_for_import_completion (GType object_type, BoxesLibvirtMachine* machine);
GType boxes_vm_importer_get_type (void) G_GNUC_CONST;
gboolean boxes_vm_configurator_is_libvirt_system_import_config (GVirConfigDomain* domain);
BoxesLibvirtVMImporter* boxes_libvirt_vm_importer_new_for_import_completion (BoxesLibvirtMachine* machine);
BoxesLibvirtVMImporter* boxes_libvirt_vm_importer_construct_for_import_completion (GType object_type, BoxesLibvirtMachine* machine);
GType boxes_libvirt_vm_importer_get_type (void) G_GNUC_CONST;
gboolean boxes_vm_configurator_is_libvirt_cloning_config (GVirConfigDomain* domain);
BoxesLibvirtVMCloner* boxes_libvirt_vm_cloner_new_for_cloning_completion (BoxesLibvirtMachine* machine);
BoxesLibvirtVMCloner* boxes_libvirt_vm_cloner_construct_for_cloning_completion (GType object_type, BoxesLibvirtMachine* machine);
GType boxes_libvirt_vm_cloner_get_type (void) G_GNUC_CONST;
static void boxes_libvirt_broker_real_add_source_data_free (gpointer _data);
static void boxes_libvirt_broker_real_add_source (BoxesBroker* base, BoxesCollectionSource* source, GAsyncReadyCallback _callback_, gpointer _user_data_);
static gboolean boxes_libvirt_broker_real_add_source_co (BoxesLibvirtBrokerAddSourceData* _data_);
static Block34Data* block34_data_ref (Block34Data* _data34_);
static void block34_data_unref (void * _userdata_);
static void boxes_libvirt_broker_add_source_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_);
void boxes_ensure_storage_pool (GVirConnection* connection, GAsyncReadyCallback _callback_, gpointer _user_data_);
GVirStoragePool* boxes_ensure_storage_pool_finish (GAsyncResult* _res_, GError** error);
static Block35Data* block35_data_ref (Block35Data* _data35_);
static void block35_data_unref (void * _userdata_);
BoxesVMCreator* boxes_libvirt_machine_get_vm_creator (BoxesLibvirtMachine* self);
GType boxes_installer_media_get_type (void) G_GNUC_CONST;
GType boxes_installed_media_get_type (void) G_GNUC_CONST;
BoxesInstalledMedia* boxes_vm_importer_get_source_media (BoxesVMImporter* self);
guint boxes_collection_get_length (BoxesCollection* self);
BoxesCollectionItem* boxes_collection_get_item (BoxesCollection* self, gint position);
GVirStorageVol* boxes_libvirt_machine_get_storage_volume (BoxesLibvirtMachine* self);
void boxes_machine_set_can_delete (BoxesMachine* self, gboolean value);
static void ____lambda22_ (Block35Data* _data35_);
gboolean boxes_machine_get_under_construction (BoxesMachine* self);
static void _____lambda22__g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self);
static void __lambda23_ (BoxesLibvirtBroker* self, GVirConnection* connection, GVirDomain* domain);
void boxes_app_delete_machine (BoxesApp* self, BoxesMachine* machine, gboolean by_user);
static void ___lambda23__gvir_connection_domain_removed (GVirConnection* _sender, GVirDomain* dom, gpointer self);
static void __lambda25_ (Block34Data* _data34_, GVirConnection* connection, GVirDomain* domain);
static void ___lambda25__gvir_connection_domain_added (GVirConnection* _sender, GVirDomain* dom, gpointer self);
void boxes_broker_add_source (BoxesBroker* self, BoxesCollectionSource* source, GAsyncReadyCallback _callback_, gpointer _user_data_);
void boxes_broker_add_source_finish (BoxesBroker* self, GAsyncResult* _res_, GError** error);
static void boxes_libvirt_broker_finalize (GObject * obj);


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


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


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


BoxesLibvirtBroker* boxes_libvirt_broker_get_default (void) {
	BoxesLibvirtBroker* result = NULL;
	BoxesLibvirtBroker* _tmp0_;
	BoxesLibvirtBroker* _tmp2_;
	BoxesLibvirtBroker* _tmp3_;
#line 11 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp0_ = boxes_libvirt_broker_broker;
#line 11 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (_tmp0_ == NULL) {
#line 673 "libvirt-broker.c"
		BoxesLibvirtBroker* _tmp1_;
#line 12 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_tmp1_ = boxes_libvirt_broker_new ();
#line 12 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (boxes_libvirt_broker_broker);
#line 12 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		boxes_libvirt_broker_broker = _tmp1_;
#line 681 "libvirt-broker.c"
	}
#line 14 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp2_ = boxes_libvirt_broker_broker;
#line 14 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp3_ = _g_object_ref0 (_tmp2_);
#line 14 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	result = _tmp3_;
#line 14 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return result;
#line 691 "libvirt-broker.c"
}


static void _g_free0_ (gpointer var) {
#line 18 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	var = (g_free (var), NULL);
#line 698 "libvirt-broker.c"
}


static BoxesLibvirtBroker* boxes_libvirt_broker_construct (GType object_type) {
	BoxesLibvirtBroker * self = NULL;
	GHashFunc _tmp0_;
	GEqualFunc _tmp1_;
	GHashTable* _tmp2_;
#line 17 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	self = (BoxesLibvirtBroker*) boxes_broker_construct (object_type);
#line 18 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp0_ = g_str_hash;
#line 18 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp1_ = g_str_equal;
#line 18 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp2_ = g_hash_table_new_full (_tmp0_, _tmp1_, _g_free0_, _g_object_unref0_);
#line 18 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_hash_table_unref0 (self->priv->connections);
#line 18 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	self->priv->connections = _tmp2_;
#line 19 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	__g_list_free__g_object_unref0_0 (self->priv->pending_domains);
#line 19 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	self->priv->pending_domains = NULL;
#line 17 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return self;
#line 725 "libvirt-broker.c"
}


static BoxesLibvirtBroker* boxes_libvirt_broker_new (void) {
#line 17 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return boxes_libvirt_broker_construct (BOXES_TYPE_LIBVIRT_BROKER);
#line 732 "libvirt-broker.c"
}


GVirConnection* boxes_libvirt_broker_get_connection (BoxesLibvirtBroker* self, const gchar* name) {
	GVirConnection* result = NULL;
	BoxesLibvirtBroker* _tmp0_;
	BoxesLibvirtBroker* _tmp1_;
	GHashTable* _tmp2_;
	const gchar* _tmp3_;
	gconstpointer _tmp4_;
	GVirConnection* _tmp5_;
#line 22 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 22 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_return_val_if_fail (name != NULL, NULL);
#line 23 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp0_ = boxes_libvirt_broker_broker;
#line 23 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_return_if_fail (_tmp0_ != NULL);
#line 24 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp1_ = boxes_libvirt_broker_broker;
#line 24 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp2_ = _tmp1_->priv->connections;
#line 24 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp3_ = name;
#line 24 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp4_ = g_hash_table_lookup (_tmp2_, _tmp3_);
#line 24 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp5_ = _g_object_ref0 ((GVirConnection*) _tmp4_);
#line 24 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	result = _tmp5_;
#line 24 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return result;
#line 766 "libvirt-broker.c"
}


static void boxes_libvirt_broker_add_domain_data_free (gpointer _data) {
	BoxesLibvirtBrokerAddDomainData* _data_;
	_data_ = _data;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->source);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->connection);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->result);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_slice_free (BoxesLibvirtBrokerAddDomainData, _data_);
#line 783 "libvirt-broker.c"
}


void boxes_libvirt_broker_add_domain (BoxesLibvirtBroker* self, BoxesCollectionSource* source, GVirConnection* connection, GVirDomain* domain, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	BoxesLibvirtBrokerAddDomainData* _data_;
	BoxesLibvirtBroker* _tmp0_;
	BoxesCollectionSource* _tmp1_;
	BoxesCollectionSource* _tmp2_;
	GVirConnection* _tmp3_;
	GVirConnection* _tmp4_;
	GVirDomain* _tmp5_;
	GVirDomain* _tmp6_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_ = g_slice_new0 (BoxesLibvirtBrokerAddDomainData);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_task_set_task_data (_data_->_async_result, _data_, boxes_libvirt_broker_add_domain_data_free);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->self = _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp1_ = source;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp2_ = _g_object_ref0 (_tmp1_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->source);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->source = _tmp2_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp3_ = connection;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp4_ = _g_object_ref0 (_tmp3_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->connection);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->connection = _tmp4_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp5_ = domain;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp6_ = _g_object_ref0 (_tmp5_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->domain);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->domain = _tmp6_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	boxes_libvirt_broker_add_domain_co (_data_);
#line 832 "libvirt-broker.c"
}


BoxesLibvirtMachine* boxes_libvirt_broker_add_domain_finish (BoxesLibvirtBroker* self, GAsyncResult* _res_, GError** error) {
	BoxesLibvirtMachine* result;
	BoxesLibvirtBrokerAddDomainData* _data_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_ = g_task_propagate_pointer (G_TASK (_res_), error);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (NULL == _data_) {
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return NULL;
#line 845 "libvirt-broker.c"
	}
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	result = _data_->result;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->result = NULL;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return result;
#line 853 "libvirt-broker.c"
}


static Block32Data* block32_data_ref (Block32Data* _data32_) {
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_atomic_int_inc (&_data32_->_ref_count_);
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return _data32_;
#line 862 "libvirt-broker.c"
}


static void block32_data_unref (void * _userdata_) {
	Block32Data* _data32_;
	_data32_ = (Block32Data*) _userdata_;
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (g_atomic_int_dec_and_test (&_data32_->_ref_count_)) {
#line 871 "libvirt-broker.c"
		BoxesLibvirtBroker* self;
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		self = _data32_->self;
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data32_->domain);
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (self);
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_slice_free (Block32Data, _data32_);
#line 881 "libvirt-broker.c"
	}
}


static Block33Data* block33_data_ref (Block33Data* _data33_) {
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_atomic_int_inc (&_data33_->_ref_count_);
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return _data33_;
#line 891 "libvirt-broker.c"
}


static void block33_data_unref (void * _userdata_) {
	Block33Data* _data33_;
	_data33_ = (Block33Data*) _userdata_;
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (g_atomic_int_dec_and_test (&_data33_->_ref_count_)) {
#line 900 "libvirt-broker.c"
		BoxesLibvirtBroker* self;
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		self = _data33_->_data32_->self;
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		(_data33_->callback_target_destroy_notify == NULL) ? NULL : (_data33_->callback_target_destroy_notify (_data33_->callback_target), NULL);
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data33_->callback = NULL;
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data33_->callback_target = NULL;
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data33_->callback_target_destroy_notify = NULL;
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		block32_data_unref (_data33_->_data32_);
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data33_->_data32_ = NULL;
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_slice_free (Block33Data, _data33_);
#line 918 "libvirt-broker.c"
	}
}


static gboolean _boxes_libvirt_broker_add_domain_co_gsource_func (gpointer self) {
	gboolean result;
	result = boxes_libvirt_broker_add_domain_co (self);
#line 33 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return result;
#line 928 "libvirt-broker.c"
}


static void ___lambda21_ (Block33Data* _data33_, BoxesCollectionItem* item) {
	Block32Data* _data32_;
	BoxesLibvirtBroker* self;
	gboolean _tmp0_ = FALSE;
	BoxesCollectionItem* _tmp1_;
	BoxesApp* _tmp6_;
	BoxesCollection* _tmp7_;
	gulong _tmp8_;
	GSourceFunc _tmp9_;
	void* _tmp9__target;
#line 35 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data32_ = _data33_->_data32_;
#line 35 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	self = _data32_->self;
#line 35 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_return_if_fail (item != NULL);
#line 36 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp1_ = item;
#line 36 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (!G_TYPE_CHECK_INSTANCE_TYPE (_tmp1_, BOXES_TYPE_LIBVIRT_MACHINE)) {
#line 36 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_tmp0_ = TRUE;
#line 954 "libvirt-broker.c"
	} else {
		BoxesCollectionItem* _tmp2_;
		GVirDomain* _tmp3_;
		GVirDomain* _tmp4_;
		GVirDomain* _tmp5_;
#line 36 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_tmp2_ = item;
#line 36 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_tmp3_ = boxes_libvirt_machine_get_domain (G_TYPE_CHECK_INSTANCE_TYPE (_tmp2_, BOXES_TYPE_LIBVIRT_MACHINE) ? ((BoxesLibvirtMachine*) _tmp2_) : NULL);
#line 36 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_tmp4_ = _tmp3_;
#line 36 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_tmp5_ = _data32_->domain;
#line 36 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_tmp0_ = _tmp4_ != _tmp5_;
#line 970 "libvirt-broker.c"
	}
#line 36 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (_tmp0_) {
#line 37 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return;
#line 976 "libvirt-broker.c"
	}
#line 39 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp6_ = boxes_app_app;
#line 39 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp7_ = _tmp6_->collection;
#line 39 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp8_ = _data33_->id;
#line 39 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_signal_handler_disconnect ((GObject*) _tmp7_, _tmp8_);
#line 40 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp9_ = _data33_->callback;
#line 40 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp9__target = _data33_->callback_target;
#line 40 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp9_ (_tmp9__target);
#line 992 "libvirt-broker.c"
}


static void ____lambda21__boxes_collection_item_added (BoxesCollection* _sender, BoxesCollectionItem* item, gpointer self) {
#line 35 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	___lambda21_ (self, item);
#line 999 "libvirt-broker.c"
}


static void boxes_libvirt_broker_add_domain_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_) {
	BoxesLibvirtBrokerAddDomainData* _data_;
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_ = _user_data_;
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_source_object_ = source_object;
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_res_ = _res_;
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	boxes_libvirt_broker_add_domain_co (_data_);
#line 1013 "libvirt-broker.c"
}


static gboolean boxes_libvirt_broker_add_domain_co (BoxesLibvirtBrokerAddDomainData* _data_) {
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	switch (_data_->_state_) {
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		case 0:
#line 1022 "libvirt-broker.c"
		goto _state_0;
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		case 1:
#line 1026 "libvirt-broker.c"
		goto _state_1;
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		case 2:
#line 1030 "libvirt-broker.c"
		goto _state_2;
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		case 3:
#line 1034 "libvirt-broker.c"
		goto _state_3;
		default:
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_assert_not_reached ();
#line 1039 "libvirt-broker.c"
	}
	_state_0:
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_data32_ = g_slice_new0 (Block32Data);
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_data32_->_ref_count_ = 1;
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_data32_->self = g_object_ref (_data_->self);
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp0_ = _data_->domain;
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->_data32_->domain);
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_data32_->domain = _data_->_tmp0_;
#line 27 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_data32_->_async_data_ = _data_;
#line 29 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp1_ = boxes_libvirt_broker_broker;
#line 29 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_return_if_fail (_data_->_tmp1_ != NULL);
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp2_ = _data_->self->priv->pending_domains;
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp3_ = _data_->_data32_->domain;
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp4_ = g_list_find (_data_->_tmp2_, _data_->_tmp3_);
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (_data_->_tmp4_ != NULL) {
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data33_ = g_slice_new0 (Block33Data);
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data33_->_ref_count_ = 1;
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data33_->_data32_ = block32_data_ref (_data_->_data32_);
#line 33 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data33_->callback = _boxes_libvirt_broker_add_domain_co_gsource_func;
#line 33 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data33_->callback_target = _data_;
#line 33 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data33_->callback_target_destroy_notify = NULL;
#line 34 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data33_->id = (gulong) 0;
#line 35 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp5_ = boxes_app_app;
#line 35 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp6_ = _data_->_tmp5_->collection;
#line 35 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp7_ = g_signal_connect_data (_data_->_tmp6_, "item-added", (GCallback) ____lambda21__boxes_collection_item_added, block33_data_ref (_data_->_data33_), (GClosureNotify) block33_data_unref, 0);
#line 35 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data33_->id = _data_->_tmp7_;
#line 43 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_state_ = 1;
#line 43 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 1094 "libvirt-broker.c"
		_state_1:
		;
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		block33_data_unref (_data_->_data33_);
#line 31 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data33_ = NULL;
#line 1101 "libvirt-broker.c"
	}
#line 46 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp8_ = _data_->_data32_->domain;
#line 46 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp9_ = g_object_get_data ((GObject*) _data_->_tmp8_, "machine");
#line 46 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp10_ = _g_object_ref0 ((BoxesLibvirtMachine*) _data_->_tmp9_);
#line 46 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->machine = _data_->_tmp10_;
#line 47 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp11_ = _data_->machine;
#line 47 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (_data_->_tmp11_ != NULL) {
#line 48 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->result = _data_->machine;
#line 48 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		block32_data_unref (_data_->_data32_);
#line 48 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data32_ = NULL;
#line 48 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 48 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		if (_data_->_state_ != 0) {
#line 48 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 48 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 1129 "libvirt-broker.c"
			}
		}
#line 48 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_object_unref (_data_->_async_result);
#line 48 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 1136 "libvirt-broker.c"
	}
#line 50 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp12_ = _data_->_data32_->domain;
#line 50 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp13_ = _g_object_ref0 (_data_->_tmp12_);
#line 50 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->self->priv->pending_domains = g_list_append (_data_->self->priv->pending_domains, _data_->_tmp13_);
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp15_ = _data_->source;
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp16_ = _data_->connection;
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp17_ = _data_->_data32_->domain;
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_state_ = 2;
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	boxes_libvirt_machine_new (_data_->_tmp15_, _data_->_tmp16_, _data_->_tmp17_, boxes_libvirt_broker_add_domain_ready, _data_);
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return FALSE;
#line 1156 "libvirt-broker.c"
	_state_2:
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp18_ = boxes_libvirt_machine_new_finish (_data_->_res_, &_data_->_inner_error_);
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp14_ = _data_->_tmp18_;
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data_->machine);
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		block32_data_unref (_data_->_data32_);
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data32_ = NULL;
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_object_unref (_data_->_async_result);
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 1176 "libvirt-broker.c"
	}
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp19_ = _data_->_tmp14_;
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp14_ = NULL;
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->machine);
#line 51 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->machine = _data_->_tmp19_;
#line 52 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp20_ = _data_->_data32_->domain;
#line 52 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->self->priv->pending_domains = g_list_remove (_data_->self->priv->pending_domains, _data_->_tmp20_);
#line 54 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp21_ = _data_->_data32_->domain;
#line 54 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp22_ = _data_->machine;
#line 54 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp23_ = _g_object_ref0 (_data_->_tmp22_);
#line 54 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_object_set_data_full ((GObject*) _data_->_tmp21_, "machine", _data_->_tmp23_, g_object_unref);
#line 55 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp24_ = boxes_app_app;
#line 55 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp25_ = _data_->_tmp24_->collection;
#line 55 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp26_ = _data_->machine;
#line 55 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	boxes_collection_add_item (_data_->_tmp25_, (BoxesCollectionItem*) _data_->_tmp26_);
#line 57 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp27_ = _data_->source;
#line 57 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp28_ = boxes_collection_source_get_name (_data_->_tmp27_);
#line 57 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp29_ = _data_->_tmp28_;
#line 57 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp30_ = _data_->_tmp29_;
#line 57 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp31_ = g_strcmp0 (_data_->_tmp30_, BOXES_APP_DEFAULT_SOURCE_NAME) != 0;
#line 57 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_free0 (_data_->_tmp30_);
#line 57 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (_data_->_tmp31_) {
#line 58 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->result = _data_->machine;
#line 58 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data_->_tmp14_);
#line 58 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		block32_data_unref (_data_->_data32_);
#line 58 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data32_ = NULL;
#line 58 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 58 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		if (_data_->_state_ != 0) {
#line 58 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 58 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 1236 "libvirt-broker.c"
			}
		}
#line 58 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_object_unref (_data_->_async_result);
#line 58 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 1243 "libvirt-broker.c"
	}
	{
#line 62 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp32_ = _data_->machine;
#line 62 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp33_ = boxes_libvirt_machine_get_domain (_data_->_tmp32_);
#line 62 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp34_ = _data_->_tmp33_;
#line 62 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp35_ = gvir_domain_get_config (_data_->_tmp34_, (guint) 0, &_data_->_inner_error_);
#line 62 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->config = _data_->_tmp35_;
#line 62 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 1258 "libvirt-broker.c"
			goto __catch13_g_error;
		}
#line 63 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp36_ = _data_->config;
#line 63 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp37_ = _data_->connection;
#line 63 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_state_ = 3;
#line 63 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		boxes_vm_configurator_update_existing_domain (_data_->_tmp36_, _data_->_tmp37_, boxes_libvirt_broker_add_domain_ready, _data_);
#line 63 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 1271 "libvirt-broker.c"
		_state_3:
#line 63 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		boxes_vm_configurator_update_existing_domain_finish (_data_->_res_);
#line 64 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp38_ = _data_->machine;
#line 64 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp39_ = boxes_libvirt_machine_get_domain (_data_->_tmp38_);
#line 64 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp40_ = _data_->_tmp39_;
#line 64 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp41_ = _data_->config;
#line 64 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		gvir_domain_set_config (_data_->_tmp40_, _data_->_tmp41_, &_data_->_inner_error_);
#line 64 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 64 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			_g_object_unref0 (_data_->config);
#line 1289 "libvirt-broker.c"
			goto __catch13_g_error;
		}
#line 61 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data_->config);
#line 1294 "libvirt-broker.c"
	}
	goto __finally13;
	__catch13_g_error:
	{
#line 61 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->e = _data_->_inner_error_;
#line 61 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_inner_error_ = NULL;
#line 66 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp42_ = _data_->_data32_->domain;
#line 66 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp43_ = gvir_domain_get_name (_data_->_tmp42_);
#line 66 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp44_ = _data_->e;
#line 66 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp45_ = _data_->_tmp44_->message;
#line 66 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_warning ("libvirt-broker.vala:66: Failed to update domain '%s': %s", _data_->_tmp43_, _data_->_tmp45_);
#line 61 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_error_free0 (_data_->e);
#line 1315 "libvirt-broker.c"
	}
	__finally13:
#line 61 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 61 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 61 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data_->_tmp14_);
#line 61 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data_->machine);
#line 61 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		block32_data_unref (_data_->_data32_);
#line 61 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data32_ = NULL;
#line 61 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_object_unref (_data_->_async_result);
#line 61 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 1334 "libvirt-broker.c"
	}
#line 69 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->result = _data_->machine;
#line 69 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->_tmp14_);
#line 69 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	block32_data_unref (_data_->_data32_);
#line 69 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_data32_ = NULL;
#line 69 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 69 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (_data_->_state_ != 0) {
#line 69 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 69 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 1352 "libvirt-broker.c"
		}
	}
#line 69 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_object_unref (_data_->_async_result);
#line 69 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return FALSE;
#line 1359 "libvirt-broker.c"
}


static void boxes_libvirt_broker_try_add_new_domain_data_free (gpointer _data) {
	BoxesLibvirtBrokerTryAddNewDomainData* _data_;
	_data_ = _data;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->source);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->connection);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->domain);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_slice_free (BoxesLibvirtBrokerTryAddNewDomainData, _data_);
#line 1376 "libvirt-broker.c"
}


static void boxes_libvirt_broker_try_add_new_domain (BoxesLibvirtBroker* self, BoxesCollectionSource* source, GVirConnection* connection, GVirDomain* domain, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	BoxesLibvirtBrokerTryAddNewDomainData* _data_;
	BoxesLibvirtBroker* _tmp0_;
	BoxesCollectionSource* _tmp1_;
	BoxesCollectionSource* _tmp2_;
	GVirConnection* _tmp3_;
	GVirConnection* _tmp4_;
	GVirDomain* _tmp5_;
	GVirDomain* _tmp6_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_ = g_slice_new0 (BoxesLibvirtBrokerTryAddNewDomainData);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_task_set_task_data (_data_->_async_result, _data_, boxes_libvirt_broker_try_add_new_domain_data_free);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->self = _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp1_ = source;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp2_ = _g_object_ref0 (_tmp1_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->source);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->source = _tmp2_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp3_ = connection;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp4_ = _g_object_ref0 (_tmp3_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->connection);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->connection = _tmp4_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp5_ = domain;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp6_ = _g_object_ref0 (_tmp5_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->domain);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->domain = _tmp6_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	boxes_libvirt_broker_try_add_new_domain_co (_data_);
#line 1425 "libvirt-broker.c"
}


static void boxes_libvirt_broker_try_add_new_domain_finish (BoxesLibvirtBroker* self, GAsyncResult* _res_) {
	BoxesLibvirtBrokerTryAddNewDomainData* _data_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_ = g_task_propagate_pointer (G_TASK (_res_), NULL);
#line 1433 "libvirt-broker.c"
}


static void boxes_libvirt_broker_try_add_new_domain_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_) {
	BoxesLibvirtBrokerTryAddNewDomainData* _data_;
#line 81 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_ = _user_data_;
#line 81 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_source_object_ = source_object;
#line 81 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_res_ = _res_;
#line 81 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	boxes_libvirt_broker_try_add_new_domain_co (_data_);
#line 1447 "libvirt-broker.c"
}


static gboolean boxes_libvirt_broker_try_add_new_domain_co (BoxesLibvirtBrokerTryAddNewDomainData* _data_) {
#line 73 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	switch (_data_->_state_) {
#line 73 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		case 0:
#line 1456 "libvirt-broker.c"
		goto _state_0;
#line 73 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		case 1:
#line 1460 "libvirt-broker.c"
		goto _state_1;
		default:
#line 73 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_assert_not_reached ();
#line 1465 "libvirt-broker.c"
	}
	_state_0:
#line 74 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp0_ = _data_->domain;
#line 74 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp1_ = gvir_domain_get_name (_data_->_tmp0_);
#line 74 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp2_ = g_str_has_prefix (_data_->_tmp1_, "guestfs-");
#line 74 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (_data_->_tmp2_) {
#line 75 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp3_ = _data_->domain;
#line 75 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp4_ = gvir_domain_get_name (_data_->_tmp3_);
#line 75 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_debug ("libvirt-broker.vala:75: Ignoring guestfs domain '%s'", _data_->_tmp4_);
#line 77 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 77 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		if (_data_->_state_ != 0) {
#line 77 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 77 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 1490 "libvirt-broker.c"
			}
		}
#line 77 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_object_unref (_data_->_async_result);
#line 77 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 1497 "libvirt-broker.c"
	}
	{
#line 81 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp5_ = _data_->source;
#line 81 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp6_ = _data_->connection;
#line 81 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp7_ = _data_->domain;
#line 81 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_state_ = 1;
#line 81 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		boxes_libvirt_broker_add_domain (_data_->self, _data_->_tmp5_, _data_->_tmp6_, _data_->_tmp7_, boxes_libvirt_broker_try_add_new_domain_ready, _data_);
#line 81 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 1512 "libvirt-broker.c"
		_state_1:
#line 81 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp8_ = boxes_libvirt_broker_add_domain_finish (_data_->self, _data_->_res_, &_data_->_inner_error_);
#line 81 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp9_ = _data_->_tmp8_;
#line 81 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data_->_tmp9_);
#line 81 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 1522 "libvirt-broker.c"
			goto __catch14_g_error;
		}
	}
	goto __finally14;
	__catch14_g_error:
	{
#line 80 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_error_ = _data_->_inner_error_;
#line 80 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_inner_error_ = NULL;
#line 83 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp10_ = _data_->source;
#line 83 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp11_ = boxes_collection_source_get_name (_data_->_tmp10_);
#line 83 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp12_ = _data_->_tmp11_;
#line 83 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp13_ = _data_->_tmp12_;
#line 83 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp14_ = _data_->_error_;
#line 83 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp15_ = _data_->_tmp14_->message;
#line 83 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_warning ("libvirt-broker.vala:83: Failed to create source '%s': %s", _data_->_tmp13_, _data_->_tmp15_);
#line 83 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_free0 (_data_->_tmp13_);
#line 80 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_error_free0 (_data_->_error_);
#line 1551 "libvirt-broker.c"
	}
	__finally14:
#line 80 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 80 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.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 80 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_clear_error (&_data_->_inner_error_);
#line 80 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_object_unref (_data_->_async_result);
#line 80 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 1564 "libvirt-broker.c"
	}
#line 73 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 73 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (_data_->_state_ != 0) {
#line 73 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 73 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 1574 "libvirt-broker.c"
		}
	}
#line 73 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_object_unref (_data_->_async_result);
#line 73 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return FALSE;
#line 1581 "libvirt-broker.c"
}


static void boxes_libvirt_broker_try_add_existing_domain_data_free (gpointer _data) {
	BoxesLibvirtBrokerTryAddExistingDomainData* _data_;
	_data_ = _data;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->source);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->connection);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->domain);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->result);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_slice_free (BoxesLibvirtBrokerTryAddExistingDomainData, _data_);
#line 1600 "libvirt-broker.c"
}


static void boxes_libvirt_broker_try_add_existing_domain (BoxesLibvirtBroker* self, BoxesCollectionSource* source, GVirConnection* connection, GVirDomain* domain, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	BoxesLibvirtBrokerTryAddExistingDomainData* _data_;
	BoxesLibvirtBroker* _tmp0_;
	BoxesCollectionSource* _tmp1_;
	BoxesCollectionSource* _tmp2_;
	GVirConnection* _tmp3_;
	GVirConnection* _tmp4_;
	GVirDomain* _tmp5_;
	GVirDomain* _tmp6_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_ = g_slice_new0 (BoxesLibvirtBrokerTryAddExistingDomainData);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_task_set_task_data (_data_->_async_result, _data_, boxes_libvirt_broker_try_add_existing_domain_data_free);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->self = _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp1_ = source;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp2_ = _g_object_ref0 (_tmp1_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->source);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->source = _tmp2_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp3_ = connection;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp4_ = _g_object_ref0 (_tmp3_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->connection);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->connection = _tmp4_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp5_ = domain;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp6_ = _g_object_ref0 (_tmp5_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->domain);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->domain = _tmp6_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	boxes_libvirt_broker_try_add_existing_domain_co (_data_);
#line 1649 "libvirt-broker.c"
}


static BoxesLibvirtMachine* boxes_libvirt_broker_try_add_existing_domain_finish (BoxesLibvirtBroker* self, GAsyncResult* _res_) {
	BoxesLibvirtMachine* result;
	BoxesLibvirtBrokerTryAddExistingDomainData* _data_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_ = g_task_propagate_pointer (G_TASK (_res_), NULL);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	result = _data_->result;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->result = NULL;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return result;
#line 1664 "libvirt-broker.c"
}


static void boxes_libvirt_broker_try_add_existing_domain_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_) {
	BoxesLibvirtBrokerTryAddExistingDomainData* _data_;
#line 92 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_ = _user_data_;
#line 92 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_source_object_ = source_object;
#line 92 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_res_ = _res_;
#line 92 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	boxes_libvirt_broker_try_add_existing_domain_co (_data_);
#line 1678 "libvirt-broker.c"
}


static gboolean boxes_libvirt_broker_try_add_existing_domain_co (BoxesLibvirtBrokerTryAddExistingDomainData* _data_) {
#line 88 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	switch (_data_->_state_) {
#line 88 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		case 0:
#line 1687 "libvirt-broker.c"
		goto _state_0;
#line 88 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		case 1:
#line 1691 "libvirt-broker.c"
		goto _state_1;
		default:
#line 88 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_assert_not_reached ();
#line 1696 "libvirt-broker.c"
	}
	_state_0:
	{
#line 92 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp0_ = _data_->source;
#line 92 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp1_ = _data_->connection;
#line 92 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp2_ = _data_->domain;
#line 92 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_state_ = 1;
#line 92 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		boxes_libvirt_broker_add_domain (_data_->self, _data_->_tmp0_, _data_->_tmp1_, _data_->_tmp2_, boxes_libvirt_broker_try_add_existing_domain_ready, _data_);
#line 92 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 1712 "libvirt-broker.c"
		_state_1:
#line 92 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp3_ = boxes_libvirt_broker_add_domain_finish (_data_->self, _data_->_res_, &_data_->_inner_error_);
#line 92 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->machine = _data_->_tmp3_;
#line 92 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 1720 "libvirt-broker.c"
			goto __catch15_g_error;
		}
#line 93 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp4_ = boxes_libvirt_machine_get_domain_config (_data_->machine);
#line 93 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp5_ = _data_->_tmp4_;
#line 93 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp6_ = _g_object_ref0 (_data_->_tmp5_);
#line 93 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->config = _data_->_tmp6_;
#line 96 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp8_ = _data_->config;
#line 96 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp9_ = boxes_vm_configurator_is_install_config (_data_->_tmp8_);
#line 96 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		if (_data_->_tmp9_) {
#line 96 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			_data_->_tmp7_ = TRUE;
#line 1739 "libvirt-broker.c"
		} else {
#line 96 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			_data_->_tmp10_ = _data_->config;
#line 96 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			_data_->_tmp11_ = boxes_vm_configurator_is_live_config (_data_->_tmp10_);
#line 96 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			_data_->_tmp7_ = _data_->_tmp11_;
#line 1747 "libvirt-broker.c"
		}
#line 96 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		if (_data_->_tmp7_) {
#line 97 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			_data_->_tmp12_ = boxes_collection_item_get_name ((BoxesCollectionItem*) _data_->machine);
#line 97 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			_data_->_tmp13_ = _data_->_tmp12_;
#line 97 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			g_debug ("libvirt-broker.vala:97: Continuing installation/live session for '%s'," \
" ..", _data_->_tmp13_);
#line 98 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			_data_->_tmp14_ = boxes_vm_creator_new_for_install_completion (_data_->machine);
#line 98 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			_data_->_tmp15_ = _data_->_tmp14_;
#line 98 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			_boxes_vm_creator_unref0 (_data_->_tmp15_);
#line 1763 "libvirt-broker.c"
		} else {
#line 99 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			_data_->_tmp16_ = _data_->config;
#line 99 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			_data_->_tmp17_ = boxes_vm_configurator_is_import_config (_data_->_tmp16_);
#line 99 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			if (_data_->_tmp17_) {
#line 100 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp18_ = boxes_collection_item_get_name ((BoxesCollectionItem*) _data_->machine);
#line 100 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp19_ = _data_->_tmp18_;
#line 100 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				g_debug ("libvirt-broker.vala:100: Continuing import of '%s', ..", _data_->_tmp19_);
#line 101 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp20_ = boxes_vm_importer_new_for_import_completion (_data_->machine);
#line 101 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp21_ = _data_->_tmp20_;
#line 101 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_boxes_vm_creator_unref0 (_data_->_tmp21_);
#line 1783 "libvirt-broker.c"
			} else {
#line 102 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp22_ = _data_->config;
#line 102 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp23_ = boxes_vm_configurator_is_libvirt_system_import_config (_data_->_tmp22_);
#line 102 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				if (_data_->_tmp23_) {
#line 103 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_data_->_tmp24_ = boxes_collection_item_get_name ((BoxesCollectionItem*) _data_->machine);
#line 103 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_data_->_tmp25_ = _data_->_tmp24_;
#line 103 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					g_debug ("libvirt-broker.vala:103: Continuing import of '%s', ..", _data_->_tmp25_);
#line 104 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_data_->_tmp26_ = boxes_libvirt_vm_importer_new_for_import_completion (_data_->machine);
#line 104 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_data_->_tmp27_ = _data_->_tmp26_;
#line 104 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_boxes_vm_creator_unref0 (_data_->_tmp27_);
#line 1803 "libvirt-broker.c"
				} else {
#line 105 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_data_->_tmp28_ = _data_->config;
#line 105 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_data_->_tmp29_ = boxes_vm_configurator_is_libvirt_cloning_config (_data_->_tmp28_);
#line 105 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					if (_data_->_tmp29_) {
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
						_data_->_tmp30_ = boxes_collection_item_get_name ((BoxesCollectionItem*) _data_->machine);
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
						_data_->_tmp31_ = _data_->_tmp30_;
#line 106 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
						g_debug ("libvirt-broker.vala:106: Continuing cloning of '%s', ..", _data_->_tmp31_);
#line 107 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
						_data_->_tmp32_ = boxes_libvirt_vm_cloner_new_for_cloning_completion (_data_->machine);
#line 107 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
						_data_->_tmp33_ = _data_->_tmp32_;
#line 107 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
						_boxes_vm_creator_unref0 (_data_->_tmp33_);
#line 1823 "libvirt-broker.c"
					}
				}
			}
		}
#line 110 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->result = _data_->machine;
#line 110 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data_->config);
#line 110 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 110 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		if (_data_->_state_ != 0) {
#line 110 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 110 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 1840 "libvirt-broker.c"
			}
		}
#line 110 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_object_unref (_data_->_async_result);
#line 110 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 1847 "libvirt-broker.c"
	}
	goto __finally15;
	__catch15_g_error:
	{
#line 91 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_error_ = _data_->_inner_error_;
#line 91 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_inner_error_ = NULL;
#line 112 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp34_ = _data_->source;
#line 112 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp35_ = boxes_collection_source_get_name (_data_->_tmp34_);
#line 112 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp36_ = _data_->_tmp35_;
#line 112 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp37_ = _data_->_tmp36_;
#line 112 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp38_ = _data_->_error_;
#line 112 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_tmp39_ = _data_->_tmp38_->message;
#line 112 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_warning ("libvirt-broker.vala:112: Failed to create source '%s': %s", _data_->_tmp37_, _data_->_tmp39_);
#line 112 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_free0 (_data_->_tmp37_);
#line 114 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->result = NULL;
#line 114 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_error_free0 (_data_->_error_);
#line 114 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 114 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		if (_data_->_state_ != 0) {
#line 114 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 114 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 1884 "libvirt-broker.c"
			}
		}
#line 114 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_object_unref (_data_->_async_result);
#line 114 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 1891 "libvirt-broker.c"
	}
	__finally15:
#line 91 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.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 91 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_clear_error (&_data_->_inner_error_);
#line 91 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_object_unref (_data_->_async_result);
#line 91 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return FALSE;
#line 1902 "libvirt-broker.c"
}


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


static void boxes_libvirt_broker_real_add_source (BoxesBroker* base, BoxesCollectionSource* source, GAsyncReadyCallback _callback_, gpointer _user_data_) {
	BoxesLibvirtBroker * self;
	BoxesLibvirtBrokerAddSourceData* _data_;
	BoxesLibvirtBroker* _tmp0_;
	BoxesCollectionSource* _tmp1_;
	BoxesCollectionSource* _tmp2_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	self = (BoxesLibvirtBroker*) base;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_ = g_slice_new0 (BoxesLibvirtBrokerAddSourceData);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_task_set_task_data (_data_->_async_result, _data_, boxes_libvirt_broker_real_add_source_data_free);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp0_ = _g_object_ref0 (self);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->self = _tmp0_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp1_ = source;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp2_ = _g_object_ref0 (_tmp1_);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->source);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->source = _tmp2_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	boxes_libvirt_broker_real_add_source_co (_data_);
#line 1945 "libvirt-broker.c"
}


static void boxes_libvirt_broker_real_add_source_finish (BoxesBroker* base, GAsyncResult* _res_, GError** error) {
	BoxesLibvirtBrokerAddSourceData* _data_;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_ = g_task_propagate_pointer (G_TASK (_res_), error);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (NULL == _data_) {
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return;
#line 1957 "libvirt-broker.c"
	}
}


static Block34Data* block34_data_ref (Block34Data* _data34_) {
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_atomic_int_inc (&_data34_->_ref_count_);
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return _data34_;
#line 1967 "libvirt-broker.c"
}


static void block34_data_unref (void * _userdata_) {
	Block34Data* _data34_;
	_data34_ = (Block34Data*) _userdata_;
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (g_atomic_int_dec_and_test (&_data34_->_ref_count_)) {
#line 1976 "libvirt-broker.c"
		BoxesLibvirtBroker* self;
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		self = _data34_->self;
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data34_->source);
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (self);
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_slice_free (Block34Data, _data34_);
#line 1986 "libvirt-broker.c"
	}
}


static void boxes_libvirt_broker_add_source_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_) {
	BoxesLibvirtBrokerAddSourceData* _data_;
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_ = _user_data_;
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_source_object_ = source_object;
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_res_ = _res_;
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	boxes_libvirt_broker_real_add_source_co (_data_);
#line 2001 "libvirt-broker.c"
}


static Block35Data* block35_data_ref (Block35Data* _data35_) {
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_atomic_int_inc (&_data35_->_ref_count_);
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return _data35_;
#line 2010 "libvirt-broker.c"
}


static void block35_data_unref (void * _userdata_) {
	Block35Data* _data35_;
	_data35_ = (Block35Data*) _userdata_;
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (g_atomic_int_dec_and_test (&_data35_->_ref_count_)) {
#line 2019 "libvirt-broker.c"
		BoxesLibvirtBroker* self;
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		self = _data35_->_data34_->self;
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data35_->cloned);
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data35_->clone);
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		block34_data_unref (_data35_->_data34_);
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data35_->_data34_ = NULL;
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_slice_free (Block35Data, _data35_);
#line 2033 "libvirt-broker.c"
	}
}


static void ____lambda22_ (Block35Data* _data35_) {
	Block34Data* _data34_;
	BoxesLibvirtBroker* self;
	BoxesLibvirtMachine* _tmp0_;
	gboolean _tmp1_;
	gboolean _tmp2_;
#line 166 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data34_ = _data35_->_data34_;
#line 166 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	self = _data34_->self;
#line 167 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp0_ = _data35_->clone;
#line 167 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp1_ = boxes_machine_get_under_construction ((BoxesMachine*) _tmp0_);
#line 167 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp2_ = _tmp1_;
#line 167 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (!_tmp2_) {
#line 2056 "libvirt-broker.c"
		BoxesLibvirtMachine* _tmp3_;
		BoxesLibvirtMachine* _tmp4_;
		gulong _tmp5_;
#line 168 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_tmp3_ = _data35_->cloned;
#line 168 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		boxes_machine_set_can_delete ((BoxesMachine*) _tmp3_, TRUE);
#line 169 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_tmp4_ = _data35_->clone;
#line 169 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_tmp5_ = _data35_->under_construct_id;
#line 169 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_signal_handler_disconnect ((GObject*) _tmp4_, _tmp5_);
#line 2070 "libvirt-broker.c"
	}
}


static void _____lambda22__g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self) {
#line 166 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	____lambda22_ (self);
#line 2078 "libvirt-broker.c"
}


static void __lambda23_ (BoxesLibvirtBroker* self, GVirConnection* connection, GVirDomain* domain) {
	BoxesLibvirtMachine* machine = NULL;
	GVirDomain* _tmp0_;
	gconstpointer _tmp1_;
	BoxesLibvirtMachine* _tmp2_;
	BoxesLibvirtMachine* _tmp3_;
	BoxesApp* _tmp4_;
	BoxesLibvirtMachine* _tmp5_;
#line 174 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_return_if_fail (connection != NULL);
#line 174 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_return_if_fail (domain != NULL);
#line 175 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp0_ = domain;
#line 175 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp1_ = g_object_get_data ((GObject*) _tmp0_, "machine");
#line 175 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp2_ = _g_object_ref0 ((BoxesLibvirtMachine*) _tmp1_);
#line 175 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	machine = _tmp2_;
#line 176 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp3_ = machine;
#line 176 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (_tmp3_ == NULL) {
#line 177 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (machine);
#line 177 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return;
#line 2110 "libvirt-broker.c"
	}
#line 179 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp4_ = boxes_app_app;
#line 179 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp5_ = machine;
#line 179 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	boxes_app_delete_machine (_tmp4_, (BoxesMachine*) _tmp5_, FALSE);
#line 174 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (machine);
#line 2120 "libvirt-broker.c"
}


static void ___lambda23__gvir_connection_domain_removed (GVirConnection* _sender, GVirDomain* dom, gpointer self) {
#line 174 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	__lambda23_ ((BoxesLibvirtBroker*) self, _sender, dom);
#line 2127 "libvirt-broker.c"
}


static void __lambda25_ (Block34Data* _data34_, GVirConnection* connection, GVirDomain* domain) {
	BoxesLibvirtBroker* self;
	GVirDomain* _tmp0_;
	const gchar* _tmp1_;
	BoxesCollectionSource* _tmp2_;
	GVirConnection* _tmp3_;
	GVirDomain* _tmp4_;
#line 182 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	self = _data34_->self;
#line 182 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_return_if_fail (connection != NULL);
#line 182 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_return_if_fail (domain != NULL);
#line 183 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp0_ = domain;
#line 183 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp1_ = gvir_domain_get_name (_tmp0_);
#line 183 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_debug ("libvirt-broker.vala:183: New domain '%s'", _tmp1_);
#line 184 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp2_ = _data34_->source;
#line 184 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp3_ = connection;
#line 184 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_tmp4_ = domain;
#line 184 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	boxes_libvirt_broker_try_add_new_domain (self, _tmp2_, _tmp3_, _tmp4_, NULL, NULL);
#line 2158 "libvirt-broker.c"
}


static void ___lambda25__gvir_connection_domain_added (GVirConnection* _sender, GVirDomain* dom, gpointer self) {
#line 182 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	__lambda25_ (self, _sender, dom);
#line 2165 "libvirt-broker.c"
}


static gboolean boxes_libvirt_broker_real_add_source_co (BoxesLibvirtBrokerAddSourceData* _data_) {
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	switch (_data_->_state_) {
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		case 0:
#line 2174 "libvirt-broker.c"
		goto _state_0;
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		case 1:
#line 2178 "libvirt-broker.c"
		goto _state_1;
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		case 2:
#line 2182 "libvirt-broker.c"
		goto _state_2;
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		case 3:
#line 2186 "libvirt-broker.c"
		goto _state_3;
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		case 4:
#line 2190 "libvirt-broker.c"
		goto _state_4;
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		case 5:
#line 2194 "libvirt-broker.c"
		goto _state_5;
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		case 6:
#line 2198 "libvirt-broker.c"
		goto _state_6;
		default:
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_assert_not_reached ();
#line 2203 "libvirt-broker.c"
	}
	_state_0:
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_data34_ = g_slice_new0 (Block34Data);
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_data34_->_ref_count_ = 1;
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_data34_->self = g_object_ref (_data_->self);
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp0_ = _data_->source;
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->_data34_->source);
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_data34_->source = _data_->_tmp0_;
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_data34_->_async_data_ = _data_;
#line 119 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp1_ = _data_->self->priv->connections;
#line 119 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp2_ = _data_->_data34_->source;
#line 119 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp3_ = boxes_collection_source_get_name (_data_->_tmp2_);
#line 119 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp4_ = _data_->_tmp3_;
#line 119 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp5_ = _data_->_tmp4_;
#line 119 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp6_ = g_hash_table_lookup (_data_->_tmp1_, _data_->_tmp5_);
#line 119 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp7_ = ((GVirConnection*) _data_->_tmp6_) != NULL;
#line 119 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_free0 (_data_->_tmp5_);
#line 119 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (_data_->_tmp7_) {
#line 120 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		block34_data_unref (_data_->_data34_);
#line 120 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data34_ = NULL;
#line 120 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 120 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		if (_data_->_state_ != 0) {
#line 120 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 120 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 2250 "libvirt-broker.c"
			}
		}
#line 120 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_object_unref (_data_->_async_result);
#line 120 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 2257 "libvirt-broker.c"
	}
#line 122 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp8_ = _data_->_data34_->source;
#line 122 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp9_ = boxes_collection_source_get_uri (_data_->_tmp8_);
#line 122 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp10_ = _data_->_tmp9_;
#line 122 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp11_ = _data_->_tmp10_;
#line 122 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp12_ = gvir_connection_new (_data_->_tmp11_);
#line 122 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp13_ = _data_->_tmp12_;
#line 122 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_free0 (_data_->_tmp11_);
#line 122 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->connection = _data_->_tmp13_;
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp14_ = _data_->connection;
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_state_ = 1;
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	gvir_connection_open_async (_data_->_tmp14_, NULL, boxes_libvirt_broker_add_source_ready, _data_);
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return FALSE;
#line 2283 "libvirt-broker.c"
	_state_1:
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	gvir_connection_open_finish (_data_->_tmp14_, _data_->_res_, &_data_->_inner_error_);
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data_->connection);
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		block34_data_unref (_data_->_data34_);
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data34_ = NULL;
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_object_unref (_data_->_async_result);
#line 124 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 2301 "libvirt-broker.c"
	}
#line 125 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp15_ = _data_->connection;
#line 125 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_state_ = 2;
#line 125 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	gvir_connection_fetch_domains_async (_data_->_tmp15_, NULL, boxes_libvirt_broker_add_source_ready, _data_);
#line 125 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return FALSE;
#line 2311 "libvirt-broker.c"
	_state_2:
#line 125 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	gvir_connection_fetch_domains_finish (_data_->_tmp15_, _data_->_res_, &_data_->_inner_error_);
#line 125 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 125 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 125 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data_->connection);
#line 125 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		block34_data_unref (_data_->_data34_);
#line 125 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data34_ = NULL;
#line 125 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_object_unref (_data_->_async_result);
#line 125 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 2329 "libvirt-broker.c"
	}
#line 126 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp16_ = _data_->connection;
#line 126 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_state_ = 3;
#line 126 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	gvir_connection_fetch_storage_pools_async (_data_->_tmp16_, NULL, boxes_libvirt_broker_add_source_ready, _data_);
#line 126 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return FALSE;
#line 2339 "libvirt-broker.c"
	_state_3:
#line 126 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	gvir_connection_fetch_storage_pools_finish (_data_->_tmp16_, _data_->_res_, &_data_->_inner_error_);
#line 126 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 126 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 126 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data_->connection);
#line 126 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		block34_data_unref (_data_->_data34_);
#line 126 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data34_ = NULL;
#line 126 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_object_unref (_data_->_async_result);
#line 126 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 2357 "libvirt-broker.c"
	}
#line 127 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp17_ = _data_->connection;
#line 127 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_state_ = 4;
#line 127 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	boxes_ensure_storage_pool (_data_->_tmp17_, boxes_libvirt_broker_add_source_ready, _data_);
#line 127 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return FALSE;
#line 2367 "libvirt-broker.c"
	_state_4:
#line 127 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp18_ = boxes_ensure_storage_pool_finish (_data_->_res_, &_data_->_inner_error_);
#line 127 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp19_ = _data_->_tmp18_;
#line 127 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->_tmp19_);
#line 127 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 127 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 127 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data_->connection);
#line 127 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		block34_data_unref (_data_->_data34_);
#line 127 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data34_ = NULL;
#line 127 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_object_unref (_data_->_async_result);
#line 127 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 2389 "libvirt-broker.c"
	}
#line 129 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp20_ = _data_->self->priv->connections;
#line 129 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp21_ = _data_->_data34_->source;
#line 129 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp22_ = boxes_collection_source_get_name (_data_->_tmp21_);
#line 129 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp23_ = _data_->_tmp22_;
#line 129 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp24_ = _data_->connection;
#line 129 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp25_ = _g_object_ref0 (_data_->_tmp24_);
#line 129 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_hash_table_insert (_data_->_tmp20_, _data_->_tmp23_, _data_->_tmp25_);
#line 131 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->clones = NULL;
#line 132 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp26_ = _data_->connection;
#line 132 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp27_ = gvir_connection_get_domains (_data_->_tmp26_);
#line 2411 "libvirt-broker.c"
	{
#line 132 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->domain_collection = _data_->_tmp27_;
#line 132 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		for (_data_->domain_it = _data_->domain_collection; _data_->domain_it != NULL; _data_->domain_it = _data_->domain_it->next) {
#line 132 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			_data_->_tmp28_ = _g_object_ref0 ((GVirDomain*) _data_->domain_it->data);
#line 132 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			_data_->domain = _data_->_tmp28_;
#line 2421 "libvirt-broker.c"
			{
#line 133 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp29_ = _data_->_data34_->source;
#line 133 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp30_ = _data_->connection;
#line 133 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp31_ = _data_->domain;
#line 133 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_state_ = 5;
#line 133 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				boxes_libvirt_broker_try_add_existing_domain (_data_->self, _data_->_tmp29_, _data_->_tmp30_, _data_->_tmp31_, boxes_libvirt_broker_add_source_ready, _data_);
#line 133 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				return FALSE;
#line 2435 "libvirt-broker.c"
				_state_5:
#line 133 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp32_ = boxes_libvirt_broker_try_add_existing_domain_finish (_data_->self, _data_->_res_);
#line 133 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->machine = _data_->_tmp32_;
#line 135 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp33_ = _data_->machine;
#line 135 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp34_ = boxes_libvirt_machine_get_domain_config (_data_->_tmp33_);
#line 135 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp35_ = _data_->_tmp34_;
#line 135 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp36_ = boxes_vm_configurator_is_libvirt_cloning_config (_data_->_tmp35_);
#line 135 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				if (_data_->_tmp36_) {
#line 136 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_data_->_tmp37_ = _data_->machine;
#line 136 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_data_->_tmp38_ = _g_object_ref0 (_data_->_tmp37_);
#line 136 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_data_->clones = g_list_append (_data_->clones, _data_->_tmp38_);
#line 2457 "libvirt-broker.c"
				}
#line 132 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_g_object_unref0 (_data_->machine);
#line 132 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_g_object_unref0 (_data_->domain);
#line 2463 "libvirt-broker.c"
			}
		}
#line 132 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		__g_list_free__g_object_unref0_0 (_data_->domain_collection);
#line 2468 "libvirt-broker.c"
	}
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp39_ = _data_->clones;
#line 2472 "libvirt-broker.c"
	{
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->clone_collection = _data_->_tmp39_;
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		for (_data_->clone_it = _data_->clone_collection; _data_->clone_it != NULL; _data_->clone_it = _data_->clone_it->next) {
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			_data_->_tmp40_ = _g_object_ref0 ((BoxesLibvirtMachine*) _data_->clone_it->data);
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			_data_->clone = _data_->_tmp40_;
#line 2482 "libvirt-broker.c"
			{
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_data35_ = g_slice_new0 (Block35Data);
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_data35_->_ref_count_ = 1;
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_data35_->_data34_ = block34_data_ref (_data_->_data34_);
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_data35_->clone = _data_->clone;
#line 140 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp41_ = _data_->_data35_->clone;
#line 140 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp42_ = boxes_libvirt_machine_get_vm_creator (_data_->_tmp41_);
#line 140 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp43_ = _data_->_tmp42_;
#line 140 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp44_ = boxes_vm_importer_get_source_media (G_TYPE_CHECK_INSTANCE_TYPE (_data_->_tmp43_, BOXES_TYPE_VM_IMPORTER) ? ((BoxesVMImporter*) _data_->_tmp43_) : NULL);
#line 140 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp45_ = _data_->_tmp44_;
#line 140 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp46_ = ((BoxesInstallerMedia*) _data_->_tmp45_)->device_file;
#line 140 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp47_ = g_strdup (_data_->_tmp46_);
#line 140 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->disk_path = _data_->_tmp47_;
#line 141 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_data35_->cloned = NULL;
#line 2510 "libvirt-broker.c"
				{
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_data_->i = 0;
#line 2514 "libvirt-broker.c"
					{
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
						_data_->_tmp48_ = TRUE;
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
						while (TRUE) {
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							if (!_data_->_tmp48_) {
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								_data_->_tmp49_ = _data_->i;
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								_data_->i = _data_->_tmp49_ + 1;
#line 2526 "libvirt-broker.c"
							}
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_data_->_tmp48_ = FALSE;
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_data_->_tmp50_ = _data_->i;
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_data_->_tmp51_ = boxes_app_app;
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_data_->_tmp52_ = _data_->_tmp51_->collection;
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_data_->_tmp53_ = boxes_collection_get_length (_data_->_tmp52_);
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_data_->_tmp54_ = _data_->_tmp53_;
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							if (!(((guint) _data_->_tmp50_) < _data_->_tmp54_)) {
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								break;
#line 2544 "libvirt-broker.c"
							}
#line 144 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_data_->_tmp55_ = boxes_app_app;
#line 144 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_data_->_tmp56_ = _data_->_tmp55_->collection;
#line 144 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_data_->_tmp57_ = _data_->i;
#line 144 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_data_->_tmp58_ = boxes_collection_get_item (_data_->_tmp56_, _data_->_tmp57_);
#line 144 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_data_->item = _data_->_tmp58_;
#line 146 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_data_->_tmp59_ = _data_->item;
#line 146 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							if (!G_TYPE_CHECK_INSTANCE_TYPE (_data_->_tmp59_, BOXES_TYPE_LIBVIRT_MACHINE)) {
#line 147 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								_g_object_unref0 (_data_->item);
#line 147 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								continue;
#line 2564 "libvirt-broker.c"
							}
#line 149 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_data_->_tmp60_ = _data_->item;
#line 149 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_data_->_tmp61_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_data_->_tmp60_, BOXES_TYPE_LIBVIRT_MACHINE) ? ((BoxesLibvirtMachine*) _data_->_tmp60_) : NULL);
#line 149 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_data_->_vala1_machine = _data_->_tmp61_;
#line 150 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_data_->_tmp62_ = _data_->_vala1_machine;
#line 150 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_data_->_tmp63_ = boxes_libvirt_machine_get_storage_volume (_data_->_tmp62_);
#line 150 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_data_->_tmp64_ = _data_->_tmp63_;
#line 150 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_data_->_tmp65_ = _g_object_ref0 (_data_->_tmp64_);
#line 150 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_data_->volume = _data_->_tmp65_;
#line 151 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_data_->_tmp67_ = _data_->volume;
#line 151 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							if (_data_->_tmp67_ != NULL) {
#line 151 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								_data_->_tmp69_ = _data_->volume;
#line 151 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								_data_->_tmp70_ = gvir_storage_vol_get_path (_data_->_tmp69_, &_data_->_inner_error_);
#line 151 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								_data_->_tmp68_ = _data_->_tmp70_;
#line 151 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 151 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
									g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 151 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
									_g_object_unref0 (_data_->volume);
#line 151 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
									_g_object_unref0 (_data_->_vala1_machine);
#line 151 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
									_g_object_unref0 (_data_->item);
#line 151 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
									_g_free0 (_data_->disk_path);
#line 151 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
									block35_data_unref (_data_->_data35_);
#line 151 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
									_data_->_data35_ = NULL;
#line 151 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
									__g_list_free__g_object_unref0_0 (_data_->clones);
#line 151 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
									_g_object_unref0 (_data_->connection);
#line 151 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
									block34_data_unref (_data_->_data34_);
#line 151 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
									_data_->_data34_ = NULL;
#line 151 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
									g_object_unref (_data_->_async_result);
#line 151 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
									return FALSE;
#line 2620 "libvirt-broker.c"
								}
#line 151 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								_data_->_tmp71_ = _data_->disk_path;
#line 151 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								_data_->_tmp66_ = g_strcmp0 (_data_->_tmp68_, _data_->_tmp71_) == 0;
#line 2626 "libvirt-broker.c"
							} else {
#line 151 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								_data_->_tmp66_ = FALSE;
#line 2630 "libvirt-broker.c"
							}
#line 151 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							if (_data_->_tmp66_) {
#line 152 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								_data_->_tmp72_ = _data_->_vala1_machine;
#line 152 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								_data_->_tmp73_ = _g_object_ref0 (_data_->_tmp72_);
#line 152 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								_g_object_unref0 (_data_->_data35_->cloned);
#line 152 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								_data_->_data35_->cloned = _data_->_tmp73_;
#line 154 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								_g_object_unref0 (_data_->volume);
#line 154 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								_g_object_unref0 (_data_->_vala1_machine);
#line 154 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								_g_object_unref0 (_data_->item);
#line 154 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
								break;
#line 2650 "libvirt-broker.c"
							}
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_g_object_unref0 (_data_->volume);
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_g_object_unref0 (_data_->_vala1_machine);
#line 143 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
							_g_object_unref0 (_data_->item);
#line 2658 "libvirt-broker.c"
						}
					}
				}
#line 158 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp74_ = _data_->_data35_->cloned;
#line 158 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				if (_data_->_tmp74_ == NULL) {
#line 159 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_data_->_tmp75_ = _data_->_data35_->clone;
#line 159 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_data_->_tmp76_ = boxes_collection_item_get_name ((BoxesCollectionItem*) _data_->_tmp75_);
#line 159 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_data_->_tmp77_ = _data_->_tmp76_;
#line 159 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					g_warning ("libvirt-broker.vala:159: Failed to find source machine of clone %s", _data_->_tmp77_);
#line 161 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_g_free0 (_data_->disk_path);
#line 161 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					block35_data_unref (_data_->_data35_);
#line 161 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					_data_->_data35_ = NULL;
#line 161 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
					continue;
#line 2682 "libvirt-broker.c"
				}
#line 164 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp78_ = _data_->_data35_->cloned;
#line 164 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				boxes_machine_set_can_delete ((BoxesMachine*) _data_->_tmp78_, FALSE);
#line 165 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_data35_->under_construct_id = (gulong) 0;
#line 166 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp79_ = _data_->_data35_->clone;
#line 166 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_tmp80_ = g_signal_connect_data ((GObject*) _data_->_tmp79_, "notify::under-construction", (GCallback) _____lambda22__g_object_notify, block35_data_ref (_data_->_data35_), (GClosureNotify) block35_data_unref, 0);
#line 166 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_data35_->under_construct_id = _data_->_tmp80_;
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_g_free0 (_data_->disk_path);
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				block35_data_unref (_data_->_data35_);
#line 139 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
				_data_->_data35_ = NULL;
#line 2702 "libvirt-broker.c"
			}
		}
	}
#line 174 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp81_ = _data_->connection;
#line 174 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_signal_connect_object (_data_->_tmp81_, "domain-removed", (GCallback) ___lambda23__gvir_connection_domain_removed, _data_->self, 0);
#line 182 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp82_ = _data_->connection;
#line 182 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_signal_connect_data (_data_->_tmp82_, "domain-added", (GCallback) ___lambda25__gvir_connection_domain_added, block34_data_ref (_data_->_data34_), (GClosureNotify) block34_data_unref, 0);
#line 187 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_tmp83_ = _data_->_data34_->source;
#line 187 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_state_ = 6;
#line 187 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	BOXES_BROKER_CLASS (boxes_libvirt_broker_parent_class)->add_source (G_TYPE_CHECK_INSTANCE_CAST (_data_->self, BOXES_TYPE_BROKER, BoxesBroker), _data_->_tmp83_, boxes_libvirt_broker_add_source_ready, _data_);
#line 187 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return FALSE;
#line 2722 "libvirt-broker.c"
	_state_6:
#line 187 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	BOXES_BROKER_CLASS (boxes_libvirt_broker_parent_class)->add_source_finish (G_TYPE_CHECK_INSTANCE_CAST (_data_->self, BOXES_TYPE_BROKER, BoxesBroker), _data_->_res_, &_data_->_inner_error_);
#line 187 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (G_UNLIKELY (_data_->_inner_error_ != NULL)) {
#line 187 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_task_return_error (_data_->_async_result, _data_->_inner_error_);
#line 187 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		__g_list_free__g_object_unref0_0 (_data_->clones);
#line 187 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_g_object_unref0 (_data_->connection);
#line 187 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		block34_data_unref (_data_->_data34_);
#line 187 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		_data_->_data34_ = NULL;
#line 187 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		g_object_unref (_data_->_async_result);
#line 187 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		return FALSE;
#line 2742 "libvirt-broker.c"
	}
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	__g_list_free__g_object_unref0_0 (_data_->clones);
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_object_unref0 (_data_->connection);
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	block34_data_unref (_data_->_data34_);
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_data_->_data34_ = NULL;
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	if (_data_->_state_ != 0) {
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
		while (g_task_get_completed (_data_->_async_result) != TRUE) {
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
#line 2760 "libvirt-broker.c"
		}
	}
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_object_unref (_data_->_async_result);
#line 118 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	return FALSE;
#line 2767 "libvirt-broker.c"
}


static void boxes_libvirt_broker_class_init (BoxesLibvirtBrokerClass * klass) {
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	boxes_libvirt_broker_parent_class = g_type_class_peek_parent (klass);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	g_type_class_add_private (klass, sizeof (BoxesLibvirtBrokerPrivate));
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	((BoxesBrokerClass *) klass)->add_source = (void (*) (BoxesBroker *, BoxesCollectionSource*, GAsyncReadyCallback, gpointer)) boxes_libvirt_broker_real_add_source;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	((BoxesBrokerClass *) klass)->add_source_finish = (void (*) (BoxesBroker *, GAsyncResult*, GError**)) boxes_libvirt_broker_real_add_source_finish;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	G_OBJECT_CLASS (klass)->finalize = boxes_libvirt_broker_finalize;
#line 2782 "libvirt-broker.c"
}


static void boxes_libvirt_broker_instance_init (BoxesLibvirtBroker * self) {
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	self->priv = BOXES_LIBVIRT_BROKER_GET_PRIVATE (self);
#line 2789 "libvirt-broker.c"
}


static void boxes_libvirt_broker_finalize (GObject * obj) {
	BoxesLibvirtBroker * self;
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, BOXES_TYPE_LIBVIRT_BROKER, BoxesLibvirtBroker);
#line 7 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	_g_hash_table_unref0 (self->priv->connections);
#line 8 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	__g_list_free__g_object_unref0_0 (self->priv->pending_domains);
#line 5 "/home/fborges/checkout/gnome-boxes/src/libvirt-broker.vala"
	G_OBJECT_CLASS (boxes_libvirt_broker_parent_class)->finalize (obj);
#line 2803 "libvirt-broker.c"
}


GType boxes_libvirt_broker_get_type (void) {
	static volatile gsize boxes_libvirt_broker_type_id__volatile = 0;
	if (g_once_init_enter (&boxes_libvirt_broker_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (BoxesLibvirtBrokerClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) boxes_libvirt_broker_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (BoxesLibvirtBroker), 0, (GInstanceInitFunc) boxes_libvirt_broker_instance_init, NULL };
		GType boxes_libvirt_broker_type_id;
		boxes_libvirt_broker_type_id = g_type_register_static (BOXES_TYPE_BROKER, "BoxesLibvirtBroker", &g_define_type_info, 0);
		g_once_init_leave (&boxes_libvirt_broker_type_id__volatile, boxes_libvirt_broker_type_id);
	}
	return boxes_libvirt_broker_type_id__volatile;
}



