/* main.c generated by valac 0.56.18-dirty, the Vala compiler
 * generated from main.vala, do not modify */

#include <glib-object.h>
#include <gio/gio.h>
#include <gtk/gtk.h>
#include <glib.h>
#include <stdlib.h>
#include <string.h>
#include <gdk-pixbuf/gdk-pixbuf.h>
#include <gdk/gdk.h>
#include <gtk4-layer-shell.h>
#include <stdio.h>
#include <adwaita.h>

#define CONSTANTS_VERSION "swaync 0.12.6"
#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
#if !defined(VALA_EXTERN)
#if defined(_MSC_VER)
#define VALA_EXTERN __declspec(dllexport) extern
#elif __GNUC__ >= 4
#define VALA_EXTERN __attribute__((visibility("default"))) extern
#else
#define VALA_EXTERN extern
#endif
#endif

#define SWAY_NOTIFICATION_CENTER_TYPE_NOTI_DAEMON (sway_notification_center_noti_daemon_get_type ())
#define SWAY_NOTIFICATION_CENTER_NOTI_DAEMON(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SWAY_NOTIFICATION_CENTER_TYPE_NOTI_DAEMON, SwayNotificationCenterNotiDaemon))
#define SWAY_NOTIFICATION_CENTER_NOTI_DAEMON_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SWAY_NOTIFICATION_CENTER_TYPE_NOTI_DAEMON, SwayNotificationCenterNotiDaemonClass))
#define SWAY_NOTIFICATION_CENTER_IS_NOTI_DAEMON(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SWAY_NOTIFICATION_CENTER_TYPE_NOTI_DAEMON))
#define SWAY_NOTIFICATION_CENTER_IS_NOTI_DAEMON_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SWAY_NOTIFICATION_CENTER_TYPE_NOTI_DAEMON))
#define SWAY_NOTIFICATION_CENTER_NOTI_DAEMON_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SWAY_NOTIFICATION_CENTER_TYPE_NOTI_DAEMON, SwayNotificationCenterNotiDaemonClass))

typedef struct _SwayNotificationCenterNotiDaemon SwayNotificationCenterNotiDaemon;
typedef struct _SwayNotificationCenterNotiDaemonClass SwayNotificationCenterNotiDaemonClass;

#define SWAY_NOTIFICATION_CENTER_TYPE_SWAYNC_DAEMON (sway_notification_center_swaync_daemon_get_type ())
#define SWAY_NOTIFICATION_CENTER_SWAYNC_DAEMON(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SWAY_NOTIFICATION_CENTER_TYPE_SWAYNC_DAEMON, SwayNotificationCenterSwayncDaemon))
#define SWAY_NOTIFICATION_CENTER_SWAYNC_DAEMON_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SWAY_NOTIFICATION_CENTER_TYPE_SWAYNC_DAEMON, SwayNotificationCenterSwayncDaemonClass))
#define SWAY_NOTIFICATION_CENTER_IS_SWAYNC_DAEMON(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SWAY_NOTIFICATION_CENTER_TYPE_SWAYNC_DAEMON))
#define SWAY_NOTIFICATION_CENTER_IS_SWAYNC_DAEMON_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SWAY_NOTIFICATION_CENTER_TYPE_SWAYNC_DAEMON))
#define SWAY_NOTIFICATION_CENTER_SWAYNC_DAEMON_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SWAY_NOTIFICATION_CENTER_TYPE_SWAYNC_DAEMON, SwayNotificationCenterSwayncDaemonClass))

typedef struct _SwayNotificationCenterSwayncDaemon SwayNotificationCenterSwayncDaemon;
typedef struct _SwayNotificationCenterSwayncDaemonClass SwayNotificationCenterSwayncDaemonClass;

#define SWAY_NOTIFICATION_CENTER_WIDGETS_TYPE_BASE_WIDGET (sway_notification_center_widgets_base_widget_get_type ())
#define SWAY_NOTIFICATION_CENTER_WIDGETS_BASE_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SWAY_NOTIFICATION_CENTER_WIDGETS_TYPE_BASE_WIDGET, SwayNotificationCenterWidgetsBaseWidget))
#define SWAY_NOTIFICATION_CENTER_WIDGETS_BASE_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SWAY_NOTIFICATION_CENTER_WIDGETS_TYPE_BASE_WIDGET, SwayNotificationCenterWidgetsBaseWidgetClass))
#define SWAY_NOTIFICATION_CENTER_WIDGETS_IS_BASE_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SWAY_NOTIFICATION_CENTER_WIDGETS_TYPE_BASE_WIDGET))
#define SWAY_NOTIFICATION_CENTER_WIDGETS_IS_BASE_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SWAY_NOTIFICATION_CENTER_WIDGETS_TYPE_BASE_WIDGET))
#define SWAY_NOTIFICATION_CENTER_WIDGETS_BASE_WIDGET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SWAY_NOTIFICATION_CENTER_WIDGETS_TYPE_BASE_WIDGET, SwayNotificationCenterWidgetsBaseWidgetClass))

typedef struct _SwayNotificationCenterWidgetsBaseWidget SwayNotificationCenterWidgetsBaseWidget;
typedef struct _SwayNotificationCenterWidgetsBaseWidgetClass SwayNotificationCenterWidgetsBaseWidgetClass;

#define SWAY_NOTIFICATION_CENTER_WIDGETS_TYPE_NOTIFICATIONS (sway_notification_center_widgets_notifications_get_type ())
#define SWAY_NOTIFICATION_CENTER_WIDGETS_NOTIFICATIONS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SWAY_NOTIFICATION_CENTER_WIDGETS_TYPE_NOTIFICATIONS, SwayNotificationCenterWidgetsNotifications))
#define SWAY_NOTIFICATION_CENTER_WIDGETS_NOTIFICATIONS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SWAY_NOTIFICATION_CENTER_WIDGETS_TYPE_NOTIFICATIONS, SwayNotificationCenterWidgetsNotificationsClass))
#define SWAY_NOTIFICATION_CENTER_WIDGETS_IS_NOTIFICATIONS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SWAY_NOTIFICATION_CENTER_WIDGETS_TYPE_NOTIFICATIONS))
#define SWAY_NOTIFICATION_CENTER_WIDGETS_IS_NOTIFICATIONS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SWAY_NOTIFICATION_CENTER_WIDGETS_TYPE_NOTIFICATIONS))
#define SWAY_NOTIFICATION_CENTER_WIDGETS_NOTIFICATIONS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SWAY_NOTIFICATION_CENTER_WIDGETS_TYPE_NOTIFICATIONS, SwayNotificationCenterWidgetsNotificationsClass))

typedef struct _SwayNotificationCenterWidgetsNotifications SwayNotificationCenterWidgetsNotifications;
typedef struct _SwayNotificationCenterWidgetsNotificationsClass SwayNotificationCenterWidgetsNotificationsClass;

#define SWAY_NOTIFICATION_CENTER_TYPE_CONTROL_CENTER (sway_notification_center_control_center_get_type ())
#define SWAY_NOTIFICATION_CENTER_CONTROL_CENTER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SWAY_NOTIFICATION_CENTER_TYPE_CONTROL_CENTER, SwayNotificationCenterControlCenter))
#define SWAY_NOTIFICATION_CENTER_CONTROL_CENTER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SWAY_NOTIFICATION_CENTER_TYPE_CONTROL_CENTER, SwayNotificationCenterControlCenterClass))
#define SWAY_NOTIFICATION_CENTER_IS_CONTROL_CENTER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SWAY_NOTIFICATION_CENTER_TYPE_CONTROL_CENTER))
#define SWAY_NOTIFICATION_CENTER_IS_CONTROL_CENTER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SWAY_NOTIFICATION_CENTER_TYPE_CONTROL_CENTER))
#define SWAY_NOTIFICATION_CENTER_CONTROL_CENTER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SWAY_NOTIFICATION_CENTER_TYPE_CONTROL_CENTER, SwayNotificationCenterControlCenterClass))

typedef struct _SwayNotificationCenterControlCenter SwayNotificationCenterControlCenter;
typedef struct _SwayNotificationCenterControlCenterClass SwayNotificationCenterControlCenterClass;

#define SWAY_NOTIFICATION_CENTER_TYPE_NOTIFICATION_WINDOW (sway_notification_center_notification_window_get_type ())
#define SWAY_NOTIFICATION_CENTER_NOTIFICATION_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SWAY_NOTIFICATION_CENTER_TYPE_NOTIFICATION_WINDOW, SwayNotificationCenterNotificationWindow))
#define SWAY_NOTIFICATION_CENTER_NOTIFICATION_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SWAY_NOTIFICATION_CENTER_TYPE_NOTIFICATION_WINDOW, SwayNotificationCenterNotificationWindowClass))
#define SWAY_NOTIFICATION_CENTER_IS_NOTIFICATION_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SWAY_NOTIFICATION_CENTER_TYPE_NOTIFICATION_WINDOW))
#define SWAY_NOTIFICATION_CENTER_IS_NOTIFICATION_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SWAY_NOTIFICATION_CENTER_TYPE_NOTIFICATION_WINDOW))
#define SWAY_NOTIFICATION_CENTER_NOTIFICATION_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SWAY_NOTIFICATION_CENTER_TYPE_NOTIFICATION_WINDOW, SwayNotificationCenterNotificationWindowClass))

typedef struct _SwayNotificationCenterNotificationWindow SwayNotificationCenterNotificationWindow;
typedef struct _SwayNotificationCenterNotificationWindowClass SwayNotificationCenterNotificationWindowClass;

#define SWAY_NOTIFICATION_CENTER_TYPE_SWAYNC (sway_notification_center_swaync_get_type ())
#define SWAY_NOTIFICATION_CENTER_SWAYNC(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SWAY_NOTIFICATION_CENTER_TYPE_SWAYNC, SwayNotificationCenterSwaync))
#define SWAY_NOTIFICATION_CENTER_SWAYNC_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SWAY_NOTIFICATION_CENTER_TYPE_SWAYNC, SwayNotificationCenterSwayncClass))
#define SWAY_NOTIFICATION_CENTER_IS_SWAYNC(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SWAY_NOTIFICATION_CENTER_TYPE_SWAYNC))
#define SWAY_NOTIFICATION_CENTER_IS_SWAYNC_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SWAY_NOTIFICATION_CENTER_TYPE_SWAYNC))
#define SWAY_NOTIFICATION_CENTER_SWAYNC_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SWAY_NOTIFICATION_CENTER_TYPE_SWAYNC, SwayNotificationCenterSwayncClass))

typedef struct _SwayNotificationCenterSwaync SwayNotificationCenterSwaync;
typedef struct _SwayNotificationCenterSwayncClass SwayNotificationCenterSwayncClass;

#define SWAY_NOTIFICATION_CENTER_TYPE_ENVIRONMENT_VARIABLE (sway_notification_center_environment_variable_get_type ())
typedef struct _SwayNotificationCenterEnvironmentVariable SwayNotificationCenterEnvironmentVariable;
#define _g_free0(var) (var = (g_free (var), NULL))
typedef struct _SwayNotificationCenterSwayncPrivate SwayNotificationCenterSwayncPrivate;

#define TYPE_XDG_ACTIVATION_HELPER (xdg_activation_helper_get_type ())
#define XDG_ACTIVATION_HELPER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_XDG_ACTIVATION_HELPER, XdgActivationHelper))
#define XDG_ACTIVATION_HELPER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_XDG_ACTIVATION_HELPER, XdgActivationHelperClass))
#define IS_XDG_ACTIVATION_HELPER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_XDG_ACTIVATION_HELPER))
#define IS_XDG_ACTIVATION_HELPER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_XDG_ACTIVATION_HELPER))
#define XDG_ACTIVATION_HELPER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_XDG_ACTIVATION_HELPER, XdgActivationHelperClass))

typedef struct _XdgActivationHelper XdgActivationHelper;
typedef struct _XdgActivationHelperClass XdgActivationHelperClass;

#define SWAY_NOTIFICATION_CENTER_TYPE_BLANK_WINDOW (sway_notification_center_blank_window_get_type ())
#define SWAY_NOTIFICATION_CENTER_BLANK_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SWAY_NOTIFICATION_CENTER_TYPE_BLANK_WINDOW, SwayNotificationCenterBlankWindow))
#define SWAY_NOTIFICATION_CENTER_BLANK_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SWAY_NOTIFICATION_CENTER_TYPE_BLANK_WINDOW, SwayNotificationCenterBlankWindowClass))
#define SWAY_NOTIFICATION_CENTER_IS_BLANK_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SWAY_NOTIFICATION_CENTER_TYPE_BLANK_WINDOW))
#define SWAY_NOTIFICATION_CENTER_IS_BLANK_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SWAY_NOTIFICATION_CENTER_TYPE_BLANK_WINDOW))
#define SWAY_NOTIFICATION_CENTER_BLANK_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SWAY_NOTIFICATION_CENTER_TYPE_BLANK_WINDOW, SwayNotificationCenterBlankWindowClass))

typedef struct _SwayNotificationCenterBlankWindow SwayNotificationCenterBlankWindow;
typedef struct _SwayNotificationCenterBlankWindowClass SwayNotificationCenterBlankWindowClass;
enum  {
	SWAY_NOTIFICATION_CENTER_SWAYNC_0_PROPERTY,
	SWAY_NOTIFICATION_CENTER_SWAYNC_NUM_PROPERTIES
};
static GParamSpec* sway_notification_center_swaync_properties[SWAY_NOTIFICATION_CENTER_SWAYNC_NUM_PROPERTIES];
#define _g_array_unref0(var) ((var == NULL) ? NULL : (var = (g_array_unref (var), NULL)))
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))
typedef struct _Block1Data Block1Data;
#define _g_hash_table_unref0(var) ((var == NULL) ? NULL : (var = (g_hash_table_unref (var), NULL)))

