/* AnnualReport.c generated by valac 0.56.19, the Vala compiler
 * generated from AnnualReport.vala, do not modify */

#include <adwaita.h>
#include <glib-object.h>
#include <stdlib.h>
#include <string.h>
#include <glib.h>
#include <gtk/gtk.h>
#include <gio/gio.h>
#include <float.h>
#include <math.h>
#include <gee.h>
#include <glib/gi18n-lib.h>
#include <pango/pango.h>
#include <gdk/gdk.h>
#include <json-glib/json-glib.h>
#include <libsoup/soup.h>
#include <graphene-gobject.h>
#include <gsk/gsk.h>

#define BUILD_NAME "Tuba"
#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 TUBA_DIALOGS_TYPE_ANNUAL_REPORT (tuba_dialogs_annual_report_get_type ())
#define TUBA_DIALOGS_ANNUAL_REPORT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_DIALOGS_TYPE_ANNUAL_REPORT, TubaDialogsAnnualReport))
#define TUBA_DIALOGS_ANNUAL_REPORT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_DIALOGS_TYPE_ANNUAL_REPORT, TubaDialogsAnnualReportClass))
#define TUBA_DIALOGS_IS_ANNUAL_REPORT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_DIALOGS_TYPE_ANNUAL_REPORT))
#define TUBA_DIALOGS_IS_ANNUAL_REPORT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_DIALOGS_TYPE_ANNUAL_REPORT))
#define TUBA_DIALOGS_ANNUAL_REPORT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_DIALOGS_TYPE_ANNUAL_REPORT, TubaDialogsAnnualReportClass))

typedef struct _TubaDialogsAnnualReport TubaDialogsAnnualReport;
typedef struct _TubaDialogsAnnualReportClass TubaDialogsAnnualReportClass;
typedef struct _TubaDialogsAnnualReportPrivate TubaDialogsAnnualReportPrivate;
typedef enum  {
	TUBA_DIALOGS_ANNUAL_REPORT_BACKGROUND_TRANSPARENT,
	TUBA_DIALOGS_ANNUAL_REPORT_BACKGROUND_WINDOW,
	TUBA_DIALOGS_ANNUAL_REPORT_BACKGROUND_ACCENT,
	TUBA_DIALOGS_ANNUAL_REPORT_BACKGROUND_PRIDE,
	TUBA_DIALOGS_ANNUAL_REPORT_BACKGROUND_TRANS
} TubaDialogsAnnualReportBackground;

#define TUBA_DIALOGS_ANNUAL_REPORT_TYPE_BACKGROUND (tuba_dialogs_annual_report_background_get_type ())
enum  {
	TUBA_DIALOGS_ANNUAL_REPORT_0_PROPERTY,
	TUBA_DIALOGS_ANNUAL_REPORT_NUM_PROPERTIES
};
static GParamSpec* tuba_dialogs_annual_report_properties[TUBA_DIALOGS_ANNUAL_REPORT_NUM_PROPERTIES];
#define _g_free0(var) (var = (g_free (var), NULL))
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))

#define TUBA_TYPE_ENTITY (tuba_entity_get_type ())
#define TUBA_ENTITY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_TYPE_ENTITY, TubaEntity))
#define TUBA_ENTITY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_TYPE_ENTITY, TubaEntityClass))
#define TUBA_IS_ENTITY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_TYPE_ENTITY))
#define TUBA_IS_ENTITY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_TYPE_ENTITY))
#define TUBA_ENTITY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_TYPE_ENTITY, TubaEntityClass))

typedef struct _TubaEntity TubaEntity;
typedef struct _TubaEntityClass TubaEntityClass;

#define TUBA_API_TYPE_ANNUAL_REPORTS (tuba_api_annual_reports_get_type ())
#define TUBA_API_ANNUAL_REPORTS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_API_TYPE_ANNUAL_REPORTS, TubaAPIAnnualReports))
#define TUBA_API_ANNUAL_REPORTS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_API_TYPE_ANNUAL_REPORTS, TubaAPIAnnualReportsClass))
#define TUBA_API_IS_ANNUAL_REPORTS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_API_TYPE_ANNUAL_REPORTS))
#define TUBA_API_IS_ANNUAL_REPORTS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_API_TYPE_ANNUAL_REPORTS))
#define TUBA_API_ANNUAL_REPORTS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_API_TYPE_ANNUAL_REPORTS, TubaAPIAnnualReportsClass))

typedef struct _TubaAPIAnnualReports TubaAPIAnnualReports;
typedef struct _TubaAPIAnnualReportsClass TubaAPIAnnualReportsClass;

#define TUBA_WIDGETS_TYPE_AVATAR (tuba_widgets_avatar_get_type ())
#define TUBA_WIDGETS_AVATAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_WIDGETS_TYPE_AVATAR, TubaWidgetsAvatar))
#define TUBA_WIDGETS_AVATAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_WIDGETS_TYPE_AVATAR, TubaWidgetsAvatarClass))
#define TUBA_WIDGETS_IS_AVATAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_WIDGETS_TYPE_AVATAR))
#define TUBA_WIDGETS_IS_AVATAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_WIDGETS_TYPE_AVATAR))
#define TUBA_WIDGETS_AVATAR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_WIDGETS_TYPE_AVATAR, TubaWidgetsAvatarClass))

typedef struct _TubaWidgetsAvatar TubaWidgetsAvatar;
typedef struct _TubaWidgetsAvatarClass TubaWidgetsAvatarClass;

#define TUBA_TYPE_ACCOUNT_STORE (tuba_account_store_get_type ())
#define TUBA_ACCOUNT_STORE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_TYPE_ACCOUNT_STORE, TubaAccountStore))
#define TUBA_ACCOUNT_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_TYPE_ACCOUNT_STORE, TubaAccountStoreClass))
#define TUBA_IS_ACCOUNT_STORE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_TYPE_ACCOUNT_STORE))
#define TUBA_IS_ACCOUNT_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_TYPE_ACCOUNT_STORE))
#define TUBA_ACCOUNT_STORE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_TYPE_ACCOUNT_STORE, TubaAccountStoreClass))

typedef struct _TubaAccountStore TubaAccountStore;
typedef struct _TubaAccountStoreClass TubaAccountStoreClass;

#define TUBA_API_TYPE_ACCOUNT (tuba_api_account_get_type ())
#define TUBA_API_ACCOUNT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_API_TYPE_ACCOUNT, TubaAPIAccount))
#define TUBA_API_ACCOUNT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_API_TYPE_ACCOUNT, TubaAPIAccountClass))
#define TUBA_API_IS_ACCOUNT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_API_TYPE_ACCOUNT))
#define TUBA_API_IS_ACCOUNT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_API_TYPE_ACCOUNT))
#define TUBA_API_ACCOUNT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_API_TYPE_ACCOUNT, TubaAPIAccountClass))

typedef struct _TubaAPIAccount TubaAPIAccount;
typedef struct _TubaAPIAccountClass TubaAPIAccountClass;

#define TUBA_TYPE_INSTANCE_ACCOUNT (tuba_instance_account_get_type ())
#define TUBA_INSTANCE_ACCOUNT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_TYPE_INSTANCE_ACCOUNT, TubaInstanceAccount))
#define TUBA_INSTANCE_ACCOUNT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_TYPE_INSTANCE_ACCOUNT, TubaInstanceAccountClass))
#define TUBA_IS_INSTANCE_ACCOUNT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_TYPE_INSTANCE_ACCOUNT))
#define TUBA_IS_INSTANCE_ACCOUNT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_TYPE_INSTANCE_ACCOUNT))
#define TUBA_INSTANCE_ACCOUNT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_TYPE_INSTANCE_ACCOUNT, TubaInstanceAccountClass))

typedef struct _TubaInstanceAccount TubaInstanceAccount;
typedef struct _TubaInstanceAccountClass TubaInstanceAccountClass;

#define TUBA_API_ANNUAL_REPORTS_TYPE_REPORT (tuba_api_annual_reports_report_get_type ())
#define TUBA_API_ANNUAL_REPORTS_REPORT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_API_ANNUAL_REPORTS_TYPE_REPORT, TubaAPIAnnualReportsReport))
#define TUBA_API_ANNUAL_REPORTS_REPORT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_API_ANNUAL_REPORTS_TYPE_REPORT, TubaAPIAnnualReportsReportClass))
#define TUBA_API_ANNUAL_REPORTS_IS_REPORT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_API_ANNUAL_REPORTS_TYPE_REPORT))
#define TUBA_API_ANNUAL_REPORTS_IS_REPORT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_API_ANNUAL_REPORTS_TYPE_REPORT))
#define TUBA_API_ANNUAL_REPORTS_REPORT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_API_ANNUAL_REPORTS_TYPE_REPORT, TubaAPIAnnualReportsReportClass))

typedef struct _TubaAPIAnnualReportsReport TubaAPIAnnualReportsReport;
typedef struct _TubaAPIAnnualReportsReportClass TubaAPIAnnualReportsReportClass;

#define TUBA_API_ANNUAL_REPORTS_REPORT_TYPE_DATA (tuba_api_annual_reports_report_data_get_type ())
#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_API_ANNUAL_REPORTS_REPORT_TYPE_DATA, TubaAPIAnnualReportsReportData))
#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_API_ANNUAL_REPORTS_REPORT_TYPE_DATA, TubaAPIAnnualReportsReportDataClass))
#define TUBA_API_ANNUAL_REPORTS_REPORT_IS_DATA(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_API_ANNUAL_REPORTS_REPORT_TYPE_DATA))
#define TUBA_API_ANNUAL_REPORTS_REPORT_IS_DATA_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_API_ANNUAL_REPORTS_REPORT_TYPE_DATA))
#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_API_ANNUAL_REPORTS_REPORT_TYPE_DATA, TubaAPIAnnualReportsReportDataClass))

typedef struct _TubaAPIAnnualReportsReportData TubaAPIAnnualReportsReportData;
typedef struct _TubaAPIAnnualReportsReportDataClass TubaAPIAnnualReportsReportDataClass;

#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TYPE_TIME_SERIES (tuba_api_annual_reports_report_data_time_series_get_type ())
#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TIME_SERIES(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TYPE_TIME_SERIES, TubaAPIAnnualReportsReportDataTimeSeries))
#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TIME_SERIES_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TYPE_TIME_SERIES, TubaAPIAnnualReportsReportDataTimeSeriesClass))
#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_IS_TIME_SERIES(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TYPE_TIME_SERIES))
#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_IS_TIME_SERIES_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TYPE_TIME_SERIES))
#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TIME_SERIES_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TYPE_TIME_SERIES, TubaAPIAnnualReportsReportDataTimeSeriesClass))

typedef struct _TubaAPIAnnualReportsReportDataTimeSeries TubaAPIAnnualReportsReportDataTimeSeries;
typedef struct _TubaAPIAnnualReportsReportDataTimeSeriesClass TubaAPIAnnualReportsReportDataTimeSeriesClass;

#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TYPE_COUNTABLE (tuba_api_annual_reports_report_data_countable_get_type ())
#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_COUNTABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TYPE_COUNTABLE, TubaAPIAnnualReportsReportDataCountable))
#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_COUNTABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TYPE_COUNTABLE, TubaAPIAnnualReportsReportDataCountableClass))
#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_IS_COUNTABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TYPE_COUNTABLE))
#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_IS_COUNTABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TYPE_COUNTABLE))
#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_COUNTABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TYPE_COUNTABLE, TubaAPIAnnualReportsReportDataCountableClass))

typedef struct _TubaAPIAnnualReportsReportDataCountable TubaAPIAnnualReportsReportDataCountable;
typedef struct _TubaAPIAnnualReportsReportDataCountableClass TubaAPIAnnualReportsReportDataCountableClass;

#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TYPE_NAMED_COUNTABLE (tuba_api_annual_reports_report_data_named_countable_get_type ())
#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_NAMED_COUNTABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TYPE_NAMED_COUNTABLE, TubaAPIAnnualReportsReportDataNamedCountable))
#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_NAMED_COUNTABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TYPE_NAMED_COUNTABLE, TubaAPIAnnualReportsReportDataNamedCountableClass))
#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_IS_NAMED_COUNTABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TYPE_NAMED_COUNTABLE))
#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_IS_NAMED_COUNTABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TYPE_NAMED_COUNTABLE))
#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_NAMED_COUNTABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TYPE_NAMED_COUNTABLE, TubaAPIAnnualReportsReportDataNamedCountableClass))

typedef struct _TubaAPIAnnualReportsReportDataNamedCountable TubaAPIAnnualReportsReportDataNamedCountable;
typedef struct _TubaAPIAnnualReportsReportDataNamedCountableClass TubaAPIAnnualReportsReportDataNamedCountableClass;

#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TYPE_REBLOGGED_ACCOUNT (tuba_api_annual_reports_report_data_reblogged_account_get_type ())
#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_REBLOGGED_ACCOUNT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TYPE_REBLOGGED_ACCOUNT, TubaAPIAnnualReportsReportDataRebloggedAccount))
#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_REBLOGGED_ACCOUNT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TYPE_REBLOGGED_ACCOUNT, TubaAPIAnnualReportsReportDataRebloggedAccountClass))
#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_IS_REBLOGGED_ACCOUNT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TYPE_REBLOGGED_ACCOUNT))
#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_IS_REBLOGGED_ACCOUNT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TYPE_REBLOGGED_ACCOUNT))
#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_REBLOGGED_ACCOUNT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TYPE_REBLOGGED_ACCOUNT, TubaAPIAnnualReportsReportDataRebloggedAccountClass))

typedef struct _TubaAPIAnnualReportsReportDataRebloggedAccount TubaAPIAnnualReportsReportDataRebloggedAccount;
typedef struct _TubaAPIAnnualReportsReportDataRebloggedAccountClass TubaAPIAnnualReportsReportDataRebloggedAccountClass;

#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TYPE_TOP_STATUSES (tuba_api_annual_reports_report_data_top_statuses_get_type ())
#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TOP_STATUSES(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TYPE_TOP_STATUSES, TubaAPIAnnualReportsReportDataTopStatuses))
#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TOP_STATUSES_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TYPE_TOP_STATUSES, TubaAPIAnnualReportsReportDataTopStatusesClass))
#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_IS_TOP_STATUSES(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TYPE_TOP_STATUSES))
#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_IS_TOP_STATUSES_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TYPE_TOP_STATUSES))
#define TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TOP_STATUSES_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_API_ANNUAL_REPORTS_REPORT_DATA_TYPE_TOP_STATUSES, TubaAPIAnnualReportsReportDataTopStatusesClass))

typedef struct _TubaAPIAnnualReportsReportDataTopStatuses TubaAPIAnnualReportsReportDataTopStatuses;
typedef struct _TubaAPIAnnualReportsReportDataTopStatusesClass TubaAPIAnnualReportsReportDataTopStatusesClass;

#define TUBA_API_TYPE_STATUS (tuba_api_status_get_type ())
#define TUBA_API_STATUS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_API_TYPE_STATUS, TubaAPIStatus))
#define TUBA_API_STATUS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_API_TYPE_STATUS, TubaAPIStatusClass))
#define TUBA_API_IS_STATUS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_API_TYPE_STATUS))
#define TUBA_API_IS_STATUS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_API_TYPE_STATUS))
#define TUBA_API_STATUS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_API_TYPE_STATUS, TubaAPIStatusClass))

typedef struct _TubaAPIStatus TubaAPIStatus;
typedef struct _TubaAPIStatusClass TubaAPIStatusClass;

#define TUBA_DIALOGS_ANNUAL_REPORT_TYPE_POST_BUTTON (tuba_dialogs_annual_report_post_button_get_type ())
#define TUBA_DIALOGS_ANNUAL_REPORT_POST_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_DIALOGS_ANNUAL_REPORT_TYPE_POST_BUTTON, TubaDialogsAnnualReportPostButton))
#define TUBA_DIALOGS_ANNUAL_REPORT_POST_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_DIALOGS_ANNUAL_REPORT_TYPE_POST_BUTTON, TubaDialogsAnnualReportPostButtonClass))
#define TUBA_DIALOGS_ANNUAL_REPORT_IS_POST_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_DIALOGS_ANNUAL_REPORT_TYPE_POST_BUTTON))
#define TUBA_DIALOGS_ANNUAL_REPORT_IS_POST_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_DIALOGS_ANNUAL_REPORT_TYPE_POST_BUTTON))
#define TUBA_DIALOGS_ANNUAL_REPORT_POST_BUTTON_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_DIALOGS_ANNUAL_REPORT_TYPE_POST_BUTTON, TubaDialogsAnnualReportPostButtonClass))

typedef struct _TubaDialogsAnnualReportPostButton TubaDialogsAnnualReportPostButton;
typedef struct _TubaDialogsAnnualReportPostButtonClass TubaDialogsAnnualReportPostButtonClass;
#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))

#define TUBA_API_TYPE_ATTACHMENT (tuba_api_attachment_get_type ())
#define TUBA_API_ATTACHMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_API_TYPE_ATTACHMENT, TubaAPIAttachment))
#define TUBA_API_ATTACHMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_API_TYPE_ATTACHMENT, TubaAPIAttachmentClass))
#define TUBA_API_IS_ATTACHMENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_API_TYPE_ATTACHMENT))
#define TUBA_API_IS_ATTACHMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_API_TYPE_ATTACHMENT))
#define TUBA_API_ATTACHMENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_API_TYPE_ATTACHMENT, TubaAPIAttachmentClass))

typedef struct _TubaAPIAttachment TubaAPIAttachment;
typedef struct _TubaAPIAttachmentClass TubaAPIAttachmentClass;
#define _g_bytes_unref0(var) ((var == NULL) ? NULL : (var = (g_bytes_unref (var), NULL)))

#define TUBA_TYPE_REQUEST_V2 (tuba_request_v2_get_type ())
#define TUBA_REQUEST_V2(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_TYPE_REQUEST_V2, TubaRequestV2))
#define TUBA_REQUEST_V2_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_TYPE_REQUEST_V2, TubaRequestV2Class))
#define TUBA_IS_REQUEST_V2(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_TYPE_REQUEST_V2))
#define TUBA_IS_REQUEST_V2_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_TYPE_REQUEST_V2))
#define TUBA_REQUEST_V2_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_TYPE_REQUEST_V2, TubaRequestV2Class))

typedef struct _TubaRequestV2 TubaRequestV2;
typedef struct _TubaRequestV2Class TubaRequestV2Class;
typedef enum  {
	TUBA_REQUEST_V2_METHOD_GET,
	TUBA_REQUEST_V2_METHOD_POST,
	TUBA_REQUEST_V2_METHOD_PUT,
	TUBA_REQUEST_V2_METHOD_DELETE,
	TUBA_REQUEST_V2_METHOD_PATCH
} TubaRequestV2Method;

#define TUBA_REQUEST_V2_TYPE_METHOD (tuba_request_v2_method_get_type ())

#define TUBA_TYPE_OOPSIE (tuba_oopsie_get_type ())

#define TUBA_DIALOGS_COMPOSER_DIALOG_TYPE_PRECOMPOSE (tuba_dialogs_composer_dialog_precompose_get_type ())
typedef struct _TubaDialogsComposerDialogPrecompose TubaDialogsComposerDialogPrecompose;

#define TUBA_API_TYPE_POLL (tuba_api_poll_get_type ())
#define TUBA_API_POLL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_API_TYPE_POLL, TubaAPIPoll))
#define TUBA_API_POLL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_API_TYPE_POLL, TubaAPIPollClass))
#define TUBA_API_IS_POLL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_API_TYPE_POLL))
#define TUBA_API_IS_POLL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_API_TYPE_POLL))
#define TUBA_API_POLL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_API_TYPE_POLL, TubaAPIPollClass))

typedef struct _TubaAPIPoll TubaAPIPoll;
typedef struct _TubaAPIPollClass TubaAPIPollClass;

#define TUBA_TYPE_SETTINGS (tuba_settings_get_type ())
#define TUBA_SETTINGS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_TYPE_SETTINGS, TubaSettings))
#define TUBA_SETTINGS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_TYPE_SETTINGS, TubaSettingsClass))
#define TUBA_IS_SETTINGS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_TYPE_SETTINGS))
#define TUBA_IS_SETTINGS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_TYPE_SETTINGS))
#define TUBA_SETTINGS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_TYPE_SETTINGS, TubaSettingsClass))

typedef struct _TubaSettings TubaSettings;
typedef struct _TubaSettingsClass TubaSettingsClass;

#define TUBA_DIALOGS_COMPOSER_TYPE_DIALOG (tuba_dialogs_composer_dialog_get_type ())
#define TUBA_DIALOGS_COMPOSER_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_DIALOGS_COMPOSER_TYPE_DIALOG, TubaDialogsComposerDialog))
#define TUBA_DIALOGS_COMPOSER_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_DIALOGS_COMPOSER_TYPE_DIALOG, TubaDialogsComposerDialogClass))
#define TUBA_DIALOGS_COMPOSER_IS_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_DIALOGS_COMPOSER_TYPE_DIALOG))
#define TUBA_DIALOGS_COMPOSER_IS_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_DIALOGS_COMPOSER_TYPE_DIALOG))
#define TUBA_DIALOGS_COMPOSER_DIALOG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_DIALOGS_COMPOSER_TYPE_DIALOG, TubaDialogsComposerDialogClass))

typedef struct _TubaDialogsComposerDialog TubaDialogsComposerDialog;
typedef struct _TubaDialogsComposerDialogClass TubaDialogsComposerDialogClass;
typedef struct _TubaDialogsAnnualReportShareAsyncData TubaDialogsAnnualReportShareAsyncData;

#define TUBA_TYPE_APPLICATION (tuba_application_get_type ())
#define TUBA_APPLICATION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_TYPE_APPLICATION, TubaApplication))
#define TUBA_APPLICATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_TYPE_APPLICATION, TubaApplicationClass))
#define TUBA_IS_APPLICATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_TYPE_APPLICATION))
#define TUBA_IS_APPLICATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_TYPE_APPLICATION))
#define TUBA_APPLICATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_TYPE_APPLICATION, TubaApplicationClass))

typedef struct _TubaApplication TubaApplication;
typedef struct _TubaApplicationClass TubaApplicationClass;

#define TUBA_DIALOGS_TYPE_MAIN_WINDOW (tuba_dialogs_main_window_get_type ())
#define TUBA_DIALOGS_MAIN_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_DIALOGS_TYPE_MAIN_WINDOW, TubaDialogsMainWindow))
#define TUBA_DIALOGS_MAIN_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_DIALOGS_TYPE_MAIN_WINDOW, TubaDialogsMainWindowClass))
#define TUBA_DIALOGS_IS_MAIN_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_DIALOGS_TYPE_MAIN_WINDOW))
#define TUBA_DIALOGS_IS_MAIN_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_DIALOGS_TYPE_MAIN_WINDOW))
#define TUBA_DIALOGS_MAIN_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_DIALOGS_TYPE_MAIN_WINDOW, TubaDialogsMainWindowClass))

typedef struct _TubaDialogsMainWindow TubaDialogsMainWindow;
typedef struct _TubaDialogsMainWindowClass TubaDialogsMainWindowClass;
typedef struct _TubaDialogsAnnualReportSaveAsAsyncData TubaDialogsAnnualReportSaveAsAsyncData;
#define _gsk_render_node_unref0(var) ((var == NULL) ? NULL : (var = (gsk_render_node_unref (var), NULL)))
typedef struct _TubaDialogsAnnualReportPostButtonPrivate TubaDialogsAnnualReportPostButtonPrivate;
enum  {
	TUBA_DIALOGS_ANNUAL_REPORT_POST_BUTTON_0_PROPERTY,
	TUBA_DIALOGS_ANNUAL_REPORT_POST_BUTTON_NUM_PROPERTIES
};
static GParamSpec* tuba_dialogs_annual_report_post_button_properties[TUBA_DIALOGS_ANNUAL_REPORT_POST_BUTTON_NUM_PROPERTIES];

#define TUBA_API_FILTERS_TYPE_FILTER_RESULT (tuba_api_filters_filter_result_get_type ())
#define TUBA_API_FILTERS_FILTER_RESULT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_API_FILTERS_TYPE_FILTER_RESULT, TubaAPIFiltersFilterResult))
#define TUBA_API_FILTERS_FILTER_RESULT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_API_FILTERS_TYPE_FILTER_RESULT, TubaAPIFiltersFilterResultClass))
#define TUBA_API_FILTERS_IS_FILTER_RESULT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_API_FILTERS_TYPE_FILTER_RESULT))
#define TUBA_API_FILTERS_IS_FILTER_RESULT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_API_FILTERS_TYPE_FILTER_RESULT))
#define TUBA_API_FILTERS_FILTER_RESULT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_API_FILTERS_TYPE_FILTER_RESULT, TubaAPIFiltersFilterResultClass))

typedef struct _TubaAPIFiltersFilterResult TubaAPIFiltersFilterResult;
typedef struct _TubaAPIFiltersFilterResultClass TubaAPIFiltersFilterResultClass;

#define TUBA_WIDGETS_TYPE_STATUS (tuba_widgets_status_get_type ())
#define TUBA_WIDGETS_STATUS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_WIDGETS_TYPE_STATUS, TubaWidgetsStatus))
#define TUBA_WIDGETS_STATUS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_WIDGETS_TYPE_STATUS, TubaWidgetsStatusClass))
#define TUBA_WIDGETS_IS_STATUS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_WIDGETS_TYPE_STATUS))
#define TUBA_WIDGETS_IS_STATUS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_WIDGETS_TYPE_STATUS))
#define TUBA_WIDGETS_STATUS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_WIDGETS_TYPE_STATUS, TubaWidgetsStatusClass))

typedef struct _TubaWidgetsStatus TubaWidgetsStatus;
typedef struct _TubaWidgetsStatusClass TubaWidgetsStatusClass;

#define TUBA_TYPE_WIDGETIZABLE (tuba_widgetizable_get_type ())
#define TUBA_WIDGETIZABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_TYPE_WIDGETIZABLE, TubaWidgetizable))
#define TUBA_IS_WIDGETIZABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_TYPE_WIDGETIZABLE))
#define TUBA_WIDGETIZABLE_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), TUBA_TYPE_WIDGETIZABLE, TubaWidgetizableIface))

