/* win7-installer.c generated by valac 0.17.3.12-6a5ea3, the Vala compiler
 * generated from win7-installer.vala, do not modify */

/* This file is part of GNOME Boxes. License: LGPLv2+*/
/* Automated installer media for Windows 7 and 2008*/

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


#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;
typedef struct _BoxesInstallerMediaPrivate BoxesInstallerMediaPrivate;

#define BOXES_TYPE_PAIR (boxes_pair_get_type ())
#define BOXES_PAIR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_PAIR, BoxesPair))
#define BOXES_PAIR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_PAIR, BoxesPairClass))
#define BOXES_IS_PAIR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_PAIR))
#define BOXES_IS_PAIR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_PAIR))
#define BOXES_PAIR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_PAIR, BoxesPairClass))

typedef struct _BoxesPair BoxesPair;
typedef struct _BoxesPairClass BoxesPairClass;

#define BOXES_TYPE_UNATTENDED_INSTALLER (boxes_unattended_installer_get_type ())
#define BOXES_UNATTENDED_INSTALLER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_UNATTENDED_INSTALLER, BoxesUnattendedInstaller))
#define BOXES_UNATTENDED_INSTALLER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_UNATTENDED_INSTALLER, BoxesUnattendedInstallerClass))
#define BOXES_IS_UNATTENDED_INSTALLER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_UNATTENDED_INSTALLER))
#define BOXES_IS_UNATTENDED_INSTALLER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_UNATTENDED_INSTALLER))
#define BOXES_UNATTENDED_INSTALLER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_UNATTENDED_INSTALLER, BoxesUnattendedInstallerClass))

typedef struct _BoxesUnattendedInstaller BoxesUnattendedInstaller;
typedef struct _BoxesUnattendedInstallerClass BoxesUnattendedInstallerClass;
typedef struct _BoxesUnattendedInstallerPrivate BoxesUnattendedInstallerPrivate;

#define BOXES_TYPE_UNATTENDED_FILE (boxes_unattended_file_get_type ())
#define BOXES_UNATTENDED_FILE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_UNATTENDED_FILE, BoxesUnattendedFile))
#define BOXES_IS_UNATTENDED_FILE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_UNATTENDED_FILE))
#define BOXES_UNATTENDED_FILE_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), BOXES_TYPE_UNATTENDED_FILE, BoxesUnattendedFileIface))

typedef struct _BoxesUnattendedFile BoxesUnattendedFile;
typedef struct _BoxesUnattendedFileIface BoxesUnattendedFileIface;

#define TYPE_AVATAR_FORMAT (avatar_format_get_type ())
#define AVATAR_FORMAT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_AVATAR_FORMAT, AvatarFormat))
#define AVATAR_FORMAT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_AVATAR_FORMAT, AvatarFormatClass))
#define IS_AVATAR_FORMAT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_AVATAR_FORMAT))
#define IS_AVATAR_FORMAT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_AVATAR_FORMAT))
#define AVATAR_FORMAT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_AVATAR_FORMAT, AvatarFormatClass))

typedef struct _AvatarFormat AvatarFormat;
typedef struct _AvatarFormatClass AvatarFormatClass;

#define BOXES_TYPE_WINDOWS_INSTALLER (boxes_windows_installer_get_type ())
#define BOXES_WINDOWS_INSTALLER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_WINDOWS_INSTALLER, BoxesWindowsInstaller))
#define BOXES_WINDOWS_INSTALLER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_WINDOWS_INSTALLER, BoxesWindowsInstallerClass))
#define BOXES_IS_WINDOWS_INSTALLER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_WINDOWS_INSTALLER))
#define BOXES_IS_WINDOWS_INSTALLER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_WINDOWS_INSTALLER))
#define BOXES_WINDOWS_INSTALLER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_WINDOWS_INSTALLER, BoxesWindowsInstallerClass))

typedef struct _BoxesWindowsInstaller BoxesWindowsInstaller;
typedef struct _BoxesWindowsInstallerClass BoxesWindowsInstallerClass;
typedef struct _BoxesWindowsInstallerPrivate BoxesWindowsInstallerPrivate;

