/* steam-change-receipt.c generated by valac 0.56.19, the Vala compiler
 * generated from steam-change-receipt.vala, do not modify */

#include "protonplus_core.h"
#include <stdlib.h>
#include <string.h>
#include <glib.h>
#include <glib-object.h>

#if !defined(VALA_STRICT_C)
#if !defined(__clang__) && defined(__GNUC__) && (__GNUC__ >= 14)
#pragma GCC diagnostic warning "-Wincompatible-pointer-types"
#elif defined(__clang__) && (__clang_major__ >= 16)
#pragma clang diagnostic ignored "-Wincompatible-function-pointer-types"
#pragma clang diagnostic ignored "-Wincompatible-pointer-types"
#endif
#endif

enum  {
	PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_0_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_FILE_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_OPERATION_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_PATH_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_FIELD_ID_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_BASELINE_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_BASELINE_FINGERPRINT_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_DESIRED_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_BASELINE_PRESENT_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_DESIRED_PRESENT_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_NUM_PROPERTIES
};
static GParamSpec* proton_plus_models_steam_configuration_intent_properties[PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_NUM_PROPERTIES];
#define _g_free0(var) (var = (g_free (var), NULL))
#define _g_checksum_free0(var) ((var == NULL) ? NULL : (var = (g_checksum_free (var), NULL)))
enum  {
	PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_0_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_TARGET_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_KIND_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_RESTART_REQUIREMENT_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_RESOURCE_KEY_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_SUBJECT_ID_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_SUBJECT_LABEL_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_CHANGED_AT_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_CONFIGURATION_INTENT_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_DEDUPLICATION_KEY_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_NUM_PROPERTIES
};
static GParamSpec* proton_plus_models_steam_change_receipt_properties[PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_NUM_PROPERTIES];
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
#define _g_date_time_unref0(var) ((var == NULL) ? NULL : (var = (g_date_time_unref (var), NULL)))
enum  {
	PROTON_PLUS_MODELS_STEAM_SESSION_IDENTITY_0_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_SESSION_IDENTITY_BOOT_ID_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_SESSION_IDENTITY_PROCESS_START_TICKS_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_SESSION_IDENTITY_PROCESS_PID_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_SESSION_IDENTITY_FLATPAK_INSTANCE_ID_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_SESSION_IDENTITY_NUM_PROPERTIES
};
static GParamSpec* proton_plus_models_steam_session_identity_properties[PROTON_PLUS_MODELS_STEAM_SESSION_IDENTITY_NUM_PROPERTIES];
enum  {
	PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_0_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_RECEIPT_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_FIRST_RECORDED_AT_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_LAST_UPDATED_AT_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_OCCURRENCE_COUNT_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_OBSERVED_SESSION_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_STOP_OBSERVED_PROPERTY,
	PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_NUM_PROPERTIES
};
static GParamSpec* proton_plus_models_steam_restart_pending_record_properties[PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_NUM_PROPERTIES];

struct _ProtonPlusModelsSteamConfigurationIntentPrivate {
	ProtonPlusModelsSteamConfigurationFile _file;
	ProtonPlusModelsSteamConfigurationOperation _operation;
	gchar* _path;
	gchar* _field_id;
	gchar* _baseline;
	gchar* _baseline_fingerprint;
	gchar* _desired;
	gboolean _baseline_present;
	gboolean _desired_present;
};

struct _ProtonPlusModelsSteamChangeReceiptPrivate {
	ProtonPlusModelsSteamRestartTarget* _target;
	ProtonPlusModelsSteamChangeKind _kind;
	ProtonPlusModelsSteamRestartRequirement _restart_requirement;
	gchar* _resource_key;
	gchar* _subject_id;
	gchar* _subject_label;
	gchar* _changed_at;
	ProtonPlusModelsSteamConfigurationIntent* _configuration_intent;
};

struct _ProtonPlusModelsSteamSessionIdentityPrivate {
	gchar* _boot_id;
	gint64 _process_start_ticks;
	gint _process_pid;
	gchar* _flatpak_instance_id;
};

struct _ProtonPlusModelsSteamRestartPendingRecordPrivate {
	ProtonPlusModelsSteamChangeReceipt* _receipt;
	gchar* _first_recorded_at;
	gchar* _last_updated_at;
	guint _occurrence_count;
	ProtonPlusModelsSteamSessionIdentity* _observed_session;
	gboolean _stop_observed;
};

static gint ProtonPlusModelsSteamConfigurationIntent_private_offset;
static gpointer proton_plus_models_steam_configuration_intent_parent_class = NULL;
static gint ProtonPlusModelsSteamChangeReceipt_private_offset;
static gpointer proton_plus_models_steam_change_receipt_parent_class = NULL;
static gint ProtonPlusModelsSteamSessionIdentity_private_offset;
static gpointer proton_plus_models_steam_session_identity_parent_class = NULL;
static gint ProtonPlusModelsSteamRestartPendingRecord_private_offset;
static gpointer proton_plus_models_steam_restart_pending_record_parent_class = NULL;

static void proton_plus_models_steam_configuration_intent_set_file (ProtonPlusModelsSteamConfigurationIntent* self,
                                                             ProtonPlusModelsSteamConfigurationFile value);
static void proton_plus_models_steam_configuration_intent_set_operation (ProtonPlusModelsSteamConfigurationIntent* self,
                                                                  ProtonPlusModelsSteamConfigurationOperation value);
static void proton_plus_models_steam_configuration_intent_set_path (ProtonPlusModelsSteamConfigurationIntent* self,
                                                             const gchar* value);
static void proton_plus_models_steam_configuration_intent_set_field_id (ProtonPlusModelsSteamConfigurationIntent* self,
                                                                 const gchar* value);
static void proton_plus_models_steam_configuration_intent_set_baseline (ProtonPlusModelsSteamConfigurationIntent* self,
                                                                 const gchar* value);
static void proton_plus_models_steam_configuration_intent_set_desired (ProtonPlusModelsSteamConfigurationIntent* self,
                                                                const gchar* value);
static void proton_plus_models_steam_configuration_intent_set_baseline_present (ProtonPlusModelsSteamConfigurationIntent* self,
                                                                         gboolean value);
static void proton_plus_models_steam_configuration_intent_set_desired_present (ProtonPlusModelsSteamConfigurationIntent* self,
                                                                        gboolean value);
static void proton_plus_models_steam_configuration_intent_set_baseline_fingerprint (ProtonPlusModelsSteamConfigurationIntent* self,
                                                                             const gchar* value);
static void proton_plus_models_steam_configuration_intent_finalize (GObject * obj);
static GType proton_plus_models_steam_configuration_intent_get_type_once (void);
static void _vala_proton_plus_models_steam_configuration_intent_get_property (GObject * object,
                                                                       guint property_id,
                                                                       GValue * value,
                                                                       GParamSpec * pspec);
static void _vala_proton_plus_models_steam_configuration_intent_set_property (GObject * object,
                                                                       guint property_id,
                                                                       const GValue * value,
                                                                       GParamSpec * pspec);
static void proton_plus_models_steam_change_receipt_set_target (ProtonPlusModelsSteamChangeReceipt* self,
                                                         ProtonPlusModelsSteamRestartTarget* value);
static void proton_plus_models_steam_change_receipt_set_kind (ProtonPlusModelsSteamChangeReceipt* self,
                                                       ProtonPlusModelsSteamChangeKind value);
static void proton_plus_models_steam_change_receipt_set_restart_requirement (ProtonPlusModelsSteamChangeReceipt* self,
                                                                      ProtonPlusModelsSteamRestartRequirement value);
static void proton_plus_models_steam_change_receipt_set_resource_key (ProtonPlusModelsSteamChangeReceipt* self,
                                                               const gchar* value);
static void proton_plus_models_steam_change_receipt_set_subject_id (ProtonPlusModelsSteamChangeReceipt* self,
                                                             const gchar* value);
static void proton_plus_models_steam_change_receipt_set_subject_label (ProtonPlusModelsSteamChangeReceipt* self,
                                                                const gchar* value);
static void proton_plus_models_steam_change_receipt_set_changed_at (ProtonPlusModelsSteamChangeReceipt* self,
                                                             const gchar* value);
static void proton_plus_models_steam_change_receipt_set_configuration_intent (ProtonPlusModelsSteamChangeReceipt* self,
                                                                       ProtonPlusModelsSteamConfigurationIntent* value);
static void proton_plus_models_steam_change_receipt_finalize (GObject * obj);
static GType proton_plus_models_steam_change_receipt_get_type_once (void);
static void _vala_proton_plus_models_steam_change_receipt_get_property (GObject * object,
                                                                 guint property_id,
                                                                 GValue * value,
                                                                 GParamSpec * pspec);
static void _vala_proton_plus_models_steam_change_receipt_set_property (GObject * object,
                                                                 guint property_id,
                                                                 const GValue * value,
                                                                 GParamSpec * pspec);
static void proton_plus_models_steam_session_identity_set_boot_id (ProtonPlusModelsSteamSessionIdentity* self,
                                                            const gchar* value);
static void proton_plus_models_steam_session_identity_set_process_start_ticks (ProtonPlusModelsSteamSessionIdentity* self,
                                                                        gint64 value);
static void proton_plus_models_steam_session_identity_set_process_pid (ProtonPlusModelsSteamSessionIdentity* self,
                                                                gint value);
static void proton_plus_models_steam_session_identity_set_flatpak_instance_id (ProtonPlusModelsSteamSessionIdentity* self,
                                                                        const gchar* value);
static void proton_plus_models_steam_session_identity_finalize (GObject * obj);
static GType proton_plus_models_steam_session_identity_get_type_once (void);
static void _vala_proton_plus_models_steam_session_identity_get_property (GObject * object,
                                                                   guint property_id,
                                                                   GValue * value,
                                                                   GParamSpec * pspec);
static void _vala_proton_plus_models_steam_session_identity_set_property (GObject * object,
                                                                   guint property_id,
                                                                   const GValue * value,
                                                                   GParamSpec * pspec);
static void proton_plus_models_steam_restart_pending_record_set_receipt (ProtonPlusModelsSteamRestartPendingRecord* self,
                                                                  ProtonPlusModelsSteamChangeReceipt* value);
static void proton_plus_models_steam_restart_pending_record_set_first_recorded_at (ProtonPlusModelsSteamRestartPendingRecord* self,
                                                                            const gchar* value);
static void proton_plus_models_steam_restart_pending_record_set_last_updated_at (ProtonPlusModelsSteamRestartPendingRecord* self,
                                                                          const gchar* value);
static void proton_plus_models_steam_restart_pending_record_set_occurrence_count (ProtonPlusModelsSteamRestartPendingRecord* self,
                                                                           guint value);
static void proton_plus_models_steam_restart_pending_record_set_observed_session (ProtonPlusModelsSteamRestartPendingRecord* self,
                                                                           ProtonPlusModelsSteamSessionIdentity* value);
static void proton_plus_models_steam_restart_pending_record_set_stop_observed (ProtonPlusModelsSteamRestartPendingRecord* self,
                                                                        gboolean value);
static void proton_plus_models_steam_restart_pending_record_finalize (GObject * obj);
static GType proton_plus_models_steam_restart_pending_record_get_type_once (void);
static void _vala_proton_plus_models_steam_restart_pending_record_get_property (GObject * object,
                                                                         guint property_id,
                                                                         GValue * value,
                                                                         GParamSpec * pspec);
static void _vala_proton_plus_models_steam_restart_pending_record_set_property (GObject * object,
                                                                         guint property_id,
                                                                         const GValue * value,
                                                                         GParamSpec * pspec);
static inline gpointer _vala_memdup2 (gconstpointer mem,
                        gsize byte_size);

static GType
proton_plus_models_steam_configuration_file_get_type_once (void)
{
	static const GEnumValue values[] = {{PROTON_PLUS_MODELS_STEAM_CONFIGURATION_FILE_CONFIG, "PROTON_PLUS_MODELS_STEAM_CONFIGURATION_FILE_CONFIG", "config"}, {PROTON_PLUS_MODELS_STEAM_CONFIGURATION_FILE_LOCALCONFIG, "PROTON_PLUS_MODELS_STEAM_CONFIGURATION_FILE_LOCALCONFIG", "localconfig"}, {PROTON_PLUS_MODELS_STEAM_CONFIGURATION_FILE_SHORTCUTS, "PROTON_PLUS_MODELS_STEAM_CONFIGURATION_FILE_SHORTCUTS", "shortcuts"}, {0, NULL, NULL}};
	GType proton_plus_models_steam_configuration_file_type_id;
	proton_plus_models_steam_configuration_file_type_id = g_enum_register_static ("ProtonPlusModelsSteamConfigurationFile", values);
	return proton_plus_models_steam_configuration_file_type_id;
}

GType
proton_plus_models_steam_configuration_file_get_type (void)
{
	static volatile gsize proton_plus_models_steam_configuration_file_type_id__once = 0;
	if (g_once_init_enter (&proton_plus_models_steam_configuration_file_type_id__once)) {
		GType proton_plus_models_steam_configuration_file_type_id;
		proton_plus_models_steam_configuration_file_type_id = proton_plus_models_steam_configuration_file_get_type_once ();
		g_once_init_leave (&proton_plus_models_steam_configuration_file_type_id__once, proton_plus_models_steam_configuration_file_type_id);
	}
	return proton_plus_models_steam_configuration_file_type_id__once;
}