#define SWAY_NOTIFICATION_CENTER_TYPE_CONFIG_MODEL (sway_notification_center_config_model_get_type ())
#define SWAY_NOTIFICATION_CENTER_CONFIG_MODEL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SWAY_NOTIFICATION_CENTER_TYPE_CONFIG_MODEL, SwayNotificationCenterConfigModel))
#define SWAY_NOTIFICATION_CENTER_CONFIG_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SWAY_NOTIFICATION_CENTER_TYPE_CONFIG_MODEL, SwayNotificationCenterConfigModelClass))
#define SWAY_NOTIFICATION_CENTER_IS_CONFIG_MODEL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SWAY_NOTIFICATION_CENTER_TYPE_CONFIG_MODEL))
#define SWAY_NOTIFICATION_CENTER_IS_CONFIG_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SWAY_NOTIFICATION_CENTER_TYPE_CONFIG_MODEL))
#define SWAY_NOTIFICATION_CENTER_CONFIG_MODEL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SWAY_NOTIFICATION_CENTER_TYPE_CONFIG_MODEL, SwayNotificationCenterConfigModelClass))

typedef struct _SwayNotificationCenterConfigModel SwayNotificationCenterConfigModel;
typedef struct _SwayNotificationCenterConfigModelClass SwayNotificationCenterConfigModelClass;

#define SWAY_NOTIFICATION_CENTER_TYPE_NOTIFICATION (sway_notification_center_notification_get_type ())
#define SWAY_NOTIFICATION_CENTER_NOTIFICATION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SWAY_NOTIFICATION_CENTER_TYPE_NOTIFICATION, SwayNotificationCenterNotification))
#define SWAY_NOTIFICATION_CENTER_NOTIFICATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SWAY_NOTIFICATION_CENTER_TYPE_NOTIFICATION, SwayNotificationCenterNotificationClass))
#define SWAY_NOTIFICATION_CENTER_IS_NOTIFICATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SWAY_NOTIFICATION_CENTER_TYPE_NOTIFICATION))
#define SWAY_NOTIFICATION_CENTER_IS_NOTIFICATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SWAY_NOTIFICATION_CENTER_TYPE_NOTIFICATION))
#define SWAY_NOTIFICATION_CENTER_NOTIFICATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SWAY_NOTIFICATION_CENTER_TYPE_NOTIFICATION, SwayNotificationCenterNotificationClass))

typedef struct _SwayNotificationCenterNotification SwayNotificationCenterNotification;
typedef struct _SwayNotificationCenterNotificationClass SwayNotificationCenterNotificationClass;
typedef gboolean (*SwayNotificationCenternotification_filter_func) (SwayNotificationCenterNotification* notification, gpointer user_data);

#define SWAY_NOTIFICATION_CENTER_TYPE_NOTIFY_PARAMS (sway_notification_center_notify_params_get_type ())
#define SWAY_NOTIFICATION_CENTER_NOTIFY_PARAMS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SWAY_NOTIFICATION_CENTER_TYPE_NOTIFY_PARAMS, SwayNotificationCenterNotifyParams))
#define SWAY_NOTIFICATION_CENTER_NOTIFY_PARAMS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SWAY_NOTIFICATION_CENTER_TYPE_NOTIFY_PARAMS, SwayNotificationCenterNotifyParamsClass))
#define SWAY_NOTIFICATION_CENTER_IS_NOTIFY_PARAMS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SWAY_NOTIFICATION_CENTER_TYPE_NOTIFY_PARAMS))
#define SWAY_NOTIFICATION_CENTER_IS_NOTIFY_PARAMS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SWAY_NOTIFICATION_CENTER_TYPE_NOTIFY_PARAMS))
#define SWAY_NOTIFICATION_CENTER_NOTIFY_PARAMS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SWAY_NOTIFICATION_CENTER_TYPE_NOTIFY_PARAMS, SwayNotificationCenterNotifyParamsClass))

typedef struct _SwayNotificationCenterNotifyParams SwayNotificationCenterNotifyParams;
typedef struct _SwayNotificationCenterNotifyParamsClass SwayNotificationCenterNotifyParamsClass;
typedef enum  {
	SWAY_NOTIFICATION_CENTER_URGENCY_LEVELS_LOW = 0,
	SWAY_NOTIFICATION_CENTER_URGENCY_LEVELS_NORMAL = 1,
	SWAY_NOTIFICATION_CENTER_URGENCY_LEVELS_CRITICAL = 2
} SwayNotificationCenterUrgencyLevels;

#define SWAY_NOTIFICATION_CENTER_TYPE_URGENCY_LEVELS (sway_notification_center_urgency_levels_get_type ())
typedef struct _SwayNotificationCenterSwayncInitData SwayNotificationCenterSwayncInitData;

#define TYPE_ANIMATED_LIST (animated_list_get_type ())
#define ANIMATED_LIST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ANIMATED_LIST, AnimatedList))
#define ANIMATED_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ANIMATED_LIST, AnimatedListClass))
#define IS_ANIMATED_LIST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ANIMATED_LIST))
#define IS_ANIMATED_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ANIMATED_LIST))
#define ANIMATED_LIST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ANIMATED_LIST, AnimatedListClass))

typedef struct _AnimatedList AnimatedList;
typedef struct _AnimatedListClass AnimatedListClass;

#define TYPE_ANIMATED_LIST_ITEM (animated_list_item_get_type ())
#define ANIMATED_LIST_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ANIMATED_LIST_ITEM, AnimatedListItem))
#define ANIMATED_LIST_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ANIMATED_LIST_ITEM, AnimatedListItemClass))
#define IS_ANIMATED_LIST_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ANIMATED_LIST_ITEM))
#define IS_ANIMATED_LIST_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ANIMATED_LIST_ITEM))
#define ANIMATED_LIST_ITEM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ANIMATED_LIST_ITEM, AnimatedListItemClass))

typedef struct _AnimatedListItem AnimatedListItem;
typedef struct _AnimatedListItemClass AnimatedListItemClass;

#define TYPE_UNDERLAY (underlay_get_type ())
#define UNDERLAY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_UNDERLAY, Underlay))
#define UNDERLAY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_UNDERLAY, UnderlayClass))
#define IS_UNDERLAY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_UNDERLAY))
#define IS_UNDERLAY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_UNDERLAY))
#define UNDERLAY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_UNDERLAY, UnderlayClass))

typedef struct _Underlay Underlay;
typedef struct _UnderlayClass UnderlayClass;
enum  {
	SWAY_NOTIFICATION_CENTER_SWAYNC_CONFIG_RELOAD_SIGNAL,
	SWAY_NOTIFICATION_CENTER_SWAYNC_NUM_SIGNALS
};
static guint sway_notification_center_swaync_signals[SWAY_NOTIFICATION_CENTER_SWAYNC_NUM_SIGNALS] = {0};
#define _vala_assert(expr, msg) if G_LIKELY (expr) ; else g_assertion_message_expr (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg);
#define _vala_return_if_fail(expr, msg) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return; }
#define _vala_return_val_if_fail(expr, msg, val) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return val; }
#define _vala_warn_if_fail(expr, msg) if G_LIKELY (expr) ; else g_warn_message (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg);

struct _SwayNotificationCenterEnvironmentVariable {
	gchar* name;
};

struct _SwayNotificationCenterSwaync {
	GtkApplication parent_instance;
	SwayNotificationCenterSwayncPrivate * priv;
	gboolean use_layer_shell;
	gboolean has_layer_on_demand;
	XdgActivationHelper* xdg_activation;
};

struct _SwayNotificationCenterSwayncClass {
	GtkApplicationClass parent_class;
};

struct _SwayNotificationCenterSwayncPrivate {
	gboolean activated;
	GArray* blank_windows;
};

struct _Block1Data {
	int _ref_count_;
	SwayNotificationCenterSwaync* self;
	GDBusConnection* conn;
	gpointer _async_data_;
};

struct _SwayNotificationCenterSwayncInitData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	SwayNotificationCenterSwaync* self;
	Block1Data* _data1_;
	const gchar* _tmp0_;
	GHashFunc _tmp1_;
	GEqualFunc _tmp2_;
	GHashTable* _tmp3_;
	GSList* formats;
	GSList* _tmp4_;
	GSList* _tmp5_;
	GSList* format_collection;
	GSList* format_it;
	GdkPixbufFormat* format;
	GdkPixbufFormat* _tmp6_;
	gchar** _tmp7_;
	gchar** _tmp8_;
	gchar** mime_type_collection;
	gint mime_type_collection_length1;
	gint _mime_type_collection_size_;
	gint mime_type_it;
	gchar* _tmp9_;
	gchar* mime_type;
	GHashTable* _tmp10_;
	const gchar* _tmp11_;
	gchar* _tmp12_;
	GdkPixbufFormat* _tmp13_;
	GdkDisplay* display;
	GdkDisplay* _tmp14_;
	GListModel* _tmp15_;
	GListModel* _tmp16_;
	SwayNotificationCenterConfigModel* _tmp17_;
	SwayNotificationCenterConfigModel* _tmp18_;
	gboolean _tmp19_;
	gboolean _tmp20_;
	gboolean _tmp21_;
	GDBusConnection* _tmp22_;
	GDBusConnection* _tmp23_;
	GDBusConnection* _tmp24_;
	GError* e;
	const gchar* _tmp25_;
	SwayNotificationCenterNotiDaemon* _tmp26_;
	SwayNotificationCenterSwayncDaemon* _tmp27_;
	XdgActivationHelper* _tmp28_;
	SwayNotificationCenterNotificationWindow* _tmp29_;
	SwayNotificationCenterWidgetsNotifications* _tmp30_;
	SwayNotificationCenterControlCenter* _tmp31_;
	SwayNotificationCenterNotificationWindow* _tmp32_;
	SwayNotificationCenterControlCenter* _tmp33_;
	SwayNotificationCenterNotiDaemon* _tmp34_;
	SwayNotificationCenterSwayncDaemon* _tmp35_;
	GListModel* _tmp36_;
	GError* _inner_error0_;
};

VALA_EXTERN SwayNotificationCenterNotiDaemon* sway_notification_center_noti_daemon;
SwayNotificationCenterNotiDaemon* sway_notification_center_noti_daemon = NULL;
VALA_EXTERN SwayNotificationCenterSwayncDaemon* sway_notification_center_swaync_daemon;
SwayNotificationCenterSwayncDaemon* sway_notification_center_swaync_daemon = NULL;
VALA_EXTERN SwayNotificationCenterWidgetsNotifications* sway_notification_center_notifications_widget;
SwayNotificationCenterWidgetsNotifications* sway_notification_center_notifications_widget = NULL;
VALA_EXTERN SwayNotificationCenterControlCenter* sway_notification_center_control_center;
SwayNotificationCenterControlCenter* sway_notification_center_control_center = NULL;
VALA_EXTERN SwayNotificationCenterNotificationWindow* sway_notification_center_floating_notifications;
SwayNotificationCenterNotificationWindow* sway_notification_center_floating_notifications = NULL;
VALA_EXTERN GListModel* sway_notification_center_monitors;
GListModel* sway_notification_center_monitors = NULL;
VALA_EXTERN SwayNotificationCenterSwaync* sway_notification_center_app;
SwayNotificationCenterSwaync* sway_notification_center_app = NULL;
VALA_EXTERN GSettings* sway_notification_center_self_settings;
GSettings* sway_notification_center_self_settings = NULL;
VALA_EXTERN GHashTable* sway_notification_center_pixbuf_mime_types;
GHashTable* sway_notification_center_pixbuf_mime_types = NULL;
VALA_EXTERN gchar* sway_notification_center_style_path;
gchar* sway_notification_center_style_path = NULL;
VALA_EXTERN gchar* sway_notification_center_config_path;
gchar* sway_notification_center_config_path = NULL;
VALA_EXTERN gboolean sway_notification_center_skip_packaged_css;
gboolean sway_notification_center_skip_packaged_css = FALSE;
VALA_EXTERN gchar* sway_notification_center_custom_packaged_css;
gchar* sway_notification_center_custom_packaged_css = NULL;
static gint SwayNotificationCenterSwaync_private_offset;
static gpointer sway_notification_center_swaync_parent_class = NULL;

VALA_EXTERN GType sway_notification_center_noti_daemon_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SwayNotificationCenterNotiDaemon, g_object_unref)
VALA_EXTERN guint sway_notification_center_noti_daemon_register_object (void* object,
                                                            GDBusConnection* connection,
                                                            const gchar* path,
                                                            GError** error);
VALA_EXTERN GType sway_notification_center_swaync_daemon_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SwayNotificationCenterSwayncDaemon, g_object_unref)
VALA_EXTERN guint sway_notification_center_swaync_daemon_register_object (void* object,
                                                              GDBusConnection* connection,
                                                              const gchar* path,
                                                              GError** error);