#define BOXES_TYPE_WIN7_INSTALLER (boxes_win7_installer_get_type ())
#define BOXES_WIN7_INSTALLER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_WIN7_INSTALLER, BoxesWin7Installer))
#define BOXES_WIN7_INSTALLER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_WIN7_INSTALLER, BoxesWin7InstallerClass))
#define BOXES_IS_WIN7_INSTALLER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_WIN7_INSTALLER))
#define BOXES_IS_WIN7_INSTALLER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_WIN7_INSTALLER))
#define BOXES_WIN7_INSTALLER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_WIN7_INSTALLER, BoxesWin7InstallerClass))

typedef struct _BoxesWin7Installer BoxesWin7Installer;
typedef struct _BoxesWin7InstallerClass BoxesWin7InstallerClass;
typedef struct _BoxesWin7InstallerPrivate BoxesWin7InstallerPrivate;
#define _g_free0(var) (var = (g_free (var), NULL))
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
#define _g_regex_unref0(var) ((var == NULL) ? NULL : (var = (g_regex_unref (var), NULL)))
#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))

typedef enum  {
	UNATTENDED_INSTALLER_ERROR_SETUP_INCOMPLETE
} UnattendedInstallerError;
#define UNATTENDED_INSTALLER_ERROR unattended_installer_error_quark ()
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_for_installation) (BoxesInstallerMedia* self, const gchar* vm_name, GCancellable* cancellable, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*prepare_for_installation_finish) (BoxesInstallerMedia* self, GAsyncResult* _res_, GError** error);
	void (*setup_domain_config) (BoxesInstallerMedia* self, GVirConfigDomain* domain);
	void (*setup_spice_config) (BoxesInstallerMedia* self, GVirConfigDomainGraphicsSpice* graphics);
	void (*populate_setup_vbox) (BoxesInstallerMedia* self, GtkVBox* setup_vbox);
	void (*check_needed_info) (BoxesInstallerMedia* self, GError** error);
	GList* (*get_vm_properties) (BoxesInstallerMedia* self);
	gboolean (*get_need_user_input_for_vm_creation) (BoxesInstallerMedia* self);
};

struct _BoxesUnattendedFileIface {
	GTypeInterface parent_iface;
	void (*create) (BoxesUnattendedFile* self, GCancellable* cancellable, GAsyncReadyCallback _callback_, gpointer _user_data_);
	GFile* (*create_finish) (BoxesUnattendedFile* self, GAsyncResult* _res_, GError** error);
	const gchar* (*get_src_path) (BoxesUnattendedFile* self);
	void (*set_src_path) (BoxesUnattendedFile* self, const gchar* value);
	const gchar* (*get_dest_name) (BoxesUnattendedFile* self);
	void (*set_dest_name) (BoxesUnattendedFile* self, const gchar* value);
	BoxesUnattendedInstaller* (*get_installer) (BoxesUnattendedFile* self);
	void (*set_installer) (BoxesUnattendedFile* self, BoxesUnattendedInstaller* value);
};

struct _BoxesUnattendedInstaller {
	BoxesInstallerMedia parent_instance;
	BoxesUnattendedInstallerPrivate * priv;
	GDataStreamNewlineType newline_type;
	GFile* disk_file;
	gboolean password_mandatory;
	GList* unattended_files;
	GtkTable* setup_table;
	GtkLabel* setup_label;
	GtkHBox* setup_hbox;
	GtkSwitch* express_toggle;
	GtkEntry* username_entry;
	GtkEntry* password_entry;
	gchar* timezone;
	gchar* lang;
	gchar* hostname;
	AvatarFormat* avatar_format;
};

struct _BoxesUnattendedInstallerClass {
	BoxesInstallerMediaClass parent_class;
	gchar* (*fill_unattended_data) (BoxesUnattendedInstaller* self, const gchar* data, GError** error);
	void (*setup_ui) (BoxesUnattendedInstaller* self);
	void (*clean_up) (BoxesUnattendedInstaller* self, GError** error);
	void (*prepare_direct_boot) (BoxesUnattendedInstaller* self, GCancellable* cancellable, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*prepare_direct_boot_finish) (BoxesUnattendedInstaller* self, GAsyncResult* _res_, GError** error);
	GVirConfigDomainDisk* (*get_unattended_disk_config) (BoxesUnattendedInstaller* self);
};

struct _BoxesWindowsInstaller {
	BoxesUnattendedInstaller parent_instance;
	BoxesWindowsInstallerPrivate * priv;
};

struct _BoxesWindowsInstallerClass {
	BoxesUnattendedInstallerClass parent_class;
};

struct _BoxesWin7Installer {
	BoxesWindowsInstaller parent_instance;
	BoxesWin7InstallerPrivate * priv;
};