static GType
proton_plus_models_steam_configuration_operation_get_type_once (void)
{
	static const GEnumValue values[] = {{PROTON_PLUS_MODELS_STEAM_CONFIGURATION_OPERATION_COMPATIBILITY_MAPPING, "PROTON_PLUS_MODELS_STEAM_CONFIGURATION_OPERATION_COMPATIBILITY_MAPPING", "compatibility-mapping"}, {PROTON_PLUS_MODELS_STEAM_CONFIGURATION_OPERATION_LAUNCH_OPTIONS, "PROTON_PLUS_MODELS_STEAM_CONFIGURATION_OPERATION_LAUNCH_OPTIONS", "launch-options"}, {PROTON_PLUS_MODELS_STEAM_CONFIGURATION_OPERATION_SHORTCUT_LAUNCH_OPTIONS, "PROTON_PLUS_MODELS_STEAM_CONFIGURATION_OPERATION_SHORTCUT_LAUNCH_OPTIONS", "shortcut-launch-options"}, {PROTON_PLUS_MODELS_STEAM_CONFIGURATION_OPERATION_SHORTCUTS_FILE_PRESENT, "PROTON_PLUS_MODELS_STEAM_CONFIGURATION_OPERATION_SHORTCUTS_FILE_PRESENT", "shortcuts-file-present"}, {PROTON_PLUS_MODELS_STEAM_CONFIGURATION_OPERATION_SHORTCUT_PRESENCE, "PROTON_PLUS_MODELS_STEAM_CONFIGURATION_OPERATION_SHORTCUT_PRESENCE", "shortcut-presence"}, {0, NULL, NULL}};
	GType proton_plus_models_steam_configuration_operation_type_id;
	proton_plus_models_steam_configuration_operation_type_id = g_enum_register_static ("ProtonPlusModelsSteamConfigurationOperation", values);
	return proton_plus_models_steam_configuration_operation_type_id;
}

GType
proton_plus_models_steam_configuration_operation_get_type (void)
{
	static volatile gsize proton_plus_models_steam_configuration_operation_type_id__once = 0;
	if (g_once_init_enter (&proton_plus_models_steam_configuration_operation_type_id__once)) {
		GType proton_plus_models_steam_configuration_operation_type_id;
		proton_plus_models_steam_configuration_operation_type_id = proton_plus_models_steam_configuration_operation_get_type_once ();
		g_once_init_leave (&proton_plus_models_steam_configuration_operation_type_id__once, proton_plus_models_steam_configuration_operation_type_id);
	}
	return proton_plus_models_steam_configuration_operation_type_id__once;
}

static inline gpointer
proton_plus_models_steam_configuration_intent_get_instance_private (ProtonPlusModelsSteamConfigurationIntent* self)
{
	return G_STRUCT_MEMBER_P (self, ProtonPlusModelsSteamConfigurationIntent_private_offset);
}

ProtonPlusModelsSteamConfigurationIntent*
proton_plus_models_steam_configuration_intent_construct (GType object_type,
                                                         ProtonPlusModelsSteamConfigurationFile file,
                                                         ProtonPlusModelsSteamConfigurationOperation operation,
                                                         const gchar* path,
                                                         const gchar* field_id,
                                                         const gchar* baseline,
                                                         const gchar* desired,
                                                         gboolean baseline_present,
                                                         gboolean desired_present,
                                                         const gchar* baseline_fingerprint)
{
	ProtonPlusModelsSteamConfigurationIntent * self = NULL;
	gchar* _tmp0_ = NULL;
	gchar* _tmp1_;
	g_return_val_if_fail (path != NULL, NULL);
	g_return_val_if_fail (field_id != NULL, NULL);
	g_return_val_if_fail (baseline != NULL, NULL);
	g_return_val_if_fail (desired != NULL, NULL);
	self = (ProtonPlusModelsSteamConfigurationIntent*) g_object_new (object_type, NULL);
	proton_plus_models_steam_configuration_intent_set_file (self, file);
	proton_plus_models_steam_configuration_intent_set_operation (self, operation);
	proton_plus_models_steam_configuration_intent_set_path (self, path);
	proton_plus_models_steam_configuration_intent_set_field_id (self, field_id);
	proton_plus_models_steam_configuration_intent_set_baseline (self, baseline);
	proton_plus_models_steam_configuration_intent_set_desired (self, desired);
	proton_plus_models_steam_configuration_intent_set_baseline_present (self, baseline_present);
	proton_plus_models_steam_configuration_intent_set_desired_present (self, desired_present);
	_tmp1_ = g_strdup (baseline_fingerprint);
	_tmp0_ = _tmp1_;
	if (_tmp0_ == NULL) {
		gchar* _tmp2_;
		_tmp2_ = proton_plus_models_steam_configuration_intent_fingerprint (baseline, baseline_present);
		_g_free0 (_tmp0_);
		_tmp0_ = _tmp2_;
	}
	proton_plus_models_steam_configuration_intent_set_baseline_fingerprint (self, _tmp0_);
	_g_free0 (_tmp0_);
	return self;
}

ProtonPlusModelsSteamConfigurationIntent*
proton_plus_models_steam_configuration_intent_new (ProtonPlusModelsSteamConfigurationFile file,
                                                   ProtonPlusModelsSteamConfigurationOperation operation,
                                                   const gchar* path,
                                                   const gchar* field_id,
                                                   const gchar* baseline,
                                                   const gchar* desired,
                                                   gboolean baseline_present,
                                                   gboolean desired_present,
                                                   const gchar* baseline_fingerprint)
{
	return proton_plus_models_steam_configuration_intent_construct (PROTON_PLUS_MODELS_TYPE_STEAM_CONFIGURATION_INTENT, file, operation, path, field_id, baseline, desired, baseline_present, desired_present, baseline_fingerprint);
}

gchar*
proton_plus_models_steam_configuration_intent_file_to_identifier (ProtonPlusModelsSteamConfigurationFile file)
{
	gchar* result;
	switch (file) {
		case PROTON_PLUS_MODELS_STEAM_CONFIGURATION_FILE_CONFIG:
		{
			gchar* _tmp0_;
			_tmp0_ = g_strdup ("config");
			result = _tmp0_;
			return result;
		}
		case PROTON_PLUS_MODELS_STEAM_CONFIGURATION_FILE_LOCALCONFIG:
		{
			gchar* _tmp1_;
			_tmp1_ = g_strdup ("localconfig");
			result = _tmp1_;
			return result;
		}
		case PROTON_PLUS_MODELS_STEAM_CONFIGURATION_FILE_SHORTCUTS:
		{
			gchar* _tmp2_;
			_tmp2_ = g_strdup ("shortcuts");
			result = _tmp2_;
			return result;
		}
		default:
		{
			gchar* _tmp3_;
			_tmp3_ = g_strdup ("unknown");
			result = _tmp3_;
			return result;
		}
	}
}

gboolean
proton_plus_models_steam_configuration_intent_try_file_from_identifier (const gchar* value,
                                                                        ProtonPlusModelsSteamConfigurationFile* file)
{
	ProtonPlusModelsSteamConfigurationFile _vala_file = 0;
	const gchar* _tmp0_;
	GQuark _tmp2_ = 0U;
	static GQuark _tmp1_label0 = 0;
	static GQuark _tmp1_label1 = 0;
	static GQuark _tmp1_label2 = 0;
	gboolean result;
	g_return_val_if_fail (value != NULL, FALSE);
	_vala_file = PROTON_PLUS_MODELS_STEAM_CONFIGURATION_FILE_CONFIG;
	_tmp0_ = value;
	_tmp2_ = (NULL == _tmp0_) ? 0 : g_quark_from_string (_tmp0_);
	if (_tmp2_ == ((0 != _tmp1_label0) ? _tmp1_label0 : (_tmp1_label0 = g_quark_from_static_string ("config")))) {
		switch (0) {
			default:
			{
				_vala_file = PROTON_PLUS_MODELS_STEAM_CONFIGURATION_FILE_CONFIG;
				result = TRUE;
				if (file) {
					*file = _vala_file;
				}
				return result;
			}
		}
	} else if (_tmp2_ == ((0 != _tmp1_label1) ? _tmp1_label1 : (_tmp1_label1 = g_quark_from_static_string ("localconfig")))) {
		switch (0) {
			default:
			{
				_vala_file = PROTON_PLUS_MODELS_STEAM_CONFIGURATION_FILE_LOCALCONFIG;
				result = TRUE;
				if (file) {
					*file = _vala_file;
				}
				return result;
			}
		}
	} else if (_tmp2_ == ((0 != _tmp1_label2) ? _tmp1_label2 : (_tmp1_label2 = g_quark_from_static_string ("shortcuts")))) {
		switch (0) {
			default:
			{
				_vala_file = PROTON_PLUS_MODELS_STEAM_CONFIGURATION_FILE_SHORTCUTS;
				result = TRUE;
				if (file) {
					*file = _vala_file;
				}
				return result;
			}
		}
	} else {
		switch (0) {
			default:
			{
				result = FALSE;
				if (file) {
					*file = _vala_file;
				}
				return result;
			}
		}
	}
}

gchar*
proton_plus_models_steam_configuration_intent_operation_to_identifier (ProtonPlusModelsSteamConfigurationOperation operation)
{
	gchar* result;
	switch (operation) {
		case PROTON_PLUS_MODELS_STEAM_CONFIGURATION_OPERATION_COMPATIBILITY_MAPPING:
		{
			gchar* _tmp0_;
			_tmp0_ = g_strdup ("compatibility-mapping");
			result = _tmp0_;
			return result;
		}
		case PROTON_PLUS_MODELS_STEAM_CONFIGURATION_OPERATION_LAUNCH_OPTIONS:
		{
			gchar* _tmp1_;
			_tmp1_ = g_strdup ("launch-options");
			result = _tmp1_;
			return result;
		}
		case PROTON_PLUS_MODELS_STEAM_CONFIGURATION_OPERATION_SHORTCUT_LAUNCH_OPTIONS:
		{
			gchar* _tmp2_;
			_tmp2_ = g_strdup ("shortcut-launch-options");
			result = _tmp2_;
			return result;
		}
		case PROTON_PLUS_MODELS_STEAM_CONFIGURATION_OPERATION_SHORTCUTS_FILE_PRESENT:
		{
			gchar* _tmp3_;
			_tmp3_ = g_strdup ("shortcuts-file-present");
			result = _tmp3_;
			return result;
		}
		case PROTON_PLUS_MODELS_STEAM_CONFIGURATION_OPERATION_SHORTCUT_PRESENCE:
		{
			gchar* _tmp4_;
			_tmp4_ = g_strdup ("shortcut-presence");
			result = _tmp4_;
			return result;
		}
		default:
		{
			gchar* _tmp5_;
			_tmp5_ = g_strdup ("unknown");
			result = _tmp5_;
			return result;
		}
	}
}

gboolean
proton_plus_models_steam_configuration_intent_try_operation_from_identifier (const gchar* value,
                                                                             ProtonPlusModelsSteamConfigurationOperation* operation)
{
	ProtonPlusModelsSteamConfigurationOperation _vala_operation = 0;
	const gchar* _tmp0_;
	GQuark _tmp2_ = 0U;
	static GQuark _tmp1_label0 = 0;
	static GQuark _tmp1_label1 = 0;
	static GQuark _tmp1_label2 = 0;
	static GQuark _tmp1_label3 = 0;
	static GQuark _tmp1_label4 = 0;
	gboolean result;
	g_return_val_if_fail (value != NULL, FALSE);
	_vala_operation = PROTON_PLUS_MODELS_STEAM_CONFIGURATION_OPERATION_COMPATIBILITY_MAPPING;
	_tmp0_ = value;
	_tmp2_ = (NULL == _tmp0_) ? 0 : g_quark_from_string (_tmp0_);
	if (_tmp2_ == ((0 != _tmp1_label0) ? _tmp1_label0 : (_tmp1_label0 = g_quark_from_static_string ("compatibility-mapping")))) {
		switch (0) {
			default:
			{
				_vala_operation = PROTON_PLUS_MODELS_STEAM_CONFIGURATION_OPERATION_COMPATIBILITY_MAPPING;
				result = TRUE;
				if (operation) {
					*operation = _vala_operation;
				}
				return result;
			}
		}
	} else if (_tmp2_ == ((0 != _tmp1_label1) ? _tmp1_label1 : (_tmp1_label1 = g_quark_from_static_string ("launch-options")))) {
		switch (0) {
			default:
			{
				_vala_operation = PROTON_PLUS_MODELS_STEAM_CONFIGURATION_OPERATION_LAUNCH_OPTIONS;
				result = TRUE;
				if (operation) {
					*operation = _vala_operation;
				}
				return result;
			}
		}
	} else if (_tmp2_ == ((0 != _tmp1_label2) ? _tmp1_label2 : (_tmp1_label2 = g_quark_from_static_string ("shortcut-launch-options")))) {
		switch (0) {
			default:
			{
				_vala_operation = PROTON_PLUS_MODELS_STEAM_CONFIGURATION_OPERATION_SHORTCUT_LAUNCH_OPTIONS;
				result = TRUE;
				if (operation) {
					*operation = _vala_operation;
				}
				return result;
			}
		}
	} else if (_tmp2_ == ((0 != _tmp1_label3) ? _tmp1_label3 : (_tmp1_label3 = g_quark_from_static_string ("shortcuts-file-present")))) {
		switch (0) {
			default:
			{
				_vala_operation = PROTON_PLUS_MODELS_STEAM_CONFIGURATION_OPERATION_SHORTCUTS_FILE_PRESENT;
				result = TRUE;
				if (operation) {
					*operation = _vala_operation;
				}
				return result;
			}
		}
	} else if (_tmp2_ == ((0 != _tmp1_label4) ? _tmp1_label4 : (_tmp1_label4 = g_quark_from_static_string ("shortcut-presence")))) {
		switch (0) {
			default:
			{
				_vala_operation = PROTON_PLUS_MODELS_STEAM_CONFIGURATION_OPERATION_SHORTCUT_PRESENCE;
				result = TRUE;
				if (operation) {
					*operation = _vala_operation;
				}
				return result;
			}
		}
	} else {
		switch (0) {
			default:
			{
				result = FALSE;
				if (operation) {
					*operation = _vala_operation;
				}
				return result;
			}
		}
	}
}

