/* gxml-performance.c generated by valac 0.44.3, the Vala compiler
 * generated from gxml-performance.vala, do not modify */

/* -*- Mode: vala; indent-tabs-mode: nil; c-basic-offset: 2; tab-width: 2 -*-  */
/* librescl
 *
 * Copyright (C) 2013-2015 Daniel Espinosa <esodan@gmail.com>
 *
 * librescl is free software: you can redistribute it and/or modify it
 * under the terms of the GNU General Public License as published by the
 * Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 * 
 * librescl is distributed in the hope that it will be useful, but
 * WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 * See the GNU General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License along
 * with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

#include <gxml/gxml.h>
#include <glib-object.h>
#include <glib.h>
#include <stdlib.h>
#include <string.h>
#include <gee.h>
#include <float.h>
#include <math.h>
#include <gio/gio.h>
#include <gobject/gvaluecollector.h>

#define TYPE_NAME (name_get_type ())
#define NAME(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_NAME, Name))
#define NAME_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_NAME, NameClass))
#define IS_NAME(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_NAME))
#define IS_NAME_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_NAME))
#define NAME_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_NAME, NameClass))

typedef struct _Name Name;
typedef struct _NameClass NameClass;
typedef struct _NamePrivate NamePrivate;
enum  {
	NAME_0_PROPERTY,
	NAME_NUM_PROPERTIES
};
static GParamSpec* name_properties[NAME_NUM_PROPERTIES];

#define TYPE_EMAIL (email_get_type ())
#define EMAIL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_EMAIL, Email))
#define EMAIL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_EMAIL, EmailClass))
#define IS_EMAIL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_EMAIL))
#define IS_EMAIL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_EMAIL))
#define EMAIL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_EMAIL, EmailClass))

typedef struct _Email Email;
typedef struct _EmailClass EmailClass;
typedef struct _EmailPrivate EmailPrivate;
enum  {
	EMAIL_0_PROPERTY,
	EMAIL_NUM_PROPERTIES
};
static GParamSpec* email_properties[EMAIL_NUM_PROPERTIES];

#define TYPE_AUTHOR (author_get_type ())
#define AUTHOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_AUTHOR, Author))
#define AUTHOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_AUTHOR, AuthorClass))
#define IS_AUTHOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_AUTHOR))
#define IS_AUTHOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_AUTHOR))
#define AUTHOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_AUTHOR, AuthorClass))

typedef struct _Author Author;
typedef struct _AuthorClass AuthorClass;
typedef struct _AuthorPrivate AuthorPrivate;
enum  {
	AUTHOR_0_PROPERTY,
	AUTHOR_NAME_PROPERTY,
	AUTHOR_EMAIL_PROPERTY,
	AUTHOR_NUM_PROPERTIES
};
static GParamSpec* author_properties[AUTHOR_NUM_PROPERTIES];
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
#define _g_free0(var) (var = (g_free (var), NULL))

#define AUTHOR_TYPE_ARRAY (author_array_get_type ())
#define AUTHOR_ARRAY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), AUTHOR_TYPE_ARRAY, AuthorArray))
#define AUTHOR_ARRAY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), AUTHOR_TYPE_ARRAY, AuthorArrayClass))
#define AUTHOR_IS_ARRAY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), AUTHOR_TYPE_ARRAY))
#define AUTHOR_IS_ARRAY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), AUTHOR_TYPE_ARRAY))
#define AUTHOR_ARRAY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), AUTHOR_TYPE_ARRAY, AuthorArrayClass))

typedef struct _AuthorArray AuthorArray;
typedef struct _AuthorArrayClass AuthorArrayClass;
typedef struct _AuthorArrayPrivate AuthorArrayPrivate;
enum  {
	AUTHOR_ARRAY_0_PROPERTY,
	AUTHOR_ARRAY_NUM_PROPERTIES
};
static GParamSpec* author_array_properties[AUTHOR_ARRAY_NUM_PROPERTIES];

#define TYPE_AUTHORS (authors_get_type ())
#define AUTHORS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_AUTHORS, Authors))
#define AUTHORS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_AUTHORS, AuthorsClass))
#define IS_AUTHORS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_AUTHORS))
#define IS_AUTHORS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_AUTHORS))
#define AUTHORS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_AUTHORS, AuthorsClass))

typedef struct _Authors Authors;
typedef struct _AuthorsClass AuthorsClass;
typedef struct _AuthorsPrivate AuthorsPrivate;
enum  {
	AUTHORS_0_PROPERTY,
	AUTHORS_NUMBER_PROPERTY,
	AUTHORS_ARRAY_PROPERTY,
	AUTHORS_NUM_PROPERTIES
};
static GParamSpec* authors_properties[AUTHORS_NUM_PROPERTIES];

#define TYPE_INVENTORY (inventory_get_type ())
#define INVENTORY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_INVENTORY, Inventory))
#define INVENTORY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_INVENTORY, InventoryClass))
#define IS_INVENTORY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_INVENTORY))
#define IS_INVENTORY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_INVENTORY))
#define INVENTORY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_INVENTORY, InventoryClass))

typedef struct _Inventory Inventory;
typedef struct _InventoryClass InventoryClass;
typedef struct _InventoryPrivate InventoryPrivate;
enum  {
	INVENTORY_0_PROPERTY,
	INVENTORY_NUMBER_PROPERTY,
	INVENTORY_ROW_PROPERTY,
	INVENTORY_INVENTORY_PROPERTY,
	INVENTORY_NUM_PROPERTIES
};
static GParamSpec* inventory_properties[INVENTORY_NUM_PROPERTIES];

#define INVENTORY_TYPE_DUAL_KEY_MAP (inventory_dual_key_map_get_type ())
#define INVENTORY_DUAL_KEY_MAP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), INVENTORY_TYPE_DUAL_KEY_MAP, InventoryDualKeyMap))
#define INVENTORY_DUAL_KEY_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), INVENTORY_TYPE_DUAL_KEY_MAP, InventoryDualKeyMapClass))
#define INVENTORY_IS_DUAL_KEY_MAP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), INVENTORY_TYPE_DUAL_KEY_MAP))
#define INVENTORY_IS_DUAL_KEY_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), INVENTORY_TYPE_DUAL_KEY_MAP))
#define INVENTORY_DUAL_KEY_MAP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), INVENTORY_TYPE_DUAL_KEY_MAP, InventoryDualKeyMapClass))

typedef struct _InventoryDualKeyMap InventoryDualKeyMap;
typedef struct _InventoryDualKeyMapClass InventoryDualKeyMapClass;
typedef struct _InventoryDualKeyMapPrivate InventoryDualKeyMapPrivate;
enum  {
	INVENTORY_DUAL_KEY_MAP_0_PROPERTY,
	INVENTORY_DUAL_KEY_MAP_NUM_PROPERTIES
};
static GParamSpec* inventory_dual_key_map_properties[INVENTORY_DUAL_KEY_MAP_NUM_PROPERTIES];

#define TYPE_CATEGORY (category_get_type ())
#define CATEGORY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CATEGORY, Category))
#define CATEGORY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CATEGORY, CategoryClass))
#define IS_CATEGORY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CATEGORY))
#define IS_CATEGORY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CATEGORY))
#define CATEGORY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CATEGORY, CategoryClass))

typedef struct _Category Category;
typedef struct _CategoryClass CategoryClass;
typedef struct _CategoryPrivate CategoryPrivate;
enum  {
	CATEGORY_0_PROPERTY,
	CATEGORY_NAME_PROPERTY,
	CATEGORY_NUM_PROPERTIES
};
static GParamSpec* category_properties[CATEGORY_NUM_PROPERTIES];

#define CATEGORY_TYPE_MAP (category_map_get_type ())
#define CATEGORY_MAP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CATEGORY_TYPE_MAP, CategoryMap))
#define CATEGORY_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), CATEGORY_TYPE_MAP, CategoryMapClass))
#define CATEGORY_IS_MAP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CATEGORY_TYPE_MAP))
#define CATEGORY_IS_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CATEGORY_TYPE_MAP))
#define CATEGORY_MAP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CATEGORY_TYPE_MAP, CategoryMapClass))

typedef struct _CategoryMap CategoryMap;
typedef struct _CategoryMapClass CategoryMapClass;
typedef struct _CategoryMapPrivate CategoryMapPrivate;
enum  {
	CATEGORY_MAP_0_PROPERTY,
	CATEGORY_MAP_NUM_PROPERTIES
};
static GParamSpec* category_map_properties[CATEGORY_MAP_NUM_PROPERTIES];

#define TYPE_RESUME (resume_get_type ())
#define RESUME(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_RESUME, Resume))
#define RESUME_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_RESUME, ResumeClass))
#define IS_RESUME(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_RESUME))
#define IS_RESUME_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_RESUME))
#define RESUME_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_RESUME, ResumeClass))

typedef struct _Resume Resume;
typedef struct _ResumeClass ResumeClass;
typedef struct _ResumePrivate ResumePrivate;
enum  {
	RESUME_0_PROPERTY,
	RESUME_CHAPTER_PROPERTY,
	RESUME_TEXT_PROPERTY,
	RESUME_NUM_PROPERTIES
};
static GParamSpec* resume_properties[RESUME_NUM_PROPERTIES];

#define RESUME_TYPE_MAP (resume_map_get_type ())
#define RESUME_MAP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), RESUME_TYPE_MAP, ResumeMap))
#define RESUME_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), RESUME_TYPE_MAP, ResumeMapClass))
#define RESUME_IS_MAP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), RESUME_TYPE_MAP))
#define RESUME_IS_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), RESUME_TYPE_MAP))
#define RESUME_MAP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), RESUME_TYPE_MAP, ResumeMapClass))

typedef struct _ResumeMap ResumeMap;
typedef struct _ResumeMapClass ResumeMapClass;
typedef struct _ResumeMapPrivate ResumeMapPrivate;
enum  {
	RESUME_MAP_0_PROPERTY,
	RESUME_MAP_NUM_PROPERTIES
};
static GParamSpec* resume_map_properties[RESUME_MAP_NUM_PROPERTIES];

#define TYPE_BOOK (book_get_type ())
#define BOOK(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_BOOK, Book))
#define BOOK_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_BOOK, BookClass))
#define IS_BOOK(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_BOOK))
#define IS_BOOK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_BOOK))
#define BOOK_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_BOOK, BookClass))

typedef struct _Book Book;
typedef struct _BookClass BookClass;
typedef struct _BookPrivate BookPrivate;
enum  {
	BOOK_0_PROPERTY,
	BOOK_YEAR_PROPERTY,
	BOOK_ISBN_PROPERTY,
	BOOK_NAME_PROPERTY,
	BOOK_AUTHORS_PROPERTY,
	BOOK_INVENTORY_REGISTERS_PROPERTY,
	BOOK_CATEGORIES_PROPERTY,
	BOOK_RESUMES_PROPERTY,
	BOOK_NUM_PROPERTIES
};
static GParamSpec* book_properties[BOOK_NUM_PROPERTIES];

#define BOOK_TYPE_ARRAY (book_array_get_type ())
#define BOOK_ARRAY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOOK_TYPE_ARRAY, BookArray))
#define BOOK_ARRAY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOOK_TYPE_ARRAY, BookArrayClass))
#define BOOK_IS_ARRAY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOOK_TYPE_ARRAY))
#define BOOK_IS_ARRAY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOOK_TYPE_ARRAY))
#define BOOK_ARRAY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOOK_TYPE_ARRAY, BookArrayClass))

typedef struct _BookArray BookArray;
typedef struct _BookArrayClass BookArrayClass;
typedef struct _BookArrayPrivate BookArrayPrivate;
enum  {
	BOOK_ARRAY_0_PROPERTY,
	BOOK_ARRAY_NUM_PROPERTIES
};
static GParamSpec* book_array_properties[BOOK_ARRAY_NUM_PROPERTIES];

#define TYPE_BOOK_STORE (book_store_get_type ())
#define BOOK_STORE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_BOOK_STORE, BookStore))
#define BOOK_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_BOOK_STORE, BookStoreClass))
#define IS_BOOK_STORE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_BOOK_STORE))
#define IS_BOOK_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_BOOK_STORE))
#define BOOK_STORE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_BOOK_STORE, BookStoreClass))

typedef struct _BookStore BookStore;
typedef struct _BookStoreClass BookStoreClass;
typedef struct _BookStorePrivate BookStorePrivate;
enum  {
	BOOK_STORE_0_PROPERTY,
	BOOK_STORE_NAME_PROPERTY,
	BOOK_STORE_BOOKS_PROPERTY,
	BOOK_STORE_NUM_PROPERTIES
};
static GParamSpec* book_store_properties[BOOK_STORE_NUM_PROPERTIES];

#define TYPE_PERFORMANCE (performance_get_type ())
#define PERFORMANCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_PERFORMANCE, Performance))
#define PERFORMANCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_PERFORMANCE, PerformanceClass))
#define IS_PERFORMANCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_PERFORMANCE))
#define IS_PERFORMANCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_PERFORMANCE))
#define PERFORMANCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_PERFORMANCE, PerformanceClass))

typedef struct _Performance Performance;
typedef struct _PerformanceClass PerformanceClass;
typedef struct _PerformancePrivate PerformancePrivate;
#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))

#define TYPE_GOM_BOOK_STORE (gom_book_store_get_type ())
#define GOM_BOOK_STORE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_GOM_BOOK_STORE, GomBookStore))
#define GOM_BOOK_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_GOM_BOOK_STORE, GomBookStoreClass))
#define IS_GOM_BOOK_STORE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_GOM_BOOK_STORE))
#define IS_GOM_BOOK_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_GOM_BOOK_STORE))
#define GOM_BOOK_STORE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_GOM_BOOK_STORE, GomBookStoreClass))

typedef struct _GomBookStore GomBookStore;
typedef struct _GomBookStoreClass GomBookStoreClass;

#define GOM_BOOK_TYPE_ARRAY (gom_book_array_get_type ())
#define GOM_BOOK_ARRAY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GOM_BOOK_TYPE_ARRAY, GomBookArray))
#define GOM_BOOK_ARRAY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GOM_BOOK_TYPE_ARRAY, GomBookArrayClass))
#define GOM_BOOK_IS_ARRAY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GOM_BOOK_TYPE_ARRAY))
#define GOM_BOOK_IS_ARRAY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GOM_BOOK_TYPE_ARRAY))
#define GOM_BOOK_ARRAY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GOM_BOOK_TYPE_ARRAY, GomBookArrayClass))

typedef struct _GomBookArray GomBookArray;
typedef struct _GomBookArrayClass GomBookArrayClass;

#define PERFORMANCE_TYPE_CELEMENT (performance_celement_get_type ())
#define PERFORMANCE_CELEMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PERFORMANCE_TYPE_CELEMENT, PerformanceCElement))
#define PERFORMANCE_CELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PERFORMANCE_TYPE_CELEMENT, PerformanceCElementClass))
#define PERFORMANCE_IS_CELEMENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PERFORMANCE_TYPE_CELEMENT))
#define PERFORMANCE_IS_CELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PERFORMANCE_TYPE_CELEMENT))
#define PERFORMANCE_CELEMENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PERFORMANCE_TYPE_CELEMENT, PerformanceCElementClass))

typedef struct _PerformanceCElement PerformanceCElement;
typedef struct _PerformanceCElementClass PerformanceCElementClass;

#define PERFORMANCE_TYPE_AELEMENT (performance_aelement_get_type ())
#define PERFORMANCE_AELEMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PERFORMANCE_TYPE_AELEMENT, PerformanceAElement))
#define PERFORMANCE_AELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PERFORMANCE_TYPE_AELEMENT, PerformanceAElementClass))
#define PERFORMANCE_IS_AELEMENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PERFORMANCE_TYPE_AELEMENT))
#define PERFORMANCE_IS_AELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PERFORMANCE_TYPE_AELEMENT))
#define PERFORMANCE_AELEMENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PERFORMANCE_TYPE_AELEMENT, PerformanceAElementClass))

typedef struct _PerformanceAElement PerformanceAElement;
typedef struct _PerformanceAElementClass PerformanceAElementClass;

#define PERFORMANCE_AELEMENT_TYPE_ARRAY (performance_aelement_array_get_type ())
#define PERFORMANCE_AELEMENT_ARRAY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PERFORMANCE_AELEMENT_TYPE_ARRAY, PerformanceAElementArray))
#define PERFORMANCE_AELEMENT_ARRAY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PERFORMANCE_AELEMENT_TYPE_ARRAY, PerformanceAElementArrayClass))
#define PERFORMANCE_AELEMENT_IS_ARRAY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PERFORMANCE_AELEMENT_TYPE_ARRAY))
#define PERFORMANCE_AELEMENT_IS_ARRAY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PERFORMANCE_AELEMENT_TYPE_ARRAY))
#define PERFORMANCE_AELEMENT_ARRAY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PERFORMANCE_AELEMENT_TYPE_ARRAY, PerformanceAElementArrayClass))

typedef struct _PerformanceAElementArray PerformanceAElementArray;
typedef struct _PerformanceAElementArrayClass PerformanceAElementArrayClass;

#define PERFORMANCE_TYPE_HTOP_ELEMENT (performance_htop_element_get_type ())
#define PERFORMANCE_HTOP_ELEMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PERFORMANCE_TYPE_HTOP_ELEMENT, PerformanceHTopElement))
#define PERFORMANCE_HTOP_ELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PERFORMANCE_TYPE_HTOP_ELEMENT, PerformanceHTopElementClass))
#define PERFORMANCE_IS_HTOP_ELEMENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PERFORMANCE_TYPE_HTOP_ELEMENT))
#define PERFORMANCE_IS_HTOP_ELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PERFORMANCE_TYPE_HTOP_ELEMENT))
#define PERFORMANCE_HTOP_ELEMENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PERFORMANCE_TYPE_HTOP_ELEMENT, PerformanceHTopElementClass))

typedef struct _PerformanceHTopElement PerformanceHTopElement;
typedef struct _PerformanceHTopElementClass PerformanceHTopElementClass;

#define PERFORMANCE_TYPE_HELEMENT (performance_helement_get_type ())
#define PERFORMANCE_HELEMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PERFORMANCE_TYPE_HELEMENT, PerformanceHElement))
#define PERFORMANCE_HELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PERFORMANCE_TYPE_HELEMENT, PerformanceHElementClass))
#define PERFORMANCE_IS_HELEMENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PERFORMANCE_TYPE_HELEMENT))
#define PERFORMANCE_IS_HELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PERFORMANCE_TYPE_HELEMENT))
#define PERFORMANCE_HELEMENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PERFORMANCE_TYPE_HELEMENT, PerformanceHElementClass))

typedef struct _PerformanceHElement PerformanceHElement;
typedef struct _PerformanceHElementClass PerformanceHElementClass;

#define PERFORMANCE_TYPE_HCP_ELEMENT (performance_hcp_element_get_type ())
#define PERFORMANCE_HCP_ELEMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PERFORMANCE_TYPE_HCP_ELEMENT, PerformanceHcpElement))
#define PERFORMANCE_HCP_ELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PERFORMANCE_TYPE_HCP_ELEMENT, PerformanceHcpElementClass))
#define PERFORMANCE_IS_HCP_ELEMENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PERFORMANCE_TYPE_HCP_ELEMENT))
#define PERFORMANCE_IS_HCP_ELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PERFORMANCE_TYPE_HCP_ELEMENT))
#define PERFORMANCE_HCP_ELEMENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PERFORMANCE_TYPE_HCP_ELEMENT, PerformanceHcpElementClass))

typedef struct _PerformanceHcpElement PerformanceHcpElement;
typedef struct _PerformanceHcpElementClass PerformanceHcpElementClass;

#define PERFORMANCE_HELEMENT_TYPE_HASH_MAP (performance_helement_hash_map_get_type ())
#define PERFORMANCE_HELEMENT_HASH_MAP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PERFORMANCE_HELEMENT_TYPE_HASH_MAP, PerformanceHElementHashMap))
#define PERFORMANCE_HELEMENT_HASH_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PERFORMANCE_HELEMENT_TYPE_HASH_MAP, PerformanceHElementHashMapClass))
#define PERFORMANCE_HELEMENT_IS_HASH_MAP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PERFORMANCE_HELEMENT_TYPE_HASH_MAP))
#define PERFORMANCE_HELEMENT_IS_HASH_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PERFORMANCE_HELEMENT_TYPE_HASH_MAP))
#define PERFORMANCE_HELEMENT_HASH_MAP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PERFORMANCE_HELEMENT_TYPE_HASH_MAP, PerformanceHElementHashMapClass))

typedef struct _PerformanceHElementHashMap PerformanceHElementHashMap;
typedef struct _PerformanceHElementHashMapClass PerformanceHElementHashMapClass;

#define PERFORMANCE_TYPE_HCS_ELEMENT (performance_hcs_element_get_type ())
#define PERFORMANCE_HCS_ELEMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PERFORMANCE_TYPE_HCS_ELEMENT, PerformanceHcsElement))
#define PERFORMANCE_HCS_ELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PERFORMANCE_TYPE_HCS_ELEMENT, PerformanceHcsElementClass))
#define PERFORMANCE_IS_HCS_ELEMENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PERFORMANCE_TYPE_HCS_ELEMENT))
#define PERFORMANCE_IS_HCS_ELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PERFORMANCE_TYPE_HCS_ELEMENT))
#define PERFORMANCE_HCS_ELEMENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PERFORMANCE_TYPE_HCS_ELEMENT, PerformanceHcsElementClass))

typedef struct _PerformanceHcsElement PerformanceHcsElement;
typedef struct _PerformanceHcsElementClass PerformanceHcsElementClass;

#define PERFORMANCE_TYPE_HTC_ELEMENT (performance_htc_element_get_type ())
#define PERFORMANCE_HTC_ELEMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PERFORMANCE_TYPE_HTC_ELEMENT, PerformanceHTCElement))
#define PERFORMANCE_HTC_ELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PERFORMANCE_TYPE_HTC_ELEMENT, PerformanceHTCElementClass))
#define PERFORMANCE_IS_HTC_ELEMENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PERFORMANCE_TYPE_HTC_ELEMENT))
#define PERFORMANCE_IS_HTC_ELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PERFORMANCE_TYPE_HTC_ELEMENT))
#define PERFORMANCE_HTC_ELEMENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PERFORMANCE_TYPE_HTC_ELEMENT, PerformanceHTCElementClass))

typedef struct _PerformanceHTCElement PerformanceHTCElement;
typedef struct _PerformanceHTCElementClass PerformanceHTCElementClass;

#define PERFORMANCE_TYPE_HT_ELEMENT (performance_ht_element_get_type ())
#define PERFORMANCE_HT_ELEMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PERFORMANCE_TYPE_HT_ELEMENT, PerformanceHTElement))
#define PERFORMANCE_HT_ELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PERFORMANCE_TYPE_HT_ELEMENT, PerformanceHTElementClass))
#define PERFORMANCE_IS_HT_ELEMENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PERFORMANCE_TYPE_HT_ELEMENT))
#define PERFORMANCE_IS_HT_ELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PERFORMANCE_TYPE_HT_ELEMENT))
#define PERFORMANCE_HT_ELEMENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PERFORMANCE_TYPE_HT_ELEMENT, PerformanceHTElementClass))

typedef struct _PerformanceHTElement PerformanceHTElement;
typedef struct _PerformanceHTElementClass PerformanceHTElementClass;

#define PERFORMANCE_HT_ELEMENT_TYPE_TREE_MAP (performance_ht_element_tree_map_get_type ())
#define PERFORMANCE_HT_ELEMENT_TREE_MAP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PERFORMANCE_HT_ELEMENT_TYPE_TREE_MAP, PerformanceHTElementTreeMap))
#define PERFORMANCE_HT_ELEMENT_TREE_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PERFORMANCE_HT_ELEMENT_TYPE_TREE_MAP, PerformanceHTElementTreeMapClass))
#define PERFORMANCE_HT_ELEMENT_IS_TREE_MAP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PERFORMANCE_HT_ELEMENT_TYPE_TREE_MAP))
#define PERFORMANCE_HT_ELEMENT_IS_TREE_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PERFORMANCE_HT_ELEMENT_TYPE_TREE_MAP))
#define PERFORMANCE_HT_ELEMENT_TREE_MAP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PERFORMANCE_HT_ELEMENT_TYPE_TREE_MAP, PerformanceHTElementTreeMapClass))

typedef struct _PerformanceHTElementTreeMap PerformanceHTElementTreeMap;
typedef struct _PerformanceHTElementTreeMapClass PerformanceHTElementTreeMapClass;

#define PERFORMANCE_TYPE_DHC_ELEMENT (performance_dhc_element_get_type ())
#define PERFORMANCE_DHC_ELEMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PERFORMANCE_TYPE_DHC_ELEMENT, PerformanceDHCElement))
#define PERFORMANCE_DHC_ELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PERFORMANCE_TYPE_DHC_ELEMENT, PerformanceDHCElementClass))
#define PERFORMANCE_IS_DHC_ELEMENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PERFORMANCE_TYPE_DHC_ELEMENT))
#define PERFORMANCE_IS_DHC_ELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PERFORMANCE_TYPE_DHC_ELEMENT))
#define PERFORMANCE_DHC_ELEMENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PERFORMANCE_TYPE_DHC_ELEMENT, PerformanceDHCElementClass))

typedef struct _PerformanceDHCElement PerformanceDHCElement;
typedef struct _PerformanceDHCElementClass PerformanceDHCElementClass;

#define PERFORMANCE_TYPE_DH_ELEMENT (performance_dh_element_get_type ())
#define PERFORMANCE_DH_ELEMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PERFORMANCE_TYPE_DH_ELEMENT, PerformanceDHElement))
#define PERFORMANCE_DH_ELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PERFORMANCE_TYPE_DH_ELEMENT, PerformanceDHElementClass))
#define PERFORMANCE_IS_DH_ELEMENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PERFORMANCE_TYPE_DH_ELEMENT))
#define PERFORMANCE_IS_DH_ELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PERFORMANCE_TYPE_DH_ELEMENT))
#define PERFORMANCE_DH_ELEMENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PERFORMANCE_TYPE_DH_ELEMENT, PerformanceDHElementClass))

typedef struct _PerformanceDHElement PerformanceDHElement;
typedef struct _PerformanceDHElementClass PerformanceDHElementClass;

#define PERFORMANCE_DH_ELEMENT_TYPE_DUAL_KEY_MAP (performance_dh_element_dual_key_map_get_type ())
#define PERFORMANCE_DH_ELEMENT_DUAL_KEY_MAP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PERFORMANCE_DH_ELEMENT_TYPE_DUAL_KEY_MAP, PerformanceDHElementDualKeyMap))
#define PERFORMANCE_DH_ELEMENT_DUAL_KEY_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PERFORMANCE_DH_ELEMENT_TYPE_DUAL_KEY_MAP, PerformanceDHElementDualKeyMapClass))
#define PERFORMANCE_DH_ELEMENT_IS_DUAL_KEY_MAP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PERFORMANCE_DH_ELEMENT_TYPE_DUAL_KEY_MAP))
#define PERFORMANCE_DH_ELEMENT_IS_DUAL_KEY_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PERFORMANCE_DH_ELEMENT_TYPE_DUAL_KEY_MAP))
#define PERFORMANCE_DH_ELEMENT_DUAL_KEY_MAP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PERFORMANCE_DH_ELEMENT_TYPE_DUAL_KEY_MAP, PerformanceDHElementDualKeyMapClass))

typedef struct _PerformanceDHElementDualKeyMap PerformanceDHElementDualKeyMap;
typedef struct _PerformanceDHElementDualKeyMapClass PerformanceDHElementDualKeyMapClass;
typedef struct _PerformanceAElementPrivate PerformanceAElementPrivate;
enum  {
	PERFORMANCE_AELEMENT_0_PROPERTY,
	PERFORMANCE_AELEMENT_NAME_PROPERTY,
	PERFORMANCE_AELEMENT_NUM_PROPERTIES
};
static GParamSpec* performance_aelement_properties[PERFORMANCE_AELEMENT_NUM_PROPERTIES];
typedef struct _PerformanceAElementArrayPrivate PerformanceAElementArrayPrivate;
enum  {
	PERFORMANCE_AELEMENT_ARRAY_0_PROPERTY,
	PERFORMANCE_AELEMENT_ARRAY_ENABLE_DESERIALIZE_PROPERTY,
	PERFORMANCE_AELEMENT_ARRAY_NUM_PROPERTIES
};
static GParamSpec* performance_aelement_array_properties[PERFORMANCE_AELEMENT_ARRAY_NUM_PROPERTIES];
typedef struct _PerformanceCElementPrivate PerformanceCElementPrivate;
enum  {
	PERFORMANCE_CELEMENT_0_PROPERTY,
	PERFORMANCE_CELEMENT_ELEMENTS_PROPERTY,
	PERFORMANCE_CELEMENT_NUM_PROPERTIES
};
static GParamSpec* performance_celement_properties[PERFORMANCE_CELEMENT_NUM_PROPERTIES];
typedef struct _PerformanceHElementPrivate PerformanceHElementPrivate;
enum  {
	PERFORMANCE_HELEMENT_0_PROPERTY,
	PERFORMANCE_HELEMENT_NAME_PROPERTY,
	PERFORMANCE_HELEMENT_NUM_PROPERTIES
};
static GParamSpec* performance_helement_properties[PERFORMANCE_HELEMENT_NUM_PROPERTIES];
typedef struct _PerformanceHElementHashMapPrivate PerformanceHElementHashMapPrivate;
enum  {
	PERFORMANCE_HELEMENT_HASH_MAP_0_PROPERTY,
	PERFORMANCE_HELEMENT_HASH_MAP_ENABLE_DESERIALIZE_PROPERTY,
	PERFORMANCE_HELEMENT_HASH_MAP_NUM_PROPERTIES
};
static GParamSpec* performance_helement_hash_map_properties[PERFORMANCE_HELEMENT_HASH_MAP_NUM_PROPERTIES];
typedef struct _PerformanceHcpElementPrivate PerformanceHcpElementPrivate;
enum  {
	PERFORMANCE_HCP_ELEMENT_0_PROPERTY,
	PERFORMANCE_HCP_ELEMENT_ELEMENTS_PROPERTY,
	PERFORMANCE_HCP_ELEMENT_NUM_PROPERTIES
};
static GParamSpec* performance_hcp_element_properties[PERFORMANCE_HCP_ELEMENT_NUM_PROPERTIES];
typedef struct _PerformanceHcsElementPrivate PerformanceHcsElementPrivate;
enum  {
	PERFORMANCE_HCS_ELEMENT_0_PROPERTY,
	PERFORMANCE_HCS_ELEMENT_ELEMENTS_PROPERTY,
	PERFORMANCE_HCS_ELEMENT_NUM_PROPERTIES
};
static GParamSpec* performance_hcs_element_properties[PERFORMANCE_HCS_ELEMENT_NUM_PROPERTIES];
typedef struct _PerformanceHTopElementPrivate PerformanceHTopElementPrivate;
enum  {
	PERFORMANCE_HTOP_ELEMENT_0_PROPERTY,
	PERFORMANCE_HTOP_ELEMENT_ELEMENTS1_PROPERTY,
	PERFORMANCE_HTOP_ELEMENT_ELEMENTS2_PROPERTY,
	PERFORMANCE_HTOP_ELEMENT_NUM_PROPERTIES
};
static GParamSpec* performance_htop_element_properties[PERFORMANCE_HTOP_ELEMENT_NUM_PROPERTIES];
typedef struct _PerformanceHTElementPrivate PerformanceHTElementPrivate;
enum  {
	PERFORMANCE_HT_ELEMENT_0_PROPERTY,
	PERFORMANCE_HT_ELEMENT_NAME_PROPERTY,
	PERFORMANCE_HT_ELEMENT_NUM_PROPERTIES
};
static GParamSpec* performance_ht_element_properties[PERFORMANCE_HT_ELEMENT_NUM_PROPERTIES];
typedef struct _PerformanceHTElementTreeMapPrivate PerformanceHTElementTreeMapPrivate;
enum  {
	PERFORMANCE_HT_ELEMENT_TREE_MAP_0_PROPERTY,
	PERFORMANCE_HT_ELEMENT_TREE_MAP_ENABLE_DESERIALIZE_PROPERTY,
	PERFORMANCE_HT_ELEMENT_TREE_MAP_NUM_PROPERTIES
};
static GParamSpec* performance_ht_element_tree_map_properties[PERFORMANCE_HT_ELEMENT_TREE_MAP_NUM_PROPERTIES];
typedef struct _PerformanceHTCElementPrivate PerformanceHTCElementPrivate;
enum  {
	PERFORMANCE_HTC_ELEMENT_0_PROPERTY,
	PERFORMANCE_HTC_ELEMENT_ELEMENTS1_PROPERTY,
	PERFORMANCE_HTC_ELEMENT_ELEMENTS2_PROPERTY,
	PERFORMANCE_HTC_ELEMENT_NUM_PROPERTIES
};
static GParamSpec* performance_htc_element_properties[PERFORMANCE_HTC_ELEMENT_NUM_PROPERTIES];
typedef struct _PerformanceDHElementPrivate PerformanceDHElementPrivate;
enum  {
	PERFORMANCE_DH_ELEMENT_0_PROPERTY,
	PERFORMANCE_DH_ELEMENT_NAME_PROPERTY,
	PERFORMANCE_DH_ELEMENT_KEY_PROPERTY,
	PERFORMANCE_DH_ELEMENT_NUM_PROPERTIES
};
static GParamSpec* performance_dh_element_properties[PERFORMANCE_DH_ELEMENT_NUM_PROPERTIES];
typedef struct _PerformanceDHElementDualKeyMapPrivate PerformanceDHElementDualKeyMapPrivate;
enum  {
	PERFORMANCE_DH_ELEMENT_DUAL_KEY_MAP_0_PROPERTY,
	PERFORMANCE_DH_ELEMENT_DUAL_KEY_MAP_ENABLE_DESERIALIZE_PROPERTY,
	PERFORMANCE_DH_ELEMENT_DUAL_KEY_MAP_NUM_PROPERTIES
};
static GParamSpec* performance_dh_element_dual_key_map_properties[PERFORMANCE_DH_ELEMENT_DUAL_KEY_MAP_NUM_PROPERTIES];
typedef struct _PerformanceDHCElementPrivate PerformanceDHCElementPrivate;
enum  {
	PERFORMANCE_DHC_ELEMENT_0_PROPERTY,
	PERFORMANCE_DHC_ELEMENT_ELEMENTS1_PROPERTY,
	PERFORMANCE_DHC_ELEMENT_ELEMENTS2_PROPERTY,
	PERFORMANCE_DHC_ELEMENT_NUM_PROPERTIES
};
static GParamSpec* performance_dhc_element_properties[PERFORMANCE_DHC_ELEMENT_NUM_PROPERTIES];
typedef struct _ParamSpecPerformance ParamSpecPerformance;
#define _vala_assert(expr, msg) if G_LIKELY (expr) ; else g_assertion_message_expr (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg);
#define _vala_return_if_fail(expr, msg) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return; }
#define _vala_return_val_if_fail(expr, msg, val) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return val; }
#define _vala_warn_if_fail(expr, msg) if G_LIKELY (expr) ; else g_warn_message (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg);

struct _Name {
	GXmlSerializableObjectModel parent_instance;
	NamePrivate * priv;
};

struct _NameClass {
	GXmlSerializableObjectModelClass parent_class;
};

struct _Email {
	GXmlSerializableObjectModel parent_instance;
	EmailPrivate * priv;
};

struct _EmailClass {
	GXmlSerializableObjectModelClass parent_class;
};

struct _Author {
	GXmlSerializableObjectModel parent_instance;
	AuthorPrivate * priv;
};

struct _AuthorClass {
	GXmlSerializableObjectModelClass parent_class;
};

struct _AuthorPrivate {
	Name* _name;
	Email* _email;
};

struct _AuthorArray {
	GXmlSerializableArrayList parent_instance;
	AuthorArrayPrivate * priv;
};

struct _AuthorArrayClass {
	GXmlSerializableArrayListClass parent_class;
};

struct _Authors {
	GXmlSerializableContainer parent_instance;
	AuthorsPrivate * priv;
};

struct _AuthorsClass {
	GXmlSerializableContainerClass parent_class;
};

struct _AuthorsPrivate {
	gchar* _number;
	AuthorArray* _array;
};

struct _Inventory {
	GXmlSerializableObjectModel parent_instance;
	InventoryPrivate * priv;
};

struct _InventoryClass {
	GXmlSerializableObjectModelClass parent_class;
};

struct _InventoryPrivate {
	gint _number;
	gint _row;
	gchar* _inventory;
};

struct _InventoryDualKeyMap {
	GXmlSerializableDualKeyMap parent_instance;
	InventoryDualKeyMapPrivate * priv;
};

struct _InventoryDualKeyMapClass {
	GXmlSerializableDualKeyMapClass parent_class;
};

struct _Category {
	GXmlSerializableObjectModel parent_instance;
	CategoryPrivate * priv;
};

struct _CategoryClass {
	GXmlSerializableObjectModelClass parent_class;
};

struct _CategoryPrivate {
	gchar* _name;
};

struct _CategoryMap {
	GXmlSerializableHashMap parent_instance;
	CategoryMapPrivate * priv;
};

struct _CategoryMapClass {
	GXmlSerializableHashMapClass parent_class;
};

struct _Resume {
	GXmlSerializableObjectModel parent_instance;
	ResumePrivate * priv;
};

struct _ResumeClass {
	GXmlSerializableObjectModelClass parent_class;
};

struct _ResumePrivate {
	gchar* _chapter;
	gchar* _text;
};

struct _ResumeMap {
	GXmlSerializableTreeMap parent_instance;
	ResumeMapPrivate * priv;
};

struct _ResumeMapClass {
	GXmlSerializableTreeMapClass parent_class;
};

struct _Book {
	GXmlSerializableContainer parent_instance;
	BookPrivate * priv;
};

struct _BookClass {
	GXmlSerializableContainerClass parent_class;
};

struct _BookPrivate {
	gchar* _year;
	gchar* _isbn;
	Name* _name;
	Authors* _authors;
	InventoryDualKeyMap* _inventory_registers;
	CategoryMap* _categories;
	ResumeMap* _resumes;
};

struct _BookArray {
	GXmlSerializableArrayList parent_instance;
	BookArrayPrivate * priv;
};

struct _BookArrayClass {
	GXmlSerializableArrayListClass parent_class;
};

struct _BookStore {
	GXmlSerializableContainer parent_instance;
	BookStorePrivate * priv;
};

struct _BookStoreClass {
	GXmlSerializableContainerClass parent_class;
};

struct _BookStorePrivate {
	gchar* _name;
	BookArray* _books;
};

struct _Performance {
	GTypeInstance parent_instance;
	volatile int ref_count;
	PerformancePrivate * priv;
};

struct _PerformanceClass {
	GTypeClass parent_class;
	void (*finalize) (Performance *self);
};

struct _PerformanceAElement {
	GXmlSerializableObjectModel parent_instance;
	PerformanceAElementPrivate * priv;
};

struct _PerformanceAElementClass {
	GXmlSerializableObjectModelClass parent_class;
};

struct _PerformanceAElementPrivate {
	gchar* _name;
};

struct _PerformanceAElementArray {
	GXmlSerializableArrayList parent_instance;
	PerformanceAElementArrayPrivate * priv;
};

struct _PerformanceAElementArrayClass {
	GXmlSerializableArrayListClass parent_class;
};

struct _PerformanceAElementArrayPrivate {
	gboolean _enable_deserialize;
};

struct _PerformanceCElement {
	GXmlSerializableObjectModel parent_instance;
	PerformanceCElementPrivate * priv;
};

struct _PerformanceCElementClass {
	GXmlSerializableObjectModelClass parent_class;
};

struct _PerformanceCElementPrivate {
	PerformanceAElementArray* _elements;
};

struct _PerformanceHElement {
	GXmlSerializableObjectModel parent_instance;
	PerformanceHElementPrivate * priv;
};

struct _PerformanceHElementClass {
	GXmlSerializableObjectModelClass parent_class;
};

struct _PerformanceHElementPrivate {
	gchar* _name;
};

struct _PerformanceHElementHashMap {
	GXmlSerializableHashMap parent_instance;
	PerformanceHElementHashMapPrivate * priv;
};

struct _PerformanceHElementHashMapClass {
	GXmlSerializableHashMapClass parent_class;
};

struct _PerformanceHElementHashMapPrivate {
	gboolean _enable_deserialize;
};

struct _PerformanceHcpElement {
	GXmlSerializableObjectModel parent_instance;
	PerformanceHcpElementPrivate * priv;
};

struct _PerformanceHcpElementClass {
	GXmlSerializableObjectModelClass parent_class;
};

struct _PerformanceHcpElementPrivate {
	PerformanceHElementHashMap* _elements;
};

struct _PerformanceHcsElement {
	GXmlSerializableObjectModel parent_instance;
	PerformanceHcsElementPrivate * priv;
};

struct _PerformanceHcsElementClass {
	GXmlSerializableObjectModelClass parent_class;
};

struct _PerformanceHcsElementPrivate {
	PerformanceHElementHashMap* _elements;
};

struct _PerformanceHTopElement {
	GXmlSerializableObjectModel parent_instance;
	PerformanceHTopElementPrivate * priv;
};

struct _PerformanceHTopElementClass {
	GXmlSerializableObjectModelClass parent_class;
};

struct _PerformanceHTopElementPrivate {
	PerformanceHcpElement* _elements1;
	PerformanceHcsElement* _elements2;
};

struct _PerformanceHTElement {
	GXmlSerializableObjectModel parent_instance;
	PerformanceHTElementPrivate * priv;
};

struct _PerformanceHTElementClass {
	GXmlSerializableObjectModelClass parent_class;
};

struct _PerformanceHTElementPrivate {
	gchar* _name;
};

struct _PerformanceHTElementTreeMap {
	GXmlSerializableTreeMap parent_instance;
	PerformanceHTElementTreeMapPrivate * priv;
};

struct _PerformanceHTElementTreeMapClass {
	GXmlSerializableTreeMapClass parent_class;
};

struct _PerformanceHTElementTreeMapPrivate {
	gboolean _enable_deserialize;
};

struct _PerformanceHTCElement {
	GXmlSerializableObjectModel parent_instance;
	PerformanceHTCElementPrivate * priv;
};

struct _PerformanceHTCElementClass {
	GXmlSerializableObjectModelClass parent_class;
};

struct _PerformanceHTCElementPrivate {
	PerformanceHTElementTreeMap* _elements1;
	PerformanceHTElementTreeMap* _elements2;
};

struct _PerformanceDHElement {
	GXmlSerializableObjectModel parent_instance;
	PerformanceDHElementPrivate * priv;
};

struct _PerformanceDHElementClass {
	GXmlSerializableObjectModelClass parent_class;
};

struct _PerformanceDHElementPrivate {
	gchar* _name;
	gchar* _key;
};

struct _PerformanceDHElementDualKeyMap {
	GXmlSerializableDualKeyMap parent_instance;
	PerformanceDHElementDualKeyMapPrivate * priv;
};

struct _PerformanceDHElementDualKeyMapClass {
	GXmlSerializableDualKeyMapClass parent_class;
};

struct _PerformanceDHElementDualKeyMapPrivate {
	gboolean _enable_deserialize;
};

struct _PerformanceDHCElement {
	GXmlSerializableObjectModel parent_instance;
	PerformanceDHCElementPrivate * priv;
};

struct _PerformanceDHCElementClass {
	GXmlSerializableObjectModelClass parent_class;
};

struct _PerformanceDHCElementPrivate {
	PerformanceDHElementDualKeyMap* _elements1;
	PerformanceDHElementDualKeyMap* _elements2;
};

struct _ParamSpecPerformance {
	GParamSpec parent_instance;
};

static gpointer name_parent_class = NULL;
static gpointer email_parent_class = NULL;
static gint Author_private_offset;
static gpointer author_parent_class = NULL;
static gpointer author_array_parent_class = NULL;
static gint Authors_private_offset;
static gpointer authors_parent_class = NULL;
static gint Inventory_private_offset;
static gpointer inventory_parent_class = NULL;
static gpointer inventory_dual_key_map_parent_class = NULL;
static GXmlSerializableMapDualKeyIface * inventory_gxml_serializable_map_dual_key_parent_iface = NULL;
static gint Category_private_offset;
static gpointer category_parent_class = NULL;
static gpointer category_map_parent_class = NULL;
static GXmlSerializableMapKeyIface * category_gxml_serializable_map_key_parent_iface = NULL;
static gint Resume_private_offset;
static gpointer resume_parent_class = NULL;
static gpointer resume_map_parent_class = NULL;
static GXmlSerializableMapKeyIface * resume_gxml_serializable_map_key_parent_iface = NULL;
static gint Book_private_offset;
static gpointer book_parent_class = NULL;
static gpointer book_array_parent_class = NULL;
static gint BookStore_private_offset;
static gpointer book_store_parent_class = NULL;
static gpointer performance_parent_class = NULL;
static gint PerformanceAElement_private_offset;
static gpointer performance_aelement_parent_class = NULL;
static gint PerformanceAElementArray_private_offset;
static gpointer performance_aelement_array_parent_class = NULL;
static gint PerformanceCElement_private_offset;
static gpointer performance_celement_parent_class = NULL;
static gint PerformanceHElement_private_offset;
static gpointer performance_helement_parent_class = NULL;
static gint PerformanceHElementHashMap_private_offset;
static gpointer performance_helement_hash_map_parent_class = NULL;
static GXmlSerializableMapKeyIface * performance_helement_gxml_serializable_map_key_parent_iface = NULL;
static gint PerformanceHcpElement_private_offset;
static gpointer performance_hcp_element_parent_class = NULL;
static gint PerformanceHcsElement_private_offset;
static gpointer performance_hcs_element_parent_class = NULL;
static gint PerformanceHTopElement_private_offset;
static gpointer performance_htop_element_parent_class = NULL;
static gint PerformanceHTElement_private_offset;
static gpointer performance_ht_element_parent_class = NULL;
static gint PerformanceHTElementTreeMap_private_offset;
static gpointer performance_ht_element_tree_map_parent_class = NULL;
static GXmlSerializableMapKeyIface * performance_ht_element_gxml_serializable_map_key_parent_iface = NULL;
static gint PerformanceHTCElement_private_offset;
static gpointer performance_htc_element_parent_class = NULL;
static gint PerformanceDHElement_private_offset;
static gpointer performance_dh_element_parent_class = NULL;
static gint PerformanceDHElementDualKeyMap_private_offset;
static gpointer performance_dh_element_dual_key_map_parent_class = NULL;
static GXmlSerializableMapDualKeyIface * performance_dh_element_gxml_serializable_map_dual_key_parent_iface = NULL;
static gint PerformanceDHCElement_private_offset;
static gpointer performance_dhc_element_parent_class = NULL;

GType name_get_type (void) G_GNUC_CONST;
gchar* name_get_name (Name* self);
static gboolean name_real_serialize_use_xml_node_value (GXmlSerializableObjectModel* base);
static gchar* name_real_to_string (GXmlSerializableObjectModel* base);
Name* name_new (void);
Name* name_construct (GType object_type);
GType email_get_type (void) G_GNUC_CONST;
gchar* email_get_mail (Email* self);
static gboolean email_real_serialize_use_xml_node_value (GXmlSerializableObjectModel* base);
static gchar* email_real_to_string (GXmlSerializableObjectModel* base);
Email* email_new (void);
Email* email_construct (GType object_type);
GType author_get_type (void) G_GNUC_CONST;
static gchar* author_real_to_string (GXmlSerializableObjectModel* base);
Name* author_get_name (Author* self);
Email* author_get_email (Author* self);
Author* author_new (void);
Author* author_construct (GType object_type);
void author_set_name (Author* self,
                      Name* value);
void author_set_email (Author* self,
                       Email* value);
GType author_array_get_type (void) G_GNUC_CONST;
AuthorArray* author_array_new (void);
AuthorArray* author_array_construct (GType object_type);
static void author_finalize (GObject * obj);
static void _vala_author_get_property (GObject * object,
                                guint property_id,
                                GValue * value,
                                GParamSpec * pspec);
static void _vala_author_set_property (GObject * object,
                                guint property_id,
                                const GValue * value,
                                GParamSpec * pspec);
GType authors_get_type (void) G_GNUC_CONST;
static void authors_real_init_containers (GXmlSerializableContainer* base);
AuthorArray* authors_get_array (Authors* self);
void authors_set_array (Authors* self,
                        AuthorArray* value);
static gchar* authors_real_to_string (GXmlSerializableObjectModel* base);
Authors* authors_new (void);
Authors* authors_construct (GType object_type);
const gchar* authors_get_number (Authors* self);
void authors_set_number (Authors* self,
                         const gchar* value);
static void authors_finalize (GObject * obj);
static void _vala_authors_get_property (GObject * object,
                                 guint property_id,
                                 GValue * value,
                                 GParamSpec * pspec);
static void _vala_authors_set_property (GObject * object,
                                 guint property_id,
                                 const GValue * value,
                                 GParamSpec * pspec);
GType inventory_get_type (void) G_GNUC_CONST;
static gint inventory_real_get_map_primary_key (GXmlSerializableMapDualKey* base);
gint inventory_get_number (Inventory* self);
static gchar* inventory_real_get_map_secondary_key (GXmlSerializableMapDualKey* base);
const gchar* inventory_get_inventory (Inventory* self);
static gchar* inventory_real_to_string (GXmlSerializableObjectModel* base);
gint inventory_get_row (Inventory* self);
Inventory* inventory_new (void);
Inventory* inventory_construct (GType object_type);
void inventory_set_number (Inventory* self,
                           gint value);
void inventory_set_row (Inventory* self,
                        gint value);
void inventory_set_inventory (Inventory* self,
                              const gchar* value);
GType inventory_dual_key_map_get_type (void) G_GNUC_CONST;
InventoryDualKeyMap* inventory_dual_key_map_new (void);
InventoryDualKeyMap* inventory_dual_key_map_construct (GType object_type);
static void inventory_finalize (GObject * obj);
static void _vala_inventory_get_property (GObject * object,
                                   guint property_id,
                                   GValue * value,
                                   GParamSpec * pspec);
static void _vala_inventory_set_property (GObject * object,
                                   guint property_id,
                                   const GValue * value,
                                   GParamSpec * pspec);
GType category_get_type (void) G_GNUC_CONST;
static gchar* category_real_get_map_key (GXmlSerializableMapKey* base);
const gchar* category_get_name (Category* self);
static gchar* category_real_to_string (GXmlSerializableObjectModel* base);
Category* category_new (void);
Category* category_construct (GType object_type);
void category_set_name (Category* self,
                        const gchar* value);
GType category_map_get_type (void) G_GNUC_CONST;
CategoryMap* category_map_new (void);
CategoryMap* category_map_construct (GType object_type);
static void category_finalize (GObject * obj);
static void _vala_category_get_property (GObject * object,
                                  guint property_id,
                                  GValue * value,
                                  GParamSpec * pspec);
static void _vala_category_set_property (GObject * object,
                                  guint property_id,
                                  const GValue * value,
                                  GParamSpec * pspec);
GType resume_get_type (void) G_GNUC_CONST;
static gchar* resume_real_get_map_key (GXmlSerializableMapKey* base);
const gchar* resume_get_chapter (Resume* self);
static gchar* resume_real_to_string (GXmlSerializableObjectModel* base);
const gchar* resume_get_text (Resume* self);
Resume* resume_new (void);
Resume* resume_construct (GType object_type);
void resume_set_chapter (Resume* self,
                         const gchar* value);
void resume_set_text (Resume* self,
                      const gchar* value);
GType resume_map_get_type (void) G_GNUC_CONST;
ResumeMap* resume_map_new (void);
ResumeMap* resume_map_construct (GType object_type);
static void resume_finalize (GObject * obj);
static void _vala_resume_get_property (GObject * object,
                                guint property_id,
                                GValue * value,
                                GParamSpec * pspec);
static void _vala_resume_set_property (GObject * object,
                                guint property_id,
                                const GValue * value,
                                GParamSpec * pspec);
GType book_get_type (void) G_GNUC_CONST;
static gchar* book_real_to_string (GXmlSerializableObjectModel* base);
Name* book_get_name (Book* self);
const gchar* book_get_year (Book* self);
static void book_real_init_containers (GXmlSerializableContainer* base);
InventoryDualKeyMap* book_get_inventory_registers (Book* self);
void book_set_inventory_registers (Book* self,
                                   InventoryDualKeyMap* value);
CategoryMap* book_get_categories (Book* self);
void book_set_categories (Book* self,
                          CategoryMap* value);
ResumeMap* book_get_resumes (Book* self);
void book_set_resumes (Book* self,
                       ResumeMap* value);
Book* book_new (void);
Book* book_construct (GType object_type);
void book_set_year (Book* self,
                    const gchar* value);
const gchar* book_get_isbn (Book* self);
void book_set_isbn (Book* self,
                    const gchar* value);
void book_set_name (Book* self,
                    Name* value);
Authors* book_get_authors (Book* self);
void book_set_authors (Book* self,
                       Authors* value);
GType book_array_get_type (void) G_GNUC_CONST;
BookArray* book_array_new (void);
BookArray* book_array_construct (GType object_type);
static void book_finalize (GObject * obj);
static void _vala_book_get_property (GObject * object,
                              guint property_id,
                              GValue * value,
                              GParamSpec * pspec);
static void _vala_book_set_property (GObject * object,
                              guint property_id,
                              const GValue * value,
                              GParamSpec * pspec);
GType book_store_get_type (void) G_GNUC_CONST;
static void book_store_real_init_containers (GXmlSerializableContainer* base);
BookArray* book_store_get_books (BookStore* self);
void book_store_set_books (BookStore* self,
                           BookArray* value);
static gchar* book_store_real_to_string (GXmlSerializableObjectModel* base);
const gchar* book_store_get_name (BookStore* self);
BookStore* book_store_new (void);
BookStore* book_store_construct (GType object_type);
void book_store_set_name (BookStore* self,
                          const gchar* value);
static void book_store_finalize (GObject * obj);
static void _vala_book_store_get_property (GObject * object,
                                    guint property_id,
                                    GValue * value,
                                    GParamSpec * pspec);
static void _vala_book_store_set_property (GObject * object,
                                    guint property_id,
                                    const GValue * value,
                                    GParamSpec * pspec);
gpointer performance_ref (gpointer instance);
void performance_unref (gpointer instance);
GParamSpec* param_spec_performance (const gchar* name,
                                    const gchar* nick,
                                    const gchar* blurb,
                                    GType object_type,
                                    GParamFlags flags);
void value_set_performance (GValue* value,
                            gpointer v_object);
void value_take_performance (GValue* value,
                             gpointer v_object);
gpointer value_get_performance (const GValue* value);
GType performance_get_type (void) G_GNUC_CONST;
void performance_iterate (GXmlNode* node);
void performance_iterate_dom (GXmlDomNode* node);
void performance_add_tests (void);
static void __lambda170_ (void);
static void ___lambda170__gtest_func (void);
static void __lambda171_ (void);
static void ___lambda171__gtest_func (void);
static void __lambda172_ (void);
GType gom_book_store_get_type (void) G_GNUC_CONST;
GomBookStore* gom_book_store_new (void);
GomBookStore* gom_book_store_construct (GType object_type);
GType gom_book_array_get_type (void) G_GNUC_CONST;
GomBookArray* gom_book_store_get_books (GomBookStore* self);
static void ___lambda172__gtest_func (void);
static void __lambda173_ (void);
static void ___lambda173__gtest_func (void);
static void __lambda174_ (void);
static void ___lambda174__gtest_func (void);
static void __lambda175_ (void);
static void ___lambda175__gtest_func (void);
static void __lambda176_ (void);
static void ___lambda176__gtest_func (void);
static void __lambda177_ (void);
static GType performance_celement_get_type (void) G_GNUC_CONST G_GNUC_UNUSED;
static PerformanceCElement* performance_celement_new (void);
static PerformanceCElement* performance_celement_construct (GType object_type);
static GType performance_aelement_get_type (void) G_GNUC_CONST G_GNUC_UNUSED;
static PerformanceAElement* performance_aelement_new (void);
static PerformanceAElement* performance_aelement_construct (GType object_type);
GType performance_aelement_array_get_type (void) G_GNUC_CONST;
static PerformanceAElementArray* performance_celement_get_elements (PerformanceCElement* self);
static void performance_aelement_array_set_enable_deserialize (PerformanceAElementArray* self,
                                                        gboolean value);
static void ___lambda177__gtest_func (void);
static void __lambda178_ (void);
static void ___lambda178__gtest_func (void);
static void __lambda179_ (void);
static GType performance_htop_element_get_type (void) G_GNUC_CONST G_GNUC_UNUSED;
static PerformanceHTopElement* performance_htop_element_new (void);
static PerformanceHTopElement* performance_htop_element_construct (GType object_type);
static GType performance_helement_get_type (void) G_GNUC_CONST G_GNUC_UNUSED;
static PerformanceHElement* performance_helement_new (void);
static PerformanceHElement* performance_helement_construct (GType object_type);
static void performance_helement_set_name (PerformanceHElement* self,
                                    const gchar* value);
static GType performance_hcp_element_get_type (void) G_GNUC_CONST G_GNUC_UNUSED;
static PerformanceHcpElement* performance_htop_element_get_elements1 (PerformanceHTopElement* self);
GType performance_helement_hash_map_get_type (void) G_GNUC_CONST;
static PerformanceHElementHashMap* performance_hcp_element_get_elements (PerformanceHcpElement* self);
static const gchar* performance_helement_get_name (PerformanceHElement* self);
static GType performance_hcs_element_get_type (void) G_GNUC_CONST G_GNUC_UNUSED;
static PerformanceHcsElement* performance_htop_element_get_elements2 (PerformanceHTopElement* self);
static PerformanceHElementHashMap* performance_hcs_element_get_elements (PerformanceHcsElement* self);
static void performance_helement_hash_map_set_enable_deserialize (PerformanceHElementHashMap* self,
                                                           gboolean value);
static void ___lambda179__gtest_func (void);
static void __lambda180_ (void);
static void ___lambda180__gtest_func (void);
static void __lambda181_ (void);
static GType performance_htc_element_get_type (void) G_GNUC_CONST G_GNUC_UNUSED;
static PerformanceHTCElement* performance_htc_element_new (void);
static PerformanceHTCElement* performance_htc_element_construct (GType object_type);
static GType performance_ht_element_get_type (void) G_GNUC_CONST G_GNUC_UNUSED;
static PerformanceHTElement* performance_ht_element_new (void);
static PerformanceHTElement* performance_ht_element_construct (GType object_type);
static void performance_ht_element_set_name (PerformanceHTElement* self,
                                      const gchar* value);
GType performance_ht_element_tree_map_get_type (void) G_GNUC_CONST;
static PerformanceHTElementTreeMap* performance_htc_element_get_elements1 (PerformanceHTCElement* self);
static const gchar* performance_ht_element_get_name (PerformanceHTElement* self);
static PerformanceHTElementTreeMap* performance_htc_element_get_elements2 (PerformanceHTCElement* self);
static void performance_ht_element_tree_map_set_enable_deserialize (PerformanceHTElementTreeMap* self,
                                                             gboolean value);
static void ___lambda181__gtest_func (void);
static void __lambda182_ (void);
static void ___lambda182__gtest_func (void);
static void __lambda183_ (void);
static GType performance_dhc_element_get_type (void) G_GNUC_CONST G_GNUC_UNUSED;
static PerformanceDHCElement* performance_dhc_element_new (void);
static PerformanceDHCElement* performance_dhc_element_construct (GType object_type);
static GType performance_dh_element_get_type (void) G_GNUC_CONST G_GNUC_UNUSED;
static PerformanceDHElement* performance_dh_element_new (void);
static PerformanceDHElement* performance_dh_element_construct (GType object_type);
static void performance_dh_element_set_key (PerformanceDHElement* self,
                                     const gchar* value);
static void performance_dh_element_set_name (PerformanceDHElement* self,
                                      const gchar* value);
GType performance_dh_element_dual_key_map_get_type (void) G_GNUC_CONST;
static PerformanceDHElementDualKeyMap* performance_dhc_element_get_elements1 (PerformanceDHCElement* self);
static const gchar* performance_dh_element_get_key (PerformanceDHElement* self);
static const gchar* performance_dh_element_get_name (PerformanceDHElement* self);
static PerformanceDHElementDualKeyMap* performance_dhc_element_get_elements2 (PerformanceDHCElement* self);
static void performance_dh_element_dual_key_map_set_enable_deserialize (PerformanceDHElementDualKeyMap* self,
                                                                 gboolean value);
static void ___lambda183__gtest_func (void);
static void __lambda184_ (void);
static void ___lambda184__gtest_func (void);
static void __lambda185_ (void);
static void ___lambda185__gtest_func (void);
static void __lambda186_ (void);
static void ___lambda186__gtest_func (void);
static void __lambda187_ (void);
static void ___lambda187__gtest_func (void);
static void __lambda188_ (void);
static void ___lambda188__gtest_func (void);
static void __lambda189_ (void);
static void ___lambda189__gtest_func (void);
Performance* performance_new (void);
Performance* performance_construct (GType object_type);
static PerformanceAElement* performance_aelement_new_named (const gchar* name);
static PerformanceAElement* performance_aelement_construct_named (GType object_type,
                                                           const gchar* name);
static void performance_aelement_set_name (PerformanceAElement* self,
                                    const gchar* value);
static gchar* performance_aelement_real_to_string (GXmlSerializableObjectModel* base);
static const gchar* performance_aelement_get_name (PerformanceAElement* self);
static gboolean performance_aelement_array_real_deserialize_proceed (GXmlSerializableArrayList* base);
static gboolean performance_aelement_array_get_enable_deserialize (PerformanceAElementArray* self);
static PerformanceAElementArray* performance_aelement_array_new (void);
static PerformanceAElementArray* performance_aelement_array_construct (GType object_type);
static void performance_aelement_array_finalize (GObject * obj);
static void _vala_performance_aelement_array_get_property (GObject * object,
                                                    guint property_id,
                                                    GValue * value,
                                                    GParamSpec * pspec);
static void _vala_performance_aelement_array_set_property (GObject * object,
                                                    guint property_id,
                                                    const GValue * value,
                                                    GParamSpec * pspec);
static void performance_aelement_finalize (GObject * obj);
static void _vala_performance_aelement_get_property (GObject * object,
                                              guint property_id,
                                              GValue * value,
                                              GParamSpec * pspec);
static void _vala_performance_aelement_set_property (GObject * object,
                                              guint property_id,
                                              const GValue * value,
                                              GParamSpec * pspec);
static gchar* performance_celement_real_node_name (GXmlSerializableObjectModel* base);
static gchar* performance_celement_real_to_string (GXmlSerializableObjectModel* base);
static void performance_celement_set_elements (PerformanceCElement* self,
                                        PerformanceAElementArray* value);
static void performance_celement_finalize (GObject * obj);
static void _vala_performance_celement_get_property (GObject * object,
                                              guint property_id,
                                              GValue * value,
                                              GParamSpec * pspec);
static void _vala_performance_celement_set_property (GObject * object,
                                              guint property_id,
                                              const GValue * value,
                                              GParamSpec * pspec);
static gchar* performance_helement_real_get_map_key (GXmlSerializableMapKey* base);
static gchar* performance_helement_real_node_name (GXmlSerializableObjectModel* base);
static gchar* performance_helement_real_to_string (GXmlSerializableObjectModel* base);
static gboolean performance_helement_hash_map_real_deserialize_proceed (GXmlSerializableHashMap* base);
static gboolean performance_helement_hash_map_get_enable_deserialize (PerformanceHElementHashMap* self);
static PerformanceHElementHashMap* performance_helement_hash_map_new (void);
static PerformanceHElementHashMap* performance_helement_hash_map_construct (GType object_type);
static void performance_helement_hash_map_finalize (GObject * obj);
static void _vala_performance_helement_hash_map_get_property (GObject * object,
                                                       guint property_id,
                                                       GValue * value,
                                                       GParamSpec * pspec);
static void _vala_performance_helement_hash_map_set_property (GObject * object,
                                                       guint property_id,
                                                       const GValue * value,
                                                       GParamSpec * pspec);
static void performance_helement_finalize (GObject * obj);
static void _vala_performance_helement_get_property (GObject * object,
                                              guint property_id,
                                              GValue * value,
                                              GParamSpec * pspec);
static void _vala_performance_helement_set_property (GObject * object,
                                              guint property_id,
                                              const GValue * value,
                                              GParamSpec * pspec);
static gchar* performance_hcp_element_real_node_name (GXmlSerializableObjectModel* base);
static gchar* performance_hcp_element_real_to_string (GXmlSerializableObjectModel* base);
static PerformanceHcpElement* performance_hcp_element_new (void);
static PerformanceHcpElement* performance_hcp_element_construct (GType object_type);
static void performance_hcp_element_set_elements (PerformanceHcpElement* self,
                                           PerformanceHElementHashMap* value);
static void performance_hcp_element_finalize (GObject * obj);
static void _vala_performance_hcp_element_get_property (GObject * object,
                                                 guint property_id,
                                                 GValue * value,
                                                 GParamSpec * pspec);
static void _vala_performance_hcp_element_set_property (GObject * object,
                                                 guint property_id,
                                                 const GValue * value,
                                                 GParamSpec * pspec);
static gchar* performance_hcs_element_real_node_name (GXmlSerializableObjectModel* base);
static gchar* performance_hcs_element_real_to_string (GXmlSerializableObjectModel* base);
static PerformanceHcsElement* performance_hcs_element_new (void);
static PerformanceHcsElement* performance_hcs_element_construct (GType object_type);
static void performance_hcs_element_set_elements (PerformanceHcsElement* self,
                                           PerformanceHElementHashMap* value);
static void performance_hcs_element_finalize (GObject * obj);
static void _vala_performance_hcs_element_get_property (GObject * object,
                                                 guint property_id,
                                                 GValue * value,
                                                 GParamSpec * pspec);
static void _vala_performance_hcs_element_set_property (GObject * object,
                                                 guint property_id,
                                                 const GValue * value,
                                                 GParamSpec * pspec);
static gchar* performance_htop_element_real_node_name (GXmlSerializableObjectModel* base);
static gchar* performance_htop_element_real_to_string (GXmlSerializableObjectModel* base);
static gboolean performance_htop_element_real_property_use_nick (GXmlSerializableObjectModel* base);
static void performance_htop_element_set_elements1 (PerformanceHTopElement* self,
                                             PerformanceHcpElement* value);
static void performance_htop_element_set_elements2 (PerformanceHTopElement* self,
                                             PerformanceHcsElement* value);
static void performance_htop_element_finalize (GObject * obj);
static void _vala_performance_htop_element_get_property (GObject * object,
                                                  guint property_id,
                                                  GValue * value,
                                                  GParamSpec * pspec);
static void _vala_performance_htop_element_set_property (GObject * object,
                                                  guint property_id,
                                                  const GValue * value,
                                                  GParamSpec * pspec);
static gchar* performance_ht_element_real_get_map_key (GXmlSerializableMapKey* base);
static gchar* performance_ht_element_real_node_name (GXmlSerializableObjectModel* base);
static gchar* performance_ht_element_real_to_string (GXmlSerializableObjectModel* base);
static gboolean performance_ht_element_tree_map_real_deserialize_proceed (GXmlSerializableTreeMap* base);
static gboolean performance_ht_element_tree_map_get_enable_deserialize (PerformanceHTElementTreeMap* self);
static PerformanceHTElementTreeMap* performance_ht_element_tree_map_new (void);
static PerformanceHTElementTreeMap* performance_ht_element_tree_map_construct (GType object_type);
static void performance_ht_element_tree_map_finalize (GObject * obj);
static void _vala_performance_ht_element_tree_map_get_property (GObject * object,
                                                         guint property_id,
                                                         GValue * value,
                                                         GParamSpec * pspec);
static void _vala_performance_ht_element_tree_map_set_property (GObject * object,
                                                         guint property_id,
                                                         const GValue * value,
                                                         GParamSpec * pspec);
static void performance_ht_element_finalize (GObject * obj);
static void _vala_performance_ht_element_get_property (GObject * object,
                                                guint property_id,
                                                GValue * value,
                                                GParamSpec * pspec);
static void _vala_performance_ht_element_set_property (GObject * object,
                                                guint property_id,
                                                const GValue * value,
                                                GParamSpec * pspec);
static gchar* performance_htc_element_real_node_name (GXmlSerializableObjectModel* base);
static gchar* performance_htc_element_real_to_string (GXmlSerializableObjectModel* base);
static void performance_htc_element_set_elements1 (PerformanceHTCElement* self,
                                            PerformanceHTElementTreeMap* value);
static void performance_htc_element_set_elements2 (PerformanceHTCElement* self,
                                            PerformanceHTElementTreeMap* value);
static void performance_htc_element_finalize (GObject * obj);
static void _vala_performance_htc_element_get_property (GObject * object,
                                                 guint property_id,
                                                 GValue * value,
                                                 GParamSpec * pspec);
static void _vala_performance_htc_element_set_property (GObject * object,
                                                 guint property_id,
                                                 const GValue * value,
                                                 GParamSpec * pspec);
static gchar* performance_dh_element_real_get_map_primary_key (GXmlSerializableMapDualKey* base);
static gchar* performance_dh_element_real_get_map_secondary_key (GXmlSerializableMapDualKey* base);
static gchar* performance_dh_element_real_node_name (GXmlSerializableObjectModel* base);
static gchar* performance_dh_element_real_to_string (GXmlSerializableObjectModel* base);
static gboolean performance_dh_element_dual_key_map_real_deserialize_proceed (GXmlSerializableDualKeyMap* base);
static gboolean performance_dh_element_dual_key_map_get_enable_deserialize (PerformanceDHElementDualKeyMap* self);
static PerformanceDHElementDualKeyMap* performance_dh_element_dual_key_map_new (void);
static PerformanceDHElementDualKeyMap* performance_dh_element_dual_key_map_construct (GType object_type);
static void performance_dh_element_dual_key_map_finalize (GObject * obj);
static void _vala_performance_dh_element_dual_key_map_get_property (GObject * object,
                                                             guint property_id,
                                                             GValue * value,
                                                             GParamSpec * pspec);
static void _vala_performance_dh_element_dual_key_map_set_property (GObject * object,
                                                             guint property_id,
                                                             const GValue * value,
                                                             GParamSpec * pspec);
static void performance_dh_element_finalize (GObject * obj);
static void _vala_performance_dh_element_get_property (GObject * object,
                                                guint property_id,
                                                GValue * value,
                                                GParamSpec * pspec);
static void _vala_performance_dh_element_set_property (GObject * object,
                                                guint property_id,
                                                const GValue * value,
                                                GParamSpec * pspec);
static gchar* performance_dhc_element_real_node_name (GXmlSerializableObjectModel* base);
static gchar* performance_dhc_element_real_to_string (GXmlSerializableObjectModel* base);
static void performance_dhc_element_set_elements1 (PerformanceDHCElement* self,
                                            PerformanceDHElementDualKeyMap* value);
static void performance_dhc_element_set_elements2 (PerformanceDHCElement* self,
                                            PerformanceDHElementDualKeyMap* value);
static void performance_dhc_element_finalize (GObject * obj);
static void _vala_performance_dhc_element_get_property (GObject * object,
                                                 guint property_id,
                                                 GValue * value,
                                                 GParamSpec * pspec);
static void _vala_performance_dhc_element_set_property (GObject * object,
                                                 guint property_id,
                                                 const GValue * value,
                                                 GParamSpec * pspec);
static void performance_finalize (Performance * obj);

gchar*
name_get_name (Name* self)
{
	gchar* result = NULL;
	gchar* _tmp0_;
	gchar* _tmp1_;
#line 23 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 23 "gxml-performance.vala"
	_tmp0_ = gxml_serializable_get_serialized_xml_node_value ((GXmlSerializable*) self);
#line 23 "gxml-performance.vala"
	_tmp1_ = _tmp0_;
#line 23 "gxml-performance.vala"
	result = _tmp1_;
#line 23 "gxml-performance.vala"
	return result;
#line 1499 "gxml-performance.c"
}

static gboolean
name_real_serialize_use_xml_node_value (GXmlSerializableObjectModel* base)
{
	Name * self;
	gboolean result = FALSE;
#line 24 "gxml-performance.vala"
	self = (Name*) base;
#line 24 "gxml-performance.vala"
	result = TRUE;
#line 24 "gxml-performance.vala"
	return result;
#line 1513 "gxml-performance.c"
}

static gchar*
name_real_to_string (GXmlSerializableObjectModel* base)
{
	Name * self;
	gchar* result = NULL;
	gchar* _tmp0_;
	gchar* _tmp1_;
#line 25 "gxml-performance.vala"
	self = (Name*) base;
#line 25 "gxml-performance.vala"
	_tmp0_ = gxml_serializable_get_serialized_xml_node_value ((GXmlSerializable*) self);
#line 25 "gxml-performance.vala"
	_tmp1_ = _tmp0_;
#line 25 "gxml-performance.vala"
	result = _tmp1_;
#line 25 "gxml-performance.vala"
	return result;
#line 1533 "gxml-performance.c"
}

Name*
name_construct (GType object_type)
{
	Name * self = NULL;
#line 21 "gxml-performance.vala"
	self = (Name*) gxml_serializable_object_model_construct (object_type);
#line 21 "gxml-performance.vala"
	return self;
#line 1544 "gxml-performance.c"
}

Name*
name_new (void)
{
#line 21 "gxml-performance.vala"
	return name_construct (TYPE_NAME);
#line 1552 "gxml-performance.c"
}

static void
name_class_init (NameClass * klass,
                 gpointer klass_data)
{
#line 21 "gxml-performance.vala"
	name_parent_class = g_type_class_peek_parent (klass);
#line 21 "gxml-performance.vala"
	((GXmlSerializableObjectModelClass *) klass)->serialize_use_xml_node_value = (gboolean (*) (GXmlSerializableObjectModel*)) name_real_serialize_use_xml_node_value;
#line 21 "gxml-performance.vala"
	((GXmlSerializableObjectModelClass *) klass)->to_string = (gchar* (*) (GXmlSerializableObjectModel*)) name_real_to_string;
#line 1565 "gxml-performance.c"
}

static void
name_instance_init (Name * self,
                    gpointer klass)
{
}

GType
name_get_type (void)
{
	static volatile gsize name_type_id__volatile = 0;
	if (g_once_init_enter (&name_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (NameClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) name_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (Name), 0, (GInstanceInitFunc) name_instance_init, NULL };
		GType name_type_id;
		name_type_id = g_type_register_static (GXML_TYPE_SERIALIZABLE_OBJECT_MODEL, "Name", &g_define_type_info, 0);
		g_once_init_leave (&name_type_id__volatile, name_type_id);
	}
	return name_type_id__volatile;
}

gchar*
email_get_mail (Email* self)
{
	gchar* result = NULL;
	gchar* _tmp0_;
	gchar* _tmp1_;
#line 30 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 30 "gxml-performance.vala"
	_tmp0_ = gxml_serializable_get_serialized_xml_node_value ((GXmlSerializable*) self);
#line 30 "gxml-performance.vala"
	_tmp1_ = _tmp0_;
#line 30 "gxml-performance.vala"
	result = _tmp1_;
#line 30 "gxml-performance.vala"
	return result;
#line 1603 "gxml-performance.c"
}

static gboolean
email_real_serialize_use_xml_node_value (GXmlSerializableObjectModel* base)
{
	Email * self;
	gboolean result = FALSE;
#line 31 "gxml-performance.vala"
	self = (Email*) base;
#line 31 "gxml-performance.vala"
	result = TRUE;
#line 31 "gxml-performance.vala"
	return result;
#line 1617 "gxml-performance.c"
}

static gchar*
email_real_to_string (GXmlSerializableObjectModel* base)
{
	Email * self;
	gchar* result = NULL;
	gchar* _tmp0_;
	gchar* _tmp1_;
#line 32 "gxml-performance.vala"
	self = (Email*) base;
#line 32 "gxml-performance.vala"
	_tmp0_ = gxml_serializable_get_serialized_xml_node_value ((GXmlSerializable*) self);
#line 32 "gxml-performance.vala"
	_tmp1_ = _tmp0_;
#line 32 "gxml-performance.vala"
	result = _tmp1_;
#line 32 "gxml-performance.vala"
	return result;
#line 1637 "gxml-performance.c"
}

Email*
email_construct (GType object_type)
{
	Email * self = NULL;
#line 28 "gxml-performance.vala"
	self = (Email*) gxml_serializable_object_model_construct (object_type);
#line 28 "gxml-performance.vala"
	return self;
#line 1648 "gxml-performance.c"
}

Email*
email_new (void)
{
#line 28 "gxml-performance.vala"
	return email_construct (TYPE_EMAIL);
#line 1656 "gxml-performance.c"
}

static void
email_class_init (EmailClass * klass,
                  gpointer klass_data)
{
#line 28 "gxml-performance.vala"
	email_parent_class = g_type_class_peek_parent (klass);
#line 28 "gxml-performance.vala"
	((GXmlSerializableObjectModelClass *) klass)->serialize_use_xml_node_value = (gboolean (*) (GXmlSerializableObjectModel*)) email_real_serialize_use_xml_node_value;
#line 28 "gxml-performance.vala"
	((GXmlSerializableObjectModelClass *) klass)->to_string = (gchar* (*) (GXmlSerializableObjectModel*)) email_real_to_string;
#line 1669 "gxml-performance.c"
}

static void
email_instance_init (Email * self,
                     gpointer klass)
{
}

GType
email_get_type (void)
{
	static volatile gsize email_type_id__volatile = 0;
	if (g_once_init_enter (&email_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (EmailClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) email_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (Email), 0, (GInstanceInitFunc) email_instance_init, NULL };
		GType email_type_id;
		email_type_id = g_type_register_static (GXML_TYPE_SERIALIZABLE_OBJECT_MODEL, "Email", &g_define_type_info, 0);
		g_once_init_leave (&email_type_id__volatile, email_type_id);
	}
	return email_type_id__volatile;
}

static inline gpointer
author_get_instance_private (Author* self)
{
	return G_STRUCT_MEMBER_P (self, Author_private_offset);
}

static const gchar*
string_to_string (const gchar* self)
{
	const gchar* result = NULL;
#line 1516 "glib-2.0.vapi"
	g_return_val_if_fail (self != NULL, NULL);
#line 1517 "glib-2.0.vapi"
	result = self;
#line 1517 "glib-2.0.vapi"
	return result;
#line 1707 "gxml-performance.c"
}

static gchar*
author_real_to_string (GXmlSerializableObjectModel* base)
{
	Author * self;
	gchar* result = NULL;
	Name* _tmp0_;
	gchar* _tmp1_;
	gchar* _tmp2_;
	const gchar* _tmp3_;
	Email* _tmp4_;
	gchar* _tmp5_;
	gchar* _tmp6_;
	const gchar* _tmp7_;
	gchar* _tmp8_;
	gchar* _tmp9_;
#line 39 "gxml-performance.vala"
	self = (Author*) base;
#line 39 "gxml-performance.vala"
	_tmp0_ = self->priv->_name;
#line 39 "gxml-performance.vala"
	_tmp1_ = name_get_name (_tmp0_);
#line 39 "gxml-performance.vala"
	_tmp2_ = _tmp1_;
#line 39 "gxml-performance.vala"
	_tmp3_ = string_to_string (_tmp2_);
#line 39 "gxml-performance.vala"
	_tmp4_ = self->priv->_email;
#line 39 "gxml-performance.vala"
	_tmp5_ = email_get_mail (_tmp4_);
#line 39 "gxml-performance.vala"
	_tmp6_ = _tmp5_;
#line 39 "gxml-performance.vala"
	_tmp7_ = string_to_string (_tmp6_);
#line 39 "gxml-performance.vala"
	_tmp8_ = g_strconcat ("\"", _tmp3_, "\"<", _tmp7_, ">", NULL);
#line 39 "gxml-performance.vala"
	_tmp9_ = _tmp8_;
#line 39 "gxml-performance.vala"
	_g_free0 (_tmp6_);
#line 39 "gxml-performance.vala"
	_g_free0 (_tmp2_);
#line 39 "gxml-performance.vala"
	result = _tmp9_;
#line 39 "gxml-performance.vala"
	return result;
#line 1755 "gxml-performance.c"
}

Author*
author_construct (GType object_type)
{
	Author * self = NULL;
#line 35 "gxml-performance.vala"
	self = (Author*) gxml_serializable_object_model_construct (object_type);
#line 35 "gxml-performance.vala"
	return self;
#line 1766 "gxml-performance.c"
}

Author*
author_new (void)
{
#line 35 "gxml-performance.vala"
	return author_construct (TYPE_AUTHOR);
#line 1774 "gxml-performance.c"
}

Name*
author_get_name (Author* self)
{
	Name* result;
	Name* _tmp0_;
#line 37 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 37 "gxml-performance.vala"
	_tmp0_ = self->priv->_name;
#line 37 "gxml-performance.vala"
	result = _tmp0_;
#line 37 "gxml-performance.vala"
	return result;
#line 1790 "gxml-performance.c"
}

static gpointer
_g_object_ref0 (gpointer self)
{
#line 37 "gxml-performance.vala"
	return self ? g_object_ref (self) : NULL;
#line 1798 "gxml-performance.c"
}

void
author_set_name (Author* self,
                 Name* value)
{
#line 37 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 37 "gxml-performance.vala"
	if (author_get_name (self) != value) {
#line 1809 "gxml-performance.c"
		Name* _tmp0_;
#line 37 "gxml-performance.vala"
		_tmp0_ = _g_object_ref0 (value);
#line 37 "gxml-performance.vala"
		_g_object_unref0 (self->priv->_name);
#line 37 "gxml-performance.vala"
		self->priv->_name = _tmp0_;
#line 37 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, author_properties[AUTHOR_NAME_PROPERTY]);
#line 1819 "gxml-performance.c"
	}
}

Email*
author_get_email (Author* self)
{
	Email* result;
	Email* _tmp0_;
#line 38 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 38 "gxml-performance.vala"
	_tmp0_ = self->priv->_email;
#line 38 "gxml-performance.vala"
	result = _tmp0_;
#line 38 "gxml-performance.vala"
	return result;
#line 1836 "gxml-performance.c"
}

void
author_set_email (Author* self,
                  Email* value)
{
#line 38 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 38 "gxml-performance.vala"
	if (author_get_email (self) != value) {
#line 1847 "gxml-performance.c"
		Email* _tmp0_;
#line 38 "gxml-performance.vala"
		_tmp0_ = _g_object_ref0 (value);
#line 38 "gxml-performance.vala"
		_g_object_unref0 (self->priv->_email);
#line 38 "gxml-performance.vala"
		self->priv->_email = _tmp0_;
#line 38 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, author_properties[AUTHOR_EMAIL_PROPERTY]);
#line 1857 "gxml-performance.c"
	}
}

AuthorArray*
author_array_construct (GType object_type)
{
	AuthorArray * self = NULL;
#line 40 "gxml-performance.vala"
	self = (AuthorArray*) gxml_serializable_array_list_construct (object_type, TYPE_AUTHOR, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref);
#line 40 "gxml-performance.vala"
	return self;
#line 1869 "gxml-performance.c"
}

AuthorArray*
author_array_new (void)
{
#line 40 "gxml-performance.vala"
	return author_array_construct (AUTHOR_TYPE_ARRAY);
#line 1877 "gxml-performance.c"
}

static void
author_array_class_init (AuthorArrayClass * klass,
                         gpointer klass_data)
{
#line 40 "gxml-performance.vala"
	author_array_parent_class = g_type_class_peek_parent (klass);
#line 1886 "gxml-performance.c"
}

static void
author_array_instance_init (AuthorArray * self,
                            gpointer klass)
{
}

GType
author_array_get_type (void)
{
	static volatile gsize author_array_type_id__volatile = 0;
	if (g_once_init_enter (&author_array_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (AuthorArrayClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) author_array_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (AuthorArray), 0, (GInstanceInitFunc) author_array_instance_init, NULL };
		GType author_array_type_id;
		author_array_type_id = g_type_register_static (GXML_TYPE_SERIALIZABLE_ARRAY_LIST, "AuthorArray", &g_define_type_info, 0);
		g_once_init_leave (&author_array_type_id__volatile, author_array_type_id);
	}
	return author_array_type_id__volatile;
}

static void
author_class_init (AuthorClass * klass,
                   gpointer klass_data)
{
#line 35 "gxml-performance.vala"
	author_parent_class = g_type_class_peek_parent (klass);
#line 35 "gxml-performance.vala"
	g_type_class_adjust_private_offset (klass, &Author_private_offset);
#line 35 "gxml-performance.vala"
	((GXmlSerializableObjectModelClass *) klass)->to_string = (gchar* (*) (GXmlSerializableObjectModel*)) author_real_to_string;
#line 35 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_author_get_property;
#line 35 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_author_set_property;
#line 35 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->finalize = author_finalize;
#line 35 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), AUTHOR_NAME_PROPERTY, author_properties[AUTHOR_NAME_PROPERTY] = g_param_spec_object ("name", "name", "name", TYPE_NAME, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 35 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), AUTHOR_EMAIL_PROPERTY, author_properties[AUTHOR_EMAIL_PROPERTY] = g_param_spec_object ("email", "email", "email", TYPE_EMAIL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 1928 "gxml-performance.c"
}

static void
author_instance_init (Author * self,
                      gpointer klass)
{
#line 35 "gxml-performance.vala"
	self->priv = author_get_instance_private (self);
#line 1937 "gxml-performance.c"
}

static void
author_finalize (GObject * obj)
{
	Author * self;
#line 35 "gxml-performance.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_AUTHOR, Author);
#line 37 "gxml-performance.vala"
	_g_object_unref0 (self->priv->_name);
#line 38 "gxml-performance.vala"
	_g_object_unref0 (self->priv->_email);
#line 35 "gxml-performance.vala"
	G_OBJECT_CLASS (author_parent_class)->finalize (obj);
#line 1952 "gxml-performance.c"
}

GType
author_get_type (void)
{
	static volatile gsize author_type_id__volatile = 0;
	if (g_once_init_enter (&author_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (AuthorClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) author_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (Author), 0, (GInstanceInitFunc) author_instance_init, NULL };
		GType author_type_id;
		author_type_id = g_type_register_static (GXML_TYPE_SERIALIZABLE_OBJECT_MODEL, "Author", &g_define_type_info, 0);
		Author_private_offset = g_type_add_instance_private (author_type_id, sizeof (AuthorPrivate));
		g_once_init_leave (&author_type_id__volatile, author_type_id);
	}
	return author_type_id__volatile;
}

static void
_vala_author_get_property (GObject * object,
                           guint property_id,
                           GValue * value,
                           GParamSpec * pspec)
{
	Author * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_AUTHOR, Author);
#line 35 "gxml-performance.vala"
	switch (property_id) {
#line 35 "gxml-performance.vala"
		case AUTHOR_NAME_PROPERTY:
#line 35 "gxml-performance.vala"
		g_value_set_object (value, author_get_name (self));
#line 35 "gxml-performance.vala"
		break;
#line 35 "gxml-performance.vala"
		case AUTHOR_EMAIL_PROPERTY:
#line 35 "gxml-performance.vala"
		g_value_set_object (value, author_get_email (self));
#line 35 "gxml-performance.vala"
		break;
#line 1991 "gxml-performance.c"
		default:
#line 35 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 35 "gxml-performance.vala"
		break;
#line 1997 "gxml-performance.c"
	}
}

static void
_vala_author_set_property (GObject * object,
                           guint property_id,
                           const GValue * value,
                           GParamSpec * pspec)
{
	Author * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_AUTHOR, Author);
#line 35 "gxml-performance.vala"
	switch (property_id) {
#line 35 "gxml-performance.vala"
		case AUTHOR_NAME_PROPERTY:
#line 35 "gxml-performance.vala"
		author_set_name (self, g_value_get_object (value));
#line 35 "gxml-performance.vala"
		break;
#line 35 "gxml-performance.vala"
		case AUTHOR_EMAIL_PROPERTY:
#line 35 "gxml-performance.vala"
		author_set_email (self, g_value_get_object (value));
#line 35 "gxml-performance.vala"
		break;
#line 2023 "gxml-performance.c"
		default:
#line 35 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 35 "gxml-performance.vala"
		break;
#line 2029 "gxml-performance.c"
	}
}

static inline gpointer
authors_get_instance_private (Authors* self)
{
	return G_STRUCT_MEMBER_P (self, Authors_private_offset);
}

static void
authors_real_init_containers (GXmlSerializableContainer* base)
{
	Authors * self;
	AuthorArray* _tmp0_;
#line 47 "gxml-performance.vala"
	self = (Authors*) base;
#line 49 "gxml-performance.vala"
	_tmp0_ = self->priv->_array;
#line 49 "gxml-performance.vala"
	if (_tmp0_ == NULL) {
#line 2050 "gxml-performance.c"
		AuthorArray* _tmp1_;
		AuthorArray* _tmp2_;
#line 50 "gxml-performance.vala"
		_tmp1_ = author_array_new ();
#line 50 "gxml-performance.vala"
		_tmp2_ = _tmp1_;
#line 50 "gxml-performance.vala"
		authors_set_array (self, _tmp2_);
#line 50 "gxml-performance.vala"
		_g_object_unref0 (_tmp2_);
#line 2061 "gxml-performance.c"
	}
}

static gchar*
authors_real_to_string (GXmlSerializableObjectModel* base)
{
	Authors * self;
	gchar* result = NULL;
	const gchar* _tmp0_;
	const gchar* _tmp1_;
	gchar* _tmp2_;
#line 52 "gxml-performance.vala"
	self = (Authors*) base;
#line 52 "gxml-performance.vala"
	_tmp0_ = g_type_name (G_TYPE_FROM_INSTANCE ((GObject*) self));
#line 52 "gxml-performance.vala"
	_tmp1_ = string_to_string (_tmp0_);
#line 52 "gxml-performance.vala"
	_tmp2_ = g_strdup (_tmp1_);
#line 52 "gxml-performance.vala"
	result = _tmp2_;
#line 52 "gxml-performance.vala"
	return result;
#line 2085 "gxml-performance.c"
}

Authors*
authors_construct (GType object_type)
{
	Authors * self = NULL;
#line 43 "gxml-performance.vala"
	self = (Authors*) gxml_serializable_container_construct (object_type);
#line 43 "gxml-performance.vala"
	return self;
#line 2096 "gxml-performance.c"
}

Authors*
authors_new (void)
{
#line 43 "gxml-performance.vala"
	return authors_construct (TYPE_AUTHORS);
#line 2104 "gxml-performance.c"
}

const gchar*
authors_get_number (Authors* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 45 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 45 "gxml-performance.vala"
	_tmp0_ = self->priv->_number;
#line 45 "gxml-performance.vala"
	result = _tmp0_;
#line 45 "gxml-performance.vala"
	return result;
#line 2120 "gxml-performance.c"
}

void
authors_set_number (Authors* self,
                    const gchar* value)
{
#line 45 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 45 "gxml-performance.vala"
	if (g_strcmp0 (value, authors_get_number (self)) != 0) {
#line 2131 "gxml-performance.c"
		gchar* _tmp0_;
#line 45 "gxml-performance.vala"
		_tmp0_ = g_strdup (value);
#line 45 "gxml-performance.vala"
		_g_free0 (self->priv->_number);
#line 45 "gxml-performance.vala"
		self->priv->_number = _tmp0_;
#line 45 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, authors_properties[AUTHORS_NUMBER_PROPERTY]);
#line 2141 "gxml-performance.c"
	}
}

AuthorArray*
authors_get_array (Authors* self)
{
	AuthorArray* result;
	AuthorArray* _tmp0_;
#line 46 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 46 "gxml-performance.vala"
	_tmp0_ = self->priv->_array;
#line 46 "gxml-performance.vala"
	result = _tmp0_;
#line 46 "gxml-performance.vala"
	return result;
#line 2158 "gxml-performance.c"
}

void
authors_set_array (Authors* self,
                   AuthorArray* value)
{
#line 46 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 46 "gxml-performance.vala"
	if (authors_get_array (self) != value) {
#line 2169 "gxml-performance.c"
		AuthorArray* _tmp0_;
#line 46 "gxml-performance.vala"
		_tmp0_ = _g_object_ref0 (value);
#line 46 "gxml-performance.vala"
		_g_object_unref0 (self->priv->_array);
#line 46 "gxml-performance.vala"
		self->priv->_array = _tmp0_;
#line 46 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, authors_properties[AUTHORS_ARRAY_PROPERTY]);
#line 2179 "gxml-performance.c"
	}
}

static void
authors_class_init (AuthorsClass * klass,
                    gpointer klass_data)
{
#line 43 "gxml-performance.vala"
	authors_parent_class = g_type_class_peek_parent (klass);
#line 43 "gxml-performance.vala"
	g_type_class_adjust_private_offset (klass, &Authors_private_offset);
#line 43 "gxml-performance.vala"
	((GXmlSerializableContainerClass *) klass)->init_containers = (void (*) (GXmlSerializableContainer*)) authors_real_init_containers;
#line 43 "gxml-performance.vala"
	((GXmlSerializableObjectModelClass *) klass)->to_string = (gchar* (*) (GXmlSerializableObjectModel*)) authors_real_to_string;
#line 43 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_authors_get_property;
#line 43 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_authors_set_property;
#line 43 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->finalize = authors_finalize;
#line 43 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), AUTHORS_NUMBER_PROPERTY, authors_properties[AUTHORS_NUMBER_PROPERTY] = g_param_spec_string ("number", "number", "number", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 43 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), AUTHORS_ARRAY_PROPERTY, authors_properties[AUTHORS_ARRAY_PROPERTY] = g_param_spec_object ("array", "array", "array", AUTHOR_TYPE_ARRAY, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 2205 "gxml-performance.c"
}

static void
authors_instance_init (Authors * self,
                       gpointer klass)
{
#line 43 "gxml-performance.vala"
	self->priv = authors_get_instance_private (self);
#line 2214 "gxml-performance.c"
}

static void
authors_finalize (GObject * obj)
{
	Authors * self;
#line 43 "gxml-performance.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_AUTHORS, Authors);
#line 45 "gxml-performance.vala"
	_g_free0 (self->priv->_number);
#line 46 "gxml-performance.vala"
	_g_object_unref0 (self->priv->_array);
#line 43 "gxml-performance.vala"
	G_OBJECT_CLASS (authors_parent_class)->finalize (obj);
#line 2229 "gxml-performance.c"
}

GType
authors_get_type (void)
{
	static volatile gsize authors_type_id__volatile = 0;
	if (g_once_init_enter (&authors_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (AuthorsClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) authors_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (Authors), 0, (GInstanceInitFunc) authors_instance_init, NULL };
		GType authors_type_id;
		authors_type_id = g_type_register_static (GXML_TYPE_SERIALIZABLE_CONTAINER, "Authors", &g_define_type_info, 0);
		Authors_private_offset = g_type_add_instance_private (authors_type_id, sizeof (AuthorsPrivate));
		g_once_init_leave (&authors_type_id__volatile, authors_type_id);
	}
	return authors_type_id__volatile;
}

static void
_vala_authors_get_property (GObject * object,
                            guint property_id,
                            GValue * value,
                            GParamSpec * pspec)
{
	Authors * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_AUTHORS, Authors);
#line 43 "gxml-performance.vala"
	switch (property_id) {
#line 43 "gxml-performance.vala"
		case AUTHORS_NUMBER_PROPERTY:
#line 43 "gxml-performance.vala"
		g_value_set_string (value, authors_get_number (self));
#line 43 "gxml-performance.vala"
		break;
#line 43 "gxml-performance.vala"
		case AUTHORS_ARRAY_PROPERTY:
#line 43 "gxml-performance.vala"
		g_value_set_object (value, authors_get_array (self));
#line 43 "gxml-performance.vala"
		break;
#line 2268 "gxml-performance.c"
		default:
#line 43 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 43 "gxml-performance.vala"
		break;
#line 2274 "gxml-performance.c"
	}
}

static void
_vala_authors_set_property (GObject * object,
                            guint property_id,
                            const GValue * value,
                            GParamSpec * pspec)
{
	Authors * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_AUTHORS, Authors);
#line 43 "gxml-performance.vala"
	switch (property_id) {
#line 43 "gxml-performance.vala"
		case AUTHORS_NUMBER_PROPERTY:
#line 43 "gxml-performance.vala"
		authors_set_number (self, g_value_get_string (value));
#line 43 "gxml-performance.vala"
		break;
#line 43 "gxml-performance.vala"
		case AUTHORS_ARRAY_PROPERTY:
#line 43 "gxml-performance.vala"
		authors_set_array (self, g_value_get_object (value));
#line 43 "gxml-performance.vala"
		break;
#line 2300 "gxml-performance.c"
		default:
#line 43 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 43 "gxml-performance.vala"
		break;
#line 2306 "gxml-performance.c"
	}
}

static inline gpointer
inventory_get_instance_private (Inventory* self)
{
	return G_STRUCT_MEMBER_P (self, Inventory_private_offset);
}

static gint
inventory_real_get_map_primary_key (GXmlSerializableMapDualKey* base)
{
	Inventory * self;
	gint result = 0;
	gint _tmp0_;
#line 60 "gxml-performance.vala"
	self = (Inventory*) base;
#line 60 "gxml-performance.vala"
	_tmp0_ = self->priv->_number;
#line 60 "gxml-performance.vala"
	result = _tmp0_;
#line 60 "gxml-performance.vala"
	return result;
#line 2330 "gxml-performance.c"
}

static gchar*
inventory_real_get_map_secondary_key (GXmlSerializableMapDualKey* base)
{
	Inventory * self;
	gchar* result = NULL;
	const gchar* _tmp0_;
	gchar* _tmp1_;
#line 61 "gxml-performance.vala"
	self = (Inventory*) base;
#line 61 "gxml-performance.vala"
	_tmp0_ = self->priv->_inventory;
#line 61 "gxml-performance.vala"
	_tmp1_ = g_strdup (_tmp0_);
#line 61 "gxml-performance.vala"
	result = _tmp1_;
#line 61 "gxml-performance.vala"
	return result;
#line 2350 "gxml-performance.c"
}

static gchar*
inventory_real_to_string (GXmlSerializableObjectModel* base)
{
	Inventory * self;
	gchar* result = NULL;
	gint _tmp0_;
	gchar* _tmp1_;
	gchar* _tmp2_;
	const gchar* _tmp3_;
	gint _tmp4_;
	gchar* _tmp5_;
	gchar* _tmp6_;
	const gchar* _tmp7_;
	const gchar* _tmp8_;
	const gchar* _tmp9_;
	gchar* _tmp10_;
	gchar* _tmp11_;
#line 62 "gxml-performance.vala"
	self = (Inventory*) base;
#line 62 "gxml-performance.vala"
	_tmp0_ = self->priv->_number;
#line 62 "gxml-performance.vala"
	_tmp1_ = g_strdup_printf ("%i", _tmp0_);
#line 62 "gxml-performance.vala"
	_tmp2_ = _tmp1_;
#line 62 "gxml-performance.vala"
	_tmp3_ = string_to_string (_tmp2_);
#line 62 "gxml-performance.vala"
	_tmp4_ = self->priv->_row;
#line 62 "gxml-performance.vala"
	_tmp5_ = g_strdup_printf ("%i", _tmp4_);
#line 62 "gxml-performance.vala"
	_tmp6_ = _tmp5_;
#line 62 "gxml-performance.vala"
	_tmp7_ = string_to_string (_tmp6_);
#line 62 "gxml-performance.vala"
	_tmp8_ = self->priv->_inventory;
#line 62 "gxml-performance.vala"
	_tmp9_ = string_to_string (_tmp8_);
#line 62 "gxml-performance.vala"
	_tmp10_ = g_strconcat ("||", _tmp3_, "|", _tmp7_, "|", _tmp9_, "||", NULL);
#line 62 "gxml-performance.vala"
	_tmp11_ = _tmp10_;
#line 62 "gxml-performance.vala"
	_g_free0 (_tmp6_);
#line 62 "gxml-performance.vala"
	_g_free0 (_tmp2_);
#line 62 "gxml-performance.vala"
	result = _tmp11_;
#line 62 "gxml-performance.vala"
	return result;
#line 2404 "gxml-performance.c"
}

Inventory*
inventory_construct (GType object_type)
{
	Inventory * self = NULL;
#line 55 "gxml-performance.vala"
	self = (Inventory*) gxml_serializable_object_model_construct (object_type);
#line 55 "gxml-performance.vala"
	return self;
#line 2415 "gxml-performance.c"
}

Inventory*
inventory_new (void)
{
#line 55 "gxml-performance.vala"
	return inventory_construct (TYPE_INVENTORY);
#line 2423 "gxml-performance.c"
}

gint
inventory_get_number (Inventory* self)
{
	gint result;
#line 57 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, 0);
#line 57 "gxml-performance.vala"
	result = self->priv->_number;
#line 57 "gxml-performance.vala"
	return result;
#line 2436 "gxml-performance.c"
}

void
inventory_set_number (Inventory* self,
                      gint value)
{
#line 57 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 57 "gxml-performance.vala"
	if (inventory_get_number (self) != value) {
#line 57 "gxml-performance.vala"
		self->priv->_number = value;
#line 57 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, inventory_properties[INVENTORY_NUMBER_PROPERTY]);
#line 2451 "gxml-performance.c"
	}
}

gint
inventory_get_row (Inventory* self)
{
	gint result;
#line 58 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, 0);
#line 58 "gxml-performance.vala"
	result = self->priv->_row;
#line 58 "gxml-performance.vala"
	return result;
#line 2465 "gxml-performance.c"
}

void
inventory_set_row (Inventory* self,
                   gint value)
{
#line 58 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 58 "gxml-performance.vala"
	if (inventory_get_row (self) != value) {
#line 58 "gxml-performance.vala"
		self->priv->_row = value;
#line 58 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, inventory_properties[INVENTORY_ROW_PROPERTY]);
#line 2480 "gxml-performance.c"
	}
}

const gchar*
inventory_get_inventory (Inventory* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 59 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 59 "gxml-performance.vala"
	_tmp0_ = self->priv->_inventory;
#line 59 "gxml-performance.vala"
	result = _tmp0_;
#line 59 "gxml-performance.vala"
	return result;
#line 2497 "gxml-performance.c"
}

void
inventory_set_inventory (Inventory* self,
                         const gchar* value)
{
#line 59 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 59 "gxml-performance.vala"
	if (g_strcmp0 (value, inventory_get_inventory (self)) != 0) {
#line 2508 "gxml-performance.c"
		gchar* _tmp0_;
#line 59 "gxml-performance.vala"
		_tmp0_ = g_strdup (value);
#line 59 "gxml-performance.vala"
		_g_free0 (self->priv->_inventory);
#line 59 "gxml-performance.vala"
		self->priv->_inventory = _tmp0_;
#line 59 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, inventory_properties[INVENTORY_INVENTORY_PROPERTY]);
#line 2518 "gxml-performance.c"
	}
}

InventoryDualKeyMap*
inventory_dual_key_map_construct (GType object_type)
{
	InventoryDualKeyMap * self = NULL;
#line 63 "gxml-performance.vala"
	self = (InventoryDualKeyMap*) gxml_serializable_dual_key_map_construct (object_type, G_TYPE_INT, NULL, NULL, G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, (GDestroyNotify) g_free, TYPE_INVENTORY, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref);
#line 63 "gxml-performance.vala"
	return self;
#line 2530 "gxml-performance.c"
}

InventoryDualKeyMap*
inventory_dual_key_map_new (void)
{
#line 63 "gxml-performance.vala"
	return inventory_dual_key_map_construct (INVENTORY_TYPE_DUAL_KEY_MAP);
#line 2538 "gxml-performance.c"
}

static void
inventory_dual_key_map_class_init (InventoryDualKeyMapClass * klass,
                                   gpointer klass_data)
{
#line 63 "gxml-performance.vala"
	inventory_dual_key_map_parent_class = g_type_class_peek_parent (klass);
#line 2547 "gxml-performance.c"
}

static void
inventory_dual_key_map_instance_init (InventoryDualKeyMap * self,
                                      gpointer klass)
{
}

GType
inventory_dual_key_map_get_type (void)
{
	static volatile gsize inventory_dual_key_map_type_id__volatile = 0;
	if (g_once_init_enter (&inventory_dual_key_map_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (InventoryDualKeyMapClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) inventory_dual_key_map_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (InventoryDualKeyMap), 0, (GInstanceInitFunc) inventory_dual_key_map_instance_init, NULL };
		GType inventory_dual_key_map_type_id;
		inventory_dual_key_map_type_id = g_type_register_static (GXML_TYPE_SERIALIZABLE_DUAL_KEY_MAP, "InventoryDualKeyMap", &g_define_type_info, 0);
		g_once_init_leave (&inventory_dual_key_map_type_id__volatile, inventory_dual_key_map_type_id);
	}
	return inventory_dual_key_map_type_id__volatile;
}

static void
inventory_class_init (InventoryClass * klass,
                      gpointer klass_data)
{
#line 55 "gxml-performance.vala"
	inventory_parent_class = g_type_class_peek_parent (klass);
#line 55 "gxml-performance.vala"
	g_type_class_adjust_private_offset (klass, &Inventory_private_offset);
#line 55 "gxml-performance.vala"
	((GXmlSerializableObjectModelClass *) klass)->to_string = (gchar* (*) (GXmlSerializableObjectModel*)) inventory_real_to_string;
#line 55 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_inventory_get_property;
#line 55 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_inventory_set_property;
#line 55 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->finalize = inventory_finalize;
#line 55 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), INVENTORY_NUMBER_PROPERTY, inventory_properties[INVENTORY_NUMBER_PROPERTY] = g_param_spec_int ("number", "number", "number", G_MININT, G_MAXINT, 0, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 55 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), INVENTORY_ROW_PROPERTY, inventory_properties[INVENTORY_ROW_PROPERTY] = g_param_spec_int ("row", "row", "row", G_MININT, G_MAXINT, 0, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 55 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), INVENTORY_INVENTORY_PROPERTY, inventory_properties[INVENTORY_INVENTORY_PROPERTY] = g_param_spec_string ("inventory", "inventory", "inventory", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 2591 "gxml-performance.c"
}

static void
inventory_gxml_serializable_map_dual_key_interface_init (GXmlSerializableMapDualKeyIface * iface,
                                                         gpointer iface_data)
{
#line 55 "gxml-performance.vala"
	inventory_gxml_serializable_map_dual_key_parent_iface = g_type_interface_peek_parent (iface);
#line 55 "gxml-performance.vala"
	iface->get_map_primary_key = (gpointer (*) (GXmlSerializableMapDualKey*)) inventory_real_get_map_primary_key;
#line 55 "gxml-performance.vala"
	iface->get_map_secondary_key = (gpointer (*) (GXmlSerializableMapDualKey*)) inventory_real_get_map_secondary_key;
#line 2604 "gxml-performance.c"
}

static void
inventory_instance_init (Inventory * self,
                         gpointer klass)
{
#line 55 "gxml-performance.vala"
	self->priv = inventory_get_instance_private (self);
#line 2613 "gxml-performance.c"
}

static void
inventory_finalize (GObject * obj)
{
	Inventory * self;
#line 55 "gxml-performance.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_INVENTORY, Inventory);
#line 59 "gxml-performance.vala"
	_g_free0 (self->priv->_inventory);
#line 55 "gxml-performance.vala"
	G_OBJECT_CLASS (inventory_parent_class)->finalize (obj);
#line 2626 "gxml-performance.c"
}

GType
inventory_get_type (void)
{
	static volatile gsize inventory_type_id__volatile = 0;
	if (g_once_init_enter (&inventory_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (InventoryClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) inventory_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (Inventory), 0, (GInstanceInitFunc) inventory_instance_init, NULL };
		static const GInterfaceInfo gxml_serializable_map_dual_key_info = { (GInterfaceInitFunc) inventory_gxml_serializable_map_dual_key_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
		GType inventory_type_id;
		inventory_type_id = g_type_register_static (GXML_TYPE_SERIALIZABLE_OBJECT_MODEL, "Inventory", &g_define_type_info, 0);
		g_type_add_interface_static (inventory_type_id, GXML_TYPE_SERIALIZABLE_MAP_DUAL_KEY, &gxml_serializable_map_dual_key_info);
		Inventory_private_offset = g_type_add_instance_private (inventory_type_id, sizeof (InventoryPrivate));
		g_once_init_leave (&inventory_type_id__volatile, inventory_type_id);
	}
	return inventory_type_id__volatile;
}

static void
_vala_inventory_get_property (GObject * object,
                              guint property_id,
                              GValue * value,
                              GParamSpec * pspec)
{
	Inventory * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_INVENTORY, Inventory);
#line 55 "gxml-performance.vala"
	switch (property_id) {
#line 55 "gxml-performance.vala"
		case INVENTORY_NUMBER_PROPERTY:
#line 55 "gxml-performance.vala"
		g_value_set_int (value, inventory_get_number (self));
#line 55 "gxml-performance.vala"
		break;
#line 55 "gxml-performance.vala"
		case INVENTORY_ROW_PROPERTY:
#line 55 "gxml-performance.vala"
		g_value_set_int (value, inventory_get_row (self));
#line 55 "gxml-performance.vala"
		break;
#line 55 "gxml-performance.vala"
		case INVENTORY_INVENTORY_PROPERTY:
#line 55 "gxml-performance.vala"
		g_value_set_string (value, inventory_get_inventory (self));
#line 55 "gxml-performance.vala"
		break;
#line 2673 "gxml-performance.c"
		default:
#line 55 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 55 "gxml-performance.vala"
		break;
#line 2679 "gxml-performance.c"
	}
}

static void
_vala_inventory_set_property (GObject * object,
                              guint property_id,
                              const GValue * value,
                              GParamSpec * pspec)
{
	Inventory * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_INVENTORY, Inventory);
#line 55 "gxml-performance.vala"
	switch (property_id) {
#line 55 "gxml-performance.vala"
		case INVENTORY_NUMBER_PROPERTY:
#line 55 "gxml-performance.vala"
		inventory_set_number (self, g_value_get_int (value));
#line 55 "gxml-performance.vala"
		break;
#line 55 "gxml-performance.vala"
		case INVENTORY_ROW_PROPERTY:
#line 55 "gxml-performance.vala"
		inventory_set_row (self, g_value_get_int (value));
#line 55 "gxml-performance.vala"
		break;
#line 55 "gxml-performance.vala"
		case INVENTORY_INVENTORY_PROPERTY:
#line 55 "gxml-performance.vala"
		inventory_set_inventory (self, g_value_get_string (value));
#line 55 "gxml-performance.vala"
		break;
#line 2711 "gxml-performance.c"
		default:
#line 55 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 55 "gxml-performance.vala"
		break;
#line 2717 "gxml-performance.c"
	}
}

static inline gpointer
category_get_instance_private (Category* self)
{
	return G_STRUCT_MEMBER_P (self, Category_private_offset);
}

static gchar*
category_real_get_map_key (GXmlSerializableMapKey* base)
{
	Category * self;
	gchar* result = NULL;
	const gchar* _tmp0_;
	gchar* _tmp1_;
#line 69 "gxml-performance.vala"
	self = (Category*) base;
#line 69 "gxml-performance.vala"
	_tmp0_ = self->priv->_name;
#line 69 "gxml-performance.vala"
	_tmp1_ = g_strdup (_tmp0_);
#line 69 "gxml-performance.vala"
	result = _tmp1_;
#line 69 "gxml-performance.vala"
	return result;
#line 2744 "gxml-performance.c"
}

static gchar*
category_real_to_string (GXmlSerializableObjectModel* base)
{
	Category * self;
	gchar* result = NULL;
	const gchar* _tmp0_;
	gchar* _tmp1_;
#line 70 "gxml-performance.vala"
	self = (Category*) base;
#line 70 "gxml-performance.vala"
	_tmp0_ = self->priv->_name;
#line 70 "gxml-performance.vala"
	_tmp1_ = g_strconcat ("Category: ", _tmp0_, NULL);
#line 70 "gxml-performance.vala"
	result = _tmp1_;
#line 70 "gxml-performance.vala"
	return result;
#line 2764 "gxml-performance.c"
}

Category*
category_construct (GType object_type)
{
	Category * self = NULL;
#line 66 "gxml-performance.vala"
	self = (Category*) gxml_serializable_object_model_construct (object_type);
#line 66 "gxml-performance.vala"
	return self;
#line 2775 "gxml-performance.c"
}

Category*
category_new (void)
{
#line 66 "gxml-performance.vala"
	return category_construct (TYPE_CATEGORY);
#line 2783 "gxml-performance.c"
}

const gchar*
category_get_name (Category* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 68 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 68 "gxml-performance.vala"
	_tmp0_ = self->priv->_name;
#line 68 "gxml-performance.vala"
	result = _tmp0_;
#line 68 "gxml-performance.vala"
	return result;
#line 2799 "gxml-performance.c"
}

void
category_set_name (Category* self,
                   const gchar* value)
{
#line 68 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 68 "gxml-performance.vala"
	if (g_strcmp0 (value, category_get_name (self)) != 0) {
#line 2810 "gxml-performance.c"
		gchar* _tmp0_;
#line 68 "gxml-performance.vala"
		_tmp0_ = g_strdup (value);
#line 68 "gxml-performance.vala"
		_g_free0 (self->priv->_name);
#line 68 "gxml-performance.vala"
		self->priv->_name = _tmp0_;
#line 68 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, category_properties[CATEGORY_NAME_PROPERTY]);
#line 2820 "gxml-performance.c"
	}
}

CategoryMap*
category_map_construct (GType object_type)
{
	CategoryMap * self = NULL;
#line 71 "gxml-performance.vala"
	self = (CategoryMap*) gxml_serializable_hash_map_construct (object_type, G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, (GDestroyNotify) g_free, TYPE_CATEGORY, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref);
#line 71 "gxml-performance.vala"
	return self;
#line 2832 "gxml-performance.c"
}

CategoryMap*
category_map_new (void)
{
#line 71 "gxml-performance.vala"
	return category_map_construct (CATEGORY_TYPE_MAP);
#line 2840 "gxml-performance.c"
}

static void
category_map_class_init (CategoryMapClass * klass,
                         gpointer klass_data)
{
#line 71 "gxml-performance.vala"
	category_map_parent_class = g_type_class_peek_parent (klass);
#line 2849 "gxml-performance.c"
}

static void
category_map_instance_init (CategoryMap * self,
                            gpointer klass)
{
}

GType
category_map_get_type (void)
{
	static volatile gsize category_map_type_id__volatile = 0;
	if (g_once_init_enter (&category_map_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (CategoryMapClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) category_map_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (CategoryMap), 0, (GInstanceInitFunc) category_map_instance_init, NULL };
		GType category_map_type_id;
		category_map_type_id = g_type_register_static (GXML_TYPE_SERIALIZABLE_HASH_MAP, "CategoryMap", &g_define_type_info, 0);
		g_once_init_leave (&category_map_type_id__volatile, category_map_type_id);
	}
	return category_map_type_id__volatile;
}

static void
category_class_init (CategoryClass * klass,
                     gpointer klass_data)
{
#line 66 "gxml-performance.vala"
	category_parent_class = g_type_class_peek_parent (klass);
#line 66 "gxml-performance.vala"
	g_type_class_adjust_private_offset (klass, &Category_private_offset);
#line 66 "gxml-performance.vala"
	((GXmlSerializableObjectModelClass *) klass)->to_string = (gchar* (*) (GXmlSerializableObjectModel*)) category_real_to_string;
#line 66 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_category_get_property;
#line 66 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_category_set_property;
#line 66 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->finalize = category_finalize;
#line 66 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), CATEGORY_NAME_PROPERTY, category_properties[CATEGORY_NAME_PROPERTY] = g_param_spec_string ("name", "name", "name", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 2889 "gxml-performance.c"
}

static void
category_gxml_serializable_map_key_interface_init (GXmlSerializableMapKeyIface * iface,
                                                   gpointer iface_data)
{
#line 66 "gxml-performance.vala"
	category_gxml_serializable_map_key_parent_iface = g_type_interface_peek_parent (iface);
#line 66 "gxml-performance.vala"
	iface->get_map_key = (gpointer (*) (GXmlSerializableMapKey*)) category_real_get_map_key;
#line 2900 "gxml-performance.c"
}

static void
category_instance_init (Category * self,
                        gpointer klass)
{
#line 66 "gxml-performance.vala"
	self->priv = category_get_instance_private (self);
#line 2909 "gxml-performance.c"
}

static void
category_finalize (GObject * obj)
{
	Category * self;
#line 66 "gxml-performance.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_CATEGORY, Category);
#line 68 "gxml-performance.vala"
	_g_free0 (self->priv->_name);
#line 66 "gxml-performance.vala"
	G_OBJECT_CLASS (category_parent_class)->finalize (obj);
#line 2922 "gxml-performance.c"
}

GType
category_get_type (void)
{
	static volatile gsize category_type_id__volatile = 0;
	if (g_once_init_enter (&category_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (CategoryClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) category_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (Category), 0, (GInstanceInitFunc) category_instance_init, NULL };
		static const GInterfaceInfo gxml_serializable_map_key_info = { (GInterfaceInitFunc) category_gxml_serializable_map_key_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
		GType category_type_id;
		category_type_id = g_type_register_static (GXML_TYPE_SERIALIZABLE_OBJECT_MODEL, "Category", &g_define_type_info, 0);
		g_type_add_interface_static (category_type_id, GXML_TYPE_SERIALIZABLE_MAP_KEY, &gxml_serializable_map_key_info);
		Category_private_offset = g_type_add_instance_private (category_type_id, sizeof (CategoryPrivate));
		g_once_init_leave (&category_type_id__volatile, category_type_id);
	}
	return category_type_id__volatile;
}

static void
_vala_category_get_property (GObject * object,
                             guint property_id,
                             GValue * value,
                             GParamSpec * pspec)
{
	Category * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_CATEGORY, Category);
#line 66 "gxml-performance.vala"
	switch (property_id) {
#line 66 "gxml-performance.vala"
		case CATEGORY_NAME_PROPERTY:
#line 66 "gxml-performance.vala"
		g_value_set_string (value, category_get_name (self));
#line 66 "gxml-performance.vala"
		break;
#line 2957 "gxml-performance.c"
		default:
#line 66 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 66 "gxml-performance.vala"
		break;
#line 2963 "gxml-performance.c"
	}
}

static void
_vala_category_set_property (GObject * object,
                             guint property_id,
                             const GValue * value,
                             GParamSpec * pspec)
{
	Category * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_CATEGORY, Category);
#line 66 "gxml-performance.vala"
	switch (property_id) {
#line 66 "gxml-performance.vala"
		case CATEGORY_NAME_PROPERTY:
#line 66 "gxml-performance.vala"
		category_set_name (self, g_value_get_string (value));
#line 66 "gxml-performance.vala"
		break;
#line 2983 "gxml-performance.c"
		default:
#line 66 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 66 "gxml-performance.vala"
		break;
#line 2989 "gxml-performance.c"
	}
}

static inline gpointer
resume_get_instance_private (Resume* self)
{
	return G_STRUCT_MEMBER_P (self, Resume_private_offset);
}

static gchar*
resume_real_get_map_key (GXmlSerializableMapKey* base)
{
	Resume * self;
	gchar* result = NULL;
	const gchar* _tmp0_;
	gchar* _tmp1_;
#line 79 "gxml-performance.vala"
	self = (Resume*) base;
#line 79 "gxml-performance.vala"
	_tmp0_ = self->priv->_chapter;
#line 79 "gxml-performance.vala"
	_tmp1_ = g_strdup (_tmp0_);
#line 79 "gxml-performance.vala"
	result = _tmp1_;
#line 79 "gxml-performance.vala"
	return result;
#line 3016 "gxml-performance.c"
}

static gchar*
resume_real_to_string (GXmlSerializableObjectModel* base)
{
	Resume * self;
	gchar* result = NULL;
	const gchar* _tmp0_;
	gchar* _tmp1_;
	gchar* _tmp2_;
	gchar* _tmp3_;
	gchar* _tmp4_;
	const gchar* _tmp5_;
	gchar* _tmp6_;
	gchar* _tmp7_;
#line 80 "gxml-performance.vala"
	self = (Resume*) base;
#line 80 "gxml-performance.vala"
	_tmp0_ = self->priv->_chapter;
#line 80 "gxml-performance.vala"
	_tmp1_ = g_strconcat ("Chapter: ", _tmp0_, NULL);
#line 80 "gxml-performance.vala"
	_tmp2_ = _tmp1_;
#line 80 "gxml-performance.vala"
	_tmp3_ = g_strconcat (_tmp2_, "\n", NULL);
#line 80 "gxml-performance.vala"
	_tmp4_ = _tmp3_;
#line 80 "gxml-performance.vala"
	_tmp5_ = self->priv->_text;
#line 80 "gxml-performance.vala"
	_tmp6_ = g_strconcat (_tmp4_, _tmp5_, NULL);
#line 80 "gxml-performance.vala"
	_tmp7_ = _tmp6_;
#line 80 "gxml-performance.vala"
	_g_free0 (_tmp4_);
#line 80 "gxml-performance.vala"
	_g_free0 (_tmp2_);
#line 80 "gxml-performance.vala"
	result = _tmp7_;
#line 80 "gxml-performance.vala"
	return result;
#line 3058 "gxml-performance.c"
}

Resume*
resume_construct (GType object_type)
{
	Resume * self = NULL;
#line 75 "gxml-performance.vala"
	self = (Resume*) gxml_serializable_object_model_construct (object_type);
#line 75 "gxml-performance.vala"
	return self;
#line 3069 "gxml-performance.c"
}

Resume*
resume_new (void)
{
#line 75 "gxml-performance.vala"
	return resume_construct (TYPE_RESUME);
#line 3077 "gxml-performance.c"
}

const gchar*
resume_get_chapter (Resume* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 77 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 77 "gxml-performance.vala"
	_tmp0_ = self->priv->_chapter;
#line 77 "gxml-performance.vala"
	result = _tmp0_;
#line 77 "gxml-performance.vala"
	return result;
#line 3093 "gxml-performance.c"
}

void
resume_set_chapter (Resume* self,
                    const gchar* value)
{
#line 77 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 77 "gxml-performance.vala"
	if (g_strcmp0 (value, resume_get_chapter (self)) != 0) {
#line 3104 "gxml-performance.c"
		gchar* _tmp0_;
#line 77 "gxml-performance.vala"
		_tmp0_ = g_strdup (value);
#line 77 "gxml-performance.vala"
		_g_free0 (self->priv->_chapter);
#line 77 "gxml-performance.vala"
		self->priv->_chapter = _tmp0_;
#line 77 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, resume_properties[RESUME_CHAPTER_PROPERTY]);
#line 3114 "gxml-performance.c"
	}
}

const gchar*
resume_get_text (Resume* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 78 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 78 "gxml-performance.vala"
	_tmp0_ = self->priv->_text;
#line 78 "gxml-performance.vala"
	result = _tmp0_;
#line 78 "gxml-performance.vala"
	return result;
#line 3131 "gxml-performance.c"
}

void
resume_set_text (Resume* self,
                 const gchar* value)
{
#line 78 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 78 "gxml-performance.vala"
	if (g_strcmp0 (value, resume_get_text (self)) != 0) {
#line 3142 "gxml-performance.c"
		gchar* _tmp0_;
#line 78 "gxml-performance.vala"
		_tmp0_ = g_strdup (value);
#line 78 "gxml-performance.vala"
		_g_free0 (self->priv->_text);
#line 78 "gxml-performance.vala"
		self->priv->_text = _tmp0_;
#line 78 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, resume_properties[RESUME_TEXT_PROPERTY]);
#line 3152 "gxml-performance.c"
	}
}

ResumeMap*
resume_map_construct (GType object_type)
{
	ResumeMap * self = NULL;
#line 81 "gxml-performance.vala"
	self = (ResumeMap*) gxml_serializable_tree_map_construct (object_type, G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, (GDestroyNotify) g_free, TYPE_RESUME, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref);
#line 81 "gxml-performance.vala"
	return self;
#line 3164 "gxml-performance.c"
}

ResumeMap*
resume_map_new (void)
{
#line 81 "gxml-performance.vala"
	return resume_map_construct (RESUME_TYPE_MAP);
#line 3172 "gxml-performance.c"
}

static void
resume_map_class_init (ResumeMapClass * klass,
                       gpointer klass_data)
{
#line 81 "gxml-performance.vala"
	resume_map_parent_class = g_type_class_peek_parent (klass);
#line 3181 "gxml-performance.c"
}

static void
resume_map_instance_init (ResumeMap * self,
                          gpointer klass)
{
}

GType
resume_map_get_type (void)
{
	static volatile gsize resume_map_type_id__volatile = 0;
	if (g_once_init_enter (&resume_map_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (ResumeMapClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) resume_map_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (ResumeMap), 0, (GInstanceInitFunc) resume_map_instance_init, NULL };
		GType resume_map_type_id;
		resume_map_type_id = g_type_register_static (GXML_TYPE_SERIALIZABLE_TREE_MAP, "ResumeMap", &g_define_type_info, 0);
		g_once_init_leave (&resume_map_type_id__volatile, resume_map_type_id);
	}
	return resume_map_type_id__volatile;
}

static void
resume_class_init (ResumeClass * klass,
                   gpointer klass_data)
{
#line 75 "gxml-performance.vala"
	resume_parent_class = g_type_class_peek_parent (klass);
#line 75 "gxml-performance.vala"
	g_type_class_adjust_private_offset (klass, &Resume_private_offset);
#line 75 "gxml-performance.vala"
	((GXmlSerializableObjectModelClass *) klass)->to_string = (gchar* (*) (GXmlSerializableObjectModel*)) resume_real_to_string;
#line 75 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_resume_get_property;
#line 75 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_resume_set_property;
#line 75 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->finalize = resume_finalize;
#line 75 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), RESUME_CHAPTER_PROPERTY, resume_properties[RESUME_CHAPTER_PROPERTY] = g_param_spec_string ("chapter", "chapter", "chapter", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 75 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), RESUME_TEXT_PROPERTY, resume_properties[RESUME_TEXT_PROPERTY] = g_param_spec_string ("text", "text", "text", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 3223 "gxml-performance.c"
}

static void
resume_gxml_serializable_map_key_interface_init (GXmlSerializableMapKeyIface * iface,
                                                 gpointer iface_data)
{
#line 75 "gxml-performance.vala"
	resume_gxml_serializable_map_key_parent_iface = g_type_interface_peek_parent (iface);
#line 75 "gxml-performance.vala"
	iface->get_map_key = (gpointer (*) (GXmlSerializableMapKey*)) resume_real_get_map_key;
#line 3234 "gxml-performance.c"
}

static void
resume_instance_init (Resume * self,
                      gpointer klass)
{
#line 75 "gxml-performance.vala"
	self->priv = resume_get_instance_private (self);
#line 3243 "gxml-performance.c"
}

static void
resume_finalize (GObject * obj)
{
	Resume * self;
#line 75 "gxml-performance.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_RESUME, Resume);
#line 77 "gxml-performance.vala"
	_g_free0 (self->priv->_chapter);
#line 78 "gxml-performance.vala"
	_g_free0 (self->priv->_text);
#line 75 "gxml-performance.vala"
	G_OBJECT_CLASS (resume_parent_class)->finalize (obj);
#line 3258 "gxml-performance.c"
}

GType
resume_get_type (void)
{
	static volatile gsize resume_type_id__volatile = 0;
	if (g_once_init_enter (&resume_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (ResumeClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) resume_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (Resume), 0, (GInstanceInitFunc) resume_instance_init, NULL };
		static const GInterfaceInfo gxml_serializable_map_key_info = { (GInterfaceInitFunc) resume_gxml_serializable_map_key_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
		GType resume_type_id;
		resume_type_id = g_type_register_static (GXML_TYPE_SERIALIZABLE_OBJECT_MODEL, "Resume", &g_define_type_info, 0);
		g_type_add_interface_static (resume_type_id, GXML_TYPE_SERIALIZABLE_MAP_KEY, &gxml_serializable_map_key_info);
		Resume_private_offset = g_type_add_instance_private (resume_type_id, sizeof (ResumePrivate));
		g_once_init_leave (&resume_type_id__volatile, resume_type_id);
	}
	return resume_type_id__volatile;
}

static void
_vala_resume_get_property (GObject * object,
                           guint property_id,
                           GValue * value,
                           GParamSpec * pspec)
{
	Resume * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_RESUME, Resume);
#line 75 "gxml-performance.vala"
	switch (property_id) {
#line 75 "gxml-performance.vala"
		case RESUME_CHAPTER_PROPERTY:
#line 75 "gxml-performance.vala"
		g_value_set_string (value, resume_get_chapter (self));
#line 75 "gxml-performance.vala"
		break;
#line 75 "gxml-performance.vala"
		case RESUME_TEXT_PROPERTY:
#line 75 "gxml-performance.vala"
		g_value_set_string (value, resume_get_text (self));
#line 75 "gxml-performance.vala"
		break;
#line 3299 "gxml-performance.c"
		default:
#line 75 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 75 "gxml-performance.vala"
		break;
#line 3305 "gxml-performance.c"
	}
}

static void
_vala_resume_set_property (GObject * object,
                           guint property_id,
                           const GValue * value,
                           GParamSpec * pspec)
{
	Resume * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_RESUME, Resume);
#line 75 "gxml-performance.vala"
	switch (property_id) {
#line 75 "gxml-performance.vala"
		case RESUME_CHAPTER_PROPERTY:
#line 75 "gxml-performance.vala"
		resume_set_chapter (self, g_value_get_string (value));
#line 75 "gxml-performance.vala"
		break;
#line 75 "gxml-performance.vala"
		case RESUME_TEXT_PROPERTY:
#line 75 "gxml-performance.vala"
		resume_set_text (self, g_value_get_string (value));
#line 75 "gxml-performance.vala"
		break;
#line 3331 "gxml-performance.c"
		default:
#line 75 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 75 "gxml-performance.vala"
		break;
#line 3337 "gxml-performance.c"
	}
}

static inline gpointer
book_get_instance_private (Book* self)
{
	return G_STRUCT_MEMBER_P (self, Book_private_offset);
}

static gchar*
book_real_to_string (GXmlSerializableObjectModel* base)
{
	Book * self;
	gchar* result = NULL;
	Name* _tmp0_;
	gchar* _tmp1_;
	gchar* _tmp2_;
	const gchar* _tmp3_;
	const gchar* _tmp4_;
	const gchar* _tmp5_;
	gchar* _tmp6_;
	gchar* _tmp7_;
#line 93 "gxml-performance.vala"
	self = (Book*) base;
#line 93 "gxml-performance.vala"
	_tmp0_ = self->priv->_name;
#line 93 "gxml-performance.vala"
	_tmp1_ = name_get_name (_tmp0_);
#line 93 "gxml-performance.vala"
	_tmp2_ = _tmp1_;
#line 93 "gxml-performance.vala"
	_tmp3_ = string_to_string (_tmp2_);
#line 93 "gxml-performance.vala"
	_tmp4_ = self->priv->_year;
#line 93 "gxml-performance.vala"
	_tmp5_ = string_to_string (_tmp4_);
#line 93 "gxml-performance.vala"
	_tmp6_ = g_strconcat (_tmp3_, ", ", _tmp5_, NULL);
#line 93 "gxml-performance.vala"
	_tmp7_ = _tmp6_;
#line 93 "gxml-performance.vala"
	_g_free0 (_tmp2_);
#line 93 "gxml-performance.vala"
	result = _tmp7_;
#line 93 "gxml-performance.vala"
	return result;
#line 3384 "gxml-performance.c"
}

static void
book_real_init_containers (GXmlSerializableContainer* base)
{
	Book * self;
	InventoryDualKeyMap* _tmp0_;
	CategoryMap* _tmp3_;
	ResumeMap* _tmp6_;
#line 94 "gxml-performance.vala"
	self = (Book*) base;
#line 96 "gxml-performance.vala"
	_tmp0_ = self->priv->_inventory_registers;
#line 96 "gxml-performance.vala"
	if (_tmp0_ == NULL) {
#line 3400 "gxml-performance.c"
		InventoryDualKeyMap* _tmp1_;
		InventoryDualKeyMap* _tmp2_;
#line 97 "gxml-performance.vala"
		_tmp1_ = inventory_dual_key_map_new ();
#line 97 "gxml-performance.vala"
		_tmp2_ = _tmp1_;
#line 97 "gxml-performance.vala"
		book_set_inventory_registers (self, _tmp2_);
#line 97 "gxml-performance.vala"
		_g_object_unref0 (_tmp2_);
#line 3411 "gxml-performance.c"
	}
#line 98 "gxml-performance.vala"
	_tmp3_ = self->priv->_categories;
#line 98 "gxml-performance.vala"
	if (_tmp3_ == NULL) {
#line 3417 "gxml-performance.c"
		CategoryMap* _tmp4_;
		CategoryMap* _tmp5_;
#line 99 "gxml-performance.vala"
		_tmp4_ = category_map_new ();
#line 99 "gxml-performance.vala"
		_tmp5_ = _tmp4_;
#line 99 "gxml-performance.vala"
		book_set_categories (self, _tmp5_);
#line 99 "gxml-performance.vala"
		_g_object_unref0 (_tmp5_);
#line 3428 "gxml-performance.c"
	}
#line 100 "gxml-performance.vala"
	_tmp6_ = self->priv->_resumes;
#line 100 "gxml-performance.vala"
	if (_tmp6_ == NULL) {
#line 3434 "gxml-performance.c"
		ResumeMap* _tmp7_;
		ResumeMap* _tmp8_;
#line 101 "gxml-performance.vala"
		_tmp7_ = resume_map_new ();
#line 101 "gxml-performance.vala"
		_tmp8_ = _tmp7_;
#line 101 "gxml-performance.vala"
		book_set_resumes (self, _tmp8_);
#line 101 "gxml-performance.vala"
		_g_object_unref0 (_tmp8_);
#line 3445 "gxml-performance.c"
	}
}

Book*
book_construct (GType object_type)
{
	Book * self = NULL;
#line 84 "gxml-performance.vala"
	self = (Book*) gxml_serializable_container_construct (object_type);
#line 84 "gxml-performance.vala"
	return self;
#line 3457 "gxml-performance.c"
}

Book*
book_new (void)
{
#line 84 "gxml-performance.vala"
	return book_construct (TYPE_BOOK);
#line 3465 "gxml-performance.c"
}

const gchar*
book_get_year (Book* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 86 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 86 "gxml-performance.vala"
	_tmp0_ = self->priv->_year;
#line 86 "gxml-performance.vala"
	result = _tmp0_;
#line 86 "gxml-performance.vala"
	return result;
#line 3481 "gxml-performance.c"
}

void
book_set_year (Book* self,
               const gchar* value)
{
#line 86 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 86 "gxml-performance.vala"
	if (g_strcmp0 (value, book_get_year (self)) != 0) {
#line 3492 "gxml-performance.c"
		gchar* _tmp0_;
#line 86 "gxml-performance.vala"
		_tmp0_ = g_strdup (value);
#line 86 "gxml-performance.vala"
		_g_free0 (self->priv->_year);
#line 86 "gxml-performance.vala"
		self->priv->_year = _tmp0_;
#line 86 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, book_properties[BOOK_YEAR_PROPERTY]);
#line 3502 "gxml-performance.c"
	}
}

const gchar*
book_get_isbn (Book* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 87 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 87 "gxml-performance.vala"
	_tmp0_ = self->priv->_isbn;
#line 87 "gxml-performance.vala"
	result = _tmp0_;
#line 87 "gxml-performance.vala"
	return result;
#line 3519 "gxml-performance.c"
}

void
book_set_isbn (Book* self,
               const gchar* value)
{
#line 87 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 87 "gxml-performance.vala"
	if (g_strcmp0 (value, book_get_isbn (self)) != 0) {
#line 3530 "gxml-performance.c"
		gchar* _tmp0_;
#line 87 "gxml-performance.vala"
		_tmp0_ = g_strdup (value);
#line 87 "gxml-performance.vala"
		_g_free0 (self->priv->_isbn);
#line 87 "gxml-performance.vala"
		self->priv->_isbn = _tmp0_;
#line 87 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, book_properties[BOOK_ISBN_PROPERTY]);
#line 3540 "gxml-performance.c"
	}
}

Name*
book_get_name (Book* self)
{
	Name* result;
	Name* _tmp0_;
#line 88 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 88 "gxml-performance.vala"
	_tmp0_ = self->priv->_name;
#line 88 "gxml-performance.vala"
	result = _tmp0_;
#line 88 "gxml-performance.vala"
	return result;
#line 3557 "gxml-performance.c"
}

void
book_set_name (Book* self,
               Name* value)
{
#line 88 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 88 "gxml-performance.vala"
	if (book_get_name (self) != value) {
#line 3568 "gxml-performance.c"
		Name* _tmp0_;
#line 88 "gxml-performance.vala"
		_tmp0_ = _g_object_ref0 (value);
#line 88 "gxml-performance.vala"
		_g_object_unref0 (self->priv->_name);
#line 88 "gxml-performance.vala"
		self->priv->_name = _tmp0_;
#line 88 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, book_properties[BOOK_NAME_PROPERTY]);
#line 3578 "gxml-performance.c"
	}
}

Authors*
book_get_authors (Book* self)
{
	Authors* result;
	Authors* _tmp0_;
#line 89 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 89 "gxml-performance.vala"
	_tmp0_ = self->priv->_authors;
#line 89 "gxml-performance.vala"
	result = _tmp0_;
#line 89 "gxml-performance.vala"
	return result;
#line 3595 "gxml-performance.c"
}

void
book_set_authors (Book* self,
                  Authors* value)
{
#line 89 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 89 "gxml-performance.vala"
	if (book_get_authors (self) != value) {
#line 3606 "gxml-performance.c"
		Authors* _tmp0_;
#line 89 "gxml-performance.vala"
		_tmp0_ = _g_object_ref0 (value);
#line 89 "gxml-performance.vala"
		_g_object_unref0 (self->priv->_authors);
#line 89 "gxml-performance.vala"
		self->priv->_authors = _tmp0_;
#line 89 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, book_properties[BOOK_AUTHORS_PROPERTY]);
#line 3616 "gxml-performance.c"
	}
}

InventoryDualKeyMap*
book_get_inventory_registers (Book* self)
{
	InventoryDualKeyMap* result;
	InventoryDualKeyMap* _tmp0_;
#line 90 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 90 "gxml-performance.vala"
	_tmp0_ = self->priv->_inventory_registers;
#line 90 "gxml-performance.vala"
	result = _tmp0_;
#line 90 "gxml-performance.vala"
	return result;
#line 3633 "gxml-performance.c"
}

void
book_set_inventory_registers (Book* self,
                              InventoryDualKeyMap* value)
{
#line 90 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 90 "gxml-performance.vala"
	if (book_get_inventory_registers (self) != value) {
#line 3644 "gxml-performance.c"
		InventoryDualKeyMap* _tmp0_;
#line 90 "gxml-performance.vala"
		_tmp0_ = _g_object_ref0 (value);
#line 90 "gxml-performance.vala"
		_g_object_unref0 (self->priv->_inventory_registers);
#line 90 "gxml-performance.vala"
		self->priv->_inventory_registers = _tmp0_;
#line 90 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, book_properties[BOOK_INVENTORY_REGISTERS_PROPERTY]);
#line 3654 "gxml-performance.c"
	}
}

CategoryMap*
book_get_categories (Book* self)
{
	CategoryMap* result;
	CategoryMap* _tmp0_;
#line 91 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 91 "gxml-performance.vala"
	_tmp0_ = self->priv->_categories;
#line 91 "gxml-performance.vala"
	result = _tmp0_;
#line 91 "gxml-performance.vala"
	return result;
#line 3671 "gxml-performance.c"
}

void
book_set_categories (Book* self,
                     CategoryMap* value)
{
#line 91 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 91 "gxml-performance.vala"
	if (book_get_categories (self) != value) {
#line 3682 "gxml-performance.c"
		CategoryMap* _tmp0_;
#line 91 "gxml-performance.vala"
		_tmp0_ = _g_object_ref0 (value);
#line 91 "gxml-performance.vala"
		_g_object_unref0 (self->priv->_categories);
#line 91 "gxml-performance.vala"
		self->priv->_categories = _tmp0_;
#line 91 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, book_properties[BOOK_CATEGORIES_PROPERTY]);
#line 3692 "gxml-performance.c"
	}
}

ResumeMap*
book_get_resumes (Book* self)
{
	ResumeMap* result;
	ResumeMap* _tmp0_;
#line 92 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 92 "gxml-performance.vala"
	_tmp0_ = self->priv->_resumes;
#line 92 "gxml-performance.vala"
	result = _tmp0_;
#line 92 "gxml-performance.vala"
	return result;
#line 3709 "gxml-performance.c"
}

void
book_set_resumes (Book* self,
                  ResumeMap* value)
{
#line 92 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 92 "gxml-performance.vala"
	if (book_get_resumes (self) != value) {
#line 3720 "gxml-performance.c"
		ResumeMap* _tmp0_;
#line 92 "gxml-performance.vala"
		_tmp0_ = _g_object_ref0 (value);
#line 92 "gxml-performance.vala"
		_g_object_unref0 (self->priv->_resumes);
#line 92 "gxml-performance.vala"
		self->priv->_resumes = _tmp0_;
#line 92 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, book_properties[BOOK_RESUMES_PROPERTY]);
#line 3730 "gxml-performance.c"
	}
}

BookArray*
book_array_construct (GType object_type)
{
	BookArray * self = NULL;
#line 103 "gxml-performance.vala"
	self = (BookArray*) gxml_serializable_array_list_construct (object_type, TYPE_BOOK, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref);
#line 103 "gxml-performance.vala"
	return self;
#line 3742 "gxml-performance.c"
}

BookArray*
book_array_new (void)
{
#line 103 "gxml-performance.vala"
	return book_array_construct (BOOK_TYPE_ARRAY);
#line 3750 "gxml-performance.c"
}

static void
book_array_class_init (BookArrayClass * klass,
                       gpointer klass_data)
{
#line 103 "gxml-performance.vala"
	book_array_parent_class = g_type_class_peek_parent (klass);
#line 3759 "gxml-performance.c"
}

static void
book_array_instance_init (BookArray * self,
                          gpointer klass)
{
}

GType
book_array_get_type (void)
{
	static volatile gsize book_array_type_id__volatile = 0;
	if (g_once_init_enter (&book_array_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (BookArrayClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) book_array_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (BookArray), 0, (GInstanceInitFunc) book_array_instance_init, NULL };
		GType book_array_type_id;
		book_array_type_id = g_type_register_static (GXML_TYPE_SERIALIZABLE_ARRAY_LIST, "BookArray", &g_define_type_info, 0);
		g_once_init_leave (&book_array_type_id__volatile, book_array_type_id);
	}
	return book_array_type_id__volatile;
}

static void
book_class_init (BookClass * klass,
                 gpointer klass_data)
{
#line 84 "gxml-performance.vala"
	book_parent_class = g_type_class_peek_parent (klass);
#line 84 "gxml-performance.vala"
	g_type_class_adjust_private_offset (klass, &Book_private_offset);
#line 84 "gxml-performance.vala"
	((GXmlSerializableObjectModelClass *) klass)->to_string = (gchar* (*) (GXmlSerializableObjectModel*)) book_real_to_string;
#line 84 "gxml-performance.vala"
	((GXmlSerializableContainerClass *) klass)->init_containers = (void (*) (GXmlSerializableContainer*)) book_real_init_containers;
#line 84 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_book_get_property;
#line 84 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_book_set_property;
#line 84 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->finalize = book_finalize;
#line 84 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOOK_YEAR_PROPERTY, book_properties[BOOK_YEAR_PROPERTY] = g_param_spec_string ("year", "year", "year", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 84 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOOK_ISBN_PROPERTY, book_properties[BOOK_ISBN_PROPERTY] = g_param_spec_string ("isbn", "isbn", "isbn", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 84 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOOK_NAME_PROPERTY, book_properties[BOOK_NAME_PROPERTY] = g_param_spec_object ("name", "name", "name", TYPE_NAME, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 84 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOOK_AUTHORS_PROPERTY, book_properties[BOOK_AUTHORS_PROPERTY] = g_param_spec_object ("authors", "authors", "authors", TYPE_AUTHORS, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 84 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOOK_INVENTORY_REGISTERS_PROPERTY, book_properties[BOOK_INVENTORY_REGISTERS_PROPERTY] = g_param_spec_object ("inventory-registers", "inventory-registers", "inventory-registers", INVENTORY_TYPE_DUAL_KEY_MAP, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 84 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOOK_CATEGORIES_PROPERTY, book_properties[BOOK_CATEGORIES_PROPERTY] = g_param_spec_object ("categories", "categories", "categories", CATEGORY_TYPE_MAP, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 84 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOOK_RESUMES_PROPERTY, book_properties[BOOK_RESUMES_PROPERTY] = g_param_spec_object ("resumes", "resumes", "resumes", RESUME_TYPE_MAP, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 3813 "gxml-performance.c"
}

static void
book_instance_init (Book * self,
                    gpointer klass)
{
#line 84 "gxml-performance.vala"
	self->priv = book_get_instance_private (self);
#line 3822 "gxml-performance.c"
}

static void
book_finalize (GObject * obj)
{
	Book * self;
#line 84 "gxml-performance.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_BOOK, Book);
#line 86 "gxml-performance.vala"
	_g_free0 (self->priv->_year);
#line 87 "gxml-performance.vala"
	_g_free0 (self->priv->_isbn);
#line 88 "gxml-performance.vala"
	_g_object_unref0 (self->priv->_name);
#line 89 "gxml-performance.vala"
	_g_object_unref0 (self->priv->_authors);
#line 90 "gxml-performance.vala"
	_g_object_unref0 (self->priv->_inventory_registers);
#line 91 "gxml-performance.vala"
	_g_object_unref0 (self->priv->_categories);
#line 92 "gxml-performance.vala"
	_g_object_unref0 (self->priv->_resumes);
#line 84 "gxml-performance.vala"
	G_OBJECT_CLASS (book_parent_class)->finalize (obj);
#line 3847 "gxml-performance.c"
}

GType
book_get_type (void)
{
	static volatile gsize book_type_id__volatile = 0;
	if (g_once_init_enter (&book_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (BookClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) book_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (Book), 0, (GInstanceInitFunc) book_instance_init, NULL };
		GType book_type_id;
		book_type_id = g_type_register_static (GXML_TYPE_SERIALIZABLE_CONTAINER, "Book", &g_define_type_info, 0);
		Book_private_offset = g_type_add_instance_private (book_type_id, sizeof (BookPrivate));
		g_once_init_leave (&book_type_id__volatile, book_type_id);
	}
	return book_type_id__volatile;
}

static void
_vala_book_get_property (GObject * object,
                         guint property_id,
                         GValue * value,
                         GParamSpec * pspec)
{
	Book * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_BOOK, Book);
#line 84 "gxml-performance.vala"
	switch (property_id) {
#line 84 "gxml-performance.vala"
		case BOOK_YEAR_PROPERTY:
#line 84 "gxml-performance.vala"
		g_value_set_string (value, book_get_year (self));
#line 84 "gxml-performance.vala"
		break;
#line 84 "gxml-performance.vala"
		case BOOK_ISBN_PROPERTY:
#line 84 "gxml-performance.vala"
		g_value_set_string (value, book_get_isbn (self));
#line 84 "gxml-performance.vala"
		break;
#line 84 "gxml-performance.vala"
		case BOOK_NAME_PROPERTY:
#line 84 "gxml-performance.vala"
		g_value_set_object (value, book_get_name (self));
#line 84 "gxml-performance.vala"
		break;
#line 84 "gxml-performance.vala"
		case BOOK_AUTHORS_PROPERTY:
#line 84 "gxml-performance.vala"
		g_value_set_object (value, book_get_authors (self));
#line 84 "gxml-performance.vala"
		break;
#line 84 "gxml-performance.vala"
		case BOOK_INVENTORY_REGISTERS_PROPERTY:
#line 84 "gxml-performance.vala"
		g_value_set_object (value, book_get_inventory_registers (self));
#line 84 "gxml-performance.vala"
		break;
#line 84 "gxml-performance.vala"
		case BOOK_CATEGORIES_PROPERTY:
#line 84 "gxml-performance.vala"
		g_value_set_object (value, book_get_categories (self));
#line 84 "gxml-performance.vala"
		break;
#line 84 "gxml-performance.vala"
		case BOOK_RESUMES_PROPERTY:
#line 84 "gxml-performance.vala"
		g_value_set_object (value, book_get_resumes (self));
#line 84 "gxml-performance.vala"
		break;
#line 3916 "gxml-performance.c"
		default:
#line 84 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 84 "gxml-performance.vala"
		break;
#line 3922 "gxml-performance.c"
	}
}

static void
_vala_book_set_property (GObject * object,
                         guint property_id,
                         const GValue * value,
                         GParamSpec * pspec)
{
	Book * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_BOOK, Book);
#line 84 "gxml-performance.vala"
	switch (property_id) {
#line 84 "gxml-performance.vala"
		case BOOK_YEAR_PROPERTY:
#line 84 "gxml-performance.vala"
		book_set_year (self, g_value_get_string (value));
#line 84 "gxml-performance.vala"
		break;
#line 84 "gxml-performance.vala"
		case BOOK_ISBN_PROPERTY:
#line 84 "gxml-performance.vala"
		book_set_isbn (self, g_value_get_string (value));
#line 84 "gxml-performance.vala"
		break;
#line 84 "gxml-performance.vala"
		case BOOK_NAME_PROPERTY:
#line 84 "gxml-performance.vala"
		book_set_name (self, g_value_get_object (value));
#line 84 "gxml-performance.vala"
		break;
#line 84 "gxml-performance.vala"
		case BOOK_AUTHORS_PROPERTY:
#line 84 "gxml-performance.vala"
		book_set_authors (self, g_value_get_object (value));
#line 84 "gxml-performance.vala"
		break;
#line 84 "gxml-performance.vala"
		case BOOK_INVENTORY_REGISTERS_PROPERTY:
#line 84 "gxml-performance.vala"
		book_set_inventory_registers (self, g_value_get_object (value));
#line 84 "gxml-performance.vala"
		break;
#line 84 "gxml-performance.vala"
		case BOOK_CATEGORIES_PROPERTY:
#line 84 "gxml-performance.vala"
		book_set_categories (self, g_value_get_object (value));
#line 84 "gxml-performance.vala"
		break;
#line 84 "gxml-performance.vala"
		case BOOK_RESUMES_PROPERTY:
#line 84 "gxml-performance.vala"
		book_set_resumes (self, g_value_get_object (value));
#line 84 "gxml-performance.vala"
		break;
#line 3978 "gxml-performance.c"
		default:
#line 84 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 84 "gxml-performance.vala"
		break;
#line 3984 "gxml-performance.c"
	}
}

static inline gpointer
book_store_get_instance_private (BookStore* self)
{
	return G_STRUCT_MEMBER_P (self, BookStore_private_offset);
}

static void
book_store_real_init_containers (GXmlSerializableContainer* base)
{
	BookStore * self;
	BookArray* _tmp0_;
#line 110 "gxml-performance.vala"
	self = (BookStore*) base;
#line 112 "gxml-performance.vala"
	_tmp0_ = self->priv->_books;
#line 112 "gxml-performance.vala"
	if (_tmp0_ == NULL) {
#line 4005 "gxml-performance.c"
		BookArray* _tmp1_;
		BookArray* _tmp2_;
#line 113 "gxml-performance.vala"
		_tmp1_ = book_array_new ();
#line 113 "gxml-performance.vala"
		_tmp2_ = _tmp1_;
#line 113 "gxml-performance.vala"
		book_store_set_books (self, _tmp2_);
#line 113 "gxml-performance.vala"
		_g_object_unref0 (_tmp2_);
#line 4016 "gxml-performance.c"
	}
}

static gchar*
book_store_real_to_string (GXmlSerializableObjectModel* base)
{
	BookStore * self;
	gchar* result = NULL;
	const gchar* _tmp0_;
	gchar* _tmp1_;
#line 115 "gxml-performance.vala"
	self = (BookStore*) base;
#line 115 "gxml-performance.vala"
	_tmp0_ = self->priv->_name;
#line 115 "gxml-performance.vala"
	_tmp1_ = g_strdup (_tmp0_);
#line 115 "gxml-performance.vala"
	result = _tmp1_;
#line 115 "gxml-performance.vala"
	return result;
#line 4037 "gxml-performance.c"
}

BookStore*
book_store_construct (GType object_type)
{
	BookStore * self = NULL;
#line 106 "gxml-performance.vala"
	self = (BookStore*) gxml_serializable_container_construct (object_type);
#line 106 "gxml-performance.vala"
	return self;
#line 4048 "gxml-performance.c"
}

BookStore*
book_store_new (void)
{
#line 106 "gxml-performance.vala"
	return book_store_construct (TYPE_BOOK_STORE);
#line 4056 "gxml-performance.c"
}

const gchar*
book_store_get_name (BookStore* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 108 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 108 "gxml-performance.vala"
	_tmp0_ = self->priv->_name;
#line 108 "gxml-performance.vala"
	result = _tmp0_;
#line 108 "gxml-performance.vala"
	return result;
#line 4072 "gxml-performance.c"
}

void
book_store_set_name (BookStore* self,
                     const gchar* value)
{
#line 108 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 108 "gxml-performance.vala"
	if (g_strcmp0 (value, book_store_get_name (self)) != 0) {
#line 4083 "gxml-performance.c"
		gchar* _tmp0_;
#line 108 "gxml-performance.vala"
		_tmp0_ = g_strdup (value);
#line 108 "gxml-performance.vala"
		_g_free0 (self->priv->_name);
#line 108 "gxml-performance.vala"
		self->priv->_name = _tmp0_;
#line 108 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, book_store_properties[BOOK_STORE_NAME_PROPERTY]);
#line 4093 "gxml-performance.c"
	}
}

BookArray*
book_store_get_books (BookStore* self)
{
	BookArray* result;
	BookArray* _tmp0_;
#line 109 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 109 "gxml-performance.vala"
	_tmp0_ = self->priv->_books;
#line 109 "gxml-performance.vala"
	result = _tmp0_;
#line 109 "gxml-performance.vala"
	return result;
#line 4110 "gxml-performance.c"
}

void
book_store_set_books (BookStore* self,
                      BookArray* value)
{
#line 109 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 109 "gxml-performance.vala"
	if (book_store_get_books (self) != value) {
#line 4121 "gxml-performance.c"
		BookArray* _tmp0_;
#line 109 "gxml-performance.vala"
		_tmp0_ = _g_object_ref0 (value);
#line 109 "gxml-performance.vala"
		_g_object_unref0 (self->priv->_books);
#line 109 "gxml-performance.vala"
		self->priv->_books = _tmp0_;
#line 109 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, book_store_properties[BOOK_STORE_BOOKS_PROPERTY]);
#line 4131 "gxml-performance.c"
	}
}

static void
book_store_class_init (BookStoreClass * klass,
                       gpointer klass_data)
{
#line 106 "gxml-performance.vala"
	book_store_parent_class = g_type_class_peek_parent (klass);
#line 106 "gxml-performance.vala"
	g_type_class_adjust_private_offset (klass, &BookStore_private_offset);
#line 106 "gxml-performance.vala"
	((GXmlSerializableContainerClass *) klass)->init_containers = (void (*) (GXmlSerializableContainer*)) book_store_real_init_containers;
#line 106 "gxml-performance.vala"
	((GXmlSerializableObjectModelClass *) klass)->to_string = (gchar* (*) (GXmlSerializableObjectModel*)) book_store_real_to_string;
#line 106 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_book_store_get_property;
#line 106 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_book_store_set_property;
#line 106 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->finalize = book_store_finalize;
#line 106 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOOK_STORE_NAME_PROPERTY, book_store_properties[BOOK_STORE_NAME_PROPERTY] = g_param_spec_string ("name", "name", "name", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 106 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), BOOK_STORE_BOOKS_PROPERTY, book_store_properties[BOOK_STORE_BOOKS_PROPERTY] = g_param_spec_object ("books", "books", "books", BOOK_TYPE_ARRAY, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 4157 "gxml-performance.c"
}

static void
book_store_instance_init (BookStore * self,
                          gpointer klass)
{
#line 106 "gxml-performance.vala"
	self->priv = book_store_get_instance_private (self);
#line 4166 "gxml-performance.c"
}

static void
book_store_finalize (GObject * obj)
{
	BookStore * self;
#line 106 "gxml-performance.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_BOOK_STORE, BookStore);
#line 108 "gxml-performance.vala"
	_g_free0 (self->priv->_name);
#line 109 "gxml-performance.vala"
	_g_object_unref0 (self->priv->_books);
#line 106 "gxml-performance.vala"
	G_OBJECT_CLASS (book_store_parent_class)->finalize (obj);
#line 4181 "gxml-performance.c"
}

GType
book_store_get_type (void)
{
	static volatile gsize book_store_type_id__volatile = 0;
	if (g_once_init_enter (&book_store_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (BookStoreClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) book_store_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (BookStore), 0, (GInstanceInitFunc) book_store_instance_init, NULL };
		GType book_store_type_id;
		book_store_type_id = g_type_register_static (GXML_TYPE_SERIALIZABLE_CONTAINER, "BookStore", &g_define_type_info, 0);
		BookStore_private_offset = g_type_add_instance_private (book_store_type_id, sizeof (BookStorePrivate));
		g_once_init_leave (&book_store_type_id__volatile, book_store_type_id);
	}
	return book_store_type_id__volatile;
}

static void
_vala_book_store_get_property (GObject * object,
                               guint property_id,
                               GValue * value,
                               GParamSpec * pspec)
{
	BookStore * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_BOOK_STORE, BookStore);
#line 106 "gxml-performance.vala"
	switch (property_id) {
#line 106 "gxml-performance.vala"
		case BOOK_STORE_NAME_PROPERTY:
#line 106 "gxml-performance.vala"
		g_value_set_string (value, book_store_get_name (self));
#line 106 "gxml-performance.vala"
		break;
#line 106 "gxml-performance.vala"
		case BOOK_STORE_BOOKS_PROPERTY:
#line 106 "gxml-performance.vala"
		g_value_set_object (value, book_store_get_books (self));
#line 106 "gxml-performance.vala"
		break;
#line 4220 "gxml-performance.c"
		default:
#line 106 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 106 "gxml-performance.vala"
		break;
#line 4226 "gxml-performance.c"
	}
}

static void
_vala_book_store_set_property (GObject * object,
                               guint property_id,
                               const GValue * value,
                               GParamSpec * pspec)
{
	BookStore * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_BOOK_STORE, BookStore);
#line 106 "gxml-performance.vala"
	switch (property_id) {
#line 106 "gxml-performance.vala"
		case BOOK_STORE_NAME_PROPERTY:
#line 106 "gxml-performance.vala"
		book_store_set_name (self, g_value_get_string (value));
#line 106 "gxml-performance.vala"
		break;
#line 106 "gxml-performance.vala"
		case BOOK_STORE_BOOKS_PROPERTY:
#line 106 "gxml-performance.vala"
		book_store_set_books (self, g_value_get_object (value));
#line 106 "gxml-performance.vala"
		break;
#line 4252 "gxml-performance.c"
		default:
#line 106 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 106 "gxml-performance.vala"
		break;
#line 4258 "gxml-performance.c"
	}
}

/**
   * Iterate recursively through all node and children nodes in document.
   */
void
performance_iterate (GXmlNode* node)
{
#line 212 "gxml-performance.vala"
	g_return_if_fail (node != NULL);
#line 4270 "gxml-performance.c"
	{
		GeeBidirList* _n_list = NULL;
		GeeBidirList* _tmp0_;
		GeeBidirList* _tmp1_;
		gint _n_size = 0;
		GeeBidirList* _tmp2_;
		gint _tmp3_;
		gint _tmp4_;
		gint _n_index = 0;
#line 213 "gxml-performance.vala"
		_tmp0_ = gxml_node_get_children_nodes (node);
#line 213 "gxml-performance.vala"
		_tmp1_ = _tmp0_;
#line 213 "gxml-performance.vala"
		_n_list = _tmp1_;
#line 213 "gxml-performance.vala"
		_tmp2_ = _n_list;
#line 213 "gxml-performance.vala"
		_tmp3_ = gee_collection_get_size ((GeeCollection*) _tmp2_);
#line 213 "gxml-performance.vala"
		_tmp4_ = _tmp3_;
#line 213 "gxml-performance.vala"
		_n_size = _tmp4_;
#line 213 "gxml-performance.vala"
		_n_index = -1;
#line 213 "gxml-performance.vala"
		while (TRUE) {
#line 4298 "gxml-performance.c"
			GXmlNode* n = NULL;
			GeeBidirList* _tmp5_;
			gpointer _tmp6_;
			gint i = 0;
			GeeBidirList* _tmp7_;
			GeeBidirList* _tmp8_;
			GeeBidirList* _tmp9_;
			gint _tmp10_;
			gint _tmp11_;
			gint _tmp12_;
#line 213 "gxml-performance.vala"
			_n_index = _n_index + 1;
#line 213 "gxml-performance.vala"
			if (!(_n_index < _n_size)) {
#line 213 "gxml-performance.vala"
				break;
#line 4315 "gxml-performance.c"
			}
#line 213 "gxml-performance.vala"
			_tmp5_ = _n_list;
#line 213 "gxml-performance.vala"
			_tmp6_ = gee_list_get ((GeeList*) _tmp5_, _n_index);
#line 213 "gxml-performance.vala"
			n = (GXmlNode*) _tmp6_;
#line 214 "gxml-performance.vala"
			_tmp7_ = gxml_node_get_children_nodes (node);
#line 214 "gxml-performance.vala"
			_tmp8_ = _tmp7_;
#line 214 "gxml-performance.vala"
			_tmp9_ = _tmp8_;
#line 214 "gxml-performance.vala"
			_tmp10_ = gee_collection_get_size ((GeeCollection*) _tmp9_);
#line 214 "gxml-performance.vala"
			_tmp11_ = _tmp10_;
#line 214 "gxml-performance.vala"
			_tmp12_ = _tmp11_;
#line 214 "gxml-performance.vala"
			_g_object_unref0 (_tmp9_);
#line 214 "gxml-performance.vala"
			i = _tmp12_;
#line 220 "gxml-performance.vala"
			if (i > 0) {
#line 4341 "gxml-performance.c"
				GXmlNode* _tmp13_;
#line 221 "gxml-performance.vala"
				_tmp13_ = n;
#line 221 "gxml-performance.vala"
				performance_iterate (_tmp13_);
#line 4347 "gxml-performance.c"
			}
#line 213 "gxml-performance.vala"
			_g_object_unref0 (n);
#line 4351 "gxml-performance.c"
		}
#line 213 "gxml-performance.vala"
		_g_object_unref0 (_n_list);
#line 4355 "gxml-performance.c"
	}
}

void
performance_iterate_dom (GXmlDomNode* node)
{
#line 224 "gxml-performance.vala"
	g_return_if_fail (node != NULL);
#line 4364 "gxml-performance.c"
	{
		GXmlDomNodeList* _n_list = NULL;
		GXmlDomNodeList* _tmp0_;
		GXmlDomNodeList* _tmp1_;
		gint _n_size = 0;
		GXmlDomNodeList* _tmp2_;
		gint _tmp3_;
		gint _tmp4_;
		gint _n_index = 0;
#line 225 "gxml-performance.vala"
		_tmp0_ = gxml_dom_node_get_child_nodes (node);
#line 225 "gxml-performance.vala"
		_tmp1_ = _tmp0_;
#line 225 "gxml-performance.vala"
		_n_list = _tmp1_;
#line 225 "gxml-performance.vala"
		_tmp2_ = _n_list;
#line 225 "gxml-performance.vala"
		_tmp3_ = gee_collection_get_size ((GeeCollection*) _tmp2_);
#line 225 "gxml-performance.vala"
		_tmp4_ = _tmp3_;
#line 225 "gxml-performance.vala"
		_n_size = _tmp4_;
#line 225 "gxml-performance.vala"
		_n_index = -1;
#line 225 "gxml-performance.vala"
		while (TRUE) {
#line 4392 "gxml-performance.c"
			GXmlDomNode* n = NULL;
			GXmlDomNodeList* _tmp5_;
			gpointer _tmp6_;
			gint i = 0;
			GXmlDomNode* _tmp7_;
			GXmlDomNodeList* _tmp8_;
			GXmlDomNodeList* _tmp9_;
			GXmlDomNodeList* _tmp10_;
			gint _tmp11_;
			gint _tmp12_;
			gint _tmp13_;
#line 225 "gxml-performance.vala"
			_n_index = _n_index + 1;
#line 225 "gxml-performance.vala"
			if (!(_n_index < _n_size)) {
#line 225 "gxml-performance.vala"
				break;
#line 4410 "gxml-performance.c"
			}
#line 225 "gxml-performance.vala"
			_tmp5_ = _n_list;
#line 225 "gxml-performance.vala"
			_tmp6_ = gee_list_get ((GeeList*) _tmp5_, _n_index);
#line 225 "gxml-performance.vala"
			n = (GXmlDomNode*) _tmp6_;
#line 226 "gxml-performance.vala"
			_tmp7_ = n;
#line 226 "gxml-performance.vala"
			_tmp8_ = gxml_dom_node_get_child_nodes (_tmp7_);
#line 226 "gxml-performance.vala"
			_tmp9_ = _tmp8_;
#line 226 "gxml-performance.vala"
			_tmp10_ = _tmp9_;
#line 226 "gxml-performance.vala"
			_tmp11_ = gee_collection_get_size ((GeeCollection*) _tmp10_);
#line 226 "gxml-performance.vala"
			_tmp12_ = _tmp11_;
#line 226 "gxml-performance.vala"
			_tmp13_ = _tmp12_;
#line 226 "gxml-performance.vala"
			_g_object_unref0 (_tmp10_);
#line 226 "gxml-performance.vala"
			i = _tmp13_;
#line 232 "gxml-performance.vala"
			if (i > 0) {
#line 4438 "gxml-performance.c"
				GXmlDomNode* _tmp14_;
#line 233 "gxml-performance.vala"
				_tmp14_ = n;
#line 233 "gxml-performance.vala"
				performance_iterate_dom (_tmp14_);
#line 4444 "gxml-performance.c"
			}
#line 225 "gxml-performance.vala"
			_g_object_unref0 (n);
#line 4448 "gxml-performance.c"
		}
#line 225 "gxml-performance.vala"
		_g_object_unref0 (_n_list);
#line 4452 "gxml-performance.c"
	}
}

static void
__lambda170_ (void)
{
	GError* _inner_error0_ = NULL;
	{
		gdouble time = 0.0;
		GXmlGomDocument* d = NULL;
		GXmlGomDocument* _tmp0_;
#line 241 "gxml-performance.vala"
		g_test_timer_start ();
#line 243 "gxml-performance.vala"
		_tmp0_ = gxml_gom_document_new_from_path (TEST_DIR "/test-large.xml", &_inner_error0_);
#line 243 "gxml-performance.vala"
		d = _tmp0_;
#line 243 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 4472 "gxml-performance.c"
			goto __catch227_g_error;
		}
#line 244 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 245 "gxml-performance.vala"
		g_test_minimized_result (time, "Load large document: %g seconds", time);
#line 246 "gxml-performance.vala"
		g_test_timer_start ();
#line 247 "gxml-performance.vala"
		performance_iterate_dom ((GXmlDomNode*) d);
#line 248 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 249 "gxml-performance.vala"
		g_test_minimized_result (time, "Itirate over all loaded nodes: %g seconds", time);
#line 240 "gxml-performance.vala"
		_g_object_unref0 (d);
#line 4489 "gxml-performance.c"
	}
	goto __finally227;
	__catch227_g_error:
	{
		GError* e = NULL;
#line 240 "gxml-performance.vala"
		e = _inner_error0_;
#line 240 "gxml-performance.vala"
		_inner_error0_ = NULL;
#line 254 "gxml-performance.vala"
		g_assert_not_reached ();
#line 240 "gxml-performance.vala"
		_g_error_free0 (e);
#line 4503 "gxml-performance.c"
	}
	__finally227:
#line 240 "gxml-performance.vala"
	if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 240 "gxml-performance.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
#line 240 "gxml-performance.vala"
		g_clear_error (&_inner_error0_);
#line 240 "gxml-performance.vala"
		return;
#line 4514 "gxml-performance.c"
	}
}

static void
___lambda170__gtest_func (void)
{
#line 238 "gxml-performance.vala"
	__lambda170_ ();
#line 4523 "gxml-performance.c"
}

static void
__lambda171_ (void)
{
	GError* _inner_error0_ = NULL;
	{
		gdouble time = 0.0;
		GXmlGDocument* d = NULL;
		GXmlGDocument* _tmp0_;
#line 259 "gxml-performance.vala"
		g_test_timer_start ();
#line 261 "gxml-performance.vala"
		_tmp0_ = gxml_gdocument_new_from_path (TEST_DIR "/test-large.xml", 0, &_inner_error0_);
#line 261 "gxml-performance.vala"
		d = _tmp0_;
#line 261 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 4542 "gxml-performance.c"
			goto __catch228_g_error;
		}
#line 262 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 263 "gxml-performance.vala"
		g_test_minimized_result (time, "Load large document: %g seconds", time);
#line 264 "gxml-performance.vala"
		g_test_timer_start ();
#line 265 "gxml-performance.vala"
		performance_iterate ((GXmlNode*) d);
#line 266 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 267 "gxml-performance.vala"
		g_test_minimized_result (time, "Itirate over all loaded nodes: %g seconds", time);
#line 258 "gxml-performance.vala"
		_g_object_unref0 (d);
#line 4559 "gxml-performance.c"
	}
	goto __finally228;
	__catch228_g_error:
	{
		GError* e = NULL;
#line 258 "gxml-performance.vala"
		e = _inner_error0_;
#line 258 "gxml-performance.vala"
		_inner_error0_ = NULL;
#line 272 "gxml-performance.vala"
		g_assert_not_reached ();
#line 258 "gxml-performance.vala"
		_g_error_free0 (e);
#line 4573 "gxml-performance.c"
	}
	__finally228:
#line 258 "gxml-performance.vala"
	if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 258 "gxml-performance.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
#line 258 "gxml-performance.vala"
		g_clear_error (&_inner_error0_);
#line 258 "gxml-performance.vala"
		return;
#line 4584 "gxml-performance.c"
	}
}

static void
___lambda171__gtest_func (void)
{
#line 256 "gxml-performance.vala"
	__lambda171_ ();
#line 4593 "gxml-performance.c"
}

static void
__lambda172_ (void)
{
	GError* _inner_error0_ = NULL;
	{
		gdouble time = 0.0;
		GXmlGomDocument* doc = NULL;
		GFile* f = NULL;
		GFile* _tmp0_;
		GFile* _tmp1_;
		GomBookStore* bs = NULL;
		GomBookStore* _tmp2_;
		GomBookStore* _tmp3_;
		GFile* _tmp4_;
		GFile* of = NULL;
		GFile* _tmp5_;
		GomBookStore* _tmp6_;
		GFile* _tmp7_;
		GFile* _tmp8_;
		GomBookStore* _tmp10_;
		GXmlDomDocument* _tmp11_;
		GXmlDomDocument* _tmp12_;
		GXmlDomElement* _tmp13_;
		GXmlDomElement* _tmp14_;
		GXmlDomElement* _tmp15_;
		gchar* _tmp16_;
		gchar* _tmp17_;
		gchar* _tmp18_;
		gchar* _tmp19_;
		gchar* _tmp20_;
		GomBookStore* _tmp21_;
		GXmlDomDocument* _tmp22_;
		GXmlDomDocument* _tmp23_;
		GXmlDomElement* _tmp24_;
		GXmlDomElement* _tmp25_;
		GXmlDomElement* _tmp26_;
		gchar* _tmp27_;
		gchar* _tmp28_;
		gchar* _tmp29_;
		gchar* _tmp30_;
		gchar* _tmp31_;
		GomBookStore* _tmp32_;
		GXmlDomNodeList* _tmp33_;
		GXmlDomNodeList* _tmp34_;
		GXmlDomNodeList* _tmp35_;
		gint _tmp36_;
		gint _tmp37_;
		GXmlDomHTMLCollection* ns = NULL;
		GomBookStore* _tmp38_;
		GXmlDomHTMLCollection* _tmp39_;
		gint _tmp40_;
		gint _tmp41_;
		GomBookStore* _tmp42_;
		GomBookArray* _tmp43_;
		GomBookArray* _tmp44_;
		gint _tmp45_;
		gint _tmp46_;
		gchar* _tmp47_;
		gchar* _tmp48_;
		gchar* _tmp49_;
		gchar* _tmp50_;
#line 280 "gxml-performance.vala"
		_tmp0_ = g_file_new_for_path (TEST_DIR "/test-large.xml");
#line 280 "gxml-performance.vala"
		f = _tmp0_;
#line 281 "gxml-performance.vala"
		_tmp1_ = f;
#line 281 "gxml-performance.vala"
		_vala_assert (g_file_query_exists (_tmp1_, NULL), "f.query_exists ()");
#line 282 "gxml-performance.vala"
		g_test_timer_start ();
#line 283 "gxml-performance.vala"
		_tmp2_ = gom_book_store_new ();
#line 283 "gxml-performance.vala"
		bs = _tmp2_;
#line 284 "gxml-performance.vala"
		_tmp3_ = bs;
#line 284 "gxml-performance.vala"
		_tmp4_ = f;
#line 284 "gxml-performance.vala"
		gxml_dom_element_read_from_file ((GXmlDomElement*) _tmp3_, _tmp4_, NULL, &_inner_error0_);
#line 284 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 284 "gxml-performance.vala"
			_g_object_unref0 (bs);
#line 284 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 284 "gxml-performance.vala"
			_g_object_unref0 (doc);
#line 4685 "gxml-performance.c"
			goto __catch229_g_error;
		}
#line 285 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 286 "gxml-performance.vala"
		g_test_minimized_result (time, "deserialize/performance: %g seconds", time);
#line 287 "gxml-performance.vala"
		_tmp5_ = g_file_new_for_path (TEST_SAVE_DIR "/test-large-new.xml");
#line 287 "gxml-performance.vala"
		of = _tmp5_;
#line 288 "gxml-performance.vala"
		g_test_timer_start ();
#line 289 "gxml-performance.vala"
		_tmp6_ = bs;
#line 289 "gxml-performance.vala"
		_tmp7_ = of;
#line 289 "gxml-performance.vala"
		gxml_dom_element_write_file ((GXmlDomElement*) _tmp6_, _tmp7_, NULL, &_inner_error0_);
#line 289 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 289 "gxml-performance.vala"
			_g_object_unref0 (of);
#line 289 "gxml-performance.vala"
			_g_object_unref0 (bs);
#line 289 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 289 "gxml-performance.vala"
			_g_object_unref0 (doc);
#line 4714 "gxml-performance.c"
			goto __catch229_g_error;
		}
#line 290 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 291 "gxml-performance.vala"
		g_test_minimized_result (time, "Serialize/performance: %g seconds", time);
#line 292 "gxml-performance.vala"
		_tmp8_ = of;
#line 292 "gxml-performance.vala"
		_vala_assert (g_file_query_exists (_tmp8_, NULL), "of.query_exists ()");
#line 4725 "gxml-performance.c"
		{
			GFile* _tmp9_;
#line 293 "gxml-performance.vala"
			_tmp9_ = of;
#line 293 "gxml-performance.vala"
			g_file_delete (_tmp9_, NULL, &_inner_error0_);
#line 293 "gxml-performance.vala"
			if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 4734 "gxml-performance.c"
				goto __catch230_g_error;
			}
		}
		goto __finally230;
		__catch230_g_error:
		{
#line 293 "gxml-performance.vala"
			g_clear_error (&_inner_error0_);
#line 293 "gxml-performance.vala"
			_inner_error0_ = NULL;
#line 293 "gxml-performance.vala"
			g_assert_not_reached ();
#line 4747 "gxml-performance.c"
		}
		__finally230:
#line 293 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 293 "gxml-performance.vala"
			_g_object_unref0 (of);
#line 293 "gxml-performance.vala"
			_g_object_unref0 (bs);
#line 293 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 293 "gxml-performance.vala"
			_g_object_unref0 (doc);
#line 4760 "gxml-performance.c"
			goto __catch229_g_error;
		}
#line 295 "gxml-performance.vala"
		_tmp10_ = bs;
#line 295 "gxml-performance.vala"
		_tmp11_ = gxml_dom_node_get_owner_document ((GXmlDomNode*) _tmp10_);
#line 295 "gxml-performance.vala"
		_tmp12_ = _tmp11_;
#line 295 "gxml-performance.vala"
		_tmp13_ = gxml_dom_document_get_document_element (_tmp12_);
#line 295 "gxml-performance.vala"
		_tmp14_ = _tmp13_;
#line 295 "gxml-performance.vala"
		_tmp15_ = _tmp14_;
#line 295 "gxml-performance.vala"
		_tmp16_ = gxml_dom_node_get_node_name ((GXmlDomNode*) _tmp15_);
#line 295 "gxml-performance.vala"
		_tmp17_ = _tmp16_;
#line 295 "gxml-performance.vala"
		_tmp18_ = _tmp17_;
#line 295 "gxml-performance.vala"
		_tmp19_ = g_strconcat ("Document Root: ", _tmp18_, NULL);
#line 295 "gxml-performance.vala"
		_tmp20_ = _tmp19_;
#line 295 "gxml-performance.vala"
		g_message ("gxml-performance.vala:295: %s", _tmp20_);
#line 295 "gxml-performance.vala"
		_g_free0 (_tmp20_);
#line 295 "gxml-performance.vala"
		_g_free0 (_tmp18_);
#line 295 "gxml-performance.vala"
		_g_object_unref0 (_tmp15_);
#line 296 "gxml-performance.vala"
		_tmp21_ = bs;
#line 296 "gxml-performance.vala"
		_tmp22_ = gxml_dom_node_get_owner_document ((GXmlDomNode*) _tmp21_);
#line 296 "gxml-performance.vala"
		_tmp23_ = _tmp22_;
#line 296 "gxml-performance.vala"
		_tmp24_ = gxml_dom_document_get_document_element (_tmp23_);
#line 296 "gxml-performance.vala"
		_tmp25_ = _tmp24_;
#line 296 "gxml-performance.vala"
		_tmp26_ = _tmp25_;
#line 296 "gxml-performance.vala"
		_tmp27_ = gxml_dom_node_get_node_name ((GXmlDomNode*) _tmp26_);
#line 296 "gxml-performance.vala"
		_tmp28_ = _tmp27_;
#line 296 "gxml-performance.vala"
		_tmp29_ = _tmp28_;
#line 296 "gxml-performance.vala"
		_tmp30_ = g_utf8_strdown (_tmp29_, (gssize) -1);
#line 296 "gxml-performance.vala"
		_tmp31_ = _tmp30_;
#line 296 "gxml-performance.vala"
		_vala_assert (g_strcmp0 (_tmp31_, "bookstore") == 0, "bs.owner_document.document_element.node_name.down () == \"bookstore\"");
#line 296 "gxml-performance.vala"
		_g_free0 (_tmp31_);
#line 296 "gxml-performance.vala"
		_g_free0 (_tmp29_);
#line 296 "gxml-performance.vala"
		_g_object_unref0 (_tmp26_);
#line 297 "gxml-performance.vala"
		_tmp32_ = bs;
#line 297 "gxml-performance.vala"
		_tmp33_ = gxml_dom_node_get_child_nodes ((GXmlDomNode*) _tmp32_);
#line 297 "gxml-performance.vala"
		_tmp34_ = _tmp33_;
#line 297 "gxml-performance.vala"
		_tmp35_ = _tmp34_;
#line 297 "gxml-performance.vala"
		_tmp36_ = gxml_dom_node_list_get_length (_tmp35_);
#line 297 "gxml-performance.vala"
		_tmp37_ = _tmp36_;
#line 297 "gxml-performance.vala"
		_vala_assert (_tmp37_ > 0, "bs.child_nodes.length > 0");
#line 297 "gxml-performance.vala"
		_g_object_unref0 (_tmp35_);
#line 298 "gxml-performance.vala"
		_tmp38_ = bs;
#line 298 "gxml-performance.vala"
		_tmp39_ = gxml_dom_element_get_elements_by_tag_name ((GXmlDomElement*) _tmp38_, "book");
#line 298 "gxml-performance.vala"
		ns = _tmp39_;
#line 299 "gxml-performance.vala"
		_tmp40_ = gxml_dom_html_collection_get_length (ns);
#line 299 "gxml-performance.vala"
		_tmp41_ = _tmp40_;
#line 299 "gxml-performance.vala"
		_vala_assert (_tmp41_ > 0, "ns.length > 0");
#line 300 "gxml-performance.vala"
		_tmp42_ = bs;
#line 300 "gxml-performance.vala"
		_tmp43_ = gom_book_store_get_books (_tmp42_);
#line 300 "gxml-performance.vala"
		_tmp44_ = _tmp43_;
#line 300 "gxml-performance.vala"
		_tmp45_ = gxml_collection_get_length ((GXmlCollection*) _tmp44_);
#line 300 "gxml-performance.vala"
		_tmp46_ = _tmp45_;
#line 300 "gxml-performance.vala"
		_tmp47_ = g_strdup_printf ("%i", _tmp46_);
#line 300 "gxml-performance.vala"
		_tmp48_ = _tmp47_;
#line 300 "gxml-performance.vala"
		_tmp49_ = g_strconcat ("Books: ", _tmp48_, NULL);
#line 300 "gxml-performance.vala"
		_tmp50_ = _tmp49_;
#line 300 "gxml-performance.vala"
		g_message ("gxml-performance.vala:300: %s", _tmp50_);
#line 300 "gxml-performance.vala"
		_g_free0 (_tmp50_);
#line 300 "gxml-performance.vala"
		_g_free0 (_tmp48_);
#line 277 "gxml-performance.vala"
		_g_object_unref0 (ns);
#line 277 "gxml-performance.vala"
		_g_object_unref0 (of);
#line 277 "gxml-performance.vala"
		_g_object_unref0 (bs);
#line 277 "gxml-performance.vala"
		_g_object_unref0 (f);
#line 277 "gxml-performance.vala"
		_g_object_unref0 (doc);
#line 4885 "gxml-performance.c"
	}
	goto __finally229;
	__catch229_g_error:
	{
		GError* e = NULL;
#line 277 "gxml-performance.vala"
		e = _inner_error0_;
#line 277 "gxml-performance.vala"
		_inner_error0_ = NULL;
#line 309 "gxml-performance.vala"
		g_assert_not_reached ();
#line 277 "gxml-performance.vala"
		_g_error_free0 (e);
#line 4899 "gxml-performance.c"
	}
	__finally229:
#line 277 "gxml-performance.vala"
	if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 277 "gxml-performance.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
#line 277 "gxml-performance.vala"
		g_clear_error (&_inner_error0_);
#line 277 "gxml-performance.vala"
		return;
#line 4910 "gxml-performance.c"
	}
}

static void
___lambda172__gtest_func (void)
{
#line 275 "gxml-performance.vala"
	__lambda172_ ();
#line 4919 "gxml-performance.c"
}

static void
__lambda173_ (void)
{
	GError* _inner_error0_ = NULL;
	{
		gdouble time = 0.0;
		GXmlGDocument* d = NULL;
		GXmlGDocument* _tmp0_;
		BookStore* bs = NULL;
		BookStore* _tmp1_;
		BookStore* _tmp2_;
		GXmlGDocument* _tmp3_;
#line 316 "gxml-performance.vala"
		g_test_timer_start ();
#line 317 "gxml-performance.vala"
		_tmp0_ = gxml_gdocument_new_from_path (TEST_DIR "/test-large.xml", 0, &_inner_error0_);
#line 317 "gxml-performance.vala"
		d = _tmp0_;
#line 317 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 4942 "gxml-performance.c"
			goto __catch231_g_error;
		}
#line 318 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 319 "gxml-performance.vala"
		g_test_minimized_result (time, "open document from path: %g seconds", time);
#line 320 "gxml-performance.vala"
		g_test_timer_start ();
#line 321 "gxml-performance.vala"
		_tmp1_ = book_store_new ();
#line 321 "gxml-performance.vala"
		bs = _tmp1_;
#line 322 "gxml-performance.vala"
		_tmp2_ = bs;
#line 322 "gxml-performance.vala"
		_tmp3_ = d;
#line 322 "gxml-performance.vala"
		gxml_serializable_object_model_deserialize ((GXmlSerializableObjectModel*) _tmp2_, (GXmlNode*) _tmp3_, &_inner_error0_);
#line 322 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 322 "gxml-performance.vala"
			_g_object_unref0 (bs);
#line 322 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 4967 "gxml-performance.c"
			goto __catch231_g_error;
		}
#line 323 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 324 "gxml-performance.vala"
		g_test_minimized_result (time, "deserialize/performance: %g seconds", time);
#line 314 "gxml-performance.vala"
		_g_object_unref0 (bs);
#line 314 "gxml-performance.vala"
		_g_object_unref0 (d);
#line 4978 "gxml-performance.c"
	}
	goto __finally231;
	__catch231_g_error:
	{
		GError* e = NULL;
#line 314 "gxml-performance.vala"
		e = _inner_error0_;
#line 314 "gxml-performance.vala"
		_inner_error0_ = NULL;
#line 329 "gxml-performance.vala"
		g_assert_not_reached ();
#line 314 "gxml-performance.vala"
		_g_error_free0 (e);
#line 4992 "gxml-performance.c"
	}
	__finally231:
#line 314 "gxml-performance.vala"
	if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 314 "gxml-performance.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
#line 314 "gxml-performance.vala"
		g_clear_error (&_inner_error0_);
#line 314 "gxml-performance.vala"
		return;
#line 5003 "gxml-performance.c"
	}
}

static void
___lambda173__gtest_func (void)
{
#line 312 "gxml-performance.vala"
	__lambda173_ ();
#line 5012 "gxml-performance.c"
}

static void
__lambda174_ (void)
{
	GError* _inner_error0_ = NULL;
	{
		gdouble time = 0.0;
		GXmlGDocument* d = NULL;
		GXmlGDocument* _tmp0_;
		BookStore* bs = NULL;
		BookStore* _tmp3_;
		BookStore* _tmp4_;
		GXmlGDocument* _tmp5_;
		GXmlGDocument* d2 = NULL;
		GXmlGDocument* _tmp8_;
		BookStore* _tmp9_;
		GXmlGDocument* _tmp10_;
		GXmlNode* _tmp11_;
		GXmlNode* _tmp12_;
		GFile* nf = NULL;
		GFile* _tmp15_;
		GXmlGDocument* _tmp16_;
		GXmlGDocument* _tmp17_;
		GFile* _tmp18_;
		GFile* _tmp21_;
		GFile* _tmp22_;
#line 337 "gxml-performance.vala"
		g_test_timer_start ();
#line 338 "gxml-performance.vala"
		_tmp0_ = gxml_gdocument_new_from_path (TEST_DIR "/test-large.xml", 0, &_inner_error0_);
#line 338 "gxml-performance.vala"
		d = _tmp0_;
#line 338 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 5048 "gxml-performance.c"
			goto __catch232_g_error;
		}
#line 339 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 340 "gxml-performance.vala"
		g_test_minimized_result (time, "GDocument open document from path: %g seconds", time);
#line 341 "gxml-performance.vala"
		g_test_message ("Starting Deserializing...");
#line 5057 "gxml-performance.c"
		{
			gint i = 0;
#line 342 "gxml-performance.vala"
			i = 0;
#line 5062 "gxml-performance.c"
			{
				gboolean _tmp1_ = FALSE;
#line 342 "gxml-performance.vala"
				_tmp1_ = TRUE;
#line 342 "gxml-performance.vala"
				while (TRUE) {
#line 342 "gxml-performance.vala"
					if (!_tmp1_) {
#line 5071 "gxml-performance.c"
						gint _tmp2_;
#line 342 "gxml-performance.vala"
						_tmp2_ = i;
#line 342 "gxml-performance.vala"
						i = _tmp2_ + 1;
#line 5077 "gxml-performance.c"
					}
#line 342 "gxml-performance.vala"
					_tmp1_ = FALSE;
#line 342 "gxml-performance.vala"
					if (!(i < 1000000)) {
#line 342 "gxml-performance.vala"
						break;
#line 5085 "gxml-performance.c"
					}
				}
			}
		}
#line 343 "gxml-performance.vala"
		g_test_timer_start ();
#line 344 "gxml-performance.vala"
		_tmp3_ = book_store_new ();
#line 344 "gxml-performance.vala"
		bs = _tmp3_;
#line 345 "gxml-performance.vala"
		_tmp4_ = bs;
#line 345 "gxml-performance.vala"
		_tmp5_ = d;
#line 345 "gxml-performance.vala"
		gxml_serializable_object_model_deserialize ((GXmlSerializableObjectModel*) _tmp4_, (GXmlNode*) _tmp5_, &_inner_error0_);
#line 345 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 345 "gxml-performance.vala"
			_g_object_unref0 (bs);
#line 345 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 5108 "gxml-performance.c"
			goto __catch232_g_error;
		}
#line 346 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 347 "gxml-performance.vala"
		g_test_minimized_result (time, "GDocument deserialize/performance: %g seconds", time);
#line 5115 "gxml-performance.c"
		{
			gint i = 0;
#line 348 "gxml-performance.vala"
			i = 0;
#line 5120 "gxml-performance.c"
			{
				gboolean _tmp6_ = FALSE;
#line 348 "gxml-performance.vala"
				_tmp6_ = TRUE;
#line 348 "gxml-performance.vala"
				while (TRUE) {
#line 348 "gxml-performance.vala"
					if (!_tmp6_) {
#line 5129 "gxml-performance.c"
						gint _tmp7_;
#line 348 "gxml-performance.vala"
						_tmp7_ = i;
#line 348 "gxml-performance.vala"
						i = _tmp7_ + 1;
#line 5135 "gxml-performance.c"
					}
#line 348 "gxml-performance.vala"
					_tmp6_ = FALSE;
#line 348 "gxml-performance.vala"
					if (!(i < 1000000)) {
#line 348 "gxml-performance.vala"
						break;
#line 5143 "gxml-performance.c"
					}
				}
			}
		}
#line 349 "gxml-performance.vala"
		g_test_timer_start ();
#line 350 "gxml-performance.vala"
		_tmp8_ = gxml_gdocument_new ();
#line 350 "gxml-performance.vala"
		d2 = _tmp8_;
#line 351 "gxml-performance.vala"
		_tmp9_ = bs;
#line 351 "gxml-performance.vala"
		_tmp10_ = d2;
#line 351 "gxml-performance.vala"
		_tmp11_ = gxml_serializable_object_model_serialize ((GXmlSerializableObjectModel*) _tmp9_, (GXmlNode*) _tmp10_, &_inner_error0_);
#line 351 "gxml-performance.vala"
		_tmp12_ = _tmp11_;
#line 351 "gxml-performance.vala"
		_g_object_unref0 (_tmp12_);
#line 351 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 351 "gxml-performance.vala"
			_g_object_unref0 (d2);
#line 351 "gxml-performance.vala"
			_g_object_unref0 (bs);
#line 351 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 5172 "gxml-performance.c"
			goto __catch232_g_error;
		}
#line 352 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 353 "gxml-performance.vala"
		g_test_minimized_result (time, "GDocument serialize/performance: %g seconds", time);
#line 5179 "gxml-performance.c"
		{
			gint i = 0;
#line 354 "gxml-performance.vala"
			i = 0;
#line 5184 "gxml-performance.c"
			{
				gboolean _tmp13_ = FALSE;
#line 354 "gxml-performance.vala"
				_tmp13_ = TRUE;
#line 354 "gxml-performance.vala"
				while (TRUE) {
#line 354 "gxml-performance.vala"
					if (!_tmp13_) {
#line 5193 "gxml-performance.c"
						gint _tmp14_;
#line 354 "gxml-performance.vala"
						_tmp14_ = i;
#line 354 "gxml-performance.vala"
						i = _tmp14_ + 1;
#line 5199 "gxml-performance.c"
					}
#line 354 "gxml-performance.vala"
					_tmp13_ = FALSE;
#line 354 "gxml-performance.vala"
					if (!(i < 1000000)) {
#line 354 "gxml-performance.vala"
						break;
#line 5207 "gxml-performance.c"
					}
				}
			}
		}
#line 355 "gxml-performance.vala"
		g_test_timer_start ();
#line 356 "gxml-performance.vala"
		_tmp15_ = g_file_new_for_path (TEST_DIR "/test-large-tw.xml");
#line 356 "gxml-performance.vala"
		nf = _tmp15_;
#line 357 "gxml-performance.vala"
		_tmp16_ = d2;
#line 357 "gxml-performance.vala"
		gxml_document_set_indent ((GXmlDocument*) _tmp16_, TRUE);
#line 358 "gxml-performance.vala"
		_tmp17_ = d2;
#line 358 "gxml-performance.vala"
		_tmp18_ = nf;
#line 358 "gxml-performance.vala"
		gxml_gdocument_save_as (_tmp17_, _tmp18_, NULL, &_inner_error0_);
#line 358 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 358 "gxml-performance.vala"
			_g_object_unref0 (nf);
#line 358 "gxml-performance.vala"
			_g_object_unref0 (d2);
#line 358 "gxml-performance.vala"
			_g_object_unref0 (bs);
#line 358 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 5238 "gxml-performance.c"
			goto __catch232_g_error;
		}
#line 359 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 360 "gxml-performance.vala"
		g_test_minimized_result (time, "GDocument Write to disk serialize/performance: %g seconds", time);
#line 5245 "gxml-performance.c"
		{
			gint i = 0;
#line 361 "gxml-performance.vala"
			i = 0;
#line 5250 "gxml-performance.c"
			{
				gboolean _tmp19_ = FALSE;
#line 361 "gxml-performance.vala"
				_tmp19_ = TRUE;
#line 361 "gxml-performance.vala"
				while (TRUE) {
#line 361 "gxml-performance.vala"
					if (!_tmp19_) {
#line 5259 "gxml-performance.c"
						gint _tmp20_;
#line 361 "gxml-performance.vala"
						_tmp20_ = i;
#line 361 "gxml-performance.vala"
						i = _tmp20_ + 1;
#line 5265 "gxml-performance.c"
					}
#line 361 "gxml-performance.vala"
					_tmp19_ = FALSE;
#line 361 "gxml-performance.vala"
					if (!(i < 1000000)) {
#line 361 "gxml-performance.vala"
						break;
#line 5273 "gxml-performance.c"
					}
				}
			}
		}
#line 362 "gxml-performance.vala"
		_tmp21_ = nf;
#line 362 "gxml-performance.vala"
		_vala_assert (g_file_query_exists (_tmp21_, NULL), "nf.query_exists ()");
#line 363 "gxml-performance.vala"
		_tmp22_ = nf;
#line 363 "gxml-performance.vala"
		g_file_delete (_tmp22_, NULL, &_inner_error0_);
#line 363 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 363 "gxml-performance.vala"
			_g_object_unref0 (nf);
#line 363 "gxml-performance.vala"
			_g_object_unref0 (d2);
#line 363 "gxml-performance.vala"
			_g_object_unref0 (bs);
#line 363 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 5296 "gxml-performance.c"
			goto __catch232_g_error;
		}
#line 335 "gxml-performance.vala"
		_g_object_unref0 (nf);
#line 335 "gxml-performance.vala"
		_g_object_unref0 (d2);
#line 335 "gxml-performance.vala"
		_g_object_unref0 (bs);
#line 335 "gxml-performance.vala"
		_g_object_unref0 (d);
#line 5307 "gxml-performance.c"
	}
	goto __finally232;
	__catch232_g_error:
	{
		GError* e = NULL;
#line 335 "gxml-performance.vala"
		e = _inner_error0_;
#line 335 "gxml-performance.vala"
		_inner_error0_ = NULL;
#line 368 "gxml-performance.vala"
		g_assert_not_reached ();
#line 335 "gxml-performance.vala"
		_g_error_free0 (e);
#line 5321 "gxml-performance.c"
	}
	__finally232:
#line 335 "gxml-performance.vala"
	if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 335 "gxml-performance.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
#line 335 "gxml-performance.vala"
		g_clear_error (&_inner_error0_);
#line 335 "gxml-performance.vala"
		return;
#line 5332 "gxml-performance.c"
	}
}

static void
___lambda174__gtest_func (void)
{
#line 333 "gxml-performance.vala"
	__lambda174_ ();
#line 5341 "gxml-performance.c"
}

static void
__lambda175_ (void)
{
	GError* _inner_error0_ = NULL;
	{
		gdouble time = 0.0;
		GFile* f = NULL;
		GFile* _tmp0_;
		GFile* _tmp1_;
		GXmlGDocument* d = NULL;
		GXmlGDocument* _tmp2_;
		GXmlGDocument* _tmp3_;
		GFile* _tmp4_;
		BookStore* bs = NULL;
		BookStore* _tmp7_;
		BookStore* _tmp8_;
		GXmlGDocument* _tmp9_;
		GXmlGDocument* d2 = NULL;
		GXmlGDocument* _tmp12_;
		BookStore* _tmp13_;
		GXmlGDocument* _tmp14_;
		GXmlNode* _tmp15_;
		GXmlNode* _tmp16_;
		GFile* nf = NULL;
		GFile* _tmp19_;
		GXmlGDocument* _tmp20_;
		GXmlGDocument* _tmp21_;
		GFile* _tmp22_;
		GFile* _tmp25_;
		GFile* _tmp26_;
#line 376 "gxml-performance.vala"
		g_test_timer_start ();
#line 377 "gxml-performance.vala"
		_tmp0_ = g_file_new_for_path (TEST_DIR "/test-large.xml");
#line 377 "gxml-performance.vala"
		f = _tmp0_;
#line 378 "gxml-performance.vala"
		_tmp1_ = f;
#line 378 "gxml-performance.vala"
		_vala_assert (g_file_query_exists (_tmp1_, NULL), "f.query_exists ()");
#line 379 "gxml-performance.vala"
		_tmp2_ = gxml_gdocument_new ();
#line 379 "gxml-performance.vala"
		d = _tmp2_;
#line 380 "gxml-performance.vala"
		_tmp3_ = d;
#line 380 "gxml-performance.vala"
		_tmp4_ = f;
#line 380 "gxml-performance.vala"
		gxml_tdocument_read_doc ((GXmlDocument*) _tmp3_, _tmp4_, NULL, NULL, &_inner_error0_);
#line 380 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 380 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 380 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 5400 "gxml-performance.c"
			goto __catch233_g_error;
		}
#line 381 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 382 "gxml-performance.vala"
		g_test_minimized_result (time, "GDocument open document from path: %g seconds", time);
#line 383 "gxml-performance.vala"
		g_test_message ("Starting Deserializing...");
#line 5409 "gxml-performance.c"
		{
			gint i = 0;
#line 384 "gxml-performance.vala"
			i = 0;
#line 5414 "gxml-performance.c"
			{
				gboolean _tmp5_ = FALSE;
#line 384 "gxml-performance.vala"
				_tmp5_ = TRUE;
#line 384 "gxml-performance.vala"
				while (TRUE) {
#line 384 "gxml-performance.vala"
					if (!_tmp5_) {
#line 5423 "gxml-performance.c"
						gint _tmp6_;
#line 384 "gxml-performance.vala"
						_tmp6_ = i;
#line 384 "gxml-performance.vala"
						i = _tmp6_ + 1;
#line 5429 "gxml-performance.c"
					}
#line 384 "gxml-performance.vala"
					_tmp5_ = FALSE;
#line 384 "gxml-performance.vala"
					if (!(i < 1000000)) {
#line 384 "gxml-performance.vala"
						break;
#line 5437 "gxml-performance.c"
					}
				}
			}
		}
#line 385 "gxml-performance.vala"
		g_test_timer_start ();
#line 386 "gxml-performance.vala"
		_tmp7_ = book_store_new ();
#line 386 "gxml-performance.vala"
		bs = _tmp7_;
#line 387 "gxml-performance.vala"
		_tmp8_ = bs;
#line 387 "gxml-performance.vala"
		_tmp9_ = d;
#line 387 "gxml-performance.vala"
		gxml_serializable_object_model_deserialize ((GXmlSerializableObjectModel*) _tmp8_, (GXmlNode*) _tmp9_, &_inner_error0_);
#line 387 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 387 "gxml-performance.vala"
			_g_object_unref0 (bs);
#line 387 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 387 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 5462 "gxml-performance.c"
			goto __catch233_g_error;
		}
#line 388 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 389 "gxml-performance.vala"
		g_test_minimized_result (time, "GDocument deserialize/performance: %g seconds", time);
#line 5469 "gxml-performance.c"
		{
			gint i = 0;
#line 390 "gxml-performance.vala"
			i = 0;
#line 5474 "gxml-performance.c"
			{
				gboolean _tmp10_ = FALSE;
#line 390 "gxml-performance.vala"
				_tmp10_ = TRUE;
#line 390 "gxml-performance.vala"
				while (TRUE) {
#line 390 "gxml-performance.vala"
					if (!_tmp10_) {
#line 5483 "gxml-performance.c"
						gint _tmp11_;
#line 390 "gxml-performance.vala"
						_tmp11_ = i;
#line 390 "gxml-performance.vala"
						i = _tmp11_ + 1;
#line 5489 "gxml-performance.c"
					}
#line 390 "gxml-performance.vala"
					_tmp10_ = FALSE;
#line 390 "gxml-performance.vala"
					if (!(i < 1000000)) {
#line 390 "gxml-performance.vala"
						break;
#line 5497 "gxml-performance.c"
					}
				}
			}
		}
#line 391 "gxml-performance.vala"
		g_test_timer_start ();
#line 392 "gxml-performance.vala"
		_tmp12_ = gxml_gdocument_new ();
#line 392 "gxml-performance.vala"
		d2 = _tmp12_;
#line 393 "gxml-performance.vala"
		_tmp13_ = bs;
#line 393 "gxml-performance.vala"
		_tmp14_ = d2;
#line 393 "gxml-performance.vala"
		_tmp15_ = gxml_serializable_object_model_serialize ((GXmlSerializableObjectModel*) _tmp13_, (GXmlNode*) _tmp14_, &_inner_error0_);
#line 393 "gxml-performance.vala"
		_tmp16_ = _tmp15_;
#line 393 "gxml-performance.vala"
		_g_object_unref0 (_tmp16_);
#line 393 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 393 "gxml-performance.vala"
			_g_object_unref0 (d2);
#line 393 "gxml-performance.vala"
			_g_object_unref0 (bs);
#line 393 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 393 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 5528 "gxml-performance.c"
			goto __catch233_g_error;
		}
#line 394 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 395 "gxml-performance.vala"
		g_test_minimized_result (time, "GDocument serialize/performance: %g seconds", time);
#line 5535 "gxml-performance.c"
		{
			gint i = 0;
#line 396 "gxml-performance.vala"
			i = 0;
#line 5540 "gxml-performance.c"
			{
				gboolean _tmp17_ = FALSE;
#line 396 "gxml-performance.vala"
				_tmp17_ = TRUE;
#line 396 "gxml-performance.vala"
				while (TRUE) {
#line 396 "gxml-performance.vala"
					if (!_tmp17_) {
#line 5549 "gxml-performance.c"
						gint _tmp18_;
#line 396 "gxml-performance.vala"
						_tmp18_ = i;
#line 396 "gxml-performance.vala"
						i = _tmp18_ + 1;
#line 5555 "gxml-performance.c"
					}
#line 396 "gxml-performance.vala"
					_tmp17_ = FALSE;
#line 396 "gxml-performance.vala"
					if (!(i < 1000000)) {
#line 396 "gxml-performance.vala"
						break;
#line 5563 "gxml-performance.c"
					}
				}
			}
		}
#line 397 "gxml-performance.vala"
		g_test_timer_start ();
#line 398 "gxml-performance.vala"
		_tmp19_ = g_file_new_for_path (TEST_DIR "/test-large-tw.xml");
#line 398 "gxml-performance.vala"
		nf = _tmp19_;
#line 399 "gxml-performance.vala"
		_tmp20_ = d2;
#line 399 "gxml-performance.vala"
		gxml_document_set_indent ((GXmlDocument*) _tmp20_, TRUE);
#line 400 "gxml-performance.vala"
		_tmp21_ = d2;
#line 400 "gxml-performance.vala"
		_tmp22_ = nf;
#line 400 "gxml-performance.vala"
		gxml_gdocument_save_as (_tmp21_, _tmp22_, NULL, &_inner_error0_);
#line 400 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 400 "gxml-performance.vala"
			_g_object_unref0 (nf);
#line 400 "gxml-performance.vala"
			_g_object_unref0 (d2);
#line 400 "gxml-performance.vala"
			_g_object_unref0 (bs);
#line 400 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 400 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 5596 "gxml-performance.c"
			goto __catch233_g_error;
		}
#line 401 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 402 "gxml-performance.vala"
		g_test_minimized_result (time, "GDocument Write to disk serialize/performance: %g seconds", time);
#line 5603 "gxml-performance.c"
		{
			gint i = 0;
#line 403 "gxml-performance.vala"
			i = 0;
#line 5608 "gxml-performance.c"
			{
				gboolean _tmp23_ = FALSE;
#line 403 "gxml-performance.vala"
				_tmp23_ = TRUE;
#line 403 "gxml-performance.vala"
				while (TRUE) {
#line 403 "gxml-performance.vala"
					if (!_tmp23_) {
#line 5617 "gxml-performance.c"
						gint _tmp24_;
#line 403 "gxml-performance.vala"
						_tmp24_ = i;
#line 403 "gxml-performance.vala"
						i = _tmp24_ + 1;
#line 5623 "gxml-performance.c"
					}
#line 403 "gxml-performance.vala"
					_tmp23_ = FALSE;
#line 403 "gxml-performance.vala"
					if (!(i < 1000000)) {
#line 403 "gxml-performance.vala"
						break;
#line 5631 "gxml-performance.c"
					}
				}
			}
		}
#line 404 "gxml-performance.vala"
		_tmp25_ = nf;
#line 404 "gxml-performance.vala"
		_vala_assert (g_file_query_exists (_tmp25_, NULL), "nf.query_exists ()");
#line 405 "gxml-performance.vala"
		_tmp26_ = nf;
#line 405 "gxml-performance.vala"
		g_file_delete (_tmp26_, NULL, &_inner_error0_);
#line 405 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 405 "gxml-performance.vala"
			_g_object_unref0 (nf);
#line 405 "gxml-performance.vala"
			_g_object_unref0 (d2);
#line 405 "gxml-performance.vala"
			_g_object_unref0 (bs);
#line 405 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 405 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 5656 "gxml-performance.c"
			goto __catch233_g_error;
		}
#line 374 "gxml-performance.vala"
		_g_object_unref0 (nf);
#line 374 "gxml-performance.vala"
		_g_object_unref0 (d2);
#line 374 "gxml-performance.vala"
		_g_object_unref0 (bs);
#line 374 "gxml-performance.vala"
		_g_object_unref0 (d);
#line 374 "gxml-performance.vala"
		_g_object_unref0 (f);
#line 5669 "gxml-performance.c"
	}
	goto __finally233;
	__catch233_g_error:
	{
		GError* e = NULL;
#line 374 "gxml-performance.vala"
		e = _inner_error0_;
#line 374 "gxml-performance.vala"
		_inner_error0_ = NULL;
#line 410 "gxml-performance.vala"
		g_assert_not_reached ();
#line 374 "gxml-performance.vala"
		_g_error_free0 (e);
#line 5683 "gxml-performance.c"
	}
	__finally233:
#line 374 "gxml-performance.vala"
	if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 374 "gxml-performance.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
#line 374 "gxml-performance.vala"
		g_clear_error (&_inner_error0_);
#line 374 "gxml-performance.vala"
		return;
#line 5694 "gxml-performance.c"
	}
}

static void
___lambda175__gtest_func (void)
{
#line 372 "gxml-performance.vala"
	__lambda175_ ();
#line 5703 "gxml-performance.c"
}

static void
__lambda176_ (void)
{
	GError* _inner_error0_ = NULL;
	{
		gdouble time = 0.0;
		GXmlTDocument* d = NULL;
		GXmlTDocument* _tmp0_;
		BookStore* bs = NULL;
		BookStore* _tmp3_;
		BookStore* _tmp4_;
		GXmlTDocument* _tmp5_;
		GXmlTDocument* d2 = NULL;
		GXmlTDocument* _tmp8_;
		BookStore* _tmp9_;
		GXmlTDocument* _tmp10_;
		GXmlNode* _tmp11_;
		GXmlNode* _tmp12_;
		GFile* nf = NULL;
		GFile* _tmp15_;
		GXmlTDocument* _tmp16_;
		GXmlTDocument* _tmp17_;
		GFile* _tmp18_;
		GFile* _tmp21_;
		GFile* _tmp22_;
#line 417 "gxml-performance.vala"
		g_test_timer_start ();
#line 418 "gxml-performance.vala"
		_tmp0_ = gxml_tdocument_new_from_path (TEST_DIR "/test-large.xml");
#line 418 "gxml-performance.vala"
		d = _tmp0_;
#line 419 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 420 "gxml-performance.vala"
		g_test_minimized_result (time, "TDocument open document from path: %g seconds", time);
#line 421 "gxml-performance.vala"
		g_test_message ("Starting Deserializing...");
#line 5743 "gxml-performance.c"
		{
			gint i = 0;
#line 422 "gxml-performance.vala"
			i = 0;
#line 5748 "gxml-performance.c"
			{
				gboolean _tmp1_ = FALSE;
#line 422 "gxml-performance.vala"
				_tmp1_ = TRUE;
#line 422 "gxml-performance.vala"
				while (TRUE) {
#line 422 "gxml-performance.vala"
					if (!_tmp1_) {
#line 5757 "gxml-performance.c"
						gint _tmp2_;
#line 422 "gxml-performance.vala"
						_tmp2_ = i;
#line 422 "gxml-performance.vala"
						i = _tmp2_ + 1;
#line 5763 "gxml-performance.c"
					}
#line 422 "gxml-performance.vala"
					_tmp1_ = FALSE;
#line 422 "gxml-performance.vala"
					if (!(i < 1000000)) {
#line 422 "gxml-performance.vala"
						break;
#line 5771 "gxml-performance.c"
					}
				}
			}
		}
#line 423 "gxml-performance.vala"
		g_test_timer_start ();
#line 424 "gxml-performance.vala"
		_tmp3_ = book_store_new ();
#line 424 "gxml-performance.vala"
		bs = _tmp3_;
#line 425 "gxml-performance.vala"
		_tmp4_ = bs;
#line 425 "gxml-performance.vala"
		_tmp5_ = d;
#line 425 "gxml-performance.vala"
		gxml_serializable_object_model_deserialize ((GXmlSerializableObjectModel*) _tmp4_, (GXmlNode*) _tmp5_, &_inner_error0_);
#line 425 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 425 "gxml-performance.vala"
			_g_object_unref0 (bs);
#line 425 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 5794 "gxml-performance.c"
			goto __catch234_g_error;
		}
#line 426 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 427 "gxml-performance.vala"
		g_test_minimized_result (time, "TDocument deserialize performance: %g seconds", time);
#line 5801 "gxml-performance.c"
		{
			gint i = 0;
#line 428 "gxml-performance.vala"
			i = 0;
#line 5806 "gxml-performance.c"
			{
				gboolean _tmp6_ = FALSE;
#line 428 "gxml-performance.vala"
				_tmp6_ = TRUE;
#line 428 "gxml-performance.vala"
				while (TRUE) {
#line 428 "gxml-performance.vala"
					if (!_tmp6_) {
#line 5815 "gxml-performance.c"
						gint _tmp7_;
#line 428 "gxml-performance.vala"
						_tmp7_ = i;
#line 428 "gxml-performance.vala"
						i = _tmp7_ + 1;
#line 5821 "gxml-performance.c"
					}
#line 428 "gxml-performance.vala"
					_tmp6_ = FALSE;
#line 428 "gxml-performance.vala"
					if (!(i < 1000000)) {
#line 428 "gxml-performance.vala"
						break;
#line 5829 "gxml-performance.c"
					}
				}
			}
		}
#line 429 "gxml-performance.vala"
		g_test_timer_start ();
#line 430 "gxml-performance.vala"
		_tmp8_ = gxml_tdocument_new ();
#line 430 "gxml-performance.vala"
		d2 = _tmp8_;
#line 431 "gxml-performance.vala"
		_tmp9_ = bs;
#line 431 "gxml-performance.vala"
		_tmp10_ = d2;
#line 431 "gxml-performance.vala"
		_tmp11_ = gxml_serializable_object_model_serialize ((GXmlSerializableObjectModel*) _tmp9_, (GXmlNode*) _tmp10_, &_inner_error0_);
#line 431 "gxml-performance.vala"
		_tmp12_ = _tmp11_;
#line 431 "gxml-performance.vala"
		_g_object_unref0 (_tmp12_);
#line 431 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 431 "gxml-performance.vala"
			_g_object_unref0 (d2);
#line 431 "gxml-performance.vala"
			_g_object_unref0 (bs);
#line 431 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 5858 "gxml-performance.c"
			goto __catch234_g_error;
		}
#line 432 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 433 "gxml-performance.vala"
		g_test_minimized_result (time, "TDocument serialize performance: %g seconds", time);
#line 5865 "gxml-performance.c"
		{
			gint i = 0;
#line 434 "gxml-performance.vala"
			i = 0;
#line 5870 "gxml-performance.c"
			{
				gboolean _tmp13_ = FALSE;
#line 434 "gxml-performance.vala"
				_tmp13_ = TRUE;
#line 434 "gxml-performance.vala"
				while (TRUE) {
#line 434 "gxml-performance.vala"
					if (!_tmp13_) {
#line 5879 "gxml-performance.c"
						gint _tmp14_;
#line 434 "gxml-performance.vala"
						_tmp14_ = i;
#line 434 "gxml-performance.vala"
						i = _tmp14_ + 1;
#line 5885 "gxml-performance.c"
					}
#line 434 "gxml-performance.vala"
					_tmp13_ = FALSE;
#line 434 "gxml-performance.vala"
					if (!(i < 1000000)) {
#line 434 "gxml-performance.vala"
						break;
#line 5893 "gxml-performance.c"
					}
				}
			}
		}
#line 435 "gxml-performance.vala"
		g_test_timer_start ();
#line 436 "gxml-performance.vala"
		_tmp15_ = g_file_new_for_path (TEST_DIR "/test-large-tw.xml");
#line 436 "gxml-performance.vala"
		nf = _tmp15_;
#line 437 "gxml-performance.vala"
		_tmp16_ = d2;
#line 437 "gxml-performance.vala"
		gxml_document_set_indent ((GXmlDocument*) _tmp16_, TRUE);
#line 438 "gxml-performance.vala"
		_tmp17_ = d2;
#line 438 "gxml-performance.vala"
		_tmp18_ = nf;
#line 438 "gxml-performance.vala"
		gxml_document_save_as ((GXmlDocument*) _tmp17_, _tmp18_, NULL, &_inner_error0_);
#line 438 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 438 "gxml-performance.vala"
			_g_object_unref0 (nf);
#line 438 "gxml-performance.vala"
			_g_object_unref0 (d2);
#line 438 "gxml-performance.vala"
			_g_object_unref0 (bs);
#line 438 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 5924 "gxml-performance.c"
			goto __catch234_g_error;
		}
#line 439 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 440 "gxml-performance.vala"
		g_test_minimized_result (time, "TDocument Write to disk serialize/performance: %g seconds", time);
#line 5931 "gxml-performance.c"
		{
			gint i = 0;
#line 441 "gxml-performance.vala"
			i = 0;
#line 5936 "gxml-performance.c"
			{
				gboolean _tmp19_ = FALSE;
#line 441 "gxml-performance.vala"
				_tmp19_ = TRUE;
#line 441 "gxml-performance.vala"
				while (TRUE) {
#line 441 "gxml-performance.vala"
					if (!_tmp19_) {
#line 5945 "gxml-performance.c"
						gint _tmp20_;
#line 441 "gxml-performance.vala"
						_tmp20_ = i;
#line 441 "gxml-performance.vala"
						i = _tmp20_ + 1;
#line 5951 "gxml-performance.c"
					}
#line 441 "gxml-performance.vala"
					_tmp19_ = FALSE;
#line 441 "gxml-performance.vala"
					if (!(i < 1000000)) {
#line 441 "gxml-performance.vala"
						break;
#line 5959 "gxml-performance.c"
					}
				}
			}
		}
#line 442 "gxml-performance.vala"
		_tmp21_ = nf;
#line 442 "gxml-performance.vala"
		_vala_assert (g_file_query_exists (_tmp21_, NULL), "nf.query_exists ()");
#line 443 "gxml-performance.vala"
		_tmp22_ = nf;
#line 443 "gxml-performance.vala"
		g_file_delete (_tmp22_, NULL, &_inner_error0_);
#line 443 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 443 "gxml-performance.vala"
			_g_object_unref0 (nf);
#line 443 "gxml-performance.vala"
			_g_object_unref0 (d2);
#line 443 "gxml-performance.vala"
			_g_object_unref0 (bs);
#line 443 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 5982 "gxml-performance.c"
			goto __catch234_g_error;
		}
#line 415 "gxml-performance.vala"
		_g_object_unref0 (nf);
#line 415 "gxml-performance.vala"
		_g_object_unref0 (d2);
#line 415 "gxml-performance.vala"
		_g_object_unref0 (bs);
#line 415 "gxml-performance.vala"
		_g_object_unref0 (d);
#line 5993 "gxml-performance.c"
	}
	goto __finally234;
	__catch234_g_error:
	{
		GError* e = NULL;
#line 415 "gxml-performance.vala"
		e = _inner_error0_;
#line 415 "gxml-performance.vala"
		_inner_error0_ = NULL;
#line 448 "gxml-performance.vala"
		g_assert_not_reached ();
#line 415 "gxml-performance.vala"
		_g_error_free0 (e);
#line 6007 "gxml-performance.c"
	}
	__finally234:
#line 415 "gxml-performance.vala"
	if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 415 "gxml-performance.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
#line 415 "gxml-performance.vala"
		g_clear_error (&_inner_error0_);
#line 415 "gxml-performance.vala"
		return;
#line 6018 "gxml-performance.c"
	}
}

static void
___lambda176__gtest_func (void)
{
#line 413 "gxml-performance.vala"
	__lambda176_ ();
#line 6027 "gxml-performance.c"
}

static void
__lambda177_ (void)
{
	GError* _inner_error0_ = NULL;
	{
		gdouble time = 0.0;
		GXmlTDocument* d = NULL;
		GXmlTDocument* _tmp0_;
		PerformanceCElement* ce = NULL;
		PerformanceCElement* _tmp1_;
		PerformanceCElement* _tmp9_;
		GXmlTDocument* _tmp10_;
		GXmlNode* _tmp11_;
		GXmlNode* _tmp12_;
		PerformanceCElement* cep = NULL;
		PerformanceCElement* _tmp13_;
		PerformanceCElement* _tmp14_;
		PerformanceAElementArray* _tmp15_;
		PerformanceAElementArray* _tmp16_;
		PerformanceCElement* _tmp17_;
		GXmlTDocument* _tmp18_;
		PerformanceCElement* _tmp19_;
		PerformanceAElementArray* _tmp20_;
		PerformanceAElementArray* _tmp21_;
		gboolean _tmp22_ = FALSE;
		PerformanceCElement* _tmp23_;
		PerformanceAElementArray* _tmp24_;
		PerformanceAElementArray* _tmp25_;
#line 455 "gxml-performance.vala"
		g_test_message ("Starting generating document...");
#line 456 "gxml-performance.vala"
		g_test_timer_start ();
#line 457 "gxml-performance.vala"
		_tmp0_ = gxml_tdocument_new ();
#line 457 "gxml-performance.vala"
		d = _tmp0_;
#line 458 "gxml-performance.vala"
		_tmp1_ = performance_celement_new ();
#line 458 "gxml-performance.vala"
		ce = _tmp1_;
#line 6070 "gxml-performance.c"
		{
			gint i = 0;
#line 459 "gxml-performance.vala"
			i = 0;
#line 6075 "gxml-performance.c"
			{
				gboolean _tmp2_ = FALSE;
#line 459 "gxml-performance.vala"
				_tmp2_ = TRUE;
#line 459 "gxml-performance.vala"
				while (TRUE) {
#line 6082 "gxml-performance.c"
					PerformanceAElement* e = NULL;
					PerformanceAElement* _tmp4_;
					PerformanceCElement* _tmp5_;
					PerformanceAElementArray* _tmp6_;
					PerformanceAElementArray* _tmp7_;
					PerformanceAElement* _tmp8_;
#line 459 "gxml-performance.vala"
					if (!_tmp2_) {
#line 6091 "gxml-performance.c"
						gint _tmp3_;
#line 459 "gxml-performance.vala"
						_tmp3_ = i;
#line 459 "gxml-performance.vala"
						i = _tmp3_ + 1;
#line 6097 "gxml-performance.c"
					}
#line 459 "gxml-performance.vala"
					_tmp2_ = FALSE;
#line 459 "gxml-performance.vala"
					if (!(i < 500000)) {
#line 459 "gxml-performance.vala"
						break;
#line 6105 "gxml-performance.c"
					}
#line 460 "gxml-performance.vala"
					_tmp4_ = performance_aelement_new ();
#line 460 "gxml-performance.vala"
					e = _tmp4_;
#line 461 "gxml-performance.vala"
					_tmp5_ = ce;
#line 461 "gxml-performance.vala"
					_tmp6_ = performance_celement_get_elements (_tmp5_);
#line 461 "gxml-performance.vala"
					_tmp7_ = _tmp6_;
#line 461 "gxml-performance.vala"
					_tmp8_ = e;
#line 461 "gxml-performance.vala"
					gee_abstract_collection_add ((GeeAbstractCollection*) _tmp7_, _tmp8_);
#line 459 "gxml-performance.vala"
					_g_object_unref0 (e);
#line 6123 "gxml-performance.c"
				}
			}
		}
#line 463 "gxml-performance.vala"
		_tmp9_ = ce;
#line 463 "gxml-performance.vala"
		_tmp10_ = d;
#line 463 "gxml-performance.vala"
		_tmp11_ = gxml_serializable_object_model_serialize ((GXmlSerializableObjectModel*) _tmp9_, (GXmlNode*) _tmp10_, &_inner_error0_);
#line 463 "gxml-performance.vala"
		_tmp12_ = _tmp11_;
#line 463 "gxml-performance.vala"
		_g_object_unref0 (_tmp12_);
#line 463 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 463 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 463 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 6143 "gxml-performance.c"
			goto __catch235_g_error;
		}
#line 464 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 465 "gxml-performance.vala"
		g_test_minimized_result (time, "Created document: %g seconds", time);
#line 466 "gxml-performance.vala"
		g_test_message ("Starting deserializing document: Disable collection deserialization...");
#line 467 "gxml-performance.vala"
		g_test_timer_start ();
#line 468 "gxml-performance.vala"
		_tmp13_ = performance_celement_new ();
#line 468 "gxml-performance.vala"
		cep = _tmp13_;
#line 469 "gxml-performance.vala"
		_tmp14_ = cep;
#line 469 "gxml-performance.vala"
		_tmp15_ = performance_celement_get_elements (_tmp14_);
#line 469 "gxml-performance.vala"
		_tmp16_ = _tmp15_;
#line 469 "gxml-performance.vala"
		performance_aelement_array_set_enable_deserialize (_tmp16_, FALSE);
#line 470 "gxml-performance.vala"
		_tmp17_ = cep;
#line 470 "gxml-performance.vala"
		_tmp18_ = d;
#line 470 "gxml-performance.vala"
		gxml_serializable_object_model_deserialize ((GXmlSerializableObjectModel*) _tmp17_, (GXmlNode*) _tmp18_, &_inner_error0_);
#line 470 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 470 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 470 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 470 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 6180 "gxml-performance.c"
			goto __catch235_g_error;
		}
#line 471 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 472 "gxml-performance.vala"
		g_test_minimized_result (time, "Disable Deserialize Collection. Deserialized from doc: %g seconds", time);
#line 473 "gxml-performance.vala"
		g_test_message ("Calling deserialize_children()...");
#line 474 "gxml-performance.vala"
		g_test_timer_start ();
#line 475 "gxml-performance.vala"
		_tmp19_ = cep;
#line 475 "gxml-performance.vala"
		_tmp20_ = performance_celement_get_elements (_tmp19_);
#line 475 "gxml-performance.vala"
		_tmp21_ = _tmp20_;
#line 475 "gxml-performance.vala"
		gxml_serializable_array_list_deserialize_children ((GXmlSerializableArrayList*) _tmp21_, &_inner_error0_);
#line 475 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 475 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 475 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 475 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 6207 "gxml-performance.c"
			goto __catch235_g_error;
		}
#line 476 "gxml-performance.vala"
		_tmp23_ = cep;
#line 476 "gxml-performance.vala"
		_tmp24_ = performance_celement_get_elements (_tmp23_);
#line 476 "gxml-performance.vala"
		_tmp25_ = _tmp24_;
#line 476 "gxml-performance.vala"
		_tmp22_ = gxml_serializable_array_list_deserialize_children ((GXmlSerializableArrayList*) _tmp25_, &_inner_error0_);
#line 476 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 476 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 476 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 476 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 6226 "gxml-performance.c"
			goto __catch235_g_error;
		}
#line 476 "gxml-performance.vala"
		_vala_assert (!_tmp22_, "!cep.elements.deserialize_children ()");
#line 477 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 478 "gxml-performance.vala"
		g_test_minimized_result (time, "Disable Deserialize Collection. Deserialized from NODE: %g seconds", time);
#line 453 "gxml-performance.vala"
		_g_object_unref0 (cep);
#line 453 "gxml-performance.vala"
		_g_object_unref0 (ce);
#line 453 "gxml-performance.vala"
		_g_object_unref0 (d);
#line 6241 "gxml-performance.c"
	}
	goto __finally235;
	__catch235_g_error:
	{
		GError* e = NULL;
		const gchar* _tmp26_;
		gchar* _tmp27_;
		gchar* _tmp28_;
#line 453 "gxml-performance.vala"
		e = _inner_error0_;
#line 453 "gxml-performance.vala"
		_inner_error0_ = NULL;
#line 480 "gxml-performance.vala"
		_tmp26_ = e->message;
#line 480 "gxml-performance.vala"
		_tmp27_ = g_strconcat ("ERROR: ", _tmp26_, NULL);
#line 480 "gxml-performance.vala"
		_tmp28_ = _tmp27_;
#line 480 "gxml-performance.vala"
		g_message ("gxml-performance.vala:480: %s", _tmp28_);
#line 480 "gxml-performance.vala"
		_g_free0 (_tmp28_);
#line 481 "gxml-performance.vala"
		g_assert_not_reached ();
#line 453 "gxml-performance.vala"
		_g_error_free0 (e);
#line 6268 "gxml-performance.c"
	}
	__finally235:
#line 453 "gxml-performance.vala"
	if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 453 "gxml-performance.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
#line 453 "gxml-performance.vala"
		g_clear_error (&_inner_error0_);
#line 453 "gxml-performance.vala"
		return;
#line 6279 "gxml-performance.c"
	}
}

static void
___lambda177__gtest_func (void)
{
#line 451 "gxml-performance.vala"
	__lambda177_ ();
#line 6288 "gxml-performance.c"
}

static void
__lambda178_ (void)
{
	GError* _inner_error0_ = NULL;
	{
		gdouble time = 0.0;
		GXmlTDocument* d = NULL;
		GXmlTDocument* _tmp0_;
		PerformanceCElement* ce = NULL;
		PerformanceCElement* _tmp1_;
		PerformanceCElement* _tmp9_;
		GXmlTDocument* _tmp10_;
		GXmlNode* _tmp11_;
		GXmlNode* _tmp12_;
		PerformanceCElement* cet = NULL;
		PerformanceCElement* _tmp13_;
		PerformanceCElement* _tmp14_;
		PerformanceAElementArray* _tmp15_;
		PerformanceAElementArray* _tmp16_;
		PerformanceCElement* _tmp17_;
		GXmlTDocument* _tmp18_;
#line 488 "gxml-performance.vala"
		g_test_message ("Starting generating document...");
#line 489 "gxml-performance.vala"
		g_test_timer_start ();
#line 490 "gxml-performance.vala"
		_tmp0_ = gxml_tdocument_new ();
#line 490 "gxml-performance.vala"
		d = _tmp0_;
#line 491 "gxml-performance.vala"
		_tmp1_ = performance_celement_new ();
#line 491 "gxml-performance.vala"
		ce = _tmp1_;
#line 6324 "gxml-performance.c"
		{
			gint i = 0;
#line 492 "gxml-performance.vala"
			i = 0;
#line 6329 "gxml-performance.c"
			{
				gboolean _tmp2_ = FALSE;
#line 492 "gxml-performance.vala"
				_tmp2_ = TRUE;
#line 492 "gxml-performance.vala"
				while (TRUE) {
#line 6336 "gxml-performance.c"
					PerformanceAElement* e = NULL;
					PerformanceAElement* _tmp4_;
					PerformanceCElement* _tmp5_;
					PerformanceAElementArray* _tmp6_;
					PerformanceAElementArray* _tmp7_;
					PerformanceAElement* _tmp8_;
#line 492 "gxml-performance.vala"
					if (!_tmp2_) {
#line 6345 "gxml-performance.c"
						gint _tmp3_;
#line 492 "gxml-performance.vala"
						_tmp3_ = i;
#line 492 "gxml-performance.vala"
						i = _tmp3_ + 1;
#line 6351 "gxml-performance.c"
					}
#line 492 "gxml-performance.vala"
					_tmp2_ = FALSE;
#line 492 "gxml-performance.vala"
					if (!(i < 500000)) {
#line 492 "gxml-performance.vala"
						break;
#line 6359 "gxml-performance.c"
					}
#line 493 "gxml-performance.vala"
					_tmp4_ = performance_aelement_new ();
#line 493 "gxml-performance.vala"
					e = _tmp4_;
#line 494 "gxml-performance.vala"
					_tmp5_ = ce;
#line 494 "gxml-performance.vala"
					_tmp6_ = performance_celement_get_elements (_tmp5_);
#line 494 "gxml-performance.vala"
					_tmp7_ = _tmp6_;
#line 494 "gxml-performance.vala"
					_tmp8_ = e;
#line 494 "gxml-performance.vala"
					gee_abstract_collection_add ((GeeAbstractCollection*) _tmp7_, _tmp8_);
#line 492 "gxml-performance.vala"
					_g_object_unref0 (e);
#line 6377 "gxml-performance.c"
				}
			}
		}
#line 496 "gxml-performance.vala"
		_tmp9_ = ce;
#line 496 "gxml-performance.vala"
		_tmp10_ = d;
#line 496 "gxml-performance.vala"
		_tmp11_ = gxml_serializable_object_model_serialize ((GXmlSerializableObjectModel*) _tmp9_, (GXmlNode*) _tmp10_, &_inner_error0_);
#line 496 "gxml-performance.vala"
		_tmp12_ = _tmp11_;
#line 496 "gxml-performance.vala"
		_g_object_unref0 (_tmp12_);
#line 496 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 496 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 496 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 6397 "gxml-performance.c"
			goto __catch236_g_error;
		}
#line 497 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 498 "gxml-performance.vala"
		g_test_minimized_result (time, "Created document: %g seconds", time);
#line 499 "gxml-performance.vala"
		g_test_message ("Starting deserializing document: Enable collection deserialization...");
#line 500 "gxml-performance.vala"
		g_test_timer_start ();
#line 501 "gxml-performance.vala"
		_tmp13_ = performance_celement_new ();
#line 501 "gxml-performance.vala"
		cet = _tmp13_;
#line 502 "gxml-performance.vala"
		_tmp14_ = cet;
#line 502 "gxml-performance.vala"
		_tmp15_ = performance_celement_get_elements (_tmp14_);
#line 502 "gxml-performance.vala"
		_tmp16_ = _tmp15_;
#line 502 "gxml-performance.vala"
		performance_aelement_array_set_enable_deserialize (_tmp16_, TRUE);
#line 503 "gxml-performance.vala"
		_tmp17_ = cet;
#line 503 "gxml-performance.vala"
		_tmp18_ = d;
#line 503 "gxml-performance.vala"
		gxml_serializable_object_model_deserialize ((GXmlSerializableObjectModel*) _tmp17_, (GXmlNode*) _tmp18_, &_inner_error0_);
#line 503 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 503 "gxml-performance.vala"
			_g_object_unref0 (cet);
#line 503 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 503 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 6434 "gxml-performance.c"
			goto __catch236_g_error;
		}
#line 504 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 505 "gxml-performance.vala"
		g_test_minimized_result (time, "Enable Deserialize Collection. Deserialized from doc: %g seconds", time);
#line 486 "gxml-performance.vala"
		_g_object_unref0 (cet);
#line 486 "gxml-performance.vala"
		_g_object_unref0 (ce);
#line 486 "gxml-performance.vala"
		_g_object_unref0 (d);
#line 6447 "gxml-performance.c"
	}
	goto __finally236;
	__catch236_g_error:
	{
		GError* e = NULL;
		const gchar* _tmp19_;
		gchar* _tmp20_;
		gchar* _tmp21_;
#line 486 "gxml-performance.vala"
		e = _inner_error0_;
#line 486 "gxml-performance.vala"
		_inner_error0_ = NULL;
#line 507 "gxml-performance.vala"
		_tmp19_ = e->message;
#line 507 "gxml-performance.vala"
		_tmp20_ = g_strconcat ("ERROR: ", _tmp19_, NULL);
#line 507 "gxml-performance.vala"
		_tmp21_ = _tmp20_;
#line 507 "gxml-performance.vala"
		g_message ("gxml-performance.vala:507: %s", _tmp21_);
#line 507 "gxml-performance.vala"
		_g_free0 (_tmp21_);
#line 508 "gxml-performance.vala"
		g_assert_not_reached ();
#line 486 "gxml-performance.vala"
		_g_error_free0 (e);
#line 6474 "gxml-performance.c"
	}
	__finally236:
#line 486 "gxml-performance.vala"
	if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 486 "gxml-performance.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
#line 486 "gxml-performance.vala"
		g_clear_error (&_inner_error0_);
#line 486 "gxml-performance.vala"
		return;
#line 6485 "gxml-performance.c"
	}
}

static void
___lambda178__gtest_func (void)
{
#line 484 "gxml-performance.vala"
	__lambda178_ ();
#line 6494 "gxml-performance.c"
}

static void
__lambda179_ (void)
{
	GError* _inner_error0_ = NULL;
	{
		gdouble time = 0.0;
		GXmlTDocument* d = NULL;
		GXmlTDocument* _tmp0_;
		PerformanceHTopElement* ce = NULL;
		PerformanceHTopElement* _tmp1_;
		PerformanceHTopElement* _tmp34_;
		PerformanceHcpElement* _tmp35_;
		PerformanceHcpElement* _tmp36_;
		PerformanceHElementHashMap* _tmp37_;
		PerformanceHElementHashMap* _tmp38_;
		gint _tmp39_;
		gint _tmp40_;
		PerformanceHTopElement* _tmp41_;
		PerformanceHcsElement* _tmp42_;
		PerformanceHcsElement* _tmp43_;
		PerformanceHElementHashMap* _tmp44_;
		PerformanceHElementHashMap* _tmp45_;
		gint _tmp46_;
		gint _tmp47_;
		PerformanceHTopElement* _tmp48_;
		GXmlTDocument* _tmp49_;
		GXmlNode* _tmp50_;
		GXmlNode* _tmp51_;
		GXmlTDocument* _tmp52_;
		GXmlNode* _tmp53_;
		GXmlNode* _tmp54_;
		GXmlNode* _tmp55_;
		GXmlTDocument* _tmp56_;
		GXmlNode* _tmp57_;
		GXmlNode* _tmp58_;
		GXmlNode* _tmp59_;
		GeeBidirList* _tmp60_;
		GeeBidirList* _tmp61_;
		GeeBidirList* _tmp62_;
		gint _tmp63_;
		gint _tmp64_;
		GXmlTDocument* _tmp65_;
		GXmlNode* _tmp66_;
		GXmlNode* _tmp67_;
		GXmlNode* _tmp68_;
		GeeBidirList* _tmp69_;
		GeeBidirList* _tmp70_;
		GeeBidirList* _tmp71_;
		gpointer _tmp72_;
		GXmlNode* _tmp73_;
		GeeBidirList* _tmp74_;
		GeeBidirList* _tmp75_;
		GeeBidirList* _tmp76_;
		gint _tmp77_;
		gint _tmp78_;
		GXmlTDocument* _tmp79_;
		GXmlNode* _tmp80_;
		GXmlNode* _tmp81_;
		GXmlNode* _tmp82_;
		GeeBidirList* _tmp83_;
		GeeBidirList* _tmp84_;
		GeeBidirList* _tmp85_;
		gpointer _tmp86_;
		GXmlNode* _tmp87_;
		GeeBidirList* _tmp88_;
		GeeBidirList* _tmp89_;
		GeeBidirList* _tmp90_;
		gint _tmp91_;
		gint _tmp92_;
		PerformanceHTopElement* cep = NULL;
		PerformanceHTopElement* _tmp93_;
		PerformanceHTopElement* _tmp94_;
		PerformanceHcpElement* _tmp95_;
		PerformanceHcpElement* _tmp96_;
		PerformanceHElementHashMap* _tmp97_;
		PerformanceHElementHashMap* _tmp98_;
		PerformanceHTopElement* _tmp99_;
		PerformanceHcsElement* _tmp100_;
		PerformanceHcsElement* _tmp101_;
		PerformanceHElementHashMap* _tmp102_;
		PerformanceHElementHashMap* _tmp103_;
		PerformanceHTopElement* _tmp104_;
		GXmlTDocument* _tmp105_;
		PerformanceHTopElement* _tmp106_;
		PerformanceHcpElement* _tmp107_;
		PerformanceHcpElement* _tmp108_;
		PerformanceHElementHashMap* _tmp109_;
		PerformanceHElementHashMap* _tmp110_;
		gint _tmp111_;
		gint _tmp112_;
		PerformanceHTopElement* _tmp113_;
		PerformanceHcsElement* _tmp114_;
		PerformanceHcsElement* _tmp115_;
		PerformanceHElementHashMap* _tmp116_;
		PerformanceHElementHashMap* _tmp117_;
		gint _tmp118_;
		gint _tmp119_;
		gboolean _tmp120_ = FALSE;
		PerformanceHTopElement* _tmp121_;
		PerformanceHcpElement* _tmp122_;
		PerformanceHcpElement* _tmp123_;
		PerformanceHElementHashMap* _tmp124_;
		PerformanceHElementHashMap* _tmp125_;
		PerformanceHTopElement* _tmp126_;
		PerformanceHcpElement* _tmp127_;
		PerformanceHcpElement* _tmp128_;
		PerformanceHElementHashMap* _tmp129_;
		PerformanceHElementHashMap* _tmp130_;
		gint _tmp131_;
		gint _tmp132_;
		gboolean _tmp133_ = FALSE;
		PerformanceHTopElement* _tmp134_;
		PerformanceHcpElement* _tmp135_;
		PerformanceHcpElement* _tmp136_;
		PerformanceHElementHashMap* _tmp137_;
		PerformanceHElementHashMap* _tmp138_;
		PerformanceHTopElement* _tmp139_;
		PerformanceHcsElement* _tmp140_;
		PerformanceHcsElement* _tmp141_;
		PerformanceHElementHashMap* _tmp142_;
		PerformanceHElementHashMap* _tmp143_;
		gboolean _tmp144_ = FALSE;
		PerformanceHTopElement* _tmp145_;
		PerformanceHcsElement* _tmp146_;
		PerformanceHcsElement* _tmp147_;
		PerformanceHElementHashMap* _tmp148_;
		PerformanceHElementHashMap* _tmp149_;
#line 515 "gxml-performance.vala"
		g_test_message ("Starting generating document...");
#line 516 "gxml-performance.vala"
		g_test_timer_start ();
#line 517 "gxml-performance.vala"
		_tmp0_ = gxml_tdocument_new ();
#line 517 "gxml-performance.vala"
		d = _tmp0_;
#line 518 "gxml-performance.vala"
		_tmp1_ = performance_htop_element_new ();
#line 518 "gxml-performance.vala"
		ce = _tmp1_;
#line 6636 "gxml-performance.c"
		{
			gint i = 0;
#line 519 "gxml-performance.vala"
			i = 0;
#line 6641 "gxml-performance.c"
			{
				gboolean _tmp2_ = FALSE;
#line 519 "gxml-performance.vala"
				_tmp2_ = TRUE;
#line 519 "gxml-performance.vala"
				while (TRUE) {
#line 6648 "gxml-performance.c"
					PerformanceHElement* e1 = NULL;
					PerformanceHElement* _tmp4_;
					PerformanceHElement* _tmp5_;
					gchar* _tmp6_;
					gchar* _tmp7_;
					gchar* _tmp8_;
					gchar* _tmp9_;
					PerformanceHTopElement* _tmp10_;
					PerformanceHcpElement* _tmp11_;
					PerformanceHcpElement* _tmp12_;
					PerformanceHElementHashMap* _tmp13_;
					PerformanceHElementHashMap* _tmp14_;
					PerformanceHElement* _tmp15_;
					const gchar* _tmp16_;
					const gchar* _tmp17_;
					PerformanceHElement* _tmp18_;
					PerformanceHElement* e2 = NULL;
					PerformanceHElement* _tmp19_;
					PerformanceHElement* _tmp20_;
					gchar* _tmp21_;
					gchar* _tmp22_;
					gchar* _tmp23_;
					gchar* _tmp24_;
					PerformanceHTopElement* _tmp25_;
					PerformanceHcsElement* _tmp26_;
					PerformanceHcsElement* _tmp27_;
					PerformanceHElementHashMap* _tmp28_;
					PerformanceHElementHashMap* _tmp29_;
					PerformanceHElement* _tmp30_;
					const gchar* _tmp31_;
					const gchar* _tmp32_;
					PerformanceHElement* _tmp33_;
#line 519 "gxml-performance.vala"
					if (!_tmp2_) {
#line 6683 "gxml-performance.c"
						gint _tmp3_;
#line 519 "gxml-performance.vala"
						_tmp3_ = i;
#line 519 "gxml-performance.vala"
						i = _tmp3_ + 1;
#line 6689 "gxml-performance.c"
					}
#line 519 "gxml-performance.vala"
					_tmp2_ = FALSE;
#line 519 "gxml-performance.vala"
					if (!(i < 125000)) {
#line 519 "gxml-performance.vala"
						break;
#line 6697 "gxml-performance.c"
					}
#line 520 "gxml-performance.vala"
					_tmp4_ = performance_helement_new ();
#line 520 "gxml-performance.vala"
					e1 = _tmp4_;
#line 521 "gxml-performance.vala"
					_tmp5_ = e1;
#line 521 "gxml-performance.vala"
					_tmp6_ = g_strdup_printf ("%i", i);
#line 521 "gxml-performance.vala"
					_tmp7_ = _tmp6_;
#line 521 "gxml-performance.vala"
					_tmp8_ = g_strconcat ("1E", _tmp7_, NULL);
#line 521 "gxml-performance.vala"
					_tmp9_ = _tmp8_;
#line 521 "gxml-performance.vala"
					performance_helement_set_name (_tmp5_, _tmp9_);
#line 521 "gxml-performance.vala"
					_g_free0 (_tmp9_);
#line 521 "gxml-performance.vala"
					_g_free0 (_tmp7_);
#line 522 "gxml-performance.vala"
					_tmp10_ = ce;
#line 522 "gxml-performance.vala"
					_tmp11_ = performance_htop_element_get_elements1 (_tmp10_);
#line 522 "gxml-performance.vala"
					_tmp12_ = _tmp11_;
#line 522 "gxml-performance.vala"
					_tmp13_ = performance_hcp_element_get_elements (_tmp12_);
#line 522 "gxml-performance.vala"
					_tmp14_ = _tmp13_;
#line 522 "gxml-performance.vala"
					_tmp15_ = e1;
#line 522 "gxml-performance.vala"
					_tmp16_ = performance_helement_get_name (_tmp15_);
#line 522 "gxml-performance.vala"
					_tmp17_ = _tmp16_;
#line 522 "gxml-performance.vala"
					_tmp18_ = e1;
#line 522 "gxml-performance.vala"
					gee_abstract_map_set ((GeeAbstractMap*) _tmp14_, _tmp17_, _tmp18_);
#line 523 "gxml-performance.vala"
					_tmp19_ = performance_helement_new ();
#line 523 "gxml-performance.vala"
					e2 = _tmp19_;
#line 524 "gxml-performance.vala"
					_tmp20_ = e2;
#line 524 "gxml-performance.vala"
					_tmp21_ = g_strdup_printf ("%i", i);
#line 524 "gxml-performance.vala"
					_tmp22_ = _tmp21_;
#line 524 "gxml-performance.vala"
					_tmp23_ = g_strconcat ("2E", _tmp22_, NULL);
#line 524 "gxml-performance.vala"
					_tmp24_ = _tmp23_;
#line 524 "gxml-performance.vala"
					performance_helement_set_name (_tmp20_, _tmp24_);
#line 524 "gxml-performance.vala"
					_g_free0 (_tmp24_);
#line 524 "gxml-performance.vala"
					_g_free0 (_tmp22_);
#line 525 "gxml-performance.vala"
					_tmp25_ = ce;
#line 525 "gxml-performance.vala"
					_tmp26_ = performance_htop_element_get_elements2 (_tmp25_);
#line 525 "gxml-performance.vala"
					_tmp27_ = _tmp26_;
#line 525 "gxml-performance.vala"
					_tmp28_ = performance_hcs_element_get_elements (_tmp27_);
#line 525 "gxml-performance.vala"
					_tmp29_ = _tmp28_;
#line 525 "gxml-performance.vala"
					_tmp30_ = e2;
#line 525 "gxml-performance.vala"
					_tmp31_ = performance_helement_get_name (_tmp30_);
#line 525 "gxml-performance.vala"
					_tmp32_ = _tmp31_;
#line 525 "gxml-performance.vala"
					_tmp33_ = e2;
#line 525 "gxml-performance.vala"
					gee_abstract_map_set ((GeeAbstractMap*) _tmp29_, _tmp32_, _tmp33_);
#line 519 "gxml-performance.vala"
					_g_object_unref0 (e2);
#line 519 "gxml-performance.vala"
					_g_object_unref0 (e1);
#line 6783 "gxml-performance.c"
				}
			}
		}
#line 527 "gxml-performance.vala"
		_tmp34_ = ce;
#line 527 "gxml-performance.vala"
		_tmp35_ = performance_htop_element_get_elements1 (_tmp34_);
#line 527 "gxml-performance.vala"
		_tmp36_ = _tmp35_;
#line 527 "gxml-performance.vala"
		_tmp37_ = performance_hcp_element_get_elements (_tmp36_);
#line 527 "gxml-performance.vala"
		_tmp38_ = _tmp37_;
#line 527 "gxml-performance.vala"
		_tmp39_ = gee_abstract_map_get_size ((GeeAbstractMap*) _tmp38_);
#line 527 "gxml-performance.vala"
		_tmp40_ = _tmp39_;
#line 527 "gxml-performance.vala"
		_vala_assert (_tmp40_ == 125000, "ce.elements1.elements.size == 125000");
#line 528 "gxml-performance.vala"
		_tmp41_ = ce;
#line 528 "gxml-performance.vala"
		_tmp42_ = performance_htop_element_get_elements2 (_tmp41_);
#line 528 "gxml-performance.vala"
		_tmp43_ = _tmp42_;
#line 528 "gxml-performance.vala"
		_tmp44_ = performance_hcs_element_get_elements (_tmp43_);
#line 528 "gxml-performance.vala"
		_tmp45_ = _tmp44_;
#line 528 "gxml-performance.vala"
		_tmp46_ = gee_abstract_map_get_size ((GeeAbstractMap*) _tmp45_);
#line 528 "gxml-performance.vala"
		_tmp47_ = _tmp46_;
#line 528 "gxml-performance.vala"
		_vala_assert (_tmp47_ == 125000, "ce.elements2.elements.size == 125000");
#line 529 "gxml-performance.vala"
		_tmp48_ = ce;
#line 529 "gxml-performance.vala"
		_tmp49_ = d;
#line 529 "gxml-performance.vala"
		_tmp50_ = gxml_serializable_object_model_serialize ((GXmlSerializableObjectModel*) _tmp48_, (GXmlNode*) _tmp49_, &_inner_error0_);
#line 529 "gxml-performance.vala"
		_tmp51_ = _tmp50_;
#line 529 "gxml-performance.vala"
		_g_object_unref0 (_tmp51_);
#line 529 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 529 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 529 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 6835 "gxml-performance.c"
			goto __catch237_g_error;
		}
#line 530 "gxml-performance.vala"
		_tmp52_ = d;
#line 530 "gxml-performance.vala"
		_tmp53_ = gxml_document_get_root ((GXmlDocument*) _tmp52_);
#line 530 "gxml-performance.vala"
		_tmp54_ = _tmp53_;
#line 530 "gxml-performance.vala"
		_tmp55_ = _tmp54_;
#line 530 "gxml-performance.vala"
		_vala_assert (_tmp55_ != NULL, "d.root != null");
#line 530 "gxml-performance.vala"
		_g_object_unref0 (_tmp55_);
#line 531 "gxml-performance.vala"
		_tmp56_ = d;
#line 531 "gxml-performance.vala"
		_tmp57_ = gxml_document_get_root ((GXmlDocument*) _tmp56_);
#line 531 "gxml-performance.vala"
		_tmp58_ = _tmp57_;
#line 531 "gxml-performance.vala"
		_tmp59_ = _tmp58_;
#line 531 "gxml-performance.vala"
		_tmp60_ = gxml_node_get_children_nodes (_tmp59_);
#line 531 "gxml-performance.vala"
		_tmp61_ = _tmp60_;
#line 531 "gxml-performance.vala"
		_tmp62_ = _tmp61_;
#line 531 "gxml-performance.vala"
		_tmp63_ = gee_collection_get_size ((GeeCollection*) _tmp62_);
#line 531 "gxml-performance.vala"
		_tmp64_ = _tmp63_;
#line 531 "gxml-performance.vala"
		_vala_assert (_tmp64_ == 2, "d.root.children_nodes.size == 2");
#line 531 "gxml-performance.vala"
		_g_object_unref0 (_tmp62_);
#line 531 "gxml-performance.vala"
		_g_object_unref0 (_tmp59_);
#line 532 "gxml-performance.vala"
		_tmp65_ = d;
#line 532 "gxml-performance.vala"
		_tmp66_ = gxml_document_get_root ((GXmlDocument*) _tmp65_);
#line 532 "gxml-performance.vala"
		_tmp67_ = _tmp66_;
#line 532 "gxml-performance.vala"
		_tmp68_ = _tmp67_;
#line 532 "gxml-performance.vala"
		_tmp69_ = gxml_node_get_children_nodes (_tmp68_);
#line 532 "gxml-performance.vala"
		_tmp70_ = _tmp69_;
#line 532 "gxml-performance.vala"
		_tmp71_ = _tmp70_;
#line 532 "gxml-performance.vala"
		_tmp72_ = gee_list_get ((GeeList*) _tmp71_, 0);
#line 532 "gxml-performance.vala"
		_tmp73_ = (GXmlNode*) _tmp72_;
#line 532 "gxml-performance.vala"
		_tmp74_ = gxml_node_get_children_nodes (_tmp73_);
#line 532 "gxml-performance.vala"
		_tmp75_ = _tmp74_;
#line 532 "gxml-performance.vala"
		_tmp76_ = _tmp75_;
#line 532 "gxml-performance.vala"
		_tmp77_ = gee_collection_get_size ((GeeCollection*) _tmp76_);
#line 532 "gxml-performance.vala"
		_tmp78_ = _tmp77_;
#line 532 "gxml-performance.vala"
		_vala_assert (_tmp78_ == 125000, "d.root.children_nodes[0].children_nodes.size == 125000");
#line 532 "gxml-performance.vala"
		_g_object_unref0 (_tmp76_);
#line 532 "gxml-performance.vala"
		_g_object_unref0 (_tmp73_);
#line 532 "gxml-performance.vala"
		_g_object_unref0 (_tmp71_);
#line 532 "gxml-performance.vala"
		_g_object_unref0 (_tmp68_);
#line 533 "gxml-performance.vala"
		_tmp79_ = d;
#line 533 "gxml-performance.vala"
		_tmp80_ = gxml_document_get_root ((GXmlDocument*) _tmp79_);
#line 533 "gxml-performance.vala"
		_tmp81_ = _tmp80_;
#line 533 "gxml-performance.vala"
		_tmp82_ = _tmp81_;
#line 533 "gxml-performance.vala"
		_tmp83_ = gxml_node_get_children_nodes (_tmp82_);
#line 533 "gxml-performance.vala"
		_tmp84_ = _tmp83_;
#line 533 "gxml-performance.vala"
		_tmp85_ = _tmp84_;
#line 533 "gxml-performance.vala"
		_tmp86_ = gee_list_get ((GeeList*) _tmp85_, 1);
#line 533 "gxml-performance.vala"
		_tmp87_ = (GXmlNode*) _tmp86_;
#line 533 "gxml-performance.vala"
		_tmp88_ = gxml_node_get_children_nodes (_tmp87_);
#line 533 "gxml-performance.vala"
		_tmp89_ = _tmp88_;
#line 533 "gxml-performance.vala"
		_tmp90_ = _tmp89_;
#line 533 "gxml-performance.vala"
		_tmp91_ = gee_collection_get_size ((GeeCollection*) _tmp90_);
#line 533 "gxml-performance.vala"
		_tmp92_ = _tmp91_;
#line 533 "gxml-performance.vala"
		_vala_assert (_tmp92_ == 125000, "d.root.children_nodes[1].children_nodes.size == 125000");
#line 533 "gxml-performance.vala"
		_g_object_unref0 (_tmp90_);
#line 533 "gxml-performance.vala"
		_g_object_unref0 (_tmp87_);
#line 533 "gxml-performance.vala"
		_g_object_unref0 (_tmp85_);
#line 533 "gxml-performance.vala"
		_g_object_unref0 (_tmp82_);
#line 534 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 535 "gxml-performance.vala"
		g_test_minimized_result (time, "Created document: %g seconds", time);
#line 536 "gxml-performance.vala"
		g_test_message ("Starting deserializing document: Disable collection deserialization...");
#line 537 "gxml-performance.vala"
		g_test_timer_start ();
#line 538 "gxml-performance.vala"
		_tmp93_ = performance_htop_element_new ();
#line 538 "gxml-performance.vala"
		cep = _tmp93_;
#line 539 "gxml-performance.vala"
		_tmp94_ = cep;
#line 539 "gxml-performance.vala"
		_tmp95_ = performance_htop_element_get_elements1 (_tmp94_);
#line 539 "gxml-performance.vala"
		_tmp96_ = _tmp95_;
#line 539 "gxml-performance.vala"
		_tmp97_ = performance_hcp_element_get_elements (_tmp96_);
#line 539 "gxml-performance.vala"
		_tmp98_ = _tmp97_;
#line 539 "gxml-performance.vala"
		performance_helement_hash_map_set_enable_deserialize (_tmp98_, FALSE);
#line 540 "gxml-performance.vala"
		_tmp99_ = cep;
#line 540 "gxml-performance.vala"
		_tmp100_ = performance_htop_element_get_elements2 (_tmp99_);
#line 540 "gxml-performance.vala"
		_tmp101_ = _tmp100_;
#line 540 "gxml-performance.vala"
		_tmp102_ = performance_hcs_element_get_elements (_tmp101_);
#line 540 "gxml-performance.vala"
		_tmp103_ = _tmp102_;
#line 540 "gxml-performance.vala"
		performance_helement_hash_map_set_enable_deserialize (_tmp103_, FALSE);
#line 541 "gxml-performance.vala"
		_tmp104_ = cep;
#line 541 "gxml-performance.vala"
		_tmp105_ = d;
#line 541 "gxml-performance.vala"
		gxml_serializable_object_model_deserialize ((GXmlSerializableObjectModel*) _tmp104_, (GXmlNode*) _tmp105_, &_inner_error0_);
#line 541 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 541 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 541 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 541 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 7000 "gxml-performance.c"
			goto __catch237_g_error;
		}
#line 542 "gxml-performance.vala"
		_tmp106_ = cep;
#line 542 "gxml-performance.vala"
		_tmp107_ = performance_htop_element_get_elements1 (_tmp106_);
#line 542 "gxml-performance.vala"
		_tmp108_ = _tmp107_;
#line 542 "gxml-performance.vala"
		_tmp109_ = performance_hcp_element_get_elements (_tmp108_);
#line 542 "gxml-performance.vala"
		_tmp110_ = _tmp109_;
#line 542 "gxml-performance.vala"
		_tmp111_ = gee_abstract_map_get_size ((GeeAbstractMap*) _tmp110_);
#line 542 "gxml-performance.vala"
		_tmp112_ = _tmp111_;
#line 542 "gxml-performance.vala"
		_vala_assert (_tmp112_ == 0, "cep.elements1.elements.size == 0");
#line 543 "gxml-performance.vala"
		_tmp113_ = cep;
#line 543 "gxml-performance.vala"
		_tmp114_ = performance_htop_element_get_elements2 (_tmp113_);
#line 543 "gxml-performance.vala"
		_tmp115_ = _tmp114_;
#line 543 "gxml-performance.vala"
		_tmp116_ = performance_hcs_element_get_elements (_tmp115_);
#line 543 "gxml-performance.vala"
		_tmp117_ = _tmp116_;
#line 543 "gxml-performance.vala"
		_tmp118_ = gee_abstract_map_get_size ((GeeAbstractMap*) _tmp117_);
#line 543 "gxml-performance.vala"
		_tmp119_ = _tmp118_;
#line 543 "gxml-performance.vala"
		_vala_assert (_tmp119_ == 0, "cep.elements2.elements.size == 0");
#line 544 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 545 "gxml-performance.vala"
		g_test_minimized_result (time, "Disable Deserialize Collection. Deserialized from doc: %g seconds", time);
#line 546 "gxml-performance.vala"
		g_test_message ("Calling C1 deserialize_children()...");
#line 547 "gxml-performance.vala"
		g_test_timer_start ();
#line 548 "gxml-performance.vala"
		_tmp121_ = cep;
#line 548 "gxml-performance.vala"
		_tmp122_ = performance_htop_element_get_elements1 (_tmp121_);
#line 548 "gxml-performance.vala"
		_tmp123_ = _tmp122_;
#line 548 "gxml-performance.vala"
		_tmp124_ = performance_hcp_element_get_elements (_tmp123_);
#line 548 "gxml-performance.vala"
		_tmp125_ = _tmp124_;
#line 548 "gxml-performance.vala"
		_tmp120_ = gxml_serializable_hash_map_deserialize_children ((GXmlSerializableHashMap*) _tmp125_, &_inner_error0_);
#line 548 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 548 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 548 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 548 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 7063 "gxml-performance.c"
			goto __catch237_g_error;
		}
#line 548 "gxml-performance.vala"
		_vala_assert (_tmp120_, "cep.elements1.elements.deserialize_children ()");
#line 549 "gxml-performance.vala"
		_tmp126_ = cep;
#line 549 "gxml-performance.vala"
		_tmp127_ = performance_htop_element_get_elements1 (_tmp126_);
#line 549 "gxml-performance.vala"
		_tmp128_ = _tmp127_;
#line 549 "gxml-performance.vala"
		_tmp129_ = performance_hcp_element_get_elements (_tmp128_);
#line 549 "gxml-performance.vala"
		_tmp130_ = _tmp129_;
#line 549 "gxml-performance.vala"
		_tmp131_ = gee_abstract_map_get_size ((GeeAbstractMap*) _tmp130_);
#line 549 "gxml-performance.vala"
		_tmp132_ = _tmp131_;
#line 549 "gxml-performance.vala"
		_vala_assert (_tmp132_ == 125000, "cep.elements1.elements.size == 125000");
#line 550 "gxml-performance.vala"
		_tmp134_ = cep;
#line 550 "gxml-performance.vala"
		_tmp135_ = performance_htop_element_get_elements1 (_tmp134_);
#line 550 "gxml-performance.vala"
		_tmp136_ = _tmp135_;
#line 550 "gxml-performance.vala"
		_tmp137_ = performance_hcp_element_get_elements (_tmp136_);
#line 550 "gxml-performance.vala"
		_tmp138_ = _tmp137_;
#line 550 "gxml-performance.vala"
		_tmp133_ = gxml_serializable_hash_map_deserialize_children ((GXmlSerializableHashMap*) _tmp138_, &_inner_error0_);
#line 550 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 550 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 550 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 550 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 7104 "gxml-performance.c"
			goto __catch237_g_error;
		}
#line 550 "gxml-performance.vala"
		_vala_assert (!_tmp133_, "!cep.elements1.elements.deserialize_children ()");
#line 551 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 552 "gxml-performance.vala"
		g_test_minimized_result (time, "C1: Disable Deserialize Collection. Deserialized from NODE: %g seconds", time);
#line 553 "gxml-performance.vala"
		g_test_message ("Calling C2 deserialize_children()...");
#line 554 "gxml-performance.vala"
		g_test_timer_start ();
#line 555 "gxml-performance.vala"
		_tmp139_ = cep;
#line 555 "gxml-performance.vala"
		_tmp140_ = performance_htop_element_get_elements2 (_tmp139_);
#line 555 "gxml-performance.vala"
		_tmp141_ = _tmp140_;
#line 555 "gxml-performance.vala"
		_tmp142_ = performance_hcs_element_get_elements (_tmp141_);
#line 555 "gxml-performance.vala"
		_tmp143_ = _tmp142_;
#line 555 "gxml-performance.vala"
		gxml_serializable_hash_map_deserialize_children ((GXmlSerializableHashMap*) _tmp143_, &_inner_error0_);
#line 555 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 555 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 555 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 555 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 7137 "gxml-performance.c"
			goto __catch237_g_error;
		}
#line 556 "gxml-performance.vala"
		_tmp145_ = cep;
#line 556 "gxml-performance.vala"
		_tmp146_ = performance_htop_element_get_elements2 (_tmp145_);
#line 556 "gxml-performance.vala"
		_tmp147_ = _tmp146_;
#line 556 "gxml-performance.vala"
		_tmp148_ = performance_hcs_element_get_elements (_tmp147_);
#line 556 "gxml-performance.vala"
		_tmp149_ = _tmp148_;
#line 556 "gxml-performance.vala"
		_tmp144_ = gxml_serializable_hash_map_deserialize_children ((GXmlSerializableHashMap*) _tmp149_, &_inner_error0_);
#line 556 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 556 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 556 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 556 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 7160 "gxml-performance.c"
			goto __catch237_g_error;
		}
#line 556 "gxml-performance.vala"
		_vala_assert (!_tmp144_, "!cep.elements2.elements.deserialize_children ()");
#line 557 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 558 "gxml-performance.vala"
		g_test_minimized_result (time, "C2: Disable Deserialize Collection. Deserialized from NODE: %g seconds", time);
#line 513 "gxml-performance.vala"
		_g_object_unref0 (cep);
#line 513 "gxml-performance.vala"
		_g_object_unref0 (ce);
#line 513 "gxml-performance.vala"
		_g_object_unref0 (d);
#line 7175 "gxml-performance.c"
	}
	goto __finally237;
	__catch237_g_error:
	{
		GError* e = NULL;
		const gchar* _tmp150_;
		gchar* _tmp151_;
		gchar* _tmp152_;
#line 513 "gxml-performance.vala"
		e = _inner_error0_;
#line 513 "gxml-performance.vala"
		_inner_error0_ = NULL;
#line 560 "gxml-performance.vala"
		_tmp150_ = e->message;
#line 560 "gxml-performance.vala"
		_tmp151_ = g_strconcat ("ERROR: ", _tmp150_, NULL);
#line 560 "gxml-performance.vala"
		_tmp152_ = _tmp151_;
#line 560 "gxml-performance.vala"
		g_message ("gxml-performance.vala:560: %s", _tmp152_);
#line 560 "gxml-performance.vala"
		_g_free0 (_tmp152_);
#line 561 "gxml-performance.vala"
		g_assert_not_reached ();
#line 513 "gxml-performance.vala"
		_g_error_free0 (e);
#line 7202 "gxml-performance.c"
	}
	__finally237:
#line 513 "gxml-performance.vala"
	if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 513 "gxml-performance.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
#line 513 "gxml-performance.vala"
		g_clear_error (&_inner_error0_);
#line 513 "gxml-performance.vala"
		return;
#line 7213 "gxml-performance.c"
	}
}

static void
___lambda179__gtest_func (void)
{
#line 511 "gxml-performance.vala"
	__lambda179_ ();
#line 7222 "gxml-performance.c"
}

static void
__lambda180_ (void)
{
	GError* _inner_error0_ = NULL;
	{
		gdouble time = 0.0;
		GXmlTDocument* d = NULL;
		GXmlTDocument* _tmp0_;
		PerformanceHTopElement* ce = NULL;
		PerformanceHTopElement* _tmp1_;
		PerformanceHTopElement* _tmp34_;
		GXmlTDocument* _tmp35_;
		GXmlNode* _tmp36_;
		GXmlNode* _tmp37_;
		PerformanceHTopElement* cep = NULL;
		PerformanceHTopElement* _tmp38_;
		PerformanceHTopElement* _tmp39_;
		PerformanceHcpElement* _tmp40_;
		PerformanceHcpElement* _tmp41_;
		PerformanceHElementHashMap* _tmp42_;
		PerformanceHElementHashMap* _tmp43_;
		PerformanceHTopElement* _tmp44_;
		PerformanceHcsElement* _tmp45_;
		PerformanceHcsElement* _tmp46_;
		PerformanceHElementHashMap* _tmp47_;
		PerformanceHElementHashMap* _tmp48_;
		PerformanceHTopElement* _tmp49_;
		GXmlTDocument* _tmp50_;
		gboolean _tmp51_ = FALSE;
		PerformanceHTopElement* _tmp52_;
		PerformanceHcpElement* _tmp53_;
		PerformanceHcpElement* _tmp54_;
		PerformanceHElementHashMap* _tmp55_;
		PerformanceHElementHashMap* _tmp56_;
		gboolean _tmp57_ = FALSE;
		PerformanceHTopElement* _tmp58_;
		PerformanceHcsElement* _tmp59_;
		PerformanceHcsElement* _tmp60_;
		PerformanceHElementHashMap* _tmp61_;
		PerformanceHElementHashMap* _tmp62_;
#line 568 "gxml-performance.vala"
		g_test_message ("Starting generating document...");
#line 569 "gxml-performance.vala"
		g_test_timer_start ();
#line 570 "gxml-performance.vala"
		_tmp0_ = gxml_tdocument_new ();
#line 570 "gxml-performance.vala"
		d = _tmp0_;
#line 571 "gxml-performance.vala"
		_tmp1_ = performance_htop_element_new ();
#line 571 "gxml-performance.vala"
		ce = _tmp1_;
#line 7277 "gxml-performance.c"
		{
			gint i = 0;
#line 572 "gxml-performance.vala"
			i = 0;
#line 7282 "gxml-performance.c"
			{
				gboolean _tmp2_ = FALSE;
#line 572 "gxml-performance.vala"
				_tmp2_ = TRUE;
#line 572 "gxml-performance.vala"
				while (TRUE) {
#line 7289 "gxml-performance.c"
					PerformanceHElement* e1 = NULL;
					PerformanceHElement* _tmp4_;
					PerformanceHElement* _tmp5_;
					gchar* _tmp6_;
					gchar* _tmp7_;
					gchar* _tmp8_;
					gchar* _tmp9_;
					PerformanceHTopElement* _tmp10_;
					PerformanceHcpElement* _tmp11_;
					PerformanceHcpElement* _tmp12_;
					PerformanceHElementHashMap* _tmp13_;
					PerformanceHElementHashMap* _tmp14_;
					PerformanceHElement* _tmp15_;
					const gchar* _tmp16_;
					const gchar* _tmp17_;
					PerformanceHElement* _tmp18_;
					PerformanceHElement* e2 = NULL;
					PerformanceHElement* _tmp19_;
					PerformanceHElement* _tmp20_;
					gchar* _tmp21_;
					gchar* _tmp22_;
					gchar* _tmp23_;
					gchar* _tmp24_;
					PerformanceHTopElement* _tmp25_;
					PerformanceHcsElement* _tmp26_;
					PerformanceHcsElement* _tmp27_;
					PerformanceHElementHashMap* _tmp28_;
					PerformanceHElementHashMap* _tmp29_;
					PerformanceHElement* _tmp30_;
					const gchar* _tmp31_;
					const gchar* _tmp32_;
					PerformanceHElement* _tmp33_;
#line 572 "gxml-performance.vala"
					if (!_tmp2_) {
#line 7324 "gxml-performance.c"
						gint _tmp3_;
#line 572 "gxml-performance.vala"
						_tmp3_ = i;
#line 572 "gxml-performance.vala"
						i = _tmp3_ + 1;
#line 7330 "gxml-performance.c"
					}
#line 572 "gxml-performance.vala"
					_tmp2_ = FALSE;
#line 572 "gxml-performance.vala"
					if (!(i < 125000)) {
#line 572 "gxml-performance.vala"
						break;
#line 7338 "gxml-performance.c"
					}
#line 573 "gxml-performance.vala"
					_tmp4_ = performance_helement_new ();
#line 573 "gxml-performance.vala"
					e1 = _tmp4_;
#line 574 "gxml-performance.vala"
					_tmp5_ = e1;
#line 574 "gxml-performance.vala"
					_tmp6_ = g_strdup_printf ("%i", i);
#line 574 "gxml-performance.vala"
					_tmp7_ = _tmp6_;
#line 574 "gxml-performance.vala"
					_tmp8_ = g_strconcat ("1E", _tmp7_, NULL);
#line 574 "gxml-performance.vala"
					_tmp9_ = _tmp8_;
#line 574 "gxml-performance.vala"
					performance_helement_set_name (_tmp5_, _tmp9_);
#line 574 "gxml-performance.vala"
					_g_free0 (_tmp9_);
#line 574 "gxml-performance.vala"
					_g_free0 (_tmp7_);
#line 575 "gxml-performance.vala"
					_tmp10_ = ce;
#line 575 "gxml-performance.vala"
					_tmp11_ = performance_htop_element_get_elements1 (_tmp10_);
#line 575 "gxml-performance.vala"
					_tmp12_ = _tmp11_;
#line 575 "gxml-performance.vala"
					_tmp13_ = performance_hcp_element_get_elements (_tmp12_);
#line 575 "gxml-performance.vala"
					_tmp14_ = _tmp13_;
#line 575 "gxml-performance.vala"
					_tmp15_ = e1;
#line 575 "gxml-performance.vala"
					_tmp16_ = performance_helement_get_name (_tmp15_);
#line 575 "gxml-performance.vala"
					_tmp17_ = _tmp16_;
#line 575 "gxml-performance.vala"
					_tmp18_ = e1;
#line 575 "gxml-performance.vala"
					gee_abstract_map_set ((GeeAbstractMap*) _tmp14_, _tmp17_, _tmp18_);
#line 576 "gxml-performance.vala"
					_tmp19_ = performance_helement_new ();
#line 576 "gxml-performance.vala"
					e2 = _tmp19_;
#line 577 "gxml-performance.vala"
					_tmp20_ = e2;
#line 577 "gxml-performance.vala"
					_tmp21_ = g_strdup_printf ("%i", i);
#line 577 "gxml-performance.vala"
					_tmp22_ = _tmp21_;
#line 577 "gxml-performance.vala"
					_tmp23_ = g_strconcat ("2E", _tmp22_, NULL);
#line 577 "gxml-performance.vala"
					_tmp24_ = _tmp23_;
#line 577 "gxml-performance.vala"
					performance_helement_set_name (_tmp20_, _tmp24_);
#line 577 "gxml-performance.vala"
					_g_free0 (_tmp24_);
#line 577 "gxml-performance.vala"
					_g_free0 (_tmp22_);
#line 578 "gxml-performance.vala"
					_tmp25_ = ce;
#line 578 "gxml-performance.vala"
					_tmp26_ = performance_htop_element_get_elements2 (_tmp25_);
#line 578 "gxml-performance.vala"
					_tmp27_ = _tmp26_;
#line 578 "gxml-performance.vala"
					_tmp28_ = performance_hcs_element_get_elements (_tmp27_);
#line 578 "gxml-performance.vala"
					_tmp29_ = _tmp28_;
#line 578 "gxml-performance.vala"
					_tmp30_ = e2;
#line 578 "gxml-performance.vala"
					_tmp31_ = performance_helement_get_name (_tmp30_);
#line 578 "gxml-performance.vala"
					_tmp32_ = _tmp31_;
#line 578 "gxml-performance.vala"
					_tmp33_ = e2;
#line 578 "gxml-performance.vala"
					gee_abstract_map_set ((GeeAbstractMap*) _tmp29_, _tmp32_, _tmp33_);
#line 572 "gxml-performance.vala"
					_g_object_unref0 (e2);
#line 572 "gxml-performance.vala"
					_g_object_unref0 (e1);
#line 7424 "gxml-performance.c"
				}
			}
		}
#line 580 "gxml-performance.vala"
		_tmp34_ = ce;
#line 580 "gxml-performance.vala"
		_tmp35_ = d;
#line 580 "gxml-performance.vala"
		_tmp36_ = gxml_serializable_object_model_serialize ((GXmlSerializableObjectModel*) _tmp34_, (GXmlNode*) _tmp35_, &_inner_error0_);
#line 580 "gxml-performance.vala"
		_tmp37_ = _tmp36_;
#line 580 "gxml-performance.vala"
		_g_object_unref0 (_tmp37_);
#line 580 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 580 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 580 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 7444 "gxml-performance.c"
			goto __catch238_g_error;
		}
#line 581 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 582 "gxml-performance.vala"
		g_test_minimized_result (time, "Created document: %g seconds", time);
#line 583 "gxml-performance.vala"
		g_test_message ("Starting deserializing document: Enable collection deserialization...");
#line 584 "gxml-performance.vala"
		g_test_timer_start ();
#line 585 "gxml-performance.vala"
		_tmp38_ = performance_htop_element_new ();
#line 585 "gxml-performance.vala"
		cep = _tmp38_;
#line 586 "gxml-performance.vala"
		_tmp39_ = cep;
#line 586 "gxml-performance.vala"
		_tmp40_ = performance_htop_element_get_elements1 (_tmp39_);
#line 586 "gxml-performance.vala"
		_tmp41_ = _tmp40_;
#line 586 "gxml-performance.vala"
		_tmp42_ = performance_hcp_element_get_elements (_tmp41_);
#line 586 "gxml-performance.vala"
		_tmp43_ = _tmp42_;
#line 586 "gxml-performance.vala"
		performance_helement_hash_map_set_enable_deserialize (_tmp43_, TRUE);
#line 587 "gxml-performance.vala"
		_tmp44_ = cep;
#line 587 "gxml-performance.vala"
		_tmp45_ = performance_htop_element_get_elements2 (_tmp44_);
#line 587 "gxml-performance.vala"
		_tmp46_ = _tmp45_;
#line 587 "gxml-performance.vala"
		_tmp47_ = performance_hcs_element_get_elements (_tmp46_);
#line 587 "gxml-performance.vala"
		_tmp48_ = _tmp47_;
#line 587 "gxml-performance.vala"
		performance_helement_hash_map_set_enable_deserialize (_tmp48_, TRUE);
#line 588 "gxml-performance.vala"
		_tmp49_ = cep;
#line 588 "gxml-performance.vala"
		_tmp50_ = d;
#line 588 "gxml-performance.vala"
		gxml_serializable_object_model_deserialize ((GXmlSerializableObjectModel*) _tmp49_, (GXmlNode*) _tmp50_, &_inner_error0_);
#line 588 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 588 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 588 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 588 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 7497 "gxml-performance.c"
			goto __catch238_g_error;
		}
#line 589 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 590 "gxml-performance.vala"
		g_test_minimized_result (time, "Disable Deserialize Collection. Deserialized from doc: %g seconds", time);
#line 591 "gxml-performance.vala"
		_tmp52_ = cep;
#line 591 "gxml-performance.vala"
		_tmp53_ = performance_htop_element_get_elements1 (_tmp52_);
#line 591 "gxml-performance.vala"
		_tmp54_ = _tmp53_;
#line 591 "gxml-performance.vala"
		_tmp55_ = performance_hcp_element_get_elements (_tmp54_);
#line 591 "gxml-performance.vala"
		_tmp56_ = _tmp55_;
#line 591 "gxml-performance.vala"
		_tmp51_ = gxml_serializable_hash_map_deserialize_children ((GXmlSerializableHashMap*) _tmp56_, &_inner_error0_);
#line 591 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 591 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 591 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 591 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 7524 "gxml-performance.c"
			goto __catch238_g_error;
		}
#line 591 "gxml-performance.vala"
		_vala_assert (!_tmp51_, "!cep.elements1.elements.deserialize_children ()");
#line 592 "gxml-performance.vala"
		_tmp58_ = cep;
#line 592 "gxml-performance.vala"
		_tmp59_ = performance_htop_element_get_elements2 (_tmp58_);
#line 592 "gxml-performance.vala"
		_tmp60_ = _tmp59_;
#line 592 "gxml-performance.vala"
		_tmp61_ = performance_hcs_element_get_elements (_tmp60_);
#line 592 "gxml-performance.vala"
		_tmp62_ = _tmp61_;
#line 592 "gxml-performance.vala"
		_tmp57_ = gxml_serializable_hash_map_deserialize_children ((GXmlSerializableHashMap*) _tmp62_, &_inner_error0_);
#line 592 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 592 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 592 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 592 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 7549 "gxml-performance.c"
			goto __catch238_g_error;
		}
#line 592 "gxml-performance.vala"
		_vala_assert (!_tmp57_, "!cep.elements2.elements.deserialize_children ()");
#line 566 "gxml-performance.vala"
		_g_object_unref0 (cep);
#line 566 "gxml-performance.vala"
		_g_object_unref0 (ce);
#line 566 "gxml-performance.vala"
		_g_object_unref0 (d);
#line 7560 "gxml-performance.c"
	}
	goto __finally238;
	__catch238_g_error:
	{
		GError* e = NULL;
		const gchar* _tmp63_;
		gchar* _tmp64_;
		gchar* _tmp65_;
#line 566 "gxml-performance.vala"
		e = _inner_error0_;
#line 566 "gxml-performance.vala"
		_inner_error0_ = NULL;
#line 594 "gxml-performance.vala"
		_tmp63_ = e->message;
#line 594 "gxml-performance.vala"
		_tmp64_ = g_strconcat ("ERROR: ", _tmp63_, NULL);
#line 594 "gxml-performance.vala"
		_tmp65_ = _tmp64_;
#line 594 "gxml-performance.vala"
		g_message ("gxml-performance.vala:594: %s", _tmp65_);
#line 594 "gxml-performance.vala"
		_g_free0 (_tmp65_);
#line 595 "gxml-performance.vala"
		g_assert_not_reached ();
#line 566 "gxml-performance.vala"
		_g_error_free0 (e);
#line 7587 "gxml-performance.c"
	}
	__finally238:
#line 566 "gxml-performance.vala"
	if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 566 "gxml-performance.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
#line 566 "gxml-performance.vala"
		g_clear_error (&_inner_error0_);
#line 566 "gxml-performance.vala"
		return;
#line 7598 "gxml-performance.c"
	}
}

static void
___lambda180__gtest_func (void)
{
#line 564 "gxml-performance.vala"
	__lambda180_ ();
#line 7607 "gxml-performance.c"
}

static void
__lambda181_ (void)
{
	GError* _inner_error0_ = NULL;
	{
		gdouble time = 0.0;
		GXmlTDocument* d = NULL;
		GXmlTDocument* _tmp0_;
		PerformanceHTCElement* ce = NULL;
		PerformanceHTCElement* _tmp1_;
		PerformanceHTCElement* _tmp30_;
		GXmlTDocument* _tmp31_;
		GXmlNode* _tmp32_;
		GXmlNode* _tmp33_;
		PerformanceHTCElement* cep = NULL;
		PerformanceHTCElement* _tmp34_;
		PerformanceHTCElement* _tmp35_;
		PerformanceHTElementTreeMap* _tmp36_;
		PerformanceHTElementTreeMap* _tmp37_;
		PerformanceHTCElement* _tmp38_;
		PerformanceHTElementTreeMap* _tmp39_;
		PerformanceHTElementTreeMap* _tmp40_;
		PerformanceHTCElement* _tmp41_;
		GXmlTDocument* _tmp42_;
		PerformanceHTCElement* _tmp43_;
		PerformanceHTElementTreeMap* _tmp44_;
		PerformanceHTElementTreeMap* _tmp45_;
		gboolean _tmp46_ = FALSE;
		PerformanceHTCElement* _tmp47_;
		PerformanceHTElementTreeMap* _tmp48_;
		PerformanceHTElementTreeMap* _tmp49_;
		PerformanceHTCElement* _tmp50_;
		PerformanceHTElementTreeMap* _tmp51_;
		PerformanceHTElementTreeMap* _tmp52_;
		gboolean _tmp53_ = FALSE;
		PerformanceHTCElement* _tmp54_;
		PerformanceHTElementTreeMap* _tmp55_;
		PerformanceHTElementTreeMap* _tmp56_;
#line 602 "gxml-performance.vala"
		g_test_message ("Starting generating document...");
#line 603 "gxml-performance.vala"
		g_test_timer_start ();
#line 604 "gxml-performance.vala"
		_tmp0_ = gxml_tdocument_new ();
#line 604 "gxml-performance.vala"
		d = _tmp0_;
#line 605 "gxml-performance.vala"
		_tmp1_ = performance_htc_element_new ();
#line 605 "gxml-performance.vala"
		ce = _tmp1_;
#line 7660 "gxml-performance.c"
		{
			gint i = 0;
#line 606 "gxml-performance.vala"
			i = 0;
#line 7665 "gxml-performance.c"
			{
				gboolean _tmp2_ = FALSE;
#line 606 "gxml-performance.vala"
				_tmp2_ = TRUE;
#line 606 "gxml-performance.vala"
				while (TRUE) {
#line 7672 "gxml-performance.c"
					PerformanceHTElement* e1 = NULL;
					PerformanceHTElement* _tmp4_;
					PerformanceHTElement* _tmp5_;
					gchar* _tmp6_;
					gchar* _tmp7_;
					gchar* _tmp8_;
					gchar* _tmp9_;
					PerformanceHTCElement* _tmp10_;
					PerformanceHTElementTreeMap* _tmp11_;
					PerformanceHTElementTreeMap* _tmp12_;
					PerformanceHTElement* _tmp13_;
					const gchar* _tmp14_;
					const gchar* _tmp15_;
					PerformanceHTElement* _tmp16_;
					PerformanceHTElement* e2 = NULL;
					PerformanceHTElement* _tmp17_;
					PerformanceHTElement* _tmp18_;
					gchar* _tmp19_;
					gchar* _tmp20_;
					gchar* _tmp21_;
					gchar* _tmp22_;
					PerformanceHTCElement* _tmp23_;
					PerformanceHTElementTreeMap* _tmp24_;
					PerformanceHTElementTreeMap* _tmp25_;
					PerformanceHTElement* _tmp26_;
					const gchar* _tmp27_;
					const gchar* _tmp28_;
					PerformanceHTElement* _tmp29_;
#line 606 "gxml-performance.vala"
					if (!_tmp2_) {
#line 7703 "gxml-performance.c"
						gint _tmp3_;
#line 606 "gxml-performance.vala"
						_tmp3_ = i;
#line 606 "gxml-performance.vala"
						i = _tmp3_ + 1;
#line 7709 "gxml-performance.c"
					}
#line 606 "gxml-performance.vala"
					_tmp2_ = FALSE;
#line 606 "gxml-performance.vala"
					if (!(i < 125000)) {
#line 606 "gxml-performance.vala"
						break;
#line 7717 "gxml-performance.c"
					}
#line 607 "gxml-performance.vala"
					_tmp4_ = performance_ht_element_new ();
#line 607 "gxml-performance.vala"
					e1 = _tmp4_;
#line 608 "gxml-performance.vala"
					_tmp5_ = e1;
#line 608 "gxml-performance.vala"
					_tmp6_ = g_strdup_printf ("%i", i);
#line 608 "gxml-performance.vala"
					_tmp7_ = _tmp6_;
#line 608 "gxml-performance.vala"
					_tmp8_ = g_strconcat ("1E", _tmp7_, NULL);
#line 608 "gxml-performance.vala"
					_tmp9_ = _tmp8_;
#line 608 "gxml-performance.vala"
					performance_ht_element_set_name (_tmp5_, _tmp9_);
#line 608 "gxml-performance.vala"
					_g_free0 (_tmp9_);
#line 608 "gxml-performance.vala"
					_g_free0 (_tmp7_);
#line 609 "gxml-performance.vala"
					_tmp10_ = ce;
#line 609 "gxml-performance.vala"
					_tmp11_ = performance_htc_element_get_elements1 (_tmp10_);
#line 609 "gxml-performance.vala"
					_tmp12_ = _tmp11_;
#line 609 "gxml-performance.vala"
					_tmp13_ = e1;
#line 609 "gxml-performance.vala"
					_tmp14_ = performance_ht_element_get_name (_tmp13_);
#line 609 "gxml-performance.vala"
					_tmp15_ = _tmp14_;
#line 609 "gxml-performance.vala"
					_tmp16_ = e1;
#line 609 "gxml-performance.vala"
					gee_abstract_map_set ((GeeAbstractMap*) _tmp12_, _tmp15_, _tmp16_);
#line 610 "gxml-performance.vala"
					_tmp17_ = performance_ht_element_new ();
#line 610 "gxml-performance.vala"
					e2 = _tmp17_;
#line 611 "gxml-performance.vala"
					_tmp18_ = e2;
#line 611 "gxml-performance.vala"
					_tmp19_ = g_strdup_printf ("%i", i);
#line 611 "gxml-performance.vala"
					_tmp20_ = _tmp19_;
#line 611 "gxml-performance.vala"
					_tmp21_ = g_strconcat ("2E", _tmp20_, NULL);
#line 611 "gxml-performance.vala"
					_tmp22_ = _tmp21_;
#line 611 "gxml-performance.vala"
					performance_ht_element_set_name (_tmp18_, _tmp22_);
#line 611 "gxml-performance.vala"
					_g_free0 (_tmp22_);
#line 611 "gxml-performance.vala"
					_g_free0 (_tmp20_);
#line 612 "gxml-performance.vala"
					_tmp23_ = ce;
#line 612 "gxml-performance.vala"
					_tmp24_ = performance_htc_element_get_elements2 (_tmp23_);
#line 612 "gxml-performance.vala"
					_tmp25_ = _tmp24_;
#line 612 "gxml-performance.vala"
					_tmp26_ = e2;
#line 612 "gxml-performance.vala"
					_tmp27_ = performance_ht_element_get_name (_tmp26_);
#line 612 "gxml-performance.vala"
					_tmp28_ = _tmp27_;
#line 612 "gxml-performance.vala"
					_tmp29_ = e2;
#line 612 "gxml-performance.vala"
					gee_abstract_map_set ((GeeAbstractMap*) _tmp25_, _tmp28_, _tmp29_);
#line 606 "gxml-performance.vala"
					_g_object_unref0 (e2);
#line 606 "gxml-performance.vala"
					_g_object_unref0 (e1);
#line 7795 "gxml-performance.c"
				}
			}
		}
#line 614 "gxml-performance.vala"
		_tmp30_ = ce;
#line 614 "gxml-performance.vala"
		_tmp31_ = d;
#line 614 "gxml-performance.vala"
		_tmp32_ = gxml_serializable_object_model_serialize ((GXmlSerializableObjectModel*) _tmp30_, (GXmlNode*) _tmp31_, &_inner_error0_);
#line 614 "gxml-performance.vala"
		_tmp33_ = _tmp32_;
#line 614 "gxml-performance.vala"
		_g_object_unref0 (_tmp33_);
#line 614 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 614 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 614 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 7815 "gxml-performance.c"
			goto __catch239_g_error;
		}
#line 615 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 616 "gxml-performance.vala"
		g_test_minimized_result (time, "Created document: %g seconds", time);
#line 617 "gxml-performance.vala"
		g_test_message ("Starting deserializing document: Disable collection deserialization...");
#line 618 "gxml-performance.vala"
		g_test_timer_start ();
#line 619 "gxml-performance.vala"
		_tmp34_ = performance_htc_element_new ();
#line 619 "gxml-performance.vala"
		cep = _tmp34_;
#line 620 "gxml-performance.vala"
		_tmp35_ = cep;
#line 620 "gxml-performance.vala"
		_tmp36_ = performance_htc_element_get_elements1 (_tmp35_);
#line 620 "gxml-performance.vala"
		_tmp37_ = _tmp36_;
#line 620 "gxml-performance.vala"
		performance_ht_element_tree_map_set_enable_deserialize (_tmp37_, FALSE);
#line 621 "gxml-performance.vala"
		_tmp38_ = cep;
#line 621 "gxml-performance.vala"
		_tmp39_ = performance_htc_element_get_elements2 (_tmp38_);
#line 621 "gxml-performance.vala"
		_tmp40_ = _tmp39_;
#line 621 "gxml-performance.vala"
		performance_ht_element_tree_map_set_enable_deserialize (_tmp40_, FALSE);
#line 622 "gxml-performance.vala"
		_tmp41_ = cep;
#line 622 "gxml-performance.vala"
		_tmp42_ = d;
#line 622 "gxml-performance.vala"
		gxml_serializable_object_model_deserialize ((GXmlSerializableObjectModel*) _tmp41_, (GXmlNode*) _tmp42_, &_inner_error0_);
#line 622 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 622 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 622 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 622 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 7860 "gxml-performance.c"
			goto __catch239_g_error;
		}
#line 623 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 624 "gxml-performance.vala"
		g_test_minimized_result (time, "Disable Deserialize Collection. Deserialized from doc: %g seconds", time);
#line 625 "gxml-performance.vala"
		g_test_message ("Calling C1 deserialize_children()...");
#line 626 "gxml-performance.vala"
		g_test_timer_start ();
#line 627 "gxml-performance.vala"
		_tmp43_ = cep;
#line 627 "gxml-performance.vala"
		_tmp44_ = performance_htc_element_get_elements1 (_tmp43_);
#line 627 "gxml-performance.vala"
		_tmp45_ = _tmp44_;
#line 627 "gxml-performance.vala"
		gxml_serializable_tree_map_deserialize_children ((GXmlSerializableTreeMap*) _tmp45_, &_inner_error0_);
#line 627 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 627 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 627 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 627 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 7887 "gxml-performance.c"
			goto __catch239_g_error;
		}
#line 628 "gxml-performance.vala"
		_tmp47_ = cep;
#line 628 "gxml-performance.vala"
		_tmp48_ = performance_htc_element_get_elements1 (_tmp47_);
#line 628 "gxml-performance.vala"
		_tmp49_ = _tmp48_;
#line 628 "gxml-performance.vala"
		_tmp46_ = gxml_serializable_tree_map_deserialize_children ((GXmlSerializableTreeMap*) _tmp49_, &_inner_error0_);
#line 628 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 628 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 628 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 628 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 7906 "gxml-performance.c"
			goto __catch239_g_error;
		}
#line 628 "gxml-performance.vala"
		_vala_assert (!_tmp46_, "!cep.elements1.deserialize_children ()");
#line 629 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 630 "gxml-performance.vala"
		g_test_minimized_result (time, "C1: Disable Deserialize Collection. Deserialized from NODE: %g seconds", time);
#line 631 "gxml-performance.vala"
		g_test_message ("Calling C2 deserialize_children()...");
#line 632 "gxml-performance.vala"
		g_test_timer_start ();
#line 633 "gxml-performance.vala"
		_tmp50_ = cep;
#line 633 "gxml-performance.vala"
		_tmp51_ = performance_htc_element_get_elements2 (_tmp50_);
#line 633 "gxml-performance.vala"
		_tmp52_ = _tmp51_;
#line 633 "gxml-performance.vala"
		gxml_serializable_tree_map_deserialize_children ((GXmlSerializableTreeMap*) _tmp52_, &_inner_error0_);
#line 633 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 633 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 633 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 633 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 7935 "gxml-performance.c"
			goto __catch239_g_error;
		}
#line 634 "gxml-performance.vala"
		_tmp54_ = cep;
#line 634 "gxml-performance.vala"
		_tmp55_ = performance_htc_element_get_elements2 (_tmp54_);
#line 634 "gxml-performance.vala"
		_tmp56_ = _tmp55_;
#line 634 "gxml-performance.vala"
		_tmp53_ = gxml_serializable_tree_map_deserialize_children ((GXmlSerializableTreeMap*) _tmp56_, &_inner_error0_);
#line 634 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 634 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 634 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 634 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 7954 "gxml-performance.c"
			goto __catch239_g_error;
		}
#line 634 "gxml-performance.vala"
		_vala_assert (!_tmp53_, "!cep.elements2.deserialize_children ()");
#line 635 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 636 "gxml-performance.vala"
		g_test_minimized_result (time, "C2: Disable Deserialize Collection. Deserialized from NODE: %g seconds", time);
#line 600 "gxml-performance.vala"
		_g_object_unref0 (cep);
#line 600 "gxml-performance.vala"
		_g_object_unref0 (ce);
#line 600 "gxml-performance.vala"
		_g_object_unref0 (d);
#line 7969 "gxml-performance.c"
	}
	goto __finally239;
	__catch239_g_error:
	{
		GError* e = NULL;
		const gchar* _tmp57_;
		gchar* _tmp58_;
		gchar* _tmp59_;
#line 600 "gxml-performance.vala"
		e = _inner_error0_;
#line 600 "gxml-performance.vala"
		_inner_error0_ = NULL;
#line 638 "gxml-performance.vala"
		_tmp57_ = e->message;
#line 638 "gxml-performance.vala"
		_tmp58_ = g_strconcat ("ERROR: ", _tmp57_, NULL);
#line 638 "gxml-performance.vala"
		_tmp59_ = _tmp58_;
#line 638 "gxml-performance.vala"
		g_message ("gxml-performance.vala:638: %s", _tmp59_);
#line 638 "gxml-performance.vala"
		_g_free0 (_tmp59_);
#line 639 "gxml-performance.vala"
		g_assert_not_reached ();
#line 600 "gxml-performance.vala"
		_g_error_free0 (e);
#line 7996 "gxml-performance.c"
	}
	__finally239:
#line 600 "gxml-performance.vala"
	if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 600 "gxml-performance.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
#line 600 "gxml-performance.vala"
		g_clear_error (&_inner_error0_);
#line 600 "gxml-performance.vala"
		return;
#line 8007 "gxml-performance.c"
	}
}

static void
___lambda181__gtest_func (void)
{
#line 598 "gxml-performance.vala"
	__lambda181_ ();
#line 8016 "gxml-performance.c"
}

static void
__lambda182_ (void)
{
	GError* _inner_error0_ = NULL;
	{
		gdouble time = 0.0;
		GXmlTDocument* d = NULL;
		GXmlTDocument* _tmp0_;
		PerformanceHTCElement* ce = NULL;
		PerformanceHTCElement* _tmp1_;
		PerformanceHTCElement* _tmp30_;
		GXmlTDocument* _tmp31_;
		GXmlNode* _tmp32_;
		GXmlNode* _tmp33_;
		PerformanceHTCElement* cep = NULL;
		PerformanceHTCElement* _tmp34_;
		PerformanceHTCElement* _tmp35_;
		PerformanceHTElementTreeMap* _tmp36_;
		PerformanceHTElementTreeMap* _tmp37_;
		PerformanceHTCElement* _tmp38_;
		PerformanceHTElementTreeMap* _tmp39_;
		PerformanceHTElementTreeMap* _tmp40_;
		PerformanceHTCElement* _tmp41_;
		GXmlTDocument* _tmp42_;
		gboolean _tmp43_ = FALSE;
		PerformanceHTCElement* _tmp44_;
		PerformanceHTElementTreeMap* _tmp45_;
		PerformanceHTElementTreeMap* _tmp46_;
		gboolean _tmp47_ = FALSE;
		PerformanceHTCElement* _tmp48_;
		PerformanceHTElementTreeMap* _tmp49_;
		PerformanceHTElementTreeMap* _tmp50_;
#line 646 "gxml-performance.vala"
		g_test_message ("Starting generating document...");
#line 647 "gxml-performance.vala"
		g_test_timer_start ();
#line 648 "gxml-performance.vala"
		_tmp0_ = gxml_tdocument_new ();
#line 648 "gxml-performance.vala"
		d = _tmp0_;
#line 649 "gxml-performance.vala"
		_tmp1_ = performance_htc_element_new ();
#line 649 "gxml-performance.vala"
		ce = _tmp1_;
#line 8063 "gxml-performance.c"
		{
			gint i = 0;
#line 650 "gxml-performance.vala"
			i = 0;
#line 8068 "gxml-performance.c"
			{
				gboolean _tmp2_ = FALSE;
#line 650 "gxml-performance.vala"
				_tmp2_ = TRUE;
#line 650 "gxml-performance.vala"
				while (TRUE) {
#line 8075 "gxml-performance.c"
					PerformanceHTElement* e1 = NULL;
					PerformanceHTElement* _tmp4_;
					PerformanceHTElement* _tmp5_;
					gchar* _tmp6_;
					gchar* _tmp7_;
					gchar* _tmp8_;
					gchar* _tmp9_;
					PerformanceHTCElement* _tmp10_;
					PerformanceHTElementTreeMap* _tmp11_;
					PerformanceHTElementTreeMap* _tmp12_;
					PerformanceHTElement* _tmp13_;
					const gchar* _tmp14_;
					const gchar* _tmp15_;
					PerformanceHTElement* _tmp16_;
					PerformanceHTElement* e2 = NULL;
					PerformanceHTElement* _tmp17_;
					PerformanceHTElement* _tmp18_;
					gchar* _tmp19_;
					gchar* _tmp20_;
					gchar* _tmp21_;
					gchar* _tmp22_;
					PerformanceHTCElement* _tmp23_;
					PerformanceHTElementTreeMap* _tmp24_;
					PerformanceHTElementTreeMap* _tmp25_;
					PerformanceHTElement* _tmp26_;
					const gchar* _tmp27_;
					const gchar* _tmp28_;
					PerformanceHTElement* _tmp29_;
#line 650 "gxml-performance.vala"
					if (!_tmp2_) {
#line 8106 "gxml-performance.c"
						gint _tmp3_;
#line 650 "gxml-performance.vala"
						_tmp3_ = i;
#line 650 "gxml-performance.vala"
						i = _tmp3_ + 1;
#line 8112 "gxml-performance.c"
					}
#line 650 "gxml-performance.vala"
					_tmp2_ = FALSE;
#line 650 "gxml-performance.vala"
					if (!(i < 125000)) {
#line 650 "gxml-performance.vala"
						break;
#line 8120 "gxml-performance.c"
					}
#line 651 "gxml-performance.vala"
					_tmp4_ = performance_ht_element_new ();
#line 651 "gxml-performance.vala"
					e1 = _tmp4_;
#line 652 "gxml-performance.vala"
					_tmp5_ = e1;
#line 652 "gxml-performance.vala"
					_tmp6_ = g_strdup_printf ("%i", i);
#line 652 "gxml-performance.vala"
					_tmp7_ = _tmp6_;
#line 652 "gxml-performance.vala"
					_tmp8_ = g_strconcat ("1E", _tmp7_, NULL);
#line 652 "gxml-performance.vala"
					_tmp9_ = _tmp8_;
#line 652 "gxml-performance.vala"
					performance_ht_element_set_name (_tmp5_, _tmp9_);
#line 652 "gxml-performance.vala"
					_g_free0 (_tmp9_);
#line 652 "gxml-performance.vala"
					_g_free0 (_tmp7_);
#line 653 "gxml-performance.vala"
					_tmp10_ = ce;
#line 653 "gxml-performance.vala"
					_tmp11_ = performance_htc_element_get_elements1 (_tmp10_);
#line 653 "gxml-performance.vala"
					_tmp12_ = _tmp11_;
#line 653 "gxml-performance.vala"
					_tmp13_ = e1;
#line 653 "gxml-performance.vala"
					_tmp14_ = performance_ht_element_get_name (_tmp13_);
#line 653 "gxml-performance.vala"
					_tmp15_ = _tmp14_;
#line 653 "gxml-performance.vala"
					_tmp16_ = e1;
#line 653 "gxml-performance.vala"
					gee_abstract_map_set ((GeeAbstractMap*) _tmp12_, _tmp15_, _tmp16_);
#line 654 "gxml-performance.vala"
					_tmp17_ = performance_ht_element_new ();
#line 654 "gxml-performance.vala"
					e2 = _tmp17_;
#line 655 "gxml-performance.vala"
					_tmp18_ = e2;
#line 655 "gxml-performance.vala"
					_tmp19_ = g_strdup_printf ("%i", i);
#line 655 "gxml-performance.vala"
					_tmp20_ = _tmp19_;
#line 655 "gxml-performance.vala"
					_tmp21_ = g_strconcat ("2E", _tmp20_, NULL);
#line 655 "gxml-performance.vala"
					_tmp22_ = _tmp21_;
#line 655 "gxml-performance.vala"
					performance_ht_element_set_name (_tmp18_, _tmp22_);
#line 655 "gxml-performance.vala"
					_g_free0 (_tmp22_);
#line 655 "gxml-performance.vala"
					_g_free0 (_tmp20_);
#line 656 "gxml-performance.vala"
					_tmp23_ = ce;
#line 656 "gxml-performance.vala"
					_tmp24_ = performance_htc_element_get_elements2 (_tmp23_);
#line 656 "gxml-performance.vala"
					_tmp25_ = _tmp24_;
#line 656 "gxml-performance.vala"
					_tmp26_ = e2;
#line 656 "gxml-performance.vala"
					_tmp27_ = performance_ht_element_get_name (_tmp26_);
#line 656 "gxml-performance.vala"
					_tmp28_ = _tmp27_;
#line 656 "gxml-performance.vala"
					_tmp29_ = e2;
#line 656 "gxml-performance.vala"
					gee_abstract_map_set ((GeeAbstractMap*) _tmp25_, _tmp28_, _tmp29_);
#line 650 "gxml-performance.vala"
					_g_object_unref0 (e2);
#line 650 "gxml-performance.vala"
					_g_object_unref0 (e1);
#line 8198 "gxml-performance.c"
				}
			}
		}
#line 658 "gxml-performance.vala"
		_tmp30_ = ce;
#line 658 "gxml-performance.vala"
		_tmp31_ = d;
#line 658 "gxml-performance.vala"
		_tmp32_ = gxml_serializable_object_model_serialize ((GXmlSerializableObjectModel*) _tmp30_, (GXmlNode*) _tmp31_, &_inner_error0_);
#line 658 "gxml-performance.vala"
		_tmp33_ = _tmp32_;
#line 658 "gxml-performance.vala"
		_g_object_unref0 (_tmp33_);
#line 658 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 658 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 658 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 8218 "gxml-performance.c"
			goto __catch240_g_error;
		}
#line 659 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 660 "gxml-performance.vala"
		g_test_minimized_result (time, "Created document: %g seconds", time);
#line 661 "gxml-performance.vala"
		g_test_message ("Starting deserializing document: Enable collection deserialization...");
#line 662 "gxml-performance.vala"
		g_test_timer_start ();
#line 663 "gxml-performance.vala"
		_tmp34_ = performance_htc_element_new ();
#line 663 "gxml-performance.vala"
		cep = _tmp34_;
#line 664 "gxml-performance.vala"
		_tmp35_ = cep;
#line 664 "gxml-performance.vala"
		_tmp36_ = performance_htc_element_get_elements1 (_tmp35_);
#line 664 "gxml-performance.vala"
		_tmp37_ = _tmp36_;
#line 664 "gxml-performance.vala"
		performance_ht_element_tree_map_set_enable_deserialize (_tmp37_, TRUE);
#line 665 "gxml-performance.vala"
		_tmp38_ = cep;
#line 665 "gxml-performance.vala"
		_tmp39_ = performance_htc_element_get_elements2 (_tmp38_);
#line 665 "gxml-performance.vala"
		_tmp40_ = _tmp39_;
#line 665 "gxml-performance.vala"
		performance_ht_element_tree_map_set_enable_deserialize (_tmp40_, TRUE);
#line 666 "gxml-performance.vala"
		_tmp41_ = cep;
#line 666 "gxml-performance.vala"
		_tmp42_ = d;
#line 666 "gxml-performance.vala"
		gxml_serializable_object_model_deserialize ((GXmlSerializableObjectModel*) _tmp41_, (GXmlNode*) _tmp42_, &_inner_error0_);
#line 666 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 666 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 666 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 666 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 8263 "gxml-performance.c"
			goto __catch240_g_error;
		}
#line 667 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 668 "gxml-performance.vala"
		g_test_minimized_result (time, "Disable Deserialize Collection. Deserialized from doc: %g seconds", time);
#line 669 "gxml-performance.vala"
		_tmp44_ = cep;
#line 669 "gxml-performance.vala"
		_tmp45_ = performance_htc_element_get_elements1 (_tmp44_);
#line 669 "gxml-performance.vala"
		_tmp46_ = _tmp45_;
#line 669 "gxml-performance.vala"
		_tmp43_ = gxml_serializable_tree_map_deserialize_children ((GXmlSerializableTreeMap*) _tmp46_, &_inner_error0_);
#line 669 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 669 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 669 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 669 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 8286 "gxml-performance.c"
			goto __catch240_g_error;
		}
#line 669 "gxml-performance.vala"
		_vala_assert (!_tmp43_, "!cep.elements1.deserialize_children ()");
#line 670 "gxml-performance.vala"
		_tmp48_ = cep;
#line 670 "gxml-performance.vala"
		_tmp49_ = performance_htc_element_get_elements2 (_tmp48_);
#line 670 "gxml-performance.vala"
		_tmp50_ = _tmp49_;
#line 670 "gxml-performance.vala"
		_tmp47_ = gxml_serializable_tree_map_deserialize_children ((GXmlSerializableTreeMap*) _tmp50_, &_inner_error0_);
#line 670 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 670 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 670 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 670 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 8307 "gxml-performance.c"
			goto __catch240_g_error;
		}
#line 670 "gxml-performance.vala"
		_vala_assert (!_tmp47_, "!cep.elements2.deserialize_children ()");
#line 644 "gxml-performance.vala"
		_g_object_unref0 (cep);
#line 644 "gxml-performance.vala"
		_g_object_unref0 (ce);
#line 644 "gxml-performance.vala"
		_g_object_unref0 (d);
#line 8318 "gxml-performance.c"
	}
	goto __finally240;
	__catch240_g_error:
	{
		GError* e = NULL;
		const gchar* _tmp51_;
		gchar* _tmp52_;
		gchar* _tmp53_;
#line 644 "gxml-performance.vala"
		e = _inner_error0_;
#line 644 "gxml-performance.vala"
		_inner_error0_ = NULL;
#line 672 "gxml-performance.vala"
		_tmp51_ = e->message;
#line 672 "gxml-performance.vala"
		_tmp52_ = g_strconcat ("ERROR: ", _tmp51_, NULL);
#line 672 "gxml-performance.vala"
		_tmp53_ = _tmp52_;
#line 672 "gxml-performance.vala"
		g_message ("gxml-performance.vala:672: %s", _tmp53_);
#line 672 "gxml-performance.vala"
		_g_free0 (_tmp53_);
#line 673 "gxml-performance.vala"
		g_assert_not_reached ();
#line 644 "gxml-performance.vala"
		_g_error_free0 (e);
#line 8345 "gxml-performance.c"
	}
	__finally240:
#line 644 "gxml-performance.vala"
	if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 644 "gxml-performance.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
#line 644 "gxml-performance.vala"
		g_clear_error (&_inner_error0_);
#line 644 "gxml-performance.vala"
		return;
#line 8356 "gxml-performance.c"
	}
}

static void
___lambda182__gtest_func (void)
{
#line 642 "gxml-performance.vala"
	__lambda182_ ();
#line 8365 "gxml-performance.c"
}

static void
__lambda183_ (void)
{
	GError* _inner_error0_ = NULL;
	{
		gdouble time = 0.0;
		GXmlTDocument* d = NULL;
		GXmlTDocument* _tmp0_;
		PerformanceDHCElement* ce = NULL;
		PerformanceDHCElement* _tmp1_;
		PerformanceDHCElement* _tmp38_;
		GXmlTDocument* _tmp39_;
		GXmlNode* _tmp40_;
		GXmlNode* _tmp41_;
		PerformanceDHCElement* cep = NULL;
		PerformanceDHCElement* _tmp42_;
		PerformanceDHCElement* _tmp43_;
		PerformanceDHElementDualKeyMap* _tmp44_;
		PerformanceDHElementDualKeyMap* _tmp45_;
		PerformanceDHCElement* _tmp46_;
		PerformanceDHElementDualKeyMap* _tmp47_;
		PerformanceDHElementDualKeyMap* _tmp48_;
		PerformanceDHCElement* _tmp49_;
		GXmlTDocument* _tmp50_;
		PerformanceDHCElement* _tmp51_;
		PerformanceDHElementDualKeyMap* _tmp52_;
		PerformanceDHElementDualKeyMap* _tmp53_;
		gboolean _tmp54_ = FALSE;
		PerformanceDHCElement* _tmp55_;
		PerformanceDHElementDualKeyMap* _tmp56_;
		PerformanceDHElementDualKeyMap* _tmp57_;
		PerformanceDHCElement* _tmp58_;
		PerformanceDHElementDualKeyMap* _tmp59_;
		PerformanceDHElementDualKeyMap* _tmp60_;
		gboolean _tmp61_ = FALSE;
		PerformanceDHCElement* _tmp62_;
		PerformanceDHElementDualKeyMap* _tmp63_;
		PerformanceDHElementDualKeyMap* _tmp64_;
#line 680 "gxml-performance.vala"
		g_test_message ("Starting generating document...");
#line 681 "gxml-performance.vala"
		g_test_timer_start ();
#line 682 "gxml-performance.vala"
		_tmp0_ = gxml_tdocument_new ();
#line 682 "gxml-performance.vala"
		d = _tmp0_;
#line 683 "gxml-performance.vala"
		_tmp1_ = performance_dhc_element_new ();
#line 683 "gxml-performance.vala"
		ce = _tmp1_;
#line 8418 "gxml-performance.c"
		{
			gint i = 0;
#line 684 "gxml-performance.vala"
			i = 0;
#line 8423 "gxml-performance.c"
			{
				gboolean _tmp2_ = FALSE;
#line 684 "gxml-performance.vala"
				_tmp2_ = TRUE;
#line 684 "gxml-performance.vala"
				while (TRUE) {
#line 8430 "gxml-performance.c"
					PerformanceDHElement* e1 = NULL;
					PerformanceDHElement* _tmp4_;
					PerformanceDHElement* _tmp5_;
					PerformanceDHElement* _tmp6_;
					gchar* _tmp7_;
					gchar* _tmp8_;
					gchar* _tmp9_;
					gchar* _tmp10_;
					PerformanceDHCElement* _tmp11_;
					PerformanceDHElementDualKeyMap* _tmp12_;
					PerformanceDHElementDualKeyMap* _tmp13_;
					PerformanceDHElement* _tmp14_;
					const gchar* _tmp15_;
					const gchar* _tmp16_;
					PerformanceDHElement* _tmp17_;
					const gchar* _tmp18_;
					const gchar* _tmp19_;
					PerformanceDHElement* _tmp20_;
					PerformanceDHElement* e2 = NULL;
					PerformanceDHElement* _tmp21_;
					PerformanceDHElement* _tmp22_;
					PerformanceDHElement* _tmp23_;
					gchar* _tmp24_;
					gchar* _tmp25_;
					gchar* _tmp26_;
					gchar* _tmp27_;
					PerformanceDHCElement* _tmp28_;
					PerformanceDHElementDualKeyMap* _tmp29_;
					PerformanceDHElementDualKeyMap* _tmp30_;
					PerformanceDHElement* _tmp31_;
					const gchar* _tmp32_;
					const gchar* _tmp33_;
					PerformanceDHElement* _tmp34_;
					const gchar* _tmp35_;
					const gchar* _tmp36_;
					PerformanceDHElement* _tmp37_;
#line 684 "gxml-performance.vala"
					if (!_tmp2_) {
#line 8469 "gxml-performance.c"
						gint _tmp3_;
#line 684 "gxml-performance.vala"
						_tmp3_ = i;
#line 684 "gxml-performance.vala"
						i = _tmp3_ + 1;
#line 8475 "gxml-performance.c"
					}
#line 684 "gxml-performance.vala"
					_tmp2_ = FALSE;
#line 684 "gxml-performance.vala"
					if (!(i < 125000)) {
#line 684 "gxml-performance.vala"
						break;
#line 8483 "gxml-performance.c"
					}
#line 685 "gxml-performance.vala"
					_tmp4_ = performance_dh_element_new ();
#line 685 "gxml-performance.vala"
					e1 = _tmp4_;
#line 686 "gxml-performance.vala"
					_tmp5_ = e1;
#line 686 "gxml-performance.vala"
					performance_dh_element_set_key (_tmp5_, "E1");
#line 687 "gxml-performance.vala"
					_tmp6_ = e1;
#line 687 "gxml-performance.vala"
					_tmp7_ = g_strdup_printf ("%i", i);
#line 687 "gxml-performance.vala"
					_tmp8_ = _tmp7_;
#line 687 "gxml-performance.vala"
					_tmp9_ = g_strconcat ("1E", _tmp8_, NULL);
#line 687 "gxml-performance.vala"
					_tmp10_ = _tmp9_;
#line 687 "gxml-performance.vala"
					performance_dh_element_set_name (_tmp6_, _tmp10_);
#line 687 "gxml-performance.vala"
					_g_free0 (_tmp10_);
#line 687 "gxml-performance.vala"
					_g_free0 (_tmp8_);
#line 688 "gxml-performance.vala"
					_tmp11_ = ce;
#line 688 "gxml-performance.vala"
					_tmp12_ = performance_dhc_element_get_elements1 (_tmp11_);
#line 688 "gxml-performance.vala"
					_tmp13_ = _tmp12_;
#line 688 "gxml-performance.vala"
					_tmp14_ = e1;
#line 688 "gxml-performance.vala"
					_tmp15_ = performance_dh_element_get_key (_tmp14_);
#line 688 "gxml-performance.vala"
					_tmp16_ = _tmp15_;
#line 688 "gxml-performance.vala"
					_tmp17_ = e1;
#line 688 "gxml-performance.vala"
					_tmp18_ = performance_dh_element_get_name (_tmp17_);
#line 688 "gxml-performance.vala"
					_tmp19_ = _tmp18_;
#line 688 "gxml-performance.vala"
					_tmp20_ = e1;
#line 688 "gxml-performance.vala"
					gxml_serializable_dual_key_map_set ((GXmlSerializableDualKeyMap*) _tmp13_, _tmp16_, _tmp19_, _tmp20_);
#line 689 "gxml-performance.vala"
					_tmp21_ = performance_dh_element_new ();
#line 689 "gxml-performance.vala"
					e2 = _tmp21_;
#line 690 "gxml-performance.vala"
					_tmp22_ = e2;
#line 690 "gxml-performance.vala"
					performance_dh_element_set_key (_tmp22_, "E2");
#line 691 "gxml-performance.vala"
					_tmp23_ = e2;
#line 691 "gxml-performance.vala"
					_tmp24_ = g_strdup_printf ("%i", i);
#line 691 "gxml-performance.vala"
					_tmp25_ = _tmp24_;
#line 691 "gxml-performance.vala"
					_tmp26_ = g_strconcat ("2E", _tmp25_, NULL);
#line 691 "gxml-performance.vala"
					_tmp27_ = _tmp26_;
#line 691 "gxml-performance.vala"
					performance_dh_element_set_name (_tmp23_, _tmp27_);
#line 691 "gxml-performance.vala"
					_g_free0 (_tmp27_);
#line 691 "gxml-performance.vala"
					_g_free0 (_tmp25_);
#line 692 "gxml-performance.vala"
					_tmp28_ = ce;
#line 692 "gxml-performance.vala"
					_tmp29_ = performance_dhc_element_get_elements2 (_tmp28_);
#line 692 "gxml-performance.vala"
					_tmp30_ = _tmp29_;
#line 692 "gxml-performance.vala"
					_tmp31_ = e2;
#line 692 "gxml-performance.vala"
					_tmp32_ = performance_dh_element_get_key (_tmp31_);
#line 692 "gxml-performance.vala"
					_tmp33_ = _tmp32_;
#line 692 "gxml-performance.vala"
					_tmp34_ = e2;
#line 692 "gxml-performance.vala"
					_tmp35_ = performance_dh_element_get_name (_tmp34_);
#line 692 "gxml-performance.vala"
					_tmp36_ = _tmp35_;
#line 692 "gxml-performance.vala"
					_tmp37_ = e2;
#line 692 "gxml-performance.vala"
					gxml_serializable_dual_key_map_set ((GXmlSerializableDualKeyMap*) _tmp30_, _tmp33_, _tmp36_, _tmp37_);
#line 684 "gxml-performance.vala"
					_g_object_unref0 (e2);
#line 684 "gxml-performance.vala"
					_g_object_unref0 (e1);
#line 8581 "gxml-performance.c"
				}
			}
		}
#line 694 "gxml-performance.vala"
		_tmp38_ = ce;
#line 694 "gxml-performance.vala"
		_tmp39_ = d;
#line 694 "gxml-performance.vala"
		_tmp40_ = gxml_serializable_object_model_serialize ((GXmlSerializableObjectModel*) _tmp38_, (GXmlNode*) _tmp39_, &_inner_error0_);
#line 694 "gxml-performance.vala"
		_tmp41_ = _tmp40_;
#line 694 "gxml-performance.vala"
		_g_object_unref0 (_tmp41_);
#line 694 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 694 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 694 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 8601 "gxml-performance.c"
			goto __catch241_g_error;
		}
#line 695 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 696 "gxml-performance.vala"
		g_test_minimized_result (time, "Created document: %g seconds", time);
#line 697 "gxml-performance.vala"
		g_test_message ("Starting deserializing document: Disable collection deserialization...");
#line 698 "gxml-performance.vala"
		g_test_timer_start ();
#line 699 "gxml-performance.vala"
		_tmp42_ = performance_dhc_element_new ();
#line 699 "gxml-performance.vala"
		cep = _tmp42_;
#line 700 "gxml-performance.vala"
		_tmp43_ = cep;
#line 700 "gxml-performance.vala"
		_tmp44_ = performance_dhc_element_get_elements1 (_tmp43_);
#line 700 "gxml-performance.vala"
		_tmp45_ = _tmp44_;
#line 700 "gxml-performance.vala"
		performance_dh_element_dual_key_map_set_enable_deserialize (_tmp45_, FALSE);
#line 701 "gxml-performance.vala"
		_tmp46_ = cep;
#line 701 "gxml-performance.vala"
		_tmp47_ = performance_dhc_element_get_elements2 (_tmp46_);
#line 701 "gxml-performance.vala"
		_tmp48_ = _tmp47_;
#line 701 "gxml-performance.vala"
		performance_dh_element_dual_key_map_set_enable_deserialize (_tmp48_, FALSE);
#line 702 "gxml-performance.vala"
		_tmp49_ = cep;
#line 702 "gxml-performance.vala"
		_tmp50_ = d;
#line 702 "gxml-performance.vala"
		gxml_serializable_object_model_deserialize ((GXmlSerializableObjectModel*) _tmp49_, (GXmlNode*) _tmp50_, &_inner_error0_);
#line 702 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 702 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 702 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 702 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 8646 "gxml-performance.c"
			goto __catch241_g_error;
		}
#line 703 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 704 "gxml-performance.vala"
		g_test_minimized_result (time, "Disable Deserialize Collection. Deserialized from doc: %g seconds", time);
#line 705 "gxml-performance.vala"
		g_test_message ("Calling C1 deserialize_children()...");
#line 706 "gxml-performance.vala"
		g_test_timer_start ();
#line 707 "gxml-performance.vala"
		_tmp51_ = cep;
#line 707 "gxml-performance.vala"
		_tmp52_ = performance_dhc_element_get_elements1 (_tmp51_);
#line 707 "gxml-performance.vala"
		_tmp53_ = _tmp52_;
#line 707 "gxml-performance.vala"
		gxml_serializable_dual_key_map_deserialize_children ((GXmlSerializableDualKeyMap*) _tmp53_, &_inner_error0_);
#line 707 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 707 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 707 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 707 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 8673 "gxml-performance.c"
			goto __catch241_g_error;
		}
#line 708 "gxml-performance.vala"
		_tmp55_ = cep;
#line 708 "gxml-performance.vala"
		_tmp56_ = performance_dhc_element_get_elements1 (_tmp55_);
#line 708 "gxml-performance.vala"
		_tmp57_ = _tmp56_;
#line 708 "gxml-performance.vala"
		_tmp54_ = gxml_serializable_dual_key_map_deserialize_children ((GXmlSerializableDualKeyMap*) _tmp57_, &_inner_error0_);
#line 708 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 708 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 708 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 708 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 8692 "gxml-performance.c"
			goto __catch241_g_error;
		}
#line 708 "gxml-performance.vala"
		_vala_assert (!_tmp54_, "!cep.elements1.deserialize_children ()");
#line 709 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 710 "gxml-performance.vala"
		g_test_minimized_result (time, "C1: Disable Deserialize Collection. Deserialized from NODE: %g seconds", time);
#line 711 "gxml-performance.vala"
		g_test_message ("Calling C2 deserialize_children()...");
#line 712 "gxml-performance.vala"
		g_test_timer_start ();
#line 713 "gxml-performance.vala"
		_tmp58_ = cep;
#line 713 "gxml-performance.vala"
		_tmp59_ = performance_dhc_element_get_elements2 (_tmp58_);
#line 713 "gxml-performance.vala"
		_tmp60_ = _tmp59_;
#line 713 "gxml-performance.vala"
		gxml_serializable_dual_key_map_deserialize_children ((GXmlSerializableDualKeyMap*) _tmp60_, &_inner_error0_);
#line 713 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 713 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 713 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 713 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 8721 "gxml-performance.c"
			goto __catch241_g_error;
		}
#line 714 "gxml-performance.vala"
		_tmp62_ = cep;
#line 714 "gxml-performance.vala"
		_tmp63_ = performance_dhc_element_get_elements2 (_tmp62_);
#line 714 "gxml-performance.vala"
		_tmp64_ = _tmp63_;
#line 714 "gxml-performance.vala"
		_tmp61_ = gxml_serializable_dual_key_map_deserialize_children ((GXmlSerializableDualKeyMap*) _tmp64_, &_inner_error0_);
#line 714 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 714 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 714 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 714 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 8740 "gxml-performance.c"
			goto __catch241_g_error;
		}
#line 714 "gxml-performance.vala"
		_vala_assert (!_tmp61_, "!cep.elements2.deserialize_children ()");
#line 715 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 716 "gxml-performance.vala"
		g_test_minimized_result (time, "C2: Disable Deserialize Collection. Deserialized from NODE: %g seconds", time);
#line 678 "gxml-performance.vala"
		_g_object_unref0 (cep);
#line 678 "gxml-performance.vala"
		_g_object_unref0 (ce);
#line 678 "gxml-performance.vala"
		_g_object_unref0 (d);
#line 8755 "gxml-performance.c"
	}
	goto __finally241;
	__catch241_g_error:
	{
		GError* e = NULL;
		const gchar* _tmp65_;
		gchar* _tmp66_;
		gchar* _tmp67_;
#line 678 "gxml-performance.vala"
		e = _inner_error0_;
#line 678 "gxml-performance.vala"
		_inner_error0_ = NULL;
#line 718 "gxml-performance.vala"
		_tmp65_ = e->message;
#line 718 "gxml-performance.vala"
		_tmp66_ = g_strconcat ("ERROR: ", _tmp65_, NULL);
#line 718 "gxml-performance.vala"
		_tmp67_ = _tmp66_;
#line 718 "gxml-performance.vala"
		g_message ("gxml-performance.vala:718: %s", _tmp67_);
#line 718 "gxml-performance.vala"
		_g_free0 (_tmp67_);
#line 719 "gxml-performance.vala"
		g_assert_not_reached ();
#line 678 "gxml-performance.vala"
		_g_error_free0 (e);
#line 8782 "gxml-performance.c"
	}
	__finally241:
#line 678 "gxml-performance.vala"
	if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 678 "gxml-performance.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
#line 678 "gxml-performance.vala"
		g_clear_error (&_inner_error0_);
#line 678 "gxml-performance.vala"
		return;
#line 8793 "gxml-performance.c"
	}
}

static void
___lambda183__gtest_func (void)
{
#line 676 "gxml-performance.vala"
	__lambda183_ ();
#line 8802 "gxml-performance.c"
}

static void
__lambda184_ (void)
{
	GError* _inner_error0_ = NULL;
	{
		gdouble time = 0.0;
		GXmlTDocument* d = NULL;
		GXmlTDocument* _tmp0_;
		PerformanceDHCElement* ce = NULL;
		PerformanceDHCElement* _tmp1_;
		PerformanceDHCElement* _tmp36_;
		GXmlTDocument* _tmp37_;
		GXmlNode* _tmp38_;
		GXmlNode* _tmp39_;
		PerformanceDHCElement* cep = NULL;
		PerformanceDHCElement* _tmp40_;
		PerformanceDHCElement* _tmp41_;
		PerformanceDHElementDualKeyMap* _tmp42_;
		PerformanceDHElementDualKeyMap* _tmp43_;
		PerformanceDHCElement* _tmp44_;
		PerformanceDHElementDualKeyMap* _tmp45_;
		PerformanceDHElementDualKeyMap* _tmp46_;
		PerformanceDHCElement* _tmp47_;
		GXmlTDocument* _tmp48_;
		gboolean _tmp49_ = FALSE;
		PerformanceDHCElement* _tmp50_;
		PerformanceDHElementDualKeyMap* _tmp51_;
		PerformanceDHElementDualKeyMap* _tmp52_;
		gboolean _tmp53_ = FALSE;
		PerformanceDHCElement* _tmp54_;
		PerformanceDHElementDualKeyMap* _tmp55_;
		PerformanceDHElementDualKeyMap* _tmp56_;
#line 726 "gxml-performance.vala"
		g_test_message ("Starting generating document...");
#line 727 "gxml-performance.vala"
		g_test_timer_start ();
#line 728 "gxml-performance.vala"
		_tmp0_ = gxml_tdocument_new ();
#line 728 "gxml-performance.vala"
		d = _tmp0_;
#line 729 "gxml-performance.vala"
		_tmp1_ = performance_dhc_element_new ();
#line 729 "gxml-performance.vala"
		ce = _tmp1_;
#line 8849 "gxml-performance.c"
		{
			gint i = 0;
#line 730 "gxml-performance.vala"
			i = 0;
#line 8854 "gxml-performance.c"
			{
				gboolean _tmp2_ = FALSE;
#line 730 "gxml-performance.vala"
				_tmp2_ = TRUE;
#line 730 "gxml-performance.vala"
				while (TRUE) {
#line 8861 "gxml-performance.c"
					PerformanceDHElement* e1 = NULL;
					PerformanceDHElement* _tmp4_;
					PerformanceDHElement* _tmp5_;
					gchar* _tmp6_;
					gchar* _tmp7_;
					gchar* _tmp8_;
					gchar* _tmp9_;
					PerformanceDHCElement* _tmp10_;
					PerformanceDHElementDualKeyMap* _tmp11_;
					PerformanceDHElementDualKeyMap* _tmp12_;
					PerformanceDHElement* _tmp13_;
					const gchar* _tmp14_;
					const gchar* _tmp15_;
					PerformanceDHElement* _tmp16_;
					const gchar* _tmp17_;
					const gchar* _tmp18_;
					PerformanceDHElement* _tmp19_;
					PerformanceDHElement* e2 = NULL;
					PerformanceDHElement* _tmp20_;
					PerformanceDHElement* _tmp21_;
					gchar* _tmp22_;
					gchar* _tmp23_;
					gchar* _tmp24_;
					gchar* _tmp25_;
					PerformanceDHCElement* _tmp26_;
					PerformanceDHElementDualKeyMap* _tmp27_;
					PerformanceDHElementDualKeyMap* _tmp28_;
					PerformanceDHElement* _tmp29_;
					const gchar* _tmp30_;
					const gchar* _tmp31_;
					PerformanceDHElement* _tmp32_;
					const gchar* _tmp33_;
					const gchar* _tmp34_;
					PerformanceDHElement* _tmp35_;
#line 730 "gxml-performance.vala"
					if (!_tmp2_) {
#line 8898 "gxml-performance.c"
						gint _tmp3_;
#line 730 "gxml-performance.vala"
						_tmp3_ = i;
#line 730 "gxml-performance.vala"
						i = _tmp3_ + 1;
#line 8904 "gxml-performance.c"
					}
#line 730 "gxml-performance.vala"
					_tmp2_ = FALSE;
#line 730 "gxml-performance.vala"
					if (!(i < 125000)) {
#line 730 "gxml-performance.vala"
						break;
#line 8912 "gxml-performance.c"
					}
#line 731 "gxml-performance.vala"
					_tmp4_ = performance_dh_element_new ();
#line 731 "gxml-performance.vala"
					e1 = _tmp4_;
#line 732 "gxml-performance.vala"
					_tmp5_ = e1;
#line 732 "gxml-performance.vala"
					_tmp6_ = g_strdup_printf ("%i", i);
#line 732 "gxml-performance.vala"
					_tmp7_ = _tmp6_;
#line 732 "gxml-performance.vala"
					_tmp8_ = g_strconcat ("1E", _tmp7_, NULL);
#line 732 "gxml-performance.vala"
					_tmp9_ = _tmp8_;
#line 732 "gxml-performance.vala"
					performance_dh_element_set_name (_tmp5_, _tmp9_);
#line 732 "gxml-performance.vala"
					_g_free0 (_tmp9_);
#line 732 "gxml-performance.vala"
					_g_free0 (_tmp7_);
#line 733 "gxml-performance.vala"
					_tmp10_ = ce;
#line 733 "gxml-performance.vala"
					_tmp11_ = performance_dhc_element_get_elements1 (_tmp10_);
#line 733 "gxml-performance.vala"
					_tmp12_ = _tmp11_;
#line 733 "gxml-performance.vala"
					_tmp13_ = e1;
#line 733 "gxml-performance.vala"
					_tmp14_ = performance_dh_element_get_key (_tmp13_);
#line 733 "gxml-performance.vala"
					_tmp15_ = _tmp14_;
#line 733 "gxml-performance.vala"
					_tmp16_ = e1;
#line 733 "gxml-performance.vala"
					_tmp17_ = performance_dh_element_get_name (_tmp16_);
#line 733 "gxml-performance.vala"
					_tmp18_ = _tmp17_;
#line 733 "gxml-performance.vala"
					_tmp19_ = e1;
#line 733 "gxml-performance.vala"
					gxml_serializable_dual_key_map_set ((GXmlSerializableDualKeyMap*) _tmp12_, _tmp15_, _tmp18_, _tmp19_);
#line 734 "gxml-performance.vala"
					_tmp20_ = performance_dh_element_new ();
#line 734 "gxml-performance.vala"
					e2 = _tmp20_;
#line 735 "gxml-performance.vala"
					_tmp21_ = e2;
#line 735 "gxml-performance.vala"
					_tmp22_ = g_strdup_printf ("%i", i);
#line 735 "gxml-performance.vala"
					_tmp23_ = _tmp22_;
#line 735 "gxml-performance.vala"
					_tmp24_ = g_strconcat ("2E", _tmp23_, NULL);
#line 735 "gxml-performance.vala"
					_tmp25_ = _tmp24_;
#line 735 "gxml-performance.vala"
					performance_dh_element_set_name (_tmp21_, _tmp25_);
#line 735 "gxml-performance.vala"
					_g_free0 (_tmp25_);
#line 735 "gxml-performance.vala"
					_g_free0 (_tmp23_);
#line 736 "gxml-performance.vala"
					_tmp26_ = ce;
#line 736 "gxml-performance.vala"
					_tmp27_ = performance_dhc_element_get_elements2 (_tmp26_);
#line 736 "gxml-performance.vala"
					_tmp28_ = _tmp27_;
#line 736 "gxml-performance.vala"
					_tmp29_ = e2;
#line 736 "gxml-performance.vala"
					_tmp30_ = performance_dh_element_get_key (_tmp29_);
#line 736 "gxml-performance.vala"
					_tmp31_ = _tmp30_;
#line 736 "gxml-performance.vala"
					_tmp32_ = e2;
#line 736 "gxml-performance.vala"
					_tmp33_ = performance_dh_element_get_name (_tmp32_);
#line 736 "gxml-performance.vala"
					_tmp34_ = _tmp33_;
#line 736 "gxml-performance.vala"
					_tmp35_ = e2;
#line 736 "gxml-performance.vala"
					gxml_serializable_dual_key_map_set ((GXmlSerializableDualKeyMap*) _tmp28_, _tmp31_, _tmp34_, _tmp35_);
#line 730 "gxml-performance.vala"
					_g_object_unref0 (e2);
#line 730 "gxml-performance.vala"
					_g_object_unref0 (e1);
#line 9002 "gxml-performance.c"
				}
			}
		}
#line 738 "gxml-performance.vala"
		_tmp36_ = ce;
#line 738 "gxml-performance.vala"
		_tmp37_ = d;
#line 738 "gxml-performance.vala"
		_tmp38_ = gxml_serializable_object_model_serialize ((GXmlSerializableObjectModel*) _tmp36_, (GXmlNode*) _tmp37_, &_inner_error0_);
#line 738 "gxml-performance.vala"
		_tmp39_ = _tmp38_;
#line 738 "gxml-performance.vala"
		_g_object_unref0 (_tmp39_);
#line 738 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 738 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 738 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 9022 "gxml-performance.c"
			goto __catch242_g_error;
		}
#line 739 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 740 "gxml-performance.vala"
		g_test_minimized_result (time, "Created document: %g seconds", time);
#line 741 "gxml-performance.vala"
		g_test_message ("Starting deserializing document: Enable collection deserialization...");
#line 742 "gxml-performance.vala"
		g_test_timer_start ();
#line 743 "gxml-performance.vala"
		_tmp40_ = performance_dhc_element_new ();
#line 743 "gxml-performance.vala"
		cep = _tmp40_;
#line 744 "gxml-performance.vala"
		_tmp41_ = cep;
#line 744 "gxml-performance.vala"
		_tmp42_ = performance_dhc_element_get_elements1 (_tmp41_);
#line 744 "gxml-performance.vala"
		_tmp43_ = _tmp42_;
#line 744 "gxml-performance.vala"
		performance_dh_element_dual_key_map_set_enable_deserialize (_tmp43_, TRUE);
#line 745 "gxml-performance.vala"
		_tmp44_ = cep;
#line 745 "gxml-performance.vala"
		_tmp45_ = performance_dhc_element_get_elements2 (_tmp44_);
#line 745 "gxml-performance.vala"
		_tmp46_ = _tmp45_;
#line 745 "gxml-performance.vala"
		performance_dh_element_dual_key_map_set_enable_deserialize (_tmp46_, TRUE);
#line 746 "gxml-performance.vala"
		_tmp47_ = cep;
#line 746 "gxml-performance.vala"
		_tmp48_ = d;
#line 746 "gxml-performance.vala"
		gxml_serializable_object_model_deserialize ((GXmlSerializableObjectModel*) _tmp47_, (GXmlNode*) _tmp48_, &_inner_error0_);
#line 746 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 746 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 746 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 746 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 9067 "gxml-performance.c"
			goto __catch242_g_error;
		}
#line 747 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 748 "gxml-performance.vala"
		g_test_minimized_result (time, "Disable Deserialize Collection. Deserialized from doc: %g seconds", time);
#line 749 "gxml-performance.vala"
		_tmp50_ = cep;
#line 749 "gxml-performance.vala"
		_tmp51_ = performance_dhc_element_get_elements1 (_tmp50_);
#line 749 "gxml-performance.vala"
		_tmp52_ = _tmp51_;
#line 749 "gxml-performance.vala"
		_tmp49_ = gxml_serializable_dual_key_map_deserialize_children ((GXmlSerializableDualKeyMap*) _tmp52_, &_inner_error0_);
#line 749 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 749 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 749 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 749 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 9090 "gxml-performance.c"
			goto __catch242_g_error;
		}
#line 749 "gxml-performance.vala"
		_vala_assert (!_tmp49_, "!cep.elements1.deserialize_children ()");
#line 750 "gxml-performance.vala"
		_tmp54_ = cep;
#line 750 "gxml-performance.vala"
		_tmp55_ = performance_dhc_element_get_elements2 (_tmp54_);
#line 750 "gxml-performance.vala"
		_tmp56_ = _tmp55_;
#line 750 "gxml-performance.vala"
		_tmp53_ = gxml_serializable_dual_key_map_deserialize_children ((GXmlSerializableDualKeyMap*) _tmp56_, &_inner_error0_);
#line 750 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 750 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 750 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 750 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 9111 "gxml-performance.c"
			goto __catch242_g_error;
		}
#line 750 "gxml-performance.vala"
		_vala_assert (!_tmp53_, "!cep.elements2.deserialize_children ()");
#line 724 "gxml-performance.vala"
		_g_object_unref0 (cep);
#line 724 "gxml-performance.vala"
		_g_object_unref0 (ce);
#line 724 "gxml-performance.vala"
		_g_object_unref0 (d);
#line 9122 "gxml-performance.c"
	}
	goto __finally242;
	__catch242_g_error:
	{
		GError* e = NULL;
		const gchar* _tmp57_;
		gchar* _tmp58_;
		gchar* _tmp59_;
#line 724 "gxml-performance.vala"
		e = _inner_error0_;
#line 724 "gxml-performance.vala"
		_inner_error0_ = NULL;
#line 752 "gxml-performance.vala"
		_tmp57_ = e->message;
#line 752 "gxml-performance.vala"
		_tmp58_ = g_strconcat ("ERROR: ", _tmp57_, NULL);
#line 752 "gxml-performance.vala"
		_tmp59_ = _tmp58_;
#line 752 "gxml-performance.vala"
		g_message ("gxml-performance.vala:752: %s", _tmp59_);
#line 752 "gxml-performance.vala"
		_g_free0 (_tmp59_);
#line 753 "gxml-performance.vala"
		g_assert_not_reached ();
#line 724 "gxml-performance.vala"
		_g_error_free0 (e);
#line 9149 "gxml-performance.c"
	}
	__finally242:
#line 724 "gxml-performance.vala"
	if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 724 "gxml-performance.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
#line 724 "gxml-performance.vala"
		g_clear_error (&_inner_error0_);
#line 724 "gxml-performance.vala"
		return;
#line 9160 "gxml-performance.c"
	}
}

static void
___lambda184__gtest_func (void)
{
#line 722 "gxml-performance.vala"
	__lambda184_ ();
#line 9169 "gxml-performance.c"
}

static void
__lambda185_ (void)
{
	GError* _inner_error0_ = NULL;
	{
		GFile* f = NULL;
		GFile* _tmp0_;
		GFile* _tmp1_;
		gdouble time = 0.0;
		GXmlGDocument* d = NULL;
		GXmlGDocument* _tmp3_;
		PerformanceHTopElement* ce = NULL;
		PerformanceHTopElement* _tmp4_;
		PerformanceHTopElement* _tmp37_;
		PerformanceHcpElement* _tmp38_;
		PerformanceHcpElement* _tmp39_;
		PerformanceHElementHashMap* _tmp40_;
		PerformanceHElementHashMap* _tmp41_;
		gint _tmp42_;
		gint _tmp43_;
		PerformanceHTopElement* _tmp44_;
		PerformanceHcsElement* _tmp45_;
		PerformanceHcsElement* _tmp46_;
		PerformanceHElementHashMap* _tmp47_;
		PerformanceHElementHashMap* _tmp48_;
		gint _tmp49_;
		gint _tmp50_;
		PerformanceHTopElement* _tmp51_;
		GXmlGDocument* _tmp52_;
		GXmlNode* _tmp53_;
		GXmlNode* _tmp54_;
		GXmlGDocument* _tmp55_;
		GFile* _tmp56_;
		GXmlGDocument* _tmp57_;
		GXmlNode* _tmp58_;
		GXmlNode* _tmp59_;
		GXmlNode* _tmp60_;
		GXmlGDocument* _tmp61_;
		GXmlNode* _tmp62_;
		GXmlNode* _tmp63_;
		GXmlNode* _tmp64_;
		GeeBidirList* _tmp65_;
		GeeBidirList* _tmp66_;
		GeeBidirList* _tmp67_;
		gint _tmp68_;
		gint _tmp69_;
		GXmlGDocument* _tmp70_;
		GXmlNode* _tmp71_;
		GXmlNode* _tmp72_;
		GXmlNode* _tmp73_;
		GeeBidirList* _tmp74_;
		GeeBidirList* _tmp75_;
		GeeBidirList* _tmp76_;
		gpointer _tmp77_;
		GXmlNode* _tmp78_;
		GeeBidirList* _tmp79_;
		GeeBidirList* _tmp80_;
		GeeBidirList* _tmp81_;
		gint _tmp82_;
		gint _tmp83_;
		GXmlGDocument* _tmp84_;
		GXmlNode* _tmp85_;
		GXmlNode* _tmp86_;
		GXmlNode* _tmp87_;
		GeeBidirList* _tmp88_;
		GeeBidirList* _tmp89_;
		GeeBidirList* _tmp90_;
		gpointer _tmp91_;
		GXmlNode* _tmp92_;
		GeeBidirList* _tmp93_;
		GeeBidirList* _tmp94_;
		GeeBidirList* _tmp95_;
		gint _tmp96_;
		gint _tmp97_;
		GXmlGDocument* gd = NULL;
		GXmlGDocument* _tmp98_;
		PerformanceHTopElement* cep = NULL;
		PerformanceHTopElement* _tmp99_;
		PerformanceHTopElement* _tmp100_;
		PerformanceHcpElement* _tmp101_;
		PerformanceHcpElement* _tmp102_;
		PerformanceHElementHashMap* _tmp103_;
		PerformanceHElementHashMap* _tmp104_;
		PerformanceHTopElement* _tmp105_;
		PerformanceHcsElement* _tmp106_;
		PerformanceHcsElement* _tmp107_;
		PerformanceHElementHashMap* _tmp108_;
		PerformanceHElementHashMap* _tmp109_;
		PerformanceHTopElement* _tmp110_;
		GXmlGDocument* _tmp111_;
		PerformanceHTopElement* _tmp112_;
		PerformanceHcpElement* _tmp113_;
		PerformanceHcpElement* _tmp114_;
		PerformanceHElementHashMap* _tmp115_;
		PerformanceHElementHashMap* _tmp116_;
		gint _tmp117_;
		gint _tmp118_;
		PerformanceHTopElement* _tmp119_;
		PerformanceHcsElement* _tmp120_;
		PerformanceHcsElement* _tmp121_;
		PerformanceHElementHashMap* _tmp122_;
		PerformanceHElementHashMap* _tmp123_;
		gint _tmp124_;
		gint _tmp125_;
		gboolean _tmp126_ = FALSE;
		PerformanceHTopElement* _tmp127_;
		PerformanceHcpElement* _tmp128_;
		PerformanceHcpElement* _tmp129_;
		PerformanceHElementHashMap* _tmp130_;
		PerformanceHElementHashMap* _tmp131_;
		PerformanceHTopElement* _tmp132_;
		PerformanceHcpElement* _tmp133_;
		PerformanceHcpElement* _tmp134_;
		PerformanceHElementHashMap* _tmp135_;
		PerformanceHElementHashMap* _tmp136_;
		gint _tmp137_;
		gint _tmp138_;
		gboolean _tmp139_ = FALSE;
		PerformanceHTopElement* _tmp140_;
		PerformanceHcpElement* _tmp141_;
		PerformanceHcpElement* _tmp142_;
		PerformanceHElementHashMap* _tmp143_;
		PerformanceHElementHashMap* _tmp144_;
		PerformanceHTopElement* _tmp145_;
		PerformanceHcsElement* _tmp146_;
		PerformanceHcsElement* _tmp147_;
		PerformanceHElementHashMap* _tmp148_;
		PerformanceHElementHashMap* _tmp149_;
		gboolean _tmp150_ = FALSE;
		PerformanceHTopElement* _tmp151_;
		PerformanceHcsElement* _tmp152_;
		PerformanceHcsElement* _tmp153_;
		PerformanceHElementHashMap* _tmp154_;
		PerformanceHElementHashMap* _tmp155_;
		GFile* _tmp156_;
#line 759 "gxml-performance.vala"
		_tmp0_ = g_file_new_for_path (TEST_SAVE_DIR "/post-des-test-file.xml");
#line 759 "gxml-performance.vala"
		f = _tmp0_;
#line 760 "gxml-performance.vala"
		_tmp1_ = f;
#line 760 "gxml-performance.vala"
		if (g_file_query_exists (_tmp1_, NULL)) {
#line 9315 "gxml-performance.c"
			GFile* _tmp2_;
#line 760 "gxml-performance.vala"
			_tmp2_ = f;
#line 760 "gxml-performance.vala"
			g_file_delete (_tmp2_, NULL, &_inner_error0_);
#line 760 "gxml-performance.vala"
			if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 760 "gxml-performance.vala"
				_g_object_unref0 (f);
#line 9325 "gxml-performance.c"
				goto __catch243_g_error;
			}
		}
#line 762 "gxml-performance.vala"
		g_test_message ("Starting generating document...");
#line 763 "gxml-performance.vala"
		g_test_timer_start ();
#line 764 "gxml-performance.vala"
		_tmp3_ = gxml_gdocument_new ();
#line 764 "gxml-performance.vala"
		d = _tmp3_;
#line 765 "gxml-performance.vala"
		_tmp4_ = performance_htop_element_new ();
#line 765 "gxml-performance.vala"
		ce = _tmp4_;
#line 9341 "gxml-performance.c"
		{
			gint i = 0;
#line 766 "gxml-performance.vala"
			i = 0;
#line 9346 "gxml-performance.c"
			{
				gboolean _tmp5_ = FALSE;
#line 766 "gxml-performance.vala"
				_tmp5_ = TRUE;
#line 766 "gxml-performance.vala"
				while (TRUE) {
#line 9353 "gxml-performance.c"
					PerformanceHElement* e1 = NULL;
					PerformanceHElement* _tmp7_;
					PerformanceHElement* _tmp8_;
					gchar* _tmp9_;
					gchar* _tmp10_;
					gchar* _tmp11_;
					gchar* _tmp12_;
					PerformanceHTopElement* _tmp13_;
					PerformanceHcpElement* _tmp14_;
					PerformanceHcpElement* _tmp15_;
					PerformanceHElementHashMap* _tmp16_;
					PerformanceHElementHashMap* _tmp17_;
					PerformanceHElement* _tmp18_;
					const gchar* _tmp19_;
					const gchar* _tmp20_;
					PerformanceHElement* _tmp21_;
					PerformanceHElement* e2 = NULL;
					PerformanceHElement* _tmp22_;
					PerformanceHElement* _tmp23_;
					gchar* _tmp24_;
					gchar* _tmp25_;
					gchar* _tmp26_;
					gchar* _tmp27_;
					PerformanceHTopElement* _tmp28_;
					PerformanceHcsElement* _tmp29_;
					PerformanceHcsElement* _tmp30_;
					PerformanceHElementHashMap* _tmp31_;
					PerformanceHElementHashMap* _tmp32_;
					PerformanceHElement* _tmp33_;
					const gchar* _tmp34_;
					const gchar* _tmp35_;
					PerformanceHElement* _tmp36_;
#line 766 "gxml-performance.vala"
					if (!_tmp5_) {
#line 9388 "gxml-performance.c"
						gint _tmp6_;
#line 766 "gxml-performance.vala"
						_tmp6_ = i;
#line 766 "gxml-performance.vala"
						i = _tmp6_ + 1;
#line 9394 "gxml-performance.c"
					}
#line 766 "gxml-performance.vala"
					_tmp5_ = FALSE;
#line 766 "gxml-performance.vala"
					if (!(i < 30000)) {
#line 766 "gxml-performance.vala"
						break;
#line 9402 "gxml-performance.c"
					}
#line 767 "gxml-performance.vala"
					_tmp7_ = performance_helement_new ();
#line 767 "gxml-performance.vala"
					e1 = _tmp7_;
#line 768 "gxml-performance.vala"
					_tmp8_ = e1;
#line 768 "gxml-performance.vala"
					_tmp9_ = g_strdup_printf ("%i", i);
#line 768 "gxml-performance.vala"
					_tmp10_ = _tmp9_;
#line 768 "gxml-performance.vala"
					_tmp11_ = g_strconcat ("1E", _tmp10_, NULL);
#line 768 "gxml-performance.vala"
					_tmp12_ = _tmp11_;
#line 768 "gxml-performance.vala"
					performance_helement_set_name (_tmp8_, _tmp12_);
#line 768 "gxml-performance.vala"
					_g_free0 (_tmp12_);
#line 768 "gxml-performance.vala"
					_g_free0 (_tmp10_);
#line 769 "gxml-performance.vala"
					_tmp13_ = ce;
#line 769 "gxml-performance.vala"
					_tmp14_ = performance_htop_element_get_elements1 (_tmp13_);
#line 769 "gxml-performance.vala"
					_tmp15_ = _tmp14_;
#line 769 "gxml-performance.vala"
					_tmp16_ = performance_hcp_element_get_elements (_tmp15_);
#line 769 "gxml-performance.vala"
					_tmp17_ = _tmp16_;
#line 769 "gxml-performance.vala"
					_tmp18_ = e1;
#line 769 "gxml-performance.vala"
					_tmp19_ = performance_helement_get_name (_tmp18_);
#line 769 "gxml-performance.vala"
					_tmp20_ = _tmp19_;
#line 769 "gxml-performance.vala"
					_tmp21_ = e1;
#line 769 "gxml-performance.vala"
					gee_abstract_map_set ((GeeAbstractMap*) _tmp17_, _tmp20_, _tmp21_);
#line 770 "gxml-performance.vala"
					_tmp22_ = performance_helement_new ();
#line 770 "gxml-performance.vala"
					e2 = _tmp22_;
#line 771 "gxml-performance.vala"
					_tmp23_ = e2;
#line 771 "gxml-performance.vala"
					_tmp24_ = g_strdup_printf ("%i", i);
#line 771 "gxml-performance.vala"
					_tmp25_ = _tmp24_;
#line 771 "gxml-performance.vala"
					_tmp26_ = g_strconcat ("2E", _tmp25_, NULL);
#line 771 "gxml-performance.vala"
					_tmp27_ = _tmp26_;
#line 771 "gxml-performance.vala"
					performance_helement_set_name (_tmp23_, _tmp27_);
#line 771 "gxml-performance.vala"
					_g_free0 (_tmp27_);
#line 771 "gxml-performance.vala"
					_g_free0 (_tmp25_);
#line 772 "gxml-performance.vala"
					_tmp28_ = ce;
#line 772 "gxml-performance.vala"
					_tmp29_ = performance_htop_element_get_elements2 (_tmp28_);
#line 772 "gxml-performance.vala"
					_tmp30_ = _tmp29_;
#line 772 "gxml-performance.vala"
					_tmp31_ = performance_hcs_element_get_elements (_tmp30_);
#line 772 "gxml-performance.vala"
					_tmp32_ = _tmp31_;
#line 772 "gxml-performance.vala"
					_tmp33_ = e2;
#line 772 "gxml-performance.vala"
					_tmp34_ = performance_helement_get_name (_tmp33_);
#line 772 "gxml-performance.vala"
					_tmp35_ = _tmp34_;
#line 772 "gxml-performance.vala"
					_tmp36_ = e2;
#line 772 "gxml-performance.vala"
					gee_abstract_map_set ((GeeAbstractMap*) _tmp32_, _tmp35_, _tmp36_);
#line 766 "gxml-performance.vala"
					_g_object_unref0 (e2);
#line 766 "gxml-performance.vala"
					_g_object_unref0 (e1);
#line 9488 "gxml-performance.c"
				}
			}
		}
#line 774 "gxml-performance.vala"
		_tmp37_ = ce;
#line 774 "gxml-performance.vala"
		_tmp38_ = performance_htop_element_get_elements1 (_tmp37_);
#line 774 "gxml-performance.vala"
		_tmp39_ = _tmp38_;
#line 774 "gxml-performance.vala"
		_tmp40_ = performance_hcp_element_get_elements (_tmp39_);
#line 774 "gxml-performance.vala"
		_tmp41_ = _tmp40_;
#line 774 "gxml-performance.vala"
		_tmp42_ = gee_abstract_map_get_size ((GeeAbstractMap*) _tmp41_);
#line 774 "gxml-performance.vala"
		_tmp43_ = _tmp42_;
#line 774 "gxml-performance.vala"
		_vala_assert (_tmp43_ == 30000, "ce.elements1.elements.size == 30000");
#line 775 "gxml-performance.vala"
		_tmp44_ = ce;
#line 775 "gxml-performance.vala"
		_tmp45_ = performance_htop_element_get_elements2 (_tmp44_);
#line 775 "gxml-performance.vala"
		_tmp46_ = _tmp45_;
#line 775 "gxml-performance.vala"
		_tmp47_ = performance_hcs_element_get_elements (_tmp46_);
#line 775 "gxml-performance.vala"
		_tmp48_ = _tmp47_;
#line 775 "gxml-performance.vala"
		_tmp49_ = gee_abstract_map_get_size ((GeeAbstractMap*) _tmp48_);
#line 775 "gxml-performance.vala"
		_tmp50_ = _tmp49_;
#line 775 "gxml-performance.vala"
		_vala_assert (_tmp50_ == 30000, "ce.elements2.elements.size == 30000");
#line 776 "gxml-performance.vala"
		_tmp51_ = ce;
#line 776 "gxml-performance.vala"
		_tmp52_ = d;
#line 776 "gxml-performance.vala"
		_tmp53_ = gxml_serializable_object_model_serialize ((GXmlSerializableObjectModel*) _tmp51_, (GXmlNode*) _tmp52_, &_inner_error0_);
#line 776 "gxml-performance.vala"
		_tmp54_ = _tmp53_;
#line 776 "gxml-performance.vala"
		_g_object_unref0 (_tmp54_);
#line 776 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 776 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 776 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 776 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 9542 "gxml-performance.c"
			goto __catch243_g_error;
		}
#line 777 "gxml-performance.vala"
		_tmp55_ = d;
#line 777 "gxml-performance.vala"
		_tmp56_ = f;
#line 777 "gxml-performance.vala"
		gxml_gdocument_save_as (_tmp55_, _tmp56_, NULL, &_inner_error0_);
#line 777 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 777 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 777 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 777 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 9559 "gxml-performance.c"
			goto __catch243_g_error;
		}
#line 778 "gxml-performance.vala"
		_tmp57_ = d;
#line 778 "gxml-performance.vala"
		_tmp58_ = gxml_document_get_root ((GXmlDocument*) _tmp57_);
#line 778 "gxml-performance.vala"
		_tmp59_ = _tmp58_;
#line 778 "gxml-performance.vala"
		_tmp60_ = _tmp59_;
#line 778 "gxml-performance.vala"
		_vala_assert (_tmp60_ != NULL, "d.root != null");
#line 778 "gxml-performance.vala"
		_g_object_unref0 (_tmp60_);
#line 779 "gxml-performance.vala"
		_tmp61_ = d;
#line 779 "gxml-performance.vala"
		_tmp62_ = gxml_document_get_root ((GXmlDocument*) _tmp61_);
#line 779 "gxml-performance.vala"
		_tmp63_ = _tmp62_;
#line 779 "gxml-performance.vala"
		_tmp64_ = _tmp63_;
#line 779 "gxml-performance.vala"
		_tmp65_ = gxml_node_get_children_nodes (_tmp64_);
#line 779 "gxml-performance.vala"
		_tmp66_ = _tmp65_;
#line 779 "gxml-performance.vala"
		_tmp67_ = _tmp66_;
#line 779 "gxml-performance.vala"
		_tmp68_ = gee_collection_get_size ((GeeCollection*) _tmp67_);
#line 779 "gxml-performance.vala"
		_tmp69_ = _tmp68_;
#line 779 "gxml-performance.vala"
		_vala_assert (_tmp69_ == 2, "d.root.children_nodes.size == 2");
#line 779 "gxml-performance.vala"
		_g_object_unref0 (_tmp67_);
#line 779 "gxml-performance.vala"
		_g_object_unref0 (_tmp64_);
#line 780 "gxml-performance.vala"
		_tmp70_ = d;
#line 780 "gxml-performance.vala"
		_tmp71_ = gxml_document_get_root ((GXmlDocument*) _tmp70_);
#line 780 "gxml-performance.vala"
		_tmp72_ = _tmp71_;
#line 780 "gxml-performance.vala"
		_tmp73_ = _tmp72_;
#line 780 "gxml-performance.vala"
		_tmp74_ = gxml_node_get_children_nodes (_tmp73_);
#line 780 "gxml-performance.vala"
		_tmp75_ = _tmp74_;
#line 780 "gxml-performance.vala"
		_tmp76_ = _tmp75_;
#line 780 "gxml-performance.vala"
		_tmp77_ = gee_list_get ((GeeList*) _tmp76_, 0);
#line 780 "gxml-performance.vala"
		_tmp78_ = (GXmlNode*) _tmp77_;
#line 780 "gxml-performance.vala"
		_tmp79_ = gxml_node_get_children_nodes (_tmp78_);
#line 780 "gxml-performance.vala"
		_tmp80_ = _tmp79_;
#line 780 "gxml-performance.vala"
		_tmp81_ = _tmp80_;
#line 780 "gxml-performance.vala"
		_tmp82_ = gee_collection_get_size ((GeeCollection*) _tmp81_);
#line 780 "gxml-performance.vala"
		_tmp83_ = _tmp82_;
#line 780 "gxml-performance.vala"
		_vala_assert (_tmp83_ == 30000, "d.root.children_nodes[0].children_nodes.size == 30000");
#line 780 "gxml-performance.vala"
		_g_object_unref0 (_tmp81_);
#line 780 "gxml-performance.vala"
		_g_object_unref0 (_tmp78_);
#line 780 "gxml-performance.vala"
		_g_object_unref0 (_tmp76_);
#line 780 "gxml-performance.vala"
		_g_object_unref0 (_tmp73_);
#line 781 "gxml-performance.vala"
		_tmp84_ = d;
#line 781 "gxml-performance.vala"
		_tmp85_ = gxml_document_get_root ((GXmlDocument*) _tmp84_);
#line 781 "gxml-performance.vala"
		_tmp86_ = _tmp85_;
#line 781 "gxml-performance.vala"
		_tmp87_ = _tmp86_;
#line 781 "gxml-performance.vala"
		_tmp88_ = gxml_node_get_children_nodes (_tmp87_);
#line 781 "gxml-performance.vala"
		_tmp89_ = _tmp88_;
#line 781 "gxml-performance.vala"
		_tmp90_ = _tmp89_;
#line 781 "gxml-performance.vala"
		_tmp91_ = gee_list_get ((GeeList*) _tmp90_, 1);
#line 781 "gxml-performance.vala"
		_tmp92_ = (GXmlNode*) _tmp91_;
#line 781 "gxml-performance.vala"
		_tmp93_ = gxml_node_get_children_nodes (_tmp92_);
#line 781 "gxml-performance.vala"
		_tmp94_ = _tmp93_;
#line 781 "gxml-performance.vala"
		_tmp95_ = _tmp94_;
#line 781 "gxml-performance.vala"
		_tmp96_ = gee_collection_get_size ((GeeCollection*) _tmp95_);
#line 781 "gxml-performance.vala"
		_tmp97_ = _tmp96_;
#line 781 "gxml-performance.vala"
		_vala_assert (_tmp97_ == 30000, "d.root.children_nodes[1].children_nodes.size == 30000");
#line 781 "gxml-performance.vala"
		_g_object_unref0 (_tmp95_);
#line 781 "gxml-performance.vala"
		_g_object_unref0 (_tmp92_);
#line 781 "gxml-performance.vala"
		_g_object_unref0 (_tmp90_);
#line 781 "gxml-performance.vala"
		_g_object_unref0 (_tmp87_);
#line 782 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 783 "gxml-performance.vala"
		g_test_minimized_result (time, "Created document: %g seconds", time);
#line 784 "gxml-performance.vala"
		g_test_message ("Starting deserializing document: Disable collection deserialization...");
#line 785 "gxml-performance.vala"
		g_test_timer_start ();
#line 786 "gxml-performance.vala"
		_tmp98_ = gxml_gdocument_new_from_path (TEST_SAVE_DIR "/post-des-test-file.xml", 0, &_inner_error0_);
#line 786 "gxml-performance.vala"
		gd = _tmp98_;
#line 786 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 786 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 786 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 786 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 9694 "gxml-performance.c"
			goto __catch243_g_error;
		}
#line 787 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 788 "gxml-performance.vala"
		g_test_minimized_result (time, "Opening doc: %g seconds", time);
#line 789 "gxml-performance.vala"
		g_test_message ("Start deseralization of GDocument");
#line 790 "gxml-performance.vala"
		g_test_timer_start ();
#line 791 "gxml-performance.vala"
		_tmp99_ = performance_htop_element_new ();
#line 791 "gxml-performance.vala"
		cep = _tmp99_;
#line 792 "gxml-performance.vala"
		_tmp100_ = cep;
#line 792 "gxml-performance.vala"
		_tmp101_ = performance_htop_element_get_elements1 (_tmp100_);
#line 792 "gxml-performance.vala"
		_tmp102_ = _tmp101_;
#line 792 "gxml-performance.vala"
		_tmp103_ = performance_hcp_element_get_elements (_tmp102_);
#line 792 "gxml-performance.vala"
		_tmp104_ = _tmp103_;
#line 792 "gxml-performance.vala"
		performance_helement_hash_map_set_enable_deserialize (_tmp104_, FALSE);
#line 793 "gxml-performance.vala"
		_tmp105_ = cep;
#line 793 "gxml-performance.vala"
		_tmp106_ = performance_htop_element_get_elements2 (_tmp105_);
#line 793 "gxml-performance.vala"
		_tmp107_ = _tmp106_;
#line 793 "gxml-performance.vala"
		_tmp108_ = performance_hcs_element_get_elements (_tmp107_);
#line 793 "gxml-performance.vala"
		_tmp109_ = _tmp108_;
#line 793 "gxml-performance.vala"
		performance_helement_hash_map_set_enable_deserialize (_tmp109_, FALSE);
#line 794 "gxml-performance.vala"
		_tmp110_ = cep;
#line 794 "gxml-performance.vala"
		_tmp111_ = gd;
#line 794 "gxml-performance.vala"
		gxml_serializable_object_model_deserialize ((GXmlSerializableObjectModel*) _tmp110_, (GXmlNode*) _tmp111_, &_inner_error0_);
#line 794 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 794 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 794 "gxml-performance.vala"
			_g_object_unref0 (gd);
#line 794 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 794 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 794 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 9751 "gxml-performance.c"
			goto __catch243_g_error;
		}
#line 795 "gxml-performance.vala"
		_tmp112_ = cep;
#line 795 "gxml-performance.vala"
		_tmp113_ = performance_htop_element_get_elements1 (_tmp112_);
#line 795 "gxml-performance.vala"
		_tmp114_ = _tmp113_;
#line 795 "gxml-performance.vala"
		_tmp115_ = performance_hcp_element_get_elements (_tmp114_);
#line 795 "gxml-performance.vala"
		_tmp116_ = _tmp115_;
#line 795 "gxml-performance.vala"
		_tmp117_ = gee_abstract_map_get_size ((GeeAbstractMap*) _tmp116_);
#line 795 "gxml-performance.vala"
		_tmp118_ = _tmp117_;
#line 795 "gxml-performance.vala"
		_vala_assert (_tmp118_ == 0, "cep.elements1.elements.size == 0");
#line 796 "gxml-performance.vala"
		_tmp119_ = cep;
#line 796 "gxml-performance.vala"
		_tmp120_ = performance_htop_element_get_elements2 (_tmp119_);
#line 796 "gxml-performance.vala"
		_tmp121_ = _tmp120_;
#line 796 "gxml-performance.vala"
		_tmp122_ = performance_hcs_element_get_elements (_tmp121_);
#line 796 "gxml-performance.vala"
		_tmp123_ = _tmp122_;
#line 796 "gxml-performance.vala"
		_tmp124_ = gee_abstract_map_get_size ((GeeAbstractMap*) _tmp123_);
#line 796 "gxml-performance.vala"
		_tmp125_ = _tmp124_;
#line 796 "gxml-performance.vala"
		_vala_assert (_tmp125_ == 0, "cep.elements2.elements.size == 0");
#line 797 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 798 "gxml-performance.vala"
		g_test_minimized_result (time, "GDocument Disable Deserialize Collection. Deserialized from doc: %g se" \
"conds", time);
#line 799 "gxml-performance.vala"
		g_test_message ("Calling C1 deserialize_children()...");
#line 800 "gxml-performance.vala"
		g_test_timer_start ();
#line 801 "gxml-performance.vala"
		_tmp127_ = cep;
#line 801 "gxml-performance.vala"
		_tmp128_ = performance_htop_element_get_elements1 (_tmp127_);
#line 801 "gxml-performance.vala"
		_tmp129_ = _tmp128_;
#line 801 "gxml-performance.vala"
		_tmp130_ = performance_hcp_element_get_elements (_tmp129_);
#line 801 "gxml-performance.vala"
		_tmp131_ = _tmp130_;
#line 801 "gxml-performance.vala"
		_tmp126_ = gxml_serializable_hash_map_deserialize_children ((GXmlSerializableHashMap*) _tmp131_, &_inner_error0_);
#line 801 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 801 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 801 "gxml-performance.vala"
			_g_object_unref0 (gd);
#line 801 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 801 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 801 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 9818 "gxml-performance.c"
			goto __catch243_g_error;
		}
#line 801 "gxml-performance.vala"
		_vala_assert (_tmp126_, "cep.elements1.elements.deserialize_children ()");
#line 802 "gxml-performance.vala"
		_tmp132_ = cep;
#line 802 "gxml-performance.vala"
		_tmp133_ = performance_htop_element_get_elements1 (_tmp132_);
#line 802 "gxml-performance.vala"
		_tmp134_ = _tmp133_;
#line 802 "gxml-performance.vala"
		_tmp135_ = performance_hcp_element_get_elements (_tmp134_);
#line 802 "gxml-performance.vala"
		_tmp136_ = _tmp135_;
#line 802 "gxml-performance.vala"
		_tmp137_ = gee_abstract_map_get_size ((GeeAbstractMap*) _tmp136_);
#line 802 "gxml-performance.vala"
		_tmp138_ = _tmp137_;
#line 802 "gxml-performance.vala"
		_vala_assert (_tmp138_ == 30000, "cep.elements1.elements.size == 30000");
#line 803 "gxml-performance.vala"
		_tmp140_ = cep;
#line 803 "gxml-performance.vala"
		_tmp141_ = performance_htop_element_get_elements1 (_tmp140_);
#line 803 "gxml-performance.vala"
		_tmp142_ = _tmp141_;
#line 803 "gxml-performance.vala"
		_tmp143_ = performance_hcp_element_get_elements (_tmp142_);
#line 803 "gxml-performance.vala"
		_tmp144_ = _tmp143_;
#line 803 "gxml-performance.vala"
		_tmp139_ = gxml_serializable_hash_map_deserialize_children ((GXmlSerializableHashMap*) _tmp144_, &_inner_error0_);
#line 803 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 803 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 803 "gxml-performance.vala"
			_g_object_unref0 (gd);
#line 803 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 803 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 803 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 9863 "gxml-performance.c"
			goto __catch243_g_error;
		}
#line 803 "gxml-performance.vala"
		_vala_assert (!_tmp139_, "!cep.elements1.elements.deserialize_children ()");
#line 804 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 805 "gxml-performance.vala"
		g_test_minimized_result (time, "C1: Disable Deserialize Collection. Deserialized from NODE: %g seconds", time);
#line 806 "gxml-performance.vala"
		g_test_message ("Calling C2 deserialize_children()...");
#line 807 "gxml-performance.vala"
		g_test_timer_start ();
#line 808 "gxml-performance.vala"
		_tmp145_ = cep;
#line 808 "gxml-performance.vala"
		_tmp146_ = performance_htop_element_get_elements2 (_tmp145_);
#line 808 "gxml-performance.vala"
		_tmp147_ = _tmp146_;
#line 808 "gxml-performance.vala"
		_tmp148_ = performance_hcs_element_get_elements (_tmp147_);
#line 808 "gxml-performance.vala"
		_tmp149_ = _tmp148_;
#line 808 "gxml-performance.vala"
		gxml_serializable_hash_map_deserialize_children ((GXmlSerializableHashMap*) _tmp149_, &_inner_error0_);
#line 808 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 808 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 808 "gxml-performance.vala"
			_g_object_unref0 (gd);
#line 808 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 808 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 808 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 9900 "gxml-performance.c"
			goto __catch243_g_error;
		}
#line 809 "gxml-performance.vala"
		_tmp151_ = cep;
#line 809 "gxml-performance.vala"
		_tmp152_ = performance_htop_element_get_elements2 (_tmp151_);
#line 809 "gxml-performance.vala"
		_tmp153_ = _tmp152_;
#line 809 "gxml-performance.vala"
		_tmp154_ = performance_hcs_element_get_elements (_tmp153_);
#line 809 "gxml-performance.vala"
		_tmp155_ = _tmp154_;
#line 809 "gxml-performance.vala"
		_tmp150_ = gxml_serializable_hash_map_deserialize_children ((GXmlSerializableHashMap*) _tmp155_, &_inner_error0_);
#line 809 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 809 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 809 "gxml-performance.vala"
			_g_object_unref0 (gd);
#line 809 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 809 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 809 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 9927 "gxml-performance.c"
			goto __catch243_g_error;
		}
#line 809 "gxml-performance.vala"
		_vala_assert (!_tmp150_, "!cep.elements2.elements.deserialize_children ()");
#line 810 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 811 "gxml-performance.vala"
		g_test_minimized_result (time, "C2: Disable Deserialize Collection. Deserialized from NODE: %g seconds", time);
#line 812 "gxml-performance.vala"
		_tmp156_ = f;
#line 812 "gxml-performance.vala"
		if (g_file_query_exists (_tmp156_, NULL)) {
#line 9940 "gxml-performance.c"
			GFile* _tmp157_;
#line 812 "gxml-performance.vala"
			_tmp157_ = f;
#line 812 "gxml-performance.vala"
			g_file_delete (_tmp157_, NULL, &_inner_error0_);
#line 812 "gxml-performance.vala"
			if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 812 "gxml-performance.vala"
				_g_object_unref0 (cep);
#line 812 "gxml-performance.vala"
				_g_object_unref0 (gd);
#line 812 "gxml-performance.vala"
				_g_object_unref0 (ce);
#line 812 "gxml-performance.vala"
				_g_object_unref0 (d);
#line 812 "gxml-performance.vala"
				_g_object_unref0 (f);
#line 9958 "gxml-performance.c"
				goto __catch243_g_error;
			}
		}
#line 758 "gxml-performance.vala"
		_g_object_unref0 (cep);
#line 758 "gxml-performance.vala"
		_g_object_unref0 (gd);
#line 758 "gxml-performance.vala"
		_g_object_unref0 (ce);
#line 758 "gxml-performance.vala"
		_g_object_unref0 (d);
#line 758 "gxml-performance.vala"
		_g_object_unref0 (f);
#line 9972 "gxml-performance.c"
	}
	goto __finally243;
	__catch243_g_error:
	{
		GError* e = NULL;
		const gchar* _tmp158_;
		gchar* _tmp159_;
		gchar* _tmp160_;
#line 758 "gxml-performance.vala"
		e = _inner_error0_;
#line 758 "gxml-performance.vala"
		_inner_error0_ = NULL;
#line 814 "gxml-performance.vala"
		_tmp158_ = e->message;
#line 814 "gxml-performance.vala"
		_tmp159_ = g_strconcat ("ERROR: ", _tmp158_, NULL);
#line 814 "gxml-performance.vala"
		_tmp160_ = _tmp159_;
#line 814 "gxml-performance.vala"
		g_message ("gxml-performance.vala:814: %s", _tmp160_);
#line 814 "gxml-performance.vala"
		_g_free0 (_tmp160_);
#line 815 "gxml-performance.vala"
		g_assert_not_reached ();
#line 758 "gxml-performance.vala"
		_g_error_free0 (e);
#line 9999 "gxml-performance.c"
	}
	__finally243:
#line 758 "gxml-performance.vala"
	if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 758 "gxml-performance.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
#line 758 "gxml-performance.vala"
		g_clear_error (&_inner_error0_);
#line 758 "gxml-performance.vala"
		return;
#line 10010 "gxml-performance.c"
	}
}

static void
___lambda185__gtest_func (void)
{
#line 756 "gxml-performance.vala"
	__lambda185_ ();
#line 10019 "gxml-performance.c"
}

static void
__lambda186_ (void)
{
	GError* _inner_error0_ = NULL;
	{
		GFile* f = NULL;
		GFile* _tmp0_;
		GFile* _tmp1_;
		gdouble time = 0.0;
		GXmlGDocument* d = NULL;
		GXmlGDocument* _tmp3_;
		PerformanceHTopElement* ce = NULL;
		PerformanceHTopElement* _tmp4_;
		PerformanceHTopElement* _tmp37_;
		PerformanceHcpElement* _tmp38_;
		PerformanceHcpElement* _tmp39_;
		PerformanceHElementHashMap* _tmp40_;
		PerformanceHElementHashMap* _tmp41_;
		gint _tmp42_;
		gint _tmp43_;
		PerformanceHTopElement* _tmp44_;
		PerformanceHcsElement* _tmp45_;
		PerformanceHcsElement* _tmp46_;
		PerformanceHElementHashMap* _tmp47_;
		PerformanceHElementHashMap* _tmp48_;
		gint _tmp49_;
		gint _tmp50_;
		PerformanceHTopElement* _tmp51_;
		GXmlGDocument* _tmp52_;
		GXmlNode* _tmp53_;
		GXmlNode* _tmp54_;
		GXmlGDocument* _tmp55_;
		GFile* _tmp56_;
		GXmlGDocument* _tmp57_;
		GXmlNode* _tmp58_;
		GXmlNode* _tmp59_;
		GXmlNode* _tmp60_;
		GXmlGDocument* _tmp61_;
		GXmlNode* _tmp62_;
		GXmlNode* _tmp63_;
		GXmlNode* _tmp64_;
		GeeBidirList* _tmp65_;
		GeeBidirList* _tmp66_;
		GeeBidirList* _tmp67_;
		gint _tmp68_;
		gint _tmp69_;
		GXmlGDocument* _tmp70_;
		GXmlNode* _tmp71_;
		GXmlNode* _tmp72_;
		GXmlNode* _tmp73_;
		GeeBidirList* _tmp74_;
		GeeBidirList* _tmp75_;
		GeeBidirList* _tmp76_;
		gpointer _tmp77_;
		GXmlNode* _tmp78_;
		GeeBidirList* _tmp79_;
		GeeBidirList* _tmp80_;
		GeeBidirList* _tmp81_;
		gint _tmp82_;
		gint _tmp83_;
		GXmlGDocument* _tmp84_;
		GXmlNode* _tmp85_;
		GXmlNode* _tmp86_;
		GXmlNode* _tmp87_;
		GeeBidirList* _tmp88_;
		GeeBidirList* _tmp89_;
		GeeBidirList* _tmp90_;
		gpointer _tmp91_;
		GXmlNode* _tmp92_;
		GeeBidirList* _tmp93_;
		GeeBidirList* _tmp94_;
		GeeBidirList* _tmp95_;
		gint _tmp96_;
		gint _tmp97_;
		GXmlGDocument* gd = NULL;
		GXmlGDocument* _tmp98_;
		PerformanceHTopElement* cep = NULL;
		PerformanceHTopElement* _tmp99_;
		PerformanceHTopElement* _tmp100_;
		PerformanceHcpElement* _tmp101_;
		PerformanceHcpElement* _tmp102_;
		PerformanceHElementHashMap* _tmp103_;
		PerformanceHElementHashMap* _tmp104_;
		PerformanceHTopElement* _tmp105_;
		PerformanceHcsElement* _tmp106_;
		PerformanceHcsElement* _tmp107_;
		PerformanceHElementHashMap* _tmp108_;
		PerformanceHElementHashMap* _tmp109_;
		PerformanceHTopElement* _tmp110_;
		GXmlGDocument* _tmp111_;
		PerformanceHTopElement* _tmp112_;
		PerformanceHcpElement* _tmp113_;
		PerformanceHcpElement* _tmp114_;
		PerformanceHElementHashMap* _tmp115_;
		PerformanceHElementHashMap* _tmp116_;
		gint _tmp117_;
		gint _tmp118_;
		PerformanceHTopElement* _tmp119_;
		PerformanceHcsElement* _tmp120_;
		PerformanceHcsElement* _tmp121_;
		PerformanceHElementHashMap* _tmp122_;
		PerformanceHElementHashMap* _tmp123_;
		gint _tmp124_;
		gint _tmp125_;
		PerformanceHTopElement* _tmp126_;
		PerformanceHcpElement* _tmp127_;
		PerformanceHcpElement* _tmp128_;
		PerformanceHElementHashMap* _tmp129_;
		PerformanceHElementHashMap* _tmp130_;
		gint _tmp131_;
		gint _tmp132_;
		gboolean _tmp133_ = FALSE;
		PerformanceHTopElement* _tmp134_;
		PerformanceHcpElement* _tmp135_;
		PerformanceHcpElement* _tmp136_;
		PerformanceHElementHashMap* _tmp137_;
		PerformanceHElementHashMap* _tmp138_;
		gboolean _tmp139_ = FALSE;
		PerformanceHTopElement* _tmp140_;
		PerformanceHcsElement* _tmp141_;
		PerformanceHcsElement* _tmp142_;
		PerformanceHElementHashMap* _tmp143_;
		PerformanceHElementHashMap* _tmp144_;
		gboolean _tmp145_ = FALSE;
		PerformanceHTopElement* _tmp146_;
		PerformanceHcsElement* _tmp147_;
		PerformanceHcsElement* _tmp148_;
		PerformanceHElementHashMap* _tmp149_;
		PerformanceHElementHashMap* _tmp150_;
		GFile* _tmp151_;
#line 821 "gxml-performance.vala"
		_tmp0_ = g_file_new_for_path (TEST_SAVE_DIR "/post-des-test-file.xml");
#line 821 "gxml-performance.vala"
		f = _tmp0_;
#line 822 "gxml-performance.vala"
		_tmp1_ = f;
#line 822 "gxml-performance.vala"
		if (g_file_query_exists (_tmp1_, NULL)) {
#line 10160 "gxml-performance.c"
			GFile* _tmp2_;
#line 822 "gxml-performance.vala"
			_tmp2_ = f;
#line 822 "gxml-performance.vala"
			g_file_delete (_tmp2_, NULL, &_inner_error0_);
#line 822 "gxml-performance.vala"
			if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 822 "gxml-performance.vala"
				_g_object_unref0 (f);
#line 10170 "gxml-performance.c"
				goto __catch244_g_error;
			}
		}
#line 824 "gxml-performance.vala"
		g_test_message ("Starting generating document...");
#line 825 "gxml-performance.vala"
		g_test_timer_start ();
#line 826 "gxml-performance.vala"
		_tmp3_ = gxml_gdocument_new ();
#line 826 "gxml-performance.vala"
		d = _tmp3_;
#line 827 "gxml-performance.vala"
		_tmp4_ = performance_htop_element_new ();
#line 827 "gxml-performance.vala"
		ce = _tmp4_;
#line 10186 "gxml-performance.c"
		{
			gint i = 0;
#line 828 "gxml-performance.vala"
			i = 0;
#line 10191 "gxml-performance.c"
			{
				gboolean _tmp5_ = FALSE;
#line 828 "gxml-performance.vala"
				_tmp5_ = TRUE;
#line 828 "gxml-performance.vala"
				while (TRUE) {
#line 10198 "gxml-performance.c"
					PerformanceHElement* e1 = NULL;
					PerformanceHElement* _tmp7_;
					PerformanceHElement* _tmp8_;
					gchar* _tmp9_;
					gchar* _tmp10_;
					gchar* _tmp11_;
					gchar* _tmp12_;
					PerformanceHTopElement* _tmp13_;
					PerformanceHcpElement* _tmp14_;
					PerformanceHcpElement* _tmp15_;
					PerformanceHElementHashMap* _tmp16_;
					PerformanceHElementHashMap* _tmp17_;
					PerformanceHElement* _tmp18_;
					const gchar* _tmp19_;
					const gchar* _tmp20_;
					PerformanceHElement* _tmp21_;
					PerformanceHElement* e2 = NULL;
					PerformanceHElement* _tmp22_;
					PerformanceHElement* _tmp23_;
					gchar* _tmp24_;
					gchar* _tmp25_;
					gchar* _tmp26_;
					gchar* _tmp27_;
					PerformanceHTopElement* _tmp28_;
					PerformanceHcsElement* _tmp29_;
					PerformanceHcsElement* _tmp30_;
					PerformanceHElementHashMap* _tmp31_;
					PerformanceHElementHashMap* _tmp32_;
					PerformanceHElement* _tmp33_;
					const gchar* _tmp34_;
					const gchar* _tmp35_;
					PerformanceHElement* _tmp36_;
#line 828 "gxml-performance.vala"
					if (!_tmp5_) {
#line 10233 "gxml-performance.c"
						gint _tmp6_;
#line 828 "gxml-performance.vala"
						_tmp6_ = i;
#line 828 "gxml-performance.vala"
						i = _tmp6_ + 1;
#line 10239 "gxml-performance.c"
					}
#line 828 "gxml-performance.vala"
					_tmp5_ = FALSE;
#line 828 "gxml-performance.vala"
					if (!(i < 30000)) {
#line 828 "gxml-performance.vala"
						break;
#line 10247 "gxml-performance.c"
					}
#line 829 "gxml-performance.vala"
					_tmp7_ = performance_helement_new ();
#line 829 "gxml-performance.vala"
					e1 = _tmp7_;
#line 830 "gxml-performance.vala"
					_tmp8_ = e1;
#line 830 "gxml-performance.vala"
					_tmp9_ = g_strdup_printf ("%i", i);
#line 830 "gxml-performance.vala"
					_tmp10_ = _tmp9_;
#line 830 "gxml-performance.vala"
					_tmp11_ = g_strconcat ("1E", _tmp10_, NULL);
#line 830 "gxml-performance.vala"
					_tmp12_ = _tmp11_;
#line 830 "gxml-performance.vala"
					performance_helement_set_name (_tmp8_, _tmp12_);
#line 830 "gxml-performance.vala"
					_g_free0 (_tmp12_);
#line 830 "gxml-performance.vala"
					_g_free0 (_tmp10_);
#line 831 "gxml-performance.vala"
					_tmp13_ = ce;
#line 831 "gxml-performance.vala"
					_tmp14_ = performance_htop_element_get_elements1 (_tmp13_);
#line 831 "gxml-performance.vala"
					_tmp15_ = _tmp14_;
#line 831 "gxml-performance.vala"
					_tmp16_ = performance_hcp_element_get_elements (_tmp15_);
#line 831 "gxml-performance.vala"
					_tmp17_ = _tmp16_;
#line 831 "gxml-performance.vala"
					_tmp18_ = e1;
#line 831 "gxml-performance.vala"
					_tmp19_ = performance_helement_get_name (_tmp18_);
#line 831 "gxml-performance.vala"
					_tmp20_ = _tmp19_;
#line 831 "gxml-performance.vala"
					_tmp21_ = e1;
#line 831 "gxml-performance.vala"
					gee_abstract_map_set ((GeeAbstractMap*) _tmp17_, _tmp20_, _tmp21_);
#line 832 "gxml-performance.vala"
					_tmp22_ = performance_helement_new ();
#line 832 "gxml-performance.vala"
					e2 = _tmp22_;
#line 833 "gxml-performance.vala"
					_tmp23_ = e2;
#line 833 "gxml-performance.vala"
					_tmp24_ = g_strdup_printf ("%i", i);
#line 833 "gxml-performance.vala"
					_tmp25_ = _tmp24_;
#line 833 "gxml-performance.vala"
					_tmp26_ = g_strconcat ("2E", _tmp25_, NULL);
#line 833 "gxml-performance.vala"
					_tmp27_ = _tmp26_;
#line 833 "gxml-performance.vala"
					performance_helement_set_name (_tmp23_, _tmp27_);
#line 833 "gxml-performance.vala"
					_g_free0 (_tmp27_);
#line 833 "gxml-performance.vala"
					_g_free0 (_tmp25_);
#line 834 "gxml-performance.vala"
					_tmp28_ = ce;
#line 834 "gxml-performance.vala"
					_tmp29_ = performance_htop_element_get_elements2 (_tmp28_);
#line 834 "gxml-performance.vala"
					_tmp30_ = _tmp29_;
#line 834 "gxml-performance.vala"
					_tmp31_ = performance_hcs_element_get_elements (_tmp30_);
#line 834 "gxml-performance.vala"
					_tmp32_ = _tmp31_;
#line 834 "gxml-performance.vala"
					_tmp33_ = e2;
#line 834 "gxml-performance.vala"
					_tmp34_ = performance_helement_get_name (_tmp33_);
#line 834 "gxml-performance.vala"
					_tmp35_ = _tmp34_;
#line 834 "gxml-performance.vala"
					_tmp36_ = e2;
#line 834 "gxml-performance.vala"
					gee_abstract_map_set ((GeeAbstractMap*) _tmp32_, _tmp35_, _tmp36_);
#line 828 "gxml-performance.vala"
					_g_object_unref0 (e2);
#line 828 "gxml-performance.vala"
					_g_object_unref0 (e1);
#line 10333 "gxml-performance.c"
				}
			}
		}
#line 836 "gxml-performance.vala"
		_tmp37_ = ce;
#line 836 "gxml-performance.vala"
		_tmp38_ = performance_htop_element_get_elements1 (_tmp37_);
#line 836 "gxml-performance.vala"
		_tmp39_ = _tmp38_;
#line 836 "gxml-performance.vala"
		_tmp40_ = performance_hcp_element_get_elements (_tmp39_);
#line 836 "gxml-performance.vala"
		_tmp41_ = _tmp40_;
#line 836 "gxml-performance.vala"
		_tmp42_ = gee_abstract_map_get_size ((GeeAbstractMap*) _tmp41_);
#line 836 "gxml-performance.vala"
		_tmp43_ = _tmp42_;
#line 836 "gxml-performance.vala"
		_vala_assert (_tmp43_ == 30000, "ce.elements1.elements.size == 30000");
#line 837 "gxml-performance.vala"
		_tmp44_ = ce;
#line 837 "gxml-performance.vala"
		_tmp45_ = performance_htop_element_get_elements2 (_tmp44_);
#line 837 "gxml-performance.vala"
		_tmp46_ = _tmp45_;
#line 837 "gxml-performance.vala"
		_tmp47_ = performance_hcs_element_get_elements (_tmp46_);
#line 837 "gxml-performance.vala"
		_tmp48_ = _tmp47_;
#line 837 "gxml-performance.vala"
		_tmp49_ = gee_abstract_map_get_size ((GeeAbstractMap*) _tmp48_);
#line 837 "gxml-performance.vala"
		_tmp50_ = _tmp49_;
#line 837 "gxml-performance.vala"
		_vala_assert (_tmp50_ == 30000, "ce.elements2.elements.size == 30000");
#line 838 "gxml-performance.vala"
		_tmp51_ = ce;
#line 838 "gxml-performance.vala"
		_tmp52_ = d;
#line 838 "gxml-performance.vala"
		_tmp53_ = gxml_serializable_object_model_serialize ((GXmlSerializableObjectModel*) _tmp51_, (GXmlNode*) _tmp52_, &_inner_error0_);
#line 838 "gxml-performance.vala"
		_tmp54_ = _tmp53_;
#line 838 "gxml-performance.vala"
		_g_object_unref0 (_tmp54_);
#line 838 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 838 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 838 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 838 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 10387 "gxml-performance.c"
			goto __catch244_g_error;
		}
#line 839 "gxml-performance.vala"
		_tmp55_ = d;
#line 839 "gxml-performance.vala"
		_tmp56_ = f;
#line 839 "gxml-performance.vala"
		gxml_gdocument_save_as (_tmp55_, _tmp56_, NULL, &_inner_error0_);
#line 839 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 839 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 839 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 839 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 10404 "gxml-performance.c"
			goto __catch244_g_error;
		}
#line 840 "gxml-performance.vala"
		_tmp57_ = d;
#line 840 "gxml-performance.vala"
		_tmp58_ = gxml_document_get_root ((GXmlDocument*) _tmp57_);
#line 840 "gxml-performance.vala"
		_tmp59_ = _tmp58_;
#line 840 "gxml-performance.vala"
		_tmp60_ = _tmp59_;
#line 840 "gxml-performance.vala"
		_vala_assert (_tmp60_ != NULL, "d.root != null");
#line 840 "gxml-performance.vala"
		_g_object_unref0 (_tmp60_);
#line 841 "gxml-performance.vala"
		_tmp61_ = d;
#line 841 "gxml-performance.vala"
		_tmp62_ = gxml_document_get_root ((GXmlDocument*) _tmp61_);
#line 841 "gxml-performance.vala"
		_tmp63_ = _tmp62_;
#line 841 "gxml-performance.vala"
		_tmp64_ = _tmp63_;
#line 841 "gxml-performance.vala"
		_tmp65_ = gxml_node_get_children_nodes (_tmp64_);
#line 841 "gxml-performance.vala"
		_tmp66_ = _tmp65_;
#line 841 "gxml-performance.vala"
		_tmp67_ = _tmp66_;
#line 841 "gxml-performance.vala"
		_tmp68_ = gee_collection_get_size ((GeeCollection*) _tmp67_);
#line 841 "gxml-performance.vala"
		_tmp69_ = _tmp68_;
#line 841 "gxml-performance.vala"
		_vala_assert (_tmp69_ == 2, "d.root.children_nodes.size == 2");
#line 841 "gxml-performance.vala"
		_g_object_unref0 (_tmp67_);
#line 841 "gxml-performance.vala"
		_g_object_unref0 (_tmp64_);
#line 842 "gxml-performance.vala"
		_tmp70_ = d;
#line 842 "gxml-performance.vala"
		_tmp71_ = gxml_document_get_root ((GXmlDocument*) _tmp70_);
#line 842 "gxml-performance.vala"
		_tmp72_ = _tmp71_;
#line 842 "gxml-performance.vala"
		_tmp73_ = _tmp72_;
#line 842 "gxml-performance.vala"
		_tmp74_ = gxml_node_get_children_nodes (_tmp73_);
#line 842 "gxml-performance.vala"
		_tmp75_ = _tmp74_;
#line 842 "gxml-performance.vala"
		_tmp76_ = _tmp75_;
#line 842 "gxml-performance.vala"
		_tmp77_ = gee_list_get ((GeeList*) _tmp76_, 0);
#line 842 "gxml-performance.vala"
		_tmp78_ = (GXmlNode*) _tmp77_;
#line 842 "gxml-performance.vala"
		_tmp79_ = gxml_node_get_children_nodes (_tmp78_);
#line 842 "gxml-performance.vala"
		_tmp80_ = _tmp79_;
#line 842 "gxml-performance.vala"
		_tmp81_ = _tmp80_;
#line 842 "gxml-performance.vala"
		_tmp82_ = gee_collection_get_size ((GeeCollection*) _tmp81_);
#line 842 "gxml-performance.vala"
		_tmp83_ = _tmp82_;
#line 842 "gxml-performance.vala"
		_vala_assert (_tmp83_ == 30000, "d.root.children_nodes[0].children_nodes.size == 30000");
#line 842 "gxml-performance.vala"
		_g_object_unref0 (_tmp81_);
#line 842 "gxml-performance.vala"
		_g_object_unref0 (_tmp78_);
#line 842 "gxml-performance.vala"
		_g_object_unref0 (_tmp76_);
#line 842 "gxml-performance.vala"
		_g_object_unref0 (_tmp73_);
#line 843 "gxml-performance.vala"
		_tmp84_ = d;
#line 843 "gxml-performance.vala"
		_tmp85_ = gxml_document_get_root ((GXmlDocument*) _tmp84_);
#line 843 "gxml-performance.vala"
		_tmp86_ = _tmp85_;
#line 843 "gxml-performance.vala"
		_tmp87_ = _tmp86_;
#line 843 "gxml-performance.vala"
		_tmp88_ = gxml_node_get_children_nodes (_tmp87_);
#line 843 "gxml-performance.vala"
		_tmp89_ = _tmp88_;
#line 843 "gxml-performance.vala"
		_tmp90_ = _tmp89_;
#line 843 "gxml-performance.vala"
		_tmp91_ = gee_list_get ((GeeList*) _tmp90_, 1);
#line 843 "gxml-performance.vala"
		_tmp92_ = (GXmlNode*) _tmp91_;
#line 843 "gxml-performance.vala"
		_tmp93_ = gxml_node_get_children_nodes (_tmp92_);
#line 843 "gxml-performance.vala"
		_tmp94_ = _tmp93_;
#line 843 "gxml-performance.vala"
		_tmp95_ = _tmp94_;
#line 843 "gxml-performance.vala"
		_tmp96_ = gee_collection_get_size ((GeeCollection*) _tmp95_);
#line 843 "gxml-performance.vala"
		_tmp97_ = _tmp96_;
#line 843 "gxml-performance.vala"
		_vala_assert (_tmp97_ == 30000, "d.root.children_nodes[1].children_nodes.size == 30000");
#line 843 "gxml-performance.vala"
		_g_object_unref0 (_tmp95_);
#line 843 "gxml-performance.vala"
		_g_object_unref0 (_tmp92_);
#line 843 "gxml-performance.vala"
		_g_object_unref0 (_tmp90_);
#line 843 "gxml-performance.vala"
		_g_object_unref0 (_tmp87_);
#line 844 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 845 "gxml-performance.vala"
		g_test_minimized_result (time, "Created document: %g seconds", time);
#line 846 "gxml-performance.vala"
		g_test_message ("Starting deserializing document: Enable collection deserialization...");
#line 847 "gxml-performance.vala"
		g_test_timer_start ();
#line 848 "gxml-performance.vala"
		_tmp98_ = gxml_gdocument_new_from_path (TEST_SAVE_DIR "/post-des-test-file.xml", 0, &_inner_error0_);
#line 848 "gxml-performance.vala"
		gd = _tmp98_;
#line 848 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 848 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 848 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 848 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 10539 "gxml-performance.c"
			goto __catch244_g_error;
		}
#line 849 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 850 "gxml-performance.vala"
		g_test_minimized_result (time, "Opening doc: %g seconds", time);
#line 851 "gxml-performance.vala"
		g_test_message ("Start deseralization of GDocument");
#line 852 "gxml-performance.vala"
		g_test_timer_start ();
#line 853 "gxml-performance.vala"
		_tmp99_ = performance_htop_element_new ();
#line 853 "gxml-performance.vala"
		cep = _tmp99_;
#line 854 "gxml-performance.vala"
		_tmp100_ = cep;
#line 854 "gxml-performance.vala"
		_tmp101_ = performance_htop_element_get_elements1 (_tmp100_);
#line 854 "gxml-performance.vala"
		_tmp102_ = _tmp101_;
#line 854 "gxml-performance.vala"
		_tmp103_ = performance_hcp_element_get_elements (_tmp102_);
#line 854 "gxml-performance.vala"
		_tmp104_ = _tmp103_;
#line 854 "gxml-performance.vala"
		performance_helement_hash_map_set_enable_deserialize (_tmp104_, TRUE);
#line 855 "gxml-performance.vala"
		_tmp105_ = cep;
#line 855 "gxml-performance.vala"
		_tmp106_ = performance_htop_element_get_elements2 (_tmp105_);
#line 855 "gxml-performance.vala"
		_tmp107_ = _tmp106_;
#line 855 "gxml-performance.vala"
		_tmp108_ = performance_hcs_element_get_elements (_tmp107_);
#line 855 "gxml-performance.vala"
		_tmp109_ = _tmp108_;
#line 855 "gxml-performance.vala"
		performance_helement_hash_map_set_enable_deserialize (_tmp109_, TRUE);
#line 856 "gxml-performance.vala"
		_tmp110_ = cep;
#line 856 "gxml-performance.vala"
		_tmp111_ = gd;
#line 856 "gxml-performance.vala"
		gxml_serializable_object_model_deserialize ((GXmlSerializableObjectModel*) _tmp110_, (GXmlNode*) _tmp111_, &_inner_error0_);
#line 856 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 856 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 856 "gxml-performance.vala"
			_g_object_unref0 (gd);
#line 856 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 856 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 856 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 10596 "gxml-performance.c"
			goto __catch244_g_error;
		}
#line 857 "gxml-performance.vala"
		_tmp112_ = cep;
#line 857 "gxml-performance.vala"
		_tmp113_ = performance_htop_element_get_elements1 (_tmp112_);
#line 857 "gxml-performance.vala"
		_tmp114_ = _tmp113_;
#line 857 "gxml-performance.vala"
		_tmp115_ = performance_hcp_element_get_elements (_tmp114_);
#line 857 "gxml-performance.vala"
		_tmp116_ = _tmp115_;
#line 857 "gxml-performance.vala"
		_tmp117_ = gee_abstract_map_get_size ((GeeAbstractMap*) _tmp116_);
#line 857 "gxml-performance.vala"
		_tmp118_ = _tmp117_;
#line 857 "gxml-performance.vala"
		_vala_assert (_tmp118_ == 30000, "cep.elements1.elements.size == 30000");
#line 858 "gxml-performance.vala"
		_tmp119_ = cep;
#line 858 "gxml-performance.vala"
		_tmp120_ = performance_htop_element_get_elements2 (_tmp119_);
#line 858 "gxml-performance.vala"
		_tmp121_ = _tmp120_;
#line 858 "gxml-performance.vala"
		_tmp122_ = performance_hcs_element_get_elements (_tmp121_);
#line 858 "gxml-performance.vala"
		_tmp123_ = _tmp122_;
#line 858 "gxml-performance.vala"
		_tmp124_ = gee_abstract_map_get_size ((GeeAbstractMap*) _tmp123_);
#line 858 "gxml-performance.vala"
		_tmp125_ = _tmp124_;
#line 858 "gxml-performance.vala"
		_vala_assert (_tmp125_ == 30000, "cep.elements2.elements.size == 30000");
#line 859 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 860 "gxml-performance.vala"
		g_test_minimized_result (time, "GDocument Enable Deserialize Collection. Deserialized from doc: %g sec" \
"onds", time);
#line 861 "gxml-performance.vala"
		g_test_message ("Calling C1 deserialize_children()...");
#line 862 "gxml-performance.vala"
		g_test_timer_start ();
#line 863 "gxml-performance.vala"
		_tmp126_ = cep;
#line 863 "gxml-performance.vala"
		_tmp127_ = performance_htop_element_get_elements1 (_tmp126_);
#line 863 "gxml-performance.vala"
		_tmp128_ = _tmp127_;
#line 863 "gxml-performance.vala"
		_tmp129_ = performance_hcp_element_get_elements (_tmp128_);
#line 863 "gxml-performance.vala"
		_tmp130_ = _tmp129_;
#line 863 "gxml-performance.vala"
		_tmp131_ = gee_abstract_map_get_size ((GeeAbstractMap*) _tmp130_);
#line 863 "gxml-performance.vala"
		_tmp132_ = _tmp131_;
#line 863 "gxml-performance.vala"
		_vala_assert (_tmp132_ == 30000, "cep.elements1.elements.size == 30000");
#line 864 "gxml-performance.vala"
		_tmp134_ = cep;
#line 864 "gxml-performance.vala"
		_tmp135_ = performance_htop_element_get_elements1 (_tmp134_);
#line 864 "gxml-performance.vala"
		_tmp136_ = _tmp135_;
#line 864 "gxml-performance.vala"
		_tmp137_ = performance_hcp_element_get_elements (_tmp136_);
#line 864 "gxml-performance.vala"
		_tmp138_ = _tmp137_;
#line 864 "gxml-performance.vala"
		_tmp133_ = gxml_serializable_hash_map_deserialize_children ((GXmlSerializableHashMap*) _tmp138_, &_inner_error0_);
#line 864 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 864 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 864 "gxml-performance.vala"
			_g_object_unref0 (gd);
#line 864 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 864 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 864 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 10679 "gxml-performance.c"
			goto __catch244_g_error;
		}
#line 864 "gxml-performance.vala"
		_vala_assert (!_tmp133_, "!cep.elements1.elements.deserialize_children ()");
#line 865 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 866 "gxml-performance.vala"
		g_test_minimized_result (time, "C1: Enable Deserialize Collection. Deserialized from NODE: %g seconds", time);
#line 867 "gxml-performance.vala"
		g_test_message ("Calling C2 deserialize_children()...");
#line 868 "gxml-performance.vala"
		g_test_timer_start ();
#line 869 "gxml-performance.vala"
		_tmp140_ = cep;
#line 869 "gxml-performance.vala"
		_tmp141_ = performance_htop_element_get_elements2 (_tmp140_);
#line 869 "gxml-performance.vala"
		_tmp142_ = _tmp141_;
#line 869 "gxml-performance.vala"
		_tmp143_ = performance_hcs_element_get_elements (_tmp142_);
#line 869 "gxml-performance.vala"
		_tmp144_ = _tmp143_;
#line 869 "gxml-performance.vala"
		_tmp139_ = gxml_serializable_hash_map_deserialize_children ((GXmlSerializableHashMap*) _tmp144_, &_inner_error0_);
#line 869 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 869 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 869 "gxml-performance.vala"
			_g_object_unref0 (gd);
#line 869 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 869 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 869 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 10716 "gxml-performance.c"
			goto __catch244_g_error;
		}
#line 869 "gxml-performance.vala"
		_vala_assert (!_tmp139_, "!cep.elements2.elements.deserialize_children ()");
#line 870 "gxml-performance.vala"
		_tmp146_ = cep;
#line 870 "gxml-performance.vala"
		_tmp147_ = performance_htop_element_get_elements2 (_tmp146_);
#line 870 "gxml-performance.vala"
		_tmp148_ = _tmp147_;
#line 870 "gxml-performance.vala"
		_tmp149_ = performance_hcs_element_get_elements (_tmp148_);
#line 870 "gxml-performance.vala"
		_tmp150_ = _tmp149_;
#line 870 "gxml-performance.vala"
		_tmp145_ = gxml_serializable_hash_map_deserialize_children ((GXmlSerializableHashMap*) _tmp150_, &_inner_error0_);
#line 870 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 870 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 870 "gxml-performance.vala"
			_g_object_unref0 (gd);
#line 870 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 870 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 870 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 10745 "gxml-performance.c"
			goto __catch244_g_error;
		}
#line 870 "gxml-performance.vala"
		_vala_assert (!_tmp145_, "!cep.elements2.elements.deserialize_children ()");
#line 871 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 872 "gxml-performance.vala"
		g_test_minimized_result (time, "C2: Disable Deserialize Collection. Deserialized from NODE: %g seconds", time);
#line 873 "gxml-performance.vala"
		_tmp151_ = f;
#line 873 "gxml-performance.vala"
		if (g_file_query_exists (_tmp151_, NULL)) {
#line 10758 "gxml-performance.c"
			GFile* _tmp152_;
#line 873 "gxml-performance.vala"
			_tmp152_ = f;
#line 873 "gxml-performance.vala"
			g_file_delete (_tmp152_, NULL, &_inner_error0_);
#line 873 "gxml-performance.vala"
			if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 873 "gxml-performance.vala"
				_g_object_unref0 (cep);
#line 873 "gxml-performance.vala"
				_g_object_unref0 (gd);
#line 873 "gxml-performance.vala"
				_g_object_unref0 (ce);
#line 873 "gxml-performance.vala"
				_g_object_unref0 (d);
#line 873 "gxml-performance.vala"
				_g_object_unref0 (f);
#line 10776 "gxml-performance.c"
				goto __catch244_g_error;
			}
		}
#line 820 "gxml-performance.vala"
		_g_object_unref0 (cep);
#line 820 "gxml-performance.vala"
		_g_object_unref0 (gd);
#line 820 "gxml-performance.vala"
		_g_object_unref0 (ce);
#line 820 "gxml-performance.vala"
		_g_object_unref0 (d);
#line 820 "gxml-performance.vala"
		_g_object_unref0 (f);
#line 10790 "gxml-performance.c"
	}
	goto __finally244;
	__catch244_g_error:
	{
		GError* e = NULL;
		const gchar* _tmp153_;
		gchar* _tmp154_;
		gchar* _tmp155_;
#line 820 "gxml-performance.vala"
		e = _inner_error0_;
#line 820 "gxml-performance.vala"
		_inner_error0_ = NULL;
#line 875 "gxml-performance.vala"
		_tmp153_ = e->message;
#line 875 "gxml-performance.vala"
		_tmp154_ = g_strconcat ("ERROR: ", _tmp153_, NULL);
#line 875 "gxml-performance.vala"
		_tmp155_ = _tmp154_;
#line 875 "gxml-performance.vala"
		g_message ("gxml-performance.vala:875: %s", _tmp155_);
#line 875 "gxml-performance.vala"
		_g_free0 (_tmp155_);
#line 876 "gxml-performance.vala"
		g_assert_not_reached ();
#line 820 "gxml-performance.vala"
		_g_error_free0 (e);
#line 10817 "gxml-performance.c"
	}
	__finally244:
#line 820 "gxml-performance.vala"
	if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 820 "gxml-performance.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
#line 820 "gxml-performance.vala"
		g_clear_error (&_inner_error0_);
#line 820 "gxml-performance.vala"
		return;
#line 10828 "gxml-performance.c"
	}
}

static void
___lambda186__gtest_func (void)
{
#line 818 "gxml-performance.vala"
	__lambda186_ ();
#line 10837 "gxml-performance.c"
}

static void
__lambda187_ (void)
{
	GError* _inner_error0_ = NULL;
	{
		GFile* f = NULL;
		GFile* _tmp0_;
		GFile* _tmp1_;
		gdouble time = 0.0;
		GXmlGDocument* d = NULL;
		GXmlGDocument* _tmp3_;
		PerformanceCElement* ce = NULL;
		PerformanceCElement* _tmp4_;
		PerformanceCElement* _tmp12_;
		GXmlGDocument* _tmp13_;
		GXmlNode* _tmp14_;
		GXmlNode* _tmp15_;
		GXmlGDocument* _tmp16_;
		GFile* _tmp17_;
		GXmlGDocument* gd = NULL;
		GXmlGDocument* _tmp18_;
		PerformanceCElement* cep = NULL;
		PerformanceCElement* _tmp19_;
		PerformanceCElement* _tmp20_;
		PerformanceAElementArray* _tmp21_;
		PerformanceAElementArray* _tmp22_;
		PerformanceCElement* _tmp23_;
		GXmlGDocument* _tmp24_;
		PerformanceCElement* _tmp25_;
		PerformanceAElementArray* _tmp26_;
		PerformanceAElementArray* _tmp27_;
		gboolean _tmp28_ = FALSE;
		PerformanceCElement* _tmp29_;
		PerformanceAElementArray* _tmp30_;
		PerformanceAElementArray* _tmp31_;
		GFile* _tmp32_;
#line 882 "gxml-performance.vala"
		_tmp0_ = g_file_new_for_path (TEST_SAVE_DIR "/post-des-test-file.xml");
#line 882 "gxml-performance.vala"
		f = _tmp0_;
#line 883 "gxml-performance.vala"
		_tmp1_ = f;
#line 883 "gxml-performance.vala"
		if (g_file_query_exists (_tmp1_, NULL)) {
#line 10884 "gxml-performance.c"
			GFile* _tmp2_;
#line 883 "gxml-performance.vala"
			_tmp2_ = f;
#line 883 "gxml-performance.vala"
			g_file_delete (_tmp2_, NULL, &_inner_error0_);
#line 883 "gxml-performance.vala"
			if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 883 "gxml-performance.vala"
				_g_object_unref0 (f);
#line 10894 "gxml-performance.c"
				goto __catch245_g_error;
			}
		}
#line 885 "gxml-performance.vala"
		g_test_message ("Starting generating document...");
#line 886 "gxml-performance.vala"
		g_test_timer_start ();
#line 887 "gxml-performance.vala"
		_tmp3_ = gxml_gdocument_new ();
#line 887 "gxml-performance.vala"
		d = _tmp3_;
#line 888 "gxml-performance.vala"
		_tmp4_ = performance_celement_new ();
#line 888 "gxml-performance.vala"
		ce = _tmp4_;
#line 10910 "gxml-performance.c"
		{
			gint i = 0;
#line 889 "gxml-performance.vala"
			i = 0;
#line 10915 "gxml-performance.c"
			{
				gboolean _tmp5_ = FALSE;
#line 889 "gxml-performance.vala"
				_tmp5_ = TRUE;
#line 889 "gxml-performance.vala"
				while (TRUE) {
#line 10922 "gxml-performance.c"
					PerformanceAElement* e = NULL;
					PerformanceAElement* _tmp7_;
					PerformanceCElement* _tmp8_;
					PerformanceAElementArray* _tmp9_;
					PerformanceAElementArray* _tmp10_;
					PerformanceAElement* _tmp11_;
#line 889 "gxml-performance.vala"
					if (!_tmp5_) {
#line 10931 "gxml-performance.c"
						gint _tmp6_;
#line 889 "gxml-performance.vala"
						_tmp6_ = i;
#line 889 "gxml-performance.vala"
						i = _tmp6_ + 1;
#line 10937 "gxml-performance.c"
					}
#line 889 "gxml-performance.vala"
					_tmp5_ = FALSE;
#line 889 "gxml-performance.vala"
					if (!(i < 30000)) {
#line 889 "gxml-performance.vala"
						break;
#line 10945 "gxml-performance.c"
					}
#line 890 "gxml-performance.vala"
					_tmp7_ = performance_aelement_new ();
#line 890 "gxml-performance.vala"
					e = _tmp7_;
#line 891 "gxml-performance.vala"
					_tmp8_ = ce;
#line 891 "gxml-performance.vala"
					_tmp9_ = performance_celement_get_elements (_tmp8_);
#line 891 "gxml-performance.vala"
					_tmp10_ = _tmp9_;
#line 891 "gxml-performance.vala"
					_tmp11_ = e;
#line 891 "gxml-performance.vala"
					gee_abstract_collection_add ((GeeAbstractCollection*) _tmp10_, _tmp11_);
#line 889 "gxml-performance.vala"
					_g_object_unref0 (e);
#line 10963 "gxml-performance.c"
				}
			}
		}
#line 893 "gxml-performance.vala"
		_tmp12_ = ce;
#line 893 "gxml-performance.vala"
		_tmp13_ = d;
#line 893 "gxml-performance.vala"
		_tmp14_ = gxml_serializable_object_model_serialize ((GXmlSerializableObjectModel*) _tmp12_, (GXmlNode*) _tmp13_, &_inner_error0_);
#line 893 "gxml-performance.vala"
		_tmp15_ = _tmp14_;
#line 893 "gxml-performance.vala"
		_g_object_unref0 (_tmp15_);
#line 893 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 893 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 893 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 893 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 10985 "gxml-performance.c"
			goto __catch245_g_error;
		}
#line 894 "gxml-performance.vala"
		_tmp16_ = d;
#line 894 "gxml-performance.vala"
		_tmp17_ = f;
#line 894 "gxml-performance.vala"
		gxml_gdocument_save_as (_tmp16_, _tmp17_, NULL, &_inner_error0_);
#line 894 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 894 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 894 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 894 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 11002 "gxml-performance.c"
			goto __catch245_g_error;
		}
#line 895 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 896 "gxml-performance.vala"
		g_test_minimized_result (time, "Created document: %g seconds", time);
#line 897 "gxml-performance.vala"
		g_test_message ("Starting deserializing document: Disable collection deserialization...");
#line 898 "gxml-performance.vala"
		g_test_timer_start ();
#line 899 "gxml-performance.vala"
		_tmp18_ = gxml_gdocument_new_from_path (TEST_SAVE_DIR "/post-des-test-file.xml", 0, &_inner_error0_);
#line 899 "gxml-performance.vala"
		gd = _tmp18_;
#line 899 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 899 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 899 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 899 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 11025 "gxml-performance.c"
			goto __catch245_g_error;
		}
#line 900 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 901 "gxml-performance.vala"
		g_test_minimized_result (time, "Opening doc: %g seconds", time);
#line 902 "gxml-performance.vala"
		g_test_message ("Start deseralization of GDocument");
#line 903 "gxml-performance.vala"
		g_test_timer_start ();
#line 904 "gxml-performance.vala"
		_tmp19_ = performance_celement_new ();
#line 904 "gxml-performance.vala"
		cep = _tmp19_;
#line 905 "gxml-performance.vala"
		_tmp20_ = cep;
#line 905 "gxml-performance.vala"
		_tmp21_ = performance_celement_get_elements (_tmp20_);
#line 905 "gxml-performance.vala"
		_tmp22_ = _tmp21_;
#line 905 "gxml-performance.vala"
		performance_aelement_array_set_enable_deserialize (_tmp22_, FALSE);
#line 906 "gxml-performance.vala"
		_tmp23_ = cep;
#line 906 "gxml-performance.vala"
		_tmp24_ = gd;
#line 906 "gxml-performance.vala"
		gxml_serializable_object_model_deserialize ((GXmlSerializableObjectModel*) _tmp23_, (GXmlNode*) _tmp24_, &_inner_error0_);
#line 906 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 906 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 906 "gxml-performance.vala"
			_g_object_unref0 (gd);
#line 906 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 906 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 906 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 11066 "gxml-performance.c"
			goto __catch245_g_error;
		}
#line 907 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 908 "gxml-performance.vala"
		g_test_minimized_result (time, "Disable Deserialize Collection. Deserialized from doc: %g seconds", time);
#line 909 "gxml-performance.vala"
		g_test_message ("Calling deserialize_children()...");
#line 910 "gxml-performance.vala"
		g_test_timer_start ();
#line 911 "gxml-performance.vala"
		_tmp25_ = cep;
#line 911 "gxml-performance.vala"
		_tmp26_ = performance_celement_get_elements (_tmp25_);
#line 911 "gxml-performance.vala"
		_tmp27_ = _tmp26_;
#line 911 "gxml-performance.vala"
		gxml_serializable_array_list_deserialize_children ((GXmlSerializableArrayList*) _tmp27_, &_inner_error0_);
#line 911 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 911 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 911 "gxml-performance.vala"
			_g_object_unref0 (gd);
#line 911 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 911 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 911 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 11097 "gxml-performance.c"
			goto __catch245_g_error;
		}
#line 912 "gxml-performance.vala"
		_tmp29_ = cep;
#line 912 "gxml-performance.vala"
		_tmp30_ = performance_celement_get_elements (_tmp29_);
#line 912 "gxml-performance.vala"
		_tmp31_ = _tmp30_;
#line 912 "gxml-performance.vala"
		_tmp28_ = gxml_serializable_array_list_deserialize_children ((GXmlSerializableArrayList*) _tmp31_, &_inner_error0_);
#line 912 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 912 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 912 "gxml-performance.vala"
			_g_object_unref0 (gd);
#line 912 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 912 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 912 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 11120 "gxml-performance.c"
			goto __catch245_g_error;
		}
#line 912 "gxml-performance.vala"
		_vala_assert (!_tmp28_, "!cep.elements.deserialize_children ()");
#line 913 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 914 "gxml-performance.vala"
		g_test_minimized_result (time, "Disable Deserialize Collection. Deserialized from NODE: %g seconds", time);
#line 915 "gxml-performance.vala"
		_tmp32_ = f;
#line 915 "gxml-performance.vala"
		if (g_file_query_exists (_tmp32_, NULL)) {
#line 11133 "gxml-performance.c"
			GFile* _tmp33_;
#line 915 "gxml-performance.vala"
			_tmp33_ = f;
#line 915 "gxml-performance.vala"
			g_file_delete (_tmp33_, NULL, &_inner_error0_);
#line 915 "gxml-performance.vala"
			if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 915 "gxml-performance.vala"
				_g_object_unref0 (cep);
#line 915 "gxml-performance.vala"
				_g_object_unref0 (gd);
#line 915 "gxml-performance.vala"
				_g_object_unref0 (ce);
#line 915 "gxml-performance.vala"
				_g_object_unref0 (d);
#line 915 "gxml-performance.vala"
				_g_object_unref0 (f);
#line 11151 "gxml-performance.c"
				goto __catch245_g_error;
			}
		}
#line 881 "gxml-performance.vala"
		_g_object_unref0 (cep);
#line 881 "gxml-performance.vala"
		_g_object_unref0 (gd);
#line 881 "gxml-performance.vala"
		_g_object_unref0 (ce);
#line 881 "gxml-performance.vala"
		_g_object_unref0 (d);
#line 881 "gxml-performance.vala"
		_g_object_unref0 (f);
#line 11165 "gxml-performance.c"
	}
	goto __finally245;
	__catch245_g_error:
	{
		GError* e = NULL;
		const gchar* _tmp34_;
		gchar* _tmp35_;
		gchar* _tmp36_;
#line 881 "gxml-performance.vala"
		e = _inner_error0_;
#line 881 "gxml-performance.vala"
		_inner_error0_ = NULL;
#line 917 "gxml-performance.vala"
		_tmp34_ = e->message;
#line 917 "gxml-performance.vala"
		_tmp35_ = g_strconcat ("ERROR: ", _tmp34_, NULL);
#line 917 "gxml-performance.vala"
		_tmp36_ = _tmp35_;
#line 917 "gxml-performance.vala"
		g_message ("gxml-performance.vala:917: %s", _tmp36_);
#line 917 "gxml-performance.vala"
		_g_free0 (_tmp36_);
#line 918 "gxml-performance.vala"
		g_assert_not_reached ();
#line 881 "gxml-performance.vala"
		_g_error_free0 (e);
#line 11192 "gxml-performance.c"
	}
	__finally245:
#line 881 "gxml-performance.vala"
	if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 881 "gxml-performance.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
#line 881 "gxml-performance.vala"
		g_clear_error (&_inner_error0_);
#line 881 "gxml-performance.vala"
		return;
#line 11203 "gxml-performance.c"
	}
}

static void
___lambda187__gtest_func (void)
{
#line 879 "gxml-performance.vala"
	__lambda187_ ();
#line 11212 "gxml-performance.c"
}

static void
__lambda188_ (void)
{
	GError* _inner_error0_ = NULL;
	{
		GFile* f = NULL;
		GFile* _tmp0_;
		GFile* _tmp1_;
		gdouble time = 0.0;
		GXmlGDocument* d = NULL;
		GXmlGDocument* _tmp3_;
		PerformanceCElement* ce = NULL;
		PerformanceCElement* _tmp4_;
		PerformanceCElement* _tmp12_;
		GXmlGDocument* _tmp13_;
		GXmlNode* _tmp14_;
		GXmlNode* _tmp15_;
		GXmlGDocument* _tmp16_;
		GFile* _tmp17_;
		GXmlGDocument* gd = NULL;
		GXmlGDocument* _tmp18_;
		PerformanceCElement* cep = NULL;
		PerformanceCElement* _tmp19_;
		PerformanceCElement* _tmp20_;
		PerformanceAElementArray* _tmp21_;
		PerformanceAElementArray* _tmp22_;
		PerformanceCElement* _tmp23_;
		GXmlGDocument* _tmp24_;
		PerformanceCElement* _tmp25_;
		PerformanceAElementArray* _tmp26_;
		PerformanceAElementArray* _tmp27_;
		gboolean _tmp28_ = FALSE;
		PerformanceCElement* _tmp29_;
		PerformanceAElementArray* _tmp30_;
		PerformanceAElementArray* _tmp31_;
		GFile* _tmp32_;
#line 924 "gxml-performance.vala"
		_tmp0_ = g_file_new_for_path (TEST_SAVE_DIR "/post-des-test-file.xml");
#line 924 "gxml-performance.vala"
		f = _tmp0_;
#line 925 "gxml-performance.vala"
		_tmp1_ = f;
#line 925 "gxml-performance.vala"
		if (g_file_query_exists (_tmp1_, NULL)) {
#line 11259 "gxml-performance.c"
			GFile* _tmp2_;
#line 925 "gxml-performance.vala"
			_tmp2_ = f;
#line 925 "gxml-performance.vala"
			g_file_delete (_tmp2_, NULL, &_inner_error0_);
#line 925 "gxml-performance.vala"
			if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 925 "gxml-performance.vala"
				_g_object_unref0 (f);
#line 11269 "gxml-performance.c"
				goto __catch246_g_error;
			}
		}
#line 927 "gxml-performance.vala"
		g_test_message ("Starting generating document...");
#line 928 "gxml-performance.vala"
		g_test_timer_start ();
#line 929 "gxml-performance.vala"
		_tmp3_ = gxml_gdocument_new ();
#line 929 "gxml-performance.vala"
		d = _tmp3_;
#line 930 "gxml-performance.vala"
		_tmp4_ = performance_celement_new ();
#line 930 "gxml-performance.vala"
		ce = _tmp4_;
#line 11285 "gxml-performance.c"
		{
			gint i = 0;
#line 931 "gxml-performance.vala"
			i = 0;
#line 11290 "gxml-performance.c"
			{
				gboolean _tmp5_ = FALSE;
#line 931 "gxml-performance.vala"
				_tmp5_ = TRUE;
#line 931 "gxml-performance.vala"
				while (TRUE) {
#line 11297 "gxml-performance.c"
					PerformanceAElement* e = NULL;
					PerformanceAElement* _tmp7_;
					PerformanceCElement* _tmp8_;
					PerformanceAElementArray* _tmp9_;
					PerformanceAElementArray* _tmp10_;
					PerformanceAElement* _tmp11_;
#line 931 "gxml-performance.vala"
					if (!_tmp5_) {
#line 11306 "gxml-performance.c"
						gint _tmp6_;
#line 931 "gxml-performance.vala"
						_tmp6_ = i;
#line 931 "gxml-performance.vala"
						i = _tmp6_ + 1;
#line 11312 "gxml-performance.c"
					}
#line 931 "gxml-performance.vala"
					_tmp5_ = FALSE;
#line 931 "gxml-performance.vala"
					if (!(i < 30000)) {
#line 931 "gxml-performance.vala"
						break;
#line 11320 "gxml-performance.c"
					}
#line 932 "gxml-performance.vala"
					_tmp7_ = performance_aelement_new ();
#line 932 "gxml-performance.vala"
					e = _tmp7_;
#line 933 "gxml-performance.vala"
					_tmp8_ = ce;
#line 933 "gxml-performance.vala"
					_tmp9_ = performance_celement_get_elements (_tmp8_);
#line 933 "gxml-performance.vala"
					_tmp10_ = _tmp9_;
#line 933 "gxml-performance.vala"
					_tmp11_ = e;
#line 933 "gxml-performance.vala"
					gee_abstract_collection_add ((GeeAbstractCollection*) _tmp10_, _tmp11_);
#line 931 "gxml-performance.vala"
					_g_object_unref0 (e);
#line 11338 "gxml-performance.c"
				}
			}
		}
#line 935 "gxml-performance.vala"
		_tmp12_ = ce;
#line 935 "gxml-performance.vala"
		_tmp13_ = d;
#line 935 "gxml-performance.vala"
		_tmp14_ = gxml_serializable_object_model_serialize ((GXmlSerializableObjectModel*) _tmp12_, (GXmlNode*) _tmp13_, &_inner_error0_);
#line 935 "gxml-performance.vala"
		_tmp15_ = _tmp14_;
#line 935 "gxml-performance.vala"
		_g_object_unref0 (_tmp15_);
#line 935 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 935 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 935 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 935 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 11360 "gxml-performance.c"
			goto __catch246_g_error;
		}
#line 936 "gxml-performance.vala"
		_tmp16_ = d;
#line 936 "gxml-performance.vala"
		_tmp17_ = f;
#line 936 "gxml-performance.vala"
		gxml_gdocument_save_as (_tmp16_, _tmp17_, NULL, &_inner_error0_);
#line 936 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 936 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 936 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 936 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 11377 "gxml-performance.c"
			goto __catch246_g_error;
		}
#line 937 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 938 "gxml-performance.vala"
		g_test_minimized_result (time, "Created document: %g seconds", time);
#line 939 "gxml-performance.vala"
		g_test_message ("Starting deserializing document: Enable collection deserialization...");
#line 940 "gxml-performance.vala"
		g_test_timer_start ();
#line 941 "gxml-performance.vala"
		_tmp18_ = gxml_gdocument_new_from_path (TEST_SAVE_DIR "/post-des-test-file.xml", 0, &_inner_error0_);
#line 941 "gxml-performance.vala"
		gd = _tmp18_;
#line 941 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 941 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 941 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 941 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 11400 "gxml-performance.c"
			goto __catch246_g_error;
		}
#line 942 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 943 "gxml-performance.vala"
		g_test_minimized_result (time, "Opening doc: %g seconds", time);
#line 944 "gxml-performance.vala"
		g_test_message ("Start deseralization of GDocument");
#line 945 "gxml-performance.vala"
		g_test_timer_start ();
#line 946 "gxml-performance.vala"
		_tmp19_ = performance_celement_new ();
#line 946 "gxml-performance.vala"
		cep = _tmp19_;
#line 947 "gxml-performance.vala"
		_tmp20_ = cep;
#line 947 "gxml-performance.vala"
		_tmp21_ = performance_celement_get_elements (_tmp20_);
#line 947 "gxml-performance.vala"
		_tmp22_ = _tmp21_;
#line 947 "gxml-performance.vala"
		performance_aelement_array_set_enable_deserialize (_tmp22_, TRUE);
#line 948 "gxml-performance.vala"
		_tmp23_ = cep;
#line 948 "gxml-performance.vala"
		_tmp24_ = gd;
#line 948 "gxml-performance.vala"
		gxml_serializable_object_model_deserialize ((GXmlSerializableObjectModel*) _tmp23_, (GXmlNode*) _tmp24_, &_inner_error0_);
#line 948 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 948 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 948 "gxml-performance.vala"
			_g_object_unref0 (gd);
#line 948 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 948 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 948 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 11441 "gxml-performance.c"
			goto __catch246_g_error;
		}
#line 949 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 950 "gxml-performance.vala"
		g_test_minimized_result (time, "Enable Deserialize Collection. Deserialized from doc: %g seconds", time);
#line 951 "gxml-performance.vala"
		g_test_message ("Calling deserialize_children()...");
#line 952 "gxml-performance.vala"
		g_test_timer_start ();
#line 953 "gxml-performance.vala"
		_tmp25_ = cep;
#line 953 "gxml-performance.vala"
		_tmp26_ = performance_celement_get_elements (_tmp25_);
#line 953 "gxml-performance.vala"
		_tmp27_ = _tmp26_;
#line 953 "gxml-performance.vala"
		gxml_serializable_array_list_deserialize_children ((GXmlSerializableArrayList*) _tmp27_, &_inner_error0_);
#line 953 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 953 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 953 "gxml-performance.vala"
			_g_object_unref0 (gd);
#line 953 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 953 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 953 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 11472 "gxml-performance.c"
			goto __catch246_g_error;
		}
#line 954 "gxml-performance.vala"
		_tmp29_ = cep;
#line 954 "gxml-performance.vala"
		_tmp30_ = performance_celement_get_elements (_tmp29_);
#line 954 "gxml-performance.vala"
		_tmp31_ = _tmp30_;
#line 954 "gxml-performance.vala"
		_tmp28_ = gxml_serializable_array_list_deserialize_children ((GXmlSerializableArrayList*) _tmp31_, &_inner_error0_);
#line 954 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 954 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 954 "gxml-performance.vala"
			_g_object_unref0 (gd);
#line 954 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 954 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 954 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 11495 "gxml-performance.c"
			goto __catch246_g_error;
		}
#line 954 "gxml-performance.vala"
		_vala_assert (!_tmp28_, "!cep.elements.deserialize_children ()");
#line 955 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 956 "gxml-performance.vala"
		g_test_minimized_result (time, "Enable Deserialize Collection. Deserialized from NODE: %g seconds", time);
#line 957 "gxml-performance.vala"
		_tmp32_ = f;
#line 957 "gxml-performance.vala"
		if (g_file_query_exists (_tmp32_, NULL)) {
#line 11508 "gxml-performance.c"
			GFile* _tmp33_;
#line 957 "gxml-performance.vala"
			_tmp33_ = f;
#line 957 "gxml-performance.vala"
			g_file_delete (_tmp33_, NULL, &_inner_error0_);
#line 957 "gxml-performance.vala"
			if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 957 "gxml-performance.vala"
				_g_object_unref0 (cep);
#line 957 "gxml-performance.vala"
				_g_object_unref0 (gd);
#line 957 "gxml-performance.vala"
				_g_object_unref0 (ce);
#line 957 "gxml-performance.vala"
				_g_object_unref0 (d);
#line 957 "gxml-performance.vala"
				_g_object_unref0 (f);
#line 11526 "gxml-performance.c"
				goto __catch246_g_error;
			}
		}
#line 923 "gxml-performance.vala"
		_g_object_unref0 (cep);
#line 923 "gxml-performance.vala"
		_g_object_unref0 (gd);
#line 923 "gxml-performance.vala"
		_g_object_unref0 (ce);
#line 923 "gxml-performance.vala"
		_g_object_unref0 (d);
#line 923 "gxml-performance.vala"
		_g_object_unref0 (f);
#line 11540 "gxml-performance.c"
	}
	goto __finally246;
	__catch246_g_error:
	{
		GError* e = NULL;
		const gchar* _tmp34_;
		gchar* _tmp35_;
		gchar* _tmp36_;
#line 923 "gxml-performance.vala"
		e = _inner_error0_;
#line 923 "gxml-performance.vala"
		_inner_error0_ = NULL;
#line 959 "gxml-performance.vala"
		_tmp34_ = e->message;
#line 959 "gxml-performance.vala"
		_tmp35_ = g_strconcat ("ERROR: ", _tmp34_, NULL);
#line 959 "gxml-performance.vala"
		_tmp36_ = _tmp35_;
#line 959 "gxml-performance.vala"
		g_message ("gxml-performance.vala:959: %s", _tmp36_);
#line 959 "gxml-performance.vala"
		_g_free0 (_tmp36_);
#line 960 "gxml-performance.vala"
		g_assert_not_reached ();
#line 923 "gxml-performance.vala"
		_g_error_free0 (e);
#line 11567 "gxml-performance.c"
	}
	__finally246:
#line 923 "gxml-performance.vala"
	if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 923 "gxml-performance.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
#line 923 "gxml-performance.vala"
		g_clear_error (&_inner_error0_);
#line 923 "gxml-performance.vala"
		return;
#line 11578 "gxml-performance.c"
	}
}

static void
___lambda188__gtest_func (void)
{
#line 921 "gxml-performance.vala"
	__lambda188_ ();
#line 11587 "gxml-performance.c"
}

static void
__lambda189_ (void)
{
	GError* _inner_error0_ = NULL;
	{
		GFile* f = NULL;
		GFile* _tmp0_;
		GFile* _tmp1_;
		gdouble time = 0.0;
		GXmlTDocument* d = NULL;
		GXmlTDocument* _tmp3_;
		PerformanceCElement* ce = NULL;
		PerformanceCElement* _tmp4_;
		PerformanceCElement* _tmp12_;
		GXmlTDocument* _tmp13_;
		GXmlNode* _tmp14_;
		GXmlNode* _tmp15_;
		GXmlTDocument* _tmp16_;
		GFile* _tmp17_;
		GXmlTDocument* gd = NULL;
		GXmlTDocument* _tmp18_;
		PerformanceCElement* cep = NULL;
		PerformanceCElement* _tmp19_;
		PerformanceCElement* _tmp20_;
		PerformanceAElementArray* _tmp21_;
		PerformanceAElementArray* _tmp22_;
		PerformanceCElement* _tmp23_;
		GXmlTDocument* _tmp24_;
		PerformanceCElement* _tmp25_;
		PerformanceAElementArray* _tmp26_;
		PerformanceAElementArray* _tmp27_;
		gboolean _tmp28_ = FALSE;
		PerformanceCElement* _tmp29_;
		PerformanceAElementArray* _tmp30_;
		PerformanceAElementArray* _tmp31_;
		GFile* _tmp32_;
#line 966 "gxml-performance.vala"
		_tmp0_ = g_file_new_for_path (TEST_SAVE_DIR "/post-des-test-file.xml");
#line 966 "gxml-performance.vala"
		f = _tmp0_;
#line 967 "gxml-performance.vala"
		_tmp1_ = f;
#line 967 "gxml-performance.vala"
		if (g_file_query_exists (_tmp1_, NULL)) {
#line 11634 "gxml-performance.c"
			GFile* _tmp2_;
#line 967 "gxml-performance.vala"
			_tmp2_ = f;
#line 967 "gxml-performance.vala"
			g_file_delete (_tmp2_, NULL, &_inner_error0_);
#line 967 "gxml-performance.vala"
			if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 967 "gxml-performance.vala"
				_g_object_unref0 (f);
#line 11644 "gxml-performance.c"
				goto __catch247_g_error;
			}
		}
#line 969 "gxml-performance.vala"
		g_test_message ("Starting generating document...");
#line 970 "gxml-performance.vala"
		g_test_timer_start ();
#line 971 "gxml-performance.vala"
		_tmp3_ = gxml_tdocument_new ();
#line 971 "gxml-performance.vala"
		d = _tmp3_;
#line 972 "gxml-performance.vala"
		_tmp4_ = performance_celement_new ();
#line 972 "gxml-performance.vala"
		ce = _tmp4_;
#line 11660 "gxml-performance.c"
		{
			gint i = 0;
#line 973 "gxml-performance.vala"
			i = 0;
#line 11665 "gxml-performance.c"
			{
				gboolean _tmp5_ = FALSE;
#line 973 "gxml-performance.vala"
				_tmp5_ = TRUE;
#line 973 "gxml-performance.vala"
				while (TRUE) {
#line 11672 "gxml-performance.c"
					PerformanceAElement* e = NULL;
					PerformanceAElement* _tmp7_;
					PerformanceCElement* _tmp8_;
					PerformanceAElementArray* _tmp9_;
					PerformanceAElementArray* _tmp10_;
					PerformanceAElement* _tmp11_;
#line 973 "gxml-performance.vala"
					if (!_tmp5_) {
#line 11681 "gxml-performance.c"
						gint _tmp6_;
#line 973 "gxml-performance.vala"
						_tmp6_ = i;
#line 973 "gxml-performance.vala"
						i = _tmp6_ + 1;
#line 11687 "gxml-performance.c"
					}
#line 973 "gxml-performance.vala"
					_tmp5_ = FALSE;
#line 973 "gxml-performance.vala"
					if (!(i < 30000)) {
#line 973 "gxml-performance.vala"
						break;
#line 11695 "gxml-performance.c"
					}
#line 974 "gxml-performance.vala"
					_tmp7_ = performance_aelement_new ();
#line 974 "gxml-performance.vala"
					e = _tmp7_;
#line 975 "gxml-performance.vala"
					_tmp8_ = ce;
#line 975 "gxml-performance.vala"
					_tmp9_ = performance_celement_get_elements (_tmp8_);
#line 975 "gxml-performance.vala"
					_tmp10_ = _tmp9_;
#line 975 "gxml-performance.vala"
					_tmp11_ = e;
#line 975 "gxml-performance.vala"
					gee_abstract_collection_add ((GeeAbstractCollection*) _tmp10_, _tmp11_);
#line 973 "gxml-performance.vala"
					_g_object_unref0 (e);
#line 11713 "gxml-performance.c"
				}
			}
		}
#line 977 "gxml-performance.vala"
		_tmp12_ = ce;
#line 977 "gxml-performance.vala"
		_tmp13_ = d;
#line 977 "gxml-performance.vala"
		_tmp14_ = gxml_serializable_object_model_serialize ((GXmlSerializableObjectModel*) _tmp12_, (GXmlNode*) _tmp13_, &_inner_error0_);
#line 977 "gxml-performance.vala"
		_tmp15_ = _tmp14_;
#line 977 "gxml-performance.vala"
		_g_object_unref0 (_tmp15_);
#line 977 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 977 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 977 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 977 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 11735 "gxml-performance.c"
			goto __catch247_g_error;
		}
#line 978 "gxml-performance.vala"
		_tmp16_ = d;
#line 978 "gxml-performance.vala"
		_tmp17_ = f;
#line 978 "gxml-performance.vala"
		gxml_document_save_as ((GXmlDocument*) _tmp16_, _tmp17_, NULL, &_inner_error0_);
#line 978 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 978 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 978 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 978 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 11752 "gxml-performance.c"
			goto __catch247_g_error;
		}
#line 979 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 980 "gxml-performance.vala"
		g_test_minimized_result (time, "Created document: %g seconds", time);
#line 981 "gxml-performance.vala"
		g_test_message ("Starting deserializing document: Enable collection deserialization...");
#line 982 "gxml-performance.vala"
		g_test_timer_start ();
#line 983 "gxml-performance.vala"
		_tmp18_ = gxml_tdocument_new_from_path (TEST_SAVE_DIR "/post-des-test-file.xml");
#line 983 "gxml-performance.vala"
		gd = _tmp18_;
#line 984 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 985 "gxml-performance.vala"
		g_test_minimized_result (time, "Opening doc: %g seconds", time);
#line 986 "gxml-performance.vala"
		g_test_message ("Start deseralization of TDocument");
#line 987 "gxml-performance.vala"
		g_test_timer_start ();
#line 988 "gxml-performance.vala"
		_tmp19_ = performance_celement_new ();
#line 988 "gxml-performance.vala"
		cep = _tmp19_;
#line 989 "gxml-performance.vala"
		_tmp20_ = cep;
#line 989 "gxml-performance.vala"
		_tmp21_ = performance_celement_get_elements (_tmp20_);
#line 989 "gxml-performance.vala"
		_tmp22_ = _tmp21_;
#line 989 "gxml-performance.vala"
		performance_aelement_array_set_enable_deserialize (_tmp22_, TRUE);
#line 990 "gxml-performance.vala"
		_tmp23_ = cep;
#line 990 "gxml-performance.vala"
		_tmp24_ = gd;
#line 990 "gxml-performance.vala"
		gxml_serializable_object_model_deserialize ((GXmlSerializableObjectModel*) _tmp23_, (GXmlNode*) _tmp24_, &_inner_error0_);
#line 990 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 990 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 990 "gxml-performance.vala"
			_g_object_unref0 (gd);
#line 990 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 990 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 990 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 11805 "gxml-performance.c"
			goto __catch247_g_error;
		}
#line 991 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 992 "gxml-performance.vala"
		g_test_minimized_result (time, "Enable Deserialize Collection. Deserialized from doc: %g seconds", time);
#line 993 "gxml-performance.vala"
		g_test_message ("Calling deserialize_children()...");
#line 994 "gxml-performance.vala"
		g_test_timer_start ();
#line 995 "gxml-performance.vala"
		_tmp25_ = cep;
#line 995 "gxml-performance.vala"
		_tmp26_ = performance_celement_get_elements (_tmp25_);
#line 995 "gxml-performance.vala"
		_tmp27_ = _tmp26_;
#line 995 "gxml-performance.vala"
		gxml_serializable_array_list_deserialize_children ((GXmlSerializableArrayList*) _tmp27_, &_inner_error0_);
#line 995 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 995 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 995 "gxml-performance.vala"
			_g_object_unref0 (gd);
#line 995 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 995 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 995 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 11836 "gxml-performance.c"
			goto __catch247_g_error;
		}
#line 996 "gxml-performance.vala"
		_tmp29_ = cep;
#line 996 "gxml-performance.vala"
		_tmp30_ = performance_celement_get_elements (_tmp29_);
#line 996 "gxml-performance.vala"
		_tmp31_ = _tmp30_;
#line 996 "gxml-performance.vala"
		_tmp28_ = gxml_serializable_array_list_deserialize_children ((GXmlSerializableArrayList*) _tmp31_, &_inner_error0_);
#line 996 "gxml-performance.vala"
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 996 "gxml-performance.vala"
			_g_object_unref0 (cep);
#line 996 "gxml-performance.vala"
			_g_object_unref0 (gd);
#line 996 "gxml-performance.vala"
			_g_object_unref0 (ce);
#line 996 "gxml-performance.vala"
			_g_object_unref0 (d);
#line 996 "gxml-performance.vala"
			_g_object_unref0 (f);
#line 11859 "gxml-performance.c"
			goto __catch247_g_error;
		}
#line 996 "gxml-performance.vala"
		_vala_assert (!_tmp28_, "!cep.elements.deserialize_children ()");
#line 997 "gxml-performance.vala"
		time = g_test_timer_elapsed ();
#line 998 "gxml-performance.vala"
		g_test_minimized_result (time, "Enable Deserialize Collection. Deserialized from NODE: %g seconds", time);
#line 999 "gxml-performance.vala"
		_tmp32_ = f;
#line 999 "gxml-performance.vala"
		if (g_file_query_exists (_tmp32_, NULL)) {
#line 11872 "gxml-performance.c"
			GFile* _tmp33_;
#line 999 "gxml-performance.vala"
			_tmp33_ = f;
#line 999 "gxml-performance.vala"
			g_file_delete (_tmp33_, NULL, &_inner_error0_);
#line 999 "gxml-performance.vala"
			if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 999 "gxml-performance.vala"
				_g_object_unref0 (cep);
#line 999 "gxml-performance.vala"
				_g_object_unref0 (gd);
#line 999 "gxml-performance.vala"
				_g_object_unref0 (ce);
#line 999 "gxml-performance.vala"
				_g_object_unref0 (d);
#line 999 "gxml-performance.vala"
				_g_object_unref0 (f);
#line 11890 "gxml-performance.c"
				goto __catch247_g_error;
			}
		}
#line 965 "gxml-performance.vala"
		_g_object_unref0 (cep);
#line 965 "gxml-performance.vala"
		_g_object_unref0 (gd);
#line 965 "gxml-performance.vala"
		_g_object_unref0 (ce);
#line 965 "gxml-performance.vala"
		_g_object_unref0 (d);
#line 965 "gxml-performance.vala"
		_g_object_unref0 (f);
#line 11904 "gxml-performance.c"
	}
	goto __finally247;
	__catch247_g_error:
	{
		GError* e = NULL;
		const gchar* _tmp34_;
		gchar* _tmp35_;
		gchar* _tmp36_;
#line 965 "gxml-performance.vala"
		e = _inner_error0_;
#line 965 "gxml-performance.vala"
		_inner_error0_ = NULL;
#line 1001 "gxml-performance.vala"
		_tmp34_ = e->message;
#line 1001 "gxml-performance.vala"
		_tmp35_ = g_strconcat ("ERROR: ", _tmp34_, NULL);
#line 1001 "gxml-performance.vala"
		_tmp36_ = _tmp35_;
#line 1001 "gxml-performance.vala"
		g_message ("gxml-performance.vala:1001: %s", _tmp36_);
#line 1001 "gxml-performance.vala"
		_g_free0 (_tmp36_);
#line 1002 "gxml-performance.vala"
		g_assert_not_reached ();
#line 965 "gxml-performance.vala"
		_g_error_free0 (e);
#line 11931 "gxml-performance.c"
	}
	__finally247:
#line 965 "gxml-performance.vala"
	if (G_UNLIKELY (_inner_error0_ != NULL)) {
#line 965 "gxml-performance.vala"
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
#line 965 "gxml-performance.vala"
		g_clear_error (&_inner_error0_);
#line 965 "gxml-performance.vala"
		return;
#line 11942 "gxml-performance.c"
	}
}

static void
___lambda189__gtest_func (void)
{
#line 963 "gxml-performance.vala"
	__lambda189_ ();
#line 11951 "gxml-performance.c"
}

void
performance_add_tests (void)
{
#line 238 "gxml-performance.vala"
	g_test_add_func ("/gxml/performance/read/gomdocument", ___lambda170__gtest_func);
#line 256 "gxml-performance.vala"
	g_test_add_func ("/gxml/performance/read/gdocument", ___lambda171__gtest_func);
#line 275 "gxml-performance.vala"
	g_test_add_func ("/gxml/performance/se-deserialize/gomdocument", ___lambda172__gtest_func);
#line 312 "gxml-performance.vala"
	g_test_add_func ("/gxml/performance/deserialize/gdocument", ___lambda173__gtest_func);
#line 333 "gxml-performance.vala"
	g_test_add_func ("/gxml/performance/serialize/gdocument", ___lambda174__gtest_func);
#line 372 "gxml-performance.vala"
	g_test_add_func ("/gxml/performance/serialize/gdocument/read_doc", ___lambda175__gtest_func);
#line 413 "gxml-performance.vala"
	g_test_add_func ("/gxml/performance/serialize/t-document", ___lambda176__gtest_func);
#line 451 "gxml-performance.vala"
	g_test_add_func ("/gxml/performance/arraylist/post-deserialization/disable", ___lambda177__gtest_func);
#line 484 "gxml-performance.vala"
	g_test_add_func ("/gxml/performance/arraylist/post-deserialization/enable", ___lambda178__gtest_func);
#line 511 "gxml-performance.vala"
	g_test_add_func ("/gxml/performance/hashmap/post-deserialization/disable", ___lambda179__gtest_func);
#line 564 "gxml-performance.vala"
	g_test_add_func ("/gxml/performance/hashmap/post-deserialization/enable", ___lambda180__gtest_func);
#line 598 "gxml-performance.vala"
	g_test_add_func ("/gxml/performance/treemap/post-deserialization/disable", ___lambda181__gtest_func);
#line 642 "gxml-performance.vala"
	g_test_add_func ("/gxml/performance/treemap/post-deserialization/enable", ___lambda182__gtest_func);
#line 676 "gxml-performance.vala"
	g_test_add_func ("/gxml/performance/dualkeymap/post-deserialization/disable", ___lambda183__gtest_func);
#line 722 "gxml-performance.vala"
	g_test_add_func ("/gxml/performance/dualkeymap/post-deserialization/enable", ___lambda184__gtest_func);
#line 756 "gxml-performance.vala"
	g_test_add_func ("/gxml/performance/gdocument/hashmap/post-deserialization/disable", ___lambda185__gtest_func);
#line 818 "gxml-performance.vala"
	g_test_add_func ("/gxml/performance/gdocument/hashmap/post-deserialization/enable", ___lambda186__gtest_func);
#line 879 "gxml-performance.vala"
	g_test_add_func ("/gxml/performance/gdocument/arraylist/post-deserialization/disable", ___lambda187__gtest_func);
#line 921 "gxml-performance.vala"
	g_test_add_func ("/gxml/performance/gdocument/arraylist/post-deserialization/enable", ___lambda188__gtest_func);
#line 963 "gxml-performance.vala"
	g_test_add_func ("/gxml/performance/tdocument/arraylist/post-deserialization/enable", ___lambda189__gtest_func);
#line 11997 "gxml-performance.c"
}

Performance*
performance_construct (GType object_type)
{
	Performance* self = NULL;
#line 120 "gxml-performance.vala"
	self = (Performance*) g_type_create_instance (object_type);
#line 120 "gxml-performance.vala"
	return self;
#line 12008 "gxml-performance.c"
}

Performance*
performance_new (void)
{
#line 120 "gxml-performance.vala"
	return performance_construct (TYPE_PERFORMANCE);
#line 12016 "gxml-performance.c"
}

static inline gpointer
performance_aelement_get_instance_private (PerformanceAElement* self)
{
	return G_STRUCT_MEMBER_P (self, PerformanceAElement_private_offset);
}

static PerformanceAElement*
performance_aelement_construct_named (GType object_type,
                                      const gchar* name)
{
	PerformanceAElement * self = NULL;
#line 126 "gxml-performance.vala"
	g_return_val_if_fail (name != NULL, NULL);
#line 126 "gxml-performance.vala"
	self = (PerformanceAElement*) gxml_serializable_object_model_construct (object_type);
#line 126 "gxml-performance.vala"
	performance_aelement_set_name (self, name);
#line 126 "gxml-performance.vala"
	return self;
#line 12038 "gxml-performance.c"
}

static PerformanceAElement*
performance_aelement_new_named (const gchar* name)
{
#line 126 "gxml-performance.vala"
	return performance_aelement_construct_named (PERFORMANCE_TYPE_AELEMENT, name);
#line 12046 "gxml-performance.c"
}

static gchar*
performance_aelement_real_to_string (GXmlSerializableObjectModel* base)
{
	PerformanceAElement * self;
	gchar* result = NULL;
	const gchar* _tmp0_;
	gchar* _tmp1_;
#line 127 "gxml-performance.vala"
	self = (PerformanceAElement*) base;
#line 127 "gxml-performance.vala"
	_tmp0_ = self->priv->_name;
#line 127 "gxml-performance.vala"
	_tmp1_ = g_strdup (_tmp0_);
#line 127 "gxml-performance.vala"
	result = _tmp1_;
#line 127 "gxml-performance.vala"
	return result;
#line 12066 "gxml-performance.c"
}

static PerformanceAElement*
performance_aelement_construct (GType object_type)
{
	PerformanceAElement * self = NULL;
#line 123 "gxml-performance.vala"
	self = (PerformanceAElement*) gxml_serializable_object_model_construct (object_type);
#line 123 "gxml-performance.vala"
	return self;
#line 12077 "gxml-performance.c"
}

static PerformanceAElement*
performance_aelement_new (void)
{
#line 123 "gxml-performance.vala"
	return performance_aelement_construct (PERFORMANCE_TYPE_AELEMENT);
#line 12085 "gxml-performance.c"
}

static const gchar*
performance_aelement_get_name (PerformanceAElement* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 125 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 125 "gxml-performance.vala"
	_tmp0_ = self->priv->_name;
#line 125 "gxml-performance.vala"
	result = _tmp0_;
#line 125 "gxml-performance.vala"
	return result;
#line 12101 "gxml-performance.c"
}

static void
performance_aelement_set_name (PerformanceAElement* self,
                               const gchar* value)
{
#line 125 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 125 "gxml-performance.vala"
	if (g_strcmp0 (value, performance_aelement_get_name (self)) != 0) {
#line 12112 "gxml-performance.c"
		gchar* _tmp0_;
#line 125 "gxml-performance.vala"
		_tmp0_ = g_strdup (value);
#line 125 "gxml-performance.vala"
		_g_free0 (self->priv->_name);
#line 125 "gxml-performance.vala"
		self->priv->_name = _tmp0_;
#line 125 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, performance_aelement_properties[PERFORMANCE_AELEMENT_NAME_PROPERTY]);
#line 12122 "gxml-performance.c"
	}
}

static inline gpointer
performance_aelement_array_get_instance_private (PerformanceAElementArray* self)
{
	return G_STRUCT_MEMBER_P (self, PerformanceAElementArray_private_offset);
}

static gboolean
performance_aelement_array_real_deserialize_proceed (GXmlSerializableArrayList* base)
{
	PerformanceAElementArray * self;
	gboolean result = FALSE;
	gboolean _tmp0_;
#line 130 "gxml-performance.vala"
	self = (PerformanceAElementArray*) base;
#line 130 "gxml-performance.vala"
	_tmp0_ = self->priv->_enable_deserialize;
#line 130 "gxml-performance.vala"
	result = _tmp0_;
#line 130 "gxml-performance.vala"
	return result;
#line 12146 "gxml-performance.c"
}

static PerformanceAElementArray*
performance_aelement_array_construct (GType object_type)
{
	PerformanceAElementArray * self = NULL;
#line 128 "gxml-performance.vala"
	self = (PerformanceAElementArray*) gxml_serializable_array_list_construct (object_type, PERFORMANCE_TYPE_AELEMENT, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref);
#line 128 "gxml-performance.vala"
	return self;
#line 12157 "gxml-performance.c"
}

static PerformanceAElementArray*
performance_aelement_array_new (void)
{
#line 128 "gxml-performance.vala"
	return performance_aelement_array_construct (PERFORMANCE_AELEMENT_TYPE_ARRAY);
#line 12165 "gxml-performance.c"
}

static gboolean
performance_aelement_array_get_enable_deserialize (PerformanceAElementArray* self)
{
	gboolean result;
#line 129 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 129 "gxml-performance.vala"
	result = self->priv->_enable_deserialize;
#line 129 "gxml-performance.vala"
	return result;
#line 12178 "gxml-performance.c"
}

static void
performance_aelement_array_set_enable_deserialize (PerformanceAElementArray* self,
                                                   gboolean value)
{
#line 129 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 129 "gxml-performance.vala"
	if (performance_aelement_array_get_enable_deserialize (self) != value) {
#line 129 "gxml-performance.vala"
		self->priv->_enable_deserialize = value;
#line 129 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, performance_aelement_array_properties[PERFORMANCE_AELEMENT_ARRAY_ENABLE_DESERIALIZE_PROPERTY]);
#line 12193 "gxml-performance.c"
	}
}

static void
performance_aelement_array_class_init (PerformanceAElementArrayClass * klass,
                                       gpointer klass_data)
{
#line 128 "gxml-performance.vala"
	performance_aelement_array_parent_class = g_type_class_peek_parent (klass);
#line 128 "gxml-performance.vala"
	g_type_class_adjust_private_offset (klass, &PerformanceAElementArray_private_offset);
#line 128 "gxml-performance.vala"
	((GXmlSerializableArrayListClass *) klass)->deserialize_proceed = (gboolean (*) (GXmlSerializableArrayList*)) performance_aelement_array_real_deserialize_proceed;
#line 128 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_performance_aelement_array_get_property;
#line 128 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_performance_aelement_array_set_property;
#line 128 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->finalize = performance_aelement_array_finalize;
#line 128 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), PERFORMANCE_AELEMENT_ARRAY_ENABLE_DESERIALIZE_PROPERTY, performance_aelement_array_properties[PERFORMANCE_AELEMENT_ARRAY_ENABLE_DESERIALIZE_PROPERTY] = g_param_spec_boolean ("enable-deserialize", "enable-deserialize", "enable-deserialize", FALSE, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 12215 "gxml-performance.c"
}

static void
performance_aelement_array_instance_init (PerformanceAElementArray * self,
                                          gpointer klass)
{
#line 128 "gxml-performance.vala"
	self->priv = performance_aelement_array_get_instance_private (self);
#line 129 "gxml-performance.vala"
	self->priv->_enable_deserialize = FALSE;
#line 12226 "gxml-performance.c"
}

static void
performance_aelement_array_finalize (GObject * obj)
{
	PerformanceAElementArray * self;
#line 128 "gxml-performance.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, PERFORMANCE_AELEMENT_TYPE_ARRAY, PerformanceAElementArray);
#line 128 "gxml-performance.vala"
	G_OBJECT_CLASS (performance_aelement_array_parent_class)->finalize (obj);
#line 12237 "gxml-performance.c"
}

GType
performance_aelement_array_get_type (void)
{
	static volatile gsize performance_aelement_array_type_id__volatile = 0;
	if (g_once_init_enter (&performance_aelement_array_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (PerformanceAElementArrayClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) performance_aelement_array_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (PerformanceAElementArray), 0, (GInstanceInitFunc) performance_aelement_array_instance_init, NULL };
		GType performance_aelement_array_type_id;
		performance_aelement_array_type_id = g_type_register_static (GXML_TYPE_SERIALIZABLE_ARRAY_LIST, "PerformanceAElementArray", &g_define_type_info, 0);
		PerformanceAElementArray_private_offset = g_type_add_instance_private (performance_aelement_array_type_id, sizeof (PerformanceAElementArrayPrivate));
		g_once_init_leave (&performance_aelement_array_type_id__volatile, performance_aelement_array_type_id);
	}
	return performance_aelement_array_type_id__volatile;
}

static void
_vala_performance_aelement_array_get_property (GObject * object,
                                               guint property_id,
                                               GValue * value,
                                               GParamSpec * pspec)
{
	PerformanceAElementArray * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PERFORMANCE_AELEMENT_TYPE_ARRAY, PerformanceAElementArray);
#line 128 "gxml-performance.vala"
	switch (property_id) {
#line 128 "gxml-performance.vala"
		case PERFORMANCE_AELEMENT_ARRAY_ENABLE_DESERIALIZE_PROPERTY:
#line 128 "gxml-performance.vala"
		g_value_set_boolean (value, performance_aelement_array_get_enable_deserialize (self));
#line 128 "gxml-performance.vala"
		break;
#line 12270 "gxml-performance.c"
		default:
#line 128 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 128 "gxml-performance.vala"
		break;
#line 12276 "gxml-performance.c"
	}
}

static void
_vala_performance_aelement_array_set_property (GObject * object,
                                               guint property_id,
                                               const GValue * value,
                                               GParamSpec * pspec)
{
	PerformanceAElementArray * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PERFORMANCE_AELEMENT_TYPE_ARRAY, PerformanceAElementArray);
#line 128 "gxml-performance.vala"
	switch (property_id) {
#line 128 "gxml-performance.vala"
		case PERFORMANCE_AELEMENT_ARRAY_ENABLE_DESERIALIZE_PROPERTY:
#line 128 "gxml-performance.vala"
		performance_aelement_array_set_enable_deserialize (self, g_value_get_boolean (value));
#line 128 "gxml-performance.vala"
		break;
#line 12296 "gxml-performance.c"
		default:
#line 128 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 128 "gxml-performance.vala"
		break;
#line 12302 "gxml-performance.c"
	}
}

static void
performance_aelement_class_init (PerformanceAElementClass * klass,
                                 gpointer klass_data)
{
#line 123 "gxml-performance.vala"
	performance_aelement_parent_class = g_type_class_peek_parent (klass);
#line 123 "gxml-performance.vala"
	g_type_class_adjust_private_offset (klass, &PerformanceAElement_private_offset);
#line 123 "gxml-performance.vala"
	((GXmlSerializableObjectModelClass *) klass)->to_string = (gchar* (*) (GXmlSerializableObjectModel*)) performance_aelement_real_to_string;
#line 123 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_performance_aelement_get_property;
#line 123 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_performance_aelement_set_property;
#line 123 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->finalize = performance_aelement_finalize;
#line 123 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), PERFORMANCE_AELEMENT_NAME_PROPERTY, performance_aelement_properties[PERFORMANCE_AELEMENT_NAME_PROPERTY] = g_param_spec_string ("name", "name", "name", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 12324 "gxml-performance.c"
}

static void
performance_aelement_instance_init (PerformanceAElement * self,
                                    gpointer klass)
{
#line 123 "gxml-performance.vala"
	self->priv = performance_aelement_get_instance_private (self);
#line 12333 "gxml-performance.c"
}

static void
performance_aelement_finalize (GObject * obj)
{
	PerformanceAElement * self;
#line 123 "gxml-performance.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, PERFORMANCE_TYPE_AELEMENT, PerformanceAElement);
#line 125 "gxml-performance.vala"
	_g_free0 (self->priv->_name);
#line 123 "gxml-performance.vala"
	G_OBJECT_CLASS (performance_aelement_parent_class)->finalize (obj);
#line 12346 "gxml-performance.c"
}

static GType
performance_aelement_get_type (void)
{
	static volatile gsize performance_aelement_type_id__volatile = 0;
	if (g_once_init_enter (&performance_aelement_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (PerformanceAElementClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) performance_aelement_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (PerformanceAElement), 0, (GInstanceInitFunc) performance_aelement_instance_init, NULL };
		GType performance_aelement_type_id;
		performance_aelement_type_id = g_type_register_static (GXML_TYPE_SERIALIZABLE_OBJECT_MODEL, "PerformanceAElement", &g_define_type_info, 0);
		PerformanceAElement_private_offset = g_type_add_instance_private (performance_aelement_type_id, sizeof (PerformanceAElementPrivate));
		g_once_init_leave (&performance_aelement_type_id__volatile, performance_aelement_type_id);
	}
	return performance_aelement_type_id__volatile;
}

static void
_vala_performance_aelement_get_property (GObject * object,
                                         guint property_id,
                                         GValue * value,
                                         GParamSpec * pspec)
{
	PerformanceAElement * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PERFORMANCE_TYPE_AELEMENT, PerformanceAElement);
#line 123 "gxml-performance.vala"
	switch (property_id) {
#line 123 "gxml-performance.vala"
		case PERFORMANCE_AELEMENT_NAME_PROPERTY:
#line 123 "gxml-performance.vala"
		g_value_set_string (value, performance_aelement_get_name (self));
#line 123 "gxml-performance.vala"
		break;
#line 12379 "gxml-performance.c"
		default:
#line 123 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 123 "gxml-performance.vala"
		break;
#line 12385 "gxml-performance.c"
	}
}

static void
_vala_performance_aelement_set_property (GObject * object,
                                         guint property_id,
                                         const GValue * value,
                                         GParamSpec * pspec)
{
	PerformanceAElement * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PERFORMANCE_TYPE_AELEMENT, PerformanceAElement);
#line 123 "gxml-performance.vala"
	switch (property_id) {
#line 123 "gxml-performance.vala"
		case PERFORMANCE_AELEMENT_NAME_PROPERTY:
#line 123 "gxml-performance.vala"
		performance_aelement_set_name (self, g_value_get_string (value));
#line 123 "gxml-performance.vala"
		break;
#line 12405 "gxml-performance.c"
		default:
#line 123 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 123 "gxml-performance.vala"
		break;
#line 12411 "gxml-performance.c"
	}
}

static inline gpointer
performance_celement_get_instance_private (PerformanceCElement* self)
{
	return G_STRUCT_MEMBER_P (self, PerformanceCElement_private_offset);
}

static gchar*
performance_celement_real_node_name (GXmlSerializableObjectModel* base)
{
	PerformanceCElement * self;
	gchar* result = NULL;
	gchar* _tmp0_;
#line 136 "gxml-performance.vala"
	self = (PerformanceCElement*) base;
#line 136 "gxml-performance.vala"
	_tmp0_ = g_strdup ("CElement");
#line 136 "gxml-performance.vala"
	result = _tmp0_;
#line 136 "gxml-performance.vala"
	return result;
#line 12435 "gxml-performance.c"
}

static gchar*
performance_celement_real_to_string (GXmlSerializableObjectModel* base)
{
	PerformanceCElement * self;
	gchar* result = NULL;
	gchar* _tmp0_;
#line 137 "gxml-performance.vala"
	self = (PerformanceCElement*) base;
#line 137 "gxml-performance.vala"
	_tmp0_ = g_strdup ("CElement");
#line 137 "gxml-performance.vala"
	result = _tmp0_;
#line 137 "gxml-performance.vala"
	return result;
#line 12452 "gxml-performance.c"
}

static PerformanceCElement*
performance_celement_construct (GType object_type)
{
	PerformanceCElement * self = NULL;
#line 134 "gxml-performance.vala"
	self = (PerformanceCElement*) gxml_serializable_object_model_construct (object_type);
#line 134 "gxml-performance.vala"
	return self;
#line 12463 "gxml-performance.c"
}

static PerformanceCElement*
performance_celement_new (void)
{
#line 134 "gxml-performance.vala"
	return performance_celement_construct (PERFORMANCE_TYPE_CELEMENT);
#line 12471 "gxml-performance.c"
}

static PerformanceAElementArray*
performance_celement_get_elements (PerformanceCElement* self)
{
	PerformanceAElementArray* result;
	PerformanceAElementArray* _tmp0_;
#line 135 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 135 "gxml-performance.vala"
	_tmp0_ = self->priv->_elements;
#line 135 "gxml-performance.vala"
	result = _tmp0_;
#line 135 "gxml-performance.vala"
	return result;
#line 12487 "gxml-performance.c"
}

static void
performance_celement_set_elements (PerformanceCElement* self,
                                   PerformanceAElementArray* value)
{
#line 135 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 135 "gxml-performance.vala"
	if (performance_celement_get_elements (self) != value) {
#line 12498 "gxml-performance.c"
		PerformanceAElementArray* _tmp0_;
#line 135 "gxml-performance.vala"
		_tmp0_ = _g_object_ref0 (value);
#line 135 "gxml-performance.vala"
		_g_object_unref0 (self->priv->_elements);
#line 135 "gxml-performance.vala"
		self->priv->_elements = _tmp0_;
#line 135 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, performance_celement_properties[PERFORMANCE_CELEMENT_ELEMENTS_PROPERTY]);
#line 12508 "gxml-performance.c"
	}
}

static void
performance_celement_class_init (PerformanceCElementClass * klass,
                                 gpointer klass_data)
{
#line 134 "gxml-performance.vala"
	performance_celement_parent_class = g_type_class_peek_parent (klass);
#line 134 "gxml-performance.vala"
	g_type_class_adjust_private_offset (klass, &PerformanceCElement_private_offset);
#line 134 "gxml-performance.vala"
	((GXmlSerializableObjectModelClass *) klass)->node_name = (gchar* (*) (GXmlSerializableObjectModel*)) performance_celement_real_node_name;
#line 134 "gxml-performance.vala"
	((GXmlSerializableObjectModelClass *) klass)->to_string = (gchar* (*) (GXmlSerializableObjectModel*)) performance_celement_real_to_string;
#line 134 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_performance_celement_get_property;
#line 134 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_performance_celement_set_property;
#line 134 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->finalize = performance_celement_finalize;
#line 134 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), PERFORMANCE_CELEMENT_ELEMENTS_PROPERTY, performance_celement_properties[PERFORMANCE_CELEMENT_ELEMENTS_PROPERTY] = g_param_spec_object ("elements", "elements", "elements", PERFORMANCE_AELEMENT_TYPE_ARRAY, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 12532 "gxml-performance.c"
}

static void
performance_celement_instance_init (PerformanceCElement * self,
                                    gpointer klass)
{
	PerformanceAElementArray* _tmp0_;
#line 134 "gxml-performance.vala"
	self->priv = performance_celement_get_instance_private (self);
#line 135 "gxml-performance.vala"
	_tmp0_ = performance_aelement_array_new ();
#line 135 "gxml-performance.vala"
	self->priv->_elements = _tmp0_;
#line 12546 "gxml-performance.c"
}

static void
performance_celement_finalize (GObject * obj)
{
	PerformanceCElement * self;
#line 134 "gxml-performance.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, PERFORMANCE_TYPE_CELEMENT, PerformanceCElement);
#line 135 "gxml-performance.vala"
	_g_object_unref0 (self->priv->_elements);
#line 134 "gxml-performance.vala"
	G_OBJECT_CLASS (performance_celement_parent_class)->finalize (obj);
#line 12559 "gxml-performance.c"
}

static GType
performance_celement_get_type (void)
{
	static volatile gsize performance_celement_type_id__volatile = 0;
	if (g_once_init_enter (&performance_celement_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (PerformanceCElementClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) performance_celement_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (PerformanceCElement), 0, (GInstanceInitFunc) performance_celement_instance_init, NULL };
		GType performance_celement_type_id;
		performance_celement_type_id = g_type_register_static (GXML_TYPE_SERIALIZABLE_OBJECT_MODEL, "PerformanceCElement", &g_define_type_info, 0);
		PerformanceCElement_private_offset = g_type_add_instance_private (performance_celement_type_id, sizeof (PerformanceCElementPrivate));
		g_once_init_leave (&performance_celement_type_id__volatile, performance_celement_type_id);
	}
	return performance_celement_type_id__volatile;
}

static void
_vala_performance_celement_get_property (GObject * object,
                                         guint property_id,
                                         GValue * value,
                                         GParamSpec * pspec)
{
	PerformanceCElement * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PERFORMANCE_TYPE_CELEMENT, PerformanceCElement);
#line 134 "gxml-performance.vala"
	switch (property_id) {
#line 134 "gxml-performance.vala"
		case PERFORMANCE_CELEMENT_ELEMENTS_PROPERTY:
#line 134 "gxml-performance.vala"
		g_value_set_object (value, performance_celement_get_elements (self));
#line 134 "gxml-performance.vala"
		break;
#line 12592 "gxml-performance.c"
		default:
#line 134 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 134 "gxml-performance.vala"
		break;
#line 12598 "gxml-performance.c"
	}
}

static void
_vala_performance_celement_set_property (GObject * object,
                                         guint property_id,
                                         const GValue * value,
                                         GParamSpec * pspec)
{
	PerformanceCElement * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PERFORMANCE_TYPE_CELEMENT, PerformanceCElement);
#line 134 "gxml-performance.vala"
	switch (property_id) {
#line 134 "gxml-performance.vala"
		case PERFORMANCE_CELEMENT_ELEMENTS_PROPERTY:
#line 134 "gxml-performance.vala"
		performance_celement_set_elements (self, g_value_get_object (value));
#line 134 "gxml-performance.vala"
		break;
#line 12618 "gxml-performance.c"
		default:
#line 134 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 134 "gxml-performance.vala"
		break;
#line 12624 "gxml-performance.c"
	}
}

static inline gpointer
performance_helement_get_instance_private (PerformanceHElement* self)
{
	return G_STRUCT_MEMBER_P (self, PerformanceHElement_private_offset);
}

static gchar*
performance_helement_real_get_map_key (GXmlSerializableMapKey* base)
{
	PerformanceHElement * self;
	gchar* result = NULL;
	const gchar* _tmp0_;
	gchar* _tmp1_;
#line 144 "gxml-performance.vala"
	self = (PerformanceHElement*) base;
#line 144 "gxml-performance.vala"
	_tmp0_ = self->priv->_name;
#line 144 "gxml-performance.vala"
	_tmp1_ = g_strdup (_tmp0_);
#line 144 "gxml-performance.vala"
	result = _tmp1_;
#line 144 "gxml-performance.vala"
	return result;
#line 12651 "gxml-performance.c"
}

static gchar*
performance_helement_real_node_name (GXmlSerializableObjectModel* base)
{
	PerformanceHElement * self;
	gchar* result = NULL;
	gchar* _tmp0_;
#line 145 "gxml-performance.vala"
	self = (PerformanceHElement*) base;
#line 145 "gxml-performance.vala"
	_tmp0_ = g_strdup ("HElement");
#line 145 "gxml-performance.vala"
	result = _tmp0_;
#line 145 "gxml-performance.vala"
	return result;
#line 12668 "gxml-performance.c"
}

static gchar*
performance_helement_real_to_string (GXmlSerializableObjectModel* base)
{
	PerformanceHElement * self;
	gchar* result = NULL;
	const gchar* _tmp0_;
	gchar* _tmp1_;
#line 146 "gxml-performance.vala"
	self = (PerformanceHElement*) base;
#line 146 "gxml-performance.vala"
	_tmp0_ = self->priv->_name;
#line 146 "gxml-performance.vala"
	_tmp1_ = g_strconcat ("HElement:", _tmp0_, NULL);
#line 146 "gxml-performance.vala"
	result = _tmp1_;
#line 146 "gxml-performance.vala"
	return result;
#line 12688 "gxml-performance.c"
}

static PerformanceHElement*
performance_helement_construct (GType object_type)
{
	PerformanceHElement * self = NULL;
#line 141 "gxml-performance.vala"
	self = (PerformanceHElement*) gxml_serializable_object_model_construct (object_type);
#line 141 "gxml-performance.vala"
	return self;
#line 12699 "gxml-performance.c"
}

static PerformanceHElement*
performance_helement_new (void)
{
#line 141 "gxml-performance.vala"
	return performance_helement_construct (PERFORMANCE_TYPE_HELEMENT);
#line 12707 "gxml-performance.c"
}

static const gchar*
performance_helement_get_name (PerformanceHElement* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 143 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 143 "gxml-performance.vala"
	_tmp0_ = self->priv->_name;
#line 143 "gxml-performance.vala"
	result = _tmp0_;
#line 143 "gxml-performance.vala"
	return result;
#line 12723 "gxml-performance.c"
}

static void
performance_helement_set_name (PerformanceHElement* self,
                               const gchar* value)
{
#line 143 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 143 "gxml-performance.vala"
	if (g_strcmp0 (value, performance_helement_get_name (self)) != 0) {
#line 12734 "gxml-performance.c"
		gchar* _tmp0_;
#line 143 "gxml-performance.vala"
		_tmp0_ = g_strdup (value);
#line 143 "gxml-performance.vala"
		_g_free0 (self->priv->_name);
#line 143 "gxml-performance.vala"
		self->priv->_name = _tmp0_;
#line 143 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, performance_helement_properties[PERFORMANCE_HELEMENT_NAME_PROPERTY]);
#line 12744 "gxml-performance.c"
	}
}

static inline gpointer
performance_helement_hash_map_get_instance_private (PerformanceHElementHashMap* self)
{
	return G_STRUCT_MEMBER_P (self, PerformanceHElementHashMap_private_offset);
}

static gboolean
performance_helement_hash_map_real_deserialize_proceed (GXmlSerializableHashMap* base)
{
	PerformanceHElementHashMap * self;
	gboolean result = FALSE;
	gboolean _tmp0_;
#line 149 "gxml-performance.vala"
	self = (PerformanceHElementHashMap*) base;
#line 149 "gxml-performance.vala"
	_tmp0_ = self->priv->_enable_deserialize;
#line 149 "gxml-performance.vala"
	result = _tmp0_;
#line 149 "gxml-performance.vala"
	return result;
#line 12768 "gxml-performance.c"
}

static PerformanceHElementHashMap*
performance_helement_hash_map_construct (GType object_type)
{
	PerformanceHElementHashMap * self = NULL;
#line 147 "gxml-performance.vala"
	self = (PerformanceHElementHashMap*) gxml_serializable_hash_map_construct (object_type, G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, (GDestroyNotify) g_free, PERFORMANCE_TYPE_HELEMENT, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref);
#line 147 "gxml-performance.vala"
	return self;
#line 12779 "gxml-performance.c"
}

static PerformanceHElementHashMap*
performance_helement_hash_map_new (void)
{
#line 147 "gxml-performance.vala"
	return performance_helement_hash_map_construct (PERFORMANCE_HELEMENT_TYPE_HASH_MAP);
#line 12787 "gxml-performance.c"
}

static gboolean
performance_helement_hash_map_get_enable_deserialize (PerformanceHElementHashMap* self)
{
	gboolean result;
#line 148 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 148 "gxml-performance.vala"
	result = self->priv->_enable_deserialize;
#line 148 "gxml-performance.vala"
	return result;
#line 12800 "gxml-performance.c"
}

static void
performance_helement_hash_map_set_enable_deserialize (PerformanceHElementHashMap* self,
                                                      gboolean value)
{
#line 148 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 148 "gxml-performance.vala"
	if (performance_helement_hash_map_get_enable_deserialize (self) != value) {
#line 148 "gxml-performance.vala"
		self->priv->_enable_deserialize = value;
#line 148 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, performance_helement_hash_map_properties[PERFORMANCE_HELEMENT_HASH_MAP_ENABLE_DESERIALIZE_PROPERTY]);
#line 12815 "gxml-performance.c"
	}
}

static void
performance_helement_hash_map_class_init (PerformanceHElementHashMapClass * klass,
                                          gpointer klass_data)
{
#line 147 "gxml-performance.vala"
	performance_helement_hash_map_parent_class = g_type_class_peek_parent (klass);
#line 147 "gxml-performance.vala"
	g_type_class_adjust_private_offset (klass, &PerformanceHElementHashMap_private_offset);
#line 147 "gxml-performance.vala"
	((GXmlSerializableHashMapClass *) klass)->deserialize_proceed = (gboolean (*) (GXmlSerializableHashMap*)) performance_helement_hash_map_real_deserialize_proceed;
#line 147 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_performance_helement_hash_map_get_property;
#line 147 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_performance_helement_hash_map_set_property;
#line 147 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->finalize = performance_helement_hash_map_finalize;
#line 147 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), PERFORMANCE_HELEMENT_HASH_MAP_ENABLE_DESERIALIZE_PROPERTY, performance_helement_hash_map_properties[PERFORMANCE_HELEMENT_HASH_MAP_ENABLE_DESERIALIZE_PROPERTY] = g_param_spec_boolean ("enable-deserialize", "enable-deserialize", "enable-deserialize", FALSE, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 12837 "gxml-performance.c"
}

static void
performance_helement_hash_map_instance_init (PerformanceHElementHashMap * self,
                                             gpointer klass)
{
#line 147 "gxml-performance.vala"
	self->priv = performance_helement_hash_map_get_instance_private (self);
#line 148 "gxml-performance.vala"
	self->priv->_enable_deserialize = FALSE;
#line 12848 "gxml-performance.c"
}

static void
performance_helement_hash_map_finalize (GObject * obj)
{
	PerformanceHElementHashMap * self;
#line 147 "gxml-performance.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, PERFORMANCE_HELEMENT_TYPE_HASH_MAP, PerformanceHElementHashMap);
#line 147 "gxml-performance.vala"
	G_OBJECT_CLASS (performance_helement_hash_map_parent_class)->finalize (obj);
#line 12859 "gxml-performance.c"
}

GType
performance_helement_hash_map_get_type (void)
{
	static volatile gsize performance_helement_hash_map_type_id__volatile = 0;
	if (g_once_init_enter (&performance_helement_hash_map_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (PerformanceHElementHashMapClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) performance_helement_hash_map_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (PerformanceHElementHashMap), 0, (GInstanceInitFunc) performance_helement_hash_map_instance_init, NULL };
		GType performance_helement_hash_map_type_id;
		performance_helement_hash_map_type_id = g_type_register_static (GXML_TYPE_SERIALIZABLE_HASH_MAP, "PerformanceHElementHashMap", &g_define_type_info, 0);
		PerformanceHElementHashMap_private_offset = g_type_add_instance_private (performance_helement_hash_map_type_id, sizeof (PerformanceHElementHashMapPrivate));
		g_once_init_leave (&performance_helement_hash_map_type_id__volatile, performance_helement_hash_map_type_id);
	}
	return performance_helement_hash_map_type_id__volatile;
}

static void
_vala_performance_helement_hash_map_get_property (GObject * object,
                                                  guint property_id,
                                                  GValue * value,
                                                  GParamSpec * pspec)
{
	PerformanceHElementHashMap * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PERFORMANCE_HELEMENT_TYPE_HASH_MAP, PerformanceHElementHashMap);
#line 147 "gxml-performance.vala"
	switch (property_id) {
#line 147 "gxml-performance.vala"
		case PERFORMANCE_HELEMENT_HASH_MAP_ENABLE_DESERIALIZE_PROPERTY:
#line 147 "gxml-performance.vala"
		g_value_set_boolean (value, performance_helement_hash_map_get_enable_deserialize (self));
#line 147 "gxml-performance.vala"
		break;
#line 12892 "gxml-performance.c"
		default:
#line 147 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 147 "gxml-performance.vala"
		break;
#line 12898 "gxml-performance.c"
	}
}

static void
_vala_performance_helement_hash_map_set_property (GObject * object,
                                                  guint property_id,
                                                  const GValue * value,
                                                  GParamSpec * pspec)
{
	PerformanceHElementHashMap * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PERFORMANCE_HELEMENT_TYPE_HASH_MAP, PerformanceHElementHashMap);
#line 147 "gxml-performance.vala"
	switch (property_id) {
#line 147 "gxml-performance.vala"
		case PERFORMANCE_HELEMENT_HASH_MAP_ENABLE_DESERIALIZE_PROPERTY:
#line 147 "gxml-performance.vala"
		performance_helement_hash_map_set_enable_deserialize (self, g_value_get_boolean (value));
#line 147 "gxml-performance.vala"
		break;
#line 12918 "gxml-performance.c"
		default:
#line 147 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 147 "gxml-performance.vala"
		break;
#line 12924 "gxml-performance.c"
	}
}

static void
performance_helement_class_init (PerformanceHElementClass * klass,
                                 gpointer klass_data)
{
#line 141 "gxml-performance.vala"
	performance_helement_parent_class = g_type_class_peek_parent (klass);
#line 141 "gxml-performance.vala"
	g_type_class_adjust_private_offset (klass, &PerformanceHElement_private_offset);
#line 141 "gxml-performance.vala"
	((GXmlSerializableObjectModelClass *) klass)->node_name = (gchar* (*) (GXmlSerializableObjectModel*)) performance_helement_real_node_name;
#line 141 "gxml-performance.vala"
	((GXmlSerializableObjectModelClass *) klass)->to_string = (gchar* (*) (GXmlSerializableObjectModel*)) performance_helement_real_to_string;
#line 141 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_performance_helement_get_property;
#line 141 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_performance_helement_set_property;
#line 141 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->finalize = performance_helement_finalize;
#line 141 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), PERFORMANCE_HELEMENT_NAME_PROPERTY, performance_helement_properties[PERFORMANCE_HELEMENT_NAME_PROPERTY] = g_param_spec_string ("name", "name", "name", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 12948 "gxml-performance.c"
}

static void
performance_helement_gxml_serializable_map_key_interface_init (GXmlSerializableMapKeyIface * iface,
                                                               gpointer iface_data)
{
#line 141 "gxml-performance.vala"
	performance_helement_gxml_serializable_map_key_parent_iface = g_type_interface_peek_parent (iface);
#line 141 "gxml-performance.vala"
	iface->get_map_key = (gpointer (*) (GXmlSerializableMapKey*)) performance_helement_real_get_map_key;
#line 12959 "gxml-performance.c"
}

static void
performance_helement_instance_init (PerformanceHElement * self,
                                    gpointer klass)
{
#line 141 "gxml-performance.vala"
	self->priv = performance_helement_get_instance_private (self);
#line 12968 "gxml-performance.c"
}

static void
performance_helement_finalize (GObject * obj)
{
	PerformanceHElement * self;
#line 141 "gxml-performance.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, PERFORMANCE_TYPE_HELEMENT, PerformanceHElement);
#line 143 "gxml-performance.vala"
	_g_free0 (self->priv->_name);
#line 141 "gxml-performance.vala"
	G_OBJECT_CLASS (performance_helement_parent_class)->finalize (obj);
#line 12981 "gxml-performance.c"
}

static GType
performance_helement_get_type (void)
{
	static volatile gsize performance_helement_type_id__volatile = 0;
	if (g_once_init_enter (&performance_helement_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (PerformanceHElementClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) performance_helement_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (PerformanceHElement), 0, (GInstanceInitFunc) performance_helement_instance_init, NULL };
		static const GInterfaceInfo gxml_serializable_map_key_info = { (GInterfaceInitFunc) performance_helement_gxml_serializable_map_key_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
		GType performance_helement_type_id;
		performance_helement_type_id = g_type_register_static (GXML_TYPE_SERIALIZABLE_OBJECT_MODEL, "PerformanceHElement", &g_define_type_info, 0);
		g_type_add_interface_static (performance_helement_type_id, GXML_TYPE_SERIALIZABLE_MAP_KEY, &gxml_serializable_map_key_info);
		PerformanceHElement_private_offset = g_type_add_instance_private (performance_helement_type_id, sizeof (PerformanceHElementPrivate));
		g_once_init_leave (&performance_helement_type_id__volatile, performance_helement_type_id);
	}
	return performance_helement_type_id__volatile;
}

static void
_vala_performance_helement_get_property (GObject * object,
                                         guint property_id,
                                         GValue * value,
                                         GParamSpec * pspec)
{
	PerformanceHElement * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PERFORMANCE_TYPE_HELEMENT, PerformanceHElement);
#line 141 "gxml-performance.vala"
	switch (property_id) {
#line 141 "gxml-performance.vala"
		case PERFORMANCE_HELEMENT_NAME_PROPERTY:
#line 141 "gxml-performance.vala"
		g_value_set_string (value, performance_helement_get_name (self));
#line 141 "gxml-performance.vala"
		break;
#line 13016 "gxml-performance.c"
		default:
#line 141 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 141 "gxml-performance.vala"
		break;
#line 13022 "gxml-performance.c"
	}
}

static void
_vala_performance_helement_set_property (GObject * object,
                                         guint property_id,
                                         const GValue * value,
                                         GParamSpec * pspec)
{
	PerformanceHElement * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PERFORMANCE_TYPE_HELEMENT, PerformanceHElement);
#line 141 "gxml-performance.vala"
	switch (property_id) {
#line 141 "gxml-performance.vala"
		case PERFORMANCE_HELEMENT_NAME_PROPERTY:
#line 141 "gxml-performance.vala"
		performance_helement_set_name (self, g_value_get_string (value));
#line 141 "gxml-performance.vala"
		break;
#line 13042 "gxml-performance.c"
		default:
#line 141 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 141 "gxml-performance.vala"
		break;
#line 13048 "gxml-performance.c"
	}
}

static inline gpointer
performance_hcp_element_get_instance_private (PerformanceHcpElement* self)
{
	return G_STRUCT_MEMBER_P (self, PerformanceHcpElement_private_offset);
}

static gchar*
performance_hcp_element_real_node_name (GXmlSerializableObjectModel* base)
{
	PerformanceHcpElement * self;
	gchar* result = NULL;
	gchar* _tmp0_;
#line 154 "gxml-performance.vala"
	self = (PerformanceHcpElement*) base;
#line 154 "gxml-performance.vala"
	_tmp0_ = g_strdup ("HcpElement");
#line 154 "gxml-performance.vala"
	result = _tmp0_;
#line 154 "gxml-performance.vala"
	return result;
#line 13072 "gxml-performance.c"
}

static gchar*
performance_hcp_element_real_to_string (GXmlSerializableObjectModel* base)
{
	PerformanceHcpElement * self;
	gchar* result = NULL;
	gchar* _tmp0_;
#line 155 "gxml-performance.vala"
	self = (PerformanceHcpElement*) base;
#line 155 "gxml-performance.vala"
	_tmp0_ = g_strdup ("HcpElement");
#line 155 "gxml-performance.vala"
	result = _tmp0_;
#line 155 "gxml-performance.vala"
	return result;
#line 13089 "gxml-performance.c"
}

static PerformanceHcpElement*
performance_hcp_element_construct (GType object_type)
{
	PerformanceHcpElement * self = NULL;
#line 152 "gxml-performance.vala"
	self = (PerformanceHcpElement*) gxml_serializable_object_model_construct (object_type);
#line 152 "gxml-performance.vala"
	return self;
#line 13100 "gxml-performance.c"
}

static PerformanceHcpElement*
performance_hcp_element_new (void)
{
#line 152 "gxml-performance.vala"
	return performance_hcp_element_construct (PERFORMANCE_TYPE_HCP_ELEMENT);
#line 13108 "gxml-performance.c"
}

static PerformanceHElementHashMap*
performance_hcp_element_get_elements (PerformanceHcpElement* self)
{
	PerformanceHElementHashMap* result;
	PerformanceHElementHashMap* _tmp0_;
#line 153 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 153 "gxml-performance.vala"
	_tmp0_ = self->priv->_elements;
#line 153 "gxml-performance.vala"
	result = _tmp0_;
#line 153 "gxml-performance.vala"
	return result;
#line 13124 "gxml-performance.c"
}

static void
performance_hcp_element_set_elements (PerformanceHcpElement* self,
                                      PerformanceHElementHashMap* value)
{
#line 153 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 153 "gxml-performance.vala"
	if (performance_hcp_element_get_elements (self) != value) {
#line 13135 "gxml-performance.c"
		PerformanceHElementHashMap* _tmp0_;
#line 153 "gxml-performance.vala"
		_tmp0_ = _g_object_ref0 (value);
#line 153 "gxml-performance.vala"
		_g_object_unref0 (self->priv->_elements);
#line 153 "gxml-performance.vala"
		self->priv->_elements = _tmp0_;
#line 153 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, performance_hcp_element_properties[PERFORMANCE_HCP_ELEMENT_ELEMENTS_PROPERTY]);
#line 13145 "gxml-performance.c"
	}
}

static void
performance_hcp_element_class_init (PerformanceHcpElementClass * klass,
                                    gpointer klass_data)
{
#line 152 "gxml-performance.vala"
	performance_hcp_element_parent_class = g_type_class_peek_parent (klass);
#line 152 "gxml-performance.vala"
	g_type_class_adjust_private_offset (klass, &PerformanceHcpElement_private_offset);
#line 152 "gxml-performance.vala"
	((GXmlSerializableObjectModelClass *) klass)->node_name = (gchar* (*) (GXmlSerializableObjectModel*)) performance_hcp_element_real_node_name;
#line 152 "gxml-performance.vala"
	((GXmlSerializableObjectModelClass *) klass)->to_string = (gchar* (*) (GXmlSerializableObjectModel*)) performance_hcp_element_real_to_string;
#line 152 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_performance_hcp_element_get_property;
#line 152 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_performance_hcp_element_set_property;
#line 152 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->finalize = performance_hcp_element_finalize;
#line 152 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), PERFORMANCE_HCP_ELEMENT_ELEMENTS_PROPERTY, performance_hcp_element_properties[PERFORMANCE_HCP_ELEMENT_ELEMENTS_PROPERTY] = g_param_spec_object ("elements", "elements", "elements", PERFORMANCE_HELEMENT_TYPE_HASH_MAP, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 13169 "gxml-performance.c"
}

static void
performance_hcp_element_instance_init (PerformanceHcpElement * self,
                                       gpointer klass)
{
	PerformanceHElementHashMap* _tmp0_;
#line 152 "gxml-performance.vala"
	self->priv = performance_hcp_element_get_instance_private (self);
#line 153 "gxml-performance.vala"
	_tmp0_ = performance_helement_hash_map_new ();
#line 153 "gxml-performance.vala"
	self->priv->_elements = _tmp0_;
#line 13183 "gxml-performance.c"
}

static void
performance_hcp_element_finalize (GObject * obj)
{
	PerformanceHcpElement * self;
#line 152 "gxml-performance.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, PERFORMANCE_TYPE_HCP_ELEMENT, PerformanceHcpElement);
#line 153 "gxml-performance.vala"
	_g_object_unref0 (self->priv->_elements);
#line 152 "gxml-performance.vala"
	G_OBJECT_CLASS (performance_hcp_element_parent_class)->finalize (obj);
#line 13196 "gxml-performance.c"
}

static GType
performance_hcp_element_get_type (void)
{
	static volatile gsize performance_hcp_element_type_id__volatile = 0;
	if (g_once_init_enter (&performance_hcp_element_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (PerformanceHcpElementClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) performance_hcp_element_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (PerformanceHcpElement), 0, (GInstanceInitFunc) performance_hcp_element_instance_init, NULL };
		GType performance_hcp_element_type_id;
		performance_hcp_element_type_id = g_type_register_static (GXML_TYPE_SERIALIZABLE_OBJECT_MODEL, "PerformanceHcpElement", &g_define_type_info, 0);
		PerformanceHcpElement_private_offset = g_type_add_instance_private (performance_hcp_element_type_id, sizeof (PerformanceHcpElementPrivate));
		g_once_init_leave (&performance_hcp_element_type_id__volatile, performance_hcp_element_type_id);
	}
	return performance_hcp_element_type_id__volatile;
}

static void
_vala_performance_hcp_element_get_property (GObject * object,
                                            guint property_id,
                                            GValue * value,
                                            GParamSpec * pspec)
{
	PerformanceHcpElement * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PERFORMANCE_TYPE_HCP_ELEMENT, PerformanceHcpElement);
#line 152 "gxml-performance.vala"
	switch (property_id) {
#line 152 "gxml-performance.vala"
		case PERFORMANCE_HCP_ELEMENT_ELEMENTS_PROPERTY:
#line 152 "gxml-performance.vala"
		g_value_set_object (value, performance_hcp_element_get_elements (self));
#line 152 "gxml-performance.vala"
		break;
#line 13229 "gxml-performance.c"
		default:
#line 152 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 152 "gxml-performance.vala"
		break;
#line 13235 "gxml-performance.c"
	}
}

static void
_vala_performance_hcp_element_set_property (GObject * object,
                                            guint property_id,
                                            const GValue * value,
                                            GParamSpec * pspec)
{
	PerformanceHcpElement * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PERFORMANCE_TYPE_HCP_ELEMENT, PerformanceHcpElement);
#line 152 "gxml-performance.vala"
	switch (property_id) {
#line 152 "gxml-performance.vala"
		case PERFORMANCE_HCP_ELEMENT_ELEMENTS_PROPERTY:
#line 152 "gxml-performance.vala"
		performance_hcp_element_set_elements (self, g_value_get_object (value));
#line 152 "gxml-performance.vala"
		break;
#line 13255 "gxml-performance.c"
		default:
#line 152 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 152 "gxml-performance.vala"
		break;
#line 13261 "gxml-performance.c"
	}
}

static inline gpointer
performance_hcs_element_get_instance_private (PerformanceHcsElement* self)
{
	return G_STRUCT_MEMBER_P (self, PerformanceHcsElement_private_offset);
}

static gchar*
performance_hcs_element_real_node_name (GXmlSerializableObjectModel* base)
{
	PerformanceHcsElement * self;
	gchar* result = NULL;
	gchar* _tmp0_;
#line 159 "gxml-performance.vala"
	self = (PerformanceHcsElement*) base;
#line 159 "gxml-performance.vala"
	_tmp0_ = g_strdup ("HcsElement");
#line 159 "gxml-performance.vala"
	result = _tmp0_;
#line 159 "gxml-performance.vala"
	return result;
#line 13285 "gxml-performance.c"
}

static gchar*
performance_hcs_element_real_to_string (GXmlSerializableObjectModel* base)
{
	PerformanceHcsElement * self;
	gchar* result = NULL;
	gchar* _tmp0_;
#line 160 "gxml-performance.vala"
	self = (PerformanceHcsElement*) base;
#line 160 "gxml-performance.vala"
	_tmp0_ = g_strdup ("HcsElement");
#line 160 "gxml-performance.vala"
	result = _tmp0_;
#line 160 "gxml-performance.vala"
	return result;
#line 13302 "gxml-performance.c"
}

static PerformanceHcsElement*
performance_hcs_element_construct (GType object_type)
{
	PerformanceHcsElement * self = NULL;
#line 157 "gxml-performance.vala"
	self = (PerformanceHcsElement*) gxml_serializable_object_model_construct (object_type);
#line 157 "gxml-performance.vala"
	return self;
#line 13313 "gxml-performance.c"
}

static PerformanceHcsElement*
performance_hcs_element_new (void)
{
#line 157 "gxml-performance.vala"
	return performance_hcs_element_construct (PERFORMANCE_TYPE_HCS_ELEMENT);
#line 13321 "gxml-performance.c"
}

static PerformanceHElementHashMap*
performance_hcs_element_get_elements (PerformanceHcsElement* self)
{
	PerformanceHElementHashMap* result;
	PerformanceHElementHashMap* _tmp0_;
#line 158 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 158 "gxml-performance.vala"
	_tmp0_ = self->priv->_elements;
#line 158 "gxml-performance.vala"
	result = _tmp0_;
#line 158 "gxml-performance.vala"
	return result;
#line 13337 "gxml-performance.c"
}

static void
performance_hcs_element_set_elements (PerformanceHcsElement* self,
                                      PerformanceHElementHashMap* value)
{
#line 158 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 158 "gxml-performance.vala"
	if (performance_hcs_element_get_elements (self) != value) {
#line 13348 "gxml-performance.c"
		PerformanceHElementHashMap* _tmp0_;
#line 158 "gxml-performance.vala"
		_tmp0_ = _g_object_ref0 (value);
#line 158 "gxml-performance.vala"
		_g_object_unref0 (self->priv->_elements);
#line 158 "gxml-performance.vala"
		self->priv->_elements = _tmp0_;
#line 158 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, performance_hcs_element_properties[PERFORMANCE_HCS_ELEMENT_ELEMENTS_PROPERTY]);
#line 13358 "gxml-performance.c"
	}
}

static void
performance_hcs_element_class_init (PerformanceHcsElementClass * klass,
                                    gpointer klass_data)
{
#line 157 "gxml-performance.vala"
	performance_hcs_element_parent_class = g_type_class_peek_parent (klass);
#line 157 "gxml-performance.vala"
	g_type_class_adjust_private_offset (klass, &PerformanceHcsElement_private_offset);
#line 157 "gxml-performance.vala"
	((GXmlSerializableObjectModelClass *) klass)->node_name = (gchar* (*) (GXmlSerializableObjectModel*)) performance_hcs_element_real_node_name;
#line 157 "gxml-performance.vala"
	((GXmlSerializableObjectModelClass *) klass)->to_string = (gchar* (*) (GXmlSerializableObjectModel*)) performance_hcs_element_real_to_string;
#line 157 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_performance_hcs_element_get_property;
#line 157 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_performance_hcs_element_set_property;
#line 157 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->finalize = performance_hcs_element_finalize;
#line 157 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), PERFORMANCE_HCS_ELEMENT_ELEMENTS_PROPERTY, performance_hcs_element_properties[PERFORMANCE_HCS_ELEMENT_ELEMENTS_PROPERTY] = g_param_spec_object ("elements", "elements", "elements", PERFORMANCE_HELEMENT_TYPE_HASH_MAP, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 13382 "gxml-performance.c"
}

static void
performance_hcs_element_instance_init (PerformanceHcsElement * self,
                                       gpointer klass)
{
	PerformanceHElementHashMap* _tmp0_;
#line 157 "gxml-performance.vala"
	self->priv = performance_hcs_element_get_instance_private (self);
#line 158 "gxml-performance.vala"
	_tmp0_ = performance_helement_hash_map_new ();
#line 158 "gxml-performance.vala"
	self->priv->_elements = _tmp0_;
#line 13396 "gxml-performance.c"
}

static void
performance_hcs_element_finalize (GObject * obj)
{
	PerformanceHcsElement * self;
#line 157 "gxml-performance.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, PERFORMANCE_TYPE_HCS_ELEMENT, PerformanceHcsElement);
#line 158 "gxml-performance.vala"
	_g_object_unref0 (self->priv->_elements);
#line 157 "gxml-performance.vala"
	G_OBJECT_CLASS (performance_hcs_element_parent_class)->finalize (obj);
#line 13409 "gxml-performance.c"
}

static GType
performance_hcs_element_get_type (void)
{
	static volatile gsize performance_hcs_element_type_id__volatile = 0;
	if (g_once_init_enter (&performance_hcs_element_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (PerformanceHcsElementClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) performance_hcs_element_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (PerformanceHcsElement), 0, (GInstanceInitFunc) performance_hcs_element_instance_init, NULL };
		GType performance_hcs_element_type_id;
		performance_hcs_element_type_id = g_type_register_static (GXML_TYPE_SERIALIZABLE_OBJECT_MODEL, "PerformanceHcsElement", &g_define_type_info, 0);
		PerformanceHcsElement_private_offset = g_type_add_instance_private (performance_hcs_element_type_id, sizeof (PerformanceHcsElementPrivate));
		g_once_init_leave (&performance_hcs_element_type_id__volatile, performance_hcs_element_type_id);
	}
	return performance_hcs_element_type_id__volatile;
}

static void
_vala_performance_hcs_element_get_property (GObject * object,
                                            guint property_id,
                                            GValue * value,
                                            GParamSpec * pspec)
{
	PerformanceHcsElement * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PERFORMANCE_TYPE_HCS_ELEMENT, PerformanceHcsElement);
#line 157 "gxml-performance.vala"
	switch (property_id) {
#line 157 "gxml-performance.vala"
		case PERFORMANCE_HCS_ELEMENT_ELEMENTS_PROPERTY:
#line 157 "gxml-performance.vala"
		g_value_set_object (value, performance_hcs_element_get_elements (self));
#line 157 "gxml-performance.vala"
		break;
#line 13442 "gxml-performance.c"
		default:
#line 157 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 157 "gxml-performance.vala"
		break;
#line 13448 "gxml-performance.c"
	}
}

static void
_vala_performance_hcs_element_set_property (GObject * object,
                                            guint property_id,
                                            const GValue * value,
                                            GParamSpec * pspec)
{
	PerformanceHcsElement * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PERFORMANCE_TYPE_HCS_ELEMENT, PerformanceHcsElement);
#line 157 "gxml-performance.vala"
	switch (property_id) {
#line 157 "gxml-performance.vala"
		case PERFORMANCE_HCS_ELEMENT_ELEMENTS_PROPERTY:
#line 157 "gxml-performance.vala"
		performance_hcs_element_set_elements (self, g_value_get_object (value));
#line 157 "gxml-performance.vala"
		break;
#line 13468 "gxml-performance.c"
		default:
#line 157 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 157 "gxml-performance.vala"
		break;
#line 13474 "gxml-performance.c"
	}
}

static inline gpointer
performance_htop_element_get_instance_private (PerformanceHTopElement* self)
{
	return G_STRUCT_MEMBER_P (self, PerformanceHTopElement_private_offset);
}

static gchar*
performance_htop_element_real_node_name (GXmlSerializableObjectModel* base)
{
	PerformanceHTopElement * self;
	gchar* result = NULL;
	gchar* _tmp0_;
#line 167 "gxml-performance.vala"
	self = (PerformanceHTopElement*) base;
#line 167 "gxml-performance.vala"
	_tmp0_ = g_strdup ("HTopElement");
#line 167 "gxml-performance.vala"
	result = _tmp0_;
#line 167 "gxml-performance.vala"
	return result;
#line 13498 "gxml-performance.c"
}

static gchar*
performance_htop_element_real_to_string (GXmlSerializableObjectModel* base)
{
	PerformanceHTopElement * self;
	gchar* result = NULL;
	gchar* _tmp0_;
#line 168 "gxml-performance.vala"
	self = (PerformanceHTopElement*) base;
#line 168 "gxml-performance.vala"
	_tmp0_ = g_strdup ("HToplement");
#line 168 "gxml-performance.vala"
	result = _tmp0_;
#line 168 "gxml-performance.vala"
	return result;
#line 13515 "gxml-performance.c"
}

static gboolean
performance_htop_element_real_property_use_nick (GXmlSerializableObjectModel* base)
{
	PerformanceHTopElement * self;
	gboolean result = FALSE;
#line 169 "gxml-performance.vala"
	self = (PerformanceHTopElement*) base;
#line 169 "gxml-performance.vala"
	result = TRUE;
#line 169 "gxml-performance.vala"
	return result;
#line 13529 "gxml-performance.c"
}

static PerformanceHTopElement*
performance_htop_element_construct (GType object_type)
{
	PerformanceHTopElement * self = NULL;
#line 162 "gxml-performance.vala"
	self = (PerformanceHTopElement*) gxml_serializable_object_model_construct (object_type);
#line 162 "gxml-performance.vala"
	return self;
#line 13540 "gxml-performance.c"
}

static PerformanceHTopElement*
performance_htop_element_new (void)
{
#line 162 "gxml-performance.vala"
	return performance_htop_element_construct (PERFORMANCE_TYPE_HTOP_ELEMENT);
#line 13548 "gxml-performance.c"
}

static PerformanceHcpElement*
performance_htop_element_get_elements1 (PerformanceHTopElement* self)
{
	PerformanceHcpElement* result;
	PerformanceHcpElement* _tmp0_;
#line 164 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 164 "gxml-performance.vala"
	_tmp0_ = self->priv->_elements1;
#line 164 "gxml-performance.vala"
	result = _tmp0_;
#line 164 "gxml-performance.vala"
	return result;
#line 13564 "gxml-performance.c"
}

static void
performance_htop_element_set_elements1 (PerformanceHTopElement* self,
                                        PerformanceHcpElement* value)
{
#line 164 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 164 "gxml-performance.vala"
	if (performance_htop_element_get_elements1 (self) != value) {
#line 13575 "gxml-performance.c"
		PerformanceHcpElement* _tmp0_;
#line 164 "gxml-performance.vala"
		_tmp0_ = _g_object_ref0 (value);
#line 164 "gxml-performance.vala"
		_g_object_unref0 (self->priv->_elements1);
#line 164 "gxml-performance.vala"
		self->priv->_elements1 = _tmp0_;
#line 164 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, performance_htop_element_properties[PERFORMANCE_HTOP_ELEMENT_ELEMENTS1_PROPERTY]);
#line 13585 "gxml-performance.c"
	}
}

static PerformanceHcsElement*
performance_htop_element_get_elements2 (PerformanceHTopElement* self)
{
	PerformanceHcsElement* result;
	PerformanceHcsElement* _tmp0_;
#line 166 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 166 "gxml-performance.vala"
	_tmp0_ = self->priv->_elements2;
#line 166 "gxml-performance.vala"
	result = _tmp0_;
#line 166 "gxml-performance.vala"
	return result;
#line 13602 "gxml-performance.c"
}

static void
performance_htop_element_set_elements2 (PerformanceHTopElement* self,
                                        PerformanceHcsElement* value)
{
#line 166 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 166 "gxml-performance.vala"
	if (performance_htop_element_get_elements2 (self) != value) {
#line 13613 "gxml-performance.c"
		PerformanceHcsElement* _tmp0_;
#line 166 "gxml-performance.vala"
		_tmp0_ = _g_object_ref0 (value);
#line 166 "gxml-performance.vala"
		_g_object_unref0 (self->priv->_elements2);
#line 166 "gxml-performance.vala"
		self->priv->_elements2 = _tmp0_;
#line 166 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, performance_htop_element_properties[PERFORMANCE_HTOP_ELEMENT_ELEMENTS2_PROPERTY]);
#line 13623 "gxml-performance.c"
	}
}

static void
performance_htop_element_class_init (PerformanceHTopElementClass * klass,
                                     gpointer klass_data)
{
#line 162 "gxml-performance.vala"
	performance_htop_element_parent_class = g_type_class_peek_parent (klass);
#line 162 "gxml-performance.vala"
	g_type_class_adjust_private_offset (klass, &PerformanceHTopElement_private_offset);
#line 162 "gxml-performance.vala"
	((GXmlSerializableObjectModelClass *) klass)->node_name = (gchar* (*) (GXmlSerializableObjectModel*)) performance_htop_element_real_node_name;
#line 162 "gxml-performance.vala"
	((GXmlSerializableObjectModelClass *) klass)->to_string = (gchar* (*) (GXmlSerializableObjectModel*)) performance_htop_element_real_to_string;
#line 162 "gxml-performance.vala"
	((GXmlSerializableObjectModelClass *) klass)->property_use_nick = (gboolean (*) (GXmlSerializableObjectModel*)) performance_htop_element_real_property_use_nick;
#line 162 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_performance_htop_element_get_property;
#line 162 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_performance_htop_element_set_property;
#line 162 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->finalize = performance_htop_element_finalize;
#line 162 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), PERFORMANCE_HTOP_ELEMENT_ELEMENTS1_PROPERTY, performance_htop_element_properties[PERFORMANCE_HTOP_ELEMENT_ELEMENTS1_PROPERTY] = g_param_spec_object ("elements1", "HcpElement", "elements1", PERFORMANCE_TYPE_HCP_ELEMENT, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 162 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), PERFORMANCE_HTOP_ELEMENT_ELEMENTS2_PROPERTY, performance_htop_element_properties[PERFORMANCE_HTOP_ELEMENT_ELEMENTS2_PROPERTY] = g_param_spec_object ("elements2", "HcsElement", "elements2", PERFORMANCE_TYPE_HCS_ELEMENT, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 13651 "gxml-performance.c"
}

static void
performance_htop_element_instance_init (PerformanceHTopElement * self,
                                        gpointer klass)
{
	PerformanceHcpElement* _tmp0_;
	PerformanceHcsElement* _tmp1_;
#line 162 "gxml-performance.vala"
	self->priv = performance_htop_element_get_instance_private (self);
#line 164 "gxml-performance.vala"
	_tmp0_ = performance_hcp_element_new ();
#line 164 "gxml-performance.vala"
	self->priv->_elements1 = _tmp0_;
#line 166 "gxml-performance.vala"
	_tmp1_ = performance_hcs_element_new ();
#line 166 "gxml-performance.vala"
	self->priv->_elements2 = _tmp1_;
#line 13670 "gxml-performance.c"
}

static void
performance_htop_element_finalize (GObject * obj)
{
	PerformanceHTopElement * self;
#line 162 "gxml-performance.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, PERFORMANCE_TYPE_HTOP_ELEMENT, PerformanceHTopElement);
#line 164 "gxml-performance.vala"
	_g_object_unref0 (self->priv->_elements1);
#line 166 "gxml-performance.vala"
	_g_object_unref0 (self->priv->_elements2);
#line 162 "gxml-performance.vala"
	G_OBJECT_CLASS (performance_htop_element_parent_class)->finalize (obj);
#line 13685 "gxml-performance.c"
}

static GType
performance_htop_element_get_type (void)
{
	static volatile gsize performance_htop_element_type_id__volatile = 0;
	if (g_once_init_enter (&performance_htop_element_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (PerformanceHTopElementClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) performance_htop_element_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (PerformanceHTopElement), 0, (GInstanceInitFunc) performance_htop_element_instance_init, NULL };
		GType performance_htop_element_type_id;
		performance_htop_element_type_id = g_type_register_static (GXML_TYPE_SERIALIZABLE_OBJECT_MODEL, "PerformanceHTopElement", &g_define_type_info, 0);
		PerformanceHTopElement_private_offset = g_type_add_instance_private (performance_htop_element_type_id, sizeof (PerformanceHTopElementPrivate));
		g_once_init_leave (&performance_htop_element_type_id__volatile, performance_htop_element_type_id);
	}
	return performance_htop_element_type_id__volatile;
}

static void
_vala_performance_htop_element_get_property (GObject * object,
                                             guint property_id,
                                             GValue * value,
                                             GParamSpec * pspec)
{
	PerformanceHTopElement * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PERFORMANCE_TYPE_HTOP_ELEMENT, PerformanceHTopElement);
#line 162 "gxml-performance.vala"
	switch (property_id) {
#line 162 "gxml-performance.vala"
		case PERFORMANCE_HTOP_ELEMENT_ELEMENTS1_PROPERTY:
#line 162 "gxml-performance.vala"
		g_value_set_object (value, performance_htop_element_get_elements1 (self));
#line 162 "gxml-performance.vala"
		break;
#line 162 "gxml-performance.vala"
		case PERFORMANCE_HTOP_ELEMENT_ELEMENTS2_PROPERTY:
#line 162 "gxml-performance.vala"
		g_value_set_object (value, performance_htop_element_get_elements2 (self));
#line 162 "gxml-performance.vala"
		break;
#line 13724 "gxml-performance.c"
		default:
#line 162 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 162 "gxml-performance.vala"
		break;
#line 13730 "gxml-performance.c"
	}
}

static void
_vala_performance_htop_element_set_property (GObject * object,
                                             guint property_id,
                                             const GValue * value,
                                             GParamSpec * pspec)
{
	PerformanceHTopElement * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PERFORMANCE_TYPE_HTOP_ELEMENT, PerformanceHTopElement);
#line 162 "gxml-performance.vala"
	switch (property_id) {
#line 162 "gxml-performance.vala"
		case PERFORMANCE_HTOP_ELEMENT_ELEMENTS1_PROPERTY:
#line 162 "gxml-performance.vala"
		performance_htop_element_set_elements1 (self, g_value_get_object (value));
#line 162 "gxml-performance.vala"
		break;
#line 162 "gxml-performance.vala"
		case PERFORMANCE_HTOP_ELEMENT_ELEMENTS2_PROPERTY:
#line 162 "gxml-performance.vala"
		performance_htop_element_set_elements2 (self, g_value_get_object (value));
#line 162 "gxml-performance.vala"
		break;
#line 13756 "gxml-performance.c"
		default:
#line 162 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 162 "gxml-performance.vala"
		break;
#line 13762 "gxml-performance.c"
	}
}

static inline gpointer
performance_ht_element_get_instance_private (PerformanceHTElement* self)
{
	return G_STRUCT_MEMBER_P (self, PerformanceHTElement_private_offset);
}

static gchar*
performance_ht_element_real_get_map_key (GXmlSerializableMapKey* base)
{
	PerformanceHTElement * self;
	gchar* result = NULL;
	const gchar* _tmp0_;
	gchar* _tmp1_;
#line 175 "gxml-performance.vala"
	self = (PerformanceHTElement*) base;
#line 175 "gxml-performance.vala"
	_tmp0_ = self->priv->_name;
#line 175 "gxml-performance.vala"
	_tmp1_ = g_strdup (_tmp0_);
#line 175 "gxml-performance.vala"
	result = _tmp1_;
#line 175 "gxml-performance.vala"
	return result;
#line 13789 "gxml-performance.c"
}

static gchar*
performance_ht_element_real_node_name (GXmlSerializableObjectModel* base)
{
	PerformanceHTElement * self;
	gchar* result = NULL;
	gchar* _tmp0_;
#line 176 "gxml-performance.vala"
	self = (PerformanceHTElement*) base;
#line 176 "gxml-performance.vala"
	_tmp0_ = g_strdup ("HElement");
#line 176 "gxml-performance.vala"
	result = _tmp0_;
#line 176 "gxml-performance.vala"
	return result;
#line 13806 "gxml-performance.c"
}

static gchar*
performance_ht_element_real_to_string (GXmlSerializableObjectModel* base)
{
	PerformanceHTElement * self;
	gchar* result = NULL;
	gchar* _tmp0_;
#line 177 "gxml-performance.vala"
	self = (PerformanceHTElement*) base;
#line 177 "gxml-performance.vala"
	_tmp0_ = g_strdup ("HElement");
#line 177 "gxml-performance.vala"
	result = _tmp0_;
#line 177 "gxml-performance.vala"
	return result;
#line 13823 "gxml-performance.c"
}

static PerformanceHTElement*
performance_ht_element_construct (GType object_type)
{
	PerformanceHTElement * self = NULL;
#line 172 "gxml-performance.vala"
	self = (PerformanceHTElement*) gxml_serializable_object_model_construct (object_type);
#line 172 "gxml-performance.vala"
	return self;
#line 13834 "gxml-performance.c"
}

static PerformanceHTElement*
performance_ht_element_new (void)
{
#line 172 "gxml-performance.vala"
	return performance_ht_element_construct (PERFORMANCE_TYPE_HT_ELEMENT);
#line 13842 "gxml-performance.c"
}

static const gchar*
performance_ht_element_get_name (PerformanceHTElement* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 174 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 174 "gxml-performance.vala"
	_tmp0_ = self->priv->_name;
#line 174 "gxml-performance.vala"
	result = _tmp0_;
#line 174 "gxml-performance.vala"
	return result;
#line 13858 "gxml-performance.c"
}

static void
performance_ht_element_set_name (PerformanceHTElement* self,
                                 const gchar* value)
{
#line 174 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 174 "gxml-performance.vala"
	if (g_strcmp0 (value, performance_ht_element_get_name (self)) != 0) {
#line 13869 "gxml-performance.c"
		gchar* _tmp0_;
#line 174 "gxml-performance.vala"
		_tmp0_ = g_strdup (value);
#line 174 "gxml-performance.vala"
		_g_free0 (self->priv->_name);
#line 174 "gxml-performance.vala"
		self->priv->_name = _tmp0_;
#line 174 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, performance_ht_element_properties[PERFORMANCE_HT_ELEMENT_NAME_PROPERTY]);
#line 13879 "gxml-performance.c"
	}
}

static inline gpointer
performance_ht_element_tree_map_get_instance_private (PerformanceHTElementTreeMap* self)
{
	return G_STRUCT_MEMBER_P (self, PerformanceHTElementTreeMap_private_offset);
}

static gboolean
performance_ht_element_tree_map_real_deserialize_proceed (GXmlSerializableTreeMap* base)
{
	PerformanceHTElementTreeMap * self;
	gboolean result = FALSE;
	gboolean _tmp0_;
#line 180 "gxml-performance.vala"
	self = (PerformanceHTElementTreeMap*) base;
#line 180 "gxml-performance.vala"
	_tmp0_ = self->priv->_enable_deserialize;
#line 180 "gxml-performance.vala"
	result = _tmp0_;
#line 180 "gxml-performance.vala"
	return result;
#line 13903 "gxml-performance.c"
}

static PerformanceHTElementTreeMap*
performance_ht_element_tree_map_construct (GType object_type)
{
	PerformanceHTElementTreeMap * self = NULL;
#line 178 "gxml-performance.vala"
	self = (PerformanceHTElementTreeMap*) gxml_serializable_tree_map_construct (object_type, G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, (GDestroyNotify) g_free, PERFORMANCE_TYPE_HT_ELEMENT, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref);
#line 178 "gxml-performance.vala"
	return self;
#line 13914 "gxml-performance.c"
}

static PerformanceHTElementTreeMap*
performance_ht_element_tree_map_new (void)
{
#line 178 "gxml-performance.vala"
	return performance_ht_element_tree_map_construct (PERFORMANCE_HT_ELEMENT_TYPE_TREE_MAP);
#line 13922 "gxml-performance.c"
}

static gboolean
performance_ht_element_tree_map_get_enable_deserialize (PerformanceHTElementTreeMap* self)
{
	gboolean result;
#line 179 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 179 "gxml-performance.vala"
	result = self->priv->_enable_deserialize;
#line 179 "gxml-performance.vala"
	return result;
#line 13935 "gxml-performance.c"
}

static void
performance_ht_element_tree_map_set_enable_deserialize (PerformanceHTElementTreeMap* self,
                                                        gboolean value)
{
#line 179 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 179 "gxml-performance.vala"
	if (performance_ht_element_tree_map_get_enable_deserialize (self) != value) {
#line 179 "gxml-performance.vala"
		self->priv->_enable_deserialize = value;
#line 179 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, performance_ht_element_tree_map_properties[PERFORMANCE_HT_ELEMENT_TREE_MAP_ENABLE_DESERIALIZE_PROPERTY]);
#line 13950 "gxml-performance.c"
	}
}

static void
performance_ht_element_tree_map_class_init (PerformanceHTElementTreeMapClass * klass,
                                            gpointer klass_data)
{
#line 178 "gxml-performance.vala"
	performance_ht_element_tree_map_parent_class = g_type_class_peek_parent (klass);
#line 178 "gxml-performance.vala"
	g_type_class_adjust_private_offset (klass, &PerformanceHTElementTreeMap_private_offset);
#line 178 "gxml-performance.vala"
	((GXmlSerializableTreeMapClass *) klass)->deserialize_proceed = (gboolean (*) (GXmlSerializableTreeMap*)) performance_ht_element_tree_map_real_deserialize_proceed;
#line 178 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_performance_ht_element_tree_map_get_property;
#line 178 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_performance_ht_element_tree_map_set_property;
#line 178 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->finalize = performance_ht_element_tree_map_finalize;
#line 178 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), PERFORMANCE_HT_ELEMENT_TREE_MAP_ENABLE_DESERIALIZE_PROPERTY, performance_ht_element_tree_map_properties[PERFORMANCE_HT_ELEMENT_TREE_MAP_ENABLE_DESERIALIZE_PROPERTY] = g_param_spec_boolean ("enable-deserialize", "enable-deserialize", "enable-deserialize", FALSE, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 13972 "gxml-performance.c"
}

static void
performance_ht_element_tree_map_instance_init (PerformanceHTElementTreeMap * self,
                                               gpointer klass)
{
#line 178 "gxml-performance.vala"
	self->priv = performance_ht_element_tree_map_get_instance_private (self);
#line 179 "gxml-performance.vala"
	self->priv->_enable_deserialize = FALSE;
#line 13983 "gxml-performance.c"
}

static void
performance_ht_element_tree_map_finalize (GObject * obj)
{
	PerformanceHTElementTreeMap * self;
#line 178 "gxml-performance.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, PERFORMANCE_HT_ELEMENT_TYPE_TREE_MAP, PerformanceHTElementTreeMap);
#line 178 "gxml-performance.vala"
	G_OBJECT_CLASS (performance_ht_element_tree_map_parent_class)->finalize (obj);
#line 13994 "gxml-performance.c"
}

GType
performance_ht_element_tree_map_get_type (void)
{
	static volatile gsize performance_ht_element_tree_map_type_id__volatile = 0;
	if (g_once_init_enter (&performance_ht_element_tree_map_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (PerformanceHTElementTreeMapClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) performance_ht_element_tree_map_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (PerformanceHTElementTreeMap), 0, (GInstanceInitFunc) performance_ht_element_tree_map_instance_init, NULL };
		GType performance_ht_element_tree_map_type_id;
		performance_ht_element_tree_map_type_id = g_type_register_static (GXML_TYPE_SERIALIZABLE_TREE_MAP, "PerformanceHTElementTreeMap", &g_define_type_info, 0);
		PerformanceHTElementTreeMap_private_offset = g_type_add_instance_private (performance_ht_element_tree_map_type_id, sizeof (PerformanceHTElementTreeMapPrivate));
		g_once_init_leave (&performance_ht_element_tree_map_type_id__volatile, performance_ht_element_tree_map_type_id);
	}
	return performance_ht_element_tree_map_type_id__volatile;
}

static void
_vala_performance_ht_element_tree_map_get_property (GObject * object,
                                                    guint property_id,
                                                    GValue * value,
                                                    GParamSpec * pspec)
{
	PerformanceHTElementTreeMap * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PERFORMANCE_HT_ELEMENT_TYPE_TREE_MAP, PerformanceHTElementTreeMap);
#line 178 "gxml-performance.vala"
	switch (property_id) {
#line 178 "gxml-performance.vala"
		case PERFORMANCE_HT_ELEMENT_TREE_MAP_ENABLE_DESERIALIZE_PROPERTY:
#line 178 "gxml-performance.vala"
		g_value_set_boolean (value, performance_ht_element_tree_map_get_enable_deserialize (self));
#line 178 "gxml-performance.vala"
		break;
#line 14027 "gxml-performance.c"
		default:
#line 178 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 178 "gxml-performance.vala"
		break;
#line 14033 "gxml-performance.c"
	}
}

static void
_vala_performance_ht_element_tree_map_set_property (GObject * object,
                                                    guint property_id,
                                                    const GValue * value,
                                                    GParamSpec * pspec)
{
	PerformanceHTElementTreeMap * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PERFORMANCE_HT_ELEMENT_TYPE_TREE_MAP, PerformanceHTElementTreeMap);
#line 178 "gxml-performance.vala"
	switch (property_id) {
#line 178 "gxml-performance.vala"
		case PERFORMANCE_HT_ELEMENT_TREE_MAP_ENABLE_DESERIALIZE_PROPERTY:
#line 178 "gxml-performance.vala"
		performance_ht_element_tree_map_set_enable_deserialize (self, g_value_get_boolean (value));
#line 178 "gxml-performance.vala"
		break;
#line 14053 "gxml-performance.c"
		default:
#line 178 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 178 "gxml-performance.vala"
		break;
#line 14059 "gxml-performance.c"
	}
}

static void
performance_ht_element_class_init (PerformanceHTElementClass * klass,
                                   gpointer klass_data)
{
#line 172 "gxml-performance.vala"
	performance_ht_element_parent_class = g_type_class_peek_parent (klass);
#line 172 "gxml-performance.vala"
	g_type_class_adjust_private_offset (klass, &PerformanceHTElement_private_offset);
#line 172 "gxml-performance.vala"
	((GXmlSerializableObjectModelClass *) klass)->node_name = (gchar* (*) (GXmlSerializableObjectModel*)) performance_ht_element_real_node_name;
#line 172 "gxml-performance.vala"
	((GXmlSerializableObjectModelClass *) klass)->to_string = (gchar* (*) (GXmlSerializableObjectModel*)) performance_ht_element_real_to_string;
#line 172 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_performance_ht_element_get_property;
#line 172 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_performance_ht_element_set_property;
#line 172 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->finalize = performance_ht_element_finalize;
#line 172 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), PERFORMANCE_HT_ELEMENT_NAME_PROPERTY, performance_ht_element_properties[PERFORMANCE_HT_ELEMENT_NAME_PROPERTY] = g_param_spec_string ("name", "name", "name", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 14083 "gxml-performance.c"
}

static void
performance_ht_element_gxml_serializable_map_key_interface_init (GXmlSerializableMapKeyIface * iface,
                                                                 gpointer iface_data)
{
#line 172 "gxml-performance.vala"
	performance_ht_element_gxml_serializable_map_key_parent_iface = g_type_interface_peek_parent (iface);
#line 172 "gxml-performance.vala"
	iface->get_map_key = (gpointer (*) (GXmlSerializableMapKey*)) performance_ht_element_real_get_map_key;
#line 14094 "gxml-performance.c"
}

static void
performance_ht_element_instance_init (PerformanceHTElement * self,
                                      gpointer klass)
{
#line 172 "gxml-performance.vala"
	self->priv = performance_ht_element_get_instance_private (self);
#line 14103 "gxml-performance.c"
}

static void
performance_ht_element_finalize (GObject * obj)
{
	PerformanceHTElement * self;
#line 172 "gxml-performance.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, PERFORMANCE_TYPE_HT_ELEMENT, PerformanceHTElement);
#line 174 "gxml-performance.vala"
	_g_free0 (self->priv->_name);
#line 172 "gxml-performance.vala"
	G_OBJECT_CLASS (performance_ht_element_parent_class)->finalize (obj);
#line 14116 "gxml-performance.c"
}

static GType
performance_ht_element_get_type (void)
{
	static volatile gsize performance_ht_element_type_id__volatile = 0;
	if (g_once_init_enter (&performance_ht_element_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (PerformanceHTElementClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) performance_ht_element_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (PerformanceHTElement), 0, (GInstanceInitFunc) performance_ht_element_instance_init, NULL };
		static const GInterfaceInfo gxml_serializable_map_key_info = { (GInterfaceInitFunc) performance_ht_element_gxml_serializable_map_key_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
		GType performance_ht_element_type_id;
		performance_ht_element_type_id = g_type_register_static (GXML_TYPE_SERIALIZABLE_OBJECT_MODEL, "PerformanceHTElement", &g_define_type_info, 0);
		g_type_add_interface_static (performance_ht_element_type_id, GXML_TYPE_SERIALIZABLE_MAP_KEY, &gxml_serializable_map_key_info);
		PerformanceHTElement_private_offset = g_type_add_instance_private (performance_ht_element_type_id, sizeof (PerformanceHTElementPrivate));
		g_once_init_leave (&performance_ht_element_type_id__volatile, performance_ht_element_type_id);
	}
	return performance_ht_element_type_id__volatile;
}

static void
_vala_performance_ht_element_get_property (GObject * object,
                                           guint property_id,
                                           GValue * value,
                                           GParamSpec * pspec)
{
	PerformanceHTElement * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PERFORMANCE_TYPE_HT_ELEMENT, PerformanceHTElement);
#line 172 "gxml-performance.vala"
	switch (property_id) {
#line 172 "gxml-performance.vala"
		case PERFORMANCE_HT_ELEMENT_NAME_PROPERTY:
#line 172 "gxml-performance.vala"
		g_value_set_string (value, performance_ht_element_get_name (self));
#line 172 "gxml-performance.vala"
		break;
#line 14151 "gxml-performance.c"
		default:
#line 172 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 172 "gxml-performance.vala"
		break;
#line 14157 "gxml-performance.c"
	}
}

static void
_vala_performance_ht_element_set_property (GObject * object,
                                           guint property_id,
                                           const GValue * value,
                                           GParamSpec * pspec)
{
	PerformanceHTElement * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PERFORMANCE_TYPE_HT_ELEMENT, PerformanceHTElement);
#line 172 "gxml-performance.vala"
	switch (property_id) {
#line 172 "gxml-performance.vala"
		case PERFORMANCE_HT_ELEMENT_NAME_PROPERTY:
#line 172 "gxml-performance.vala"
		performance_ht_element_set_name (self, g_value_get_string (value));
#line 172 "gxml-performance.vala"
		break;
#line 14177 "gxml-performance.c"
		default:
#line 172 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 172 "gxml-performance.vala"
		break;
#line 14183 "gxml-performance.c"
	}
}

static inline gpointer
performance_htc_element_get_instance_private (PerformanceHTCElement* self)
{
	return G_STRUCT_MEMBER_P (self, PerformanceHTCElement_private_offset);
}

static gchar*
performance_htc_element_real_node_name (GXmlSerializableObjectModel* base)
{
	PerformanceHTCElement * self;
	gchar* result = NULL;
	gchar* _tmp0_;
#line 186 "gxml-performance.vala"
	self = (PerformanceHTCElement*) base;
#line 186 "gxml-performance.vala"
	_tmp0_ = g_strdup ("HCElement");
#line 186 "gxml-performance.vala"
	result = _tmp0_;
#line 186 "gxml-performance.vala"
	return result;
#line 14207 "gxml-performance.c"
}

static gchar*
performance_htc_element_real_to_string (GXmlSerializableObjectModel* base)
{
	PerformanceHTCElement * self;
	gchar* result = NULL;
	gchar* _tmp0_;
#line 187 "gxml-performance.vala"
	self = (PerformanceHTCElement*) base;
#line 187 "gxml-performance.vala"
	_tmp0_ = g_strdup ("HCElement");
#line 187 "gxml-performance.vala"
	result = _tmp0_;
#line 187 "gxml-performance.vala"
	return result;
#line 14224 "gxml-performance.c"
}

static PerformanceHTCElement*
performance_htc_element_construct (GType object_type)
{
	PerformanceHTCElement * self = NULL;
#line 183 "gxml-performance.vala"
	self = (PerformanceHTCElement*) gxml_serializable_object_model_construct (object_type);
#line 183 "gxml-performance.vala"
	return self;
#line 14235 "gxml-performance.c"
}

static PerformanceHTCElement*
performance_htc_element_new (void)
{
#line 183 "gxml-performance.vala"
	return performance_htc_element_construct (PERFORMANCE_TYPE_HTC_ELEMENT);
#line 14243 "gxml-performance.c"
}

static PerformanceHTElementTreeMap*
performance_htc_element_get_elements1 (PerformanceHTCElement* self)
{
	PerformanceHTElementTreeMap* result;
	PerformanceHTElementTreeMap* _tmp0_;
#line 184 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 184 "gxml-performance.vala"
	_tmp0_ = self->priv->_elements1;
#line 184 "gxml-performance.vala"
	result = _tmp0_;
#line 184 "gxml-performance.vala"
	return result;
#line 14259 "gxml-performance.c"
}

static void
performance_htc_element_set_elements1 (PerformanceHTCElement* self,
                                       PerformanceHTElementTreeMap* value)
{
#line 184 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 184 "gxml-performance.vala"
	if (performance_htc_element_get_elements1 (self) != value) {
#line 14270 "gxml-performance.c"
		PerformanceHTElementTreeMap* _tmp0_;
#line 184 "gxml-performance.vala"
		_tmp0_ = _g_object_ref0 (value);
#line 184 "gxml-performance.vala"
		_g_object_unref0 (self->priv->_elements1);
#line 184 "gxml-performance.vala"
		self->priv->_elements1 = _tmp0_;
#line 184 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, performance_htc_element_properties[PERFORMANCE_HTC_ELEMENT_ELEMENTS1_PROPERTY]);
#line 14280 "gxml-performance.c"
	}
}

static PerformanceHTElementTreeMap*
performance_htc_element_get_elements2 (PerformanceHTCElement* self)
{
	PerformanceHTElementTreeMap* result;
	PerformanceHTElementTreeMap* _tmp0_;
#line 185 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 185 "gxml-performance.vala"
	_tmp0_ = self->priv->_elements2;
#line 185 "gxml-performance.vala"
	result = _tmp0_;
#line 185 "gxml-performance.vala"
	return result;
#line 14297 "gxml-performance.c"
}

static void
performance_htc_element_set_elements2 (PerformanceHTCElement* self,
                                       PerformanceHTElementTreeMap* value)
{
#line 185 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 185 "gxml-performance.vala"
	if (performance_htc_element_get_elements2 (self) != value) {
#line 14308 "gxml-performance.c"
		PerformanceHTElementTreeMap* _tmp0_;
#line 185 "gxml-performance.vala"
		_tmp0_ = _g_object_ref0 (value);
#line 185 "gxml-performance.vala"
		_g_object_unref0 (self->priv->_elements2);
#line 185 "gxml-performance.vala"
		self->priv->_elements2 = _tmp0_;
#line 185 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, performance_htc_element_properties[PERFORMANCE_HTC_ELEMENT_ELEMENTS2_PROPERTY]);
#line 14318 "gxml-performance.c"
	}
}

static void
performance_htc_element_class_init (PerformanceHTCElementClass * klass,
                                    gpointer klass_data)
{
#line 183 "gxml-performance.vala"
	performance_htc_element_parent_class = g_type_class_peek_parent (klass);
#line 183 "gxml-performance.vala"
	g_type_class_adjust_private_offset (klass, &PerformanceHTCElement_private_offset);
#line 183 "gxml-performance.vala"
	((GXmlSerializableObjectModelClass *) klass)->node_name = (gchar* (*) (GXmlSerializableObjectModel*)) performance_htc_element_real_node_name;
#line 183 "gxml-performance.vala"
	((GXmlSerializableObjectModelClass *) klass)->to_string = (gchar* (*) (GXmlSerializableObjectModel*)) performance_htc_element_real_to_string;
#line 183 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_performance_htc_element_get_property;
#line 183 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_performance_htc_element_set_property;
#line 183 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->finalize = performance_htc_element_finalize;
#line 183 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), PERFORMANCE_HTC_ELEMENT_ELEMENTS1_PROPERTY, performance_htc_element_properties[PERFORMANCE_HTC_ELEMENT_ELEMENTS1_PROPERTY] = g_param_spec_object ("elements1", "elements1", "elements1", PERFORMANCE_HT_ELEMENT_TYPE_TREE_MAP, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 183 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), PERFORMANCE_HTC_ELEMENT_ELEMENTS2_PROPERTY, performance_htc_element_properties[PERFORMANCE_HTC_ELEMENT_ELEMENTS2_PROPERTY] = g_param_spec_object ("elements2", "elements2", "elements2", PERFORMANCE_HT_ELEMENT_TYPE_TREE_MAP, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 14344 "gxml-performance.c"
}

static void
performance_htc_element_instance_init (PerformanceHTCElement * self,
                                       gpointer klass)
{
	PerformanceHTElementTreeMap* _tmp0_;
	PerformanceHTElementTreeMap* _tmp1_;
#line 183 "gxml-performance.vala"
	self->priv = performance_htc_element_get_instance_private (self);
#line 184 "gxml-performance.vala"
	_tmp0_ = performance_ht_element_tree_map_new ();
#line 184 "gxml-performance.vala"
	self->priv->_elements1 = _tmp0_;
#line 185 "gxml-performance.vala"
	_tmp1_ = performance_ht_element_tree_map_new ();
#line 185 "gxml-performance.vala"
	self->priv->_elements2 = _tmp1_;
#line 14363 "gxml-performance.c"
}

static void
performance_htc_element_finalize (GObject * obj)
{
	PerformanceHTCElement * self;
#line 183 "gxml-performance.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, PERFORMANCE_TYPE_HTC_ELEMENT, PerformanceHTCElement);
#line 184 "gxml-performance.vala"
	_g_object_unref0 (self->priv->_elements1);
#line 185 "gxml-performance.vala"
	_g_object_unref0 (self->priv->_elements2);
#line 183 "gxml-performance.vala"
	G_OBJECT_CLASS (performance_htc_element_parent_class)->finalize (obj);
#line 14378 "gxml-performance.c"
}

static GType
performance_htc_element_get_type (void)
{
	static volatile gsize performance_htc_element_type_id__volatile = 0;
	if (g_once_init_enter (&performance_htc_element_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (PerformanceHTCElementClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) performance_htc_element_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (PerformanceHTCElement), 0, (GInstanceInitFunc) performance_htc_element_instance_init, NULL };
		GType performance_htc_element_type_id;
		performance_htc_element_type_id = g_type_register_static (GXML_TYPE_SERIALIZABLE_OBJECT_MODEL, "PerformanceHTCElement", &g_define_type_info, 0);
		PerformanceHTCElement_private_offset = g_type_add_instance_private (performance_htc_element_type_id, sizeof (PerformanceHTCElementPrivate));
		g_once_init_leave (&performance_htc_element_type_id__volatile, performance_htc_element_type_id);
	}
	return performance_htc_element_type_id__volatile;
}

static void
_vala_performance_htc_element_get_property (GObject * object,
                                            guint property_id,
                                            GValue * value,
                                            GParamSpec * pspec)
{
	PerformanceHTCElement * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PERFORMANCE_TYPE_HTC_ELEMENT, PerformanceHTCElement);
#line 183 "gxml-performance.vala"
	switch (property_id) {
#line 183 "gxml-performance.vala"
		case PERFORMANCE_HTC_ELEMENT_ELEMENTS1_PROPERTY:
#line 183 "gxml-performance.vala"
		g_value_set_object (value, performance_htc_element_get_elements1 (self));
#line 183 "gxml-performance.vala"
		break;
#line 183 "gxml-performance.vala"
		case PERFORMANCE_HTC_ELEMENT_ELEMENTS2_PROPERTY:
#line 183 "gxml-performance.vala"
		g_value_set_object (value, performance_htc_element_get_elements2 (self));
#line 183 "gxml-performance.vala"
		break;
#line 14417 "gxml-performance.c"
		default:
#line 183 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 183 "gxml-performance.vala"
		break;
#line 14423 "gxml-performance.c"
	}
}

static void
_vala_performance_htc_element_set_property (GObject * object,
                                            guint property_id,
                                            const GValue * value,
                                            GParamSpec * pspec)
{
	PerformanceHTCElement * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PERFORMANCE_TYPE_HTC_ELEMENT, PerformanceHTCElement);
#line 183 "gxml-performance.vala"
	switch (property_id) {
#line 183 "gxml-performance.vala"
		case PERFORMANCE_HTC_ELEMENT_ELEMENTS1_PROPERTY:
#line 183 "gxml-performance.vala"
		performance_htc_element_set_elements1 (self, g_value_get_object (value));
#line 183 "gxml-performance.vala"
		break;
#line 183 "gxml-performance.vala"
		case PERFORMANCE_HTC_ELEMENT_ELEMENTS2_PROPERTY:
#line 183 "gxml-performance.vala"
		performance_htc_element_set_elements2 (self, g_value_get_object (value));
#line 183 "gxml-performance.vala"
		break;
#line 14449 "gxml-performance.c"
		default:
#line 183 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 183 "gxml-performance.vala"
		break;
#line 14455 "gxml-performance.c"
	}
}

static inline gpointer
performance_dh_element_get_instance_private (PerformanceDHElement* self)
{
	return G_STRUCT_MEMBER_P (self, PerformanceDHElement_private_offset);
}

static gchar*
performance_dh_element_real_get_map_primary_key (GXmlSerializableMapDualKey* base)
{
	PerformanceDHElement * self;
	gchar* result = NULL;
	const gchar* _tmp0_;
	gchar* _tmp1_;
#line 194 "gxml-performance.vala"
	self = (PerformanceDHElement*) base;
#line 194 "gxml-performance.vala"
	_tmp0_ = self->priv->_key;
#line 194 "gxml-performance.vala"
	_tmp1_ = g_strdup (_tmp0_);
#line 194 "gxml-performance.vala"
	result = _tmp1_;
#line 194 "gxml-performance.vala"
	return result;
#line 14482 "gxml-performance.c"
}

static gchar*
performance_dh_element_real_get_map_secondary_key (GXmlSerializableMapDualKey* base)
{
	PerformanceDHElement * self;
	gchar* result = NULL;
	const gchar* _tmp0_;
	gchar* _tmp1_;
#line 195 "gxml-performance.vala"
	self = (PerformanceDHElement*) base;
#line 195 "gxml-performance.vala"
	_tmp0_ = self->priv->_name;
#line 195 "gxml-performance.vala"
	_tmp1_ = g_strdup (_tmp0_);
#line 195 "gxml-performance.vala"
	result = _tmp1_;
#line 195 "gxml-performance.vala"
	return result;
#line 14502 "gxml-performance.c"
}

static gchar*
performance_dh_element_real_node_name (GXmlSerializableObjectModel* base)
{
	PerformanceDHElement * self;
	gchar* result = NULL;
	gchar* _tmp0_;
#line 196 "gxml-performance.vala"
	self = (PerformanceDHElement*) base;
#line 196 "gxml-performance.vala"
	_tmp0_ = g_strdup ("DHElement");
#line 196 "gxml-performance.vala"
	result = _tmp0_;
#line 196 "gxml-performance.vala"
	return result;
#line 14519 "gxml-performance.c"
}

static gchar*
performance_dh_element_real_to_string (GXmlSerializableObjectModel* base)
{
	PerformanceDHElement * self;
	gchar* result = NULL;
	gchar* _tmp0_;
#line 197 "gxml-performance.vala"
	self = (PerformanceDHElement*) base;
#line 197 "gxml-performance.vala"
	_tmp0_ = g_strdup ("DHElement");
#line 197 "gxml-performance.vala"
	result = _tmp0_;
#line 197 "gxml-performance.vala"
	return result;
#line 14536 "gxml-performance.c"
}

static PerformanceDHElement*
performance_dh_element_construct (GType object_type)
{
	PerformanceDHElement * self = NULL;
#line 190 "gxml-performance.vala"
	self = (PerformanceDHElement*) gxml_serializable_object_model_construct (object_type);
#line 190 "gxml-performance.vala"
	return self;
#line 14547 "gxml-performance.c"
}

static PerformanceDHElement*
performance_dh_element_new (void)
{
#line 190 "gxml-performance.vala"
	return performance_dh_element_construct (PERFORMANCE_TYPE_DH_ELEMENT);
#line 14555 "gxml-performance.c"
}

static const gchar*
performance_dh_element_get_name (PerformanceDHElement* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 192 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 192 "gxml-performance.vala"
	_tmp0_ = self->priv->_name;
#line 192 "gxml-performance.vala"
	result = _tmp0_;
#line 192 "gxml-performance.vala"
	return result;
#line 14571 "gxml-performance.c"
}

static void
performance_dh_element_set_name (PerformanceDHElement* self,
                                 const gchar* value)
{
#line 192 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 192 "gxml-performance.vala"
	if (g_strcmp0 (value, performance_dh_element_get_name (self)) != 0) {
#line 14582 "gxml-performance.c"
		gchar* _tmp0_;
#line 192 "gxml-performance.vala"
		_tmp0_ = g_strdup (value);
#line 192 "gxml-performance.vala"
		_g_free0 (self->priv->_name);
#line 192 "gxml-performance.vala"
		self->priv->_name = _tmp0_;
#line 192 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, performance_dh_element_properties[PERFORMANCE_DH_ELEMENT_NAME_PROPERTY]);
#line 14592 "gxml-performance.c"
	}
}

static const gchar*
performance_dh_element_get_key (PerformanceDHElement* self)
{
	const gchar* result;
	const gchar* _tmp0_;
#line 193 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 193 "gxml-performance.vala"
	_tmp0_ = self->priv->_key;
#line 193 "gxml-performance.vala"
	result = _tmp0_;
#line 193 "gxml-performance.vala"
	return result;
#line 14609 "gxml-performance.c"
}

static void
performance_dh_element_set_key (PerformanceDHElement* self,
                                const gchar* value)
{
#line 193 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 193 "gxml-performance.vala"
	if (g_strcmp0 (value, performance_dh_element_get_key (self)) != 0) {
#line 14620 "gxml-performance.c"
		gchar* _tmp0_;
#line 193 "gxml-performance.vala"
		_tmp0_ = g_strdup (value);
#line 193 "gxml-performance.vala"
		_g_free0 (self->priv->_key);
#line 193 "gxml-performance.vala"
		self->priv->_key = _tmp0_;
#line 193 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, performance_dh_element_properties[PERFORMANCE_DH_ELEMENT_KEY_PROPERTY]);
#line 14630 "gxml-performance.c"
	}
}

static inline gpointer
performance_dh_element_dual_key_map_get_instance_private (PerformanceDHElementDualKeyMap* self)
{
	return G_STRUCT_MEMBER_P (self, PerformanceDHElementDualKeyMap_private_offset);
}

static gboolean
performance_dh_element_dual_key_map_real_deserialize_proceed (GXmlSerializableDualKeyMap* base)
{
	PerformanceDHElementDualKeyMap * self;
	gboolean result = FALSE;
	gboolean _tmp0_;
#line 200 "gxml-performance.vala"
	self = (PerformanceDHElementDualKeyMap*) base;
#line 200 "gxml-performance.vala"
	_tmp0_ = self->priv->_enable_deserialize;
#line 200 "gxml-performance.vala"
	result = _tmp0_;
#line 200 "gxml-performance.vala"
	return result;
#line 14654 "gxml-performance.c"
}

static PerformanceDHElementDualKeyMap*
performance_dh_element_dual_key_map_construct (GType object_type)
{
	PerformanceDHElementDualKeyMap * self = NULL;
#line 198 "gxml-performance.vala"
	self = (PerformanceDHElementDualKeyMap*) gxml_serializable_dual_key_map_construct (object_type, G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, (GDestroyNotify) g_free, G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, (GDestroyNotify) g_free, PERFORMANCE_TYPE_DH_ELEMENT, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref);
#line 198 "gxml-performance.vala"
	return self;
#line 14665 "gxml-performance.c"
}

static PerformanceDHElementDualKeyMap*
performance_dh_element_dual_key_map_new (void)
{
#line 198 "gxml-performance.vala"
	return performance_dh_element_dual_key_map_construct (PERFORMANCE_DH_ELEMENT_TYPE_DUAL_KEY_MAP);
#line 14673 "gxml-performance.c"
}

static gboolean
performance_dh_element_dual_key_map_get_enable_deserialize (PerformanceDHElementDualKeyMap* self)
{
	gboolean result;
#line 199 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 199 "gxml-performance.vala"
	result = self->priv->_enable_deserialize;
#line 199 "gxml-performance.vala"
	return result;
#line 14686 "gxml-performance.c"
}

static void
performance_dh_element_dual_key_map_set_enable_deserialize (PerformanceDHElementDualKeyMap* self,
                                                            gboolean value)
{
#line 199 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 199 "gxml-performance.vala"
	if (performance_dh_element_dual_key_map_get_enable_deserialize (self) != value) {
#line 199 "gxml-performance.vala"
		self->priv->_enable_deserialize = value;
#line 199 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, performance_dh_element_dual_key_map_properties[PERFORMANCE_DH_ELEMENT_DUAL_KEY_MAP_ENABLE_DESERIALIZE_PROPERTY]);
#line 14701 "gxml-performance.c"
	}
}

static void
performance_dh_element_dual_key_map_class_init (PerformanceDHElementDualKeyMapClass * klass,
                                                gpointer klass_data)
{
#line 198 "gxml-performance.vala"
	performance_dh_element_dual_key_map_parent_class = g_type_class_peek_parent (klass);
#line 198 "gxml-performance.vala"
	g_type_class_adjust_private_offset (klass, &PerformanceDHElementDualKeyMap_private_offset);
#line 198 "gxml-performance.vala"
	((GXmlSerializableDualKeyMapClass *) klass)->deserialize_proceed = (gboolean (*) (GXmlSerializableDualKeyMap*)) performance_dh_element_dual_key_map_real_deserialize_proceed;
#line 198 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_performance_dh_element_dual_key_map_get_property;
#line 198 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_performance_dh_element_dual_key_map_set_property;
#line 198 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->finalize = performance_dh_element_dual_key_map_finalize;
#line 198 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), PERFORMANCE_DH_ELEMENT_DUAL_KEY_MAP_ENABLE_DESERIALIZE_PROPERTY, performance_dh_element_dual_key_map_properties[PERFORMANCE_DH_ELEMENT_DUAL_KEY_MAP_ENABLE_DESERIALIZE_PROPERTY] = g_param_spec_boolean ("enable-deserialize", "enable-deserialize", "enable-deserialize", FALSE, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 14723 "gxml-performance.c"
}

static void
performance_dh_element_dual_key_map_instance_init (PerformanceDHElementDualKeyMap * self,
                                                   gpointer klass)
{
#line 198 "gxml-performance.vala"
	self->priv = performance_dh_element_dual_key_map_get_instance_private (self);
#line 199 "gxml-performance.vala"
	self->priv->_enable_deserialize = FALSE;
#line 14734 "gxml-performance.c"
}

static void
performance_dh_element_dual_key_map_finalize (GObject * obj)
{
	PerformanceDHElementDualKeyMap * self;
#line 198 "gxml-performance.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, PERFORMANCE_DH_ELEMENT_TYPE_DUAL_KEY_MAP, PerformanceDHElementDualKeyMap);
#line 198 "gxml-performance.vala"
	G_OBJECT_CLASS (performance_dh_element_dual_key_map_parent_class)->finalize (obj);
#line 14745 "gxml-performance.c"
}

GType
performance_dh_element_dual_key_map_get_type (void)
{
	static volatile gsize performance_dh_element_dual_key_map_type_id__volatile = 0;
	if (g_once_init_enter (&performance_dh_element_dual_key_map_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (PerformanceDHElementDualKeyMapClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) performance_dh_element_dual_key_map_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (PerformanceDHElementDualKeyMap), 0, (GInstanceInitFunc) performance_dh_element_dual_key_map_instance_init, NULL };
		GType performance_dh_element_dual_key_map_type_id;
		performance_dh_element_dual_key_map_type_id = g_type_register_static (GXML_TYPE_SERIALIZABLE_DUAL_KEY_MAP, "PerformanceDHElementDualKeyMap", &g_define_type_info, 0);
		PerformanceDHElementDualKeyMap_private_offset = g_type_add_instance_private (performance_dh_element_dual_key_map_type_id, sizeof (PerformanceDHElementDualKeyMapPrivate));
		g_once_init_leave (&performance_dh_element_dual_key_map_type_id__volatile, performance_dh_element_dual_key_map_type_id);
	}
	return performance_dh_element_dual_key_map_type_id__volatile;
}

static void
_vala_performance_dh_element_dual_key_map_get_property (GObject * object,
                                                        guint property_id,
                                                        GValue * value,
                                                        GParamSpec * pspec)
{
	PerformanceDHElementDualKeyMap * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PERFORMANCE_DH_ELEMENT_TYPE_DUAL_KEY_MAP, PerformanceDHElementDualKeyMap);
#line 198 "gxml-performance.vala"
	switch (property_id) {
#line 198 "gxml-performance.vala"
		case PERFORMANCE_DH_ELEMENT_DUAL_KEY_MAP_ENABLE_DESERIALIZE_PROPERTY:
#line 198 "gxml-performance.vala"
		g_value_set_boolean (value, performance_dh_element_dual_key_map_get_enable_deserialize (self));
#line 198 "gxml-performance.vala"
		break;
#line 14778 "gxml-performance.c"
		default:
#line 198 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 198 "gxml-performance.vala"
		break;
#line 14784 "gxml-performance.c"
	}
}

static void
_vala_performance_dh_element_dual_key_map_set_property (GObject * object,
                                                        guint property_id,
                                                        const GValue * value,
                                                        GParamSpec * pspec)
{
	PerformanceDHElementDualKeyMap * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PERFORMANCE_DH_ELEMENT_TYPE_DUAL_KEY_MAP, PerformanceDHElementDualKeyMap);
#line 198 "gxml-performance.vala"
	switch (property_id) {
#line 198 "gxml-performance.vala"
		case PERFORMANCE_DH_ELEMENT_DUAL_KEY_MAP_ENABLE_DESERIALIZE_PROPERTY:
#line 198 "gxml-performance.vala"
		performance_dh_element_dual_key_map_set_enable_deserialize (self, g_value_get_boolean (value));
#line 198 "gxml-performance.vala"
		break;
#line 14804 "gxml-performance.c"
		default:
#line 198 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 198 "gxml-performance.vala"
		break;
#line 14810 "gxml-performance.c"
	}
}

static void
performance_dh_element_class_init (PerformanceDHElementClass * klass,
                                   gpointer klass_data)
{
#line 190 "gxml-performance.vala"
	performance_dh_element_parent_class = g_type_class_peek_parent (klass);
#line 190 "gxml-performance.vala"
	g_type_class_adjust_private_offset (klass, &PerformanceDHElement_private_offset);
#line 190 "gxml-performance.vala"
	((GXmlSerializableObjectModelClass *) klass)->node_name = (gchar* (*) (GXmlSerializableObjectModel*)) performance_dh_element_real_node_name;
#line 190 "gxml-performance.vala"
	((GXmlSerializableObjectModelClass *) klass)->to_string = (gchar* (*) (GXmlSerializableObjectModel*)) performance_dh_element_real_to_string;
#line 190 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_performance_dh_element_get_property;
#line 190 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_performance_dh_element_set_property;
#line 190 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->finalize = performance_dh_element_finalize;
#line 190 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), PERFORMANCE_DH_ELEMENT_NAME_PROPERTY, performance_dh_element_properties[PERFORMANCE_DH_ELEMENT_NAME_PROPERTY] = g_param_spec_string ("name", "name", "name", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 190 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), PERFORMANCE_DH_ELEMENT_KEY_PROPERTY, performance_dh_element_properties[PERFORMANCE_DH_ELEMENT_KEY_PROPERTY] = g_param_spec_string ("key", "key", "key", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 14836 "gxml-performance.c"
}

static void
performance_dh_element_gxml_serializable_map_dual_key_interface_init (GXmlSerializableMapDualKeyIface * iface,
                                                                      gpointer iface_data)
{
#line 190 "gxml-performance.vala"
	performance_dh_element_gxml_serializable_map_dual_key_parent_iface = g_type_interface_peek_parent (iface);
#line 190 "gxml-performance.vala"
	iface->get_map_primary_key = (gpointer (*) (GXmlSerializableMapDualKey*)) performance_dh_element_real_get_map_primary_key;
#line 190 "gxml-performance.vala"
	iface->get_map_secondary_key = (gpointer (*) (GXmlSerializableMapDualKey*)) performance_dh_element_real_get_map_secondary_key;
#line 14849 "gxml-performance.c"
}

static void
performance_dh_element_instance_init (PerformanceDHElement * self,
                                      gpointer klass)
{
#line 190 "gxml-performance.vala"
	self->priv = performance_dh_element_get_instance_private (self);
#line 14858 "gxml-performance.c"
}

static void
performance_dh_element_finalize (GObject * obj)
{
	PerformanceDHElement * self;
#line 190 "gxml-performance.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, PERFORMANCE_TYPE_DH_ELEMENT, PerformanceDHElement);
#line 192 "gxml-performance.vala"
	_g_free0 (self->priv->_name);
#line 193 "gxml-performance.vala"
	_g_free0 (self->priv->_key);
#line 190 "gxml-performance.vala"
	G_OBJECT_CLASS (performance_dh_element_parent_class)->finalize (obj);
#line 14873 "gxml-performance.c"
}

static GType
performance_dh_element_get_type (void)
{
	static volatile gsize performance_dh_element_type_id__volatile = 0;
	if (g_once_init_enter (&performance_dh_element_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (PerformanceDHElementClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) performance_dh_element_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (PerformanceDHElement), 0, (GInstanceInitFunc) performance_dh_element_instance_init, NULL };
		static const GInterfaceInfo gxml_serializable_map_dual_key_info = { (GInterfaceInitFunc) performance_dh_element_gxml_serializable_map_dual_key_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
		GType performance_dh_element_type_id;
		performance_dh_element_type_id = g_type_register_static (GXML_TYPE_SERIALIZABLE_OBJECT_MODEL, "PerformanceDHElement", &g_define_type_info, 0);
		g_type_add_interface_static (performance_dh_element_type_id, GXML_TYPE_SERIALIZABLE_MAP_DUAL_KEY, &gxml_serializable_map_dual_key_info);
		PerformanceDHElement_private_offset = g_type_add_instance_private (performance_dh_element_type_id, sizeof (PerformanceDHElementPrivate));
		g_once_init_leave (&performance_dh_element_type_id__volatile, performance_dh_element_type_id);
	}
	return performance_dh_element_type_id__volatile;
}

static void
_vala_performance_dh_element_get_property (GObject * object,
                                           guint property_id,
                                           GValue * value,
                                           GParamSpec * pspec)
{
	PerformanceDHElement * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PERFORMANCE_TYPE_DH_ELEMENT, PerformanceDHElement);
#line 190 "gxml-performance.vala"
	switch (property_id) {
#line 190 "gxml-performance.vala"
		case PERFORMANCE_DH_ELEMENT_NAME_PROPERTY:
#line 190 "gxml-performance.vala"
		g_value_set_string (value, performance_dh_element_get_name (self));
#line 190 "gxml-performance.vala"
		break;
#line 190 "gxml-performance.vala"
		case PERFORMANCE_DH_ELEMENT_KEY_PROPERTY:
#line 190 "gxml-performance.vala"
		g_value_set_string (value, performance_dh_element_get_key (self));
#line 190 "gxml-performance.vala"
		break;
#line 14914 "gxml-performance.c"
		default:
#line 190 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 190 "gxml-performance.vala"
		break;
#line 14920 "gxml-performance.c"
	}
}

static void
_vala_performance_dh_element_set_property (GObject * object,
                                           guint property_id,
                                           const GValue * value,
                                           GParamSpec * pspec)
{
	PerformanceDHElement * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PERFORMANCE_TYPE_DH_ELEMENT, PerformanceDHElement);
#line 190 "gxml-performance.vala"
	switch (property_id) {
#line 190 "gxml-performance.vala"
		case PERFORMANCE_DH_ELEMENT_NAME_PROPERTY:
#line 190 "gxml-performance.vala"
		performance_dh_element_set_name (self, g_value_get_string (value));
#line 190 "gxml-performance.vala"
		break;
#line 190 "gxml-performance.vala"
		case PERFORMANCE_DH_ELEMENT_KEY_PROPERTY:
#line 190 "gxml-performance.vala"
		performance_dh_element_set_key (self, g_value_get_string (value));
#line 190 "gxml-performance.vala"
		break;
#line 14946 "gxml-performance.c"
		default:
#line 190 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 190 "gxml-performance.vala"
		break;
#line 14952 "gxml-performance.c"
	}
}

static inline gpointer
performance_dhc_element_get_instance_private (PerformanceDHCElement* self)
{
	return G_STRUCT_MEMBER_P (self, PerformanceDHCElement_private_offset);
}

static gchar*
performance_dhc_element_real_node_name (GXmlSerializableObjectModel* base)
{
	PerformanceDHCElement * self;
	gchar* result = NULL;
	gchar* _tmp0_;
#line 206 "gxml-performance.vala"
	self = (PerformanceDHCElement*) base;
#line 206 "gxml-performance.vala"
	_tmp0_ = g_strdup ("DHCElement");
#line 206 "gxml-performance.vala"
	result = _tmp0_;
#line 206 "gxml-performance.vala"
	return result;
#line 14976 "gxml-performance.c"
}

static gchar*
performance_dhc_element_real_to_string (GXmlSerializableObjectModel* base)
{
	PerformanceDHCElement * self;
	gchar* result = NULL;
	gchar* _tmp0_;
#line 207 "gxml-performance.vala"
	self = (PerformanceDHCElement*) base;
#line 207 "gxml-performance.vala"
	_tmp0_ = g_strdup ("DHCElement");
#line 207 "gxml-performance.vala"
	result = _tmp0_;
#line 207 "gxml-performance.vala"
	return result;
#line 14993 "gxml-performance.c"
}

static PerformanceDHCElement*
performance_dhc_element_construct (GType object_type)
{
	PerformanceDHCElement * self = NULL;
#line 203 "gxml-performance.vala"
	self = (PerformanceDHCElement*) gxml_serializable_object_model_construct (object_type);
#line 203 "gxml-performance.vala"
	return self;
#line 15004 "gxml-performance.c"
}

static PerformanceDHCElement*
performance_dhc_element_new (void)
{
#line 203 "gxml-performance.vala"
	return performance_dhc_element_construct (PERFORMANCE_TYPE_DHC_ELEMENT);
#line 15012 "gxml-performance.c"
}

static PerformanceDHElementDualKeyMap*
performance_dhc_element_get_elements1 (PerformanceDHCElement* self)
{
	PerformanceDHElementDualKeyMap* result;
	PerformanceDHElementDualKeyMap* _tmp0_;
#line 204 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 204 "gxml-performance.vala"
	_tmp0_ = self->priv->_elements1;
#line 204 "gxml-performance.vala"
	result = _tmp0_;
#line 204 "gxml-performance.vala"
	return result;
#line 15028 "gxml-performance.c"
}

static void
performance_dhc_element_set_elements1 (PerformanceDHCElement* self,
                                       PerformanceDHElementDualKeyMap* value)
{
#line 204 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 204 "gxml-performance.vala"
	if (performance_dhc_element_get_elements1 (self) != value) {
#line 15039 "gxml-performance.c"
		PerformanceDHElementDualKeyMap* _tmp0_;
#line 204 "gxml-performance.vala"
		_tmp0_ = _g_object_ref0 (value);
#line 204 "gxml-performance.vala"
		_g_object_unref0 (self->priv->_elements1);
#line 204 "gxml-performance.vala"
		self->priv->_elements1 = _tmp0_;
#line 204 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, performance_dhc_element_properties[PERFORMANCE_DHC_ELEMENT_ELEMENTS1_PROPERTY]);
#line 15049 "gxml-performance.c"
	}
}

static PerformanceDHElementDualKeyMap*
performance_dhc_element_get_elements2 (PerformanceDHCElement* self)
{
	PerformanceDHElementDualKeyMap* result;
	PerformanceDHElementDualKeyMap* _tmp0_;
#line 205 "gxml-performance.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 205 "gxml-performance.vala"
	_tmp0_ = self->priv->_elements2;
#line 205 "gxml-performance.vala"
	result = _tmp0_;
#line 205 "gxml-performance.vala"
	return result;
#line 15066 "gxml-performance.c"
}

static void
performance_dhc_element_set_elements2 (PerformanceDHCElement* self,
                                       PerformanceDHElementDualKeyMap* value)
{
#line 205 "gxml-performance.vala"
	g_return_if_fail (self != NULL);
#line 205 "gxml-performance.vala"
	if (performance_dhc_element_get_elements2 (self) != value) {
#line 15077 "gxml-performance.c"
		PerformanceDHElementDualKeyMap* _tmp0_;
#line 205 "gxml-performance.vala"
		_tmp0_ = _g_object_ref0 (value);
#line 205 "gxml-performance.vala"
		_g_object_unref0 (self->priv->_elements2);
#line 205 "gxml-performance.vala"
		self->priv->_elements2 = _tmp0_;
#line 205 "gxml-performance.vala"
		g_object_notify_by_pspec ((GObject *) self, performance_dhc_element_properties[PERFORMANCE_DHC_ELEMENT_ELEMENTS2_PROPERTY]);
#line 15087 "gxml-performance.c"
	}
}

static void
performance_dhc_element_class_init (PerformanceDHCElementClass * klass,
                                    gpointer klass_data)
{
#line 203 "gxml-performance.vala"
	performance_dhc_element_parent_class = g_type_class_peek_parent (klass);
#line 203 "gxml-performance.vala"
	g_type_class_adjust_private_offset (klass, &PerformanceDHCElement_private_offset);
#line 203 "gxml-performance.vala"
	((GXmlSerializableObjectModelClass *) klass)->node_name = (gchar* (*) (GXmlSerializableObjectModel*)) performance_dhc_element_real_node_name;
#line 203 "gxml-performance.vala"
	((GXmlSerializableObjectModelClass *) klass)->to_string = (gchar* (*) (GXmlSerializableObjectModel*)) performance_dhc_element_real_to_string;
#line 203 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_performance_dhc_element_get_property;
#line 203 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->set_property = _vala_performance_dhc_element_set_property;
#line 203 "gxml-performance.vala"
	G_OBJECT_CLASS (klass)->finalize = performance_dhc_element_finalize;
#line 203 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), PERFORMANCE_DHC_ELEMENT_ELEMENTS1_PROPERTY, performance_dhc_element_properties[PERFORMANCE_DHC_ELEMENT_ELEMENTS1_PROPERTY] = g_param_spec_object ("elements1", "elements1", "elements1", PERFORMANCE_DH_ELEMENT_TYPE_DUAL_KEY_MAP, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 203 "gxml-performance.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), PERFORMANCE_DHC_ELEMENT_ELEMENTS2_PROPERTY, performance_dhc_element_properties[PERFORMANCE_DHC_ELEMENT_ELEMENTS2_PROPERTY] = g_param_spec_object ("elements2", "elements2", "elements2", PERFORMANCE_DH_ELEMENT_TYPE_DUAL_KEY_MAP, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
#line 15113 "gxml-performance.c"
}

static void
performance_dhc_element_instance_init (PerformanceDHCElement * self,
                                       gpointer klass)
{
	PerformanceDHElementDualKeyMap* _tmp0_;
	PerformanceDHElementDualKeyMap* _tmp1_;
#line 203 "gxml-performance.vala"
	self->priv = performance_dhc_element_get_instance_private (self);
#line 204 "gxml-performance.vala"
	_tmp0_ = performance_dh_element_dual_key_map_new ();
#line 204 "gxml-performance.vala"
	self->priv->_elements1 = _tmp0_;
#line 205 "gxml-performance.vala"
	_tmp1_ = performance_dh_element_dual_key_map_new ();
#line 205 "gxml-performance.vala"
	self->priv->_elements2 = _tmp1_;
#line 15132 "gxml-performance.c"
}

static void
performance_dhc_element_finalize (GObject * obj)
{
	PerformanceDHCElement * self;
#line 203 "gxml-performance.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, PERFORMANCE_TYPE_DHC_ELEMENT, PerformanceDHCElement);
#line 204 "gxml-performance.vala"
	_g_object_unref0 (self->priv->_elements1);
#line 205 "gxml-performance.vala"
	_g_object_unref0 (self->priv->_elements2);
#line 203 "gxml-performance.vala"
	G_OBJECT_CLASS (performance_dhc_element_parent_class)->finalize (obj);
#line 15147 "gxml-performance.c"
}

static GType
performance_dhc_element_get_type (void)
{
	static volatile gsize performance_dhc_element_type_id__volatile = 0;
	if (g_once_init_enter (&performance_dhc_element_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (PerformanceDHCElementClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) performance_dhc_element_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (PerformanceDHCElement), 0, (GInstanceInitFunc) performance_dhc_element_instance_init, NULL };
		GType performance_dhc_element_type_id;
		performance_dhc_element_type_id = g_type_register_static (GXML_TYPE_SERIALIZABLE_OBJECT_MODEL, "PerformanceDHCElement", &g_define_type_info, 0);
		PerformanceDHCElement_private_offset = g_type_add_instance_private (performance_dhc_element_type_id, sizeof (PerformanceDHCElementPrivate));
		g_once_init_leave (&performance_dhc_element_type_id__volatile, performance_dhc_element_type_id);
	}
	return performance_dhc_element_type_id__volatile;
}

static void
_vala_performance_dhc_element_get_property (GObject * object,
                                            guint property_id,
                                            GValue * value,
                                            GParamSpec * pspec)
{
	PerformanceDHCElement * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PERFORMANCE_TYPE_DHC_ELEMENT, PerformanceDHCElement);
#line 203 "gxml-performance.vala"
	switch (property_id) {
#line 203 "gxml-performance.vala"
		case PERFORMANCE_DHC_ELEMENT_ELEMENTS1_PROPERTY:
#line 203 "gxml-performance.vala"
		g_value_set_object (value, performance_dhc_element_get_elements1 (self));
#line 203 "gxml-performance.vala"
		break;
#line 203 "gxml-performance.vala"
		case PERFORMANCE_DHC_ELEMENT_ELEMENTS2_PROPERTY:
#line 203 "gxml-performance.vala"
		g_value_set_object (value, performance_dhc_element_get_elements2 (self));
#line 203 "gxml-performance.vala"
		break;
#line 15186 "gxml-performance.c"
		default:
#line 203 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 203 "gxml-performance.vala"
		break;
#line 15192 "gxml-performance.c"
	}
}

static void
_vala_performance_dhc_element_set_property (GObject * object,
                                            guint property_id,
                                            const GValue * value,
                                            GParamSpec * pspec)
{
	PerformanceDHCElement * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PERFORMANCE_TYPE_DHC_ELEMENT, PerformanceDHCElement);
#line 203 "gxml-performance.vala"
	switch (property_id) {
#line 203 "gxml-performance.vala"
		case PERFORMANCE_DHC_ELEMENT_ELEMENTS1_PROPERTY:
#line 203 "gxml-performance.vala"
		performance_dhc_element_set_elements1 (self, g_value_get_object (value));
#line 203 "gxml-performance.vala"
		break;
#line 203 "gxml-performance.vala"
		case PERFORMANCE_DHC_ELEMENT_ELEMENTS2_PROPERTY:
#line 203 "gxml-performance.vala"
		performance_dhc_element_set_elements2 (self, g_value_get_object (value));
#line 203 "gxml-performance.vala"
		break;
#line 15218 "gxml-performance.c"
		default:
#line 203 "gxml-performance.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 203 "gxml-performance.vala"
		break;
#line 15224 "gxml-performance.c"
	}
}

static void
value_performance_init (GValue* value)
{
#line 120 "gxml-performance.vala"
	value->data[0].v_pointer = NULL;
#line 15233 "gxml-performance.c"
}

static void
value_performance_free_value (GValue* value)
{
#line 120 "gxml-performance.vala"
	if (value->data[0].v_pointer) {
#line 120 "gxml-performance.vala"
		performance_unref (value->data[0].v_pointer);
#line 15243 "gxml-performance.c"
	}
}

static void
value_performance_copy_value (const GValue* src_value,
                              GValue* dest_value)
{
#line 120 "gxml-performance.vala"
	if (src_value->data[0].v_pointer) {
#line 120 "gxml-performance.vala"
		dest_value->data[0].v_pointer = performance_ref (src_value->data[0].v_pointer);
#line 15255 "gxml-performance.c"
	} else {
#line 120 "gxml-performance.vala"
		dest_value->data[0].v_pointer = NULL;
#line 15259 "gxml-performance.c"
	}
}

static gpointer
value_performance_peek_pointer (const GValue* value)
{
#line 120 "gxml-performance.vala"
	return value->data[0].v_pointer;
#line 15268 "gxml-performance.c"
}

static gchar*
value_performance_collect_value (GValue* value,
                                 guint n_collect_values,
                                 GTypeCValue* collect_values,
                                 guint collect_flags)
{
#line 120 "gxml-performance.vala"
	if (collect_values[0].v_pointer) {
#line 15279 "gxml-performance.c"
		Performance * object;
		object = collect_values[0].v_pointer;
#line 120 "gxml-performance.vala"
		if (object->parent_instance.g_class == NULL) {
#line 120 "gxml-performance.vala"
			return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL);
#line 15286 "gxml-performance.c"
		} else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) {
#line 120 "gxml-performance.vala"
			return g_strconcat ("invalid object type `", g_type_name (G_TYPE_FROM_INSTANCE (object)), "' for value type `", G_VALUE_TYPE_NAME (value), "'", NULL);
#line 15290 "gxml-performance.c"
		}
#line 120 "gxml-performance.vala"
		value->data[0].v_pointer = performance_ref (object);
#line 15294 "gxml-performance.c"
	} else {
#line 120 "gxml-performance.vala"
		value->data[0].v_pointer = NULL;
#line 15298 "gxml-performance.c"
	}
#line 120 "gxml-performance.vala"
	return NULL;
#line 15302 "gxml-performance.c"
}

static gchar*
value_performance_lcopy_value (const GValue* value,
                               guint n_collect_values,
                               GTypeCValue* collect_values,
                               guint collect_flags)
{
	Performance ** object_p;
	object_p = collect_values[0].v_pointer;
#line 120 "gxml-performance.vala"
	if (!object_p) {
#line 120 "gxml-performance.vala"
		return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value));
#line 15317 "gxml-performance.c"
	}
#line 120 "gxml-performance.vala"
	if (!value->data[0].v_pointer) {
#line 120 "gxml-performance.vala"
		*object_p = NULL;
#line 15323 "gxml-performance.c"
	} else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) {
#line 120 "gxml-performance.vala"
		*object_p = value->data[0].v_pointer;
#line 15327 "gxml-performance.c"
	} else {
#line 120 "gxml-performance.vala"
		*object_p = performance_ref (value->data[0].v_pointer);
#line 15331 "gxml-performance.c"
	}
#line 120 "gxml-performance.vala"
	return NULL;
#line 15335 "gxml-performance.c"
}

GParamSpec*
param_spec_performance (const gchar* name,
                        const gchar* nick,
                        const gchar* blurb,
                        GType object_type,
                        GParamFlags flags)
{
	ParamSpecPerformance* spec;
#line 120 "gxml-performance.vala"
	g_return_val_if_fail (g_type_is_a (object_type, TYPE_PERFORMANCE), NULL);
#line 120 "gxml-performance.vala"
	spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags);
#line 120 "gxml-performance.vala"
	G_PARAM_SPEC (spec)->value_type = object_type;
#line 120 "gxml-performance.vala"
	return G_PARAM_SPEC (spec);
#line 15354 "gxml-performance.c"
}

gpointer
value_get_performance (const GValue* value)
{
#line 120 "gxml-performance.vala"
	g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_PERFORMANCE), NULL);
#line 120 "gxml-performance.vala"
	return value->data[0].v_pointer;
#line 15364 "gxml-performance.c"
}

void
value_set_performance (GValue* value,
                       gpointer v_object)
{
	Performance * old;
#line 120 "gxml-performance.vala"
	g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_PERFORMANCE));
#line 120 "gxml-performance.vala"
	old = value->data[0].v_pointer;
#line 120 "gxml-performance.vala"
	if (v_object) {
#line 120 "gxml-performance.vala"
		g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_PERFORMANCE));
#line 120 "gxml-performance.vala"
		g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
#line 120 "gxml-performance.vala"
		value->data[0].v_pointer = v_object;
#line 120 "gxml-performance.vala"
		performance_ref (value->data[0].v_pointer);
#line 15386 "gxml-performance.c"
	} else {
#line 120 "gxml-performance.vala"
		value->data[0].v_pointer = NULL;
#line 15390 "gxml-performance.c"
	}
#line 120 "gxml-performance.vala"
	if (old) {
#line 120 "gxml-performance.vala"
		performance_unref (old);
#line 15396 "gxml-performance.c"
	}
}

void
value_take_performance (GValue* value,
                        gpointer v_object)
{
	Performance * old;
#line 120 "gxml-performance.vala"
	g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_PERFORMANCE));
#line 120 "gxml-performance.vala"
	old = value->data[0].v_pointer;
#line 120 "gxml-performance.vala"
	if (v_object) {
#line 120 "gxml-performance.vala"
		g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_PERFORMANCE));
#line 120 "gxml-performance.vala"
		g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
#line 120 "gxml-performance.vala"
		value->data[0].v_pointer = v_object;
#line 15417 "gxml-performance.c"
	} else {
#line 120 "gxml-performance.vala"
		value->data[0].v_pointer = NULL;
#line 15421 "gxml-performance.c"
	}
#line 120 "gxml-performance.vala"
	if (old) {
#line 120 "gxml-performance.vala"
		performance_unref (old);
#line 15427 "gxml-performance.c"
	}
}

static void
performance_class_init (PerformanceClass * klass,
                        gpointer klass_data)
{
#line 120 "gxml-performance.vala"
	performance_parent_class = g_type_class_peek_parent (klass);
#line 120 "gxml-performance.vala"
	((PerformanceClass *) klass)->finalize = performance_finalize;
#line 15439 "gxml-performance.c"
}

static void
performance_instance_init (Performance * self,
                           gpointer klass)
{
#line 120 "gxml-performance.vala"
	self->ref_count = 1;
#line 15448 "gxml-performance.c"
}

static void
performance_finalize (Performance * obj)
{
	Performance * self;
#line 120 "gxml-performance.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_PERFORMANCE, Performance);
#line 120 "gxml-performance.vala"
	g_signal_handlers_destroy (self);
#line 15459 "gxml-performance.c"
}

GType
performance_get_type (void)
{
	static volatile gsize performance_type_id__volatile = 0;
	if (g_once_init_enter (&performance_type_id__volatile)) {
		static const GTypeValueTable g_define_type_value_table = { value_performance_init, value_performance_free_value, value_performance_copy_value, value_performance_peek_pointer, "p", value_performance_collect_value, "p", value_performance_lcopy_value };
		static const GTypeInfo g_define_type_info = { sizeof (PerformanceClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) performance_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (Performance), 0, (GInstanceInitFunc) performance_instance_init, &g_define_type_value_table };
		static const GTypeFundamentalInfo g_define_type_fundamental_info = { (G_TYPE_FLAG_CLASSED | G_TYPE_FLAG_INSTANTIATABLE | G_TYPE_FLAG_DERIVABLE | G_TYPE_FLAG_DEEP_DERIVABLE) };
		GType performance_type_id;
		performance_type_id = g_type_register_fundamental (g_type_fundamental_next (), "Performance", &g_define_type_info, &g_define_type_fundamental_info, 0);
		g_once_init_leave (&performance_type_id__volatile, performance_type_id);
	}
	return performance_type_id__volatile;
}

gpointer
performance_ref (gpointer instance)
{
	Performance * self;
	self = instance;
#line 120 "gxml-performance.vala"
	g_atomic_int_inc (&self->ref_count);
#line 120 "gxml-performance.vala"
	return instance;
#line 15486 "gxml-performance.c"
}

void
performance_unref (gpointer instance)
{
	Performance * self;
	self = instance;
#line 120 "gxml-performance.vala"
	if (g_atomic_int_dec_and_test (&self->ref_count)) {
#line 120 "gxml-performance.vala"
		PERFORMANCE_GET_CLASS (self)->finalize (self);
#line 120 "gxml-performance.vala"
		g_type_free_instance ((GTypeInstance *) self);
#line 15500 "gxml-performance.c"
	}
}