VALA_EXTERN GType sway_notification_center_widgets_base_widget_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SwayNotificationCenterWidgetsBaseWidget, g_object_unref)
VALA_EXTERN GType sway_notification_center_widgets_notifications_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SwayNotificationCenterWidgetsNotifications, g_object_unref)
VALA_EXTERN GType sway_notification_center_control_center_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SwayNotificationCenterControlCenter, g_object_unref)
VALA_EXTERN GType sway_notification_center_notification_window_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SwayNotificationCenterNotificationWindow, g_object_unref)
VALA_EXTERN GType sway_notification_center_swaync_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SwayNotificationCenterSwaync, g_object_unref)
VALA_EXTERN GType sway_notification_center_environment_variable_get_type (void) G_GNUC_CONST ;
VALA_EXTERN SwayNotificationCenterEnvironmentVariable* sway_notification_center_environment_variable_dup (const SwayNotificationCenterEnvironmentVariable* self);
VALA_EXTERN void sway_notification_center_environment_variable_free (SwayNotificationCenterEnvironmentVariable* self);
VALA_EXTERN void sway_notification_center_environment_variable_copy (const SwayNotificationCenterEnvironmentVariable* self,
                                                         SwayNotificationCenterEnvironmentVariable* dest);
VALA_EXTERN void sway_notification_center_environment_variable_destroy (SwayNotificationCenterEnvironmentVariable* self);
G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC (SwayNotificationCenterEnvironmentVariable, sway_notification_center_environment_variable_destroy)
VALA_EXTERN void sway_notification_center_environment_variable_init (SwayNotificationCenterEnvironmentVariable *self,
                                                         const gchar* name);
VALA_EXTERN gchar* sway_notification_center_environment_variable_to_string (SwayNotificationCenterEnvironmentVariable *self,
                                                                gchar** envp,
                                                                gint envp_length1);
VALA_EXTERN GType xdg_activation_helper_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (XdgActivationHelper, g_object_unref)
VALA_EXTERN GType sway_notification_center_blank_window_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SwayNotificationCenterBlankWindow, g_object_unref)
static void _g_object_unref0_ (gpointer var);
static void _vala_SwayNotificationCenterBlankWindow_free_function_content_of (gpointer data);
VALA_EXTERN SwayNotificationCenterSwaync* sway_notification_center_swaync_new (gboolean replace);
VALA_EXTERN SwayNotificationCenterSwaync* sway_notification_center_swaync_construct (GType object_type,
                                                                         gboolean replace);
static void sway_notification_center_swaync_real_activate (GApplication* base);
static void sway_notification_center_swaync_init (SwayNotificationCenterSwaync* self,
                                           GAsyncReadyCallback _callback_,
                                           gpointer _user_data_);
static void sway_notification_center_swaync_init_finish (SwayNotificationCenterSwaync* self,
                                                  GAsyncResult* _res_);
static void sway_notification_center_swaync_init_data_free (gpointer _data);
static gboolean sway_notification_center_swaync_init_co (SwayNotificationCenterSwayncInitData* _data_);
static Block1Data* block1_data_ref (Block1Data* _data1_);
static void block1_data_unref (void * _userdata_);
VALA_EXTERN gboolean sway_notification_center_functions_load_css (const gchar* style_path);
static void _g_free0_ (gpointer var);
static void sway_notification_center_swaync_print_monitors (SwayNotificationCenterSwaync* self);
VALA_EXTERN GType sway_notification_center_config_model_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SwayNotificationCenterConfigModel, g_object_unref)
VALA_EXTERN SwayNotificationCenterConfigModel* sway_notification_center_config_model_get_instance (void);
VALA_EXTERN gboolean sway_notification_center_config_model_get_layer_shell (SwayNotificationCenterConfigModel* self);
VALA_EXTERN SwayNotificationCenterNotiDaemon* sway_notification_center_noti_daemon_new (void);
VALA_EXTERN SwayNotificationCenterNotiDaemon* sway_notification_center_noti_daemon_construct (GType object_type);
VALA_EXTERN SwayNotificationCenterSwayncDaemon* sway_notification_center_swaync_daemon_new (void);
VALA_EXTERN SwayNotificationCenterSwayncDaemon* sway_notification_center_swaync_daemon_construct (GType object_type);
static void __lambda101_ (Block1Data* _data1_);
static void ___lambda101__gbus_name_acquired_callback (GDBusConnection* connection,
                                                const gchar* name,
                                                gpointer self);
static void __lambda102_ (Block1Data* _data1_);
static void ___lambda102__gbus_name_lost_callback (GDBusConnection* connection,
                                            const gchar* name,
                                            gpointer self);
static void __lambda103_ (Block1Data* _data1_);
static void ___lambda103__gbus_name_acquired_callback (GDBusConnection* connection,
                                                const gchar* name,
                                                gpointer self);
static void __lambda104_ (Block1Data* _data1_);
static void ___lambda104__gbus_name_lost_callback (GDBusConnection* connection,
                                            const gchar* name,
                                            gpointer self);
VALA_EXTERN XdgActivationHelper* xdg_activation_helper_new (void);
VALA_EXTERN XdgActivationHelper* xdg_activation_helper_construct (GType object_type);
VALA_EXTERN SwayNotificationCenterNotificationWindow* sway_notification_center_notification_window_new (void);
VALA_EXTERN SwayNotificationCenterNotificationWindow* sway_notification_center_notification_window_construct (GType object_type);
VALA_EXTERN SwayNotificationCenterWidgetsNotifications* sway_notification_center_widgets_notifications_new (void);
VALA_EXTERN SwayNotificationCenterWidgetsNotifications* sway_notification_center_widgets_notifications_construct (GType object_type);
VALA_EXTERN SwayNotificationCenterControlCenter* sway_notification_center_control_center_new (void);
VALA_EXTERN SwayNotificationCenterControlCenter* sway_notification_center_control_center_construct (GType object_type);
static void __lambda105_ (SwayNotificationCenterSwaync* self,
                   gboolean dnd);
VALA_EXTERN GType sway_notification_center_notification_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SwayNotificationCenterNotification, g_object_unref)
VALA_EXTERN void sway_notification_center_noti_daemon_remove_all_floating_notifications (SwayNotificationCenterNotiDaemon* self,
                                                                             gboolean transition,
                                                                             SwayNotificationCenternotification_filter_func func,
                                                                             gpointer func_target);
static gboolean ___lambda106_ (SwayNotificationCenterSwaync* self,
                        SwayNotificationCenterNotification* noti);
VALA_EXTERN GType sway_notification_center_notify_params_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SwayNotificationCenterNotifyParams, g_object_unref)
VALA_EXTERN SwayNotificationCenterNotifyParams* sway_notification_center_notification_get_param (SwayNotificationCenterNotification* self);
VALA_EXTERN GType sway_notification_center_urgency_levels_get_type (void) G_GNUC_CONST ;
VALA_EXTERN SwayNotificationCenterUrgencyLevels sway_notification_center_notify_params_get_urgency (SwayNotificationCenterNotifyParams* self);
static gboolean ____lambda106__swaynotificationcenternotification_filter_func (SwayNotificationCenterNotification* notification,
                                                                        gpointer self);
VALA_EXTERN void sway_notification_center_swaync_daemon_emit_subscribe (SwayNotificationCenterSwayncDaemon* self);
static void ___lambda105__sway_notification_center_noti_daemon_on_dnd_toggle (SwayNotificationCenterNotiDaemon* _sender,
                                                                       gboolean dnd,
                                                                       gpointer self);
static void sway_notification_center_swaync_monitors_changed (SwayNotificationCenterSwaync* self,
                                                       guint position,
                                                       guint removed,
                                                       guint added);
static void _sway_notification_center_swaync_monitors_changed_g_list_model_items_changed (GListModel* _sender,
                                                                                   guint position,
                                                                                   guint removed,
                                                                                   guint added,
                                                                                   gpointer self);
static void __lambda107_ (SwayNotificationCenterSwaync* self);
static void ___lambda107__gsource_once_func (gpointer self);
VALA_EXTERN gboolean sway_notification_center_control_center_get_visibility (SwayNotificationCenterControlCenter* self);
VALA_EXTERN SwayNotificationCenterBlankWindow* sway_notification_center_blank_window_new (GdkMonitor* monitor);
VALA_EXTERN SwayNotificationCenterBlankWindow* sway_notification_center_blank_window_construct (GType object_type,
                                                                                    GdkMonitor* monitor);
VALA_EXTERN gboolean sway_notification_center_swaync_daemon_set_cc_monitor (SwayNotificationCenterSwayncDaemon* self,
                                                                const gchar* name,
                                                                GError** error);
VALA_EXTERN const gchar* sway_notification_center_config_model_get_control_center_preferred_output (SwayNotificationCenterConfigModel* self);
VALA_EXTERN gboolean sway_notification_center_swaync_daemon_set_noti_window_monitor (SwayNotificationCenterSwayncDaemon* self,
                                                                         const gchar* name,
                                                                         GError** error);
VALA_EXTERN const gchar* sway_notification_center_config_model_get_notification_window_preferred_output (SwayNotificationCenterConfigModel* self);
VALA_EXTERN void sway_notification_center_swaync_show_blank_windows (SwayNotificationCenterSwaync* self,
                                                         GdkMonitor* ref_monitor);
VALA_EXTERN gboolean sway_notification_center_config_model_get_layer_shell_cover_screen (SwayNotificationCenterConfigModel* self);
VALA_EXTERN GdkMonitor* sway_notification_center_blank_window_get_monitor (SwayNotificationCenterBlankWindow* self);
VALA_EXTERN void sway_notification_center_swaync_hide_blank_windows (SwayNotificationCenterSwaync* self);
VALA_EXTERN gchar* sway_notification_center_functions_monitor_to_string (GdkMonitor* monitor);
static gint sway_notification_center_swaync_main (gchar** args,
                                           gint args_length1);
static void sway_notification_center_swaync_print_help (gchar** args,
                                                 gint args_length1);
static void sway_notification_center_swaync_print_startup_info (void);
VALA_EXTERN GType animated_list_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (AnimatedList, g_object_unref)
VALA_EXTERN GType animated_list_item_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (AnimatedListItem, g_object_unref)
VALA_EXTERN GType underlay_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (Underlay, g_object_unref)
VALA_EXTERN SwayNotificationCenterConfigModel* sway_notification_center_config_model_init (const gchar* path);
VALA_EXTERN gboolean sway_notification_center_config_model_get_ignore_gtk_theme (SwayNotificationCenterConfigModel* self);
VALA_EXTERN void sway_notification_center_functions_init (void);
static void _vala_SwayNotificationCenterEnvironmentVariable_array_free (SwayNotificationCenterEnvironmentVariable * array,
                                                                 gssize array_length);
static void g_cclosure_user_marshal_VOID__OBJECT_OBJECT (GClosure * closure,
                                                  GValue * return_value,
                                                  guint n_param_values,
                                                  const GValue * param_values,
                                                  gpointer invocation_hint,
                                                  gpointer marshal_data);
static void sway_notification_center_swaync_finalize (GObject * obj);
static GType sway_notification_center_swaync_get_type_once (void);
static void _vala_array_destroy (gpointer array,
                          gssize array_length,
                          GDestroyNotify destroy_func);
static void _vala_array_free (gpointer array,
                       gssize array_length,
                       GDestroyNotify destroy_func);
static gssize _vala_array_length (gpointer array);

void
sway_notification_center_environment_variable_init (SwayNotificationCenterEnvironmentVariable *self,
                                                    const gchar* name)
{
	gchar* _tmp0_;
	g_return_if_fail (name != NULL);
	memset (self, 0, sizeof (SwayNotificationCenterEnvironmentVariable));
	_tmp0_ = g_strdup (name);
	_g_free0 ((*self).name);
	(*self).name = _tmp0_;
}

gchar*
sway_notification_center_environment_variable_to_string (SwayNotificationCenterEnvironmentVariable *self,
                                                         gchar** envp,
                                                         gint envp_length1)
{
	const gchar* _tmp0_ = NULL;
	const gchar* _tmp1_;
	const gchar* _tmp2_;
	const gchar* _tmp3_;
	gchar* _tmp4_;
	gchar* result;
	_tmp1_ = (*self).name;
	_tmp2_ = g_environ_getenv (envp, _tmp1_);
	_tmp0_ = _tmp2_;
	if (_tmp0_ == NULL) {
		_tmp0_ = "";
	}
	_tmp3_ = (*self).name;
	_tmp4_ = g_strdup_printf ("%s=%s", _tmp3_, _tmp0_);
	result = _tmp4_;
	return result;
}

void
sway_notification_center_environment_variable_copy (const SwayNotificationCenterEnvironmentVariable* self,
                                                    SwayNotificationCenterEnvironmentVariable* dest)
{
	const gchar* _tmp0_;
	gchar* _tmp1_;
	_tmp0_ = (*self).name;
	_tmp1_ = g_strdup (_tmp0_);
	_g_free0 ((*dest).name);
	(*dest).name = _tmp1_;
}

void
sway_notification_center_environment_variable_destroy (SwayNotificationCenterEnvironmentVariable* self)
{
	_g_free0 ((*self).name);
}

SwayNotificationCenterEnvironmentVariable*
sway_notification_center_environment_variable_dup (const SwayNotificationCenterEnvironmentVariable* self)
{
	SwayNotificationCenterEnvironmentVariable* dup;
	dup = g_new0 (SwayNotificationCenterEnvironmentVariable, 1);
	sway_notification_center_environment_variable_copy (self, dup);
	return dup;
}