static guint8*
string_get_data (const gchar* self,
                 gint* result_length1)
{
	guint8* result;
	guint8* res = NULL;
	gint res_length1;
	gint _res_size_;
	gint _tmp0_;
	gint _tmp1_;
	guint8* _tmp2_;
	gint _tmp2__length1;
	g_return_val_if_fail (self != NULL, NULL);
	res = (guint8*) self;
	res_length1 = -1;
	_res_size_ = res_length1;
	_tmp0_ = strlen (self);
	_tmp1_ = _tmp0_;
	res_length1 = (gint) _tmp1_;
	_tmp2_ = res;
	_tmp2__length1 = res_length1;
	if (result_length1) {
		*result_length1 = _tmp2__length1;
	}
	result = _tmp2_;
	return result;
}

gchar*
proton_plus_models_steam_configuration_intent_fingerprint (const gchar* value,
                                                           gboolean present)
{
	GChecksum* checksum = NULL;
	GChecksum* _tmp0_;
	const gchar* _tmp1_ = NULL;
	gchar* material = NULL;
	gchar* _tmp2_;
	GChecksum* _tmp3_;
	guint8* _tmp4_;
	gint _tmp4__length1;
	gint _tmp5_ = 0;
	guint8* _tmp6_;
	gint _tmp6__length1;
	gint _tmp7_;
	gint _tmp8_;
	GChecksum* _tmp9_;
	const gchar* _tmp10_;
	gchar* _tmp11_;
	gchar* result;
	g_return_val_if_fail (value != NULL, NULL);
	_tmp0_ = g_checksum_new (G_CHECKSUM_SHA256);
	checksum = _tmp0_;
	if (present) {
		_tmp1_ = "present\u001f";
	} else {
		_tmp1_ = "absent\u001f";
	}
	_tmp2_ = g_strconcat (_tmp1_, value, NULL);
	material = _tmp2_;
	_tmp3_ = checksum;
	_tmp4_ = string_get_data (material, &_tmp5_);
	_tmp4__length1 = _tmp5_;
	_tmp6_ = _tmp4_;
	_tmp6__length1 = _tmp4__length1;
	_tmp7_ = strlen (material);
	_tmp8_ = _tmp7_;
	g_checksum_update (_tmp3_, _tmp6_, (gsize) _tmp8_);
	_tmp9_ = checksum;
	_tmp10_ = g_checksum_get_string (_tmp9_);
	_tmp11_ = g_strdup (_tmp10_);
	result = _tmp11_;
	_g_free0 (material);
	_g_checksum_free0 (checksum);
	return result;
}

ProtonPlusModelsSteamConfigurationFile
proton_plus_models_steam_configuration_intent_get_file (ProtonPlusModelsSteamConfigurationIntent* self)
{
	ProtonPlusModelsSteamConfigurationFile result;
	g_return_val_if_fail (self != NULL, 0);
	result = self->priv->_file;
	return result;
}

static void
proton_plus_models_steam_configuration_intent_set_file (ProtonPlusModelsSteamConfigurationIntent* self,
                                                        ProtonPlusModelsSteamConfigurationFile value)
{
	ProtonPlusModelsSteamConfigurationFile old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_models_steam_configuration_intent_get_file (self);
	if (old_value != value) {
		self->priv->_file = value;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_models_steam_configuration_intent_properties[PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_FILE_PROPERTY]);
	}
}

ProtonPlusModelsSteamConfigurationOperation
proton_plus_models_steam_configuration_intent_get_operation (ProtonPlusModelsSteamConfigurationIntent* self)
{
	ProtonPlusModelsSteamConfigurationOperation result;
	g_return_val_if_fail (self != NULL, 0);
	result = self->priv->_operation;
	return result;
}

static void
proton_plus_models_steam_configuration_intent_set_operation (ProtonPlusModelsSteamConfigurationIntent* self,
                                                             ProtonPlusModelsSteamConfigurationOperation value)
{
	ProtonPlusModelsSteamConfigurationOperation old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_models_steam_configuration_intent_get_operation (self);
	if (old_value != value) {
		self->priv->_operation = value;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_models_steam_configuration_intent_properties[PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_OPERATION_PROPERTY]);
	}
}

const gchar*
proton_plus_models_steam_configuration_intent_get_path (ProtonPlusModelsSteamConfigurationIntent* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_path;
	result = _tmp0_;
	return result;
}

static void
proton_plus_models_steam_configuration_intent_set_path (ProtonPlusModelsSteamConfigurationIntent* self,
                                                        const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_models_steam_configuration_intent_get_path (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_path);
		self->priv->_path = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_models_steam_configuration_intent_properties[PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_PATH_PROPERTY]);
	}
}

const gchar*
proton_plus_models_steam_configuration_intent_get_field_id (ProtonPlusModelsSteamConfigurationIntent* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_field_id;
	result = _tmp0_;
	return result;
}

static void
proton_plus_models_steam_configuration_intent_set_field_id (ProtonPlusModelsSteamConfigurationIntent* self,
                                                            const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_models_steam_configuration_intent_get_field_id (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_field_id);
		self->priv->_field_id = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_models_steam_configuration_intent_properties[PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_FIELD_ID_PROPERTY]);
	}
}

const gchar*
proton_plus_models_steam_configuration_intent_get_baseline (ProtonPlusModelsSteamConfigurationIntent* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_baseline;
	result = _tmp0_;
	return result;
}

static void
proton_plus_models_steam_configuration_intent_set_baseline (ProtonPlusModelsSteamConfigurationIntent* self,
                                                            const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_models_steam_configuration_intent_get_baseline (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_baseline);
		self->priv->_baseline = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_models_steam_configuration_intent_properties[PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_BASELINE_PROPERTY]);
	}
}

const gchar*
proton_plus_models_steam_configuration_intent_get_baseline_fingerprint (ProtonPlusModelsSteamConfigurationIntent* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_baseline_fingerprint;
	result = _tmp0_;
	return result;
}

static void
proton_plus_models_steam_configuration_intent_set_baseline_fingerprint (ProtonPlusModelsSteamConfigurationIntent* self,
                                                                        const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_models_steam_configuration_intent_get_baseline_fingerprint (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_baseline_fingerprint);
		self->priv->_baseline_fingerprint = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_models_steam_configuration_intent_properties[PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_BASELINE_FINGERPRINT_PROPERTY]);
	}
}

const gchar*
proton_plus_models_steam_configuration_intent_get_desired (ProtonPlusModelsSteamConfigurationIntent* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_desired;
	result = _tmp0_;
	return result;
}

static void
proton_plus_models_steam_configuration_intent_set_desired (ProtonPlusModelsSteamConfigurationIntent* self,
                                                           const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_models_steam_configuration_intent_get_desired (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_desired);
		self->priv->_desired = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_models_steam_configuration_intent_properties[PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_DESIRED_PROPERTY]);
	}
}

gboolean
proton_plus_models_steam_configuration_intent_get_baseline_present (ProtonPlusModelsSteamConfigurationIntent* self)
{
	gboolean result;
	g_return_val_if_fail (self != NULL, FALSE);
	result = self->priv->_baseline_present;
	return result;
}

static void
proton_plus_models_steam_configuration_intent_set_baseline_present (ProtonPlusModelsSteamConfigurationIntent* self,
                                                                    gboolean value)
{
	gboolean old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_models_steam_configuration_intent_get_baseline_present (self);
	if (old_value != value) {
		self->priv->_baseline_present = value;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_models_steam_configuration_intent_properties[PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_BASELINE_PRESENT_PROPERTY]);
	}
}

gboolean
proton_plus_models_steam_configuration_intent_get_desired_present (ProtonPlusModelsSteamConfigurationIntent* self)
{
	gboolean result;
	g_return_val_if_fail (self != NULL, FALSE);
	result = self->priv->_desired_present;
	return result;
}

static void
proton_plus_models_steam_configuration_intent_set_desired_present (ProtonPlusModelsSteamConfigurationIntent* self,
                                                                   gboolean value)
{
	gboolean old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_models_steam_configuration_intent_get_desired_present (self);
	if (old_value != value) {
		self->priv->_desired_present = value;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_models_steam_configuration_intent_properties[PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_DESIRED_PRESENT_PROPERTY]);
	}
}