typedef struct _TubaWidgetizable TubaWidgetizable;
typedef struct _TubaWidgetizableIface TubaWidgetizableIface;
typedef struct _TubaWidgetsStatusPrivate TubaWidgetsStatusPrivate;
typedef void (*TubaDialogsComposerDialogSuccessCallback) (TubaAPIStatus* cb_status, gpointer user_data);

#define TUBA_WIDGETS_TYPE_RICH_LABEL (tuba_widgets_rich_label_get_type ())
#define TUBA_WIDGETS_RICH_LABEL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_WIDGETS_TYPE_RICH_LABEL, TubaWidgetsRichLabel))
#define TUBA_WIDGETS_RICH_LABEL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_WIDGETS_TYPE_RICH_LABEL, TubaWidgetsRichLabelClass))
#define TUBA_WIDGETS_IS_RICH_LABEL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_WIDGETS_TYPE_RICH_LABEL))
#define TUBA_WIDGETS_IS_RICH_LABEL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_WIDGETS_TYPE_RICH_LABEL))
#define TUBA_WIDGETS_RICH_LABEL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_WIDGETS_TYPE_RICH_LABEL, TubaWidgetsRichLabelClass))

typedef struct _TubaWidgetsRichLabel TubaWidgetsRichLabel;
typedef struct _TubaWidgetsRichLabelClass TubaWidgetsRichLabelClass;

#define TUBA_WIDGETS_TYPE_MARKUP_VIEW (tuba_widgets_markup_view_get_type ())
#define TUBA_WIDGETS_MARKUP_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_WIDGETS_TYPE_MARKUP_VIEW, TubaWidgetsMarkupView))
#define TUBA_WIDGETS_MARKUP_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_WIDGETS_TYPE_MARKUP_VIEW, TubaWidgetsMarkupViewClass))
#define TUBA_WIDGETS_IS_MARKUP_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_WIDGETS_TYPE_MARKUP_VIEW))
#define TUBA_WIDGETS_IS_MARKUP_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_WIDGETS_TYPE_MARKUP_VIEW))
#define TUBA_WIDGETS_MARKUP_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_WIDGETS_TYPE_MARKUP_VIEW, TubaWidgetsMarkupViewClass))

typedef struct _TubaWidgetsMarkupView TubaWidgetsMarkupView;
typedef struct _TubaWidgetsMarkupViewClass TubaWidgetsMarkupViewClass;

#define TUBA_WIDGETS_TYPE_FADE_BIN (tuba_widgets_fade_bin_get_type ())
#define TUBA_WIDGETS_FADE_BIN(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_WIDGETS_TYPE_FADE_BIN, TubaWidgetsFadeBin))
#define TUBA_WIDGETS_FADE_BIN_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_WIDGETS_TYPE_FADE_BIN, TubaWidgetsFadeBinClass))
#define TUBA_WIDGETS_IS_FADE_BIN(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_WIDGETS_TYPE_FADE_BIN))
#define TUBA_WIDGETS_IS_FADE_BIN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_WIDGETS_TYPE_FADE_BIN))
#define TUBA_WIDGETS_FADE_BIN_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_WIDGETS_TYPE_FADE_BIN, TubaWidgetsFadeBinClass))

typedef struct _TubaWidgetsFadeBin TubaWidgetsFadeBin;
typedef struct _TubaWidgetsFadeBinClass TubaWidgetsFadeBinClass;

#define TUBA_WIDGETS_TYPE_PREVIEW_CARD (tuba_widgets_preview_card_get_type ())
#define TUBA_WIDGETS_PREVIEW_CARD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_WIDGETS_TYPE_PREVIEW_CARD, TubaWidgetsPreviewCard))
#define TUBA_WIDGETS_PREVIEW_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_WIDGETS_TYPE_PREVIEW_CARD, TubaWidgetsPreviewCardClass))
#define TUBA_WIDGETS_IS_PREVIEW_CARD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_WIDGETS_TYPE_PREVIEW_CARD))
#define TUBA_WIDGETS_IS_PREVIEW_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_WIDGETS_TYPE_PREVIEW_CARD))
#define TUBA_WIDGETS_PREVIEW_CARD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_WIDGETS_TYPE_PREVIEW_CARD, TubaWidgetsPreviewCardClass))

typedef struct _TubaWidgetsPreviewCard TubaWidgetsPreviewCard;
typedef struct _TubaWidgetsPreviewCardClass TubaWidgetsPreviewCardClass;

#define TUBA_WIDGETS_TYPE_VOTE_BOX (tuba_widgets_vote_box_get_type ())
#define TUBA_WIDGETS_VOTE_BOX(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_WIDGETS_TYPE_VOTE_BOX, TubaWidgetsVoteBox))
#define TUBA_WIDGETS_VOTE_BOX_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_WIDGETS_TYPE_VOTE_BOX, TubaWidgetsVoteBoxClass))
#define TUBA_WIDGETS_IS_VOTE_BOX(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_WIDGETS_TYPE_VOTE_BOX))
#define TUBA_WIDGETS_IS_VOTE_BOX_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_WIDGETS_TYPE_VOTE_BOX))
#define TUBA_WIDGETS_VOTE_BOX_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_WIDGETS_TYPE_VOTE_BOX, TubaWidgetsVoteBoxClass))

typedef struct _TubaWidgetsVoteBox TubaWidgetsVoteBox;
typedef struct _TubaWidgetsVoteBoxClass TubaWidgetsVoteBoxClass;

#define TUBA_VIEWS_TYPE_BASE (tuba_views_base_get_type ())
#define TUBA_VIEWS_BASE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_VIEWS_TYPE_BASE, TubaViewsBase))
#define TUBA_VIEWS_BASE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_VIEWS_TYPE_BASE, TubaViewsBaseClass))
#define TUBA_VIEWS_IS_BASE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_VIEWS_TYPE_BASE))
#define TUBA_VIEWS_IS_BASE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_VIEWS_TYPE_BASE))
#define TUBA_VIEWS_BASE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_VIEWS_TYPE_BASE, TubaViewsBaseClass))

typedef struct _TubaViewsBase TubaViewsBase;
typedef struct _TubaViewsBaseClass TubaViewsBaseClass;

#define TUBA_VIEWS_TYPE_CONTENT_BASE (tuba_views_content_base_get_type ())
#define TUBA_VIEWS_CONTENT_BASE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_VIEWS_TYPE_CONTENT_BASE, TubaViewsContentBase))
#define TUBA_VIEWS_CONTENT_BASE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_VIEWS_TYPE_CONTENT_BASE, TubaViewsContentBaseClass))
#define TUBA_VIEWS_IS_CONTENT_BASE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_VIEWS_TYPE_CONTENT_BASE))
#define TUBA_VIEWS_IS_CONTENT_BASE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_VIEWS_TYPE_CONTENT_BASE))
#define TUBA_VIEWS_CONTENT_BASE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_VIEWS_TYPE_CONTENT_BASE, TubaViewsContentBaseClass))

typedef struct _TubaViewsContentBase TubaViewsContentBase;
typedef struct _TubaViewsContentBaseClass TubaViewsContentBaseClass;

#define TUBA_VIEWS_TYPE_THREAD (tuba_views_thread_get_type ())
#define TUBA_VIEWS_THREAD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_VIEWS_TYPE_THREAD, TubaViewsThread))
#define TUBA_VIEWS_THREAD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_VIEWS_TYPE_THREAD, TubaViewsThreadClass))
#define TUBA_VIEWS_IS_THREAD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_VIEWS_TYPE_THREAD))
#define TUBA_VIEWS_IS_THREAD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_VIEWS_TYPE_THREAD))
#define TUBA_VIEWS_THREAD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_VIEWS_TYPE_THREAD, TubaViewsThreadClass))

typedef struct _TubaViewsThread TubaViewsThread;
typedef struct _TubaViewsThreadClass TubaViewsThreadClass;
typedef void (*GSimpleActionActivateCallback) (GSimpleAction* action, GVariant* parameter, gpointer user_data);

struct _TubaDialogsAnnualReport {
	AdwDialog parent_instance;
	TubaDialogsAnnualReportPrivate * priv;
};

struct _TubaDialogsAnnualReportClass {
	AdwDialogClass parent_class;
};

struct _TubaDialogsAnnualReportPrivate {
	gchar* report_year;
	GtkBox* content_box;
	AdwToastOverlay* toast_overlay;
	GtkBox* screenshot_box;
	GtkButton* share_button;
	GMenu* style_menu;
	GtkWidgetPaintable* screenshot_paintable;
	AdwHeaderBar* headerbar;
	gchar* report_alt_text;
	TubaDialogsAnnualReportBackground current_style;
};

typedef enum  {
	TUBA_OOPSIE_USER,
	TUBA_OOPSIE_PARSING,
	TUBA_OOPSIE_INSTANCE,
	TUBA_OOPSIE_INTERNAL,
	TUBA_OOPSIE_HTTP_401 = 401,
	TUBA_OOPSIE_HTTP_403 = 403,
	TUBA_OOPSIE_HTTP_404 = 404,
	TUBA_OOPSIE_HTTP_410 = 410,
	TUBA_OOPSIE_HTTP_422 = 422,
	TUBA_OOPSIE_HTTP_429 = 429,
	TUBA_OOPSIE_HTTP_500 = 500,
	TUBA_OOPSIE_HTTP_503 = 503
} TubaOopsie;
#define TUBA_OOPSIE tuba_oopsie_quark ()

struct _TubaDialogsComposerDialogPrecompose {
	gchar* content;
	gchar* spoiler;
	gchar* quote_id;
	gchar* scheduled_id;
	gchar* in_reply_to_id;
	TubaAPIPoll* poll;
	GeeArrayList* media_attachments;
	gboolean sensitive_media;
	gboolean local_only;
	gboolean force_cursor_at_start;
};

struct _TubaDialogsAnnualReportShareAsyncData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	TubaDialogsAnnualReport* self;
	GdkTexture* texture;
	TubaAPIAttachment* attachment;
	GBytes* _tmp0_;
	GBytes* _tmp1_;
	TubaAPIAttachment* _tmp2_;
	TubaAPIAttachment* _tmp3_;
	JsonBuilder* builder;
	JsonBuilder* _tmp4_;
	JsonBuilder* _tmp5_;
	JsonBuilder* _tmp6_;
	JsonBuilder* _tmp7_;
	const gchar* _tmp8_;
	JsonBuilder* _tmp9_;
	TubaRequestV2* req;
	TubaAPIAttachment* _tmp10_;
	const gchar* _tmp11_;
	const gchar* _tmp12_;
	const gchar* _tmp13_;
	gchar* _tmp14_;
	gchar* _tmp15_;
	TubaAccountStore* _tmp16_;
	TubaInstanceAccount* _tmp17_;
	TubaInstanceAccount* _tmp18_;
	TubaInstanceAccount* _tmp19_;
	TubaRequestV2* _tmp20_;
	TubaRequestV2* _tmp21_;
	TubaRequestV2* _tmp22_;
	JsonBuilder* _tmp23_;
	TubaRequestV2* _tmp24_;
	GInputStream* _tmp25_;
	GInputStream* _tmp26_;
	TubaAPIAttachment* _tmp27_;
	const gchar* _tmp28_;
	TubaAPIAttachment* _tmp29_;
	TubaAPIAttachment* _tmp30_;
	TubaAPIAttachment** _tmp31_;
	GeeArrayList* _tmp32_;
	GeeArrayList* _tmp33_;
	TubaDialogsComposerDialogPrecompose _tmp34_;
	TubaSettings* _tmp35_;
	const gchar* _tmp36_;
	const gchar* _tmp37_;
	TubaSettings* _tmp38_;
	const gchar* _tmp39_;
	const gchar* _tmp40_;
	TubaSettings* _tmp41_;
	const gchar* _tmp42_;
	const gchar* _tmp43_;
	TubaDialogsComposerDialog* _tmp44_;
	TubaDialogsComposerDialog* _tmp45_;
	GError* _inner_error0_;
};

struct _TubaDialogsAnnualReportSaveAsAsyncData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	TubaDialogsAnnualReport* self;
	GtkFileDialog* chooser;
	gchar* _tmp0_;
	const gchar* _tmp1_;
	const gchar* _tmp2_;
	gchar* _tmp3_;
	GtkFileDialog* _tmp4_;
	GFile* file;
	GtkFileDialog* _tmp5_;
	TubaApplication* _tmp6_;
	TubaDialogsMainWindow* _tmp7_;
	TubaDialogsMainWindow* _tmp8_;
	GFile* _tmp9_;
	GFile* _tmp10_;
	GdkTexture* texture;
	GdkTexture* _tmp11_;
	GdkTexture* _tmp12_;
	GFileOutputStream* stream;
	GFile* _tmp13_;
	GFileOutputStream* _tmp14_;
	GFileOutputStream* _tmp15_;
	GdkTexture* _tmp16_;
	GBytes* _tmp17_;
	GBytes* _tmp18_;
	AdwToastOverlay* _tmp19_;
	const gchar* _tmp20_;
	gchar* _tmp21_;
	gchar* _tmp22_;
	AdwToast* _tmp23_;
	GError* e;
	GError* _tmp24_;
	const gchar* _tmp25_;
	AdwToastOverlay* _tmp26_;
	GError* _tmp27_;
	const gchar* _tmp28_;
	AdwToast* _tmp29_;
	GError* _vala1_e;
	GError* _tmp30_;
	const gchar* _tmp31_;
	const gchar* _tmp32_;
	gchar* _tmp33_;
	gchar* _tmp34_;
	GError* _inner_error0_;
};

struct _TubaDialogsAnnualReportPostButton {
	GtkButton parent_instance;
	TubaDialogsAnnualReportPostButtonPrivate * priv;
};

struct _TubaDialogsAnnualReportPostButtonClass {
	GtkButtonClass parent_class;
};

struct _TubaDialogsAnnualReportPostButtonPrivate {
	TubaAPIStatus* formal;
};

struct _TubaWidgetizableIface {
	GTypeInterface parent_iface;
	GtkWidget* (*to_widget) (TubaWidgetizable* self);
	void (*open) (TubaWidgetizable* self);
	void (*resolve_open) (TubaWidgetizable* self, TubaInstanceAccount* account);
};

struct _TubaWidgetsStatus {
	GtkListBoxRow parent_instance;
	TubaWidgetsStatusPrivate * priv;
	TubaDialogsComposerDialogSuccessCallback reply_cb;
	gpointer reply_cb_target;
	GDestroyNotify reply_cb_target_destroy_notify;
	GtkBox* status_box;
	GtkBox* avatar_side;
	GtkBox* title_box;
	GtkBox* content_side;
	AdwWrapBox* name_wrapbox;
	GtkMenuButton* menu_button;
	GtkImage* header_icon;
	TubaWidgetsRichLabel* header_label;
	GtkButton* header_button;
	TubaWidgetsAvatar* avatar;
	GtkOverlay* avatar_overlay;
	GtkButton* name_button;
	TubaWidgetsRichLabel* name_label;
	GtkLabel* handle_label;
	GtkBox* indicators;
	GtkLabel* date_label;
	GtkImage* pin_indicator;
	GtkImage* edited_indicator;
	GtkImage* visibility_indicator;
	GtkBox* content_column;
	GtkStack* spoiler_stack;
	GtkBox* content_box;
	TubaWidgetsMarkupView* content;
	GtkButton* spoiler_button;
	GtkLabel* spoiler_label;
	GtkLabel* spoiler_label_rev;
	GtkBox* spoiler_status_con;
	TubaWidgetsFadeBin* fade_bin;
	GtkStack* filter_stack;
	GtkLabel* filter_label;
	GtkLabel* filter_author_label;
	TubaWidgetsPreviewCard* prev_card;
	TubaWidgetsVoteBox* poll;
};

struct _TubaWidgetsStatusClass {
	GtkListBoxRowClass parent_class;
	void (*on_open) (TubaWidgetsStatus* self);
	void (*change_kind) (TubaWidgetsStatus* self);
	void (*bind) (TubaWidgetsStatus* self);
};

static gint TubaDialogsAnnualReport_private_offset;
static gpointer tuba_dialogs_annual_report_parent_class = NULL;
VALA_EXTERN TubaAccountStore* tuba_accounts;
VALA_EXTERN TubaSettings* tuba_settings;
VALA_EXTERN TubaApplication* tuba_app;
static gint TubaDialogsAnnualReportPostButton_private_offset;
static gpointer tuba_dialogs_annual_report_post_button_parent_class = NULL;

VALA_EXTERN GType tuba_dialogs_annual_report_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaDialogsAnnualReport, g_object_unref)
static GType tuba_dialogs_annual_report_background_get_type (void) G_GNUC_CONST  G_GNUC_UNUSED ;
static TubaDialogsAnnualReportBackground tuba_dialogs_annual_report_background_from_string (const gchar* name);
static gchar* tuba_dialogs_annual_report_background_to_string (TubaDialogsAnnualReportBackground self);
static void tuba_dialogs_annual_report_on_vadjustment_changed (TubaDialogsAnnualReport* self,
                                                        GtkAdjustment* vadjustment);
VALA_EXTERN GType tuba_entity_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaEntity, g_object_unref)
VALA_EXTERN GType tuba_api_annual_reports_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPIAnnualReports, g_object_unref)
VALA_EXTERN TubaDialogsAnnualReport* tuba_dialogs_annual_report_new (TubaAPIAnnualReports* report,
                                                         gint year);
VALA_EXTERN TubaDialogsAnnualReport* tuba_dialogs_annual_report_construct (GType object_type,
                                                               TubaAPIAnnualReports* report,
                                                               gint year);
VALA_EXTERN GType tuba_widgets_avatar_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaWidgetsAvatar, g_object_unref)
VALA_EXTERN GType tuba_account_store_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAccountStore, g_object_unref)
VALA_EXTERN GType tuba_api_account_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPIAccount, g_object_unref)
VALA_EXTERN GType tuba_instance_account_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaInstanceAccount, g_object_unref)
VALA_EXTERN TubaInstanceAccount* tuba_account_store_get_active (TubaAccountStore* self);
VALA_EXTERN TubaWidgetsAvatar* tuba_widgets_avatar_new (void);
VALA_EXTERN TubaWidgetsAvatar* tuba_widgets_avatar_construct (GType object_type);
VALA_EXTERN void tuba_widgets_avatar_set_account (TubaWidgetsAvatar* self,
                                      TubaAPIAccount* value);
VALA_EXTERN void tuba_widgets_avatar_set_size (TubaWidgetsAvatar* self,
                                   gint value);
VALA_EXTERN GType tuba_api_annual_reports_report_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPIAnnualReportsReport, g_object_unref)
VALA_EXTERN GeeArrayList* tuba_api_annual_reports_get_annual_reports (TubaAPIAnnualReports* self);
VALA_EXTERN gint32 tuba_api_annual_reports_report_get_year (TubaAPIAnnualReportsReport* self);
VALA_EXTERN GeeArrayList* tuba_api_annual_reports_get_accounts (TubaAPIAnnualReports* self);
VALA_EXTERN const gchar* tuba_api_account_get_id (TubaAPIAccount* self);
VALA_EXTERN GType tuba_api_annual_reports_report_data_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPIAnnualReportsReportData, g_object_unref)
VALA_EXTERN TubaAPIAnnualReportsReportData* tuba_api_annual_reports_report_get_data (TubaAPIAnnualReportsReport* self);
VALA_EXTERN GType tuba_api_annual_reports_report_data_time_series_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPIAnnualReportsReportDataTimeSeries, g_object_unref)
VALA_EXTERN GeeArrayList* tuba_api_annual_reports_report_data_get_time_series (TubaAPIAnnualReportsReportData* self);
VALA_EXTERN gint64 tuba_api_annual_reports_report_data_time_series_get_statuses (TubaAPIAnnualReportsReportDataTimeSeries* self);
VALA_EXTERN gint64 tuba_api_annual_reports_report_data_time_series_get_followers (TubaAPIAnnualReportsReportDataTimeSeries* self);
VALA_EXTERN gint64 tuba_api_annual_reports_report_data_time_series_get_following (TubaAPIAnnualReportsReportDataTimeSeries* self);
VALA_EXTERN gchar* tuba_utils_units_shorten (gint64 unit);
VALA_EXTERN GType tuba_api_annual_reports_report_data_countable_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPIAnnualReportsReportDataCountable, g_object_unref)
VALA_EXTERN GType tuba_api_annual_reports_report_data_named_countable_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPIAnnualReportsReportDataNamedCountable, g_object_unref)
VALA_EXTERN GeeArrayList* tuba_api_annual_reports_report_data_get_top_hashtags (TubaAPIAnnualReportsReportData* self);
VALA_EXTERN gint64 tuba_api_annual_reports_report_data_countable_get_count (TubaAPIAnnualReportsReportDataCountable* self);
VALA_EXTERN const gchar* tuba_api_annual_reports_report_data_named_countable_get_name (TubaAPIAnnualReportsReportDataNamedCountable* self);
VALA_EXTERN GeeArrayList* tuba_api_annual_reports_report_data_get_most_used_apps (TubaAPIAnnualReportsReportData* self);
static void _vala_array_add5 (gchar** * array,
                       gint* length,
                       gint* size,
                       gchar* value);
static gchar** _vala_array_dup10 (gchar** self,
                           gssize length);
VALA_EXTERN GType tuba_api_annual_reports_report_data_reblogged_account_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPIAnnualReportsReportDataRebloggedAccount, g_object_unref)
VALA_EXTERN GeeArrayList* tuba_api_annual_reports_report_data_get_commonly_interacted_with_accounts (TubaAPIAnnualReportsReportData* self);
static gint tuba_dialogs_annual_report_sort_countable (TubaDialogsAnnualReport* self,
                                                TubaAPIAnnualReportsReportDataCountable* a,
                                                TubaAPIAnnualReportsReportDataCountable* b);
static gint _tuba_dialogs_annual_report_sort_countable_gcompare_data_func (gconstpointer a,
                                                                    gconstpointer b,
                                                                    gpointer self);
VALA_EXTERN const gchar* tuba_api_annual_reports_report_data_reblogged_account_get_account_id (TubaAPIAnnualReportsReportDataRebloggedAccount* self);
VALA_EXTERN const gchar* tuba_api_account_get_display_name (TubaAPIAccount* self);
static void _vala_array_add6 (gchar** * array,
                       gint* length,
                       gint* size,
                       gchar* value);
VALA_EXTERN GType tuba_api_annual_reports_report_data_top_statuses_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPIAnnualReportsReportDataTopStatuses, g_object_unref)
VALA_EXTERN TubaAPIAnnualReportsReportDataTopStatuses* tuba_api_annual_reports_report_data_get_top_statuses (TubaAPIAnnualReportsReportData* self);
VALA_EXTERN const gchar* tuba_api_annual_reports_report_data_top_statuses_get_by_favourites (TubaAPIAnnualReportsReportDataTopStatuses* self);
VALA_EXTERN GType tuba_api_status_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPIStatus, g_object_unref)
VALA_EXTERN GeeArrayList* tuba_api_annual_reports_get_statuses (TubaAPIAnnualReports* self);
VALA_EXTERN const gchar* tuba_api_status_get_id (TubaAPIStatus* self);
static GType tuba_dialogs_annual_report_post_button_get_type (void) G_GNUC_CONST  G_GNUC_UNUSED ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaDialogsAnnualReportPostButton, g_object_unref)
static TubaDialogsAnnualReportPostButton* tuba_dialogs_annual_report_post_button_new (TubaAPIStatus* status);
static TubaDialogsAnnualReportPostButton* tuba_dialogs_annual_report_post_button_construct (GType object_type,
                                                                                     TubaAPIStatus* status);
static void tuba_dialogs_annual_report_on_post_button_clicked (TubaDialogsAnnualReport* self);
static void _tuba_dialogs_annual_report_on_post_button_clicked_gtk_button_clicked (GtkButton* _sender,
                                                                            gpointer self);
VALA_EXTERN const gchar* tuba_api_annual_reports_report_data_top_statuses_get_by_reblogs (TubaAPIAnnualReportsReportDataTopStatuses* self);
VALA_EXTERN const gchar* tuba_api_annual_reports_report_data_top_statuses_get_by_replies (TubaAPIAnnualReportsReportDataTopStatuses* self);
static void tuba_dialogs_annual_report_on_share (TubaDialogsAnnualReport* self);
static GdkTexture* tuba_dialogs_annual_report_do_screenshot (TubaDialogsAnnualReport* self);
static void tuba_dialogs_annual_report_share_async (TubaDialogsAnnualReport* self,
                                             GdkTexture* texture,
                                             GAsyncReadyCallback _callback_,
                                             gpointer _user_data_);
static void tuba_dialogs_annual_report_share_finish (TubaDialogsAnnualReport* self,
                                              GAsyncResult* _res_,
                                              GError** error);
static void __lambda104_ (TubaDialogsAnnualReport* self,
                   GObject* obj,
                   GAsyncResult* res);
static void ___lambda104__gasync_ready_callback (GObject* source_object,
                                          GAsyncResult* res,
                                          gpointer self);
static void tuba_dialogs_annual_report_share_async_data_free (gpointer _data);
static gboolean tuba_dialogs_annual_report_share_async_co (TubaDialogsAnnualReportShareAsyncData* _data_);
VALA_EXTERN GType tuba_api_attachment_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPIAttachment, g_object_unref)
VALA_EXTERN void tuba_api_attachment_upload (const gchar* uri,
                                 GBytes* bytes,
                                 const gchar* mime_type,
                                 GAsyncReadyCallback _callback_,
                                 gpointer _user_data_);
VALA_EXTERN TubaAPIAttachment* tuba_api_attachment_upload_finish (GAsyncResult* _res_,
                                                      GError** error);
static void tuba_dialogs_annual_report_share_async_ready (GObject* source_object,
                                                   GAsyncResult* _res_,
                                                   gpointer _user_data_);
VALA_EXTERN GType tuba_request_v2_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaRequestV2, g_object_unref)
VALA_EXTERN const gchar* tuba_api_attachment_get_id (TubaAPIAttachment* self);
VALA_EXTERN GType tuba_request_v2_method_get_type (void) G_GNUC_CONST ;
VALA_EXTERN TubaRequestV2* tuba_request_v2_new (const gchar* url,
                                    TubaRequestV2Method method);
VALA_EXTERN TubaRequestV2* tuba_request_v2_construct (GType object_type,
                                          const gchar* url,
                                          TubaRequestV2Method method);
VALA_EXTERN void tuba_request_v2_set_account (TubaRequestV2* self,
                                  TubaInstanceAccount* value);