void
sway_notification_center_environment_variable_free (SwayNotificationCenterEnvironmentVariable* self)
{
	sway_notification_center_environment_variable_destroy (self);
	g_free (self);
}

 G_GNUC_NO_INLINE static GType
sway_notification_center_environment_variable_get_type_once (void)
{
	GType sway_notification_center_environment_variable_type_id;
	sway_notification_center_environment_variable_type_id = g_boxed_type_register_static ("SwayNotificationCenterEnvironmentVariable", (GBoxedCopyFunc) sway_notification_center_environment_variable_dup, (GBoxedFreeFunc) sway_notification_center_environment_variable_free);
	return sway_notification_center_environment_variable_type_id;
}

GType
sway_notification_center_environment_variable_get_type (void)
{
	static gsize sway_notification_center_environment_variable_type_id__once = 0;
	if (g_once_init_enter (&sway_notification_center_environment_variable_type_id__once)) {
		GType sway_notification_center_environment_variable_type_id;
		sway_notification_center_environment_variable_type_id = sway_notification_center_environment_variable_get_type_once ();
		g_once_init_leave (&sway_notification_center_environment_variable_type_id__once, sway_notification_center_environment_variable_type_id);
	}
	return sway_notification_center_environment_variable_type_id__once;
}

static inline gpointer
sway_notification_center_swaync_get_instance_private (SwayNotificationCenterSwaync* self)
{
	return G_STRUCT_MEMBER_P (self, SwayNotificationCenterSwaync_private_offset);
}

static void
_g_object_unref0_ (gpointer var)
{
	(var == NULL) ? NULL : (var = (g_object_unref (var), NULL));
}

static void
_vala_SwayNotificationCenterBlankWindow_free_function_content_of (gpointer data)
{
	SwayNotificationCenterBlankWindow* self;
	self = *((SwayNotificationCenterBlankWindow**) data);
	_g_object_unref0_ (self);
}

SwayNotificationCenterSwaync*
sway_notification_center_swaync_construct (GType object_type,
                                           gboolean replace)
{
	SwayNotificationCenterSwaync * self = NULL;
	GApplicationFlags _tmp0_ = 0U;
	GError* _inner_error0_ = NULL;
	if (replace) {
		_tmp0_ = G_APPLICATION_REPLACE;
	} else {
		_tmp0_ = 0;
	}
	self = (SwayNotificationCenterSwaync*) g_object_new (object_type, "application-id", "org.erikreider.swaync", "flags", (G_APPLICATION_DEFAULT_FLAGS | G_APPLICATION_ALLOW_REPLACEMENT) | _tmp0_, NULL);
	{
		g_application_register (G_TYPE_CHECK_INSTANCE_CAST (self, g_application_get_type (), GApplication), NULL, &_inner_error0_);
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
			goto __catch0_g_error;
		}
		if (g_application_get_is_remote (G_TYPE_CHECK_INSTANCE_CAST (self, g_application_get_type (), GApplication))) {
			g_printerr ("An instance of SwayNotificationCenter is already running!\n");
			exit (1);
		}
	}
	goto __finally0;
	__catch0_g_error:
	{
		GError* e = NULL;
		const gchar* _tmp1_;
		e = _inner_error0_;
		_inner_error0_ = NULL;
		_tmp1_ = e->message;
		g_error ("main.vala:60: %s", _tmp1_);
		_g_error_free0 (e);
	}
	__finally0:
	if (G_UNLIKELY (_inner_error0_ != NULL)) {
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
		g_clear_error (&_inner_error0_);
		return NULL;
	}
	return self;
}

SwayNotificationCenterSwaync*
sway_notification_center_swaync_new (gboolean replace)
{
	return sway_notification_center_swaync_construct (SWAY_NOTIFICATION_CENTER_TYPE_SWAYNC, replace);
}

static void
sway_notification_center_swaync_real_activate (GApplication* base)
{
	SwayNotificationCenterSwaync * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (base, SWAY_NOTIFICATION_CENTER_TYPE_SWAYNC, SwayNotificationCenterSwaync);
	if (self->priv->activated) {
		return;
	}
	self->priv->activated = TRUE;
	sway_notification_center_swaync_init (self, NULL, NULL);
}

static void
sway_notification_center_swaync_init_data_free (gpointer _data)
{
	SwayNotificationCenterSwayncInitData* _data_;
	_data_ = _data;
	_g_object_unref0 (_data_->self);
	g_slice_free (SwayNotificationCenterSwayncInitData, _data_);
}

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

static void
sway_notification_center_swaync_init (SwayNotificationCenterSwaync* self,
                                      GAsyncReadyCallback _callback_,
                                      gpointer _user_data_)
{
	SwayNotificationCenterSwayncInitData* _data_;
	SwayNotificationCenterSwaync* _tmp0_;
	g_return_if_fail (SWAY_NOTIFICATION_CENTER_IS_SWAYNC (self));
	_data_ = g_slice_new0 (SwayNotificationCenterSwayncInitData);
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
	g_task_set_task_data (_data_->_async_result, _data_, sway_notification_center_swaync_init_data_free);
	_tmp0_ = _g_object_ref0 (self);
	_data_->self = _tmp0_;
	sway_notification_center_swaync_init_co (_data_);
}

static void
sway_notification_center_swaync_init_finish (SwayNotificationCenterSwaync* self,
                                             GAsyncResult* _res_)
{
	SwayNotificationCenterSwayncInitData* _data_;
	_data_ = g_task_propagate_pointer (G_TASK (_res_), NULL);
}

static Block1Data*
block1_data_ref (Block1Data* _data1_)
{
	g_atomic_int_inc (&_data1_->_ref_count_);
	return _data1_;
}

static void
block1_data_unref (void * _userdata_)
{
	Block1Data* _data1_;
	_data1_ = (Block1Data*) _userdata_;
	if (g_atomic_int_dec_and_test (&_data1_->_ref_count_)) {
		SwayNotificationCenterSwaync* self;
		self = _data1_->self;
		_g_object_unref0 (_data1_->conn);
		_g_object_unref0 (self);
		g_slice_free (Block1Data, _data1_);
	}
}

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

static void
__lambda101_ (Block1Data* _data1_)
{
	SwayNotificationCenterSwaync* self;
	GError* _inner_error0_ = NULL;
	self = _data1_->self;
	{
		SwayNotificationCenterNotiDaemon* _tmp0_;
		_tmp0_ = sway_notification_center_noti_daemon;
		sway_notification_center_noti_daemon_register_object (_tmp0_, _data1_->conn, "/org/freedesktop/Notifications", &_inner_error0_);
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
			goto __catch0_g_error;
		}
		sway_notification_center_swaync_init_co (_data1_->_async_data_);
	}
	goto __finally0;
	__catch0_g_error:
	{
		GError* e = NULL;
		const gchar* _tmp1_;
		e = _inner_error0_;
		_inner_error0_ = NULL;
		_tmp1_ = e->message;
		g_error ("main.vala:116: Could not register notification service: \"%s\"", _tmp1_);
		_g_error_free0 (e);
	}
	__finally0:
	if (G_UNLIKELY (_inner_error0_ != NULL)) {
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
		g_clear_error (&_inner_error0_);
		return;
	}
}

static void
___lambda101__gbus_name_acquired_callback (GDBusConnection* connection,
                                           const gchar* name,
                                           gpointer self)
{
	__lambda101_ (self);
}

static void
__lambda102_ (Block1Data* _data1_)
{
	SwayNotificationCenterSwaync* self;
	FILE* _tmp0_;
	self = _data1_->self;
	_tmp0_ = stderr;
	fprintf (_tmp0_, "%s", "Could not acquire notification name. " "Please close any other notification daemon " "like mako or dunst\n");
	exit (1);
}

static void
___lambda102__gbus_name_lost_callback (GDBusConnection* connection,
                                       const gchar* name,
                                       gpointer self)
{
	__lambda102_ (self);
}

static void
__lambda103_ (Block1Data* _data1_)
{
	SwayNotificationCenterSwaync* self;
	GError* _inner_error0_ = NULL;
	self = _data1_->self;
	{
		SwayNotificationCenterSwayncDaemon* _tmp0_;
		_tmp0_ = sway_notification_center_swaync_daemon;
		sway_notification_center_swaync_daemon_register_object (_tmp0_, _data1_->conn, "/org/erikreider/swaync/cc", &_inner_error0_);
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
			goto __catch0_g_error;
		}
		sway_notification_center_swaync_init_co (_data1_->_async_data_);
	}
	goto __finally0;
	__catch0_g_error:
	{
		GError* e = NULL;
		const gchar* _tmp1_;
		e = _inner_error0_;
		_inner_error0_ = NULL;
		_tmp1_ = e->message;
		g_error ("main.vala:137: Could not register CC service: \"%s\"", _tmp1_);
		_g_error_free0 (e);
	}
	__finally0:
	if (G_UNLIKELY (_inner_error0_ != NULL)) {
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
		g_clear_error (&_inner_error0_);
		return;
	}
}

static void
___lambda103__gbus_name_acquired_callback (GDBusConnection* connection,
                                           const gchar* name,
                                           gpointer self)
{
	__lambda103_ (self);
}

static void
__lambda104_ (Block1Data* _data1_)
{
	SwayNotificationCenterSwaync* self;
	self = _data1_->self;
	g_error ("main.vala:141: Could not acquire swaync name!");
}

static void
___lambda104__gbus_name_lost_callback (GDBusConnection* connection,
                                       const gchar* name,
                                       gpointer self)
{
	__lambda104_ (self);
}

static gboolean
___lambda106_ (SwayNotificationCenterSwaync* self,
               SwayNotificationCenterNotification* noti)
{
	SwayNotificationCenterNotifyParams* _tmp0_;
	SwayNotificationCenterNotifyParams* _tmp1_;
	SwayNotificationCenterUrgencyLevels _tmp2_;
	SwayNotificationCenterUrgencyLevels _tmp3_;
	gboolean result;
	g_return_val_if_fail (SWAY_NOTIFICATION_CENTER_IS_NOTIFICATION (noti), FALSE);
	_tmp0_ = sway_notification_center_notification_get_param (noti);
	_tmp1_ = _tmp0_;
	_tmp2_ = sway_notification_center_notify_params_get_urgency (_tmp1_);
	_tmp3_ = _tmp2_;
	result = _tmp3_ != SWAY_NOTIFICATION_CENTER_URGENCY_LEVELS_CRITICAL;
	return result;
}

static gboolean
____lambda106__swaynotificationcenternotification_filter_func (SwayNotificationCenterNotification* notification,
                                                               gpointer self)
{
	gboolean result;
	result = ___lambda106_ ((SwayNotificationCenterSwaync*) self, notification);
	return result;
}

static void
__lambda105_ (SwayNotificationCenterSwaync* self,
              gboolean dnd)
{
	gboolean _tmp0_ = FALSE;
	SwayNotificationCenterSwayncDaemon* _tmp5_;
	if (dnd) {
		SwayNotificationCenterNotificationWindow* _tmp1_;
		gboolean _tmp2_;
		gboolean _tmp3_;
		_tmp1_ = sway_notification_center_floating_notifications;
		_tmp2_ = gtk_widget_get_visible (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, gtk_widget_get_type (), GtkWidget));
		_tmp3_ = _tmp2_;
		_tmp0_ = _tmp3_;
	} else {
		_tmp0_ = FALSE;
	}
	if (_tmp0_) {
		SwayNotificationCenterNotiDaemon* _tmp4_;
		_tmp4_ = sway_notification_center_noti_daemon;
		sway_notification_center_noti_daemon_remove_all_floating_notifications (_tmp4_, TRUE, ____lambda106__swaynotificationcenternotification_filter_func, self);
	}
	_tmp5_ = sway_notification_center_swaync_daemon;
	sway_notification_center_swaync_daemon_emit_subscribe (_tmp5_);
}

static void
___lambda105__sway_notification_center_noti_daemon_on_dnd_toggle (SwayNotificationCenterNotiDaemon* _sender,
                                                                  gboolean dnd,
                                                                  gpointer self)
{
	__lambda105_ ((SwayNotificationCenterSwaync*) self, dnd);
}

static void
_sway_notification_center_swaync_monitors_changed_g_list_model_items_changed (GListModel* _sender,
                                                                              guint position,
                                                                              guint removed,
                                                                              guint added,
                                                                              gpointer self)
{
	sway_notification_center_swaync_monitors_changed ((SwayNotificationCenterSwaync*) self, position, removed, added);
}

static void
__lambda107_ (SwayNotificationCenterSwaync* self)
{
	GListModel* _tmp0_;
	_tmp0_ = sway_notification_center_monitors;
	sway_notification_center_swaync_monitors_changed (self, (guint) 0, (guint) 0, g_list_model_get_n_items (_tmp0_));
}

static void
___lambda107__gsource_once_func (gpointer self)
{
	__lambda107_ ((SwayNotificationCenterSwaync*) self);
}