static void
proton_plus_models_steam_configuration_intent_class_init (ProtonPlusModelsSteamConfigurationIntentClass * klass,
                                                          gpointer klass_data)
{
	proton_plus_models_steam_configuration_intent_parent_class = g_type_class_peek_parent (klass);
	g_type_class_adjust_private_offset (klass, &ProtonPlusModelsSteamConfigurationIntent_private_offset);
	G_OBJECT_CLASS (klass)->get_property = _vala_proton_plus_models_steam_configuration_intent_get_property;
	G_OBJECT_CLASS (klass)->set_property = _vala_proton_plus_models_steam_configuration_intent_set_property;
	G_OBJECT_CLASS (klass)->finalize = proton_plus_models_steam_configuration_intent_finalize;
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_FILE_PROPERTY, proton_plus_models_steam_configuration_intent_properties[PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_FILE_PROPERTY] = g_param_spec_enum ("file", "file", "file", PROTON_PLUS_MODELS_TYPE_STEAM_CONFIGURATION_FILE, 0, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_OPERATION_PROPERTY, proton_plus_models_steam_configuration_intent_properties[PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_OPERATION_PROPERTY] = g_param_spec_enum ("operation", "operation", "operation", PROTON_PLUS_MODELS_TYPE_STEAM_CONFIGURATION_OPERATION, 0, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_PATH_PROPERTY, proton_plus_models_steam_configuration_intent_properties[PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_PATH_PROPERTY] = g_param_spec_string ("path", "path", "path", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_FIELD_ID_PROPERTY, proton_plus_models_steam_configuration_intent_properties[PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_FIELD_ID_PROPERTY] = g_param_spec_string ("field-id", "field-id", "field-id", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_BASELINE_PROPERTY, proton_plus_models_steam_configuration_intent_properties[PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_BASELINE_PROPERTY] = g_param_spec_string ("baseline", "baseline", "baseline", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_BASELINE_FINGERPRINT_PROPERTY, proton_plus_models_steam_configuration_intent_properties[PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_BASELINE_FINGERPRINT_PROPERTY] = g_param_spec_string ("baseline-fingerprint", "baseline-fingerprint", "baseline-fingerprint", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_DESIRED_PROPERTY, proton_plus_models_steam_configuration_intent_properties[PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_DESIRED_PROPERTY] = g_param_spec_string ("desired", "desired", "desired", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_BASELINE_PRESENT_PROPERTY, proton_plus_models_steam_configuration_intent_properties[PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_BASELINE_PRESENT_PROPERTY] = g_param_spec_boolean ("baseline-present", "baseline-present", "baseline-present", FALSE, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_DESIRED_PRESENT_PROPERTY, proton_plus_models_steam_configuration_intent_properties[PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_DESIRED_PRESENT_PROPERTY] = g_param_spec_boolean ("desired-present", "desired-present", "desired-present", FALSE, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
}

static void
proton_plus_models_steam_configuration_intent_instance_init (ProtonPlusModelsSteamConfigurationIntent * self,
                                                             gpointer klass)
{
	self->priv = proton_plus_models_steam_configuration_intent_get_instance_private (self);
}

static void
proton_plus_models_steam_configuration_intent_finalize (GObject * obj)
{
	ProtonPlusModelsSteamConfigurationIntent * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, PROTON_PLUS_MODELS_TYPE_STEAM_CONFIGURATION_INTENT, ProtonPlusModelsSteamConfigurationIntent);
	_g_free0 (self->priv->_path);
	_g_free0 (self->priv->_field_id);
	_g_free0 (self->priv->_baseline);
	_g_free0 (self->priv->_baseline_fingerprint);
	_g_free0 (self->priv->_desired);
	G_OBJECT_CLASS (proton_plus_models_steam_configuration_intent_parent_class)->finalize (obj);
}

static GType
proton_plus_models_steam_configuration_intent_get_type_once (void)
{
	static const GTypeInfo g_define_type_info = { sizeof (ProtonPlusModelsSteamConfigurationIntentClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) proton_plus_models_steam_configuration_intent_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (ProtonPlusModelsSteamConfigurationIntent), 0, (GInstanceInitFunc) proton_plus_models_steam_configuration_intent_instance_init, NULL };
	GType proton_plus_models_steam_configuration_intent_type_id;
	proton_plus_models_steam_configuration_intent_type_id = g_type_register_static (G_TYPE_OBJECT, "ProtonPlusModelsSteamConfigurationIntent", &g_define_type_info, 0);
	ProtonPlusModelsSteamConfigurationIntent_private_offset = g_type_add_instance_private (proton_plus_models_steam_configuration_intent_type_id, sizeof (ProtonPlusModelsSteamConfigurationIntentPrivate));
	return proton_plus_models_steam_configuration_intent_type_id;
}

GType
proton_plus_models_steam_configuration_intent_get_type (void)
{
	static volatile gsize proton_plus_models_steam_configuration_intent_type_id__once = 0;
	if (g_once_init_enter (&proton_plus_models_steam_configuration_intent_type_id__once)) {
		GType proton_plus_models_steam_configuration_intent_type_id;
		proton_plus_models_steam_configuration_intent_type_id = proton_plus_models_steam_configuration_intent_get_type_once ();
		g_once_init_leave (&proton_plus_models_steam_configuration_intent_type_id__once, proton_plus_models_steam_configuration_intent_type_id);
	}
	return proton_plus_models_steam_configuration_intent_type_id__once;
}

static void
_vala_proton_plus_models_steam_configuration_intent_get_property (GObject * object,
                                                                  guint property_id,
                                                                  GValue * value,
                                                                  GParamSpec * pspec)
{
	ProtonPlusModelsSteamConfigurationIntent * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PROTON_PLUS_MODELS_TYPE_STEAM_CONFIGURATION_INTENT, ProtonPlusModelsSteamConfigurationIntent);
	switch (property_id) {
		case PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_FILE_PROPERTY:
		g_value_set_enum (value, proton_plus_models_steam_configuration_intent_get_file (self));
		break;
		case PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_OPERATION_PROPERTY:
		g_value_set_enum (value, proton_plus_models_steam_configuration_intent_get_operation (self));
		break;
		case PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_PATH_PROPERTY:
		g_value_set_string (value, proton_plus_models_steam_configuration_intent_get_path (self));
		break;
		case PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_FIELD_ID_PROPERTY:
		g_value_set_string (value, proton_plus_models_steam_configuration_intent_get_field_id (self));
		break;
		case PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_BASELINE_PROPERTY:
		g_value_set_string (value, proton_plus_models_steam_configuration_intent_get_baseline (self));
		break;
		case PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_BASELINE_FINGERPRINT_PROPERTY:
		g_value_set_string (value, proton_plus_models_steam_configuration_intent_get_baseline_fingerprint (self));
		break;
		case PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_DESIRED_PROPERTY:
		g_value_set_string (value, proton_plus_models_steam_configuration_intent_get_desired (self));
		break;
		case PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_BASELINE_PRESENT_PROPERTY:
		g_value_set_boolean (value, proton_plus_models_steam_configuration_intent_get_baseline_present (self));
		break;
		case PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_DESIRED_PRESENT_PROPERTY:
		g_value_set_boolean (value, proton_plus_models_steam_configuration_intent_get_desired_present (self));
		break;
		default:
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
		break;
	}
}

static void
_vala_proton_plus_models_steam_configuration_intent_set_property (GObject * object,
                                                                  guint property_id,
                                                                  const GValue * value,
                                                                  GParamSpec * pspec)
{
	ProtonPlusModelsSteamConfigurationIntent * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PROTON_PLUS_MODELS_TYPE_STEAM_CONFIGURATION_INTENT, ProtonPlusModelsSteamConfigurationIntent);
	switch (property_id) {
		case PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_FILE_PROPERTY:
		proton_plus_models_steam_configuration_intent_set_file (self, g_value_get_enum (value));
		break;
		case PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_OPERATION_PROPERTY:
		proton_plus_models_steam_configuration_intent_set_operation (self, g_value_get_enum (value));
		break;
		case PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_PATH_PROPERTY:
		proton_plus_models_steam_configuration_intent_set_path (self, g_value_get_string (value));
		break;
		case PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_FIELD_ID_PROPERTY:
		proton_plus_models_steam_configuration_intent_set_field_id (self, g_value_get_string (value));
		break;
		case PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_BASELINE_PROPERTY:
		proton_plus_models_steam_configuration_intent_set_baseline (self, g_value_get_string (value));
		break;
		case PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_BASELINE_FINGERPRINT_PROPERTY:
		proton_plus_models_steam_configuration_intent_set_baseline_fingerprint (self, g_value_get_string (value));
		break;
		case PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_DESIRED_PROPERTY:
		proton_plus_models_steam_configuration_intent_set_desired (self, g_value_get_string (value));
		break;
		case PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_BASELINE_PRESENT_PROPERTY:
		proton_plus_models_steam_configuration_intent_set_baseline_present (self, g_value_get_boolean (value));
		break;
		case PROTON_PLUS_MODELS_STEAM_CONFIGURATION_INTENT_DESIRED_PRESENT_PROPERTY:
		proton_plus_models_steam_configuration_intent_set_desired_present (self, g_value_get_boolean (value));
		break;
		default:
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
		break;
	}
}

static GType
proton_plus_models_steam_change_kind_get_type_once (void)
{
	static const GEnumValue values[] = {{PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_DEFAULT_COMPATIBILITY_TOOL_CHANGED, "PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_DEFAULT_COMPATIBILITY_TOOL_CHANGED", "default-compatibility-tool-changed"}, {PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_GAME_COMPATIBILITY_TOOL_CHANGED, "PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_GAME_COMPATIBILITY_TOOL_CHANGED", "game-compatibility-tool-changed"}, {PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_STEAM_GAME_LAUNCH_OPTIONS_CHANGED, "PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_STEAM_GAME_LAUNCH_OPTIONS_CHANGED", "steam-game-launch-options-changed"}, {PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_NON_STEAM_GAME_LAUNCH_OPTIONS_CHANGED, "PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_NON_STEAM_GAME_LAUNCH_OPTIONS_CHANGED", "non-steam-game-launch-options-changed"}, {PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_PROTONPLUS_SHORTCUT_CREATED, "PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_PROTONPLUS_SHORTCUT_CREATED", "protonplus-shortcut-created"}, {PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_PROTONPLUS_SHORTCUT_REMOVED, "PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_PROTONPLUS_SHORTCUT_REMOVED", "protonplus-shortcut-removed"}, {PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_SHORTCUTS_VDF_CREATED, "PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_SHORTCUTS_VDF_CREATED", "shortcuts-vdf-created"}, {PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_COMPATIBILITY_TOOL_INSTALLED, "PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_COMPATIBILITY_TOOL_INSTALLED", "compatibility-tool-installed"}, {PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_COMPATIBILITY_TOOL_REMOVED, "PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_COMPATIBILITY_TOOL_REMOVED", "compatibility-tool-removed"}, {PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_COMPATIBILITY_TOOL_UPDATED_OR_REPLACED, "PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_COMPATIBILITY_TOOL_UPDATED_OR_REPLACED", "compatibility-tool-updated-or-replaced"}, {PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_STEAMTINKERLAUNCH_CHANGED, "PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_STEAMTINKERLAUNCH_CHANGED", "steamtinkerlaunch-changed"}, {0, NULL, NULL}};
	GType proton_plus_models_steam_change_kind_type_id;
	proton_plus_models_steam_change_kind_type_id = g_enum_register_static ("ProtonPlusModelsSteamChangeKind", values);
	return proton_plus_models_steam_change_kind_type_id;
}

GType
proton_plus_models_steam_change_kind_get_type (void)
{
	static volatile gsize proton_plus_models_steam_change_kind_type_id__once = 0;
	if (g_once_init_enter (&proton_plus_models_steam_change_kind_type_id__once)) {
		GType proton_plus_models_steam_change_kind_type_id;
		proton_plus_models_steam_change_kind_type_id = proton_plus_models_steam_change_kind_get_type_once ();
		g_once_init_leave (&proton_plus_models_steam_change_kind_type_id__once, proton_plus_models_steam_change_kind_type_id);
	}
	return proton_plus_models_steam_change_kind_type_id__once;
}

static GType
proton_plus_models_steam_restart_requirement_get_type_once (void)
{
	static const GEnumValue values[] = {{PROTON_PLUS_MODELS_STEAM_RESTART_REQUIREMENT_DOCUMENTED, "PROTON_PLUS_MODELS_STEAM_RESTART_REQUIREMENT_DOCUMENTED", "documented"}, {PROTON_PLUS_MODELS_STEAM_RESTART_REQUIREMENT_CONSERVATIVE, "PROTON_PLUS_MODELS_STEAM_RESTART_REQUIREMENT_CONSERVATIVE", "conservative"}, {0, NULL, NULL}};
	GType proton_plus_models_steam_restart_requirement_type_id;
	proton_plus_models_steam_restart_requirement_type_id = g_enum_register_static ("ProtonPlusModelsSteamRestartRequirement", values);
	return proton_plus_models_steam_restart_requirement_type_id;
}

GType
proton_plus_models_steam_restart_requirement_get_type (void)
{
	static volatile gsize proton_plus_models_steam_restart_requirement_type_id__once = 0;
	if (g_once_init_enter (&proton_plus_models_steam_restart_requirement_type_id__once)) {
		GType proton_plus_models_steam_restart_requirement_type_id;
		proton_plus_models_steam_restart_requirement_type_id = proton_plus_models_steam_restart_requirement_get_type_once ();
		g_once_init_leave (&proton_plus_models_steam_restart_requirement_type_id__once, proton_plus_models_steam_restart_requirement_type_id);
	}
	return proton_plus_models_steam_restart_requirement_type_id__once;
}

static inline gpointer
proton_plus_models_steam_change_receipt_get_instance_private (ProtonPlusModelsSteamChangeReceipt* self)
{
	return G_STRUCT_MEMBER_P (self, ProtonPlusModelsSteamChangeReceipt_private_offset);
}

ProtonPlusModelsSteamChangeReceipt*
proton_plus_models_steam_change_receipt_construct (GType object_type,
                                                   ProtonPlusModelsSteamRestartTarget* target,
                                                   ProtonPlusModelsSteamChangeKind kind,
                                                   ProtonPlusModelsSteamRestartRequirement restart_requirement,
                                                   const gchar* resource_key,
                                                   const gchar* subject_id,
                                                   const gchar* subject_label,
                                                   const gchar* changed_at,
                                                   ProtonPlusModelsSteamConfigurationIntent* configuration_intent)
{
	ProtonPlusModelsSteamChangeReceipt * self = NULL;
	gchar* _tmp0_ = NULL;
	gchar* _tmp1_;
	g_return_val_if_fail (target != NULL, NULL);
	g_return_val_if_fail (resource_key != NULL, NULL);
	self = (ProtonPlusModelsSteamChangeReceipt*) g_object_new (object_type, NULL);
	proton_plus_models_steam_change_receipt_set_target (self, target);
	proton_plus_models_steam_change_receipt_set_kind (self, kind);
	proton_plus_models_steam_change_receipt_set_restart_requirement (self, restart_requirement);
	proton_plus_models_steam_change_receipt_set_resource_key (self, resource_key);
	proton_plus_models_steam_change_receipt_set_subject_id (self, subject_id);
	proton_plus_models_steam_change_receipt_set_subject_label (self, subject_label);
	_tmp1_ = g_strdup (changed_at);
	_tmp0_ = _tmp1_;
	if (_tmp0_ == NULL) {
		GDateTime* _tmp2_;
		GDateTime* _tmp3_;
		gchar* _tmp4_;
		_tmp2_ = g_date_time_new_now_utc ();
		_tmp3_ = _tmp2_;
		_tmp4_ = g_date_time_format_iso8601 (_tmp3_);
		_g_free0 (_tmp0_);
		_tmp0_ = _tmp4_;
		_g_date_time_unref0 (_tmp3_);
	}
	proton_plus_models_steam_change_receipt_set_changed_at (self, _tmp0_);
	proton_plus_models_steam_change_receipt_set_configuration_intent (self, configuration_intent);
	_g_free0 (_tmp0_);
	return self;
}

ProtonPlusModelsSteamChangeReceipt*
proton_plus_models_steam_change_receipt_new (ProtonPlusModelsSteamRestartTarget* target,
                                             ProtonPlusModelsSteamChangeKind kind,
                                             ProtonPlusModelsSteamRestartRequirement restart_requirement,
                                             const gchar* resource_key,
                                             const gchar* subject_id,
                                             const gchar* subject_label,
                                             const gchar* changed_at,
                                             ProtonPlusModelsSteamConfigurationIntent* configuration_intent)
{
	return proton_plus_models_steam_change_receipt_construct (PROTON_PLUS_MODELS_TYPE_STEAM_CHANGE_RECEIPT, target, kind, restart_requirement, resource_key, subject_id, subject_label, changed_at, configuration_intent);
}

gchar*
proton_plus_models_steam_change_receipt_kind_to_identifier (ProtonPlusModelsSteamChangeKind kind)
{
	gchar* result;
	switch (kind) {
		case PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_DEFAULT_COMPATIBILITY_TOOL_CHANGED:
		{
			gchar* _tmp0_;
			_tmp0_ = g_strdup ("default-compatibility-tool-changed");
			result = _tmp0_;
			return result;
		}
		case PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_GAME_COMPATIBILITY_TOOL_CHANGED:
		{
			gchar* _tmp1_;
			_tmp1_ = g_strdup ("game-compatibility-tool-changed");
			result = _tmp1_;
			return result;
		}
		case PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_STEAM_GAME_LAUNCH_OPTIONS_CHANGED:
		{
			gchar* _tmp2_;
			_tmp2_ = g_strdup ("steam-game-launch-options-changed");
			result = _tmp2_;
			return result;
		}
		case PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_NON_STEAM_GAME_LAUNCH_OPTIONS_CHANGED:
		{
			gchar* _tmp3_;
			_tmp3_ = g_strdup ("non-steam-game-launch-options-changed");
			result = _tmp3_;
			return result;
		}
		case PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_PROTONPLUS_SHORTCUT_CREATED:
		{
			gchar* _tmp4_;
			_tmp4_ = g_strdup ("protonplus-shortcut-created");
			result = _tmp4_;
			return result;
		}
		case PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_PROTONPLUS_SHORTCUT_REMOVED:
		{
			gchar* _tmp5_;
			_tmp5_ = g_strdup ("protonplus-shortcut-removed");
			result = _tmp5_;
			return result;
		}
		case PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_SHORTCUTS_VDF_CREATED:
		{
			gchar* _tmp6_;
			_tmp6_ = g_strdup ("shortcuts-vdf-created");
			result = _tmp6_;
			return result;
		}
		case PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_COMPATIBILITY_TOOL_INSTALLED:
		{
			gchar* _tmp7_;
			_tmp7_ = g_strdup ("compatibility-tool-installed");
			result = _tmp7_;
			return result;
		}
		case PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_COMPATIBILITY_TOOL_REMOVED:
		{
			gchar* _tmp8_;
			_tmp8_ = g_strdup ("compatibility-tool-removed");
			result = _tmp8_;
			return result;
		}
		case PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_COMPATIBILITY_TOOL_UPDATED_OR_REPLACED:
		{
			gchar* _tmp9_;
			_tmp9_ = g_strdup ("compatibility-tool-updated-or-replaced");
			result = _tmp9_;
			return result;
		}
		case PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_STEAMTINKERLAUNCH_CHANGED:
		{
			gchar* _tmp10_;
			_tmp10_ = g_strdup ("steamtinkerlaunch-changed");
			result = _tmp10_;
			return result;
		}
		default:
		{
			gchar* _tmp11_;
			_tmp11_ = g_strdup ("unknown");
			result = _tmp11_;
			return result;
		}
	}
}

gboolean
proton_plus_models_steam_change_receipt_try_kind_from_identifier (const gchar* value,
                                                                  ProtonPlusModelsSteamChangeKind* kind)
{
	ProtonPlusModelsSteamChangeKind _vala_kind = 0;
	const gchar* _tmp0_;
	GQuark _tmp2_ = 0U;
	static GQuark _tmp1_label0 = 0;
	static GQuark _tmp1_label1 = 0;
	static GQuark _tmp1_label2 = 0;
	static GQuark _tmp1_label3 = 0;
	static GQuark _tmp1_label4 = 0;
	static GQuark _tmp1_label5 = 0;
	static GQuark _tmp1_label6 = 0;
	static GQuark _tmp1_label7 = 0;
	static GQuark _tmp1_label8 = 0;
	static GQuark _tmp1_label9 = 0;
	static GQuark _tmp1_label10 = 0;
	gboolean result;
	g_return_val_if_fail (value != NULL, FALSE);
	_vala_kind = PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_DEFAULT_COMPATIBILITY_TOOL_CHANGED;
	_tmp0_ = value;
	_tmp2_ = (NULL == _tmp0_) ? 0 : g_quark_from_string (_tmp0_);
	if (_tmp2_ == ((0 != _tmp1_label0) ? _tmp1_label0 : (_tmp1_label0 = g_quark_from_static_string ("default-compatibility-tool-changed")))) {
		switch (0) {
			default:
			{
				_vala_kind = PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_DEFAULT_COMPATIBILITY_TOOL_CHANGED;
				result = TRUE;
				if (kind) {
					*kind = _vala_kind;
				}
				return result;
			}
		}
	} else if (_tmp2_ == ((0 != _tmp1_label1) ? _tmp1_label1 : (_tmp1_label1 = g_quark_from_static_string ("game-compatibility-tool-changed")))) {
		switch (0) {
			default:
			{
				_vala_kind = PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_GAME_COMPATIBILITY_TOOL_CHANGED;
				result = TRUE;
				if (kind) {
					*kind = _vala_kind;
				}
				return result;
			}
		}
	} else if (_tmp2_ == ((0 != _tmp1_label2) ? _tmp1_label2 : (_tmp1_label2 = g_quark_from_static_string ("steam-game-launch-options-changed")))) {
		switch (0) {
			default:
			{
				_vala_kind = PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_STEAM_GAME_LAUNCH_OPTIONS_CHANGED;
				result = TRUE;
				if (kind) {
					*kind = _vala_kind;
				}
				return result;
			}
		}
	} else if (_tmp2_ == ((0 != _tmp1_label3) ? _tmp1_label3 : (_tmp1_label3 = g_quark_from_static_string ("non-steam-game-launch-options-changed")))) {
		switch (0) {
			default:
			{
				_vala_kind = PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_NON_STEAM_GAME_LAUNCH_OPTIONS_CHANGED;
				result = TRUE;
				if (kind) {
					*kind = _vala_kind;
				}
				return result;
			}
		}
	} else if (_tmp2_ == ((0 != _tmp1_label4) ? _tmp1_label4 : (_tmp1_label4 = g_quark_from_static_string ("protonplus-shortcut-created")))) {
		switch (0) {
			default:
			{
				_vala_kind = PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_PROTONPLUS_SHORTCUT_CREATED;
				result = TRUE;
				if (kind) {
					*kind = _vala_kind;
				}
				return result;
			}
		}
	} else if (_tmp2_ == ((0 != _tmp1_label5) ? _tmp1_label5 : (_tmp1_label5 = g_quark_from_static_string ("protonplus-shortcut-removed")))) {
		switch (0) {
			default:
			{
				_vala_kind = PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_PROTONPLUS_SHORTCUT_REMOVED;
				result = TRUE;
				if (kind) {
					*kind = _vala_kind;
				}
				return result;
			}
		}
	} else if (_tmp2_ == ((0 != _tmp1_label6) ? _tmp1_label6 : (_tmp1_label6 = g_quark_from_static_string ("shortcuts-vdf-created")))) {
		switch (0) {
			default:
			{
				_vala_kind = PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_SHORTCUTS_VDF_CREATED;
				result = TRUE;
				if (kind) {
					*kind = _vala_kind;
				}
				return result;
			}
		}
	} else if (_tmp2_ == ((0 != _tmp1_label7) ? _tmp1_label7 : (_tmp1_label7 = g_quark_from_static_string ("compatibility-tool-installed")))) {
		switch (0) {
			default:
			{
				_vala_kind = PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_COMPATIBILITY_TOOL_INSTALLED;
				result = TRUE;
				if (kind) {
					*kind = _vala_kind;
				}
				return result;
			}
		}
	} else if (_tmp2_ == ((0 != _tmp1_label8) ? _tmp1_label8 : (_tmp1_label8 = g_quark_from_static_string ("compatibility-tool-removed")))) {
		switch (0) {
			default:
			{
				_vala_kind = PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_COMPATIBILITY_TOOL_REMOVED;
				result = TRUE;
				if (kind) {
					*kind = _vala_kind;
				}
				return result;
			}
		}
	} else if (_tmp2_ == ((0 != _tmp1_label9) ? _tmp1_label9 : (_tmp1_label9 = g_quark_from_static_string ("compatibility-tool-updated-or-replaced")))) {
		switch (0) {
			default:
			{
				_vala_kind = PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_COMPATIBILITY_TOOL_UPDATED_OR_REPLACED;
				result = TRUE;
				if (kind) {
					*kind = _vala_kind;
				}
				return result;
			}
		}
	} else if (_tmp2_ == ((0 != _tmp1_label10) ? _tmp1_label10 : (_tmp1_label10 = g_quark_from_static_string ("steamtinkerlaunch-changed")))) {
		switch (0) {
			default:
			{
				_vala_kind = PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_STEAMTINKERLAUNCH_CHANGED;
				result = TRUE;
				if (kind) {
					*kind = _vala_kind;
				}
				return result;
			}
		}
	} else {
		switch (0) {
			default:
			{
				result = FALSE;
				if (kind) {
					*kind = _vala_kind;
				}
				return result;
			}
		}
	}
}

gchar*
proton_plus_models_steam_change_receipt_requirement_to_identifier (ProtonPlusModelsSteamRestartRequirement requirement)
{
	const gchar* _tmp0_ = NULL;
	gchar* _tmp1_;
	gchar* result;
	if (requirement == PROTON_PLUS_MODELS_STEAM_RESTART_REQUIREMENT_DOCUMENTED) {
		_tmp0_ = "documented";
	} else {
		_tmp0_ = "conservative";
	}
	_tmp1_ = g_strdup (_tmp0_);
	result = _tmp1_;
	return result;
}

ProtonPlusModelsSteamRestartRequirement
proton_plus_models_steam_change_receipt_default_requirement_for_kind (ProtonPlusModelsSteamChangeKind kind)
{
	ProtonPlusModelsSteamRestartRequirement _tmp0_ = 0;
	ProtonPlusModelsSteamRestartRequirement result;
	if (kind == PROTON_PLUS_MODELS_STEAM_CHANGE_KIND_COMPATIBILITY_TOOL_INSTALLED) {
		_tmp0_ = PROTON_PLUS_MODELS_STEAM_RESTART_REQUIREMENT_DOCUMENTED;
	} else {
		_tmp0_ = PROTON_PLUS_MODELS_STEAM_RESTART_REQUIREMENT_CONSERVATIVE;
	}
	result = _tmp0_;
	return result;
}

gboolean
proton_plus_models_steam_change_receipt_try_requirement_from_identifier (const gchar* value,
                                                                         ProtonPlusModelsSteamRestartRequirement* requirement)
{
	ProtonPlusModelsSteamRestartRequirement _vala_requirement = 0;
	gboolean result;
	g_return_val_if_fail (value != NULL, FALSE);
	_vala_requirement = PROTON_PLUS_MODELS_STEAM_RESTART_REQUIREMENT_CONSERVATIVE;
	if (g_strcmp0 (value, "documented") == 0) {
		_vala_requirement = PROTON_PLUS_MODELS_STEAM_RESTART_REQUIREMENT_DOCUMENTED;
		result = TRUE;
		if (requirement) {
			*requirement = _vala_requirement;
		}
		return result;
	}
	if (g_strcmp0 (value, "conservative") == 0) {
		result = TRUE;
		if (requirement) {
			*requirement = _vala_requirement;
		}
		return result;
	}
	result = FALSE;
	if (requirement) {
		*requirement = _vala_requirement;
	}
	return result;
}

ProtonPlusModelsSteamRestartTarget*
proton_plus_models_steam_change_receipt_get_target (ProtonPlusModelsSteamChangeReceipt* self)
{
	ProtonPlusModelsSteamRestartTarget* result;
	ProtonPlusModelsSteamRestartTarget* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_target;
	result = _tmp0_;
	return result;
}

static gpointer
_g_object_ref0 (gpointer self)
{
	return self ? g_object_ref (self) : NULL;
}

static void
proton_plus_models_steam_change_receipt_set_target (ProtonPlusModelsSteamChangeReceipt* self,
                                                    ProtonPlusModelsSteamRestartTarget* value)
{
	ProtonPlusModelsSteamRestartTarget* old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_models_steam_change_receipt_get_target (self);
	if (old_value != value) {
		ProtonPlusModelsSteamRestartTarget* _tmp0_;
		_tmp0_ = _g_object_ref0 (value);
		_g_object_unref0 (self->priv->_target);
		self->priv->_target = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_models_steam_change_receipt_properties[PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_TARGET_PROPERTY]);
	}
}

ProtonPlusModelsSteamChangeKind
proton_plus_models_steam_change_receipt_get_kind (ProtonPlusModelsSteamChangeReceipt* self)
{
	ProtonPlusModelsSteamChangeKind result;
	g_return_val_if_fail (self != NULL, 0);
	result = self->priv->_kind;
	return result;
}

static void
proton_plus_models_steam_change_receipt_set_kind (ProtonPlusModelsSteamChangeReceipt* self,
                                                  ProtonPlusModelsSteamChangeKind value)
{
	ProtonPlusModelsSteamChangeKind old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_models_steam_change_receipt_get_kind (self);
	if (old_value != value) {
		self->priv->_kind = value;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_models_steam_change_receipt_properties[PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_KIND_PROPERTY]);
	}
}

ProtonPlusModelsSteamRestartRequirement
proton_plus_models_steam_change_receipt_get_restart_requirement (ProtonPlusModelsSteamChangeReceipt* self)
{
	ProtonPlusModelsSteamRestartRequirement result;
	g_return_val_if_fail (self != NULL, 0);
	result = self->priv->_restart_requirement;
	return result;
}

static void
proton_plus_models_steam_change_receipt_set_restart_requirement (ProtonPlusModelsSteamChangeReceipt* self,
                                                                 ProtonPlusModelsSteamRestartRequirement value)
{
	ProtonPlusModelsSteamRestartRequirement old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_models_steam_change_receipt_get_restart_requirement (self);
	if (old_value != value) {
		self->priv->_restart_requirement = value;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_models_steam_change_receipt_properties[PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_RESTART_REQUIREMENT_PROPERTY]);
	}
}

const gchar*
proton_plus_models_steam_change_receipt_get_resource_key (ProtonPlusModelsSteamChangeReceipt* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_resource_key;
	result = _tmp0_;
	return result;
}

static void
proton_plus_models_steam_change_receipt_set_resource_key (ProtonPlusModelsSteamChangeReceipt* self,
                                                          const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_models_steam_change_receipt_get_resource_key (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_resource_key);
		self->priv->_resource_key = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_models_steam_change_receipt_properties[PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_RESOURCE_KEY_PROPERTY]);
	}
}

const gchar*
proton_plus_models_steam_change_receipt_get_subject_id (ProtonPlusModelsSteamChangeReceipt* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_subject_id;
	result = _tmp0_;
	return result;
}

static void
proton_plus_models_steam_change_receipt_set_subject_id (ProtonPlusModelsSteamChangeReceipt* self,
                                                        const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_models_steam_change_receipt_get_subject_id (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_subject_id);
		self->priv->_subject_id = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_models_steam_change_receipt_properties[PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_SUBJECT_ID_PROPERTY]);
	}
}

