/* steam-tinker-launch-context.c generated by valac 0.56.19, the Vala compiler
 * generated from steam-tinker-launch-context.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_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_0_PROPERTY,
	PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_HOME_LOCATION_PROPERTY,
	PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_BASE_LOCATION_PROPERTY,
	PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_BINARY_LOCATION_PROPERTY,
	PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_META_LOCATION_PROPERTY,
	PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LINK_PARENT_LOCATION_PROPERTY,
	PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LINK_LOCATION_PROPERTY,
	PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_CONFIG_LOCATION_PROPERTY,
	PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_MANUAL_REMOVE_LOCATION_PROPERTY,
	PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_COMPAT_LOCATION_PROPERTY,
	PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LATEST_DATE_PROPERTY,
	PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LATEST_HASH_PROPERTY,
	PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LOCAL_DATE_PROPERTY,
	PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LOCAL_HASH_PROPERTY,
	PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_REMOVE_CONFIG_PROPERTY,
	PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_USER_REQUESTED_REMOVAL_PROPERTY,
	PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_NUM_PROPERTIES
};
static GParamSpec* proton_plus_services_steam_tinker_launch_context_properties[PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_NUM_PROPERTIES];
#define _g_free0(var) (var = (g_free (var), NULL))

struct _ProtonPlusServicesSteamTinkerLaunchContextPrivate {
	gchar* _home_location;
	gchar* _base_location;
	gchar* _binary_location;
	gchar* _meta_location;
	gchar* _link_parent_location;
	gchar* _link_location;
	gchar* _config_location;
	gchar* _manual_remove_location;
	gchar* _compat_location;
	gchar* _latest_date;
	gchar* _latest_hash;
	gchar* _local_date;
	gchar* _local_hash;
	gboolean _remove_config;
	gboolean _user_requested_removal;
};

static gint ProtonPlusServicesSteamTinkerLaunchContext_private_offset;
static gpointer proton_plus_services_steam_tinker_launch_context_parent_class = NULL;

static void _g_free0_ (gpointer var);
static inline void _g_list_free__g_free0_ (GList* self);
VALA_EXTERN ProtonPlusServicesSteamTinkerLaunchContext* proton_plus_services_steam_tinker_launch_context_new (ProtonPlusModelsTool* tool,
                                                                                                  const gchar* home_override);
VALA_EXTERN ProtonPlusServicesSteamTinkerLaunchContext* proton_plus_services_steam_tinker_launch_context_construct (GType object_type,
                                                                                                        ProtonPlusModelsTool* tool,
                                                                                                        const gchar* home_override);
static void proton_plus_services_steam_tinker_launch_context_set_home_location (ProtonPlusServicesSteamTinkerLaunchContext* self,
                                                                         const gchar* value);
static void proton_plus_services_steam_tinker_launch_context_set_compat_location (ProtonPlusServicesSteamTinkerLaunchContext* self,
                                                                           const gchar* value);
VALA_EXTERN const gchar* proton_plus_services_steam_tinker_launch_context_get_home_location (ProtonPlusServicesSteamTinkerLaunchContext* self);
static void proton_plus_services_steam_tinker_launch_context_set_base_location (ProtonPlusServicesSteamTinkerLaunchContext* self,
                                                                         const gchar* value);
static void proton_plus_services_steam_tinker_launch_context_set_manual_remove_location (ProtonPlusServicesSteamTinkerLaunchContext* self,
                                                                                  const gchar* value);
VALA_EXTERN const gchar* proton_plus_services_steam_tinker_launch_context_get_base_location (ProtonPlusServicesSteamTinkerLaunchContext* self);
static void proton_plus_services_steam_tinker_launch_context_set_binary_location (ProtonPlusServicesSteamTinkerLaunchContext* self,
                                                                           const gchar* value);
static void proton_plus_services_steam_tinker_launch_context_set_meta_location (ProtonPlusServicesSteamTinkerLaunchContext* self,
                                                                         const gchar* value);
static void proton_plus_services_steam_tinker_launch_context_set_link_parent_location (ProtonPlusServicesSteamTinkerLaunchContext* self,
                                                                                const gchar* value);
VALA_EXTERN const gchar* proton_plus_services_steam_tinker_launch_context_get_link_parent_location (ProtonPlusServicesSteamTinkerLaunchContext* self);
static void proton_plus_services_steam_tinker_launch_context_set_link_location (ProtonPlusServicesSteamTinkerLaunchContext* self,
                                                                         const gchar* value);
static void proton_plus_services_steam_tinker_launch_context_set_config_location (ProtonPlusServicesSteamTinkerLaunchContext* self,
                                                                           const gchar* value);
VALA_EXTERN const gchar* proton_plus_services_steam_tinker_launch_context_get_binary_location (ProtonPlusServicesSteamTinkerLaunchContext* self);
VALA_EXTERN const gchar* proton_plus_services_steam_tinker_launch_context_get_meta_location (ProtonPlusServicesSteamTinkerLaunchContext* self);
VALA_EXTERN const gchar* proton_plus_services_steam_tinker_launch_context_get_link_location (ProtonPlusServicesSteamTinkerLaunchContext* self);
VALA_EXTERN const gchar* proton_plus_services_steam_tinker_launch_context_get_config_location (ProtonPlusServicesSteamTinkerLaunchContext* self);
VALA_EXTERN const gchar* proton_plus_services_steam_tinker_launch_context_get_manual_remove_location (ProtonPlusServicesSteamTinkerLaunchContext* self);
VALA_EXTERN const gchar* proton_plus_services_steam_tinker_launch_context_get_compat_location (ProtonPlusServicesSteamTinkerLaunchContext* self);
VALA_EXTERN const gchar* proton_plus_services_steam_tinker_launch_context_get_latest_date (ProtonPlusServicesSteamTinkerLaunchContext* self);
VALA_EXTERN void proton_plus_services_steam_tinker_launch_context_set_latest_date (ProtonPlusServicesSteamTinkerLaunchContext* self,
                                                                       const gchar* value);
VALA_EXTERN const gchar* proton_plus_services_steam_tinker_launch_context_get_latest_hash (ProtonPlusServicesSteamTinkerLaunchContext* self);
VALA_EXTERN void proton_plus_services_steam_tinker_launch_context_set_latest_hash (ProtonPlusServicesSteamTinkerLaunchContext* self,
                                                                       const gchar* value);
VALA_EXTERN const gchar* proton_plus_services_steam_tinker_launch_context_get_local_date (ProtonPlusServicesSteamTinkerLaunchContext* self);
VALA_EXTERN void proton_plus_services_steam_tinker_launch_context_set_local_date (ProtonPlusServicesSteamTinkerLaunchContext* self,
                                                                      const gchar* value);
VALA_EXTERN const gchar* proton_plus_services_steam_tinker_launch_context_get_local_hash (ProtonPlusServicesSteamTinkerLaunchContext* self);
VALA_EXTERN void proton_plus_services_steam_tinker_launch_context_set_local_hash (ProtonPlusServicesSteamTinkerLaunchContext* self,
                                                                      const gchar* value);
static void proton_plus_services_steam_tinker_launch_context_finalize (GObject * obj);
static GType proton_plus_services_steam_tinker_launch_context_get_type_once (void);
static void _vala_proton_plus_services_steam_tinker_launch_context_get_property (GObject * object,
                                                                          guint property_id,
                                                                          GValue * value,
                                                                          GParamSpec * pspec);
static void _vala_proton_plus_services_steam_tinker_launch_context_set_property (GObject * object,
                                                                          guint property_id,
                                                                          const GValue * value,
                                                                          GParamSpec * pspec);
static inline gpointer _vala_memdup2 (gconstpointer mem,
                        gsize byte_size);

static inline gpointer
proton_plus_services_steam_tinker_launch_context_get_instance_private (ProtonPlusServicesSteamTinkerLaunchContext* self)
{
	return G_STRUCT_MEMBER_P (self, ProtonPlusServicesSteamTinkerLaunchContext_private_offset);
}

static void
_g_free0_ (gpointer var)
{
	var = (g_free (var), NULL);
}

static inline void
_g_list_free__g_free0_ (GList* self)
{
	g_list_free_full (self, (GDestroyNotify) _g_free0_);
}

ProtonPlusServicesSteamTinkerLaunchContext*
proton_plus_services_steam_tinker_launch_context_construct (GType object_type,
                                                            ProtonPlusModelsTool* tool,
                                                            const gchar* home_override)
{
	ProtonPlusServicesSteamTinkerLaunchContext * self = NULL;
	const gchar* _tmp0_ = NULL;
	ProtonPlusModelsGroup* _tmp2_;
	ProtonPlusModelsGroup* _tmp3_;
	ProtonPlusModelsLauncher* _tmp4_;
	ProtonPlusModelsLauncher* _tmp5_;
	ProtonPlusModelsGroup* _tmp6_;
	ProtonPlusModelsGroup* _tmp7_;
	gchar* _tmp8_;
	gchar* _tmp9_;
	const gchar* _tmp20_;
	gchar* _tmp21_;
	gchar* _tmp22_;
	const gchar* _tmp23_;
	gchar* _tmp24_;
	gchar* _tmp25_;
	const gchar* _tmp26_;
	gchar* _tmp27_;
	gchar* _tmp28_;
	const gchar* _tmp29_;
	gchar* _tmp30_;
	gchar* _tmp31_;
	const gchar* _tmp32_;
	gchar* _tmp33_;
	gchar* _tmp34_;
	g_return_val_if_fail (tool != NULL, NULL);
	self = (ProtonPlusServicesSteamTinkerLaunchContext*) g_object_new (object_type, NULL);
	_tmp0_ = home_override;
	if (_tmp0_ == NULL) {
		const gchar* _tmp1_;
		_tmp1_ = g_get_home_dir ();
		_tmp0_ = _tmp1_;
	}
	proton_plus_services_steam_tinker_launch_context_set_home_location (self, _tmp0_);
	_tmp2_ = proton_plus_models_tool_get_group (tool);
	_tmp3_ = _tmp2_;
	_tmp4_ = proton_plus_models_group_get_launcher (_tmp3_);
	_tmp5_ = _tmp4_;
	_tmp6_ = proton_plus_models_tool_get_group (tool);
	_tmp7_ = _tmp6_;
	_tmp8_ = proton_plus_models_launcher_get_primary_managed_tool_directory (_tmp5_, _tmp7_);
	_tmp9_ = _tmp8_;
	proton_plus_services_steam_tinker_launch_context_set_compat_location (self, _tmp9_);
	_g_free0 (_tmp9_);
	if (proton_plus_globals_IS_STEAM_OS) {
		const gchar* _tmp10_;
		gchar* _tmp11_;
		gchar* _tmp12_;
		const gchar* _tmp13_;
		gchar* _tmp14_;
		gchar* _tmp15_;
		_tmp10_ = self->priv->_home_location;
		_tmp11_ = g_strdup_printf ("%s/stl/prefix", _tmp10_);
		_tmp12_ = _tmp11_;
		proton_plus_services_steam_tinker_launch_context_set_base_location (self, _tmp12_);
		_g_free0 (_tmp12_);
		_tmp13_ = self->priv->_home_location;
		_tmp14_ = g_strdup_printf ("%s/stl", _tmp13_);
		_tmp15_ = _tmp14_;
		proton_plus_services_steam_tinker_launch_context_set_manual_remove_location (self, _tmp15_);
		_g_free0 (_tmp15_);
	} else {
		const gchar* _tmp16_;
		gchar* _tmp17_;
		gchar* _tmp18_;
		const gchar* _tmp19_;
		_tmp16_ = self->priv->_home_location;
		_tmp17_ = g_strdup_printf ("%s/.local/share/steamtinkerlaunch", _tmp16_);
		_tmp18_ = _tmp17_;
		proton_plus_services_steam_tinker_launch_context_set_base_location (self, _tmp18_);
		_g_free0 (_tmp18_);
		_tmp19_ = self->priv->_base_location;
		proton_plus_services_steam_tinker_launch_context_set_manual_remove_location (self, _tmp19_);
	}
	_tmp20_ = self->priv->_base_location;
	_tmp21_ = g_strdup_printf ("%s/steamtinkerlaunch", _tmp20_);
	_tmp22_ = _tmp21_;
	proton_plus_services_steam_tinker_launch_context_set_binary_location (self, _tmp22_);
	_g_free0 (_tmp22_);
	_tmp23_ = self->priv->_base_location;
	_tmp24_ = g_strdup_printf ("%s/ProtonPlus.meta", _tmp23_);
	_tmp25_ = _tmp24_;
	proton_plus_services_steam_tinker_launch_context_set_meta_location (self, _tmp25_);
	_g_free0 (_tmp25_);
	_tmp26_ = self->priv->_home_location;
	_tmp27_ = g_strdup_printf ("%s/.local/bin", _tmp26_);
	_tmp28_ = _tmp27_;
	proton_plus_services_steam_tinker_launch_context_set_link_parent_location (self, _tmp28_);
	_g_free0 (_tmp28_);
	_tmp29_ = self->priv->_link_parent_location;
	_tmp30_ = g_strdup_printf ("%s/steamtinkerlaunch", _tmp29_);
	_tmp31_ = _tmp30_;
	proton_plus_services_steam_tinker_launch_context_set_link_location (self, _tmp31_);
	_g_free0 (_tmp31_);
	_tmp32_ = self->priv->_home_location;
	_tmp33_ = g_strdup_printf ("%s/.config/steamtinkerlaunch", _tmp32_);
	_tmp34_ = _tmp33_;
	proton_plus_services_steam_tinker_launch_context_set_config_location (self, _tmp34_);
	_g_free0 (_tmp34_);
	(self->external_locations == NULL) ? NULL : (self->external_locations = (_g_list_free__g_free0_ (self->external_locations), NULL));
	self->external_locations = NULL;
	return self;
}

ProtonPlusServicesSteamTinkerLaunchContext*
proton_plus_services_steam_tinker_launch_context_new (ProtonPlusModelsTool* tool,
                                                      const gchar* home_override)
{
	return proton_plus_services_steam_tinker_launch_context_construct (PROTON_PLUS_SERVICES_TYPE_STEAM_TINKER_LAUNCH_CONTEXT, tool, home_override);
}

const gchar*
proton_plus_services_steam_tinker_launch_context_get_home_location (ProtonPlusServicesSteamTinkerLaunchContext* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_home_location;
	result = _tmp0_;
	return result;
}

static void
proton_plus_services_steam_tinker_launch_context_set_home_location (ProtonPlusServicesSteamTinkerLaunchContext* self,
                                                                    const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_services_steam_tinker_launch_context_get_home_location (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_home_location);
		self->priv->_home_location = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_services_steam_tinker_launch_context_properties[PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_HOME_LOCATION_PROPERTY]);
	}
}

const gchar*
proton_plus_services_steam_tinker_launch_context_get_base_location (ProtonPlusServicesSteamTinkerLaunchContext* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_base_location;
	result = _tmp0_;
	return result;
}

static void
proton_plus_services_steam_tinker_launch_context_set_base_location (ProtonPlusServicesSteamTinkerLaunchContext* self,
                                                                    const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_services_steam_tinker_launch_context_get_base_location (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_base_location);
		self->priv->_base_location = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_services_steam_tinker_launch_context_properties[PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_BASE_LOCATION_PROPERTY]);
	}
}

const gchar*
proton_plus_services_steam_tinker_launch_context_get_binary_location (ProtonPlusServicesSteamTinkerLaunchContext* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_binary_location;
	result = _tmp0_;
	return result;
}

static void
proton_plus_services_steam_tinker_launch_context_set_binary_location (ProtonPlusServicesSteamTinkerLaunchContext* self,
                                                                      const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_services_steam_tinker_launch_context_get_binary_location (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_binary_location);
		self->priv->_binary_location = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_services_steam_tinker_launch_context_properties[PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_BINARY_LOCATION_PROPERTY]);
	}
}

const gchar*
proton_plus_services_steam_tinker_launch_context_get_meta_location (ProtonPlusServicesSteamTinkerLaunchContext* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_meta_location;
	result = _tmp0_;
	return result;
}

static void
proton_plus_services_steam_tinker_launch_context_set_meta_location (ProtonPlusServicesSteamTinkerLaunchContext* self,
                                                                    const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_services_steam_tinker_launch_context_get_meta_location (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_meta_location);
		self->priv->_meta_location = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_services_steam_tinker_launch_context_properties[PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_META_LOCATION_PROPERTY]);
	}
}

const gchar*
proton_plus_services_steam_tinker_launch_context_get_link_parent_location (ProtonPlusServicesSteamTinkerLaunchContext* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_link_parent_location;
	result = _tmp0_;
	return result;
}

static void
proton_plus_services_steam_tinker_launch_context_set_link_parent_location (ProtonPlusServicesSteamTinkerLaunchContext* self,
                                                                           const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_services_steam_tinker_launch_context_get_link_parent_location (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_link_parent_location);
		self->priv->_link_parent_location = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_services_steam_tinker_launch_context_properties[PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LINK_PARENT_LOCATION_PROPERTY]);
	}
}

const gchar*
proton_plus_services_steam_tinker_launch_context_get_link_location (ProtonPlusServicesSteamTinkerLaunchContext* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_link_location;
	result = _tmp0_;
	return result;
}

static void
proton_plus_services_steam_tinker_launch_context_set_link_location (ProtonPlusServicesSteamTinkerLaunchContext* self,
                                                                    const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_services_steam_tinker_launch_context_get_link_location (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_link_location);
		self->priv->_link_location = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_services_steam_tinker_launch_context_properties[PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LINK_LOCATION_PROPERTY]);
	}
}

const gchar*
proton_plus_services_steam_tinker_launch_context_get_config_location (ProtonPlusServicesSteamTinkerLaunchContext* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_config_location;
	result = _tmp0_;
	return result;
}

static void
proton_plus_services_steam_tinker_launch_context_set_config_location (ProtonPlusServicesSteamTinkerLaunchContext* self,
                                                                      const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_services_steam_tinker_launch_context_get_config_location (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_config_location);
		self->priv->_config_location = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_services_steam_tinker_launch_context_properties[PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_CONFIG_LOCATION_PROPERTY]);
	}
}

const gchar*
proton_plus_services_steam_tinker_launch_context_get_manual_remove_location (ProtonPlusServicesSteamTinkerLaunchContext* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_manual_remove_location;
	result = _tmp0_;
	return result;
}

static void
proton_plus_services_steam_tinker_launch_context_set_manual_remove_location (ProtonPlusServicesSteamTinkerLaunchContext* self,
                                                                             const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_services_steam_tinker_launch_context_get_manual_remove_location (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_manual_remove_location);
		self->priv->_manual_remove_location = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_services_steam_tinker_launch_context_properties[PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_MANUAL_REMOVE_LOCATION_PROPERTY]);
	}
}

const gchar*
proton_plus_services_steam_tinker_launch_context_get_compat_location (ProtonPlusServicesSteamTinkerLaunchContext* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_compat_location;
	result = _tmp0_;
	return result;
}

static void
proton_plus_services_steam_tinker_launch_context_set_compat_location (ProtonPlusServicesSteamTinkerLaunchContext* self,
                                                                      const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_services_steam_tinker_launch_context_get_compat_location (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_compat_location);
		self->priv->_compat_location = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_services_steam_tinker_launch_context_properties[PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_COMPAT_LOCATION_PROPERTY]);
	}
}

const gchar*
proton_plus_services_steam_tinker_launch_context_get_latest_date (ProtonPlusServicesSteamTinkerLaunchContext* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_latest_date;
	result = _tmp0_;
	return result;
}

void
proton_plus_services_steam_tinker_launch_context_set_latest_date (ProtonPlusServicesSteamTinkerLaunchContext* self,
                                                                  const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_services_steam_tinker_launch_context_get_latest_date (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_latest_date);
		self->priv->_latest_date = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_services_steam_tinker_launch_context_properties[PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LATEST_DATE_PROPERTY]);
	}
}

const gchar*
proton_plus_services_steam_tinker_launch_context_get_latest_hash (ProtonPlusServicesSteamTinkerLaunchContext* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_latest_hash;
	result = _tmp0_;
	return result;
}

void
proton_plus_services_steam_tinker_launch_context_set_latest_hash (ProtonPlusServicesSteamTinkerLaunchContext* self,
                                                                  const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_services_steam_tinker_launch_context_get_latest_hash (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_latest_hash);
		self->priv->_latest_hash = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_services_steam_tinker_launch_context_properties[PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LATEST_HASH_PROPERTY]);
	}
}

const gchar*
proton_plus_services_steam_tinker_launch_context_get_local_date (ProtonPlusServicesSteamTinkerLaunchContext* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_local_date;
	result = _tmp0_;
	return result;
}

void
proton_plus_services_steam_tinker_launch_context_set_local_date (ProtonPlusServicesSteamTinkerLaunchContext* self,
                                                                 const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_services_steam_tinker_launch_context_get_local_date (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_local_date);
		self->priv->_local_date = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_services_steam_tinker_launch_context_properties[PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LOCAL_DATE_PROPERTY]);
	}
}

const gchar*
proton_plus_services_steam_tinker_launch_context_get_local_hash (ProtonPlusServicesSteamTinkerLaunchContext* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_local_hash;
	result = _tmp0_;
	return result;
}

void
proton_plus_services_steam_tinker_launch_context_set_local_hash (ProtonPlusServicesSteamTinkerLaunchContext* self,
                                                                 const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_services_steam_tinker_launch_context_get_local_hash (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_local_hash);
		self->priv->_local_hash = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_services_steam_tinker_launch_context_properties[PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LOCAL_HASH_PROPERTY]);
	}
}

gboolean
proton_plus_services_steam_tinker_launch_context_get_remove_config (ProtonPlusServicesSteamTinkerLaunchContext* self)
{
	gboolean result;
	g_return_val_if_fail (self != NULL, FALSE);
	result = self->priv->_remove_config;
	return result;
}

void
proton_plus_services_steam_tinker_launch_context_set_remove_config (ProtonPlusServicesSteamTinkerLaunchContext* self,
                                                                    gboolean value)
{
	gboolean old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_services_steam_tinker_launch_context_get_remove_config (self);
	if (old_value != value) {
		self->priv->_remove_config = value;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_services_steam_tinker_launch_context_properties[PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_REMOVE_CONFIG_PROPERTY]);
	}
}

gboolean
proton_plus_services_steam_tinker_launch_context_get_user_requested_removal (ProtonPlusServicesSteamTinkerLaunchContext* self)
{
	gboolean result;
	g_return_val_if_fail (self != NULL, FALSE);
	result = self->priv->_user_requested_removal;
	return result;
}

void
proton_plus_services_steam_tinker_launch_context_set_user_requested_removal (ProtonPlusServicesSteamTinkerLaunchContext* self,
                                                                             gboolean value)
{
	gboolean old_value;
	g_return_if_fail (self != NULL);
	old_value = proton_plus_services_steam_tinker_launch_context_get_user_requested_removal (self);
	if (old_value != value) {
		self->priv->_user_requested_removal = value;
		g_object_notify_by_pspec ((GObject *) self, proton_plus_services_steam_tinker_launch_context_properties[PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_USER_REQUESTED_REMOVAL_PROPERTY]);
	}
}

static void
proton_plus_services_steam_tinker_launch_context_class_init (ProtonPlusServicesSteamTinkerLaunchContextClass * klass,
                                                             gpointer klass_data)
{
	proton_plus_services_steam_tinker_launch_context_parent_class = g_type_class_peek_parent (klass);
	g_type_class_adjust_private_offset (klass, &ProtonPlusServicesSteamTinkerLaunchContext_private_offset);
	G_OBJECT_CLASS (klass)->get_property = _vala_proton_plus_services_steam_tinker_launch_context_get_property;
	G_OBJECT_CLASS (klass)->set_property = _vala_proton_plus_services_steam_tinker_launch_context_set_property;
	G_OBJECT_CLASS (klass)->finalize = proton_plus_services_steam_tinker_launch_context_finalize;
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_HOME_LOCATION_PROPERTY, proton_plus_services_steam_tinker_launch_context_properties[PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_HOME_LOCATION_PROPERTY] = g_param_spec_string ("home-location", "home-location", "home-location", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_BASE_LOCATION_PROPERTY, proton_plus_services_steam_tinker_launch_context_properties[PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_BASE_LOCATION_PROPERTY] = g_param_spec_string ("base-location", "base-location", "base-location", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_BINARY_LOCATION_PROPERTY, proton_plus_services_steam_tinker_launch_context_properties[PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_BINARY_LOCATION_PROPERTY] = g_param_spec_string ("binary-location", "binary-location", "binary-location", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_META_LOCATION_PROPERTY, proton_plus_services_steam_tinker_launch_context_properties[PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_META_LOCATION_PROPERTY] = g_param_spec_string ("meta-location", "meta-location", "meta-location", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LINK_PARENT_LOCATION_PROPERTY, proton_plus_services_steam_tinker_launch_context_properties[PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LINK_PARENT_LOCATION_PROPERTY] = g_param_spec_string ("link-parent-location", "link-parent-location", "link-parent-location", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LINK_LOCATION_PROPERTY, proton_plus_services_steam_tinker_launch_context_properties[PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LINK_LOCATION_PROPERTY] = g_param_spec_string ("link-location", "link-location", "link-location", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_CONFIG_LOCATION_PROPERTY, proton_plus_services_steam_tinker_launch_context_properties[PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_CONFIG_LOCATION_PROPERTY] = g_param_spec_string ("config-location", "config-location", "config-location", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_MANUAL_REMOVE_LOCATION_PROPERTY, proton_plus_services_steam_tinker_launch_context_properties[PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_MANUAL_REMOVE_LOCATION_PROPERTY] = g_param_spec_string ("manual-remove-location", "manual-remove-location", "manual-remove-location", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_COMPAT_LOCATION_PROPERTY, proton_plus_services_steam_tinker_launch_context_properties[PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_COMPAT_LOCATION_PROPERTY] = g_param_spec_string ("compat-location", "compat-location", "compat-location", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LATEST_DATE_PROPERTY, proton_plus_services_steam_tinker_launch_context_properties[PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LATEST_DATE_PROPERTY] = g_param_spec_string ("latest-date", "latest-date", "latest-date", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LATEST_HASH_PROPERTY, proton_plus_services_steam_tinker_launch_context_properties[PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LATEST_HASH_PROPERTY] = g_param_spec_string ("latest-hash", "latest-hash", "latest-hash", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LOCAL_DATE_PROPERTY, proton_plus_services_steam_tinker_launch_context_properties[PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LOCAL_DATE_PROPERTY] = g_param_spec_string ("local-date", "local-date", "local-date", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LOCAL_HASH_PROPERTY, proton_plus_services_steam_tinker_launch_context_properties[PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LOCAL_HASH_PROPERTY] = g_param_spec_string ("local-hash", "local-hash", "local-hash", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_REMOVE_CONFIG_PROPERTY, proton_plus_services_steam_tinker_launch_context_properties[PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_REMOVE_CONFIG_PROPERTY] = g_param_spec_boolean ("remove-config", "remove-config", "remove-config", FALSE, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_USER_REQUESTED_REMOVAL_PROPERTY, proton_plus_services_steam_tinker_launch_context_properties[PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_USER_REQUESTED_REMOVAL_PROPERTY] = g_param_spec_boolean ("user-requested-removal", "user-requested-removal", "user-requested-removal", FALSE, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
}

static void
proton_plus_services_steam_tinker_launch_context_instance_init (ProtonPlusServicesSteamTinkerLaunchContext * self,
                                                                gpointer klass)
{
	gchar* _tmp0_;
	gchar* _tmp1_;
	gchar* _tmp2_;
	gchar* _tmp3_;
	self->priv = proton_plus_services_steam_tinker_launch_context_get_instance_private (self);
	_tmp0_ = g_strdup ("");
	self->priv->_latest_date = _tmp0_;
	_tmp1_ = g_strdup ("");
	self->priv->_latest_hash = _tmp1_;
	_tmp2_ = g_strdup ("");
	self->priv->_local_date = _tmp2_;
	_tmp3_ = g_strdup ("");
	self->priv->_local_hash = _tmp3_;
	self->priv->_remove_config = FALSE;
	self->priv->_user_requested_removal = FALSE;
}

static void
proton_plus_services_steam_tinker_launch_context_finalize (GObject * obj)
{
	ProtonPlusServicesSteamTinkerLaunchContext * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, PROTON_PLUS_SERVICES_TYPE_STEAM_TINKER_LAUNCH_CONTEXT, ProtonPlusServicesSteamTinkerLaunchContext);
	_g_free0 (self->priv->_home_location);
	_g_free0 (self->priv->_base_location);
	_g_free0 (self->priv->_binary_location);
	_g_free0 (self->priv->_meta_location);
	_g_free0 (self->priv->_link_parent_location);
	_g_free0 (self->priv->_link_location);
	_g_free0 (self->priv->_config_location);
	_g_free0 (self->priv->_manual_remove_location);
	_g_free0 (self->priv->_compat_location);
	_g_free0 (self->priv->_latest_date);
	_g_free0 (self->priv->_latest_hash);
	_g_free0 (self->priv->_local_date);
	_g_free0 (self->priv->_local_hash);
	(self->external_locations == NULL) ? NULL : (self->external_locations = (_g_list_free__g_free0_ (self->external_locations), NULL));
	G_OBJECT_CLASS (proton_plus_services_steam_tinker_launch_context_parent_class)->finalize (obj);
}

static GType
proton_plus_services_steam_tinker_launch_context_get_type_once (void)
{
	static const GTypeInfo g_define_type_info = { sizeof (ProtonPlusServicesSteamTinkerLaunchContextClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) proton_plus_services_steam_tinker_launch_context_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (ProtonPlusServicesSteamTinkerLaunchContext), 0, (GInstanceInitFunc) proton_plus_services_steam_tinker_launch_context_instance_init, NULL };
	GType proton_plus_services_steam_tinker_launch_context_type_id;
	proton_plus_services_steam_tinker_launch_context_type_id = g_type_register_static (G_TYPE_OBJECT, "ProtonPlusServicesSteamTinkerLaunchContext", &g_define_type_info, 0);
	ProtonPlusServicesSteamTinkerLaunchContext_private_offset = g_type_add_instance_private (proton_plus_services_steam_tinker_launch_context_type_id, sizeof (ProtonPlusServicesSteamTinkerLaunchContextPrivate));
	return proton_plus_services_steam_tinker_launch_context_type_id;
}

GType
proton_plus_services_steam_tinker_launch_context_get_type (void)
{
	static volatile gsize proton_plus_services_steam_tinker_launch_context_type_id__once = 0;
	if (g_once_init_enter (&proton_plus_services_steam_tinker_launch_context_type_id__once)) {
		GType proton_plus_services_steam_tinker_launch_context_type_id;
		proton_plus_services_steam_tinker_launch_context_type_id = proton_plus_services_steam_tinker_launch_context_get_type_once ();
		g_once_init_leave (&proton_plus_services_steam_tinker_launch_context_type_id__once, proton_plus_services_steam_tinker_launch_context_type_id);
	}
	return proton_plus_services_steam_tinker_launch_context_type_id__once;
}

static void
_vala_proton_plus_services_steam_tinker_launch_context_get_property (GObject * object,
                                                                     guint property_id,
                                                                     GValue * value,
                                                                     GParamSpec * pspec)
{
	ProtonPlusServicesSteamTinkerLaunchContext * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PROTON_PLUS_SERVICES_TYPE_STEAM_TINKER_LAUNCH_CONTEXT, ProtonPlusServicesSteamTinkerLaunchContext);
	switch (property_id) {
		case PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_HOME_LOCATION_PROPERTY:
		g_value_set_string (value, proton_plus_services_steam_tinker_launch_context_get_home_location (self));
		break;
		case PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_BASE_LOCATION_PROPERTY:
		g_value_set_string (value, proton_plus_services_steam_tinker_launch_context_get_base_location (self));
		break;
		case PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_BINARY_LOCATION_PROPERTY:
		g_value_set_string (value, proton_plus_services_steam_tinker_launch_context_get_binary_location (self));
		break;
		case PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_META_LOCATION_PROPERTY:
		g_value_set_string (value, proton_plus_services_steam_tinker_launch_context_get_meta_location (self));
		break;
		case PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LINK_PARENT_LOCATION_PROPERTY:
		g_value_set_string (value, proton_plus_services_steam_tinker_launch_context_get_link_parent_location (self));
		break;
		case PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LINK_LOCATION_PROPERTY:
		g_value_set_string (value, proton_plus_services_steam_tinker_launch_context_get_link_location (self));
		break;
		case PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_CONFIG_LOCATION_PROPERTY:
		g_value_set_string (value, proton_plus_services_steam_tinker_launch_context_get_config_location (self));
		break;
		case PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_MANUAL_REMOVE_LOCATION_PROPERTY:
		g_value_set_string (value, proton_plus_services_steam_tinker_launch_context_get_manual_remove_location (self));
		break;
		case PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_COMPAT_LOCATION_PROPERTY:
		g_value_set_string (value, proton_plus_services_steam_tinker_launch_context_get_compat_location (self));
		break;
		case PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LATEST_DATE_PROPERTY:
		g_value_set_string (value, proton_plus_services_steam_tinker_launch_context_get_latest_date (self));
		break;
		case PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LATEST_HASH_PROPERTY:
		g_value_set_string (value, proton_plus_services_steam_tinker_launch_context_get_latest_hash (self));
		break;
		case PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LOCAL_DATE_PROPERTY:
		g_value_set_string (value, proton_plus_services_steam_tinker_launch_context_get_local_date (self));
		break;
		case PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LOCAL_HASH_PROPERTY:
		g_value_set_string (value, proton_plus_services_steam_tinker_launch_context_get_local_hash (self));
		break;
		case PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_REMOVE_CONFIG_PROPERTY:
		g_value_set_boolean (value, proton_plus_services_steam_tinker_launch_context_get_remove_config (self));
		break;
		case PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_USER_REQUESTED_REMOVAL_PROPERTY:
		g_value_set_boolean (value, proton_plus_services_steam_tinker_launch_context_get_user_requested_removal (self));
		break;
		default:
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
		break;
	}
}

static void
_vala_proton_plus_services_steam_tinker_launch_context_set_property (GObject * object,
                                                                     guint property_id,
                                                                     const GValue * value,
                                                                     GParamSpec * pspec)
{
	ProtonPlusServicesSteamTinkerLaunchContext * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, PROTON_PLUS_SERVICES_TYPE_STEAM_TINKER_LAUNCH_CONTEXT, ProtonPlusServicesSteamTinkerLaunchContext);
	switch (property_id) {
		case PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_HOME_LOCATION_PROPERTY:
		proton_plus_services_steam_tinker_launch_context_set_home_location (self, g_value_get_string (value));
		break;
		case PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_BASE_LOCATION_PROPERTY:
		proton_plus_services_steam_tinker_launch_context_set_base_location (self, g_value_get_string (value));
		break;
		case PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_BINARY_LOCATION_PROPERTY:
		proton_plus_services_steam_tinker_launch_context_set_binary_location (self, g_value_get_string (value));
		break;
		case PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_META_LOCATION_PROPERTY:
		proton_plus_services_steam_tinker_launch_context_set_meta_location (self, g_value_get_string (value));
		break;
		case PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LINK_PARENT_LOCATION_PROPERTY:
		proton_plus_services_steam_tinker_launch_context_set_link_parent_location (self, g_value_get_string (value));
		break;
		case PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LINK_LOCATION_PROPERTY:
		proton_plus_services_steam_tinker_launch_context_set_link_location (self, g_value_get_string (value));
		break;
		case PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_CONFIG_LOCATION_PROPERTY:
		proton_plus_services_steam_tinker_launch_context_set_config_location (self, g_value_get_string (value));
		break;
		case PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_MANUAL_REMOVE_LOCATION_PROPERTY:
		proton_plus_services_steam_tinker_launch_context_set_manual_remove_location (self, g_value_get_string (value));
		break;
		case PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_COMPAT_LOCATION_PROPERTY:
		proton_plus_services_steam_tinker_launch_context_set_compat_location (self, g_value_get_string (value));
		break;
		case PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LATEST_DATE_PROPERTY:
		proton_plus_services_steam_tinker_launch_context_set_latest_date (self, g_value_get_string (value));
		break;
		case PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LATEST_HASH_PROPERTY:
		proton_plus_services_steam_tinker_launch_context_set_latest_hash (self, g_value_get_string (value));
		break;
		case PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LOCAL_DATE_PROPERTY:
		proton_plus_services_steam_tinker_launch_context_set_local_date (self, g_value_get_string (value));
		break;
		case PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_LOCAL_HASH_PROPERTY:
		proton_plus_services_steam_tinker_launch_context_set_local_hash (self, g_value_get_string (value));
		break;
		case PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_REMOVE_CONFIG_PROPERTY:
		proton_plus_services_steam_tinker_launch_context_set_remove_config (self, g_value_get_boolean (value));
		break;
		case PROTON_PLUS_SERVICES_STEAM_TINKER_LAUNCH_CONTEXT_USER_REQUESTED_REMOVAL_PROPERTY:
		proton_plus_services_steam_tinker_launch_context_set_user_requested_removal (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;
}