static gboolean
sway_notification_center_swaync_init_co (SwayNotificationCenterSwayncInitData* _data_)
{
	switch (_data_->_state_) {
		case 0:
		goto _state_0;
		case 1:
		goto _state_1;
		case 2:
		goto _state_2;
		default:
		g_assert_not_reached ();
	}
	_state_0:
	_data_->_data1_ = g_slice_new0 (Block1Data);
	_data_->_data1_->_ref_count_ = 1;
	_data_->_data1_->self = g_object_ref (_data_->self);
	_data_->_data1_->_async_data_ = _data_;
	_data_->_tmp0_ = sway_notification_center_style_path;
	sway_notification_center_functions_load_css (_data_->_tmp0_);
	_data_->_tmp1_ = g_str_hash;
	_data_->_tmp2_ = g_str_equal;
	_data_->_tmp3_ = g_hash_table_new_full (_data_->_tmp1_, _data_->_tmp2_, _g_free0_, NULL);
	_g_hash_table_unref0 (sway_notification_center_pixbuf_mime_types);
	sway_notification_center_pixbuf_mime_types = _data_->_tmp3_;
	_data_->_tmp4_ = gdk_pixbuf_get_formats ();
	_data_->formats = _data_->_tmp4_;
	_data_->_tmp5_ = _data_->formats;
	{
		_data_->format_collection = _data_->_tmp5_;
		for (_data_->format_it = _data_->format_collection; _data_->format_it != NULL; _data_->format_it = _data_->format_it->next) {
			_data_->format = (GdkPixbufFormat*) _data_->format_it->data;
			{
				_data_->_tmp6_ = _data_->format;
				_data_->_tmp8_ = _data_->_tmp7_ = gdk_pixbuf_format_get_mime_types (_data_->_tmp6_);
				{
					_data_->mime_type_collection_length1 = 0;
					_data_->_mime_type_collection_size_ = 0;
					_data_->mime_type_collection = _data_->_tmp8_;
					_data_->mime_type_collection_length1 = _vala_array_length (_data_->_tmp7_);
					for (_data_->mime_type_it = 0; _data_->mime_type_it < _data_->mime_type_collection_length1; _data_->mime_type_it = _data_->mime_type_it + 1) {
						_data_->_tmp9_ = g_strdup (_data_->mime_type_collection[_data_->mime_type_it]);
						_data_->mime_type = _data_->_tmp9_;
						{
							_data_->_tmp10_ = sway_notification_center_pixbuf_mime_types;
							_data_->_tmp11_ = _data_->mime_type;
							_data_->_tmp12_ = g_strdup (_data_->_tmp11_);
							_data_->_tmp13_ = _data_->format;
							g_hash_table_insert (_data_->_tmp10_, _data_->_tmp12_, _data_->_tmp13_);
							_g_free0 (_data_->mime_type);
						}
					}
					_data_->mime_type_collection = (_vala_array_free (_data_->mime_type_collection, _data_->mime_type_collection_length1, (GDestroyNotify) g_free), NULL);
				}
			}
		}
	}
	g_application_hold (G_TYPE_CHECK_INSTANCE_CAST (_data_->self, g_application_get_type (), GApplication));
	_data_->_tmp14_ = gdk_display_get_default ();
	_data_->display = _data_->_tmp14_;
	if (_data_->display == NULL) {
		g_error ("main.vala:88: Could not get Display!");
	}
	_data_->_tmp15_ = gdk_display_get_monitors (_data_->display);
	sway_notification_center_monitors = _data_->_tmp15_;
	_data_->_tmp16_ = sway_notification_center_monitors;
	g_assert_nonnull (_data_->_tmp16_);
	sway_notification_center_swaync_print_monitors (_data_->self);
	_data_->_tmp17_ = sway_notification_center_config_model_get_instance ();
	_data_->_tmp18_ = _data_->_tmp17_;
	_data_->_tmp19_ = sway_notification_center_config_model_get_layer_shell (_data_->_tmp18_);
	_data_->_tmp20_ = _data_->_tmp19_;
	_data_->self->use_layer_shell = _data_->_tmp20_;
	if (_data_->self->use_layer_shell) {
		_data_->_tmp21_ = gtk_layer_get_protocol_version () >= ((guint) 4);
	} else {
		_data_->_tmp21_ = FALSE;
	}
	_data_->self->has_layer_on_demand = _data_->_tmp21_;
	{
		_data_->_tmp23_ = g_bus_get_sync (G_BUS_TYPE_SESSION, NULL, &_data_->_inner_error0_);
		_data_->_tmp22_ = _data_->_tmp23_;
		if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
			goto __catch0_g_error;
		}
		_data_->_tmp24_ = _data_->_tmp22_;
		_data_->_tmp22_ = NULL;
		_g_object_unref0 (_data_->_data1_->conn);
		_data_->_data1_->conn = _data_->_tmp24_;
		_g_object_unref0 (_data_->_tmp22_);
	}
	goto __finally0;
	__catch0_g_error:
	{
		_data_->e = _data_->_inner_error0_;
		_data_->_inner_error0_ = NULL;
		_data_->_tmp25_ = _data_->e->message;
		g_error ("main.vala:102: Could not connect to DBus!... (%s)\n", _data_->_tmp25_);
		_g_error_free0 (_data_->e);
	}
	__finally0:
	if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
		(_data_->formats == NULL) ? NULL : (_data_->formats = (g_slist_free (_data_->formats), NULL));
		block1_data_unref (_data_->_data1_);
		_data_->_data1_ = NULL;
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _data_->_inner_error0_->message, g_quark_to_string (_data_->_inner_error0_->domain), _data_->_inner_error0_->code);
		g_clear_error (&_data_->_inner_error0_);
		g_object_unref (_data_->_async_result);
		return FALSE;
	}
	_data_->_tmp26_ = sway_notification_center_noti_daemon_new ();
	if (_data_->_tmp26_) {
		g_object_set_data ((GObject *) _data_->_tmp26_, "vala-creation-function", "SwayNotificationCenter.Swaync.init");
	}
	_g_object_unref0 (sway_notification_center_noti_daemon);
	sway_notification_center_noti_daemon = _data_->_tmp26_;
	_data_->_tmp27_ = sway_notification_center_swaync_daemon_new ();
	if (_data_->_tmp27_) {
		g_object_set_data ((GObject *) _data_->_tmp27_, "vala-creation-function", "SwayNotificationCenter.Swaync.init");
	}
	_g_object_unref0 (sway_notification_center_swaync_daemon);
	sway_notification_center_swaync_daemon = _data_->_tmp27_;
	g_bus_own_name_on_connection_with_closures (_data_->_data1_->conn, "org.freedesktop.Notifications", G_BUS_NAME_OWNER_FLAGS_NONE, (GClosure*) ((___lambda101__gbus_name_acquired_callback == NULL) ? NULL : g_cclosure_new ((GCallback) ___lambda101__gbus_name_acquired_callback, block1_data_ref (_data_->_data1_), (GClosureNotify) block1_data_unref)), (GClosure*) ((___lambda102__gbus_name_lost_callback == NULL) ? NULL : g_cclosure_new ((GCallback) ___lambda102__gbus_name_lost_callback, block1_data_ref (_data_->_data1_), (GClosureNotify) block1_data_unref)));
	_data_->_state_ = 1;
	return FALSE;
	_state_1:
	;
	g_bus_own_name_on_connection_with_closures (_data_->_data1_->conn, "org.erikreider.swaync.cc", G_BUS_NAME_OWNER_FLAGS_NONE, (GClosure*) ((___lambda103__gbus_name_acquired_callback == NULL) ? NULL : g_cclosure_new ((GCallback) ___lambda103__gbus_name_acquired_callback, block1_data_ref (_data_->_data1_), (GClosureNotify) block1_data_unref)), (GClosure*) ((___lambda104__gbus_name_lost_callback == NULL) ? NULL : g_cclosure_new ((GCallback) ___lambda104__gbus_name_lost_callback, block1_data_ref (_data_->_data1_), (GClosureNotify) block1_data_unref)));
	_data_->_state_ = 2;
	return FALSE;
	_state_2:
	;
	_data_->_tmp28_ = xdg_activation_helper_new ();
	if (_data_->_tmp28_) {
		g_object_set_data ((GObject *) _data_->_tmp28_, "vala-creation-function", "SwayNotificationCenter.Swaync.init");
	}
	_g_object_unref0 (_data_->self->xdg_activation);
	_data_->self->xdg_activation = _data_->_tmp28_;
	_data_->_tmp29_ = sway_notification_center_notification_window_new ();
	if (_data_->_tmp29_) {
		g_object_set_data ((GObject *) _data_->_tmp29_, "vala-creation-function", "SwayNotificationCenter.Swaync.init");
	}
	g_object_ref_sink (_data_->_tmp29_);
	_g_object_unref0 (sway_notification_center_floating_notifications);
	sway_notification_center_floating_notifications = _data_->_tmp29_;
	_data_->_tmp30_ = sway_notification_center_widgets_notifications_new ();
	if (_data_->_tmp30_) {
		g_object_set_data ((GObject *) _data_->_tmp30_, "vala-creation-function", "SwayNotificationCenter.Swaync.init");
	}
	g_object_ref_sink (_data_->_tmp30_);
	_g_object_unref0 (sway_notification_center_notifications_widget);
	sway_notification_center_notifications_widget = _data_->_tmp30_;
	_data_->_tmp31_ = sway_notification_center_control_center_new ();
	if (_data_->_tmp31_) {
		g_object_set_data ((GObject *) _data_->_tmp31_, "vala-creation-function", "SwayNotificationCenter.Swaync.init");
	}
	g_object_ref_sink (_data_->_tmp31_);
	_g_object_unref0 (sway_notification_center_control_center);
	sway_notification_center_control_center = _data_->_tmp31_;
	_data_->_tmp32_ = sway_notification_center_floating_notifications;
	gtk_application_add_window (G_TYPE_CHECK_INSTANCE_CAST (_data_->self, gtk_application_get_type (), GtkApplication), G_TYPE_CHECK_INSTANCE_CAST (_data_->_tmp32_, gtk_window_get_type (), GtkWindow));
	_data_->_tmp33_ = sway_notification_center_control_center;
	gtk_application_add_window (G_TYPE_CHECK_INSTANCE_CAST (_data_->self, gtk_application_get_type (), GtkApplication), G_TYPE_CHECK_INSTANCE_CAST (_data_->_tmp33_, gtk_window_get_type (), GtkWindow));
	_data_->_tmp34_ = sway_notification_center_noti_daemon;
	g_signal_connect_object (_data_->_tmp34_, "on-dnd-toggle", (GCallback) ___lambda105__sway_notification_center_noti_daemon_on_dnd_toggle, _data_->self, 0);
	_data_->_tmp35_ = sway_notification_center_swaync_daemon;
	sway_notification_center_swaync_daemon_emit_subscribe (_data_->_tmp35_);
	_data_->_tmp36_ = sway_notification_center_monitors;
	g_signal_connect_object (_data_->_tmp36_, "items-changed", (GCallback) _sway_notification_center_swaync_monitors_changed_g_list_model_items_changed, _data_->self, 0);
	g_idle_add_once (___lambda107__gsource_once_func, _data_->self);
	(_data_->formats == NULL) ? NULL : (_data_->formats = (g_slist_free (_data_->formats), NULL));
	block1_data_unref (_data_->_data1_);
	_data_->_data1_ = NULL;
	g_task_return_pointer (_data_->_async_result, _data_, NULL);
	if (_data_->_state_ != 0) {
		while (!g_task_get_completed (_data_->_async_result)) {
			g_main_context_iteration (g_task_get_context (_data_->_async_result), TRUE);
		}
	}
	g_object_unref (_data_->_async_result);
	return FALSE;
}

static gpointer
vala_g_array_remove_index (GArray* self,
                           guint index)
{
	gpointer g = NULL;
	gpointer* _tmp0_;
	gint _tmp0__length1;
	gpointer _tmp1_;
	gpointer result;
	g_return_val_if_fail (self != NULL, NULL);
	_vala_assert (self->len > index, "length > index");
	_tmp0_ = self->data;
	_tmp0__length1 = self->len;
	_tmp1_ = _tmp0_[index];
	_tmp0_[index] = NULL;
	g = _tmp1_;
	g_array_remove_index (self, index);
	result = g;
	return result;
}