const gchar*
proton_plus_models_steam_change_receipt_get_subject_label (ProtonPlusModelsSteamChangeReceipt* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_subject_label;
	result = _tmp0_;
	return result;
}

static void
proton_plus_models_steam_change_receipt_set_subject_label (ProtonPlusModelsSteamChangeReceipt* self,
                                                           const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_models_steam_change_receipt_get_subject_label (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_subject_label);
		self->priv->_subject_label = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_models_steam_change_receipt_properties[PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_SUBJECT_LABEL_PROPERTY]);
	}
}

const gchar*
proton_plus_models_steam_change_receipt_get_changed_at (ProtonPlusModelsSteamChangeReceipt* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_changed_at;
	result = _tmp0_;
	return result;
}

static void
proton_plus_models_steam_change_receipt_set_changed_at (ProtonPlusModelsSteamChangeReceipt* self,
                                                        const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_models_steam_change_receipt_get_changed_at (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_changed_at);
		self->priv->_changed_at = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_models_steam_change_receipt_properties[PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_CHANGED_AT_PROPERTY]);
	}
}

ProtonPlusModelsSteamConfigurationIntent*
proton_plus_models_steam_change_receipt_get_configuration_intent (ProtonPlusModelsSteamChangeReceipt* self)
{
	ProtonPlusModelsSteamConfigurationIntent* result;
	ProtonPlusModelsSteamConfigurationIntent* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_configuration_intent;
	result = _tmp0_;
	return result;
}

static void
proton_plus_models_steam_change_receipt_set_configuration_intent (ProtonPlusModelsSteamChangeReceipt* self,
                                                                  ProtonPlusModelsSteamConfigurationIntent* value)
{
	ProtonPlusModelsSteamConfigurationIntent* old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_models_steam_change_receipt_get_configuration_intent (self);
	if (old_value != value) {
		ProtonPlusModelsSteamConfigurationIntent* _tmp0_;
		_tmp0_ = _g_object_ref0 (value);
		_g_object_unref0 (self->priv->_configuration_intent);
		self->priv->_configuration_intent = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_models_steam_change_receipt_properties[PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_CONFIGURATION_INTENT_PROPERTY]);
	}
}