VALA_EXTERN void tuba_request_v2_set_body_from_json (TubaRequestV2* self,
                                         JsonBuilder* json_builder);
VALA_EXTERN void tuba_request_v2_exec (TubaRequestV2* self,
                           GAsyncReadyCallback _callback_,
                           gpointer _user_data_);
VALA_EXTERN GQuark tuba_oopsie_quark (void);
VALA_EXTERN GType tuba_oopsie_get_type (void) G_GNUC_CONST ;
VALA_EXTERN GInputStream* tuba_request_v2_exec_finish (TubaRequestV2* self,
                                           GAsyncResult* _res_,
                                           SoupMessageHeaders** response_headers,
                                           GError** error);
VALA_EXTERN void tuba_api_attachment_set_description (TubaAPIAttachment* self,
                                          const gchar* value);
VALA_EXTERN GType tuba_dialogs_composer_dialog_precompose_get_type (void) G_GNUC_CONST ;
VALA_EXTERN GType tuba_api_poll_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPIPoll, g_object_unref)
VALA_EXTERN TubaDialogsComposerDialogPrecompose* tuba_dialogs_composer_dialog_precompose_dup (const TubaDialogsComposerDialogPrecompose* self);
VALA_EXTERN void tuba_dialogs_composer_dialog_precompose_free (TubaDialogsComposerDialogPrecompose* self);
VALA_EXTERN void tuba_dialogs_composer_dialog_precompose_copy (const TubaDialogsComposerDialogPrecompose* self,
                                                   TubaDialogsComposerDialogPrecompose* dest);
VALA_EXTERN void tuba_dialogs_composer_dialog_precompose_destroy (TubaDialogsComposerDialogPrecompose* self);
G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC (TubaDialogsComposerDialogPrecompose, tuba_dialogs_composer_dialog_precompose_destroy)
VALA_EXTERN GType tuba_settings_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaSettings, g_object_unref)
VALA_EXTERN const gchar* tuba_settings_get_default_post_visibility (TubaSettings* self);
VALA_EXTERN const gchar* tuba_settings_get_default_language (TubaSettings* self);
VALA_EXTERN const gchar* tuba_settings_get_default_quote_policy (TubaSettings* self);
VALA_EXTERN TubaDialogsComposerDialog* tuba_dialogs_composer_dialog_new (TubaDialogsComposerDialogPrecompose* precompose,
                                                             const gchar* default_visibility,
                                                             const gchar* default_language,
                                                             const gchar* post_button_label,
                                                             gboolean edit_mode,
                                                             gboolean can_schedule,
                                                             const gchar* default_quote_policy,
                                                             gboolean can_update_draft);
VALA_EXTERN TubaDialogsComposerDialog* tuba_dialogs_composer_dialog_construct (GType object_type,
                                                                   TubaDialogsComposerDialogPrecompose* precompose,
                                                                   const gchar* default_visibility,
                                                                   const gchar* default_language,
                                                                   const gchar* post_button_label,
                                                                   gboolean edit_mode,
                                                                   gboolean can_schedule,
                                                                   const gchar* default_quote_policy,
                                                                   gboolean can_update_draft);
VALA_EXTERN GType tuba_dialogs_composer_dialog_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaDialogsComposerDialog, g_object_unref)
static void tuba_dialogs_annual_report_save_with_background (TubaDialogsAnnualReport* self);
static void tuba_dialogs_annual_report_save_as_async (TubaDialogsAnnualReport* self,
                                               GAsyncReadyCallback _callback_,
                                               gpointer _user_data_);
static void tuba_dialogs_annual_report_save_as_finish (TubaDialogsAnnualReport* self,
                                                GAsyncResult* _res_);
static void tuba_dialogs_annual_report_save_as_async_data_free (gpointer _data);
static gboolean tuba_dialogs_annual_report_save_as_async_co (TubaDialogsAnnualReportSaveAsAsyncData* _data_);
VALA_EXTERN GType tuba_application_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaApplication, g_object_unref)
VALA_EXTERN GType tuba_dialogs_main_window_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaDialogsMainWindow, g_object_unref)
VALA_EXTERN TubaDialogsMainWindow* tuba_application_get_main_window (TubaApplication* self);
static void tuba_dialogs_annual_report_save_as_async_ready (GObject* source_object,
                                                     GAsyncResult* _res_,
                                                     gpointer _user_data_);
static void tuba_dialogs_annual_report_on_change_style (TubaDialogsAnnualReport* self,
                                                 GSimpleAction* action,
                                                 GVariant* value);
VALA_EXTERN TubaAPIStatus* tuba_api_status_get_formal (TubaAPIStatus* self);
VALA_EXTERN GType tuba_api_filters_filter_result_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPIFiltersFilterResult, g_object_unref)
VALA_EXTERN void tuba_api_status_set_filtered (TubaAPIStatus* self,
                                   GeeArrayList* value);
VALA_EXTERN void tuba_api_status_set_tuba_spoiler_revealed (TubaAPIStatus* self,
                                                gboolean value);
VALA_EXTERN GType tuba_widgets_status_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaWidgetsStatus, g_object_unref)
VALA_EXTERN GType tuba_widgetizable_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaWidgetizable, g_object_unref)
VALA_EXTERN GtkWidget* tuba_widgetizable_to_widget (TubaWidgetizable* self);
VALA_EXTERN void tuba_widgets_status_toggle_actions_visibility (TubaWidgetsStatus* self,
                                                    gboolean visible);
VALA_EXTERN GType tuba_widgets_rich_label_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaWidgetsRichLabel, g_object_unref)
VALA_EXTERN GType tuba_widgets_markup_view_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaWidgetsMarkupView, g_object_unref)
VALA_EXTERN GType tuba_widgets_fade_bin_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaWidgetsFadeBin, g_object_unref)
VALA_EXTERN GType tuba_widgets_preview_card_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaWidgetsPreviewCard, g_object_unref)
VALA_EXTERN GType tuba_widgets_vote_box_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaWidgetsVoteBox, g_object_unref)
static void tuba_dialogs_annual_report_post_button_on_clicked (TubaDialogsAnnualReportPostButton* self);
static void _tuba_dialogs_annual_report_post_button_on_clicked_gtk_button_clicked (GtkButton* _sender,
                                                                            gpointer self);
VALA_EXTERN GType tuba_views_base_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaViewsBase, g_object_unref)
VALA_EXTERN GType tuba_views_content_base_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaViewsContentBase, g_object_unref)
VALA_EXTERN GType tuba_views_thread_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaViewsThread, g_object_unref)
VALA_EXTERN TubaViewsThread* tuba_views_thread_new (TubaAPIStatus* status);
VALA_EXTERN TubaViewsThread* tuba_views_thread_construct (GType object_type,
                                              TubaAPIStatus* status);
VALA_EXTERN TubaViewsBase* tuba_dialogs_main_window_open_view (TubaDialogsMainWindow* self,
                                                   TubaViewsBase* view);
static GObject * tuba_dialogs_annual_report_post_button_constructor (GType type,
                                                              guint n_construct_properties,
                                                              GObjectConstructParam * construct_properties);
static void tuba_dialogs_annual_report_post_button_finalize (GObject * obj);
static GType tuba_dialogs_annual_report_post_button_get_type_once (void);
static GObject * tuba_dialogs_annual_report_constructor (GType type,
                                                  guint n_construct_properties,
                                                  GObjectConstructParam * construct_properties);
static void _tuba_dialogs_annual_report_on_change_style_gsimple_action_activate_callback (GSimpleAction* action,
                                                                                   GVariant* parameter,
                                                                                   gpointer self);
static void _tuba_dialogs_annual_report_on_share_gtk_button_clicked (GtkButton* _sender,
                                                              gpointer self);
static void _tuba_dialogs_annual_report_save_with_background_gtk_button_clicked (GtkButton* _sender,
                                                                          gpointer self);
static void _tuba_dialogs_annual_report_on_vadjustment_changed_gtk_adjustment_value_changed (GtkAdjustment* _sender,
                                                                                      gpointer self);
static void tuba_dialogs_annual_report_finalize (GObject * obj);
static GType tuba_dialogs_annual_report_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 inline gpointer
tuba_dialogs_annual_report_get_instance_private (TubaDialogsAnnualReport* self)
{
	return G_STRUCT_MEMBER_P (self, TubaDialogsAnnualReport_private_offset);
}

static TubaDialogsAnnualReportBackground
tuba_dialogs_annual_report_background_from_string (const gchar* name)
{
	gchar* _tmp0_;
	gchar* _tmp1_;
	GQuark _tmp3_ = 0U;
	static GQuark _tmp2_label0 = 0;
	static GQuark _tmp2_label1 = 0;
	static GQuark _tmp2_label2 = 0;
	static GQuark _tmp2_label3 = 0;
	TubaDialogsAnnualReportBackground result;
	g_return_val_if_fail (name != NULL, 0);
	_tmp0_ = g_utf8_strdown (name, (gssize) -1);
	_tmp1_ = _tmp0_;
	_tmp3_ = (NULL == _tmp1_) ? 0 : g_quark_from_string (_tmp1_);
	g_free (_tmp1_);
	if (_tmp3_ == ((0 != _tmp2_label0) ? _tmp2_label0 : (_tmp2_label0 = g_quark_from_static_string ("window")))) {
		switch (0) {
			default:
			{
				result = TUBA_DIALOGS_ANNUAL_REPORT_BACKGROUND_WINDOW;
				return result;
			}
		}
	} else if (_tmp3_ == ((0 != _tmp2_label1) ? _tmp2_label1 : (_tmp2_label1 = g_quark_from_static_string ("accent")))) {
		switch (0) {
			default:
			{
				result = TUBA_DIALOGS_ANNUAL_REPORT_BACKGROUND_ACCENT;
				return result;
			}
		}
	} else if (_tmp3_ == ((0 != _tmp2_label2) ? _tmp2_label2 : (_tmp2_label2 = g_quark_from_static_string ("pride")))) {
		switch (0) {
			default:
			{
				result = TUBA_DIALOGS_ANNUAL_REPORT_BACKGROUND_PRIDE;
				return result;
			}
		}
	} else if (_tmp3_ == ((0 != _tmp2_label3) ? _tmp2_label3 : (_tmp2_label3 = g_quark_from_static_string ("trans")))) {
		switch (0) {
			default:
			{
				result = TUBA_DIALOGS_ANNUAL_REPORT_BACKGROUND_TRANS;
				return result;
			}
		}
	} else {
		switch (0) {
			default:
			{
				result = TUBA_DIALOGS_ANNUAL_REPORT_BACKGROUND_TRANSPARENT;
				return result;
			}
		}
	}
}

static gchar*
tuba_dialogs_annual_report_background_to_string (TubaDialogsAnnualReportBackground self)
{
	gchar* result;
	switch (self) {
		case TUBA_DIALOGS_ANNUAL_REPORT_BACKGROUND_WINDOW:
		{
			gchar* _tmp0_;
			_tmp0_ = g_strdup ("style-window");
			result = _tmp0_;
			return result;
		}
		case TUBA_DIALOGS_ANNUAL_REPORT_BACKGROUND_ACCENT:
		{
			gchar* _tmp1_;
			_tmp1_ = g_strdup ("style-accent");
			result = _tmp1_;
			return result;
		}
		case TUBA_DIALOGS_ANNUAL_REPORT_BACKGROUND_PRIDE:
		{
			gchar* _tmp2_;
			_tmp2_ = g_strdup ("style-pride");
			result = _tmp2_;
			return result;
		}
		case TUBA_DIALOGS_ANNUAL_REPORT_BACKGROUND_TRANS:
		{
			gchar* _tmp3_;
			_tmp3_ = g_strdup ("style-trans");
			result = _tmp3_;
			return result;
		}
		default:
		{
			gchar* _tmp4_;
			_tmp4_ = g_strdup ("");
			result = _tmp4_;
			return result;
		}
	}
}

 G_GNUC_NO_INLINE static GType
tuba_dialogs_annual_report_background_get_type_once (void)
{
	static const GEnumValue values[] = {{TUBA_DIALOGS_ANNUAL_REPORT_BACKGROUND_TRANSPARENT, "TUBA_DIALOGS_ANNUAL_REPORT_BACKGROUND_TRANSPARENT", "transparent"}, {TUBA_DIALOGS_ANNUAL_REPORT_BACKGROUND_WINDOW, "TUBA_DIALOGS_ANNUAL_REPORT_BACKGROUND_WINDOW", "window"}, {TUBA_DIALOGS_ANNUAL_REPORT_BACKGROUND_ACCENT, "TUBA_DIALOGS_ANNUAL_REPORT_BACKGROUND_ACCENT", "accent"}, {TUBA_DIALOGS_ANNUAL_REPORT_BACKGROUND_PRIDE, "TUBA_DIALOGS_ANNUAL_REPORT_BACKGROUND_PRIDE", "pride"}, {TUBA_DIALOGS_ANNUAL_REPORT_BACKGROUND_TRANS, "TUBA_DIALOGS_ANNUAL_REPORT_BACKGROUND_TRANS", "trans"}, {0, NULL, NULL}};
	GType tuba_dialogs_annual_report_background_type_id;
	tuba_dialogs_annual_report_background_type_id = g_enum_register_static ("TubaDialogsAnnualReportBackground", values);
	return tuba_dialogs_annual_report_background_type_id;
}

static GType
tuba_dialogs_annual_report_background_get_type (void)
{
	static GType tuba_dialogs_annual_report_background_type_id__once = 0;
	if (g_once_init_enter_pointer (&tuba_dialogs_annual_report_background_type_id__once)) {
		GType tuba_dialogs_annual_report_background_type_id;
		tuba_dialogs_annual_report_background_type_id = tuba_dialogs_annual_report_background_get_type_once ();
		g_once_init_leave_pointer (&tuba_dialogs_annual_report_background_type_id__once, tuba_dialogs_annual_report_background_type_id);
	}
	return tuba_dialogs_annual_report_background_type_id__once;
}

static void
tuba_dialogs_annual_report_on_vadjustment_changed (TubaDialogsAnnualReport* self,
                                                   GtkAdjustment* vadjustment)
{
	AdwHeaderBar* _tmp0_;
	gdouble _tmp1_;
	gdouble _tmp2_;
	g_return_if_fail (self != NULL);
	g_return_if_fail (vadjustment != NULL);
	_tmp0_ = self->priv->headerbar;
	_tmp1_ = gtk_adjustment_get_value (vadjustment);
	_tmp2_ = _tmp1_;
	adw_header_bar_set_show_title (_tmp0_, _tmp2_ > ((gdouble) 0));
}

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

static const gchar*
string_to_string (const gchar* self)
{
	const gchar* result;
	g_return_val_if_fail (self != NULL, NULL);
	result = self;
	return result;
}

static void
_vala_array_add5 (gchar** * array,
                  gint* length,
                  gint* size,
                  gchar* value)
{
	if ((*length) == (*size)) {
		*size = (*size) ? (2 * (*size)) : 4;
		*array = g_renew (gchar*, *array, (*size) + 1);
	}
	(*array)[(*length)++] = value;
	(*array)[*length] = NULL;
}

static gchar**
_vala_array_dup10 (gchar** self,
                   gssize length)
{
	if (length >= 0) {
		gchar** result;
		gssize i;
		result = g_new0 (gchar*, length + 1);
		for (i = 0; i < length; i++) {
			gchar* _tmp0_;
			_tmp0_ = g_strdup (self[i]);
			result[i] = _tmp0_;
		}
		return result;
	}
	return NULL;
}

static gint
_tuba_dialogs_annual_report_sort_countable_gcompare_data_func (gconstpointer a,
                                                               gconstpointer b,
                                                               gpointer self)
{
	gint result;
	result = tuba_dialogs_annual_report_sort_countable ((TubaDialogsAnnualReport*) self, (TubaAPIAnnualReportsReportDataCountable*) a, (TubaAPIAnnualReportsReportDataCountable*) b);
	return result;
}

static void
_vala_array_add6 (gchar** * array,
                  gint* length,
                  gint* size,
                  gchar* value)
{
	if ((*length) == (*size)) {
		*size = (*size) ? (2 * (*size)) : 4;
		*array = g_renew (gchar*, *array, (*size) + 1);
	}
	(*array)[(*length)++] = value;
	(*array)[*length] = NULL;
}

static gchar*
_vala_g_strjoinv (const gchar* separator,
                  gchar** str_array,
                  gint str_array_length1)
{
	gboolean _tmp0_ = FALSE;
	gchar* result;
	if (separator == NULL) {
		separator = "";
	}
	if (str_array != NULL) {
		gboolean _tmp1_ = FALSE;
		if (str_array_length1 > 0) {
			_tmp1_ = TRUE;
		} else {
			gboolean _tmp2_ = FALSE;
			if (str_array_length1 == -1) {
				const gchar* _tmp3_;
				_tmp3_ = str_array[0];
				_tmp2_ = _tmp3_ != NULL;
			} else {
				_tmp2_ = FALSE;
			}
			_tmp1_ = _tmp2_;
		}
		_tmp0_ = _tmp1_;
	} else {
		_tmp0_ = FALSE;
	}
	if (_tmp0_) {
		gint i = 0;
		gsize len = 0UL;
		gint _tmp16_;
		gint _tmp17_;
		const gchar* res = NULL;
		void* _tmp18_;
		const gchar* _tmp19_ = NULL;
		const gchar* _tmp20_;
		void* ptr = NULL;
		const gchar* _tmp22_;
		void* _tmp23_;
		const gchar* _tmp33_;
		len = (gsize) 1;
		{
			gboolean _tmp4_ = FALSE;
			i = 0;
			_tmp4_ = TRUE;
			while (TRUE) {
				gboolean _tmp6_ = FALSE;
				gboolean _tmp7_ = FALSE;
				gint _tmp10_ = 0;
				const gchar* _tmp11_;
				if (!_tmp4_) {
					gint _tmp5_;
					_tmp5_ = i;
					i = _tmp5_ + 1;
				}
				_tmp4_ = FALSE;
				if (str_array_length1 != -1) {
					_tmp7_ = i < str_array_length1;
				} else {
					_tmp7_ = FALSE;
				}
				if (_tmp7_) {
					_tmp6_ = TRUE;
				} else {
					gboolean _tmp8_ = FALSE;
					if (str_array_length1 == -1) {
						const gchar* _tmp9_;
						_tmp9_ = str_array[i];
						_tmp8_ = _tmp9_ != NULL;
					} else {
						_tmp8_ = FALSE;
					}
					_tmp6_ = _tmp8_;
				}
				if (!_tmp6_) {
					break;
				}
				_tmp11_ = str_array[i];
				if (_tmp11_ != NULL) {
					const gchar* _tmp12_;
					gint _tmp13_;
					gint _tmp14_;
					_tmp12_ = str_array[i];
					_tmp13_ = strlen ((const gchar*) _tmp12_);
					_tmp14_ = _tmp13_;
					_tmp10_ = _tmp14_;
				} else {
					_tmp10_ = 0;
				}
				len += (gsize) _tmp10_;
			}
		}
		if (i == 0) {
			gchar* _tmp15_;
			_tmp15_ = g_strdup ("");
			result = _tmp15_;
			return result;
		}
		str_array_length1 = i;
		_tmp16_ = strlen ((const gchar*) separator);
		_tmp17_ = _tmp16_;
		len += (gsize) (_tmp17_ * (i - 1));
		_tmp18_ = g_malloc (len);
		res = _tmp18_;
		_tmp20_ = str_array[0];
		if (_tmp20_ != NULL) {
			const gchar* _tmp21_;
			_tmp21_ = str_array[0];
			_tmp19_ = (const gchar*) _tmp21_;
		} else {
			_tmp19_ = "";
		}
		_tmp22_ = res;
		_tmp23_ = g_stpcpy ((void*) _tmp22_, _tmp19_);
		ptr = _tmp23_;
		{
			gboolean _tmp24_ = FALSE;
			i = 1;
			_tmp24_ = TRUE;
			while (TRUE) {
				void* _tmp26_;
				void* _tmp27_;
				const gchar* _tmp28_ = NULL;
				const gchar* _tmp29_;
				void* _tmp31_;
				void* _tmp32_;
				if (!_tmp24_) {
					gint _tmp25_;
					_tmp25_ = i;
					i = _tmp25_ + 1;
				}
				_tmp24_ = FALSE;
				if (!(i < str_array_length1)) {
					break;
				}
				_tmp26_ = ptr;
				_tmp27_ = g_stpcpy (_tmp26_, (const gchar*) separator);
				ptr = _tmp27_;
				_tmp29_ = str_array[i];
				if (_tmp29_ != NULL) {
					const gchar* _tmp30_;
					_tmp30_ = str_array[i];
					_tmp28_ = (const gchar*) _tmp30_;
				} else {
					_tmp28_ = "";
				}
				_tmp31_ = ptr;
				_tmp32_ = g_stpcpy (_tmp31_, _tmp28_);
				ptr = _tmp32_;
			}
		}
		_tmp33_ = res;
		res = NULL;
		result = (gchar*) _tmp33_;
		return result;
	} else {
		gchar* _tmp34_;
		_tmp34_ = g_strdup ("");
		result = _tmp34_;
		return result;
	}
}

static void
_tuba_dialogs_annual_report_on_post_button_clicked_gtk_button_clicked (GtkButton* _sender,
                                                                       gpointer self)
{
	tuba_dialogs_annual_report_on_post_button_clicked ((TubaDialogsAnnualReport*) self);
}