struct _BoxesWin7InstallerClass {
	BoxesWindowsInstallerClass parent_class;
};


static gpointer boxes_win7_installer_parent_class = NULL;
static GRegex* boxes_win7_installer_arch_regex;
static GRegex* boxes_win7_installer_arch_regex = NULL;

GType boxes_installer_media_get_type (void) G_GNUC_CONST;
GQuark unattended_installer_error_quark (void);
gpointer boxes_pair_ref (gpointer instance);
void boxes_pair_unref (gpointer instance);
GParamSpec* boxes_param_spec_pair (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
void boxes_value_set_pair (GValue* value, gpointer v_object);
void boxes_value_take_pair (GValue* value, gpointer v_object);
gpointer boxes_value_get_pair (const GValue* value);
GType boxes_pair_get_type (void) G_GNUC_CONST;
GType boxes_unattended_installer_get_type (void) G_GNUC_CONST;
GType boxes_unattended_file_get_type (void) G_GNUC_CONST;
gpointer avatar_format_ref (gpointer instance);
void avatar_format_unref (gpointer instance);
GParamSpec* param_spec_avatar_format (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
void value_set_avatar_format (GValue* value, gpointer v_object);
void value_take_avatar_format (GValue* value, gpointer v_object);
gpointer value_get_avatar_format (const GValue* value);
GType avatar_format_get_type (void) G_GNUC_CONST;
GType boxes_windows_installer_get_type (void) G_GNUC_CONST;
GType boxes_win7_installer_get_type (void) G_GNUC_CONST;
enum  {
	BOXES_WIN7_INSTALLER_DUMMY_PROPERTY
};
static gchar* boxes_win7_installer_real_fill_unattended_data (BoxesUnattendedInstaller* base, const gchar* data, GError** error);
gchar* boxes_unattended_installer_fill_unattended_data (BoxesUnattendedInstaller* self, const gchar* data, GError** error);
BoxesWin7Installer* boxes_win7_installer_new_from_media (BoxesInstallerMedia* media, GError** error);
BoxesWin7Installer* boxes_win7_installer_construct_from_media (GType object_type, BoxesInstallerMedia* media, GError** error);
gchar* boxes_get_unattended (const gchar* file_name);
BoxesUnattendedInstaller* boxes_unattended_installer_construct_from_media (GType object_type, BoxesInstallerMedia* media, const gchar* unattended_src_path, const gchar* unattended_dest_name, AvatarFormat* avatar_format, GError** error);
BoxesWin7Installer* boxes_win7_installer_new (void);
BoxesWin7Installer* boxes_win7_installer_construct (GType object_type);
BoxesWindowsInstaller* boxes_windows_installer_construct (GType object_type);
static void boxes_win7_installer_finalize (GObject* obj);

static GRegex* _tmp_regex_0 = NULL;

static gchar* boxes_win7_installer_real_fill_unattended_data (BoxesUnattendedInstaller* base, const gchar* data, GError** error) {
	BoxesWin7Installer * self;
	gchar* result = NULL;
	const gchar* _tmp0_;
	gchar* _tmp1_ = NULL;
	gchar* str;
	OsinfoMedia* _tmp2_;
	gchar* _tmp3_ = NULL;
	gchar* _tmp4_;
	gchar* _tmp5_;
	GQuark _tmp7_ = 0U;
#line 20 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	static GQuark _tmp6_label0 = 0;
#line 20 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	static GQuark _tmp6_label1 = 0;
#line 238 "win7-installer.c"
	GError * _inner_error_ = NULL;
#line 17 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	self = (BoxesWin7Installer*) base;
#line 17 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	g_return_val_if_fail (data != NULL, NULL);
#line 18 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	_tmp0_ = data;
#line 18 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	_tmp1_ = BOXES_UNATTENDED_INSTALLER_CLASS (boxes_win7_installer_parent_class)->fill_unattended_data ((BoxesUnattendedInstaller*) G_TYPE_CHECK_INSTANCE_CAST (self, BOXES_TYPE_WINDOWS_INSTALLER, BoxesWindowsInstaller), _tmp0_, &_inner_error_);
#line 18 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	str = _tmp1_;
#line 18 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	if (_inner_error_ != NULL) {
#line 18 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		if (_inner_error_->domain == G_REGEX_ERROR) {
#line 18 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
			g_propagate_error (error, _inner_error_);
#line 18 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
			return NULL;
#line 258 "win7-installer.c"
		} else {
#line 18 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
			g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 18 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
			g_clear_error (&_inner_error_);
#line 18 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
			return NULL;
#line 266 "win7-installer.c"
		}
	}
#line 20 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	_tmp2_ = ((BoxesInstallerMedia*) self)->os_media;
#line 20 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	g_object_get (_tmp2_, "architecture", &_tmp3_, NULL);
#line 20 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	_tmp4_ = _tmp3_;
#line 20 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	_tmp5_ = _tmp4_;
#line 20 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	_tmp7_ = (NULL == _tmp5_) ? 0 : g_quark_from_string (_tmp5_);
#line 20 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	g_free (_tmp5_);
#line 20 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	if (_tmp7_ == ((0 != _tmp6_label0) ? _tmp6_label0 : (_tmp6_label0 = g_quark_from_static_string ("x86_64")))) {
#line 20 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		switch (0) {
#line 285 "win7-installer.c"
			default:
			{
				GRegex* _tmp8_;
				const gchar* _tmp9_;
				const gchar* _tmp10_;
				gint _tmp11_;
				gint _tmp12_;
				gchar* _tmp13_ = NULL;
				gchar* _tmp14_;
#line 22 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				_tmp8_ = boxes_win7_installer_arch_regex;
#line 22 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				_tmp9_ = str;
#line 22 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				_tmp10_ = str;
#line 22 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				_tmp11_ = strlen (_tmp10_);
#line 22 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				_tmp12_ = _tmp11_;
#line 22 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				_tmp13_ = g_regex_replace (_tmp8_, _tmp9_, (gssize) _tmp12_, 0, "amd64", 0, &_inner_error_);
#line 22 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				_tmp14_ = _tmp13_;
#line 22 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				if (_inner_error_ != NULL) {
#line 22 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
					if (_inner_error_->domain == G_REGEX_ERROR) {
#line 22 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
						g_propagate_error (error, _inner_error_);
#line 22 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
						_g_free0 (str);
#line 22 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
						return NULL;
#line 319 "win7-installer.c"
					} else {
#line 22 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
						_g_free0 (str);
#line 22 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
						g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 22 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
						g_clear_error (&_inner_error_);
#line 22 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
						return NULL;
#line 329 "win7-installer.c"
					}
				}
#line 22 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				result = _tmp14_;
#line 22 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				_g_free0 (str);
#line 22 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				return result;
#line 338 "win7-installer.c"
			}
		}
	} else if (_tmp7_ == ((0 != _tmp6_label1) ? _tmp6_label1 : (_tmp6_label1 = g_quark_from_static_string ("i386")))) {
#line 20 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		switch (0) {
#line 344 "win7-installer.c"
			default:
			{
				GRegex* _tmp15_;
				const gchar* _tmp16_;
				const gchar* _tmp17_;
				gint _tmp18_;
				gint _tmp19_;
				gchar* _tmp20_ = NULL;
				gchar* _tmp21_;
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				_tmp15_ = boxes_win7_installer_arch_regex;
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				_tmp16_ = str;
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				_tmp17_ = str;
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				_tmp18_ = strlen (_tmp17_);
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				_tmp19_ = _tmp18_;
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				_tmp20_ = g_regex_replace (_tmp15_, _tmp16_, (gssize) _tmp19_, 0, "x86", 0, &_inner_error_);
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				_tmp21_ = _tmp20_;
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				if (_inner_error_ != NULL) {
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
					if (_inner_error_->domain == G_REGEX_ERROR) {
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
						g_propagate_error (error, _inner_error_);
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
						_g_free0 (str);
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
						return NULL;
#line 378 "win7-installer.c"
					} else {
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
						_g_free0 (str);
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
						g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
						g_clear_error (&_inner_error_);
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
						return NULL;
#line 388 "win7-installer.c"
					}
				}
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				result = _tmp21_;
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				_g_free0 (str);
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				return result;
#line 397 "win7-installer.c"
			}
		}
	} else {
#line 20 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		switch (0) {
#line 403 "win7-installer.c"
			default:
			{
				OsinfoMedia* _tmp22_;
				gchar* _tmp23_ = NULL;
				gchar* _tmp24_;
				gchar* _tmp25_;
				GRegex* _tmp26_;
				const gchar* _tmp27_;
				const gchar* _tmp28_;
				gint _tmp29_;
				gint _tmp30_;
				gchar* _tmp31_ = NULL;
				gchar* _tmp32_;
#line 28 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				_tmp22_ = ((BoxesInstallerMedia*) self)->os_media;
#line 28 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				g_object_get (_tmp22_, "architecture", &_tmp23_, NULL);
#line 28 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				_tmp24_ = _tmp23_;
#line 28 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				_tmp25_ = _tmp24_;
#line 28 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				g_warning ("win7-installer.vala:28: Unexpected osinfo win7 arch: %s", _tmp25_);
#line 28 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				_g_free0 (_tmp25_);
#line 30 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				_tmp26_ = boxes_win7_installer_arch_regex;
#line 30 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				_tmp27_ = str;
#line 30 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				_tmp28_ = str;
#line 30 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				_tmp29_ = strlen (_tmp28_);
#line 30 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				_tmp30_ = _tmp29_;
#line 30 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				_tmp31_ = g_regex_replace (_tmp26_, _tmp27_, (gssize) _tmp30_, 0, "x86", 0, &_inner_error_);
#line 30 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				_tmp32_ = _tmp31_;
#line 30 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				if (_inner_error_ != NULL) {
#line 30 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
					if (_inner_error_->domain == G_REGEX_ERROR) {
#line 30 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
						g_propagate_error (error, _inner_error_);
#line 30 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
						_g_free0 (str);
#line 30 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
						return NULL;
#line 453 "win7-installer.c"
					} else {
#line 30 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
						_g_free0 (str);
#line 30 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
						g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 30 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
						g_clear_error (&_inner_error_);
#line 30 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
						return NULL;
#line 463 "win7-installer.c"
					}
				}
#line 30 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				result = _tmp32_;
#line 30 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				_g_free0 (str);
#line 30 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
				return result;
#line 472 "win7-installer.c"
			}
		}
	}