gchar*
proton_plus_models_steam_change_receipt_get_deduplication_key (ProtonPlusModelsSteamChangeReceipt* self)
{
	gchar* result;
	gchar* _tmp0_ = NULL;
	ProtonPlusModelsSteamConfigurationIntent* _tmp1_;
	gchar* identity = NULL;
	gchar* _tmp5_;
	ProtonPlusModelsSteamRestartTarget* _tmp6_;
	const gchar* _tmp7_;
	const gchar* _tmp8_;
	const gchar* _tmp9_;
	gchar* _tmp10_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp1_ = self->priv->_configuration_intent;
	if (_tmp1_ != NULL) {
		gchar* _tmp2_;
		_tmp2_ = g_strdup ("configuration-intent");
		_g_free0 (_tmp0_);
		_tmp0_ = _tmp2_;
	} else {
		ProtonPlusModelsSteamChangeKind _tmp3_;
		gchar* _tmp4_;
		_tmp3_ = self->priv->_kind;
		_tmp4_ = proton_plus_models_steam_change_receipt_kind_to_identifier (_tmp3_);
		_g_free0 (_tmp0_);
		_tmp0_ = _tmp4_;
	}
	_tmp5_ = _tmp0_;
	_tmp0_ = NULL;
	identity = _tmp5_;
	_tmp6_ = self->priv->_target;
	_tmp7_ = proton_plus_models_steam_restart_target_get_id (_tmp6_);
	_tmp8_ = _tmp7_;
	_tmp9_ = self->priv->_resource_key;
	_tmp10_ = g_strdup_printf ("%s\u001f%s\u001f%s", _tmp8_, identity, _tmp9_);
	result = _tmp10_;
	_g_free0 (identity);
	_g_free0 (_tmp0_);
	return result;
}

static void
proton_plus_models_steam_change_receipt_class_init (ProtonPlusModelsSteamChangeReceiptClass * klass,
                                                    gpointer klass_data)
{
	proton_plus_models_steam_change_receipt_parent_class = g_type_class_peek_parent (klass);
	g_type_class_adjust_private_offset (klass, &ProtonPlusModelsSteamChangeReceipt_private_offset);
	G_OBJECT_CLASS (klass)->get_property = _vala_proton_plus_models_steam_change_receipt_get_property;
	G_OBJECT_CLASS (klass)->set_property = _vala_proton_plus_models_steam_change_receipt_set_property;
	G_OBJECT_CLASS (klass)->finalize = proton_plus_models_steam_change_receipt_finalize;
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_TARGET_PROPERTY, proton_plus_models_steam_change_receipt_properties[PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_TARGET_PROPERTY] = g_param_spec_object ("target", "target", "target", PROTON_PLUS_MODELS_TYPE_STEAM_RESTART_TARGET, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_KIND_PROPERTY, proton_plus_models_steam_change_receipt_properties[PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_KIND_PROPERTY] = g_param_spec_enum ("kind", "kind", "kind", PROTON_PLUS_MODELS_TYPE_STEAM_CHANGE_KIND, 0, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_RESTART_REQUIREMENT_PROPERTY, proton_plus_models_steam_change_receipt_properties[PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_RESTART_REQUIREMENT_PROPERTY] = g_param_spec_enum ("restart-requirement", "restart-requirement", "restart-requirement", PROTON_PLUS_MODELS_TYPE_STEAM_RESTART_REQUIREMENT, 0, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_RESOURCE_KEY_PROPERTY, proton_plus_models_steam_change_receipt_properties[PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_RESOURCE_KEY_PROPERTY] = g_param_spec_string ("resource-key", "resource-key", "resource-key", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_SUBJECT_ID_PROPERTY, proton_plus_models_steam_change_receipt_properties[PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_SUBJECT_ID_PROPERTY] = g_param_spec_string ("subject-id", "subject-id", "subject-id", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_SUBJECT_LABEL_PROPERTY, proton_plus_models_steam_change_receipt_properties[PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_SUBJECT_LABEL_PROPERTY] = g_param_spec_string ("subject-label", "subject-label", "subject-label", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_CHANGED_AT_PROPERTY, proton_plus_models_steam_change_receipt_properties[PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_CHANGED_AT_PROPERTY] = g_param_spec_string ("changed-at", "changed-at", "changed-at", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_CONFIGURATION_INTENT_PROPERTY, proton_plus_models_steam_change_receipt_properties[PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_CONFIGURATION_INTENT_PROPERTY] = g_param_spec_object ("configuration-intent", "configuration-intent", "configuration-intent", PROTON_PLUS_MODELS_TYPE_STEAM_CONFIGURATION_INTENT, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_DEDUPLICATION_KEY_PROPERTY, proton_plus_models_steam_change_receipt_properties[PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_DEDUPLICATION_KEY_PROPERTY] = g_param_spec_string ("deduplication-key", "deduplication-key", "deduplication-key", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
}

static void
proton_plus_models_steam_change_receipt_instance_init (ProtonPlusModelsSteamChangeReceipt * self,
                                                       gpointer klass)
{
	self->priv = proton_plus_models_steam_change_receipt_get_instance_private (self);
}

static void
proton_plus_models_steam_change_receipt_finalize (GObject * obj)
{
	ProtonPlusModelsSteamChangeReceipt * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, PROTON_PLUS_MODELS_TYPE_STEAM_CHANGE_RECEIPT, ProtonPlusModelsSteamChangeReceipt);
	_g_object_unref0 (self->priv->_target);
	_g_free0 (self->priv->_resource_key);
	_g_free0 (self->priv->_subject_id);
	_g_free0 (self->priv->_subject_label);
	_g_free0 (self->priv->_changed_at);
	_g_object_unref0 (self->priv->_configuration_intent);
	G_OBJECT_CLASS (proton_plus_models_steam_change_receipt_parent_class)->finalize (obj);
}

static GType
proton_plus_models_steam_change_receipt_get_type_once (void)
{
	static const GTypeInfo g_define_type_info = { sizeof (ProtonPlusModelsSteamChangeReceiptClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) proton_plus_models_steam_change_receipt_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (ProtonPlusModelsSteamChangeReceipt), 0, (GInstanceInitFunc) proton_plus_models_steam_change_receipt_instance_init, NULL };
	GType proton_plus_models_steam_change_receipt_type_id;
	proton_plus_models_steam_change_receipt_type_id = g_type_register_static (G_TYPE_OBJECT, "ProtonPlusModelsSteamChangeReceipt", &g_define_type_info, 0);
	ProtonPlusModelsSteamChangeReceipt_private_offset = g_type_add_instance_private (proton_plus_models_steam_change_receipt_type_id, sizeof (ProtonPlusModelsSteamChangeReceiptPrivate));
	return proton_plus_models_steam_change_receipt_type_id;
}

GType
proton_plus_models_steam_change_receipt_get_type (void)
{
	static volatile gsize proton_plus_models_steam_change_receipt_type_id__once = 0;
	if (g_once_init_enter (&proton_plus_models_steam_change_receipt_type_id__once)) {
		GType proton_plus_models_steam_change_receipt_type_id;
		proton_plus_models_steam_change_receipt_type_id = proton_plus_models_steam_change_receipt_get_type_once ();
		g_once_init_leave (&proton_plus_models_steam_change_receipt_type_id__once, proton_plus_models_steam_change_receipt_type_id);
	}
	return proton_plus_models_steam_change_receipt_type_id__once;
}

static void
_vala_proton_plus_models_steam_change_receipt_get_property (GObject * object,
                                                            guint property_id,
                                                            GValue * value,
                                                            GParamSpec * pspec)
{
	ProtonPlusModelsSteamChangeReceipt * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PROTON_PLUS_MODELS_TYPE_STEAM_CHANGE_RECEIPT, ProtonPlusModelsSteamChangeReceipt);
	switch (property_id) {
		case PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_TARGET_PROPERTY:
		g_value_set_object (value, proton_plus_models_steam_change_receipt_get_target (self));
		break;
		case PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_KIND_PROPERTY:
		g_value_set_enum (value, proton_plus_models_steam_change_receipt_get_kind (self));
		break;
		case PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_RESTART_REQUIREMENT_PROPERTY:
		g_value_set_enum (value, proton_plus_models_steam_change_receipt_get_restart_requirement (self));
		break;
		case PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_RESOURCE_KEY_PROPERTY:
		g_value_set_string (value, proton_plus_models_steam_change_receipt_get_resource_key (self));
		break;
		case PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_SUBJECT_ID_PROPERTY:
		g_value_set_string (value, proton_plus_models_steam_change_receipt_get_subject_id (self));
		break;
		case PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_SUBJECT_LABEL_PROPERTY:
		g_value_set_string (value, proton_plus_models_steam_change_receipt_get_subject_label (self));
		break;
		case PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_CHANGED_AT_PROPERTY:
		g_value_set_string (value, proton_plus_models_steam_change_receipt_get_changed_at (self));
		break;
		case PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_CONFIGURATION_INTENT_PROPERTY:
		g_value_set_object (value, proton_plus_models_steam_change_receipt_get_configuration_intent (self));
		break;
		case PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_DEDUPLICATION_KEY_PROPERTY:
		g_value_take_string (value, proton_plus_models_steam_change_receipt_get_deduplication_key (self));
		break;
		default:
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
		break;
	}
}

static void
_vala_proton_plus_models_steam_change_receipt_set_property (GObject * object,
                                                            guint property_id,
                                                            const GValue * value,
                                                            GParamSpec * pspec)
{
	ProtonPlusModelsSteamChangeReceipt * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PROTON_PLUS_MODELS_TYPE_STEAM_CHANGE_RECEIPT, ProtonPlusModelsSteamChangeReceipt);
	switch (property_id) {
		case PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_TARGET_PROPERTY:
		proton_plus_models_steam_change_receipt_set_target (self, g_value_get_object (value));
		break;
		case PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_KIND_PROPERTY:
		proton_plus_models_steam_change_receipt_set_kind (self, g_value_get_enum (value));
		break;
		case PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_RESTART_REQUIREMENT_PROPERTY:
		proton_plus_models_steam_change_receipt_set_restart_requirement (self, g_value_get_enum (value));
		break;
		case PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_RESOURCE_KEY_PROPERTY:
		proton_plus_models_steam_change_receipt_set_resource_key (self, g_value_get_string (value));
		break;
		case PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_SUBJECT_ID_PROPERTY:
		proton_plus_models_steam_change_receipt_set_subject_id (self, g_value_get_string (value));
		break;
		case PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_SUBJECT_LABEL_PROPERTY:
		proton_plus_models_steam_change_receipt_set_subject_label (self, g_value_get_string (value));
		break;
		case PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_CHANGED_AT_PROPERTY:
		proton_plus_models_steam_change_receipt_set_changed_at (self, g_value_get_string (value));
		break;
		case PROTON_PLUS_MODELS_STEAM_CHANGE_RECEIPT_CONFIGURATION_INTENT_PROPERTY:
		proton_plus_models_steam_change_receipt_set_configuration_intent (self, g_value_get_object (value));
		break;
		default:
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
		break;
	}
}

static inline gpointer
proton_plus_models_steam_session_identity_get_instance_private (ProtonPlusModelsSteamSessionIdentity* self)
{
	return G_STRUCT_MEMBER_P (self, ProtonPlusModelsSteamSessionIdentity_private_offset);
}

ProtonPlusModelsSteamSessionIdentity*
proton_plus_models_steam_session_identity_construct (GType object_type,
                                                     const gchar* boot_id,
                                                     gint64 process_start_ticks,
                                                     gint process_pid,
                                                     const gchar* flatpak_instance_id)
{
	ProtonPlusModelsSteamSessionIdentity * self = NULL;
	self = (ProtonPlusModelsSteamSessionIdentity*) g_object_new (object_type, NULL);
	proton_plus_models_steam_session_identity_set_boot_id (self, boot_id);
	proton_plus_models_steam_session_identity_set_process_start_ticks (self, process_start_ticks);
	proton_plus_models_steam_session_identity_set_process_pid (self, process_pid);
	proton_plus_models_steam_session_identity_set_flatpak_instance_id (self, flatpak_instance_id);
	return self;
}

ProtonPlusModelsSteamSessionIdentity*
proton_plus_models_steam_session_identity_new (const gchar* boot_id,
                                               gint64 process_start_ticks,
                                               gint process_pid,
                                               const gchar* flatpak_instance_id)
{
	return proton_plus_models_steam_session_identity_construct (PROTON_PLUS_MODELS_TYPE_STEAM_SESSION_IDENTITY, boot_id, process_start_ticks, process_pid, flatpak_instance_id);
}

gboolean
proton_plus_models_steam_session_identity_equals (ProtonPlusModelsSteamSessionIdentity* self,
                                                  ProtonPlusModelsSteamSessionIdentity* other)
{
	gboolean _tmp0_ = FALSE;
	const gchar* _tmp1_;
	gboolean _tmp5_ = FALSE;
	gboolean _tmp6_ = FALSE;
	const gchar* _tmp7_;
	const gchar* _tmp8_;
	gboolean result;
	g_return_val_if_fail (self != NULL, FALSE);
	g_return_val_if_fail (other != NULL, FALSE);
	_tmp1_ = self->priv->_flatpak_instance_id;
	if (_tmp1_ != NULL) {
		_tmp0_ = TRUE;
	} else {
		const gchar* _tmp2_;
		_tmp2_ = other->priv->_flatpak_instance_id;
		_tmp0_ = _tmp2_ != NULL;
	}
	if (_tmp0_) {
		const gchar* _tmp3_;
		const gchar* _tmp4_;
		_tmp3_ = self->priv->_flatpak_instance_id;
		_tmp4_ = other->priv->_flatpak_instance_id;
		result = g_strcmp0 (_tmp3_, _tmp4_) == 0;
		return result;
	}
	_tmp7_ = self->priv->_boot_id;
	_tmp8_ = other->priv->_boot_id;
	if (g_strcmp0 (_tmp7_, _tmp8_) == 0) {
		gint64 _tmp9_;
		gint64 _tmp10_;
		_tmp9_ = self->priv->_process_start_ticks;
		_tmp10_ = other->priv->_process_start_ticks;
		_tmp6_ = _tmp9_ == _tmp10_;
	} else {
		_tmp6_ = FALSE;
	}
	if (_tmp6_) {
		gint _tmp11_;
		gint _tmp12_;
		_tmp11_ = self->priv->_process_pid;
		_tmp12_ = other->priv->_process_pid;
		_tmp5_ = _tmp11_ == _tmp12_;
	} else {
		_tmp5_ = FALSE;
	}
	result = _tmp5_;
	return result;
}

const gchar*
proton_plus_models_steam_session_identity_get_boot_id (ProtonPlusModelsSteamSessionIdentity* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_boot_id;
	result = _tmp0_;
	return result;
}

static void
proton_plus_models_steam_session_identity_set_boot_id (ProtonPlusModelsSteamSessionIdentity* self,
                                                       const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_models_steam_session_identity_get_boot_id (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_boot_id);
		self->priv->_boot_id = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_models_steam_session_identity_properties[PROTON_PLUS_MODELS_STEAM_SESSION_IDENTITY_BOOT_ID_PROPERTY]);
	}
}

gint64
proton_plus_models_steam_session_identity_get_process_start_ticks (ProtonPlusModelsSteamSessionIdentity* self)
{
	gint64 result;
	g_return_val_if_fail (self != NULL, -1LL);
	result = self->priv->_process_start_ticks;
	return result;
}

static void
proton_plus_models_steam_session_identity_set_process_start_ticks (ProtonPlusModelsSteamSessionIdentity* self,
                                                                   gint64 value)
{
	gint64 old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_models_steam_session_identity_get_process_start_ticks (self);
	if (old_value != value) {
		self->priv->_process_start_ticks = value;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_models_steam_session_identity_properties[PROTON_PLUS_MODELS_STEAM_SESSION_IDENTITY_PROCESS_START_TICKS_PROPERTY]);
	}
}

gint
proton_plus_models_steam_session_identity_get_process_pid (ProtonPlusModelsSteamSessionIdentity* self)
{
	gint result;
	g_return_val_if_fail (self != NULL, -1);
	result = self->priv->_process_pid;
	return result;
}

static void
proton_plus_models_steam_session_identity_set_process_pid (ProtonPlusModelsSteamSessionIdentity* self,
                                                           gint value)
{
	gint old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_models_steam_session_identity_get_process_pid (self);
	if (old_value != value) {
		self->priv->_process_pid = value;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_models_steam_session_identity_properties[PROTON_PLUS_MODELS_STEAM_SESSION_IDENTITY_PROCESS_PID_PROPERTY]);
	}
}

const gchar*
proton_plus_models_steam_session_identity_get_flatpak_instance_id (ProtonPlusModelsSteamSessionIdentity* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_flatpak_instance_id;
	result = _tmp0_;
	return result;
}

static void
proton_plus_models_steam_session_identity_set_flatpak_instance_id (ProtonPlusModelsSteamSessionIdentity* self,
                                                                   const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_models_steam_session_identity_get_flatpak_instance_id (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_flatpak_instance_id);
		self->priv->_flatpak_instance_id = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_models_steam_session_identity_properties[PROTON_PLUS_MODELS_STEAM_SESSION_IDENTITY_FLATPAK_INSTANCE_ID_PROPERTY]);
	}
}