TubaDialogsAnnualReport*
tuba_dialogs_annual_report_construct (GType object_type,
                                      TubaAPIAnnualReports* report,
                                      gint year)
{
	TubaDialogsAnnualReport * self = NULL;
	gchar* _tmp0_;
	gchar* _tmp1_;
	gchar** _tmp2_;
	GtkBox* _tmp3_ = NULL;
	GtkBox* _tmp4_;
	GtkWidgetPaintable* _tmp5_;
	GtkBox* _tmp6_;
	GtkBox* _tmp7_;
	TubaWidgetsAvatar* avi = NULL;
	TubaAccountStore* _tmp8_;
	TubaInstanceAccount* _tmp9_;
	TubaInstanceAccount* _tmp10_;
	TubaAPIAccount* _tmp11_;
	TubaWidgetsAvatar* _tmp12_ = NULL;
	TubaWidgetsAvatar* _tmp13_;
	GtkBox* _tmp14_;
	TubaWidgetsAvatar* _tmp15_;
	TubaAPIAnnualReportsReport* current_report = NULL;
	gboolean _tmp16_ = FALSE;
	TubaAPIAnnualReportsReport* _tmp42_;
	gint32 _tmp43_;
	gint32 _tmp44_;
	gchar* _tmp45_;
	const gchar* _tmp46_;
	const gchar* _tmp47_;
	gchar* _tmp48_;
	gchar* _tmp49_;
	gchar* _tmp50_;
	gchar* title = NULL;
	const gchar* _tmp51_;
	gchar* _tmp52_;
	const gchar* _tmp53_;
	GtkBox* _tmp54_;
	const gchar* _tmp55_;
	gchar* _tmp56_;
	gchar** _tmp57_;
	GtkLabel* _tmp58_ = NULL;
	GtkLabel* _tmp59_;
	GtkFlowBox* stats_flowbox = NULL;
	GtkFlowBox* _tmp60_ = NULL;
	GtkBox* _tmp61_;
	GtkFlowBox* _tmp62_;
	GeeHashMap* report_accounts = NULL;
	GeeHashMap* _tmp63_;
	gint64 total_new_followers = 0LL;
	gint64 total_new_followings = 0LL;
	TubaAPIAnnualReportsReport* _tmp78_;
	TubaAPIAnnualReportsReportData* _tmp79_;
	TubaAPIAnnualReportsReportData* _tmp80_;
	GeeArrayList* _tmp81_;
	GeeArrayList* _tmp82_;
	gint _tmp83_;
	gint _tmp84_;
	TubaAPIAnnualReportsReport* _tmp132_;
	TubaAPIAnnualReportsReportData* _tmp133_;
	TubaAPIAnnualReportsReportData* _tmp134_;
	GeeArrayList* _tmp135_;
	GeeArrayList* _tmp136_;
	gint _tmp137_;
	gint _tmp138_;
	TubaAPIAnnualReportsReport* _tmp190_;
	TubaAPIAnnualReportsReportData* _tmp191_;
	TubaAPIAnnualReportsReportData* _tmp192_;
	GeeArrayList* _tmp193_;
	GeeArrayList* _tmp194_;
	gint _tmp195_;
	gint _tmp196_;
	TubaAPIAnnualReportsReport* _tmp254_;
	TubaAPIAnnualReportsReportData* _tmp255_;
	TubaAPIAnnualReportsReportData* _tmp256_;
	GeeArrayList* _tmp257_;
	GeeArrayList* _tmp258_;
	gint _tmp259_;
	gint _tmp260_;
	GtkBox* advanced_box = NULL;
	GtkBox* _tmp329_;
	GtkBox* _tmp330_;
	GtkBox* _tmp331_;
	gboolean _tmp332_ = FALSE;
	TubaAPIAnnualReportsReport* _tmp386_;
	TubaAPIAnnualReportsReportData* _tmp387_;
	TubaAPIAnnualReportsReportData* _tmp388_;
	TubaAPIAnnualReportsReportDataTopStatuses* _tmp389_;
	TubaAPIAnnualReportsReportDataTopStatuses* _tmp390_;
	const gchar* _tmp391_;
	const gchar* _tmp392_;
	TubaAPIAnnualReportsReport* _tmp425_;
	TubaAPIAnnualReportsReportData* _tmp426_;
	TubaAPIAnnualReportsReportData* _tmp427_;
	TubaAPIAnnualReportsReportDataTopStatuses* _tmp428_;
	TubaAPIAnnualReportsReportDataTopStatuses* _tmp429_;
	const gchar* _tmp430_;
	const gchar* _tmp431_;
	TubaAPIAnnualReportsReport* _tmp464_;
	TubaAPIAnnualReportsReportData* _tmp465_;
	TubaAPIAnnualReportsReportData* _tmp466_;
	TubaAPIAnnualReportsReportDataTopStatuses* _tmp467_;
	TubaAPIAnnualReportsReportDataTopStatuses* _tmp468_;
	const gchar* _tmp469_;
	const gchar* _tmp470_;
	g_return_val_if_fail (report != NULL, NULL);
	self = (TubaDialogsAnnualReport*) g_object_new (object_type, NULL);
	_tmp0_ = g_strdup ("annual-screenshot-box");
	_tmp1_ = g_strdup ("style-window");
	_tmp2_ = g_new0 (gchar*, 2 + 1);
	_tmp2_[0] = _tmp0_;
	_tmp2_[1] = _tmp1_;
	_tmp3_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 12);
	gtk_widget_set_css_classes ((GtkWidget*) _tmp3_, _tmp2_);
	_tmp2_ = (_vala_array_free (_tmp2_, 2, (GDestroyNotify) g_free), NULL);
	g_object_ref_sink (_tmp3_);
	_g_object_unref0 (self->priv->screenshot_box);
	self->priv->screenshot_box = _tmp3_;
	_tmp4_ = self->priv->screenshot_box;
	_tmp5_ = (GtkWidgetPaintable*) gtk_widget_paintable_new ((GtkWidget*) _tmp4_);
	_g_object_unref0 (self->priv->screenshot_paintable);
	self->priv->screenshot_paintable = _tmp5_;
	_tmp6_ = self->priv->content_box;
	_tmp7_ = self->priv->screenshot_box;
	gtk_box_append (_tmp6_, (GtkWidget*) _tmp7_);
	_tmp8_ = tuba_accounts;
	_tmp9_ = tuba_account_store_get_active (_tmp8_);
	_tmp10_ = _tmp9_;
	_tmp11_ = _g_object_ref0 ((TubaAPIAccount*) _tmp10_);
	_tmp12_ = tuba_widgets_avatar_new ();
	tuba_widgets_avatar_set_account (_tmp12_, _tmp11_);
	_g_object_unref0 (_tmp11_);
	tuba_widgets_avatar_set_size (_tmp12_, 128);
	g_object_ref_sink (_tmp12_);
	avi = _tmp12_;
	_tmp13_ = avi;
	gtk_widget_add_css_class ((GtkWidget*) _tmp13_, "main-avi");
	_tmp14_ = self->priv->screenshot_box;
	_tmp15_ = avi;
	gtk_box_append (_tmp14_, (GtkWidget*) _tmp15_);
	current_report = NULL;
	if (year == 0) {
		_tmp16_ = TRUE;
	} else {
		GeeArrayList* _tmp17_;
		GeeArrayList* _tmp18_;
		gint _tmp19_;
		gint _tmp20_;
		_tmp17_ = tuba_api_annual_reports_get_annual_reports (report);
		_tmp18_ = _tmp17_;
		_tmp19_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp18_);
		_tmp20_ = _tmp19_;
		_tmp16_ = _tmp20_ == 1;
	}
	if (_tmp16_) {
		GeeArrayList* _tmp21_;
		GeeArrayList* _tmp22_;
		gpointer _tmp23_;
		_tmp21_ = tuba_api_annual_reports_get_annual_reports (report);
		_tmp22_ = _tmp21_;
		_tmp23_ = gee_abstract_list_get ((GeeAbstractList*) _tmp22_, 0);
		_g_object_unref0 (current_report);
		current_report = (TubaAPIAnnualReportsReport*) _tmp23_;
	} else {
		TubaAPIAnnualReportsReport* _tmp38_;
		{
			GeeArrayList* _t_report_list = NULL;
			GeeArrayList* _tmp24_;
			GeeArrayList* _tmp25_;
			gint _t_report_size = 0;
			GeeArrayList* _tmp26_;
			gint _tmp27_;
			gint _tmp28_;
			gint _t_report_index = 0;
			_tmp24_ = tuba_api_annual_reports_get_annual_reports (report);
			_tmp25_ = _tmp24_;
			_t_report_list = _tmp25_;
			_tmp26_ = _t_report_list;
			_tmp27_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp26_);
			_tmp28_ = _tmp27_;
			_t_report_size = _tmp28_;
			_t_report_index = -1;
			while (TRUE) {
				gint _tmp29_;
				gint _tmp30_;
				TubaAPIAnnualReportsReport* t_report = NULL;
				GeeArrayList* _tmp31_;
				gpointer _tmp32_;
				TubaAPIAnnualReportsReport* _tmp33_;
				gint32 _tmp34_;
				gint32 _tmp35_;
				_t_report_index = _t_report_index + 1;
				_tmp29_ = _t_report_index;
				_tmp30_ = _t_report_size;
				if (!(_tmp29_ < _tmp30_)) {
					break;
				}
				_tmp31_ = _t_report_list;
				_tmp32_ = gee_abstract_list_get ((GeeAbstractList*) _tmp31_, _t_report_index);
				t_report = (TubaAPIAnnualReportsReport*) _tmp32_;
				_tmp33_ = t_report;
				_tmp34_ = tuba_api_annual_reports_report_get_year (_tmp33_);
				_tmp35_ = _tmp34_;
				if (_tmp35_ == ((gint32) year)) {
					TubaAPIAnnualReportsReport* _tmp36_;
					TubaAPIAnnualReportsReport* _tmp37_;
					_tmp36_ = t_report;
					_tmp37_ = _g_object_ref0 (_tmp36_);
					_g_object_unref0 (current_report);
					current_report = _tmp37_;
					_g_object_unref0 (t_report);
					break;
				}
				_g_object_unref0 (t_report);
			}
		}
		_tmp38_ = current_report;
		if (_tmp38_ == NULL) {
			GeeArrayList* _tmp39_;
			GeeArrayList* _tmp40_;
			gpointer _tmp41_;
			_tmp39_ = tuba_api_annual_reports_get_annual_reports (report);
			_tmp40_ = _tmp39_;
			_tmp41_ = gee_abstract_list_get ((GeeAbstractList*) _tmp40_, 0);
			_g_object_unref0 (current_report);
			current_report = (TubaAPIAnnualReportsReport*) _tmp41_;
		}
	}
	_tmp42_ = current_report;
	_tmp43_ = tuba_api_annual_reports_report_get_year (_tmp42_);
	_tmp44_ = _tmp43_;
	_tmp45_ = g_strdup_printf ("%i", _tmp44_);
	_g_free0 (self->priv->report_year);
	self->priv->report_year = _tmp45_;
	_tmp46_ = self->priv->report_alt_text;
	_tmp47_ = self->priv->report_year;
	_tmp48_ = g_strdup_printf (_ ("Screenshot of my %s Wrapped annual report using %s."), _tmp47_, BUILD_NAME);
	_tmp49_ = _tmp48_;
	_tmp50_ = g_strconcat (_tmp46_, _tmp49_, NULL);
	_g_free0 (self->priv->report_alt_text);
	self->priv->report_alt_text = _tmp50_;
	_g_free0 (_tmp49_);
	_tmp51_ = self->priv->report_year;
	_tmp52_ = g_strdup_printf (_ ("%s Wrapped"), _tmp51_);
	title = _tmp52_;
	_tmp53_ = title;
	adw_dialog_set_title ((AdwDialog*) self, _tmp53_);
	_tmp54_ = self->priv->screenshot_box;
	_tmp55_ = title;
	_tmp56_ = g_strdup ("title-1");
	_tmp57_ = g_new0 (gchar*, 1 + 1);
	_tmp57_[0] = _tmp56_;
	_tmp58_ = (GtkLabel*) gtk_label_new (_tmp55_);
	gtk_widget_set_css_classes ((GtkWidget*) _tmp58_, _tmp57_);
	_tmp57_ = (_vala_array_free (_tmp57_, 1, (GDestroyNotify) g_free), NULL);
	gtk_label_set_wrap (_tmp58_, TRUE);
	gtk_label_set_wrap_mode (_tmp58_, PANGO_WRAP_WORD_CHAR);
	g_object_ref_sink (_tmp58_);
	_tmp59_ = _tmp58_;
	gtk_box_append (_tmp54_, (GtkWidget*) _tmp59_);
	_g_object_unref0 (_tmp59_);
	_tmp60_ = (GtkFlowBox*) gtk_flow_box_new ();
	gtk_flow_box_set_selection_mode (_tmp60_, GTK_SELECTION_NONE);
	gtk_flow_box_set_column_spacing (_tmp60_, (guint) 6);
	gtk_flow_box_set_row_spacing (_tmp60_, (guint) 6);
	gtk_flow_box_set_max_children_per_line (_tmp60_, (guint) 2);
	gtk_flow_box_set_homogeneous (_tmp60_, TRUE);
	g_object_ref_sink (_tmp60_);
	stats_flowbox = _tmp60_;
	_tmp61_ = self->priv->screenshot_box;
	_tmp62_ = stats_flowbox;
	gtk_box_append (_tmp61_, (GtkWidget*) _tmp62_);
	_tmp63_ = gee_hash_map_new (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, (GDestroyNotify) g_free, TUBA_API_TYPE_ACCOUNT, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
	report_accounts = _tmp63_;
	{
		GeeArrayList* _account_list = NULL;
		GeeArrayList* _tmp64_;
		GeeArrayList* _tmp65_;
		gint _account_size = 0;
		GeeArrayList* _tmp66_;
		gint _tmp67_;
		gint _tmp68_;
		gint _account_index = 0;
		_tmp64_ = tuba_api_annual_reports_get_accounts (report);
		_tmp65_ = _tmp64_;
		_account_list = _tmp65_;
		_tmp66_ = _account_list;
		_tmp67_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp66_);
		_tmp68_ = _tmp67_;
		_account_size = _tmp68_;
		_account_index = -1;
		while (TRUE) {
			gint _tmp69_;
			gint _tmp70_;
			TubaAPIAccount* account = NULL;
			GeeArrayList* _tmp71_;
			gpointer _tmp72_;
			GeeHashMap* _tmp73_;
			TubaAPIAccount* _tmp74_;
			const gchar* _tmp75_;
			const gchar* _tmp76_;
			TubaAPIAccount* _tmp77_;
			_account_index = _account_index + 1;
			_tmp69_ = _account_index;
			_tmp70_ = _account_size;
			if (!(_tmp69_ < _tmp70_)) {
				break;
			}
			_tmp71_ = _account_list;
			_tmp72_ = gee_abstract_list_get ((GeeAbstractList*) _tmp71_, _account_index);
			account = (TubaAPIAccount*) _tmp72_;
			_tmp73_ = report_accounts;
			_tmp74_ = account;
			_tmp75_ = tuba_api_account_get_id (_tmp74_);
			_tmp76_ = _tmp75_;
			_tmp77_ = account;
			gee_abstract_map_set ((GeeAbstractMap*) _tmp73_, _tmp76_, _tmp77_);
			_g_object_unref0 (account);
		}
	}
	total_new_followers = (gint64) 0;
	total_new_followings = (gint64) 0;
	_tmp78_ = current_report;
	_tmp79_ = tuba_api_annual_reports_report_get_data (_tmp78_);
	_tmp80_ = _tmp79_;
	_tmp81_ = tuba_api_annual_reports_report_data_get_time_series (_tmp80_);
	_tmp82_ = _tmp81_;
	_tmp83_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp82_);
	_tmp84_ = _tmp83_;
	if (_tmp84_ > 0) {
		gint _tmp85_ = 0;
		GtkBox* posts_box = NULL;
		GtkBox* _tmp86_ = NULL;
		GtkBox* _tmp87_;
		gchar* _tmp88_;
		gchar** _tmp89_;
		GtkLabel* _tmp90_ = NULL;
		GtkLabel* _tmp91_;
		gint64 total_new_posts = 0LL;
		gchar* shortened_value = NULL;
		gchar* _tmp113_;
		GtkBox* _tmp114_;
		const gchar* _tmp115_;
		gchar* _tmp116_;
		gchar** _tmp117_;
		GtkLabel* _tmp118_ = NULL;
		GtkLabel* _tmp119_;
		GtkFlowBox* _tmp120_;
		gchar* _tmp121_;
		gchar** _tmp122_;
		GtkBox* _tmp123_;
		GtkWidget* _tmp124_;
		GtkFlowBoxChild* _tmp125_ = NULL;
		GtkFlowBoxChild* _tmp126_;
		const gchar* _tmp127_;
		const gchar* _tmp128_;
		gchar* _tmp129_;
		gchar* _tmp130_;
		gchar* _tmp131_;
		_tmp85_ = 6;
		_tmp86_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 6);
		gtk_widget_set_margin_end ((GtkWidget*) _tmp86_, _tmp85_);
		gtk_widget_set_margin_start ((GtkWidget*) _tmp86_, _tmp85_);
		gtk_widget_set_margin_bottom ((GtkWidget*) _tmp86_, _tmp85_);
		gtk_widget_set_margin_top ((GtkWidget*) _tmp86_, _tmp85_);
		gtk_widget_set_valign ((GtkWidget*) _tmp86_, GTK_ALIGN_CENTER);
		g_object_ref_sink (_tmp86_);
		posts_box = _tmp86_;
		_tmp87_ = posts_box;
		_tmp88_ = g_strdup ("caption-heading");
		_tmp89_ = g_new0 (gchar*, 1 + 1);
		_tmp89_[0] = _tmp88_;
		_tmp90_ = (GtkLabel*) gtk_label_new (_ ("New Posts"));
		gtk_widget_set_css_classes ((GtkWidget*) _tmp90_, _tmp89_);
		_tmp89_ = (_vala_array_free (_tmp89_, 1, (GDestroyNotify) g_free), NULL);
		gtk_label_set_wrap (_tmp90_, TRUE);
		gtk_label_set_wrap_mode (_tmp90_, PANGO_WRAP_WORD_CHAR);
		g_object_ref_sink (_tmp90_);
		_tmp91_ = _tmp90_;
		gtk_box_append (_tmp87_, (GtkWidget*) _tmp91_);
		_g_object_unref0 (_tmp91_);
		total_new_posts = (gint64) 0;
		{
			GeeArrayList* _stats_list = NULL;
			TubaAPIAnnualReportsReport* _tmp92_;
			TubaAPIAnnualReportsReportData* _tmp93_;
			TubaAPIAnnualReportsReportData* _tmp94_;
			GeeArrayList* _tmp95_;
			GeeArrayList* _tmp96_;
			gint _stats_size = 0;
			GeeArrayList* _tmp97_;
			gint _tmp98_;
			gint _tmp99_;
			gint _stats_index = 0;
			_tmp92_ = current_report;
			_tmp93_ = tuba_api_annual_reports_report_get_data (_tmp92_);
			_tmp94_ = _tmp93_;
			_tmp95_ = tuba_api_annual_reports_report_data_get_time_series (_tmp94_);
			_tmp96_ = _tmp95_;
			_stats_list = _tmp96_;
			_tmp97_ = _stats_list;
			_tmp98_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp97_);
			_tmp99_ = _tmp98_;
			_stats_size = _tmp99_;
			_stats_index = -1;
			while (TRUE) {
				gint _tmp100_;
				gint _tmp101_;
				TubaAPIAnnualReportsReportDataTimeSeries* stats = NULL;
				GeeArrayList* _tmp102_;
				gpointer _tmp103_;
				TubaAPIAnnualReportsReportDataTimeSeries* _tmp104_;
				gint64 _tmp105_;
				gint64 _tmp106_;
				TubaAPIAnnualReportsReportDataTimeSeries* _tmp107_;
				gint64 _tmp108_;
				gint64 _tmp109_;
				TubaAPIAnnualReportsReportDataTimeSeries* _tmp110_;
				gint64 _tmp111_;
				gint64 _tmp112_;
				_stats_index = _stats_index + 1;
				_tmp100_ = _stats_index;
				_tmp101_ = _stats_size;
				if (!(_tmp100_ < _tmp101_)) {
					break;
				}
				_tmp102_ = _stats_list;
				_tmp103_ = gee_abstract_list_get ((GeeAbstractList*) _tmp102_, _stats_index);
				stats = (TubaAPIAnnualReportsReportDataTimeSeries*) _tmp103_;
				_tmp104_ = stats;
				_tmp105_ = tuba_api_annual_reports_report_data_time_series_get_statuses (_tmp104_);
				_tmp106_ = _tmp105_;
				total_new_posts += _tmp106_;
				_tmp107_ = stats;
				_tmp108_ = tuba_api_annual_reports_report_data_time_series_get_followers (_tmp107_);
				_tmp109_ = _tmp108_;
				total_new_followers += _tmp109_;
				_tmp110_ = stats;
				_tmp111_ = tuba_api_annual_reports_report_data_time_series_get_following (_tmp110_);
				_tmp112_ = _tmp111_;
				total_new_followings += _tmp112_;
				_g_object_unref0 (stats);
			}
		}
		_tmp113_ = tuba_utils_units_shorten (total_new_posts);
		shortened_value = _tmp113_;
		_tmp114_ = posts_box;
		_tmp115_ = shortened_value;
		_tmp116_ = g_strdup ("title-1");
		_tmp117_ = g_new0 (gchar*, 1 + 1);
		_tmp117_[0] = _tmp116_;
		_tmp118_ = (GtkLabel*) gtk_label_new (_tmp115_);
		gtk_widget_set_css_classes ((GtkWidget*) _tmp118_, _tmp117_);
		_tmp117_ = (_vala_array_free (_tmp117_, 1, (GDestroyNotify) g_free), NULL);
		gtk_label_set_wrap (_tmp118_, TRUE);
		gtk_label_set_wrap_mode (_tmp118_, PANGO_WRAP_WORD_CHAR);
		g_object_ref_sink (_tmp118_);
		_tmp119_ = _tmp118_;
		gtk_box_append (_tmp114_, (GtkWidget*) _tmp119_);
		_g_object_unref0 (_tmp119_);
		_tmp120_ = stats_flowbox;
		_tmp121_ = g_strdup ("card");
		_tmp122_ = g_new0 (gchar*, 1 + 1);
		_tmp122_[0] = _tmp121_;
		_tmp123_ = posts_box;
		_tmp124_ = _g_object_ref0 ((GtkWidget*) _tmp123_);
		_tmp125_ = (GtkFlowBoxChild*) gtk_flow_box_child_new ();
		gtk_widget_set_css_classes ((GtkWidget*) _tmp125_, _tmp122_);
		_tmp122_ = (_vala_array_free (_tmp122_, 1, (GDestroyNotify) g_free), NULL);
		gtk_flow_box_child_set_child (_tmp125_, _tmp124_);
		_g_object_unref0 (_tmp124_);
		g_object_ref_sink (_tmp125_);
		_tmp126_ = _tmp125_;
		gtk_flow_box_append (_tmp120_, (GtkWidget*) _tmp126_);
		_g_object_unref0 (_tmp126_);
		_tmp127_ = self->priv->report_alt_text;
		_tmp128_ = shortened_value;
		_tmp129_ = g_strdup_printf (_ ("I made %s posts."), _tmp128_);
		_tmp130_ = _tmp129_;
		_tmp131_ = g_strconcat (_tmp127_, _tmp130_, NULL);
		_g_free0 (self->priv->report_alt_text);
		self->priv->report_alt_text = _tmp131_;
		_g_free0 (_tmp130_);
		_g_free0 (shortened_value);
		_g_object_unref0 (posts_box);
	}
	_tmp132_ = current_report;
	_tmp133_ = tuba_api_annual_reports_report_get_data (_tmp132_);
	_tmp134_ = _tmp133_;
	_tmp135_ = tuba_api_annual_reports_report_data_get_top_hashtags (_tmp134_);
	_tmp136_ = _tmp135_;
	_tmp137_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp136_);
	_tmp138_ = _tmp137_;
	if (_tmp138_ > 0) {
		gint _tmp139_ = 0;
		GtkBox* hashtags_box = NULL;
		GtkBox* _tmp140_ = NULL;
		GtkBox* _tmp141_;
		gchar* _tmp142_;
		gchar** _tmp143_;
		GtkLabel* _tmp144_ = NULL;
		GtkLabel* _tmp145_;
		gchar* most_used_hashtag = NULL;
		gchar* _tmp146_;
		gint64 max_count = 0LL;
		GtkBox* _tmp169_;
		const gchar* _tmp170_;
		const gchar* _tmp171_;
		gchar* _tmp172_;
		gchar* _tmp173_;
		gchar* _tmp174_;
		gchar** _tmp175_;
		GtkLabel* _tmp176_ = NULL;
		GtkLabel* _tmp177_;
		GtkFlowBox* _tmp178_;
		gchar* _tmp179_;
		gchar** _tmp180_;
		GtkBox* _tmp181_;
		GtkWidget* _tmp182_;
		GtkFlowBoxChild* _tmp183_ = NULL;
		GtkFlowBoxChild* _tmp184_;
		const gchar* _tmp185_;
		const gchar* _tmp186_;
		gchar* _tmp187_;
		gchar* _tmp188_;
		gchar* _tmp189_;
		_tmp139_ = 6;
		_tmp140_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 6);
		gtk_widget_set_margin_end ((GtkWidget*) _tmp140_, _tmp139_);
		gtk_widget_set_margin_start ((GtkWidget*) _tmp140_, _tmp139_);
		gtk_widget_set_margin_bottom ((GtkWidget*) _tmp140_, _tmp139_);
		gtk_widget_set_margin_top ((GtkWidget*) _tmp140_, _tmp139_);
		gtk_widget_set_valign ((GtkWidget*) _tmp140_, GTK_ALIGN_CENTER);
		g_object_ref_sink (_tmp140_);
		hashtags_box = _tmp140_;
		_tmp141_ = hashtags_box;
		_tmp142_ = g_strdup ("caption-heading");
		_tmp143_ = g_new0 (gchar*, 1 + 1);
		_tmp143_[0] = _tmp142_;
		_tmp144_ = (GtkLabel*) gtk_label_new (_ ("Most Used Hashtag"));
		gtk_widget_set_css_classes ((GtkWidget*) _tmp144_, _tmp143_);
		_tmp143_ = (_vala_array_free (_tmp143_, 1, (GDestroyNotify) g_free), NULL);
		gtk_label_set_wrap (_tmp144_, TRUE);
		gtk_label_set_wrap_mode (_tmp144_, PANGO_WRAP_WORD_CHAR);
		g_object_ref_sink (_tmp144_);
		_tmp145_ = _tmp144_;
		gtk_box_append (_tmp141_, (GtkWidget*) _tmp145_);
		_g_object_unref0 (_tmp145_);
		_tmp146_ = g_strdup ("");
		most_used_hashtag = _tmp146_;
		max_count = (gint64) -1;
		{
			GeeArrayList* _hashtag_list = NULL;
			TubaAPIAnnualReportsReport* _tmp147_;
			TubaAPIAnnualReportsReportData* _tmp148_;
			TubaAPIAnnualReportsReportData* _tmp149_;
			GeeArrayList* _tmp150_;
			GeeArrayList* _tmp151_;
			gint _hashtag_size = 0;
			GeeArrayList* _tmp152_;
			gint _tmp153_;
			gint _tmp154_;
			gint _hashtag_index = 0;
			_tmp147_ = current_report;
			_tmp148_ = tuba_api_annual_reports_report_get_data (_tmp147_);
			_tmp149_ = _tmp148_;
			_tmp150_ = tuba_api_annual_reports_report_data_get_top_hashtags (_tmp149_);
			_tmp151_ = _tmp150_;
			_hashtag_list = _tmp151_;
			_tmp152_ = _hashtag_list;
			_tmp153_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp152_);
			_tmp154_ = _tmp153_;
			_hashtag_size = _tmp154_;
			_hashtag_index = -1;
			while (TRUE) {
				gint _tmp155_;
				gint _tmp156_;
				TubaAPIAnnualReportsReportDataNamedCountable* hashtag = NULL;
				GeeArrayList* _tmp157_;
				gpointer _tmp158_;
				TubaAPIAnnualReportsReportDataNamedCountable* _tmp159_;
				gint64 _tmp160_;
				gint64 _tmp161_;
				_hashtag_index = _hashtag_index + 1;
				_tmp155_ = _hashtag_index;
				_tmp156_ = _hashtag_size;
				if (!(_tmp155_ < _tmp156_)) {
					break;
				}
				_tmp157_ = _hashtag_list;
				_tmp158_ = gee_abstract_list_get ((GeeAbstractList*) _tmp157_, _hashtag_index);
				hashtag = (TubaAPIAnnualReportsReportDataNamedCountable*) _tmp158_;
				_tmp159_ = hashtag;
				_tmp160_ = tuba_api_annual_reports_report_data_countable_get_count ((TubaAPIAnnualReportsReportDataCountable*) _tmp159_);
				_tmp161_ = _tmp160_;
				if (_tmp161_ > max_count) {
					TubaAPIAnnualReportsReportDataNamedCountable* _tmp162_;
					gint64 _tmp163_;
					gint64 _tmp164_;
					TubaAPIAnnualReportsReportDataNamedCountable* _tmp165_;
					const gchar* _tmp166_;
					const gchar* _tmp167_;
					gchar* _tmp168_;
					_tmp162_ = hashtag;
					_tmp163_ = tuba_api_annual_reports_report_data_countable_get_count ((TubaAPIAnnualReportsReportDataCountable*) _tmp162_);
					_tmp164_ = _tmp163_;
					max_count = _tmp164_;
					_tmp165_ = hashtag;
					_tmp166_ = tuba_api_annual_reports_report_data_named_countable_get_name (_tmp165_);
					_tmp167_ = _tmp166_;
					_tmp168_ = g_strdup (_tmp167_);
					_g_free0 (most_used_hashtag);
					most_used_hashtag = _tmp168_;
				}
				_g_object_unref0 (hashtag);
			}
		}
		_tmp169_ = hashtags_box;
		_tmp170_ = most_used_hashtag;
		_tmp171_ = string_to_string (_tmp170_);
		_tmp172_ = g_strconcat ("#", _tmp171_, NULL);
		_tmp173_ = _tmp172_;
		_tmp174_ = g_strdup ("title-1");
		_tmp175_ = g_new0 (gchar*, 1 + 1);
		_tmp175_[0] = _tmp174_;
		_tmp176_ = (GtkLabel*) gtk_label_new (_tmp173_);
		gtk_widget_set_css_classes ((GtkWidget*) _tmp176_, _tmp175_);
		_tmp175_ = (_vala_array_free (_tmp175_, 1, (GDestroyNotify) g_free), NULL);
		gtk_label_set_wrap (_tmp176_, TRUE);
		gtk_label_set_wrap_mode (_tmp176_, PANGO_WRAP_WORD_CHAR);
		g_object_ref_sink (_tmp176_);
		_tmp177_ = _tmp176_;
		gtk_box_append (_tmp169_, (GtkWidget*) _tmp177_);
		_g_object_unref0 (_tmp177_);
		_g_free0 (_tmp173_);
		_tmp178_ = stats_flowbox;
		_tmp179_ = g_strdup ("card");
		_tmp180_ = g_new0 (gchar*, 1 + 1);
		_tmp180_[0] = _tmp179_;
		_tmp181_ = hashtags_box;
		_tmp182_ = _g_object_ref0 ((GtkWidget*) _tmp181_);
		_tmp183_ = (GtkFlowBoxChild*) gtk_flow_box_child_new ();
		gtk_widget_set_css_classes ((GtkWidget*) _tmp183_, _tmp180_);
		_tmp180_ = (_vala_array_free (_tmp180_, 1, (GDestroyNotify) g_free), NULL);
		gtk_flow_box_child_set_child (_tmp183_, _tmp182_);
		_g_object_unref0 (_tmp182_);
		g_object_ref_sink (_tmp183_);
		_tmp184_ = _tmp183_;
		gtk_flow_box_append (_tmp178_, (GtkWidget*) _tmp184_);
		_g_object_unref0 (_tmp184_);
		_tmp185_ = self->priv->report_alt_text;
		_tmp186_ = most_used_hashtag;
		_tmp187_ = g_strdup_printf (_ ("My most used hashtag was #%s."), _tmp186_);
		_tmp188_ = _tmp187_;
		_tmp189_ = g_strconcat (_tmp185_, _tmp188_, NULL);
		_g_free0 (self->priv->report_alt_text);
		self->priv->report_alt_text = _tmp189_;
		_g_free0 (_tmp188_);
		_g_free0 (most_used_hashtag);
		_g_object_unref0 (hashtags_box);
	}
	_tmp190_ = current_report;
	_tmp191_ = tuba_api_annual_reports_report_get_data (_tmp190_);
	_tmp192_ = _tmp191_;
	_tmp193_ = tuba_api_annual_reports_report_data_get_most_used_apps (_tmp192_);
	_tmp194_ = _tmp193_;
	_tmp195_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp194_);
	_tmp196_ = _tmp195_;
	if (_tmp196_ > 0) {
		gint _tmp197_ = 0;
		GtkBox* apps_box = NULL;
		GtkBox* _tmp198_ = NULL;
		GtkBox* _tmp199_;
		gchar* _tmp200_;
		gchar** _tmp201_;
		GtkLabel* _tmp202_ = NULL;
		GtkLabel* _tmp203_;
		gchar* most_used_app = NULL;
		gchar* _tmp204_;
		gint64 max_count = 0LL;
		GtkBox* _tmp227_;
		const gchar* _tmp228_;
		gchar* _tmp229_;
		gchar** _tmp230_;
		GtkLabel* _tmp231_ = NULL;
		GtkLabel* _tmp232_;
		gchar** classes = NULL;
		gchar* _tmp233_;
		gchar** _tmp234_;
		gint classes_length1;
		gint _classes_size_;
		const gchar* _tmp235_;
		gchar* _tmp236_;
		gchar* _tmp237_;
		gchar* _tmp238_;
		gchar* _tmp239_;
		gboolean _tmp240_;
		GtkFlowBox* _tmp242_;
		gchar** _tmp243_;
		gint _tmp243__length1;
		gchar** _tmp244_;
		gint _tmp244__length1;
		GtkBox* _tmp245_;
		GtkWidget* _tmp246_;
		GtkFlowBoxChild* _tmp247_ = NULL;
		GtkFlowBoxChild* _tmp248_;
		const gchar* _tmp249_;
		const gchar* _tmp250_;
		gchar* _tmp251_;
		gchar* _tmp252_;
		gchar* _tmp253_;
		_tmp197_ = 6;
		_tmp198_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 6);
		gtk_widget_set_margin_end ((GtkWidget*) _tmp198_, _tmp197_);
		gtk_widget_set_margin_start ((GtkWidget*) _tmp198_, _tmp197_);
		gtk_widget_set_margin_bottom ((GtkWidget*) _tmp198_, _tmp197_);
		gtk_widget_set_margin_top ((GtkWidget*) _tmp198_, _tmp197_);
		gtk_widget_set_valign ((GtkWidget*) _tmp198_, GTK_ALIGN_CENTER);
		g_object_ref_sink (_tmp198_);
		apps_box = _tmp198_;
		_tmp199_ = apps_box;
		_tmp200_ = g_strdup ("caption-heading");
		_tmp201_ = g_new0 (gchar*, 1 + 1);
		_tmp201_[0] = _tmp200_;
		_tmp202_ = (GtkLabel*) gtk_label_new (_ ("Most Used App"));
		gtk_widget_set_css_classes ((GtkWidget*) _tmp202_, _tmp201_);
		_tmp201_ = (_vala_array_free (_tmp201_, 1, (GDestroyNotify) g_free), NULL);
		gtk_label_set_wrap (_tmp202_, TRUE);
		gtk_label_set_wrap_mode (_tmp202_, PANGO_WRAP_WORD_CHAR);
		g_object_ref_sink (_tmp202_);
		_tmp203_ = _tmp202_;
		gtk_box_append (_tmp199_, (GtkWidget*) _tmp203_);
		_g_object_unref0 (_tmp203_);
		_tmp204_ = g_strdup ("");
		most_used_app = _tmp204_;
		max_count = (gint64) -1;
		{
			GeeArrayList* _app_list = NULL;
			TubaAPIAnnualReportsReport* _tmp205_;
			TubaAPIAnnualReportsReportData* _tmp206_;
			TubaAPIAnnualReportsReportData* _tmp207_;
			GeeArrayList* _tmp208_;
			GeeArrayList* _tmp209_;
			gint _app_size = 0;
			GeeArrayList* _tmp210_;
			gint _tmp211_;
			gint _tmp212_;
			gint _app_index = 0;
			_tmp205_ = current_report;
			_tmp206_ = tuba_api_annual_reports_report_get_data (_tmp205_);
			_tmp207_ = _tmp206_;
			_tmp208_ = tuba_api_annual_reports_report_data_get_most_used_apps (_tmp207_);
			_tmp209_ = _tmp208_;
			_app_list = _tmp209_;
			_tmp210_ = _app_list;
			_tmp211_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp210_);
			_tmp212_ = _tmp211_;
			_app_size = _tmp212_;
			_app_index = -1;
			while (TRUE) {
				gint _tmp213_;
				gint _tmp214_;
				TubaAPIAnnualReportsReportDataNamedCountable* app = NULL;
				GeeArrayList* _tmp215_;
				gpointer _tmp216_;
				TubaAPIAnnualReportsReportDataNamedCountable* _tmp217_;
				gint64 _tmp218_;
				gint64 _tmp219_;
				_app_index = _app_index + 1;
				_tmp213_ = _app_index;
				_tmp214_ = _app_size;
				if (!(_tmp213_ < _tmp214_)) {
					break;
				}
				_tmp215_ = _app_list;
				_tmp216_ = gee_abstract_list_get ((GeeAbstractList*) _tmp215_, _app_index);
				app = (TubaAPIAnnualReportsReportDataNamedCountable*) _tmp216_;
				_tmp217_ = app;
				_tmp218_ = tuba_api_annual_reports_report_data_countable_get_count ((TubaAPIAnnualReportsReportDataCountable*) _tmp217_);
				_tmp219_ = _tmp218_;
				if (_tmp219_ > max_count) {
					TubaAPIAnnualReportsReportDataNamedCountable* _tmp220_;
					gint64 _tmp221_;
					gint64 _tmp222_;
					TubaAPIAnnualReportsReportDataNamedCountable* _tmp223_;
					const gchar* _tmp224_;
					const gchar* _tmp225_;
					gchar* _tmp226_;
					_tmp220_ = app;
					_tmp221_ = tuba_api_annual_reports_report_data_countable_get_count ((TubaAPIAnnualReportsReportDataCountable*) _tmp220_);
					_tmp222_ = _tmp221_;
					max_count = _tmp222_;
					_tmp223_ = app;
					_tmp224_ = tuba_api_annual_reports_report_data_named_countable_get_name (_tmp223_);
					_tmp225_ = _tmp224_;
					_tmp226_ = g_strdup (_tmp225_);
					_g_free0 (most_used_app);
					most_used_app = _tmp226_;
				}
				_g_object_unref0 (app);
			}
		}
		_tmp227_ = apps_box;
		_tmp228_ = most_used_app;
		_tmp229_ = g_strdup ("title-1");
		_tmp230_ = g_new0 (gchar*, 1 + 1);
		_tmp230_[0] = _tmp229_;
		_tmp231_ = (GtkLabel*) gtk_label_new (_tmp228_);
		gtk_widget_set_css_classes ((GtkWidget*) _tmp231_, _tmp230_);
		_tmp230_ = (_vala_array_free (_tmp230_, 1, (GDestroyNotify) g_free), NULL);
		gtk_label_set_wrap (_tmp231_, TRUE);
		gtk_label_set_wrap_mode (_tmp231_, PANGO_WRAP_WORD_CHAR);
		g_object_ref_sink (_tmp231_);
		_tmp232_ = _tmp231_;
		gtk_box_append (_tmp227_, (GtkWidget*) _tmp232_);
		_g_object_unref0 (_tmp232_);
		_tmp233_ = g_strdup ("card");
		_tmp234_ = g_new0 (gchar*, 1 + 1);
		_tmp234_[0] = _tmp233_;
		classes = _tmp234_;
		classes_length1 = 1;
		_classes_size_ = classes_length1;
		_tmp235_ = most_used_app;
		_tmp236_ = g_utf8_strdown (_tmp235_, (gssize) -1);
		_tmp237_ = _tmp236_;
		_tmp238_ = g_utf8_strdown (BUILD_NAME, (gssize) -1);
		_tmp239_ = _tmp238_;
		_tmp240_ = g_strcmp0 (_tmp237_, _tmp239_) == 0;
		_g_free0 (_tmp239_);
		_g_free0 (_tmp237_);
		if (_tmp240_) {
			gchar* _tmp241_;
			_tmp241_ = g_strdup ("tuba");
			_vala_array_add5 (&classes, &classes_length1, &_classes_size_, _tmp241_);
		}
		_tmp242_ = stats_flowbox;
		_tmp243_ = classes;
		_tmp243__length1 = classes_length1;
		_tmp244_ = (_tmp243_ != NULL) ? _vala_array_dup10 (_tmp243_, _tmp243__length1) : _tmp243_;
		_tmp244__length1 = _tmp243__length1;
		_tmp245_ = apps_box;
		_tmp246_ = _g_object_ref0 ((GtkWidget*) _tmp245_);
		_tmp247_ = (GtkFlowBoxChild*) gtk_flow_box_child_new ();
		gtk_widget_set_css_classes ((GtkWidget*) _tmp247_, _tmp244_);
		_tmp244_ = (_vala_array_free (_tmp244_, _tmp244__length1, (GDestroyNotify) g_free), NULL);
		gtk_flow_box_child_set_child (_tmp247_, _tmp246_);
		_g_object_unref0 (_tmp246_);
		g_object_ref_sink (_tmp247_);
		_tmp248_ = _tmp247_;
		gtk_flow_box_append (_tmp242_, (GtkWidget*) _tmp248_);
		_g_object_unref0 (_tmp248_);
		_tmp249_ = self->priv->report_alt_text;
		_tmp250_ = most_used_app;
		_tmp251_ = g_strdup_printf (_ ("My most used app was %s."), _tmp250_);
		_tmp252_ = _tmp251_;
		_tmp253_ = g_strconcat (_tmp249_, _tmp252_, NULL);
		_g_free0 (self->priv->report_alt_text);
		self->priv->report_alt_text = _tmp253_;
		_g_free0 (_tmp252_);
		classes = (_vala_array_free (classes, classes_length1, (GDestroyNotify) g_free), NULL);
		_g_free0 (most_used_app);
		_g_object_unref0 (apps_box);
	}
	_tmp254_ = current_report;
	_tmp255_ = tuba_api_annual_reports_report_get_data (_tmp254_);
	_tmp256_ = _tmp255_;
	_tmp257_ = tuba_api_annual_reports_report_data_get_commonly_interacted_with_accounts (_tmp256_);
	_tmp258_ = _tmp257_;
	_tmp259_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp258_);
	_tmp260_ = _tmp259_;
	if (_tmp260_ > 0) {
		gint _tmp261_ = 0;
		GtkBox* circle_box = NULL;
		GtkBox* _tmp262_ = NULL;
		GtkBox* _tmp263_;
		gchar* _tmp264_;
		gchar** _tmp265_;
		GtkLabel* _tmp266_ = NULL;
		GtkLabel* _tmp267_;
		GtkBox* besties_box = NULL;
		GtkBox* _tmp268_ = NULL;
		gchar** interaction_names = NULL;
		gchar** _tmp269_;
		gint interaction_names_length1;
		gint _interaction_names_size_;
		TubaAPIAnnualReportsReport* _tmp270_;
		TubaAPIAnnualReportsReportData* _tmp271_;
		TubaAPIAnnualReportsReportData* _tmp272_;
		GeeArrayList* _tmp273_;
		GeeArrayList* _tmp274_;
		GtkBox* _tmp313_;
		GtkBox* _tmp314_;
		GtkFlowBox* _tmp315_;
		gchar* _tmp316_;
		gchar** _tmp317_;
		GtkBox* _tmp318_;
		GtkWidget* _tmp319_;
		GtkFlowBoxChild* _tmp320_ = NULL;
		GtkFlowBoxChild* _tmp321_;
		const gchar* _tmp322_;
		gchar** _tmp323_;
		gint _tmp323__length1;
		gchar* _tmp324_;
		gchar* _tmp325_;
		gchar* _tmp326_;
		gchar* _tmp327_;
		gchar* _tmp328_;
		_tmp261_ = 6;
		_tmp262_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 12);
		gtk_widget_set_margin_end ((GtkWidget*) _tmp262_, _tmp261_);
		gtk_widget_set_margin_start ((GtkWidget*) _tmp262_, _tmp261_);
		gtk_widget_set_margin_bottom ((GtkWidget*) _tmp262_, _tmp261_);
		gtk_widget_set_margin_top ((GtkWidget*) _tmp262_, _tmp261_);
		gtk_widget_set_valign ((GtkWidget*) _tmp262_, GTK_ALIGN_CENTER);
		g_object_ref_sink (_tmp262_);
		circle_box = _tmp262_;
		_tmp263_ = circle_box;
		_tmp264_ = g_strdup ("caption-heading");
		_tmp265_ = g_new0 (gchar*, 1 + 1);
		_tmp265_[0] = _tmp264_;
		_tmp266_ = (GtkLabel*) gtk_label_new (_ ("Most Interactions"));
		gtk_widget_set_css_classes ((GtkWidget*) _tmp266_, _tmp265_);
		_tmp265_ = (_vala_array_free (_tmp265_, 1, (GDestroyNotify) g_free), NULL);
		gtk_label_set_wrap (_tmp266_, TRUE);
		gtk_label_set_wrap_mode (_tmp266_, PANGO_WRAP_WORD_CHAR);
		g_object_ref_sink (_tmp266_);
		_tmp267_ = _tmp266_;
		gtk_box_append (_tmp263_, (GtkWidget*) _tmp267_);
		_g_object_unref0 (_tmp267_);
		_tmp268_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 12);
		gtk_widget_set_halign ((GtkWidget*) _tmp268_, GTK_ALIGN_CENTER);
		g_object_ref_sink (_tmp268_);
		besties_box = _tmp268_;
		_tmp269_ = g_new0 (gchar*, 0 + 1);
		interaction_names = _tmp269_;
		interaction_names_length1 = 0;
		_interaction_names_size_ = interaction_names_length1;
		_tmp270_ = current_report;
		_tmp271_ = tuba_api_annual_reports_report_get_data (_tmp270_);
		_tmp272_ = _tmp271_;
		_tmp273_ = tuba_api_annual_reports_report_data_get_commonly_interacted_with_accounts (_tmp272_);
		_tmp274_ = _tmp273_;
		gee_list_sort ((GeeList*) _tmp274_, _tuba_dialogs_annual_report_sort_countable_gcompare_data_func, g_object_ref (self), g_object_unref);
		{
			gint i = 0;
			i = 0;
			{
				gboolean _tmp275_ = FALSE;
				_tmp275_ = TRUE;
				while (TRUE) {
					TubaAPIAnnualReportsReport* _tmp277_;
					TubaAPIAnnualReportsReportData* _tmp278_;
					TubaAPIAnnualReportsReportData* _tmp279_;
					GeeArrayList* _tmp280_;
					GeeArrayList* _tmp281_;
					gint _tmp282_;
					gint _tmp283_;
					gchar* acc_id = NULL;
					TubaAPIAnnualReportsReport* _tmp284_;
					TubaAPIAnnualReportsReportData* _tmp285_;
					TubaAPIAnnualReportsReportData* _tmp286_;
					GeeArrayList* _tmp287_;
					GeeArrayList* _tmp288_;
					gpointer _tmp289_;
					TubaAPIAnnualReportsReportDataRebloggedAccount* _tmp290_;
					const gchar* _tmp291_;
					const gchar* _tmp292_;
					gchar* _tmp293_;
					gchar* _tmp294_;
					GeeHashMap* _tmp295_;
					const gchar* _tmp296_;
					if (!_tmp275_) {
						gint _tmp276_;
						_tmp276_ = i;
						i = _tmp276_ + 1;
					}
					_tmp275_ = FALSE;
					_tmp277_ = current_report;
					_tmp278_ = tuba_api_annual_reports_report_get_data (_tmp277_);
					_tmp279_ = _tmp278_;
					_tmp280_ = tuba_api_annual_reports_report_data_get_commonly_interacted_with_accounts (_tmp279_);
					_tmp281_ = _tmp280_;
					_tmp282_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp281_);
					_tmp283_ = _tmp282_;
					if (!(i < MIN (_tmp283_, 3))) {
						break;
					}
					_tmp284_ = current_report;
					_tmp285_ = tuba_api_annual_reports_report_get_data (_tmp284_);
					_tmp286_ = _tmp285_;
					_tmp287_ = tuba_api_annual_reports_report_data_get_commonly_interacted_with_accounts (_tmp286_);
					_tmp288_ = _tmp287_;
					_tmp289_ = gee_abstract_list_get ((GeeAbstractList*) _tmp288_, i);
					_tmp290_ = (TubaAPIAnnualReportsReportDataRebloggedAccount*) _tmp289_;
					_tmp291_ = tuba_api_annual_reports_report_data_reblogged_account_get_account_id (_tmp290_);
					_tmp292_ = _tmp291_;
					_tmp293_ = g_strdup (_tmp292_);
					_tmp294_ = _tmp293_;
					_g_object_unref0 (_tmp290_);
					acc_id = _tmp294_;
					_tmp295_ = report_accounts;
					_tmp296_ = acc_id;
					if (gee_abstract_map_has_key ((GeeAbstractMap*) _tmp295_, _tmp296_)) {
						TubaAPIAccount* acc = NULL;
						GeeHashMap* _tmp297_;
						const gchar* _tmp298_;
						gpointer _tmp299_;
						GtkBox* _tmp300_;
						TubaAPIAccount* _tmp301_;
						TubaAPIAccount* _tmp302_;
						TubaAPIAccount* _tmp303_;
						const gchar* _tmp304_;
						const gchar* _tmp305_;
						gchar* _tmp306_;
						TubaWidgetsAvatar* _tmp307_ = NULL;
						TubaWidgetsAvatar* _tmp308_;
						TubaAPIAccount* _tmp309_;
						const gchar* _tmp310_;
						const gchar* _tmp311_;
						gchar* _tmp312_;
						_tmp297_ = report_accounts;
						_tmp298_ = acc_id;
						_tmp299_ = gee_abstract_map_get ((GeeAbstractMap*) _tmp297_, _tmp298_);
						acc = (TubaAPIAccount*) _tmp299_;
						_tmp300_ = besties_box;
						_tmp301_ = acc;
						_tmp302_ = _g_object_ref0 (_tmp301_);
						_tmp303_ = acc;
						_tmp304_ = tuba_api_account_get_display_name (_tmp303_);
						_tmp305_ = _tmp304_;
						_tmp306_ = g_strdup (_tmp305_);
						_tmp307_ = tuba_widgets_avatar_new ();
						tuba_widgets_avatar_set_account (_tmp307_, _tmp302_);
						_g_object_unref0 (_tmp302_);
						tuba_widgets_avatar_set_size (_tmp307_, 48);
						gtk_widget_set_tooltip_text ((GtkWidget*) _tmp307_, _tmp306_);
						_g_free0 (_tmp306_);
						g_object_ref_sink (_tmp307_);
						_tmp308_ = _tmp307_;
						gtk_box_append (_tmp300_, (GtkWidget*) _tmp308_);
						_g_object_unref0 (_tmp308_);
						_tmp309_ = acc;
						_tmp310_ = tuba_api_account_get_display_name (_tmp309_);
						_tmp311_ = _tmp310_;
						_tmp312_ = g_strdup (_tmp311_);
						_vala_array_add6 (&interaction_names, &interaction_names_length1, &_interaction_names_size_, _tmp312_);
						_g_object_unref0 (acc);
					}
					_g_free0 (acc_id);
				}
			}
		}
		_tmp313_ = circle_box;
		_tmp314_ = besties_box;
		gtk_box_append (_tmp313_, (GtkWidget*) _tmp314_);
		_tmp315_ = stats_flowbox;
		_tmp316_ = g_strdup ("card");
		_tmp317_ = g_new0 (gchar*, 1 + 1);
		_tmp317_[0] = _tmp316_;
		_tmp318_ = circle_box;
		_tmp319_ = _g_object_ref0 ((GtkWidget*) _tmp318_);
		_tmp320_ = (GtkFlowBoxChild*) gtk_flow_box_child_new ();
		gtk_widget_set_css_classes ((GtkWidget*) _tmp320_, _tmp317_);
		_tmp317_ = (_vala_array_free (_tmp317_, 1, (GDestroyNotify) g_free), NULL);
		gtk_flow_box_child_set_child (_tmp320_, _tmp319_);
		_g_object_unref0 (_tmp319_);
		g_object_ref_sink (_tmp320_);
		_tmp321_ = _tmp320_;
		gtk_flow_box_append (_tmp315_, (GtkWidget*) _tmp321_);
		_g_object_unref0 (_tmp321_);
		_tmp322_ = self->priv->report_alt_text;
		_tmp323_ = interaction_names;
		_tmp323__length1 = interaction_names_length1;
		_tmp324_ = _vala_g_strjoinv (", ", _tmp323_, (gint) _tmp323__length1);
		_tmp325_ = _tmp324_;
		_tmp326_ = g_strdup_printf (_ ("I had the most interactions with %s."), _tmp325_);
		_tmp327_ = _tmp326_;
		_tmp328_ = g_strconcat (_tmp322_, _tmp327_, NULL);
		_g_free0 (self->priv->report_alt_text);
		self->priv->report_alt_text = _tmp328_;
		_g_free0 (_tmp327_);
		_g_free0 (_tmp325_);
		interaction_names = (_vala_array_free (interaction_names, interaction_names_length1, (GDestroyNotify) g_free), NULL);
		_g_object_unref0 (besties_box);
		_g_object_unref0 (circle_box);
	}
	_tmp329_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 24);
	g_object_ref_sink (_tmp329_);
	advanced_box = _tmp329_;
	_tmp330_ = self->priv->content_box;
	_tmp331_ = advanced_box;
	gtk_box_append (_tmp330_, (GtkWidget*) _tmp331_);
	if (total_new_followers > ((gint64) 0)) {
		_tmp332_ = TRUE;
	} else {
		_tmp332_ = total_new_followings > ((gint64) 0);
	}
	if (_tmp332_) {
		GtkBox* follow_box = NULL;
		GtkBox* _tmp333_;
		GtkBox* _tmp334_;
		gchar* _tmp335_;
		gchar** _tmp336_;
		GtkLabel* _tmp337_ = NULL;
		GtkLabel* _tmp338_;
		GtkFlowBox* follow_stats_flowbox = NULL;
		GtkFlowBox* _tmp339_ = NULL;
		GtkBox* _tmp340_;
		GtkFlowBox* _tmp341_;
		GtkBox* _tmp384_;
		GtkBox* _tmp385_;
		_tmp333_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 12);
		g_object_ref_sink (_tmp333_);
		follow_box = _tmp333_;
		_tmp334_ = follow_box;
		_tmp335_ = g_strdup ("title-1");
		_tmp336_ = g_new0 (gchar*, 1 + 1);
		_tmp336_[0] = _tmp335_;
		_tmp337_ = (GtkLabel*) gtk_label_new (_ ("Follow Stats"));
		gtk_widget_set_css_classes ((GtkWidget*) _tmp337_, _tmp336_);
		_tmp336_ = (_vala_array_free (_tmp336_, 1, (GDestroyNotify) g_free), NULL);
		gtk_label_set_wrap (_tmp337_, TRUE);
		gtk_label_set_wrap_mode (_tmp337_, PANGO_WRAP_WORD_CHAR);
		g_object_ref_sink (_tmp337_);
		_tmp338_ = _tmp337_;
		gtk_box_append (_tmp334_, (GtkWidget*) _tmp338_);
		_g_object_unref0 (_tmp338_);
		_tmp339_ = (GtkFlowBox*) gtk_flow_box_new ();
		gtk_flow_box_set_selection_mode (_tmp339_, GTK_SELECTION_NONE);
		gtk_flow_box_set_column_spacing (_tmp339_, (guint) 6);
		gtk_flow_box_set_row_spacing (_tmp339_, (guint) 6);
		gtk_flow_box_set_max_children_per_line (_tmp339_, (guint) 2);
		gtk_flow_box_set_homogeneous (_tmp339_, TRUE);
		g_object_ref_sink (_tmp339_);
		follow_stats_flowbox = _tmp339_;
		_tmp340_ = follow_box;
		_tmp341_ = follow_stats_flowbox;
		gtk_box_append (_tmp340_, (GtkWidget*) _tmp341_);
		if (total_new_followers > ((gint64) 0)) {
			gint _tmp342_ = 0;
			GtkBox* followers_box = NULL;
			GtkBox* _tmp343_ = NULL;
			GtkBox* _tmp344_;
			gchar* _tmp345_;
			gchar** _tmp346_;
			GtkLabel* _tmp347_ = NULL;
			GtkLabel* _tmp348_;
			GtkBox* _tmp349_;
			gchar* _tmp350_;
			gchar* _tmp351_;
			gchar* _tmp352_;
			gchar** _tmp353_;
			GtkLabel* _tmp354_ = NULL;
			GtkLabel* _tmp355_;
			GtkFlowBox* _tmp356_;
			gchar* _tmp357_;
			gchar** _tmp358_;
			GtkBox* _tmp359_;
			GtkWidget* _tmp360_;
			GtkFlowBoxChild* _tmp361_ = NULL;
			GtkFlowBoxChild* _tmp362_;
			_tmp342_ = 6;
			_tmp343_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 6);
			gtk_widget_set_margin_end ((GtkWidget*) _tmp343_, _tmp342_);
			gtk_widget_set_margin_start ((GtkWidget*) _tmp343_, _tmp342_);
			gtk_widget_set_margin_bottom ((GtkWidget*) _tmp343_, _tmp342_);
			gtk_widget_set_margin_top ((GtkWidget*) _tmp343_, _tmp342_);
			gtk_widget_set_valign ((GtkWidget*) _tmp343_, GTK_ALIGN_CENTER);
			g_object_ref_sink (_tmp343_);
			followers_box = _tmp343_;
			_tmp344_ = followers_box;
			_tmp345_ = g_strdup ("caption-heading");
			_tmp346_ = g_new0 (gchar*, 1 + 1);
			_tmp346_[0] = _tmp345_;
			_tmp347_ = (GtkLabel*) gtk_label_new (_ ("New Followers"));
			gtk_widget_set_css_classes ((GtkWidget*) _tmp347_, _tmp346_);
			_tmp346_ = (_vala_array_free (_tmp346_, 1, (GDestroyNotify) g_free), NULL);
			gtk_label_set_wrap (_tmp347_, TRUE);
			gtk_label_set_wrap_mode (_tmp347_, PANGO_WRAP_WORD_CHAR);
			g_object_ref_sink (_tmp347_);
			_tmp348_ = _tmp347_;
			gtk_box_append (_tmp344_, (GtkWidget*) _tmp348_);
			_g_object_unref0 (_tmp348_);
			_tmp349_ = followers_box;
			_tmp350_ = tuba_utils_units_shorten (total_new_followers);
			_tmp351_ = _tmp350_;
			_tmp352_ = g_strdup ("title-1");
			_tmp353_ = g_new0 (gchar*, 1 + 1);
			_tmp353_[0] = _tmp352_;
			_tmp354_ = (GtkLabel*) gtk_label_new (_tmp351_);
			gtk_widget_set_css_classes ((GtkWidget*) _tmp354_, _tmp353_);
			_tmp353_ = (_vala_array_free (_tmp353_, 1, (GDestroyNotify) g_free), NULL);
			gtk_label_set_wrap (_tmp354_, TRUE);
			gtk_label_set_wrap_mode (_tmp354_, PANGO_WRAP_WORD_CHAR);
			g_object_ref_sink (_tmp354_);
			_tmp355_ = _tmp354_;
			gtk_box_append (_tmp349_, (GtkWidget*) _tmp355_);
			_g_object_unref0 (_tmp355_);
			_g_free0 (_tmp351_);
			_tmp356_ = follow_stats_flowbox;
			_tmp357_ = g_strdup ("card");
			_tmp358_ = g_new0 (gchar*, 1 + 1);
			_tmp358_[0] = _tmp357_;
			_tmp359_ = followers_box;
			_tmp360_ = _g_object_ref0 ((GtkWidget*) _tmp359_);
			_tmp361_ = (GtkFlowBoxChild*) gtk_flow_box_child_new ();
			gtk_widget_set_css_classes ((GtkWidget*) _tmp361_, _tmp358_);
			_tmp358_ = (_vala_array_free (_tmp358_, 1, (GDestroyNotify) g_free), NULL);
			gtk_flow_box_child_set_child (_tmp361_, _tmp360_);
			_g_object_unref0 (_tmp360_);
			g_object_ref_sink (_tmp361_);
			_tmp362_ = _tmp361_;
			gtk_flow_box_append (_tmp356_, (GtkWidget*) _tmp362_);
			_g_object_unref0 (_tmp362_);
			_g_object_unref0 (followers_box);
		}
		if (total_new_followings > ((gint64) 0)) {
			gint _tmp363_ = 0;
			GtkBox* follows_box = NULL;
			GtkBox* _tmp364_ = NULL;
			GtkBox* _tmp365_;
			gchar* _tmp366_;
			gchar** _tmp367_;
			GtkLabel* _tmp368_ = NULL;
			GtkLabel* _tmp369_;
			GtkBox* _tmp370_;
			gchar* _tmp371_;
			gchar* _tmp372_;
			gchar* _tmp373_;
			gchar** _tmp374_;
			GtkLabel* _tmp375_ = NULL;
			GtkLabel* _tmp376_;
			GtkFlowBox* _tmp377_;
			gchar* _tmp378_;
			gchar** _tmp379_;
			GtkBox* _tmp380_;
			GtkWidget* _tmp381_;
			GtkFlowBoxChild* _tmp382_ = NULL;
			GtkFlowBoxChild* _tmp383_;
			_tmp363_ = 6;
			_tmp364_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 6);
			gtk_widget_set_margin_end ((GtkWidget*) _tmp364_, _tmp363_);
			gtk_widget_set_margin_start ((GtkWidget*) _tmp364_, _tmp363_);
			gtk_widget_set_margin_bottom ((GtkWidget*) _tmp364_, _tmp363_);
			gtk_widget_set_margin_top ((GtkWidget*) _tmp364_, _tmp363_);
			gtk_widget_set_valign ((GtkWidget*) _tmp364_, GTK_ALIGN_CENTER);
			g_object_ref_sink (_tmp364_);
			follows_box = _tmp364_;
			_tmp365_ = follows_box;
			_tmp366_ = g_strdup ("caption-heading");
			_tmp367_ = g_new0 (gchar*, 1 + 1);
			_tmp367_[0] = _tmp366_;
			_tmp368_ = (GtkLabel*) gtk_label_new (_ ("New Follows"));
			gtk_widget_set_css_classes ((GtkWidget*) _tmp368_, _tmp367_);
			_tmp367_ = (_vala_array_free (_tmp367_, 1, (GDestroyNotify) g_free), NULL);
			gtk_label_set_wrap (_tmp368_, TRUE);
			gtk_label_set_wrap_mode (_tmp368_, PANGO_WRAP_WORD_CHAR);
			g_object_ref_sink (_tmp368_);
			_tmp369_ = _tmp368_;
			gtk_box_append (_tmp365_, (GtkWidget*) _tmp369_);
			_g_object_unref0 (_tmp369_);
			_tmp370_ = follows_box;
			_tmp371_ = tuba_utils_units_shorten (total_new_followings);
			_tmp372_ = _tmp371_;
			_tmp373_ = g_strdup ("title-1");
			_tmp374_ = g_new0 (gchar*, 1 + 1);
			_tmp374_[0] = _tmp373_;
			_tmp375_ = (GtkLabel*) gtk_label_new (_tmp372_);
			gtk_widget_set_css_classes ((GtkWidget*) _tmp375_, _tmp374_);
			_tmp374_ = (_vala_array_free (_tmp374_, 1, (GDestroyNotify) g_free), NULL);
			gtk_label_set_wrap (_tmp375_, TRUE);
			gtk_label_set_wrap_mode (_tmp375_, PANGO_WRAP_WORD_CHAR);
			g_object_ref_sink (_tmp375_);
			_tmp376_ = _tmp375_;
			gtk_box_append (_tmp370_, (GtkWidget*) _tmp376_);
			_g_object_unref0 (_tmp376_);
			_g_free0 (_tmp372_);
			_tmp377_ = follow_stats_flowbox;
			_tmp378_ = g_strdup ("card");
			_tmp379_ = g_new0 (gchar*, 1 + 1);
			_tmp379_[0] = _tmp378_;
			_tmp380_ = follows_box;
			_tmp381_ = _g_object_ref0 ((GtkWidget*) _tmp380_);
			_tmp382_ = (GtkFlowBoxChild*) gtk_flow_box_child_new ();
			gtk_widget_set_css_classes ((GtkWidget*) _tmp382_, _tmp379_);
			_tmp379_ = (_vala_array_free (_tmp379_, 1, (GDestroyNotify) g_free), NULL);
			gtk_flow_box_child_set_child (_tmp382_, _tmp381_);
			_g_object_unref0 (_tmp381_);
			g_object_ref_sink (_tmp382_);
			_tmp383_ = _tmp382_;
			gtk_flow_box_append (_tmp377_, (GtkWidget*) _tmp383_);
			_g_object_unref0 (_tmp383_);
			_g_object_unref0 (follows_box);
		}
		_tmp384_ = advanced_box;
		_tmp385_ = follow_box;
		gtk_box_append (_tmp384_, (GtkWidget*) _tmp385_);
		_g_object_unref0 (follow_stats_flowbox);
		_g_object_unref0 (follow_box);
	}
	_tmp386_ = current_report;
	_tmp387_ = tuba_api_annual_reports_report_get_data (_tmp386_);
	_tmp388_ = _tmp387_;
	_tmp389_ = tuba_api_annual_reports_report_data_get_top_statuses (_tmp388_);
	_tmp390_ = _tmp389_;
	_tmp391_ = tuba_api_annual_reports_report_data_top_statuses_get_by_favourites (_tmp390_);
	_tmp392_ = _tmp391_;
	if (_tmp392_ != NULL) {
		GtkBox* status_box = NULL;
		GtkBox* _tmp393_;
		GtkBox* _tmp394_;
		gchar* _tmp395_;
		gchar** _tmp396_;
		GtkLabel* _tmp397_ = NULL;
		GtkLabel* _tmp398_;
		GtkBox* _tmp423_;
		GtkBox* _tmp424_;
		_tmp393_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 12);
		g_object_ref_sink (_tmp393_);
		status_box = _tmp393_;
		_tmp394_ = status_box;
		_tmp395_ = g_strdup ("title-1");
		_tmp396_ = g_new0 (gchar*, 1 + 1);
		_tmp396_[0] = _tmp395_;
		_tmp397_ = (GtkLabel*) gtk_label_new (_ ("Most Favorited Post"));
		gtk_widget_set_css_classes ((GtkWidget*) _tmp397_, _tmp396_);
		_tmp396_ = (_vala_array_free (_tmp396_, 1, (GDestroyNotify) g_free), NULL);
		gtk_label_set_wrap (_tmp397_, TRUE);
		gtk_label_set_wrap_mode (_tmp397_, PANGO_WRAP_WORD_CHAR);
		g_object_ref_sink (_tmp397_);
		_tmp398_ = _tmp397_;
		gtk_box_append (_tmp394_, (GtkWidget*) _tmp398_);
		_g_object_unref0 (_tmp398_);
		{
			GeeArrayList* _status_list = NULL;
			GeeArrayList* _tmp399_;
			GeeArrayList* _tmp400_;
			gint _status_size = 0;
			GeeArrayList* _tmp401_;
			gint _tmp402_;
			gint _tmp403_;
			gint _status_index = 0;
			_tmp399_ = tuba_api_annual_reports_get_statuses (report);
			_tmp400_ = _tmp399_;
			_status_list = _tmp400_;
			_tmp401_ = _status_list;
			_tmp402_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp401_);
			_tmp403_ = _tmp402_;
			_status_size = _tmp403_;
			_status_index = -1;
			while (TRUE) {
				gint _tmp404_;
				gint _tmp405_;
				TubaAPIStatus* status = NULL;
				GeeArrayList* _tmp406_;
				gpointer _tmp407_;
				TubaAPIStatus* _tmp408_;
				const gchar* _tmp409_;
				const gchar* _tmp410_;
				TubaAPIAnnualReportsReport* _tmp411_;
				TubaAPIAnnualReportsReportData* _tmp412_;
				TubaAPIAnnualReportsReportData* _tmp413_;
				TubaAPIAnnualReportsReportDataTopStatuses* _tmp414_;
				TubaAPIAnnualReportsReportDataTopStatuses* _tmp415_;
				const gchar* _tmp416_;
				const gchar* _tmp417_;
				_status_index = _status_index + 1;
				_tmp404_ = _status_index;
				_tmp405_ = _status_size;
				if (!(_tmp404_ < _tmp405_)) {
					break;
				}
				_tmp406_ = _status_list;
				_tmp407_ = gee_abstract_list_get ((GeeAbstractList*) _tmp406_, _status_index);
				status = (TubaAPIStatus*) _tmp407_;
				_tmp408_ = status;
				_tmp409_ = tuba_api_status_get_id (_tmp408_);
				_tmp410_ = _tmp409_;
				_tmp411_ = current_report;
				_tmp412_ = tuba_api_annual_reports_report_get_data (_tmp411_);
				_tmp413_ = _tmp412_;
				_tmp414_ = tuba_api_annual_reports_report_data_get_top_statuses (_tmp413_);
				_tmp415_ = _tmp414_;
				_tmp416_ = tuba_api_annual_reports_report_data_top_statuses_get_by_favourites (_tmp415_);
				_tmp417_ = _tmp416_;
				if (g_strcmp0 (_tmp410_, _tmp417_) == 0) {
					TubaDialogsAnnualReportPostButton* post_btn = NULL;
					TubaAPIStatus* _tmp418_;
					TubaDialogsAnnualReportPostButton* _tmp419_;
					TubaDialogsAnnualReportPostButton* _tmp420_;
					GtkBox* _tmp421_;
					TubaDialogsAnnualReportPostButton* _tmp422_;
					_tmp418_ = status;
					_tmp419_ = tuba_dialogs_annual_report_post_button_new (_tmp418_);
					g_object_ref_sink (_tmp419_);
					post_btn = _tmp419_;
					_tmp420_ = post_btn;
					g_signal_connect_object ((GtkButton*) _tmp420_, "clicked", (GCallback) _tuba_dialogs_annual_report_on_post_button_clicked_gtk_button_clicked, self, 0);
					_tmp421_ = status_box;
					_tmp422_ = post_btn;
					gtk_box_append (_tmp421_, (GtkWidget*) _tmp422_);
					_g_object_unref0 (post_btn);
					_g_object_unref0 (status);
					break;
				}
				_g_object_unref0 (status);
			}
		}
		_tmp423_ = advanced_box;
		_tmp424_ = status_box;
		gtk_box_append (_tmp423_, (GtkWidget*) _tmp424_);
		_g_object_unref0 (status_box);
	}
	_tmp425_ = current_report;
	_tmp426_ = tuba_api_annual_reports_report_get_data (_tmp425_);
	_tmp427_ = _tmp426_;
	_tmp428_ = tuba_api_annual_reports_report_data_get_top_statuses (_tmp427_);
	_tmp429_ = _tmp428_;
	_tmp430_ = tuba_api_annual_reports_report_data_top_statuses_get_by_reblogs (_tmp429_);
	_tmp431_ = _tmp430_;
	if (_tmp431_ != NULL) {
		GtkBox* status_box = NULL;
		GtkBox* _tmp432_;
		GtkBox* _tmp433_;
		gchar* _tmp434_;
		gchar** _tmp435_;
		GtkLabel* _tmp436_ = NULL;
		GtkLabel* _tmp437_;
		GtkBox* _tmp462_;
		GtkBox* _tmp463_;
		_tmp432_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 12);
		g_object_ref_sink (_tmp432_);
		status_box = _tmp432_;
		_tmp433_ = status_box;
		_tmp434_ = g_strdup ("title-1");
		_tmp435_ = g_new0 (gchar*, 1 + 1);
		_tmp435_[0] = _tmp434_;
		_tmp436_ = (GtkLabel*) gtk_label_new (_ ("Most Boosted Post"));
		gtk_widget_set_css_classes ((GtkWidget*) _tmp436_, _tmp435_);
		_tmp435_ = (_vala_array_free (_tmp435_, 1, (GDestroyNotify) g_free), NULL);
		gtk_label_set_wrap (_tmp436_, TRUE);
		gtk_label_set_wrap_mode (_tmp436_, PANGO_WRAP_WORD_CHAR);
		g_object_ref_sink (_tmp436_);
		_tmp437_ = _tmp436_;
		gtk_box_append (_tmp433_, (GtkWidget*) _tmp437_);
		_g_object_unref0 (_tmp437_);
		{
			GeeArrayList* _status_list = NULL;
			GeeArrayList* _tmp438_;
			GeeArrayList* _tmp439_;
			gint _status_size = 0;
			GeeArrayList* _tmp440_;
			gint _tmp441_;
			gint _tmp442_;
			gint _status_index = 0;
			_tmp438_ = tuba_api_annual_reports_get_statuses (report);
			_tmp439_ = _tmp438_;
			_status_list = _tmp439_;
			_tmp440_ = _status_list;
			_tmp441_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp440_);
			_tmp442_ = _tmp441_;
			_status_size = _tmp442_;
			_status_index = -1;
			while (TRUE) {
				gint _tmp443_;
				gint _tmp444_;
				TubaAPIStatus* status = NULL;
				GeeArrayList* _tmp445_;
				gpointer _tmp446_;
				TubaAPIStatus* _tmp447_;
				const gchar* _tmp448_;
				const gchar* _tmp449_;
				TubaAPIAnnualReportsReport* _tmp450_;
				TubaAPIAnnualReportsReportData* _tmp451_;
				TubaAPIAnnualReportsReportData* _tmp452_;
				TubaAPIAnnualReportsReportDataTopStatuses* _tmp453_;
				TubaAPIAnnualReportsReportDataTopStatuses* _tmp454_;
				const gchar* _tmp455_;
				const gchar* _tmp456_;
				_status_index = _status_index + 1;
				_tmp443_ = _status_index;
				_tmp444_ = _status_size;
				if (!(_tmp443_ < _tmp444_)) {
					break;
				}
				_tmp445_ = _status_list;
				_tmp446_ = gee_abstract_list_get ((GeeAbstractList*) _tmp445_, _status_index);
				status = (TubaAPIStatus*) _tmp446_;
				_tmp447_ = status;
				_tmp448_ = tuba_api_status_get_id (_tmp447_);
				_tmp449_ = _tmp448_;
				_tmp450_ = current_report;
				_tmp451_ = tuba_api_annual_reports_report_get_data (_tmp450_);
				_tmp452_ = _tmp451_;
				_tmp453_ = tuba_api_annual_reports_report_data_get_top_statuses (_tmp452_);
				_tmp454_ = _tmp453_;
				_tmp455_ = tuba_api_annual_reports_report_data_top_statuses_get_by_reblogs (_tmp454_);
				_tmp456_ = _tmp455_;
				if (g_strcmp0 (_tmp449_, _tmp456_) == 0) {
					TubaDialogsAnnualReportPostButton* post_btn = NULL;
					TubaAPIStatus* _tmp457_;
					TubaDialogsAnnualReportPostButton* _tmp458_;
					TubaDialogsAnnualReportPostButton* _tmp459_;
					GtkBox* _tmp460_;
					TubaDialogsAnnualReportPostButton* _tmp461_;
					_tmp457_ = status;
					_tmp458_ = tuba_dialogs_annual_report_post_button_new (_tmp457_);
					g_object_ref_sink (_tmp458_);
					post_btn = _tmp458_;
					_tmp459_ = post_btn;
					g_signal_connect_object ((GtkButton*) _tmp459_, "clicked", (GCallback) _tuba_dialogs_annual_report_on_post_button_clicked_gtk_button_clicked, self, 0);
					_tmp460_ = status_box;
					_tmp461_ = post_btn;
					gtk_box_append (_tmp460_, (GtkWidget*) _tmp461_);
					_g_object_unref0 (post_btn);
					_g_object_unref0 (status);
					break;
				}
				_g_object_unref0 (status);
			}
		}
		_tmp462_ = advanced_box;
		_tmp463_ = status_box;
		gtk_box_append (_tmp462_, (GtkWidget*) _tmp463_);
		_g_object_unref0 (status_box);
	}
	_tmp464_ = current_report;
	_tmp465_ = tuba_api_annual_reports_report_get_data (_tmp464_);
	_tmp466_ = _tmp465_;
	_tmp467_ = tuba_api_annual_reports_report_data_get_top_statuses (_tmp466_);
	_tmp468_ = _tmp467_;
	_tmp469_ = tuba_api_annual_reports_report_data_top_statuses_get_by_replies (_tmp468_);
	_tmp470_ = _tmp469_;
	if (_tmp470_ != NULL) {
		GtkBox* status_box = NULL;
		GtkBox* _tmp471_;
		GtkBox* _tmp472_;
		gchar* _tmp473_;
		gchar** _tmp474_;
		GtkLabel* _tmp475_ = NULL;
		GtkLabel* _tmp476_;
		GtkBox* _tmp501_;
		GtkBox* _tmp502_;
		_tmp471_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 12);
		g_object_ref_sink (_tmp471_);
		status_box = _tmp471_;
		_tmp472_ = status_box;
		_tmp473_ = g_strdup ("title-1");
		_tmp474_ = g_new0 (gchar*, 1 + 1);
		_tmp474_[0] = _tmp473_;
		_tmp475_ = (GtkLabel*) gtk_label_new (_ ("Most Replied Post"));
		gtk_widget_set_css_classes ((GtkWidget*) _tmp475_, _tmp474_);
		_tmp474_ = (_vala_array_free (_tmp474_, 1, (GDestroyNotify) g_free), NULL);
		gtk_label_set_wrap (_tmp475_, TRUE);
		gtk_label_set_wrap_mode (_tmp475_, PANGO_WRAP_WORD_CHAR);
		g_object_ref_sink (_tmp475_);
		_tmp476_ = _tmp475_;
		gtk_box_append (_tmp472_, (GtkWidget*) _tmp476_);
		_g_object_unref0 (_tmp476_);
		{
			GeeArrayList* _status_list = NULL;
			GeeArrayList* _tmp477_;
			GeeArrayList* _tmp478_;
			gint _status_size = 0;
			GeeArrayList* _tmp479_;
			gint _tmp480_;
			gint _tmp481_;
			gint _status_index = 0;
			_tmp477_ = tuba_api_annual_reports_get_statuses (report);
			_tmp478_ = _tmp477_;
			_status_list = _tmp478_;
			_tmp479_ = _status_list;
			_tmp480_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp479_);
			_tmp481_ = _tmp480_;
			_status_size = _tmp481_;
			_status_index = -1;
			while (TRUE) {
				gint _tmp482_;
				gint _tmp483_;
				TubaAPIStatus* status = NULL;
				GeeArrayList* _tmp484_;
				gpointer _tmp485_;
				TubaAPIStatus* _tmp486_;
				const gchar* _tmp487_;
				const gchar* _tmp488_;
				TubaAPIAnnualReportsReport* _tmp489_;
				TubaAPIAnnualReportsReportData* _tmp490_;
				TubaAPIAnnualReportsReportData* _tmp491_;
				TubaAPIAnnualReportsReportDataTopStatuses* _tmp492_;
				TubaAPIAnnualReportsReportDataTopStatuses* _tmp493_;
				const gchar* _tmp494_;
				const gchar* _tmp495_;
				_status_index = _status_index + 1;
				_tmp482_ = _status_index;
				_tmp483_ = _status_size;
				if (!(_tmp482_ < _tmp483_)) {
					break;
				}
				_tmp484_ = _status_list;
				_tmp485_ = gee_abstract_list_get ((GeeAbstractList*) _tmp484_, _status_index);
				status = (TubaAPIStatus*) _tmp485_;
				_tmp486_ = status;
				_tmp487_ = tuba_api_status_get_id (_tmp486_);
				_tmp488_ = _tmp487_;
				_tmp489_ = current_report;
				_tmp490_ = tuba_api_annual_reports_report_get_data (_tmp489_);
				_tmp491_ = _tmp490_;
				_tmp492_ = tuba_api_annual_reports_report_data_get_top_statuses (_tmp491_);
				_tmp493_ = _tmp492_;
				_tmp494_ = tuba_api_annual_reports_report_data_top_statuses_get_by_replies (_tmp493_);
				_tmp495_ = _tmp494_;
				if (g_strcmp0 (_tmp488_, _tmp495_) == 0) {
					TubaDialogsAnnualReportPostButton* post_btn = NULL;
					TubaAPIStatus* _tmp496_;
					TubaDialogsAnnualReportPostButton* _tmp497_;
					TubaDialogsAnnualReportPostButton* _tmp498_;
					GtkBox* _tmp499_;
					TubaDialogsAnnualReportPostButton* _tmp500_;
					_tmp496_ = status;
					_tmp497_ = tuba_dialogs_annual_report_post_button_new (_tmp496_);
					g_object_ref_sink (_tmp497_);
					post_btn = _tmp497_;
					_tmp498_ = post_btn;
					g_signal_connect_object ((GtkButton*) _tmp498_, "clicked", (GCallback) _tuba_dialogs_annual_report_on_post_button_clicked_gtk_button_clicked, self, 0);
					_tmp499_ = status_box;
					_tmp500_ = post_btn;
					gtk_box_append (_tmp499_, (GtkWidget*) _tmp500_);
					_g_object_unref0 (post_btn);
					_g_object_unref0 (status);
					break;
				}
				_g_object_unref0 (status);
			}
		}
		_tmp501_ = advanced_box;
		_tmp502_ = status_box;
		gtk_box_append (_tmp501_, (GtkWidget*) _tmp502_);
		_g_object_unref0 (status_box);
	}
	_g_object_unref0 (advanced_box);
	_g_object_unref0 (report_accounts);
	_g_object_unref0 (stats_flowbox);
	_g_free0 (title);
	_g_object_unref0 (current_report);
	_g_object_unref0 (avi);
	return self;
}