static void
sway_notification_center_swaync_monitors_changed (SwayNotificationCenterSwaync* self,
                                                  guint position,
                                                  guint removed,
                                                  guint added)
{
	gboolean visible = FALSE;
	SwayNotificationCenterControlCenter* _tmp0_;
	GError* _inner_error0_ = NULL;
	g_return_if_fail (SWAY_NOTIFICATION_CENTER_IS_SWAYNC (self));
	g_info ("main.vala:172: Monitors Changed:");
	sway_notification_center_swaync_print_monitors (self);
	_tmp0_ = sway_notification_center_control_center;
	visible = sway_notification_center_control_center_get_visibility (_tmp0_);
	{
		guint i = 0U;
		i = (guint) 0;
		{
			gboolean _tmp1_ = FALSE;
			_tmp1_ = TRUE;
			while (TRUE) {
				SwayNotificationCenterBlankWindow* win = NULL;
				GArray* _tmp3_;
				SwayNotificationCenterBlankWindow* _tmp4_;
				SwayNotificationCenterBlankWindow* _tmp5_;
				GArray* _tmp6_;
				SwayNotificationCenterBlankWindow* _tmp7_;
				SwayNotificationCenterBlankWindow* _tmp8_;
				if (!_tmp1_) {
					guint _tmp2_;
					_tmp2_ = i;
					i = _tmp2_ + 1;
				}
				_tmp1_ = FALSE;
				if (!(i < removed)) {
					break;
				}
				_tmp3_ = self->priv->blank_windows;
				_tmp4_ = g_array_index (_tmp3_, SwayNotificationCenterBlankWindow*, position + i);
				win = _tmp4_;
				_tmp5_ = win;
				gtk_window_close (G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, gtk_window_get_type (), GtkWindow));
				_tmp6_ = self->priv->blank_windows;
				_tmp7_ = vala_g_array_remove_index (_tmp6_, position + i);
				_tmp8_ = _tmp7_;
				_g_object_unref0 (_tmp8_);
			}
		}
	}
	{
		guint i = 0U;
		i = (guint) 0;
		{
			gboolean _tmp9_ = FALSE;
			_tmp9_ = TRUE;
			while (TRUE) {
				GdkMonitor* monitor = NULL;
				GListModel* _tmp11_;
				GObject* _tmp12_;
				SwayNotificationCenterBlankWindow* win = NULL;
				GdkMonitor* _tmp13_;
				SwayNotificationCenterBlankWindow* _tmp14_;
				SwayNotificationCenterBlankWindow* _tmp15_;
				GArray* _tmp16_;
				SwayNotificationCenterBlankWindow* _tmp17_;
				SwayNotificationCenterBlankWindow* _tmp18_;
				if (!_tmp9_) {
					guint _tmp10_;
					_tmp10_ = i;
					i = _tmp10_ + 1;
				}
				_tmp9_ = FALSE;
				if (!(i < added)) {
					break;
				}
				_tmp11_ = sway_notification_center_monitors;
				_tmp12_ = g_list_model_get_item (_tmp11_, position + i);
				monitor = G_TYPE_CHECK_INSTANCE_CAST (_tmp12_, gdk_monitor_get_type (), GdkMonitor);
				_tmp13_ = monitor;
				_tmp14_ = sway_notification_center_blank_window_new (_tmp13_);
				if (_tmp14_) {
					g_object_set_data ((GObject *) _tmp14_, "vala-creation-function", "SwayNotificationCenter.Swaync.monitors_changed");
				}
				g_object_ref_sink (_tmp14_);
				win = _tmp14_;
				_tmp15_ = win;
				gtk_widget_set_visible (G_TYPE_CHECK_INSTANCE_CAST (_tmp15_, gtk_widget_get_type (), GtkWidget), visible);
				_tmp16_ = self->priv->blank_windows;
				_tmp17_ = win;
				_tmp18_ = _g_object_ref0 (_tmp17_);
				g_array_insert_val (_tmp16_, position + i, _tmp18_);
				_g_object_unref0 (win);
				_g_object_unref0 (monitor);
			}
		}
	}
	{
		SwayNotificationCenterSwayncDaemon* _tmp19_;
		SwayNotificationCenterConfigModel* _tmp20_;
		SwayNotificationCenterConfigModel* _tmp21_;
		const gchar* _tmp22_;
		const gchar* _tmp23_;
		SwayNotificationCenterSwayncDaemon* _tmp24_;
		SwayNotificationCenterConfigModel* _tmp25_;
		SwayNotificationCenterConfigModel* _tmp26_;
		const gchar* _tmp27_;
		const gchar* _tmp28_;
		_tmp19_ = sway_notification_center_swaync_daemon;
		_tmp20_ = sway_notification_center_config_model_get_instance ();
		_tmp21_ = _tmp20_;
		_tmp22_ = sway_notification_center_config_model_get_control_center_preferred_output (_tmp21_);
		_tmp23_ = _tmp22_;
		sway_notification_center_swaync_daemon_set_cc_monitor (_tmp19_, _tmp23_, &_inner_error0_);
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
			goto __catch0_g_error;
		}
		_tmp24_ = sway_notification_center_swaync_daemon;
		_tmp25_ = sway_notification_center_config_model_get_instance ();
		_tmp26_ = _tmp25_;
		_tmp27_ = sway_notification_center_config_model_get_notification_window_preferred_output (_tmp26_);
		_tmp28_ = _tmp27_;
		sway_notification_center_swaync_daemon_set_noti_window_monitor (_tmp24_, _tmp28_, &_inner_error0_);
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
			goto __catch0_g_error;
		}
	}
	goto __finally0;
	__catch0_g_error:
	{
		GError* e = NULL;
		GError* _tmp29_;
		const gchar* _tmp30_;
		e = _inner_error0_;
		_inner_error0_ = NULL;
		_tmp29_ = e;
		_tmp30_ = _tmp29_->message;
		g_critical ("main.vala:197: %s", _tmp30_);
		_g_error_free0 (e);
	}
	__finally0:
	if (G_UNLIKELY (_inner_error0_ != NULL)) {
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
		g_clear_error (&_inner_error0_);
		return;
	}
}

void
sway_notification_center_swaync_show_blank_windows (SwayNotificationCenterSwaync* self,
                                                    GdkMonitor* ref_monitor)
{
	gboolean _tmp0_ = FALSE;
	GArray* _tmp5_;
	gpointer* _tmp6_;
	gint _tmp6__length1;
	g_return_if_fail (SWAY_NOTIFICATION_CENTER_IS_SWAYNC (self));
	g_return_if_fail ((ref_monitor == NULL) || G_TYPE_CHECK_INSTANCE_TYPE (ref_monitor, gdk_monitor_get_type ()));
	if (!self->use_layer_shell) {
		_tmp0_ = TRUE;
	} else {
		SwayNotificationCenterConfigModel* _tmp1_;
		SwayNotificationCenterConfigModel* _tmp2_;
		gboolean _tmp3_;
		gboolean _tmp4_;
		_tmp1_ = sway_notification_center_config_model_get_instance ();
		_tmp2_ = _tmp1_;
		_tmp3_ = sway_notification_center_config_model_get_layer_shell_cover_screen (_tmp2_);
		_tmp4_ = _tmp3_;
		_tmp0_ = !_tmp4_;
	}
	if (_tmp0_) {
		return;
	}
	_tmp5_ = self->priv->blank_windows;
	_tmp6_ = _tmp5_->data;
	_tmp6__length1 = _tmp5_->len;
	{
		SwayNotificationCenterBlankWindow** win_collection = NULL;
		gint win_collection_length1 = 0;
		gint _win_collection_size_ = 0;
		gint win_it = 0;
		win_collection = _tmp6_;
		win_collection_length1 = _tmp6__length1;
		for (win_it = 0; win_it < win_collection_length1; win_it = win_it + 1) {
			SwayNotificationCenterBlankWindow* win = NULL;
			win = win_collection[win_it];
			{
				SwayNotificationCenterBlankWindow* _tmp7_;
				GdkMonitor* _tmp8_;
				GdkMonitor* _tmp9_;
				_tmp7_ = win;
				_tmp8_ = sway_notification_center_blank_window_get_monitor (_tmp7_);
				_tmp9_ = _tmp8_;
				if (_tmp9_ != ref_monitor) {
					SwayNotificationCenterBlankWindow* _tmp10_;
					_tmp10_ = win;
					gtk_widget_show (G_TYPE_CHECK_INSTANCE_CAST (_tmp10_, gtk_widget_get_type (), GtkWidget));
				}
			}
		}
	}
}

void
sway_notification_center_swaync_hide_blank_windows (SwayNotificationCenterSwaync* self)
{
	GArray* _tmp0_;
	gpointer* _tmp1_;
	gint _tmp1__length1;
	g_return_if_fail (SWAY_NOTIFICATION_CENTER_IS_SWAYNC (self));
	if (!self->use_layer_shell) {
		return;
	}
	_tmp0_ = self->priv->blank_windows;
	_tmp1_ = _tmp0_->data;
	_tmp1__length1 = _tmp0_->len;
	{
		SwayNotificationCenterBlankWindow** win_collection = NULL;
		gint win_collection_length1 = 0;
		gint _win_collection_size_ = 0;
		gint win_it = 0;
		win_collection = _tmp1_;
		win_collection_length1 = _tmp1__length1;
		for (win_it = 0; win_it < win_collection_length1; win_it = win_it + 1) {
			SwayNotificationCenterBlankWindow* win = NULL;
			win = win_collection[win_it];
			{
				SwayNotificationCenterBlankWindow* _tmp2_;
				_tmp2_ = win;
				gtk_widget_hide (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, gtk_widget_get_type (), GtkWidget));
			}
		}
	}
}

static void
sway_notification_center_swaync_print_monitors (SwayNotificationCenterSwaync* self)
{
	guint num_monitors = 0U;
	GListModel* _tmp0_;
	gchar* monitors_string = NULL;
	gchar* _tmp1_;
	const gchar* _tmp12_;
	g_return_if_fail (SWAY_NOTIFICATION_CENTER_IS_SWAYNC (self));
	_tmp0_ = sway_notification_center_monitors;
	num_monitors = g_list_model_get_n_items (_tmp0_);
	_tmp1_ = g_strdup ("");
	monitors_string = _tmp1_;
	{
		guint i = 0U;
		i = (guint) 0;
		{
			gboolean _tmp2_ = FALSE;
			_tmp2_ = TRUE;
			while (TRUE) {
				GdkMonitor* mon = NULL;
				GListModel* _tmp4_;
				GObject* _tmp5_;
				GdkMonitor* _tmp6_;
				const gchar* _tmp7_;
				GdkMonitor* _tmp8_;
				gchar* _tmp9_;
				gchar* _tmp10_;
				gchar* _tmp11_;
				if (!_tmp2_) {
					guint _tmp3_;
					_tmp3_ = i;
					i = _tmp3_ + 1;
				}
				_tmp2_ = FALSE;
				if (!(i < num_monitors)) {
					break;
				}
				_tmp4_ = sway_notification_center_monitors;
				_tmp5_ = g_list_model_get_item (_tmp4_, i);
				mon = G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, gdk_monitor_get_type (), GdkMonitor);
				_tmp6_ = mon;
				if (_tmp6_ == NULL) {
					_g_object_unref0 (mon);
					continue;
				}
				_tmp7_ = monitors_string;
				_tmp8_ = mon;
				_tmp9_ = sway_notification_center_functions_monitor_to_string (_tmp8_);
				_tmp10_ = _tmp9_;
				_tmp11_ = g_strconcat (_tmp7_, _tmp10_, NULL);
				_g_free0 (monitors_string);
				monitors_string = _tmp11_;
				_g_free0 (_tmp10_);
				_g_object_unref0 (mon);
			}
		}
	}
	_tmp12_ = monitors_string;
	g_info ("main.vala:231: Monitors:\n%s", _tmp12_);
	_g_free0 (monitors_string);
}