static void
proton_plus_models_steam_session_identity_class_init (ProtonPlusModelsSteamSessionIdentityClass * klass,
                                                      gpointer klass_data)
{
	proton_plus_models_steam_session_identity_parent_class = g_type_class_peek_parent (klass);
	g_type_class_adjust_private_offset (klass, &ProtonPlusModelsSteamSessionIdentity_private_offset);
	G_OBJECT_CLASS (klass)->get_property = _vala_proton_plus_models_steam_session_identity_get_property;
	G_OBJECT_CLASS (klass)->set_property = _vala_proton_plus_models_steam_session_identity_set_property;
	G_OBJECT_CLASS (klass)->finalize = proton_plus_models_steam_session_identity_finalize;
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_MODELS_STEAM_SESSION_IDENTITY_BOOT_ID_PROPERTY, proton_plus_models_steam_session_identity_properties[PROTON_PLUS_MODELS_STEAM_SESSION_IDENTITY_BOOT_ID_PROPERTY] = g_param_spec_string ("boot-id", "boot-id", "boot-id", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_MODELS_STEAM_SESSION_IDENTITY_PROCESS_START_TICKS_PROPERTY, proton_plus_models_steam_session_identity_properties[PROTON_PLUS_MODELS_STEAM_SESSION_IDENTITY_PROCESS_START_TICKS_PROPERTY] = g_param_spec_int64 ("process-start-ticks", "process-start-ticks", "process-start-ticks", G_MININT64, G_MAXINT64, 0, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_MODELS_STEAM_SESSION_IDENTITY_PROCESS_PID_PROPERTY, proton_plus_models_steam_session_identity_properties[PROTON_PLUS_MODELS_STEAM_SESSION_IDENTITY_PROCESS_PID_PROPERTY] = g_param_spec_int ("process-pid", "process-pid", "process-pid", G_MININT, G_MAXINT, 0, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_MODELS_STEAM_SESSION_IDENTITY_FLATPAK_INSTANCE_ID_PROPERTY, proton_plus_models_steam_session_identity_properties[PROTON_PLUS_MODELS_STEAM_SESSION_IDENTITY_FLATPAK_INSTANCE_ID_PROPERTY] = g_param_spec_string ("flatpak-instance-id", "flatpak-instance-id", "flatpak-instance-id", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
}

static void
proton_plus_models_steam_session_identity_instance_init (ProtonPlusModelsSteamSessionIdentity * self,
                                                         gpointer klass)
{
	self->priv = proton_plus_models_steam_session_identity_get_instance_private (self);
}

static void
proton_plus_models_steam_session_identity_finalize (GObject * obj)
{
	ProtonPlusModelsSteamSessionIdentity * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, PROTON_PLUS_MODELS_TYPE_STEAM_SESSION_IDENTITY, ProtonPlusModelsSteamSessionIdentity);
	_g_free0 (self->priv->_boot_id);
	_g_free0 (self->priv->_flatpak_instance_id);
	G_OBJECT_CLASS (proton_plus_models_steam_session_identity_parent_class)->finalize (obj);
}

static GType
proton_plus_models_steam_session_identity_get_type_once (void)
{
	static const GTypeInfo g_define_type_info = { sizeof (ProtonPlusModelsSteamSessionIdentityClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) proton_plus_models_steam_session_identity_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (ProtonPlusModelsSteamSessionIdentity), 0, (GInstanceInitFunc) proton_plus_models_steam_session_identity_instance_init, NULL };
	GType proton_plus_models_steam_session_identity_type_id;
	proton_plus_models_steam_session_identity_type_id = g_type_register_static (G_TYPE_OBJECT, "ProtonPlusModelsSteamSessionIdentity", &g_define_type_info, 0);
	ProtonPlusModelsSteamSessionIdentity_private_offset = g_type_add_instance_private (proton_plus_models_steam_session_identity_type_id, sizeof (ProtonPlusModelsSteamSessionIdentityPrivate));
	return proton_plus_models_steam_session_identity_type_id;
}

GType
proton_plus_models_steam_session_identity_get_type (void)
{
	static volatile gsize proton_plus_models_steam_session_identity_type_id__once = 0;
	if (g_once_init_enter (&proton_plus_models_steam_session_identity_type_id__once)) {
		GType proton_plus_models_steam_session_identity_type_id;
		proton_plus_models_steam_session_identity_type_id = proton_plus_models_steam_session_identity_get_type_once ();
		g_once_init_leave (&proton_plus_models_steam_session_identity_type_id__once, proton_plus_models_steam_session_identity_type_id);
	}
	return proton_plus_models_steam_session_identity_type_id__once;
}

static void
_vala_proton_plus_models_steam_session_identity_get_property (GObject * object,
                                                              guint property_id,
                                                              GValue * value,
                                                              GParamSpec * pspec)
{
	ProtonPlusModelsSteamSessionIdentity * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PROTON_PLUS_MODELS_TYPE_STEAM_SESSION_IDENTITY, ProtonPlusModelsSteamSessionIdentity);
	switch (property_id) {
		case PROTON_PLUS_MODELS_STEAM_SESSION_IDENTITY_BOOT_ID_PROPERTY:
		g_value_set_string (value, proton_plus_models_steam_session_identity_get_boot_id (self));
		break;
		case PROTON_PLUS_MODELS_STEAM_SESSION_IDENTITY_PROCESS_START_TICKS_PROPERTY:
		g_value_set_int64 (value, proton_plus_models_steam_session_identity_get_process_start_ticks (self));
		break;
		case PROTON_PLUS_MODELS_STEAM_SESSION_IDENTITY_PROCESS_PID_PROPERTY:
		g_value_set_int (value, proton_plus_models_steam_session_identity_get_process_pid (self));
		break;
		case PROTON_PLUS_MODELS_STEAM_SESSION_IDENTITY_FLATPAK_INSTANCE_ID_PROPERTY:
		g_value_set_string (value, proton_plus_models_steam_session_identity_get_flatpak_instance_id (self));
		break;
		default:
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
		break;
	}
}

static void
_vala_proton_plus_models_steam_session_identity_set_property (GObject * object,
                                                              guint property_id,
                                                              const GValue * value,
                                                              GParamSpec * pspec)
{
	ProtonPlusModelsSteamSessionIdentity * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PROTON_PLUS_MODELS_TYPE_STEAM_SESSION_IDENTITY, ProtonPlusModelsSteamSessionIdentity);
	switch (property_id) {
		case PROTON_PLUS_MODELS_STEAM_SESSION_IDENTITY_BOOT_ID_PROPERTY:
		proton_plus_models_steam_session_identity_set_boot_id (self, g_value_get_string (value));
		break;
		case PROTON_PLUS_MODELS_STEAM_SESSION_IDENTITY_PROCESS_START_TICKS_PROPERTY:
		proton_plus_models_steam_session_identity_set_process_start_ticks (self, g_value_get_int64 (value));
		break;
		case PROTON_PLUS_MODELS_STEAM_SESSION_IDENTITY_PROCESS_PID_PROPERTY:
		proton_plus_models_steam_session_identity_set_process_pid (self, g_value_get_int (value));
		break;
		case PROTON_PLUS_MODELS_STEAM_SESSION_IDENTITY_FLATPAK_INSTANCE_ID_PROPERTY:
		proton_plus_models_steam_session_identity_set_flatpak_instance_id (self, g_value_get_string (value));
		break;
		default:
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
		break;
	}
}

static inline gpointer
proton_plus_models_steam_restart_pending_record_get_instance_private (ProtonPlusModelsSteamRestartPendingRecord* self)
{
	return G_STRUCT_MEMBER_P (self, ProtonPlusModelsSteamRestartPendingRecord_private_offset);
}

ProtonPlusModelsSteamRestartPendingRecord*
proton_plus_models_steam_restart_pending_record_construct (GType object_type,
                                                           ProtonPlusModelsSteamChangeReceipt* receipt,
                                                           const gchar* first_recorded_at,
                                                           const gchar* last_updated_at,
                                                           guint occurrence_count,
                                                           ProtonPlusModelsSteamSessionIdentity* observed_session,
                                                           gboolean stop_observed)
{
	ProtonPlusModelsSteamRestartPendingRecord * self = NULL;
	g_return_val_if_fail (receipt != NULL, NULL);
	g_return_val_if_fail (first_recorded_at != NULL, NULL);
	g_return_val_if_fail (last_updated_at != NULL, NULL);
	self = (ProtonPlusModelsSteamRestartPendingRecord*) g_object_new (object_type, NULL);
	proton_plus_models_steam_restart_pending_record_set_receipt (self, receipt);
	proton_plus_models_steam_restart_pending_record_set_first_recorded_at (self, first_recorded_at);
	proton_plus_models_steam_restart_pending_record_set_last_updated_at (self, last_updated_at);
	proton_plus_models_steam_restart_pending_record_set_occurrence_count (self, occurrence_count);
	proton_plus_models_steam_restart_pending_record_set_observed_session (self, observed_session);
	proton_plus_models_steam_restart_pending_record_set_stop_observed (self, stop_observed);
	return self;
}

ProtonPlusModelsSteamRestartPendingRecord*
proton_plus_models_steam_restart_pending_record_new (ProtonPlusModelsSteamChangeReceipt* receipt,
                                                     const gchar* first_recorded_at,
                                                     const gchar* last_updated_at,
                                                     guint occurrence_count,
                                                     ProtonPlusModelsSteamSessionIdentity* observed_session,
                                                     gboolean stop_observed)
{
	return proton_plus_models_steam_restart_pending_record_construct (PROTON_PLUS_MODELS_TYPE_STEAM_RESTART_PENDING_RECORD, receipt, first_recorded_at, last_updated_at, occurrence_count, observed_session, stop_observed);
}

void
proton_plus_models_steam_restart_pending_record_update (ProtonPlusModelsSteamRestartPendingRecord* self,
                                                        ProtonPlusModelsSteamChangeReceipt* receipt,
                                                        ProtonPlusModelsSteamSessionIdentity* session)
{
	const gchar* _tmp0_;
	const gchar* _tmp1_;
	guint _tmp2_;
	gboolean _tmp3_ = FALSE;
	ProtonPlusModelsSteamSessionIdentity* _tmp4_;
	g_return_if_fail (self != NULL);
	g_return_if_fail (receipt != NULL);
	proton_plus_models_steam_restart_pending_record_set_receipt (self, receipt);
	_tmp0_ = proton_plus_models_steam_change_receipt_get_changed_at (receipt);
	_tmp1_ = _tmp0_;
	proton_plus_models_steam_restart_pending_record_set_last_updated_at (self, _tmp1_);
	_tmp2_ = self->priv->_occurrence_count;
	proton_plus_models_steam_restart_pending_record_set_occurrence_count (self, _tmp2_ + 1);
	_tmp4_ = self->priv->_observed_session;
	if (_tmp4_ == NULL) {
		_tmp3_ = session != NULL;
	} else {
		_tmp3_ = FALSE;
	}
	if (_tmp3_) {
		proton_plus_models_steam_restart_pending_record_set_observed_session (self, session);
	}
}

gboolean
proton_plus_models_steam_restart_pending_record_mark_stop_observed (ProtonPlusModelsSteamRestartPendingRecord* self)
{
	gboolean _tmp0_;
	gboolean result;
	g_return_val_if_fail (self != NULL, FALSE);
	_tmp0_ = self->priv->_stop_observed;
	if (_tmp0_) {
		result = FALSE;
		return result;
	}
	proton_plus_models_steam_restart_pending_record_set_stop_observed (self, TRUE);
	result = TRUE;
	return result;
}

ProtonPlusModelsSteamChangeReceipt*
proton_plus_models_steam_restart_pending_record_get_receipt (ProtonPlusModelsSteamRestartPendingRecord* self)
{
	ProtonPlusModelsSteamChangeReceipt* result;
	ProtonPlusModelsSteamChangeReceipt* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_receipt;
	result = _tmp0_;
	return result;
}

static void
proton_plus_models_steam_restart_pending_record_set_receipt (ProtonPlusModelsSteamRestartPendingRecord* self,
                                                             ProtonPlusModelsSteamChangeReceipt* value)
{
	ProtonPlusModelsSteamChangeReceipt* old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_models_steam_restart_pending_record_get_receipt (self);
	if (old_value != value) {
		ProtonPlusModelsSteamChangeReceipt* _tmp0_;
		_tmp0_ = _g_object_ref0 (value);
		_g_object_unref0 (self->priv->_receipt);
		self->priv->_receipt = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_models_steam_restart_pending_record_properties[PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_RECEIPT_PROPERTY]);
	}
}