#line 17 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	_g_free0 (str);
#line 478 "win7-installer.c"
}


static gchar* string_replace (const gchar* self, const gchar* old, const gchar* replacement) {
	gchar* result = NULL;
	GError * _inner_error_ = NULL;
#line 1386 "../vapi/upstream/glib-2.0.vapi"
	g_return_val_if_fail (self != NULL, NULL);
#line 1386 "../vapi/upstream/glib-2.0.vapi"
	g_return_val_if_fail (old != NULL, NULL);
#line 1386 "../vapi/upstream/glib-2.0.vapi"
	g_return_val_if_fail (replacement != NULL, NULL);
#line 491 "win7-installer.c"
	{
		const gchar* _tmp0_;
		gchar* _tmp1_ = NULL;
		gchar* _tmp2_;
		GRegex* _tmp3_;
		GRegex* _tmp4_;
		GRegex* regex;
		GRegex* _tmp5_;
		const gchar* _tmp6_;
		gchar* _tmp7_ = NULL;
		gchar* _tmp8_;
#line 1388 "../vapi/upstream/glib-2.0.vapi"
		_tmp0_ = old;
#line 1388 "../vapi/upstream/glib-2.0.vapi"
		_tmp1_ = g_regex_escape_string (_tmp0_, -1);
#line 1388 "../vapi/upstream/glib-2.0.vapi"
		_tmp2_ = _tmp1_;
#line 1388 "../vapi/upstream/glib-2.0.vapi"
		_tmp3_ = g_regex_new (_tmp2_, 0, 0, &_inner_error_);
#line 1388 "../vapi/upstream/glib-2.0.vapi"
		_tmp4_ = _tmp3_;
#line 1388 "../vapi/upstream/glib-2.0.vapi"
		_g_free0 (_tmp2_);
#line 1388 "../vapi/upstream/glib-2.0.vapi"
		regex = _tmp4_;
#line 1388 "../vapi/upstream/glib-2.0.vapi"
		if (_inner_error_ != NULL) {
#line 1388 "../vapi/upstream/glib-2.0.vapi"
			if (_inner_error_->domain == G_REGEX_ERROR) {
#line 521 "win7-installer.c"
				goto __catch74_g_regex_error;
			}
#line 1388 "../vapi/upstream/glib-2.0.vapi"
			g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 1388 "../vapi/upstream/glib-2.0.vapi"
			g_clear_error (&_inner_error_);
#line 1388 "../vapi/upstream/glib-2.0.vapi"
			return NULL;
#line 530 "win7-installer.c"
		}
#line 1389 "../vapi/upstream/glib-2.0.vapi"
		_tmp5_ = regex;
#line 1389 "../vapi/upstream/glib-2.0.vapi"
		_tmp6_ = replacement;
#line 1389 "../vapi/upstream/glib-2.0.vapi"
		_tmp7_ = g_regex_replace_literal (_tmp5_, self, (gssize) (-1), 0, _tmp6_, 0, &_inner_error_);
#line 1389 "../vapi/upstream/glib-2.0.vapi"
		_tmp8_ = _tmp7_;
#line 1389 "../vapi/upstream/glib-2.0.vapi"
		if (_inner_error_ != NULL) {
#line 1389 "../vapi/upstream/glib-2.0.vapi"
			_g_regex_unref0 (regex);
#line 1389 "../vapi/upstream/glib-2.0.vapi"
			if (_inner_error_->domain == G_REGEX_ERROR) {
#line 546 "win7-installer.c"
				goto __catch74_g_regex_error;
			}
#line 1389 "../vapi/upstream/glib-2.0.vapi"
			_g_regex_unref0 (regex);
#line 1389 "../vapi/upstream/glib-2.0.vapi"
			g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 1389 "../vapi/upstream/glib-2.0.vapi"
			g_clear_error (&_inner_error_);
#line 1389 "../vapi/upstream/glib-2.0.vapi"
			return NULL;
#line 557 "win7-installer.c"
		}
#line 1389 "../vapi/upstream/glib-2.0.vapi"
		result = _tmp8_;
#line 1389 "../vapi/upstream/glib-2.0.vapi"
		_g_regex_unref0 (regex);
#line 1389 "../vapi/upstream/glib-2.0.vapi"
		return result;
#line 565 "win7-installer.c"
	}
	goto __finally74;
	__catch74_g_regex_error:
	{
		GError* e = NULL;
#line 1387 "../vapi/upstream/glib-2.0.vapi"
		e = _inner_error_;
#line 1387 "../vapi/upstream/glib-2.0.vapi"
		_inner_error_ = NULL;
#line 1391 "../vapi/upstream/glib-2.0.vapi"
		g_assert_not_reached ();
#line 1387 "../vapi/upstream/glib-2.0.vapi"
		_g_error_free0 (e);
#line 579 "win7-installer.c"
	}
	__finally74:
#line 1387 "../vapi/upstream/glib-2.0.vapi"
	if (_inner_error_ != NULL) {
#line 1387 "../vapi/upstream/glib-2.0.vapi"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 1387 "../vapi/upstream/glib-2.0.vapi"
		g_clear_error (&_inner_error_);
#line 1387 "../vapi/upstream/glib-2.0.vapi"
		return NULL;
#line 590 "win7-installer.c"
	}
}