TubaDialogsAnnualReport*
tuba_dialogs_annual_report_new (TubaAPIAnnualReports* report,
                                gint year)
{
	return tuba_dialogs_annual_report_construct (TUBA_DIALOGS_TYPE_ANNUAL_REPORT, report, year);
}

static void
tuba_dialogs_annual_report_on_post_button_clicked (TubaDialogsAnnualReport* self)
{
	g_return_if_fail (self != NULL);
	adw_dialog_force_close ((AdwDialog*) self);
}

static void
__lambda104_ (TubaDialogsAnnualReport* self,
              GObject* obj,
              GAsyncResult* res)
{
	GtkButton* _tmp6_;
	GError* _inner_error0_ = NULL;
	g_return_if_fail (res != NULL);
	{
		tuba_dialogs_annual_report_share_finish (self, res, &_inner_error0_);
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
			goto __catch0_g_error;
		}
	}
	goto __finally0;
	__catch0_g_error:
	{
		GError* e = NULL;
		GError* _tmp0_;
		const gchar* _tmp1_;
		AdwToastOverlay* _tmp2_;
		GError* _tmp3_;
		const gchar* _tmp4_;
		AdwToast* _tmp5_ = NULL;
		e = _inner_error0_;
		_inner_error0_ = NULL;
		_tmp0_ = e;
		_tmp1_ = _tmp0_->message;
		g_warning ("AnnualReport.vala:518: %s", _tmp1_);
		_tmp2_ = self->priv->toast_overlay;
		_tmp3_ = e;
		_tmp4_ = _tmp3_->message;
		_tmp5_ = adw_toast_new (_tmp4_);
		adw_toast_set_timeout (_tmp5_, (guint) 5);
		adw_toast_overlay_add_toast (_tmp2_, _tmp5_);
		_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;
	}
	_tmp6_ = self->priv->share_button;
	gtk_widget_set_sensitive ((GtkWidget*) _tmp6_, TRUE);
}