const gchar*
proton_plus_models_steam_restart_pending_record_get_first_recorded_at (ProtonPlusModelsSteamRestartPendingRecord* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_first_recorded_at;
	result = _tmp0_;
	return result;
}

static void
proton_plus_models_steam_restart_pending_record_set_first_recorded_at (ProtonPlusModelsSteamRestartPendingRecord* self,
                                                                       const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_models_steam_restart_pending_record_get_first_recorded_at (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_first_recorded_at);
		self->priv->_first_recorded_at = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_models_steam_restart_pending_record_properties[PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_FIRST_RECORDED_AT_PROPERTY]);
	}
}

const gchar*
proton_plus_models_steam_restart_pending_record_get_last_updated_at (ProtonPlusModelsSteamRestartPendingRecord* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_last_updated_at;
	result = _tmp0_;
	return result;
}

static void
proton_plus_models_steam_restart_pending_record_set_last_updated_at (ProtonPlusModelsSteamRestartPendingRecord* self,
                                                                     const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_models_steam_restart_pending_record_get_last_updated_at (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_last_updated_at);
		self->priv->_last_updated_at = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_models_steam_restart_pending_record_properties[PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_LAST_UPDATED_AT_PROPERTY]);
	}
}

guint
proton_plus_models_steam_restart_pending_record_get_occurrence_count (ProtonPlusModelsSteamRestartPendingRecord* self)
{
	guint result;
	g_return_val_if_fail (self != NULL, 0U);
	result = self->priv->_occurrence_count;
	return result;
}

static void
proton_plus_models_steam_restart_pending_record_set_occurrence_count (ProtonPlusModelsSteamRestartPendingRecord* self,
                                                                      guint value)
{
	guint old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_models_steam_restart_pending_record_get_occurrence_count (self);
	if (old_value != value) {
		self->priv->_occurrence_count = value;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_models_steam_restart_pending_record_properties[PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_OCCURRENCE_COUNT_PROPERTY]);
	}
}

ProtonPlusModelsSteamSessionIdentity*
proton_plus_models_steam_restart_pending_record_get_observed_session (ProtonPlusModelsSteamRestartPendingRecord* self)
{
	ProtonPlusModelsSteamSessionIdentity* result;
	ProtonPlusModelsSteamSessionIdentity* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_observed_session;
	result = _tmp0_;
	return result;
}

static void
proton_plus_models_steam_restart_pending_record_set_observed_session (ProtonPlusModelsSteamRestartPendingRecord* self,
                                                                      ProtonPlusModelsSteamSessionIdentity* value)
{
	ProtonPlusModelsSteamSessionIdentity* old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_models_steam_restart_pending_record_get_observed_session (self);
	if (old_value != value) {
		ProtonPlusModelsSteamSessionIdentity* _tmp0_;
		_tmp0_ = _g_object_ref0 (value);
		_g_object_unref0 (self->priv->_observed_session);
		self->priv->_observed_session = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_models_steam_restart_pending_record_properties[PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_OBSERVED_SESSION_PROPERTY]);
	}
}

gboolean
proton_plus_models_steam_restart_pending_record_get_stop_observed (ProtonPlusModelsSteamRestartPendingRecord* self)
{
	gboolean result;
	g_return_val_if_fail (self != NULL, FALSE);
	result = self->priv->_stop_observed;
	return result;
}

static void
proton_plus_models_steam_restart_pending_record_set_stop_observed (ProtonPlusModelsSteamRestartPendingRecord* self,
                                                                   gboolean value)
{
	gboolean old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_models_steam_restart_pending_record_get_stop_observed (self);
	if (old_value != value) {
		self->priv->_stop_observed = value;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_models_steam_restart_pending_record_properties[PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_STOP_OBSERVED_PROPERTY]);
	}
}

static void
proton_plus_models_steam_restart_pending_record_class_init (ProtonPlusModelsSteamRestartPendingRecordClass * klass,
                                                            gpointer klass_data)
{
	proton_plus_models_steam_restart_pending_record_parent_class = g_type_class_peek_parent (klass);
	g_type_class_adjust_private_offset (klass, &ProtonPlusModelsSteamRestartPendingRecord_private_offset);
	G_OBJECT_CLASS (klass)->get_property = _vala_proton_plus_models_steam_restart_pending_record_get_property;
	G_OBJECT_CLASS (klass)->set_property = _vala_proton_plus_models_steam_restart_pending_record_set_property;
	G_OBJECT_CLASS (klass)->finalize = proton_plus_models_steam_restart_pending_record_finalize;
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_RECEIPT_PROPERTY, proton_plus_models_steam_restart_pending_record_properties[PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_RECEIPT_PROPERTY] = g_param_spec_object ("receipt", "receipt", "receipt", PROTON_PLUS_MODELS_TYPE_STEAM_CHANGE_RECEIPT, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_FIRST_RECORDED_AT_PROPERTY, proton_plus_models_steam_restart_pending_record_properties[PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_FIRST_RECORDED_AT_PROPERTY] = g_param_spec_string ("first-recorded-at", "first-recorded-at", "first-recorded-at", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_LAST_UPDATED_AT_PROPERTY, proton_plus_models_steam_restart_pending_record_properties[PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_LAST_UPDATED_AT_PROPERTY] = g_param_spec_string ("last-updated-at", "last-updated-at", "last-updated-at", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_OCCURRENCE_COUNT_PROPERTY, proton_plus_models_steam_restart_pending_record_properties[PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_OCCURRENCE_COUNT_PROPERTY] = g_param_spec_uint ("occurrence-count", "occurrence-count", "occurrence-count", 0, G_MAXUINT, 0U, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_OBSERVED_SESSION_PROPERTY, proton_plus_models_steam_restart_pending_record_properties[PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_OBSERVED_SESSION_PROPERTY] = g_param_spec_object ("observed-session", "observed-session", "observed-session", PROTON_PLUS_MODELS_TYPE_STEAM_SESSION_IDENTITY, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_STOP_OBSERVED_PROPERTY, proton_plus_models_steam_restart_pending_record_properties[PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_STOP_OBSERVED_PROPERTY] = g_param_spec_boolean ("stop-observed", "stop-observed", "stop-observed", FALSE, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
}

static void
proton_plus_models_steam_restart_pending_record_instance_init (ProtonPlusModelsSteamRestartPendingRecord * self,
                                                               gpointer klass)
{
	self->priv = proton_plus_models_steam_restart_pending_record_get_instance_private (self);
}

static void
proton_plus_models_steam_restart_pending_record_finalize (GObject * obj)
{
	ProtonPlusModelsSteamRestartPendingRecord * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, PROTON_PLUS_MODELS_TYPE_STEAM_RESTART_PENDING_RECORD, ProtonPlusModelsSteamRestartPendingRecord);
	_g_object_unref0 (self->priv->_receipt);
	_g_free0 (self->priv->_first_recorded_at);
	_g_free0 (self->priv->_last_updated_at);
	_g_object_unref0 (self->priv->_observed_session);
	G_OBJECT_CLASS (proton_plus_models_steam_restart_pending_record_parent_class)->finalize (obj);
}

static GType
proton_plus_models_steam_restart_pending_record_get_type_once (void)
{
	static const GTypeInfo g_define_type_info = { sizeof (ProtonPlusModelsSteamRestartPendingRecordClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) proton_plus_models_steam_restart_pending_record_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (ProtonPlusModelsSteamRestartPendingRecord), 0, (GInstanceInitFunc) proton_plus_models_steam_restart_pending_record_instance_init, NULL };
	GType proton_plus_models_steam_restart_pending_record_type_id;
	proton_plus_models_steam_restart_pending_record_type_id = g_type_register_static (G_TYPE_OBJECT, "ProtonPlusModelsSteamRestartPendingRecord", &g_define_type_info, 0);
	ProtonPlusModelsSteamRestartPendingRecord_private_offset = g_type_add_instance_private (proton_plus_models_steam_restart_pending_record_type_id, sizeof (ProtonPlusModelsSteamRestartPendingRecordPrivate));
	return proton_plus_models_steam_restart_pending_record_type_id;
}

GType
proton_plus_models_steam_restart_pending_record_get_type (void)
{
	static volatile gsize proton_plus_models_steam_restart_pending_record_type_id__once = 0;
	if (g_once_init_enter (&proton_plus_models_steam_restart_pending_record_type_id__once)) {
		GType proton_plus_models_steam_restart_pending_record_type_id;
		proton_plus_models_steam_restart_pending_record_type_id = proton_plus_models_steam_restart_pending_record_get_type_once ();
		g_once_init_leave (&proton_plus_models_steam_restart_pending_record_type_id__once, proton_plus_models_steam_restart_pending_record_type_id);
	}
	return proton_plus_models_steam_restart_pending_record_type_id__once;
}

static void
_vala_proton_plus_models_steam_restart_pending_record_get_property (GObject * object,
                                                                    guint property_id,
                                                                    GValue * value,
                                                                    GParamSpec * pspec)
{
	ProtonPlusModelsSteamRestartPendingRecord * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PROTON_PLUS_MODELS_TYPE_STEAM_RESTART_PENDING_RECORD, ProtonPlusModelsSteamRestartPendingRecord);
	switch (property_id) {
		case PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_RECEIPT_PROPERTY:
		g_value_set_object (value, proton_plus_models_steam_restart_pending_record_get_receipt (self));
		break;
		case PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_FIRST_RECORDED_AT_PROPERTY:
		g_value_set_string (value, proton_plus_models_steam_restart_pending_record_get_first_recorded_at (self));
		break;
		case PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_LAST_UPDATED_AT_PROPERTY:
		g_value_set_string (value, proton_plus_models_steam_restart_pending_record_get_last_updated_at (self));
		break;
		case PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_OCCURRENCE_COUNT_PROPERTY:
		g_value_set_uint (value, proton_plus_models_steam_restart_pending_record_get_occurrence_count (self));
		break;
		case PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_OBSERVED_SESSION_PROPERTY:
		g_value_set_object (value, proton_plus_models_steam_restart_pending_record_get_observed_session (self));
		break;
		case PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_STOP_OBSERVED_PROPERTY:
		g_value_set_boolean (value, proton_plus_models_steam_restart_pending_record_get_stop_observed (self));
		break;
		default:
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
		break;
	}
}

static void
_vala_proton_plus_models_steam_restart_pending_record_set_property (GObject * object,
                                                                    guint property_id,
                                                                    const GValue * value,
                                                                    GParamSpec * pspec)
{
	ProtonPlusModelsSteamRestartPendingRecord * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PROTON_PLUS_MODELS_TYPE_STEAM_RESTART_PENDING_RECORD, ProtonPlusModelsSteamRestartPendingRecord);
	switch (property_id) {
		case PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_RECEIPT_PROPERTY:
		proton_plus_models_steam_restart_pending_record_set_receipt (self, g_value_get_object (value));
		break;
		case PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_FIRST_RECORDED_AT_PROPERTY:
		proton_plus_models_steam_restart_pending_record_set_first_recorded_at (self, g_value_get_string (value));
		break;
		case PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_LAST_UPDATED_AT_PROPERTY:
		proton_plus_models_steam_restart_pending_record_set_last_updated_at (self, g_value_get_string (value));
		break;
		case PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_OCCURRENCE_COUNT_PROPERTY:
		proton_plus_models_steam_restart_pending_record_set_occurrence_count (self, g_value_get_uint (value));
		break;
		case PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_OBSERVED_SESSION_PROPERTY:
		proton_plus_models_steam_restart_pending_record_set_observed_session (self, g_value_get_object (value));
		break;
		case PROTON_PLUS_MODELS_STEAM_RESTART_PENDING_RECORD_STOP_OBSERVED_PROPERTY:
		proton_plus_models_steam_restart_pending_record_set_stop_observed (self, g_value_get_boolean (value));
		break;
		default:
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
		break;
	}
}

static inline gpointer
_vala_memdup2 (gconstpointer mem,
               gsize byte_size)
{
	gpointer new_mem;
	if (mem && byte_size != 0) {
		new_mem = g_malloc (byte_size);
		memcpy (new_mem, mem, byte_size);
	} else {
		new_mem = NULL;
	}
	return new_mem;
}