static gint
sway_notification_center_swaync_main (gchar** args,
                                      gint args_length1)
{
	gboolean replace = FALSE;
	const gchar* _tmp18_;
	SwayNotificationCenterConfigModel* _tmp19_;
	SwayNotificationCenterConfigModel* _tmp20_;
	gboolean _tmp21_;
	gboolean _tmp22_;
	GSettings* _tmp23_;
	SwayNotificationCenterSwaync* _tmp24_;
	SwayNotificationCenterSwaync* _tmp25_;
	gint result;
	replace = FALSE;
	if (args_length1 > 0) {
		{
			guint i = 0U;
			i = (guint) 1;
			{
				gboolean _tmp0_ = FALSE;
				_tmp0_ = TRUE;
				while (TRUE) {
					gchar* arg = NULL;
					const gchar* _tmp2_;
					gchar* _tmp3_;
					const gchar* _tmp4_;
					const gchar* _tmp5_;
					GQuark _tmp7_ = 0U;
					static GQuark _tmp6_label0 = 0;
					static GQuark _tmp6_label1 = 0;
					static GQuark _tmp6_label2 = 0;
					static GQuark _tmp6_label3 = 0;
					static GQuark _tmp6_label4 = 0;
					static GQuark _tmp6_label5 = 0;
					static GQuark _tmp6_label6 = 0;
					static GQuark _tmp6_label7 = 0;
					static GQuark _tmp6_label8 = 0;
					static GQuark _tmp6_label9 = 0;
					static GQuark _tmp6_label10 = 0;
					if (!_tmp0_) {
						guint _tmp1_;
						_tmp1_ = i;
						i = _tmp1_ + 1;
					}
					_tmp0_ = FALSE;
					if (!(i < ((guint) args_length1))) {
						break;
					}
					_tmp2_ = args[i];
					_tmp3_ = g_strdup (_tmp2_);
					arg = _tmp3_;
					_tmp4_ = arg;
					_tmp5_ = _tmp4_;
					_tmp7_ = (NULL == _tmp5_) ? 0 : g_quark_from_string (_tmp5_);
					if ((_tmp7_ == ((0 != _tmp6_label0) ? _tmp6_label0 : (_tmp6_label0 = g_quark_from_static_string ("-s")))) || (_tmp7_ == ((0 != _tmp6_label1) ? _tmp6_label1 : (_tmp6_label1 = g_quark_from_static_string ("--style"))))) {
						switch (0) {
							default:
							{
								guint _tmp8_;
								const gchar* _tmp9_;
								gchar* _tmp10_;
								i = i + 1;
								_tmp8_ = i;
								_tmp9_ = args[_tmp8_];
								_tmp10_ = g_strdup (_tmp9_);
								_g_free0 (sway_notification_center_style_path);
								sway_notification_center_style_path = _tmp10_;
								break;
							}
						}
					} else if (_tmp7_ == ((0 != _tmp6_label2) ? _tmp6_label2 : (_tmp6_label2 = g_quark_from_static_string ("--skip-system-css")))) {
						switch (0) {
							default:
							{
								sway_notification_center_skip_packaged_css = TRUE;
								break;
							}
						}
					} else if (_tmp7_ == ((0 != _tmp6_label3) ? _tmp6_label3 : (_tmp6_label3 = g_quark_from_static_string ("--custom-system-css")))) {
						switch (0) {
							default:
							{
								guint _tmp11_;
								const gchar* _tmp12_;
								gchar* _tmp13_;
								i = i + 1;
								_tmp11_ = i;
								_tmp12_ = args[_tmp11_];
								_tmp13_ = g_strdup (_tmp12_);
								_g_free0 (sway_notification_center_custom_packaged_css);
								sway_notification_center_custom_packaged_css = _tmp13_;
								break;
							}
						}
					} else if ((_tmp7_ == ((0 != _tmp6_label4) ? _tmp6_label4 : (_tmp6_label4 = g_quark_from_static_string ("-c")))) || (_tmp7_ == ((0 != _tmp6_label5) ? _tmp6_label5 : (_tmp6_label5 = g_quark_from_static_string ("--config"))))) {
						switch (0) {
							default:
							{
								guint _tmp14_;
								const gchar* _tmp15_;
								gchar* _tmp16_;
								i = i + 1;
								_tmp14_ = i;
								_tmp15_ = args[_tmp14_];
								_tmp16_ = g_strdup (_tmp15_);
								_g_free0 (sway_notification_center_config_path);
								sway_notification_center_config_path = _tmp16_;
								break;
							}
						}
					} else if (_tmp7_ == ((0 != _tmp6_label6) ? _tmp6_label6 : (_tmp6_label6 = g_quark_from_static_string ("--replace")))) {
						switch (0) {
							default:
							{
								replace = TRUE;
								break;
							}
						}
					} else if ((_tmp7_ == ((0 != _tmp6_label7) ? _tmp6_label7 : (_tmp6_label7 = g_quark_from_static_string ("-v")))) || (_tmp7_ == ((0 != _tmp6_label8) ? _tmp6_label8 : (_tmp6_label8 = g_quark_from_static_string ("--version"))))) {
						switch (0) {
							default:
							{
								FILE* _tmp17_;
								_tmp17_ = stdout;
								fprintf (_tmp17_, "%s\n", CONSTANTS_VERSION);
								result = 0;
								_g_free0 (arg);
								return result;
							}
						}
					} else if ((_tmp7_ == ((0 != _tmp6_label9) ? _tmp6_label9 : (_tmp6_label9 = g_quark_from_static_string ("-h")))) || (_tmp7_ == ((0 != _tmp6_label10) ? _tmp6_label10 : (_tmp6_label10 = g_quark_from_static_string ("--help"))))) {
						switch (0) {
							default:
							{
								sway_notification_center_swaync_print_help (args, (gint) args_length1);
								result = 0;
								_g_free0 (arg);
								return result;
							}
						}
					} else {
						switch (0) {
							default:
							{
								sway_notification_center_swaync_print_help (args, (gint) args_length1);
								result = 1;
								_g_free0 (arg);
								return result;
							}
						}
					}
					_g_free0 (arg);
				}
			}
		}
	}
	sway_notification_center_swaync_print_startup_info ();
	g_type_ensure (TYPE_ANIMATED_LIST);
	g_type_ensure (TYPE_ANIMATED_LIST_ITEM);
	g_type_ensure (TYPE_UNDERLAY);
	_tmp18_ = sway_notification_center_config_path;
	sway_notification_center_config_model_init (_tmp18_);
	_tmp19_ = sway_notification_center_config_model_get_instance ();
	_tmp20_ = _tmp19_;
	_tmp21_ = sway_notification_center_config_model_get_ignore_gtk_theme (_tmp20_);
	_tmp22_ = _tmp21_;
	if (_tmp22_) {
		g_unsetenv ("GTK_THEME");
	}
	gtk_init ();
	adw_init ();
	sway_notification_center_functions_init ();
	_tmp23_ = g_settings_new ("org.erikreider.swaync");
	if (_tmp23_) {
		g_object_set_data ((GObject *) _tmp23_, "vala-creation-function", "SwayNotificationCenter.Swaync.main");
	}
	_g_object_unref0 (sway_notification_center_self_settings);
	sway_notification_center_self_settings = _tmp23_;
	_tmp24_ = sway_notification_center_swaync_new (replace);
	if (_tmp24_) {
		g_object_set_data ((GObject *) _tmp24_, "vala-creation-function", "SwayNotificationCenter.Swaync.main");
	}
	_g_object_unref0 (sway_notification_center_app);
	sway_notification_center_app = _tmp24_;
	_tmp25_ = sway_notification_center_app;
	result = g_application_run (G_TYPE_CHECK_INSTANCE_CAST (_tmp25_, g_application_get_type (), GApplication), (gint) 0, NULL);
	return result;
}

int
main (int argc,
      char ** argv)
{
	return sway_notification_center_swaync_main (argv, argc);
}

static void
_vala_SwayNotificationCenterEnvironmentVariable_array_free (SwayNotificationCenterEnvironmentVariable * array,
                                                            gssize array_length)
{
	if (array != NULL) {
		gssize i;
		for (i = 0; i < array_length; i = i + 1) {
			sway_notification_center_environment_variable_destroy (&array[i]);
		}
	}
	g_free (array);
}

static void
sway_notification_center_swaync_print_startup_info (void)
{
	gchar* info_paths[5] = {0};
	gchar* _tmp0_;
	gchar* _tmp1_;
	gchar* _tmp2_;
	gchar* _tmp3_;
	gchar* _tmp4_;
	gchar* _tmp5_[5] = {0};
	SwayNotificationCenterEnvironmentVariable* variables = NULL;
	SwayNotificationCenterEnvironmentVariable _tmp26_ = {0};
	SwayNotificationCenterEnvironmentVariable _tmp27_ = {0};
	SwayNotificationCenterEnvironmentVariable _tmp28_ = {0};
	SwayNotificationCenterEnvironmentVariable _tmp29_ = {0};
	SwayNotificationCenterEnvironmentVariable _tmp30_ = {0};
	SwayNotificationCenterEnvironmentVariable _tmp31_ = {0};
	SwayNotificationCenterEnvironmentVariable _tmp32_ = {0};
	SwayNotificationCenterEnvironmentVariable _tmp33_ = {0};
	SwayNotificationCenterEnvironmentVariable _tmp34_ = {0};
	SwayNotificationCenterEnvironmentVariable _tmp35_ = {0};
	SwayNotificationCenterEnvironmentVariable _tmp36_ = {0};
	SwayNotificationCenterEnvironmentVariable _tmp37_ = {0};
	SwayNotificationCenterEnvironmentVariable _tmp38_ = {0};
	SwayNotificationCenterEnvironmentVariable _tmp39_ = {0};
	SwayNotificationCenterEnvironmentVariable _tmp40_ = {0};
	SwayNotificationCenterEnvironmentVariable _tmp41_ = {0};
	SwayNotificationCenterEnvironmentVariable _tmp42_ = {0};
	SwayNotificationCenterEnvironmentVariable _tmp43_ = {0};
	SwayNotificationCenterEnvironmentVariable _tmp44_ = {0};
	SwayNotificationCenterEnvironmentVariable _tmp45_ = {0};
	SwayNotificationCenterEnvironmentVariable _tmp46_ = {0};
	SwayNotificationCenterEnvironmentVariable _tmp47_ = {0};
	SwayNotificationCenterEnvironmentVariable _tmp48_ = {0};
	SwayNotificationCenterEnvironmentVariable _tmp49_ = {0};
	SwayNotificationCenterEnvironmentVariable _tmp50_ = {0};
	SwayNotificationCenterEnvironmentVariable _tmp51_ = {0};
	SwayNotificationCenterEnvironmentVariable _tmp52_ = {0};
	SwayNotificationCenterEnvironmentVariable _tmp53_ = {0};
	SwayNotificationCenterEnvironmentVariable _tmp54_ = {0};
	SwayNotificationCenterEnvironmentVariable* _tmp55_;
	gint variables_length1;
	gint _variables_size_;
	gchar** envp = NULL;
	gchar** _tmp56_;
	gchar** _tmp57_;
	gint envp_length1;
	gint _envp_size_;
	gchar* env_variables = NULL;
	gchar* _tmp58_;
	SwayNotificationCenterEnvironmentVariable* _tmp59_;
	gint _tmp59__length1;
	const gchar* _tmp67_;
	GError* _inner_error0_ = NULL;
	g_print ("Starting SwayNotificationCenter version %s\n", CONSTANTS_VERSION);
	_tmp0_ = g_strdup ("/etc/lsb-release");
	_tmp1_ = g_strdup ("/etc/os-release");
	_tmp2_ = g_strdup ("/etc/debian_version");
	_tmp3_ = g_strdup ("/etc/redhat-release");
	_tmp4_ = g_strdup ("/etc/gentoo-release");
	_tmp5_[0] = _tmp0_;
	_tmp5_[1] = _tmp1_;
	_tmp5_[2] = _tmp2_;
	_tmp5_[3] = _tmp3_;
	_tmp5_[4] = _tmp4_;
	memcpy (info_paths, _tmp5_, 5 * sizeof (gchar*));
	{
		gchar** path_collection = NULL;
		gint path_collection_length1 = 0;
		gint _path_collection_size_ = 0;
		gint path_it = 0;
		path_collection = info_paths;
		path_collection_length1 = 5;
		for (path_it = 0; path_it < path_collection_length1; path_it = path_it + 1) {
			const gchar* path = NULL;
			path = path_collection[path_it];
			{
				GFile* file = NULL;
				const gchar* _tmp6_;
				GFile* _tmp7_;
				GFile* _tmp8_;
				gchar* lines = NULL;
				gchar* _tmp9_;
				const gchar* _tmp24_;
				const gchar* _tmp25_;
				_tmp6_ = path;
				_tmp7_ = g_file_new_for_path (_tmp6_);
				file = _tmp7_;
				_tmp8_ = file;
				if (_tmp8_ == NULL) {
					_g_object_unref0 (file);
					continue;
				}
				_tmp9_ = g_strdup ("");
				lines = _tmp9_;
				{
					GFileInputStream* file_stream = NULL;
					GFile* _tmp10_;
					GFileInputStream* _tmp11_;
					GDataInputStream* data_stream = NULL;
					GFileInputStream* _tmp12_;
					GDataInputStream* _tmp13_;
					gchar* line = NULL;
					_tmp10_ = file;
					_tmp11_ = g_file_read (_tmp10_, NULL, &_inner_error0_);
					file_stream = _tmp11_;
					if (G_UNLIKELY (_inner_error0_ != NULL)) {
						goto __catch0_g_error;
					}
					_tmp12_ = file_stream;
					_tmp13_ = g_data_input_stream_new (G_TYPE_CHECK_INSTANCE_CAST (_tmp12_, g_input_stream_get_type (), GInputStream));
					if (_tmp13_) {
						g_object_set_data ((GObject *) _tmp13_, "vala-creation-function", "SwayNotificationCenter.Swaync.print_startup_info");
					}
					data_stream = _tmp13_;
					line = NULL;
					while (TRUE) {
						gchar* _tmp14_ = NULL;
						GDataInputStream* _tmp15_;
						gchar* _tmp16_;
						gchar* _tmp17_;
						const gchar* _tmp18_;
						const gchar* _tmp19_;
						const gchar* _tmp20_;
						gchar* _tmp21_;
						gchar* _tmp22_;
						gchar* _tmp23_;
						_tmp15_ = data_stream;
						_tmp16_ = g_data_input_stream_read_line (_tmp15_, NULL, NULL, &_inner_error0_);
						_tmp14_ = _tmp16_;
						if (G_UNLIKELY (_inner_error0_ != NULL)) {
							_g_free0 (line);
							_g_object_unref0 (data_stream);
							_g_object_unref0 (file_stream);
							goto __catch0_g_error;
						}
						_tmp17_ = _tmp14_;
						_tmp14_ = NULL;
						_g_free0 (line);
						line = _tmp17_;
						_tmp18_ = line;
						if (!(_tmp18_ != NULL)) {
							_g_free0 (_tmp14_);
							break;
						}
						_tmp19_ = lines;
						_tmp20_ = line;
						_tmp21_ = g_strdup_printf ("%s\n", _tmp20_);
						_tmp22_ = _tmp21_;
						_tmp23_ = g_strconcat (_tmp19_, _tmp22_, NULL);
						_g_free0 (lines);
						lines = _tmp23_;
						_g_free0 (_tmp22_);
						_g_free0 (_tmp14_);
					}
					_g_free0 (line);
					_g_object_unref0 (data_stream);
					_g_object_unref0 (file_stream);
				}
				goto __finally0;
				__catch0_g_error:
				{
					g_clear_error (&_inner_error0_);
					_g_free0 (lines);
					_g_object_unref0 (file);
					continue;
				}
				__finally0:
				if (G_UNLIKELY (_inner_error0_ != NULL)) {
					_g_free0 (lines);
					_g_object_unref0 (file);
					_vala_array_destroy (info_paths, 5, (GDestroyNotify) g_free);
					g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
					g_clear_error (&_inner_error0_);
					return;
				}
				_tmp24_ = path;
				_tmp25_ = lines;
				g_info ("main.vala:323: Contents of %s:\n%s", _tmp24_, _tmp25_);
				_g_free0 (lines);
				_g_object_unref0 (file);
				break;
			}
		}
	}
	sway_notification_center_environment_variable_init (&_tmp26_, "XDG_CURRENT_DESKTOP");
	sway_notification_center_environment_variable_init (&_tmp27_, "XDG_SESSION_DESKTOP");
	sway_notification_center_environment_variable_init (&_tmp28_, "DESKTOP_SESSION");
	sway_notification_center_environment_variable_init (&_tmp29_, "XDG_SESSION_TYPE");
	sway_notification_center_environment_variable_init (&_tmp30_, "XDG_BACKEND");
	sway_notification_center_environment_variable_init (&_tmp31_, "XDG_DATA_HOME");
	sway_notification_center_environment_variable_init (&_tmp32_, "XDG_DATA_DIRS");
	sway_notification_center_environment_variable_init (&_tmp33_, "SHELL");
	sway_notification_center_environment_variable_init (&_tmp34_, "GTK_DEBUG");
	sway_notification_center_environment_variable_init (&_tmp35_, "GTK_PATH");
	sway_notification_center_environment_variable_init (&_tmp36_, "GTK_IM_MODULE");
	sway_notification_center_environment_variable_init (&_tmp37_, "GTK_MEDIA");
	sway_notification_center_environment_variable_init (&_tmp38_, "GTK_EXE_PREFIX");
	sway_notification_center_environment_variable_init (&_tmp39_, "GTK_DATA_PREFIX");
	sway_notification_center_environment_variable_init (&_tmp40_, "GTK_THEME");
	sway_notification_center_environment_variable_init (&_tmp41_, "GDK_PIXBUF_MODULE_FILE");
	sway_notification_center_environment_variable_init (&_tmp42_, "GDK_DEBUG");
	sway_notification_center_environment_variable_init (&_tmp43_, "GSK_DEBUG");
	sway_notification_center_environment_variable_init (&_tmp44_, "GDK_BACKEND");
	sway_notification_center_environment_variable_init (&_tmp45_, "GDK_DISABLE");
	sway_notification_center_environment_variable_init (&_tmp46_, "GDK_GL_DISABLE");
	sway_notification_center_environment_variable_init (&_tmp47_, "GDK_VULKAN_DISABLE");
	sway_notification_center_environment_variable_init (&_tmp48_, "GDK_WAYLAND_DISABLE");
	sway_notification_center_environment_variable_init (&_tmp49_, "GSK_RENDERER");
	sway_notification_center_environment_variable_init (&_tmp50_, "GSK_GPU_DISABLE");
	sway_notification_center_environment_variable_init (&_tmp51_, "GSK_CACHE_TIMEOUT");
	sway_notification_center_environment_variable_init (&_tmp52_, "GTK_CSD");
	sway_notification_center_environment_variable_init (&_tmp53_, "GTK_A11Y");
	sway_notification_center_environment_variable_init (&_tmp54_, "DESKTOP_STARTUP_ID");
	_tmp55_ = g_new0 (SwayNotificationCenterEnvironmentVariable, 29);
	_tmp55_[0] = _tmp26_;
	_tmp55_[1] = _tmp27_;
	_tmp55_[2] = _tmp28_;
	_tmp55_[3] = _tmp29_;
	_tmp55_[4] = _tmp30_;
	_tmp55_[5] = _tmp31_;
	_tmp55_[6] = _tmp32_;
	_tmp55_[7] = _tmp33_;
	_tmp55_[8] = _tmp34_;
	_tmp55_[9] = _tmp35_;
	_tmp55_[10] = _tmp36_;
	_tmp55_[11] = _tmp37_;
	_tmp55_[12] = _tmp38_;
	_tmp55_[13] = _tmp39_;
	_tmp55_[14] = _tmp40_;
	_tmp55_[15] = _tmp41_;
	_tmp55_[16] = _tmp42_;
	_tmp55_[17] = _tmp43_;
	_tmp55_[18] = _tmp44_;
	_tmp55_[19] = _tmp45_;
	_tmp55_[20] = _tmp46_;
	_tmp55_[21] = _tmp47_;
	_tmp55_[22] = _tmp48_;
	_tmp55_[23] = _tmp49_;
	_tmp55_[24] = _tmp50_;
	_tmp55_[25] = _tmp51_;
	_tmp55_[26] = _tmp52_;
	_tmp55_[27] = _tmp53_;
	_tmp55_[28] = _tmp54_;
	variables = _tmp55_;
	variables_length1 = 29;
	_variables_size_ = variables_length1;
	_tmp57_ = _tmp56_ = g_get_environ ();
	envp = _tmp57_;
	envp_length1 = _vala_array_length (_tmp56_);
	_envp_size_ = envp_length1;
	_tmp58_ = g_strdup ("");
	env_variables = _tmp58_;
	_tmp59_ = variables;
	_tmp59__length1 = variables_length1;
	{
		SwayNotificationCenterEnvironmentVariable* variable_collection = NULL;
		gint variable_collection_length1 = 0;
		gint _variable_collection_size_ = 0;
		gint variable_it = 0;
		variable_collection = _tmp59_;
		variable_collection_length1 = _tmp59__length1;
		for (variable_it = 0; variable_it < variable_collection_length1; variable_it = variable_it + 1) {
			SwayNotificationCenterEnvironmentVariable variable = {0};
			variable = variable_collection[variable_it];
			{
				const gchar* _tmp60_;
				gchar** _tmp61_;
				gint _tmp61__length1;
				gchar* _tmp62_;
				gchar* _tmp63_;
				gchar* _tmp64_;
				gchar* _tmp65_;
				gchar* _tmp66_;
				_tmp60_ = env_variables;
				_tmp61_ = envp;
				_tmp61__length1 = envp_length1;
				_tmp62_ = sway_notification_center_environment_variable_to_string (&variable, _tmp61_, (gint) _tmp61__length1);
				_tmp63_ = _tmp62_;
				_tmp64_ = g_strdup_printf ("%s\n", _tmp63_);
				_tmp65_ = _tmp64_;
				_tmp66_ = g_strconcat (_tmp60_, _tmp65_, NULL);
				_g_free0 (env_variables);
				env_variables = _tmp66_;
				_g_free0 (_tmp65_);
				_g_free0 (_tmp63_);
			}
		}
	}
	_tmp67_ = env_variables;
	g_info ("main.vala:365: important environment variables:\n%s", _tmp67_);
	g_info ("main.vala:367: Gtk4LayerShell version: %u.%u.%u", gtk_layer_get_major_version (), gtk_layer_get_minor_version (), gtk_layer_get_micro_version ());
	g_info ("main.vala:371: LayerShell version supported by compositor: %u", gtk_layer_get_protocol_version ());
	_g_free0 (env_variables);
	envp = (_vala_array_free (envp, envp_length1, (GDestroyNotify) g_free), NULL);
	variables = (_vala_SwayNotificationCenterEnvironmentVariable_array_free (variables, variables_length1), NULL);
	_vala_array_destroy (info_paths, 5, (GDestroyNotify) g_free);
}