static inline GRegex* _thread_safe_regex_init (GRegex** re, const gchar * pattern, GRegexMatchFlags match_options) {
#line 42 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	if (g_once_init_enter ((volatile gsize*) re)) {
#line 42 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		GRegex* val = g_regex_new (pattern, match_options, 0, NULL);
#line 42 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		g_once_init_leave ((volatile gsize*) re, (gsize) val);
#line 602 "win7-installer.c"
	}
#line 42 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	return *re;
#line 606 "win7-installer.c"
}


BoxesWin7Installer* boxes_win7_installer_construct_from_media (GType object_type, BoxesInstallerMedia* media, GError** error) {
	BoxesWin7Installer * self = NULL;
	BoxesInstallerMedia* _tmp0_;
	OsinfoOs* _tmp1_;
	const gchar* _tmp2_;
	const gchar* _tmp3_;
	gchar* _tmp4_;
	gchar* _tmp5_;
	gchar* _tmp6_ = NULL;
	gchar* _tmp7_;
	gchar* unattended_source;
	BoxesInstallerMedia* _tmp8_;
	const gchar* _tmp9_;
	const gchar* _tmp10_;
	gchar* _tmp11_ = NULL;
	const gchar* _tmp12_;
	gchar* _tmp13_ = NULL;
	gchar* _tmp14_;
	gboolean _tmp15_ = FALSE;
	OsinfoOs* _tmp16_;
	gboolean _tmp22_;
	GError * _inner_error_ = NULL;
#line 34 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	g_return_val_if_fail (media != NULL, NULL);
#line 35 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	_tmp0_ = media;
#line 35 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	_tmp1_ = _tmp0_->os;
#line 35 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	_tmp2_ = osinfo_product_get_short_id ((OsinfoProduct*) _tmp1_);
#line 35 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	_tmp3_ = _tmp2_;
#line 35 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	_tmp4_ = g_strconcat (_tmp3_, ".xml", NULL);
#line 35 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	_tmp5_ = _tmp4_;
#line 35 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	_tmp6_ = boxes_get_unattended (_tmp5_);
#line 35 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	_tmp7_ = _tmp6_;
#line 35 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	_g_free0 (_tmp5_);
#line 35 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	unattended_source = _tmp7_;
#line 36 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	_tmp8_ = media;
#line 36 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	_tmp9_ = unattended_source;
#line 36 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	self = (BoxesWin7Installer*) boxes_unattended_installer_construct_from_media (object_type, _tmp8_, _tmp9_, "Autounattend.xml", NULL, &_inner_error_);
#line 36 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	if (_inner_error_ != NULL) {
#line 36 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		g_propagate_error (error, _inner_error_);
#line 36 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		_g_free0 (unattended_source);
#line 36 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		_g_object_unref0 (self);
#line 36 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		return NULL;
#line 670 "win7-installer.c"
	}