static void
___lambda104__gasync_ready_callback (GObject* source_object,
                                     GAsyncResult* res,
                                     gpointer self)
{
	__lambda104_ ((TubaDialogsAnnualReport*) self, source_object, res);
	g_object_unref (self);
}

static void
tuba_dialogs_annual_report_on_share (TubaDialogsAnnualReport* self)
{
	GtkButton* _tmp0_;
	GdkTexture* texture = NULL;
	GdkTexture* _tmp1_;
	GdkTexture* _tmp2_;
	GdkTexture* _tmp4_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->priv->share_button;
	gtk_widget_set_sensitive ((GtkWidget*) _tmp0_, FALSE);
	_tmp1_ = tuba_dialogs_annual_report_do_screenshot (self);
	texture = _tmp1_;
	_tmp2_ = texture;
	if (_tmp2_ == NULL) {
		GtkButton* _tmp3_;
		_tmp3_ = self->priv->share_button;
		gtk_widget_set_sensitive ((GtkWidget*) _tmp3_, TRUE);
		_g_object_unref0 (texture);
		return;
	}
	_tmp4_ = texture;
	tuba_dialogs_annual_report_share_async (self, _tmp4_, ___lambda104__gasync_ready_callback, g_object_ref (self));
	_g_object_unref0 (texture);
}