static void
sway_notification_center_swaync_print_help (gchar** args,
                                            gint args_length1)
{
	const gchar* _tmp0_;
	gchar* _tmp1_;
	gchar* _tmp2_;
	g_print ("Usage:\n");
	_tmp0_ = args[0];
	_tmp1_ = g_strdup_printf ("\t %s <OPTION>\n", _tmp0_);
	_tmp2_ = _tmp1_;
	g_print ("%s", _tmp2_);
	_g_free0 (_tmp2_);
	g_print ("Help:\n");
	g_print ("\t -h, --help \t\t Show help options\n");
	g_print ("\t -v, --version \t\t Prints version\n");
	g_print ("Options:\n");
	g_print ("\t -s, --style \t\t Use a custom Stylesheet file\n");
	g_print ("\t -c, --config \t\t Use a custom config file\n");
	g_print ("%s", "\t --skip-system-css \t Skip trying to parse the packaged Stylesheet f" \
"ile." " Useful for CSS debugging\n");
	g_print ("%s", "\t --custom-system-css \t Pick a custom CSS file to use as the \"syste" \
"m\" CSS." " Useful for CSS debugging\n");
}

static void
g_cclosure_user_marshal_VOID__OBJECT_OBJECT (GClosure * closure,
                                             GValue * return_value,
                                             guint n_param_values,
                                             const GValue * param_values,
                                             gpointer invocation_hint,
                                             gpointer marshal_data)
{
	typedef void (*GMarshalFunc_VOID__OBJECT_OBJECT) (gpointer data1, gpointer arg_1, gpointer arg_2, gpointer data2);
	register GMarshalFunc_VOID__OBJECT_OBJECT callback;
	register GCClosure * cc;
	register gpointer data1;
	register gpointer data2;
	cc = (GCClosure *) closure;
	g_return_if_fail (n_param_values == 3);
	if (G_CCLOSURE_SWAP_DATA (closure)) {
		data1 = closure->data;
		data2 = param_values->data[0].v_pointer;
	} else {
		data1 = param_values->data[0].v_pointer;
		data2 = closure->data;
	}
	callback = (GMarshalFunc_VOID__OBJECT_OBJECT) (marshal_data ? marshal_data : cc->callback);
	callback (data1, g_value_get_object (param_values + 1), g_value_get_object (param_values + 2), data2);
}

static void
sway_notification_center_swaync_class_init (SwayNotificationCenterSwayncClass * klass,
                                            gpointer klass_data)
{
	sway_notification_center_swaync_parent_class = g_type_class_peek_parent (klass);
	g_type_class_adjust_private_offset (klass, &SwayNotificationCenterSwaync_private_offset);
	((GApplicationClass *) klass)->activate = (void (*) (GApplication*)) sway_notification_center_swaync_real_activate;
	G_OBJECT_CLASS (klass)->finalize = sway_notification_center_swaync_finalize;
	sway_notification_center_swaync_signals[SWAY_NOTIFICATION_CENTER_SWAYNC_CONFIG_RELOAD_SIGNAL] = g_signal_new ("config-reload", SWAY_NOTIFICATION_CENTER_TYPE_SWAYNC, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_user_marshal_VOID__OBJECT_OBJECT, G_TYPE_NONE, 2, SWAY_NOTIFICATION_CENTER_TYPE_CONFIG_MODEL, SWAY_NOTIFICATION_CENTER_TYPE_CONFIG_MODEL);
}

static void
sway_notification_center_swaync_instance_init (SwayNotificationCenterSwaync * self,
                                               gpointer klass)
{
	GArray* _tmp0_;
	self->priv = sway_notification_center_swaync_get_instance_private (self);
	self->priv->activated = FALSE;
	_tmp0_ = g_array_new (TRUE, TRUE, sizeof (SwayNotificationCenterBlankWindow*));
	g_array_set_clear_func (_tmp0_, (GDestroyNotify) _vala_SwayNotificationCenterBlankWindow_free_function_content_of);
	self->priv->blank_windows = _tmp0_;
	self->use_layer_shell = TRUE;
	self->has_layer_on_demand = TRUE;
}

static void
sway_notification_center_swaync_finalize (GObject * obj)
{
	SwayNotificationCenterSwaync * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, SWAY_NOTIFICATION_CENTER_TYPE_SWAYNC, SwayNotificationCenterSwaync);
	_g_array_unref0 (self->priv->blank_windows);
	_g_object_unref0 (self->xdg_activation);
	G_OBJECT_CLASS (sway_notification_center_swaync_parent_class)->finalize (obj);
}

 G_GNUC_NO_INLINE static GType
sway_notification_center_swaync_get_type_once (void)
{
	static const GTypeInfo g_define_type_info = { sizeof (SwayNotificationCenterSwayncClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) sway_notification_center_swaync_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SwayNotificationCenterSwaync), 0, (GInstanceInitFunc) sway_notification_center_swaync_instance_init, NULL };
	GType sway_notification_center_swaync_type_id;
	sway_notification_center_swaync_type_id = g_type_register_static (gtk_application_get_type (), "SwayNotificationCenterSwaync", &g_define_type_info, 0);
	SwayNotificationCenterSwaync_private_offset = g_type_add_instance_private (sway_notification_center_swaync_type_id, sizeof (SwayNotificationCenterSwayncPrivate));
	return sway_notification_center_swaync_type_id;
}

GType
sway_notification_center_swaync_get_type (void)
{
	static gsize sway_notification_center_swaync_type_id__once = 0;
	if (g_once_init_enter (&sway_notification_center_swaync_type_id__once)) {
		GType sway_notification_center_swaync_type_id;
		sway_notification_center_swaync_type_id = sway_notification_center_swaync_get_type_once ();
		g_once_init_leave (&sway_notification_center_swaync_type_id__once, sway_notification_center_swaync_type_id);
	}
	return sway_notification_center_swaync_type_id__once;
}

static void
_vala_array_destroy (gpointer array,
                     gssize array_length,
                     GDestroyNotify destroy_func)
{
	if ((array != NULL) && (destroy_func != NULL)) {
		gssize i;
		for (i = 0; i < array_length; i = i + 1) {
			if (((gpointer*) array)[i] != NULL) {
				destroy_func (((gpointer*) array)[i]);
			}
		}
	}
}

static void
_vala_array_free (gpointer array,
                  gssize array_length,
                  GDestroyNotify destroy_func)
{
	_vala_array_destroy (array, array_length, destroy_func);
	g_free (array);
}

static gssize
_vala_array_length (gpointer array)
{
	gssize length;
	length = 0;
	if (array) {
		while (((gpointer*) array)[length]) {
			length++;
		}
	}
	return length;
}