#line 38 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	((BoxesUnattendedInstaller*) self)->newline_type = G_DATA_STREAM_NEWLINE_TYPE_CR_LF;
#line 40 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	_tmp10_ = ((BoxesUnattendedInstaller*) self)->lang;
#line 40 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	_tmp11_ = string_replace (_tmp10_, "_", "-");
#line 40 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	_g_free0 (((BoxesUnattendedInstaller*) self)->lang);
#line 40 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	((BoxesUnattendedInstaller*) self)->lang = _tmp11_;
#line 42 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	_tmp12_ = ((BoxesUnattendedInstaller*) self)->lang;
#line 42 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	_tmp13_ = g_regex_replace (_thread_safe_regex_init (&_tmp_regex_0, "\\..*", 0 | G_REGEX_CASELESS), _tmp12_, (gssize) (-1), 0, "", 0, &_inner_error_);
#line 42 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	_tmp14_ = _tmp13_;
#line 42 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	if (_inner_error_ != NULL) {
#line 42 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		g_propagate_error (error, _inner_error_);
#line 42 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		_g_free0 (unattended_source);
#line 42 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		_g_object_unref0 (self);
#line 42 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		return NULL;
#line 698 "win7-installer.c"
	}
#line 42 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	_g_free0 (((BoxesUnattendedInstaller*) self)->lang);
#line 42 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	((BoxesUnattendedInstaller*) self)->lang = _tmp14_;
#line 44 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	_tmp16_ = ((BoxesInstallerMedia*) self)->os;
#line 44 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	if (_tmp16_ != NULL) {
#line 708 "win7-installer.c"
		OsinfoOs* _tmp17_;
		const gchar* _tmp18_;
		const gchar* _tmp19_;
		gint _tmp20_;
		gint _tmp21_;