static void
tuba_dialogs_annual_report_share_async_data_free (gpointer _data)
{
	TubaDialogsAnnualReportShareAsyncData* _data_;
	_data_ = _data;
	_g_object_unref0 (_data_->texture);
	_g_object_unref0 (_data_->self);
	g_slice_free (TubaDialogsAnnualReportShareAsyncData, _data_);
}

static void
tuba_dialogs_annual_report_share_async (TubaDialogsAnnualReport* self,
                                        GdkTexture* texture,
                                        GAsyncReadyCallback _callback_,
                                        gpointer _user_data_)
{
	TubaDialogsAnnualReportShareAsyncData* _data_;
	TubaDialogsAnnualReport* _tmp0_;
	GdkTexture* _tmp1_;
	g_return_if_fail (self != NULL);
	g_return_if_fail (texture != NULL);
	_data_ = g_slice_new0 (TubaDialogsAnnualReportShareAsyncData);
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
	g_task_set_task_data (_data_->_async_result, _data_, tuba_dialogs_annual_report_share_async_data_free);
	_tmp0_ = _g_object_ref0 (self);
	_data_->self = _tmp0_;
	_tmp1_ = _g_object_ref0 (texture);
	_g_object_unref0 (_data_->texture);
	_data_->texture = _tmp1_;
	tuba_dialogs_annual_report_share_async_co (_data_);
}

static void
tuba_dialogs_annual_report_share_finish (TubaDialogsAnnualReport* self,
                                         GAsyncResult* _res_,
                                         GError** error)
{
	TubaDialogsAnnualReportShareAsyncData* _data_;
	_data_ = g_task_propagate_pointer (G_TASK (_res_), error);
	if (NULL == _data_) {
		return;
	}
}

static void
tuba_dialogs_annual_report_share_async_ready (GObject* source_object,
                                              GAsyncResult* _res_,
                                              gpointer _user_data_)
{
	TubaDialogsAnnualReportShareAsyncData* _data_;
	_data_ = _user_data_;
	_data_->_source_object_ = source_object;
	_data_->_res_ = _res_;
	tuba_dialogs_annual_report_share_async_co (_data_);
}

static gboolean
tuba_dialogs_annual_report_share_async_co (TubaDialogsAnnualReportShareAsyncData* _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_->_tmp0_ = gdk_texture_save_to_png_bytes (_data_->texture);
	_data_->_tmp1_ = _data_->_tmp0_;
	_data_->_state_ = 1;
	tuba_api_attachment_upload (NULL, _data_->_tmp1_, "image/png", tuba_dialogs_annual_report_share_async_ready, _data_);
	return FALSE;
	_state_1:
	_data_->_tmp2_ = tuba_api_attachment_upload_finish (_data_->_res_, &_data_->_inner_error0_);
	_data_->_tmp3_ = _data_->_tmp2_;
	_g_bytes_unref0 (_data_->_tmp1_);
	_data_->attachment = _data_->_tmp3_;
	if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
		g_task_return_error (_data_->_async_result, _data_->_inner_error0_);
		g_object_unref (_data_->_async_result);
		return FALSE;
	}
	_data_->_tmp4_ = json_builder_new ();
	_data_->builder = _data_->_tmp4_;
	_data_->_tmp5_ = _data_->builder;
	json_builder_begin_object (_data_->_tmp5_);
	_data_->_tmp6_ = _data_->builder;
	json_builder_set_member_name (_data_->_tmp6_, "description");
	_data_->_tmp7_ = _data_->builder;
	_data_->_tmp8_ = _data_->self->priv->report_alt_text;
	json_builder_add_string_value (_data_->_tmp7_, _data_->_tmp8_);
	_data_->_tmp9_ = _data_->builder;
	json_builder_end_object (_data_->_tmp9_);
	_data_->_tmp10_ = _data_->attachment;
	_data_->_tmp11_ = tuba_api_attachment_get_id (_data_->_tmp10_);
	_data_->_tmp12_ = _data_->_tmp11_;
	_data_->_tmp13_ = string_to_string (_data_->_tmp12_);
	_data_->_tmp14_ = g_strconcat ("/api/v1/media/", _data_->_tmp13_, NULL);
	_data_->_tmp15_ = _data_->_tmp14_;
	_data_->_tmp16_ = tuba_accounts;
	_data_->_tmp17_ = tuba_account_store_get_active (_data_->_tmp16_);
	_data_->_tmp18_ = _data_->_tmp17_;
	_data_->_tmp19_ = _g_object_ref0 (_data_->_tmp18_);
	_data_->_tmp20_ = NULL;
	_data_->_tmp20_ = tuba_request_v2_new (_data_->_tmp15_, TUBA_REQUEST_V2_METHOD_PUT);
	tuba_request_v2_set_account (_data_->_tmp20_, _data_->_tmp19_);
	_g_object_unref0 (_data_->_tmp19_);
	_data_->_tmp21_ = _data_->_tmp20_;
	_g_free0 (_data_->_tmp15_);
	_data_->req = _data_->_tmp21_;
	_data_->_tmp22_ = _data_->req;
	_data_->_tmp23_ = _data_->builder;
	tuba_request_v2_set_body_from_json (_data_->_tmp22_, _data_->_tmp23_);
	_data_->_tmp24_ = _data_->req;
	_data_->_state_ = 2;
	tuba_request_v2_exec (_data_->_tmp24_, tuba_dialogs_annual_report_share_async_ready, _data_);
	return FALSE;
	_state_2:
	_data_->_tmp25_ = tuba_request_v2_exec_finish (_data_->_tmp24_, _data_->_res_, NULL, &_data_->_inner_error0_);
	_data_->_tmp26_ = _data_->_tmp25_;
	_g_object_unref0 (_data_->_tmp26_);
	if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
		g_task_return_error (_data_->_async_result, _data_->_inner_error0_);
		_g_object_unref0 (_data_->req);
		_g_object_unref0 (_data_->builder);
		_g_object_unref0 (_data_->attachment);
		g_object_unref (_data_->_async_result);
		return FALSE;
	}
	_data_->_tmp27_ = _data_->attachment;
	_data_->_tmp28_ = _data_->self->priv->report_alt_text;
	tuba_api_attachment_set_description (_data_->_tmp27_, _data_->_tmp28_);
	_data_->_tmp29_ = _data_->attachment;
	_data_->_tmp30_ = _g_object_ref0 (_data_->_tmp29_);
	_data_->_tmp31_ = g_new0 (TubaAPIAttachment*, 1 + 1);
	_data_->_tmp31_[0] = _data_->_tmp30_;
	_data_->_tmp32_ = gee_array_list_new_wrap (TUBA_API_TYPE_ATTACHMENT, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, _data_->_tmp31_, 1, NULL, NULL, NULL);
	_data_->_tmp33_ = _data_->_tmp32_;
	memset (&_data_->_tmp34_, 0, sizeof (TubaDialogsComposerDialogPrecompose));
	_g_free0 (_data_->_tmp34_.content);
	_data_->_tmp34_.content = "#Wrapstodon #FediWrapped";
	_g_free0 (_data_->_tmp34_.spoiler);
	_data_->_tmp34_.spoiler = NULL;
	_g_free0 (_data_->_tmp34_.quote_id);
	_data_->_tmp34_.quote_id = NULL;
	_g_free0 (_data_->_tmp34_.scheduled_id);
	_data_->_tmp34_.scheduled_id = NULL;
	_g_free0 (_data_->_tmp34_.in_reply_to_id);
	_data_->_tmp34_.in_reply_to_id = NULL;
	_g_object_unref0 (_data_->_tmp34_.poll);
	_data_->_tmp34_.poll = NULL;
	_g_object_unref0 (_data_->_tmp34_.media_attachments);
	_data_->_tmp34_.media_attachments = _data_->_tmp33_;
	_data_->_tmp34_.sensitive_media = FALSE;
	_data_->_tmp34_.local_only = FALSE;
	_data_->_tmp35_ = tuba_settings;
	_data_->_tmp36_ = tuba_settings_get_default_post_visibility (_data_->_tmp35_);
	_data_->_tmp37_ = _data_->_tmp36_;
	_data_->_tmp38_ = tuba_settings;
	_data_->_tmp39_ = tuba_settings_get_default_language (_data_->_tmp38_);
	_data_->_tmp40_ = _data_->_tmp39_;
	_data_->_tmp41_ = tuba_settings;
	_data_->_tmp42_ = tuba_settings_get_default_quote_policy (_data_->_tmp41_);
	_data_->_tmp43_ = _data_->_tmp42_;
	_data_->_tmp44_ = tuba_dialogs_composer_dialog_new (&_data_->_tmp34_, _data_->_tmp37_, _data_->_tmp40_, _ ("Post"), FALSE, TRUE, _data_->_tmp43_, FALSE);
	g_object_ref_sink (_data_->_tmp44_);
	_data_->_tmp45_ = _data_->_tmp44_;
	_g_object_unref0 (_data_->_tmp45_);
	_g_object_unref0 (_data_->_tmp33_);
	_g_object_unref0 (_data_->req);
	_g_object_unref0 (_data_->builder);
	_g_object_unref0 (_data_->attachment);
	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 void
tuba_dialogs_annual_report_save_with_background (TubaDialogsAnnualReport* self)
{
	g_return_if_fail (self != NULL);
	tuba_dialogs_annual_report_save_as_async (self, NULL, NULL);
}

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

static void
tuba_dialogs_annual_report_save_as_async (TubaDialogsAnnualReport* self,
                                          GAsyncReadyCallback _callback_,
                                          gpointer _user_data_)
{
	TubaDialogsAnnualReportSaveAsAsyncData* _data_;
	TubaDialogsAnnualReport* _tmp0_;
	g_return_if_fail (self != NULL);
	_data_ = g_slice_new0 (TubaDialogsAnnualReportSaveAsAsyncData);
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
	g_task_set_task_data (_data_->_async_result, _data_, tuba_dialogs_annual_report_save_as_async_data_free);
	_tmp0_ = _g_object_ref0 (self);
	_data_->self = _tmp0_;
	tuba_dialogs_annual_report_save_as_async_co (_data_);
}

static void
tuba_dialogs_annual_report_save_as_finish (TubaDialogsAnnualReport* self,
                                           GAsyncResult* _res_)
{
	TubaDialogsAnnualReportSaveAsAsyncData* _data_;
	_data_ = g_task_propagate_pointer (G_TASK (_res_), NULL);
}

static void
tuba_dialogs_annual_report_save_as_async_ready (GObject* source_object,
                                                GAsyncResult* _res_,
                                                gpointer _user_data_)
{
	TubaDialogsAnnualReportSaveAsAsyncData* _data_;
	_data_ = _user_data_;
	_data_->_source_object_ = source_object;
	_data_->_res_ = _res_;
	tuba_dialogs_annual_report_save_as_async_co (_data_);
}

static gboolean
tuba_dialogs_annual_report_save_as_async_co (TubaDialogsAnnualReportSaveAsAsyncData* _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_->_tmp0_ = g_strdup (_ ("Save #FediWrapped"));
	_data_->_tmp1_ = _data_->self->priv->report_year;
	_data_->_tmp2_ = string_to_string (_data_->_tmp1_);
	_data_->_tmp3_ = g_strconcat (_data_->_tmp2_, "-wrapped.png", NULL);
	_data_->_tmp4_ = NULL;
	_data_->_tmp4_ = gtk_file_dialog_new ();
	gtk_file_dialog_set_title (_data_->_tmp4_, _data_->_tmp0_);
	_g_free0 (_data_->_tmp0_);
	gtk_file_dialog_set_modal (_data_->_tmp4_, TRUE);
	gtk_file_dialog_set_initial_name (_data_->_tmp4_, _data_->_tmp3_);
	_g_free0 (_data_->_tmp3_);
	_data_->chooser = _data_->_tmp4_;
	{
		_data_->_tmp5_ = _data_->chooser;
		_data_->_tmp6_ = tuba_app;
		_data_->_tmp7_ = tuba_application_get_main_window (_data_->_tmp6_);
		_data_->_tmp8_ = _data_->_tmp7_;
		_data_->_state_ = 1;
		gtk_file_dialog_save (_data_->_tmp5_, (GtkWindow*) _data_->_tmp8_, NULL, tuba_dialogs_annual_report_save_as_async_ready, _data_);
		return FALSE;
		_state_1:
		_data_->_tmp9_ = gtk_file_dialog_save_finish (_data_->_tmp5_, _data_->_res_, &_data_->_inner_error0_);
		_data_->file = _data_->_tmp9_;
		if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
			goto __catch0_g_error;
		}
		_data_->_tmp10_ = _data_->file;
		if (_data_->_tmp10_ != NULL) {
			_data_->_tmp11_ = tuba_dialogs_annual_report_do_screenshot (_data_->self);
			_data_->texture = _data_->_tmp11_;
			_data_->_tmp12_ = _data_->texture;
			if (_data_->_tmp12_ != NULL) {
				_data_->_tmp13_ = _data_->file;
				_data_->_tmp14_ = g_file_replace (_data_->_tmp13_, NULL, FALSE, G_FILE_CREATE_PRIVATE, NULL, &_data_->_inner_error0_);
				_data_->stream = _data_->_tmp14_;
				if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
					_g_object_unref0 (_data_->texture);
					_g_object_unref0 (_data_->file);
					goto __catch0_g_error;
				}
				{
					_data_->_tmp15_ = _data_->stream;
					_data_->_tmp16_ = _data_->texture;
					_data_->_tmp17_ = gdk_texture_save_to_png_bytes (_data_->_tmp16_);
					_data_->_tmp18_ = _data_->_tmp17_;
					_data_->_state_ = 2;
					g_output_stream_write_bytes_async ((GOutputStream*) _data_->_tmp15_, _data_->_tmp18_, G_PRIORITY_DEFAULT, NULL, tuba_dialogs_annual_report_save_as_async_ready, _data_);
					return FALSE;
					_state_2:
					g_output_stream_write_bytes_finish ((GOutputStream*) _data_->_tmp15_, _data_->_res_, &_data_->_inner_error0_);
					_g_bytes_unref0 (_data_->_tmp18_);
					if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
						if (_data_->_inner_error0_->domain == G_IO_ERROR) {
							goto __catch1_g_io_error;
						}
						goto __finally1;
					}
					_data_->_tmp19_ = _data_->self->priv->toast_overlay;
					_data_->_tmp20_ = _data_->self->priv->report_year;
					_data_->_tmp21_ = g_strdup_printf (_ ("Saved %s Wrapped"), _data_->_tmp20_);
					_data_->_tmp22_ = _data_->_tmp21_;
					_data_->_tmp23_ = NULL;
					_data_->_tmp23_ = adw_toast_new (_data_->_tmp22_);
					adw_toast_set_timeout (_data_->_tmp23_, (guint) 5);
					adw_toast_overlay_add_toast (_data_->_tmp19_, _data_->_tmp23_);
					_g_free0 (_data_->_tmp22_);
				}
				goto __finally1;
				__catch1_g_io_error:
				{
					_data_->e = _data_->_inner_error0_;
					_data_->_inner_error0_ = NULL;
					_data_->_tmp24_ = _data_->e;
					_data_->_tmp25_ = _data_->_tmp24_->message;
					g_warning ("AnnualReport.vala:570: %s", _data_->_tmp25_);
					_data_->_tmp26_ = _data_->self->priv->toast_overlay;
					_data_->_tmp27_ = _data_->e;
					_data_->_tmp28_ = _data_->_tmp27_->message;
					_data_->_tmp29_ = NULL;
					_data_->_tmp29_ = adw_toast_new (_data_->_tmp28_);
					adw_toast_set_timeout (_data_->_tmp29_, (guint) 5);
					adw_toast_overlay_add_toast (_data_->_tmp26_, _data_->_tmp29_);
					_g_error_free0 (_data_->e);
				}
				__finally1:
				if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
					_g_object_unref0 (_data_->stream);
					_g_object_unref0 (_data_->texture);
					_g_object_unref0 (_data_->file);
					goto __catch0_g_error;
				}
				_g_object_unref0 (_data_->stream);
			}
			_g_object_unref0 (_data_->texture);
		}
		_g_object_unref0 (_data_->file);
	}
	goto __finally0;
	__catch0_g_error:
	{
		_data_->_vala1_e = _data_->_inner_error0_;
		_data_->_inner_error0_ = NULL;
		_data_->_tmp30_ = _data_->_vala1_e;
		_data_->_tmp31_ = _data_->_tmp30_->message;
		_data_->_tmp32_ = string_to_string (_data_->_tmp31_);
		_data_->_tmp33_ = g_strconcat ("Couldn't get the result of FileDialog for annual report: ", _data_->_tmp32_, NULL);
		_data_->_tmp34_ = _data_->_tmp33_;
		g_warning ("AnnualReport.vala:580: %s", _data_->_tmp34_);
		_g_free0 (_data_->_tmp34_);
		_g_error_free0 (_data_->_vala1_e);
	}
	__finally0:
	if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
		_g_object_unref0 (_data_->chooser);
		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;
	}
	_g_object_unref0 (_data_->chooser);
	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 GdkTexture*
tuba_dialogs_annual_report_do_screenshot (TubaDialogsAnnualReport* self)
{
	gint width = 0;
	GtkBox* _tmp0_;
	gint height = 0;
	GtkBox* _tmp1_;
	graphene_rect_t rect = {0};
	GtkSnapshot* snapshot = NULL;
	GtkSnapshot* _tmp2_;
	GtkWidgetPaintable* _tmp3_;
	GtkSnapshot* _tmp4_;
	GskRenderNode* node = NULL;
	GtkSnapshot* _tmp5_;
	GskRenderNode* _tmp6_;
	GskRenderNode* _tmp7_;
	GskRenderer* renderer = NULL;
	GtkBox* _tmp22_;
	GtkNative* _tmp23_;
	GskRenderer* _tmp24_;
	GskRenderer* _tmp25_;
	GskRenderer* _tmp26_;
	GskRenderNode* _tmp27_;
	graphene_rect_t _tmp28_;
	GdkTexture* _tmp29_;
	GdkTexture* result;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->screenshot_box;
	width = gtk_widget_get_width ((GtkWidget*) _tmp0_);
	_tmp1_ = self->priv->screenshot_box;
	height = gtk_widget_get_height ((GtkWidget*) _tmp1_);
	if (MIN (width, height) < 512) {
		if (width < height) {
			height = (gint) ((((gfloat) height) / ((gfloat) width)) * 512);
			width = 512;
		} else {
			width = (gint) ((((gfloat) width) / ((gfloat) height)) * 512);
			height = 512;
		}
	}
	rect = *graphene_rect_zero ();
	graphene_rect_init (&rect, (gfloat) 0, (gfloat) 0, (gfloat) width, (gfloat) height);
	_tmp2_ = gtk_snapshot_new ();
	snapshot = _tmp2_;
	_tmp3_ = self->priv->screenshot_paintable;
	_tmp4_ = snapshot;
	gdk_paintable_snapshot ((GdkPaintable*) _tmp3_, (GdkSnapshot*) _tmp4_, (gdouble) width, (gdouble) height);
	_tmp5_ = snapshot;
	_tmp6_ = gtk_snapshot_to_node (_tmp5_);
	node = _tmp6_;
	_tmp7_ = node;
	if (_tmp7_ == NULL) {
		gchar* _tmp8_;
		gchar* _tmp9_;
		gchar* _tmp10_;
		gchar* _tmp11_;
		gchar* _tmp12_;
		gchar* _tmp13_;
		AdwToastOverlay* _tmp14_;
		gchar* _tmp15_;
		gchar* _tmp16_;
		gchar* _tmp17_;
		gchar* _tmp18_;
		gchar* _tmp19_;
		gchar* _tmp20_;
		AdwToast* _tmp21_ = NULL;
		_tmp8_ = g_strdup_printf ("%i", width);
		_tmp9_ = _tmp8_;
		_tmp10_ = g_strdup_printf ("%i", height);
		_tmp11_ = _tmp10_;
		_tmp12_ = g_strconcat ("Could not get node snapshot, width: ", _tmp9_, ", height: ", _tmp11_, NULL);
		_tmp13_ = _tmp12_;
		g_critical ("AnnualReport.vala:633: %s", _tmp13_);
		_g_free0 (_tmp13_);
		_g_free0 (_tmp11_);
		_g_free0 (_tmp9_);
		_tmp14_ = self->priv->toast_overlay;
		_tmp15_ = g_strdup_printf ("%i", width);
		_tmp16_ = _tmp15_;
		_tmp17_ = g_strdup_printf ("%i", height);
		_tmp18_ = _tmp17_;
		_tmp19_ = g_strconcat ("Could not get node snapshot, width: ", _tmp16_, ", height: ", _tmp18_, NULL);
		_tmp20_ = _tmp19_;
		_tmp21_ = adw_toast_new (_tmp20_);
		adw_toast_set_timeout (_tmp21_, (guint) 5);
		adw_toast_overlay_add_toast (_tmp14_, _tmp21_);
		_g_free0 (_tmp20_);
		_g_free0 (_tmp18_);
		_g_free0 (_tmp16_);
		result = NULL;
		_gsk_render_node_unref0 (node);
		_g_object_unref0 (snapshot);
		return result;
	}
	_tmp22_ = self->priv->screenshot_box;
	_tmp23_ = gtk_widget_get_native ((GtkWidget*) _tmp22_);
	_tmp24_ = gtk_native_get_renderer (_tmp23_);
	_tmp25_ = _g_object_ref0 (_tmp24_);
	renderer = _tmp25_;
	_tmp26_ = renderer;
	_tmp27_ = node;
	_tmp28_ = rect;
	_tmp29_ = gsk_renderer_render_texture (_tmp26_, _tmp27_, &_tmp28_);
	result = _tmp29_;
	_g_object_unref0 (renderer);
	_gsk_render_node_unref0 (node);
	_g_object_unref0 (snapshot);
	return result;
}

static void
tuba_dialogs_annual_report_on_change_style (TubaDialogsAnnualReport* self,
                                            GSimpleAction* action,
                                            GVariant* value)
{
	gchar* current_style_class = NULL;
	gchar* _tmp0_;
	gboolean _tmp1_ = FALSE;
	const gchar* _tmp2_;
	const gchar* _tmp7_;
	GtkBox* _tmp8_;
	gchar* _tmp9_;
	gchar* _tmp10_;
	g_return_if_fail (self != NULL);
	g_return_if_fail (action != NULL);
	if (value == NULL) {
		return;
	}
	_tmp0_ = tuba_dialogs_annual_report_background_to_string (self->priv->current_style);
	current_style_class = _tmp0_;
	_tmp2_ = current_style_class;
	if (g_strcmp0 (_tmp2_, "") != 0) {
		GtkBox* _tmp3_;
		const gchar* _tmp4_;
		_tmp3_ = self->priv->screenshot_box;
		_tmp4_ = current_style_class;
		_tmp1_ = gtk_widget_has_css_class ((GtkWidget*) _tmp3_, _tmp4_);
	} else {
		_tmp1_ = FALSE;
	}
	if (_tmp1_) {
		GtkBox* _tmp5_;
		const gchar* _tmp6_;
		_tmp5_ = self->priv->screenshot_box;
		_tmp6_ = current_style_class;
		gtk_widget_remove_css_class ((GtkWidget*) _tmp5_, _tmp6_);
	}
	_tmp7_ = g_variant_get_string (value, NULL);
	self->priv->current_style = tuba_dialogs_annual_report_background_from_string (_tmp7_);
	_tmp8_ = self->priv->screenshot_box;
	_tmp9_ = tuba_dialogs_annual_report_background_to_string (self->priv->current_style);
	_tmp10_ = _tmp9_;
	gtk_widget_add_css_class ((GtkWidget*) _tmp8_, _tmp10_);
	_g_free0 (_tmp10_);
	_g_free0 (current_style_class);
}