#line 44 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		_tmp17_ = ((BoxesInstallerMedia*) self)->os;
#line 44 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		_tmp18_ = osinfo_product_get_short_id ((OsinfoProduct*) _tmp17_);
#line 44 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		_tmp19_ = _tmp18_;
#line 44 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		_tmp20_ = strlen (_tmp19_);
#line 44 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		_tmp21_ = _tmp20_;
#line 44 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		_tmp15_ = _tmp21_ > 15;
#line 726 "win7-installer.c"
	} else {
#line 44 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		_tmp15_ = FALSE;
#line 730 "win7-installer.c"
	}
#line 44 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	_tmp22_ = _tmp15_;
#line 44 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	if (_tmp22_) {
#line 736 "win7-installer.c"
		OsinfoOs* _tmp23_;
		const gchar* _tmp24_;
		const gchar* _tmp25_;
		OsinfoOs* _tmp26_;
		const gchar* _tmp27_;
		const gchar* _tmp28_;
#line 45 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		_tmp23_ = ((BoxesInstallerMedia*) self)->os;
#line 45 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		_tmp24_ = osinfo_product_get_short_id ((OsinfoProduct*) _tmp23_);
#line 45 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		_tmp25_ = _tmp24_;
#line 45 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		_tmp26_ = ((BoxesInstallerMedia*) self)->os;
#line 45 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		_tmp27_ = osinfo_product_get_name ((OsinfoProduct*) _tmp26_);
#line 45 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		_tmp28_ = _tmp27_;
#line 45 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		g_critical ("win7-installer.vala:45: '%s' is longer than 15 characters, expect %s e" \
"xpress installation to fail!", _tmp25_, _tmp28_);
#line 757 "win7-installer.c"
	}
#line 34 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	_g_free0 (unattended_source);
#line 34 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	return self;
#line 763 "win7-installer.c"
}


BoxesWin7Installer* boxes_win7_installer_new_from_media (BoxesInstallerMedia* media, GError** error) {
#line 34 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	return boxes_win7_installer_construct_from_media (BOXES_TYPE_WIN7_INSTALLER, media, error);
#line 770 "win7-installer.c"
}


BoxesWin7Installer* boxes_win7_installer_construct (GType object_type) {
	BoxesWin7Installer * self = NULL;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	self = (BoxesWin7Installer*) boxes_windows_installer_construct (object_type);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	return self;
#line 780 "win7-installer.c"
}


BoxesWin7Installer* boxes_win7_installer_new (void) {
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	return boxes_win7_installer_construct (BOXES_TYPE_WIN7_INSTALLER);
#line 787 "win7-installer.c"
}


static void boxes_win7_installer_class_init (BoxesWin7InstallerClass * klass) {
	GError * _inner_error_ = NULL;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	boxes_win7_installer_parent_class = g_type_class_peek_parent (klass);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	BOXES_UNATTENDED_INSTALLER_CLASS (klass)->fill_unattended_data = boxes_win7_installer_real_fill_unattended_data;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	G_OBJECT_CLASS (klass)->finalize = boxes_win7_installer_finalize;
#line 799 "win7-installer.c"
	{
		GRegex* _tmp0_;
		GRegex* _tmp1_;
#line 10 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		_tmp0_ = g_regex_new ("BOXES_CPU", 0, 0, &_inner_error_);
#line 10 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		_tmp1_ = _tmp0_;
#line 10 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		if (_inner_error_ != NULL) {
#line 10 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
			if (_inner_error_->domain == G_REGEX_ERROR) {
#line 811 "win7-installer.c"
				goto __catch75_g_regex_error;
			}
#line 10 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
			g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 10 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
			g_clear_error (&_inner_error_);
#line 818 "win7-installer.c"
		}
#line 10 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		_g_regex_unref0 (boxes_win7_installer_arch_regex);
#line 10 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		boxes_win7_installer_arch_regex = _tmp1_;
#line 824 "win7-installer.c"
	}
	goto __finally75;
	__catch75_g_regex_error:
	{
		GError* _error_ = NULL;
#line 9 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		_error_ = _inner_error_;
#line 9 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		_inner_error_ = NULL;
#line 13 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		g_assert_not_reached ();
#line 9 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		_g_error_free0 (_error_);
#line 838 "win7-installer.c"
	}
	__finally75:
#line 9 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	if (_inner_error_ != NULL) {
#line 9 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
#line 9 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
		g_clear_error (&_inner_error_);
#line 847 "win7-installer.c"
	}
}


static void boxes_win7_installer_instance_init (BoxesWin7Installer * self) {
}


static void boxes_win7_installer_finalize (GObject* obj) {
	BoxesWin7Installer * self;
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, BOXES_TYPE_WIN7_INSTALLER, BoxesWin7Installer);
#line 5 "/extra-data/checkout/gnome/gnome-boxes/src/win7-installer.vala"
	G_OBJECT_CLASS (boxes_win7_installer_parent_class)->finalize (obj);
#line 862 "win7-installer.c"
}


GType boxes_win7_installer_get_type (void) {
	static volatile gsize boxes_win7_installer_type_id__volatile = 0;
	if (g_once_init_enter (&boxes_win7_installer_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (BoxesWin7InstallerClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) boxes_win7_installer_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (BoxesWin7Installer), 0, (GInstanceInitFunc) boxes_win7_installer_instance_init, NULL };
		GType boxes_win7_installer_type_id;
		boxes_win7_installer_type_id = g_type_register_static (BOXES_TYPE_WINDOWS_INSTALLER, "BoxesWin7Installer", &g_define_type_info, 0);
		g_once_init_leave (&boxes_win7_installer_type_id__volatile, boxes_win7_installer_type_id);
	}
	return boxes_win7_installer_type_id__volatile;
}