static gint
tuba_dialogs_annual_report_sort_countable (TubaDialogsAnnualReport* self,
                                           TubaAPIAnnualReportsReportDataCountable* a,
                                           TubaAPIAnnualReportsReportDataCountable* b)
{
	gint64 _tmp0_;
	gint64 _tmp1_;
	gint64 _tmp2_;
	gint64 _tmp3_;
	gint64 _tmp4_;
	gint64 _tmp5_;
	gint64 _tmp6_;
	gint64 _tmp7_;
	gint result;
	g_return_val_if_fail (self != NULL, -1);
	g_return_val_if_fail (a != NULL, -1);
	g_return_val_if_fail (b != NULL, -1);
	_tmp0_ = tuba_api_annual_reports_report_data_countable_get_count (a);
	_tmp1_ = _tmp0_;
	_tmp2_ = tuba_api_annual_reports_report_data_countable_get_count (b);
	_tmp3_ = _tmp2_;
	_tmp4_ = tuba_api_annual_reports_report_data_countable_get_count (a);
	_tmp5_ = _tmp4_;
	_tmp6_ = tuba_api_annual_reports_report_data_countable_get_count (b);
	_tmp7_ = _tmp6_;
	result = ((gint) (_tmp1_ < _tmp3_)) - ((gint) (_tmp5_ > _tmp7_));
	return result;
}

static inline gpointer
tuba_dialogs_annual_report_post_button_get_instance_private (TubaDialogsAnnualReportPostButton* self)
{
	return G_STRUCT_MEMBER_P (self, TubaDialogsAnnualReportPostButton_private_offset);
}

static void
_tuba_dialogs_annual_report_post_button_on_clicked_gtk_button_clicked (GtkButton* _sender,
                                                                       gpointer self)
{
	tuba_dialogs_annual_report_post_button_on_clicked ((TubaDialogsAnnualReportPostButton*) self);
}

static TubaDialogsAnnualReportPostButton*
tuba_dialogs_annual_report_post_button_construct (GType object_type,
                                                  TubaAPIStatus* status)
{
	TubaDialogsAnnualReportPostButton * self = NULL;
	TubaAPIStatus* _tmp0_;
	TubaAPIStatus* _tmp1_;
	TubaAPIStatus* _tmp2_;
	TubaAPIStatus* _tmp3_;
	TubaAPIStatus* _tmp4_;
	TubaAPIStatus* _tmp5_;
	TubaAPIStatus* _tmp6_;
	TubaWidgetsStatus* widg = NULL;
	GtkWidget* _tmp7_;
	TubaWidgetsStatus* _tmp8_;
	GtkMenuButton* _tmp9_;
	GtkStack* _tmp10_;
	GtkStack* _tmp11_;
	GtkStack* _tmp12_;
	g_return_val_if_fail (status != NULL, NULL);
	self = (TubaDialogsAnnualReportPostButton*) g_object_new (object_type, NULL);
	_tmp0_ = tuba_api_status_get_formal (status);
	_tmp1_ = _tmp0_;
	_tmp2_ = _g_object_ref0 (_tmp1_);
	_g_object_unref0 (self->priv->formal);
	self->priv->formal = _tmp2_;
	_tmp3_ = tuba_api_status_get_formal (status);
	_tmp4_ = _tmp3_;
	tuba_api_status_set_filtered (_tmp4_, NULL);
	_tmp5_ = tuba_api_status_get_formal (status);
	_tmp6_ = _tmp5_;
	tuba_api_status_set_tuba_spoiler_revealed (_tmp6_, TRUE);
	_tmp7_ = tuba_widgetizable_to_widget ((TubaWidgetizable*) status);
	_tmp8_ = TUBA_WIDGETS_IS_STATUS (_tmp7_) ? ((TubaWidgetsStatus*) _tmp7_) : NULL;
	if (_tmp8_ == NULL) {
		_g_object_unref0 (_tmp7_);
	}
	widg = _tmp8_;
	tuba_widgets_status_toggle_actions_visibility (widg, FALSE);
	_tmp9_ = widg->menu_button;
	gtk_widget_set_visible ((GtkWidget*) _tmp9_, FALSE);
	gtk_list_box_row_set_activatable ((GtkListBoxRow*) widg, FALSE);
	_tmp10_ = widg->filter_stack;
	gtk_widget_set_can_focus ((GtkWidget*) _tmp10_, FALSE);
	_tmp11_ = widg->filter_stack;
	gtk_widget_set_can_target ((GtkWidget*) _tmp11_, FALSE);
	_tmp12_ = widg->filter_stack;
	gtk_widget_set_focusable ((GtkWidget*) _tmp12_, FALSE);
	gtk_button_set_child ((GtkButton*) self, (GtkWidget*) widg);
	g_signal_connect_object ((GtkButton*) self, "clicked", (GCallback) _tuba_dialogs_annual_report_post_button_on_clicked_gtk_button_clicked, self, 0);
	_g_object_unref0 (widg);
	return self;
}

static TubaDialogsAnnualReportPostButton*
tuba_dialogs_annual_report_post_button_new (TubaAPIStatus* status)
{
	return tuba_dialogs_annual_report_post_button_construct (TUBA_DIALOGS_ANNUAL_REPORT_TYPE_POST_BUTTON, status);
}

static void
tuba_dialogs_annual_report_post_button_on_clicked (TubaDialogsAnnualReportPostButton* self)
{
	TubaViewsThread* view = NULL;
	TubaAPIStatus* _tmp0_;
	TubaViewsThread* _tmp1_;
	TubaApplication* _tmp2_;
	TubaDialogsMainWindow* _tmp3_;
	TubaDialogsMainWindow* _tmp4_;
	TubaViewsBase* _tmp5_;
	TubaViewsBase* _tmp6_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->priv->formal;
	_tmp1_ = tuba_views_thread_new (_tmp0_);
	g_object_ref_sink (_tmp1_);
	view = _tmp1_;
	_tmp2_ = tuba_app;
	_tmp3_ = tuba_application_get_main_window (_tmp2_);
	_tmp4_ = _tmp3_;
	_tmp5_ = tuba_dialogs_main_window_open_view (_tmp4_, (TubaViewsBase*) view);
	_tmp6_ = _tmp5_;
	_g_object_unref0 (_tmp6_);
	_g_object_unref0 (view);
}

static GObject *
tuba_dialogs_annual_report_post_button_constructor (GType type,
                                                    guint n_construct_properties,
                                                    GObjectConstructParam * construct_properties)
{
	GObject * obj;
	GObjectClass * parent_class;
	TubaDialogsAnnualReportPostButton * self;
	gchar* _tmp0_;
	gchar** _tmp1_;
	gchar** _tmp2_;
	gint _tmp2__length1;
	parent_class = G_OBJECT_CLASS (tuba_dialogs_annual_report_post_button_parent_class);
	obj = parent_class->constructor (type, n_construct_properties, construct_properties);
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, TUBA_DIALOGS_ANNUAL_REPORT_TYPE_POST_BUTTON, TubaDialogsAnnualReportPostButton);
	_tmp0_ = g_strdup ("card");
	_tmp1_ = g_new0 (gchar*, 1 + 1);
	_tmp1_[0] = _tmp0_;
	_tmp2_ = _tmp1_;
	_tmp2__length1 = 1;
	gtk_widget_set_css_classes ((GtkWidget*) self, _tmp2_);
	_tmp2_ = (_vala_array_free (_tmp2_, _tmp2__length1, (GDestroyNotify) g_free), NULL);
	return obj;
}

static void
tuba_dialogs_annual_report_post_button_class_init (TubaDialogsAnnualReportPostButtonClass * klass,
                                                   gpointer klass_data)
{
	tuba_dialogs_annual_report_post_button_parent_class = g_type_class_peek_parent (klass);
	g_type_class_adjust_private_offset (klass, &TubaDialogsAnnualReportPostButton_private_offset);
	G_OBJECT_CLASS (klass)->constructor = tuba_dialogs_annual_report_post_button_constructor;
	G_OBJECT_CLASS (klass)->finalize = tuba_dialogs_annual_report_post_button_finalize;
}

static void
tuba_dialogs_annual_report_post_button_instance_init (TubaDialogsAnnualReportPostButton * self,
                                                      gpointer klass)
{
	self->priv = tuba_dialogs_annual_report_post_button_get_instance_private (self);
}

static void
tuba_dialogs_annual_report_post_button_finalize (GObject * obj)
{
	TubaDialogsAnnualReportPostButton * self;
	TubaAPIStatus* _tmp0_;
	const gchar* _tmp1_;
	const gchar* _tmp2_;
	const gchar* _tmp3_;
	gchar* _tmp4_;
	gchar* _tmp5_;
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, TUBA_DIALOGS_ANNUAL_REPORT_TYPE_POST_BUTTON, TubaDialogsAnnualReportPostButton);
	_tmp0_ = self->priv->formal;
	_tmp1_ = tuba_api_status_get_id (_tmp0_);
	_tmp2_ = _tmp1_;
	_tmp3_ = string_to_string (_tmp2_);
	_tmp4_ = g_strconcat ("Destroying PostButton ", _tmp3_, NULL);
	_tmp5_ = _tmp4_;
	g_debug ("AnnualReport.vala:4: %s", _tmp5_);
	_g_free0 (_tmp5_);
	_g_object_unref0 (self->priv->formal);
	G_OBJECT_CLASS (tuba_dialogs_annual_report_post_button_parent_class)->finalize (obj);
}

 G_GNUC_NO_INLINE static GType
tuba_dialogs_annual_report_post_button_get_type_once (void)
{
	static const GTypeInfo g_define_type_info = { sizeof (TubaDialogsAnnualReportPostButtonClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) tuba_dialogs_annual_report_post_button_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (TubaDialogsAnnualReportPostButton), 0, (GInstanceInitFunc) tuba_dialogs_annual_report_post_button_instance_init, NULL };
	GType tuba_dialogs_annual_report_post_button_type_id;
	tuba_dialogs_annual_report_post_button_type_id = g_type_register_static (gtk_button_get_type (), "TubaDialogsAnnualReportPostButton", &g_define_type_info, G_TYPE_FLAG_NONE);
	TubaDialogsAnnualReportPostButton_private_offset = g_type_add_instance_private (tuba_dialogs_annual_report_post_button_type_id, sizeof (TubaDialogsAnnualReportPostButtonPrivate));
	return tuba_dialogs_annual_report_post_button_type_id;
}

static GType
tuba_dialogs_annual_report_post_button_get_type (void)
{
	static GType tuba_dialogs_annual_report_post_button_type_id__once = 0;
	if (g_once_init_enter_pointer (&tuba_dialogs_annual_report_post_button_type_id__once)) {
		GType tuba_dialogs_annual_report_post_button_type_id;
		tuba_dialogs_annual_report_post_button_type_id = tuba_dialogs_annual_report_post_button_get_type_once ();
		g_once_init_leave_pointer (&tuba_dialogs_annual_report_post_button_type_id__once, tuba_dialogs_annual_report_post_button_type_id);
	}
	return tuba_dialogs_annual_report_post_button_type_id__once;
}

static void
_tuba_dialogs_annual_report_on_change_style_gsimple_action_activate_callback (GSimpleAction* action,
                                                                              GVariant* parameter,
                                                                              gpointer self)
{
	tuba_dialogs_annual_report_on_change_style ((TubaDialogsAnnualReport*) self, action, parameter);
}

static void
_tuba_dialogs_annual_report_on_share_gtk_button_clicked (GtkButton* _sender,
                                                         gpointer self)
{
	tuba_dialogs_annual_report_on_share ((TubaDialogsAnnualReport*) self);
}

static void
_tuba_dialogs_annual_report_save_with_background_gtk_button_clicked (GtkButton* _sender,
                                                                     gpointer self)
{
	tuba_dialogs_annual_report_save_with_background ((TubaDialogsAnnualReport*) self);
}

static void
_tuba_dialogs_annual_report_on_vadjustment_changed_gtk_adjustment_value_changed (GtkAdjustment* _sender,
                                                                                 gpointer self)
{
	tuba_dialogs_annual_report_on_vadjustment_changed ((TubaDialogsAnnualReport*) self, _sender);
}

static GObject *
tuba_dialogs_annual_report_constructor (GType type,
                                        guint n_construct_properties,
                                        GObjectConstructParam * construct_properties)
{
	GObject * obj;
	GObjectClass * parent_class;
	TubaDialogsAnnualReport * self;
	GSimpleActionGroup* actions = NULL;
	GSimpleActionGroup* _tmp0_;
	GSimpleActionGroup* _tmp1_;
	GActionEntry _tmp2_ = {0};
	GActionEntry* _tmp3_;
	GActionEntry* _tmp4_;
	gint _tmp4__length1;
	GSimpleActionGroup* _tmp5_;
	GMenu* _tmp6_;
	GMenu* _tmp7_;
	GMenu* _tmp8_;
	GMenu* _tmp9_;
	GMenu* _tmp10_;
	gint _tmp11_ = 0;
	GtkBox* _tmp12_ = NULL;
	GtkScrolledWindow* scrolled_window = NULL;
	GtkBox* _tmp13_;
	GtkWidget* _tmp14_;
	AdwClamp* _tmp15_ = NULL;
	GtkScrolledWindow* _tmp16_ = NULL;
	GtkScrolledWindow* _tmp17_;
	GtkWidget* _tmp18_;
	AdwToastOverlay* _tmp19_ = NULL;
	AdwToolbarView* toolbarview = NULL;
	AdwToastOverlay* _tmp20_;
	GtkWidget* _tmp21_;
	AdwToolbarView* _tmp22_ = NULL;
	AdwHeaderBar* _tmp23_ = NULL;
	AdwToolbarView* _tmp24_;
	AdwHeaderBar* _tmp25_;
	gchar* _tmp26_;
	gchar* _tmp27_;
	gchar** _tmp28_;
	GtkButton* _tmp29_ = NULL;
	GtkButton* _tmp30_;
	AdwHeaderBar* _tmp31_;
	GtkButton* _tmp32_;
	GtkButton* download_button = NULL;
	gchar* _tmp33_;
	gchar* _tmp34_;
	GtkButton* _tmp35_ = NULL;
	GtkButton* _tmp36_;
	AdwHeaderBar* _tmp37_;
	GtkButton* _tmp38_;
	GtkMenuButton* style_button = NULL;
	gchar* _tmp39_;
	GMenu* _tmp40_;
	GMenuModel* _tmp41_;
	GtkMenuButton* _tmp42_ = NULL;
	AdwHeaderBar* _tmp43_;
	GtkMenuButton* _tmp44_;
	AdwToolbarView* _tmp45_;
	GtkScrolledWindow* _tmp46_;
	GtkAdjustment* _tmp47_;
	GtkAdjustment* _tmp48_;
	parent_class = G_OBJECT_CLASS (tuba_dialogs_annual_report_parent_class);
	obj = parent_class->constructor (type, n_construct_properties, construct_properties);
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, TUBA_DIALOGS_TYPE_ANNUAL_REPORT, TubaDialogsAnnualReport);
	_tmp0_ = g_simple_action_group_new ();
	actions = _tmp0_;
	_tmp1_ = actions;
	memset (&_tmp2_, 0, sizeof (GActionEntry));
	_tmp2_.name = "change-style";
	_tmp2_.activate = _tuba_dialogs_annual_report_on_change_style_gsimple_action_activate_callback;
	_tmp2_.parameter_type = "s";
	_tmp3_ = g_new0 (GActionEntry, 1);
	_tmp3_[0] = _tmp2_;
	_tmp4_ = _tmp3_;
	_tmp4__length1 = 1;
	g_action_map_add_action_entries ((GActionMap*) _tmp1_, _tmp4_, (gint) 1, self);
	_tmp4_ = (g_free (_tmp4_), NULL);
	_tmp5_ = actions;
	gtk_widget_insert_action_group ((GtkWidget*) self, "annual", (GActionGroup*) _tmp5_);
	_tmp6_ = g_menu_new ();
	_g_object_unref0 (self->priv->style_menu);
	self->priv->style_menu = _tmp6_;
	_tmp7_ = self->priv->style_menu;
	g_menu_append (_tmp7_, _ ("Default"), "annual.change-style('window')");
	_tmp8_ = self->priv->style_menu;
	g_menu_append (_tmp8_, _ ("Accent"), "annual.change-style('accent')");
	_tmp9_ = self->priv->style_menu;
	g_menu_append (_tmp9_, "Pride", "annual.change-style('pride')");
	_tmp10_ = self->priv->style_menu;
	g_menu_append (_tmp10_, "Trans", "annual.change-style('trans')");
	gtk_widget_add_css_class ((GtkWidget*) self, "annual");
	adw_dialog_set_content_width ((AdwDialog*) self, 600);
	adw_dialog_set_content_height ((AdwDialog*) self, 600);
	_tmp11_ = 12;
	_tmp12_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 36);
	gtk_widget_set_margin_bottom ((GtkWidget*) _tmp12_, _tmp11_);
	gtk_widget_set_margin_top ((GtkWidget*) _tmp12_, _tmp11_);
	gtk_widget_set_margin_start ((GtkWidget*) _tmp12_, 6);
	gtk_widget_set_margin_end ((GtkWidget*) _tmp12_, 6);
	g_object_ref_sink (_tmp12_);
	_g_object_unref0 (self->priv->content_box);
	self->priv->content_box = _tmp12_;
	_tmp13_ = self->priv->content_box;
	_tmp14_ = _g_object_ref0 ((GtkWidget*) _tmp13_);
	_tmp15_ = (AdwClamp*) adw_clamp_new ();
	adw_clamp_set_child (_tmp15_, _tmp14_);
	_g_object_unref0 (_tmp14_);
	adw_clamp_set_tightening_threshold (_tmp15_, 100);
	gtk_widget_set_valign ((GtkWidget*) _tmp15_, GTK_ALIGN_START);
	g_object_ref_sink (_tmp15_);
	_tmp16_ = (GtkScrolledWindow*) gtk_scrolled_window_new ();
	gtk_widget_set_hexpand ((GtkWidget*) _tmp16_, TRUE);
	gtk_widget_set_vexpand ((GtkWidget*) _tmp16_, TRUE);
	gtk_scrolled_window_set_child (_tmp16_, (GtkWidget*) _tmp15_);
	_g_object_unref0 (_tmp15_);
	g_object_ref_sink (_tmp16_);
	scrolled_window = _tmp16_;
	_tmp17_ = scrolled_window;
	_tmp18_ = _g_object_ref0 ((GtkWidget*) _tmp17_);
	_tmp19_ = (AdwToastOverlay*) adw_toast_overlay_new ();
	gtk_widget_set_vexpand ((GtkWidget*) _tmp19_, TRUE);
	gtk_widget_set_hexpand ((GtkWidget*) _tmp19_, TRUE);
	adw_toast_overlay_set_child (_tmp19_, _tmp18_);
	_g_object_unref0 (_tmp18_);
	g_object_ref_sink (_tmp19_);
	_g_object_unref0 (self->priv->toast_overlay);
	self->priv->toast_overlay = _tmp19_;
	_tmp20_ = self->priv->toast_overlay;
	_tmp21_ = _g_object_ref0 ((GtkWidget*) _tmp20_);
	_tmp22_ = (AdwToolbarView*) adw_toolbar_view_new ();
	adw_toolbar_view_set_content (_tmp22_, _tmp21_);
	_g_object_unref0 (_tmp21_);
	g_object_ref_sink (_tmp22_);
	toolbarview = _tmp22_;
	_tmp23_ = (AdwHeaderBar*) adw_header_bar_new ();
	adw_header_bar_set_show_title (_tmp23_, FALSE);
	g_object_ref_sink (_tmp23_);
	_g_object_unref0 (self->priv->headerbar);
	self->priv->headerbar = _tmp23_;
	_tmp24_ = toolbarview;
	_tmp25_ = self->priv->headerbar;
	adw_toolbar_view_add_top_bar (_tmp24_, (GtkWidget*) _tmp25_);
	_tmp26_ = g_strdup (_ ("Share"));
	_tmp27_ = g_strdup ("suggested-action");
	_tmp28_ = g_new0 (gchar*, 1 + 1);
	_tmp28_[0] = _tmp27_;
	_tmp29_ = (GtkButton*) gtk_button_new ();
	gtk_button_set_label (_tmp29_, _tmp26_);
	_g_free0 (_tmp26_);
	gtk_widget_set_css_classes ((GtkWidget*) _tmp29_, _tmp28_);
	_tmp28_ = (_vala_array_free (_tmp28_, 1, (GDestroyNotify) g_free), NULL);
	g_object_ref_sink (_tmp29_);
	_g_object_unref0 (self->priv->share_button);
	self->priv->share_button = _tmp29_;
	_tmp30_ = self->priv->share_button;
	g_signal_connect_object (_tmp30_, "clicked", (GCallback) _tuba_dialogs_annual_report_on_share_gtk_button_clicked, self, 0);
	_tmp31_ = self->priv->headerbar;
	_tmp32_ = self->priv->share_button;
	adw_header_bar_pack_end (_tmp31_, (GtkWidget*) _tmp32_);
	_tmp33_ = g_strdup ("document-save-symbolic");
	_tmp34_ = g_strdup (_ ("Save As…"));
	_tmp35_ = (GtkButton*) gtk_button_new ();
	gtk_button_set_icon_name (_tmp35_, _tmp33_);
	_g_free0 (_tmp33_);
	gtk_widget_set_tooltip_text ((GtkWidget*) _tmp35_, _tmp34_);
	_g_free0 (_tmp34_);
	g_object_ref_sink (_tmp35_);
	download_button = _tmp35_;
	_tmp36_ = download_button;
	g_signal_connect_object (_tmp36_, "clicked", (GCallback) _tuba_dialogs_annual_report_save_with_background_gtk_button_clicked, self, 0);
	_tmp37_ = self->priv->headerbar;
	_tmp38_ = download_button;
	adw_header_bar_pack_end (_tmp37_, (GtkWidget*) _tmp38_);
	_tmp39_ = g_strdup (_ ("Style"));
	_tmp40_ = self->priv->style_menu;
	_tmp41_ = _g_object_ref0 ((GMenuModel*) _tmp40_);
	_tmp42_ = (GtkMenuButton*) gtk_menu_button_new ();
	gtk_menu_button_set_label (_tmp42_, _tmp39_);
	_g_free0 (_tmp39_);
	gtk_menu_button_set_menu_model (_tmp42_, _tmp41_);
	_g_object_unref0 (_tmp41_);
	g_object_ref_sink (_tmp42_);
	style_button = _tmp42_;
	_tmp43_ = self->priv->headerbar;
	_tmp44_ = style_button;
	adw_header_bar_pack_start (_tmp43_, (GtkWidget*) _tmp44_);
	_tmp45_ = toolbarview;
	adw_dialog_set_child ((AdwDialog*) self, (GtkWidget*) _tmp45_);
	_tmp46_ = scrolled_window;
	_tmp47_ = gtk_scrolled_window_get_vadjustment (_tmp46_);
	_tmp48_ = _tmp47_;
	g_signal_connect_object (_tmp48_, "value-changed", (GCallback) _tuba_dialogs_annual_report_on_vadjustment_changed_gtk_adjustment_value_changed, self, 0);
	_g_object_unref0 (style_button);
	_g_object_unref0 (download_button);
	_g_object_unref0 (toolbarview);
	_g_object_unref0 (scrolled_window);
	_g_object_unref0 (actions);
	return obj;
}

static void
tuba_dialogs_annual_report_class_init (TubaDialogsAnnualReportClass * klass,
                                       gpointer klass_data)
{
	tuba_dialogs_annual_report_parent_class = g_type_class_peek_parent (klass);
	g_type_class_adjust_private_offset (klass, &TubaDialogsAnnualReport_private_offset);
	G_OBJECT_CLASS (klass)->constructor = tuba_dialogs_annual_report_constructor;
	G_OBJECT_CLASS (klass)->finalize = tuba_dialogs_annual_report_finalize;
}

static void
tuba_dialogs_annual_report_instance_init (TubaDialogsAnnualReport * self,
                                          gpointer klass)
{
	gchar* _tmp0_;
	self->priv = tuba_dialogs_annual_report_get_instance_private (self);
	_tmp0_ = g_strdup ("");
	self->priv->report_alt_text = _tmp0_;
	self->priv->current_style = TUBA_DIALOGS_ANNUAL_REPORT_BACKGROUND_WINDOW;
}

static void
tuba_dialogs_annual_report_finalize (GObject * obj)
{
	TubaDialogsAnnualReport * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, TUBA_DIALOGS_TYPE_ANNUAL_REPORT, TubaDialogsAnnualReport);
	g_debug ("AnnualReport.vala:38: Destroying AnnualReport");
	_g_free0 (self->priv->report_year);
	_g_object_unref0 (self->priv->content_box);
	_g_object_unref0 (self->priv->toast_overlay);
	_g_object_unref0 (self->priv->screenshot_box);
	_g_object_unref0 (self->priv->share_button);
	_g_object_unref0 (self->priv->style_menu);
	_g_object_unref0 (self->priv->screenshot_paintable);
	_g_object_unref0 (self->priv->headerbar);
	_g_free0 (self->priv->report_alt_text);
	G_OBJECT_CLASS (tuba_dialogs_annual_report_parent_class)->finalize (obj);
}

 G_GNUC_NO_INLINE static GType
tuba_dialogs_annual_report_get_type_once (void)
{
	static const GTypeInfo g_define_type_info = { sizeof (TubaDialogsAnnualReportClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) tuba_dialogs_annual_report_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (TubaDialogsAnnualReport), 0, (GInstanceInitFunc) tuba_dialogs_annual_report_instance_init, NULL };
	GType tuba_dialogs_annual_report_type_id;
	tuba_dialogs_annual_report_type_id = g_type_register_static (adw_dialog_get_type (), "TubaDialogsAnnualReport", &g_define_type_info, G_TYPE_FLAG_NONE);
	TubaDialogsAnnualReport_private_offset = g_type_add_instance_private (tuba_dialogs_annual_report_type_id, sizeof (TubaDialogsAnnualReportPrivate));
	return tuba_dialogs_annual_report_type_id;
}

GType
tuba_dialogs_annual_report_get_type (void)
{
	static GType tuba_dialogs_annual_report_type_id__once = 0;
	if (g_once_init_enter_pointer (&tuba_dialogs_annual_report_type_id__once)) {
		GType tuba_dialogs_annual_report_type_id;
		tuba_dialogs_annual_report_type_id = tuba_dialogs_annual_report_get_type_once ();
		g_once_init_leave_pointer (&tuba_dialogs_annual_report_type_id__once, tuba_dialogs_annual_report_type_id);
	}
	return tuba_dialogs_annual_report_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);
}

