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

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

#define TUBA_WIDGETS_STATUS_EXPANDED_SEPARATOR " · "
#define TUBA_INSTANCE_ACCOUNT_KIND_REBLOG "reblog"
#define TUBA_INSTANCE_ACCOUNT_KIND_REMOTE_REBLOG "__remote-reblog"
#define TUBA_INSTANCE_ACCOUNT_KIND_FAVOURITE "favourite"
#define TUBA_WIDGETS_STATUS_THREAD_WIDTH 4.f
#define TUBA_INSTANCE_ACCOUNT_KIND_REPLY "tuba_reply"
#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_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;
typedef struct _TubaWidgetsStatusPrivate TubaWidgetsStatusPrivate;

#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_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;
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_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_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_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_API_TYPE_TRANSLATION (tuba_api_translation_get_type ())
#define TUBA_API_TRANSLATION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_API_TYPE_TRANSLATION, TubaAPITranslation))
#define TUBA_API_TRANSLATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_API_TYPE_TRANSLATION, TubaAPITranslationClass))
#define TUBA_API_IS_TRANSLATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_API_TYPE_TRANSLATION))
#define TUBA_API_IS_TRANSLATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_API_TYPE_TRANSLATION))
#define TUBA_API_TRANSLATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_API_TYPE_TRANSLATION, TubaAPITranslationClass))

typedef struct _TubaAPITranslation TubaAPITranslation;
typedef struct _TubaAPITranslationClass TubaAPITranslationClass;

#define TUBA_WIDGETS_TYPE_ACTIONS_ROW (tuba_widgets_actions_row_get_type ())
#define TUBA_WIDGETS_ACTIONS_ROW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_WIDGETS_TYPE_ACTIONS_ROW, TubaWidgetsActionsRow))
#define TUBA_WIDGETS_ACTIONS_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_WIDGETS_TYPE_ACTIONS_ROW, TubaWidgetsActionsRowClass))
#define TUBA_WIDGETS_IS_ACTIONS_ROW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_WIDGETS_TYPE_ACTIONS_ROW))
#define TUBA_WIDGETS_IS_ACTIONS_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_WIDGETS_TYPE_ACTIONS_ROW))
#define TUBA_WIDGETS_ACTIONS_ROW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_WIDGETS_TYPE_ACTIONS_ROW, TubaWidgetsActionsRowClass))

typedef struct _TubaWidgetsActionsRow TubaWidgetsActionsRow;
typedef struct _TubaWidgetsActionsRowClass TubaWidgetsActionsRowClass;

#define TUBA_WIDGETS_TYPE_HASHTAG_BAR (tuba_widgets_hashtag_bar_get_type ())
#define TUBA_WIDGETS_HASHTAG_BAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_WIDGETS_TYPE_HASHTAG_BAR, TubaWidgetsHashtagBar))
#define TUBA_WIDGETS_HASHTAG_BAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_WIDGETS_TYPE_HASHTAG_BAR, TubaWidgetsHashtagBarClass))
#define TUBA_WIDGETS_IS_HASHTAG_BAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_WIDGETS_TYPE_HASHTAG_BAR))
#define TUBA_WIDGETS_IS_HASHTAG_BAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_WIDGETS_TYPE_HASHTAG_BAR))
#define TUBA_WIDGETS_HASHTAG_BAR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_WIDGETS_TYPE_HASHTAG_BAR, TubaWidgetsHashtagBarClass))

typedef struct _TubaWidgetsHashtagBar TubaWidgetsHashtagBar;
typedef struct _TubaWidgetsHashtagBarClass TubaWidgetsHashtagBarClass;

#define TUBA_WIDGETS_TYPE_COLLECTION_BUTTON (tuba_widgets_collection_button_get_type ())
#define TUBA_WIDGETS_COLLECTION_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_WIDGETS_TYPE_COLLECTION_BUTTON, TubaWidgetsCollectionButton))
#define TUBA_WIDGETS_COLLECTION_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_WIDGETS_TYPE_COLLECTION_BUTTON, TubaWidgetsCollectionButtonClass))
#define TUBA_WIDGETS_IS_COLLECTION_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_WIDGETS_TYPE_COLLECTION_BUTTON))
#define TUBA_WIDGETS_IS_COLLECTION_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_WIDGETS_TYPE_COLLECTION_BUTTON))
#define TUBA_WIDGETS_COLLECTION_BUTTON_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_WIDGETS_TYPE_COLLECTION_BUTTON, TubaWidgetsCollectionButtonClass))

typedef struct _TubaWidgetsCollectionButton TubaWidgetsCollectionButton;
typedef struct _TubaWidgetsCollectionButtonClass TubaWidgetsCollectionButtonClass;

#define TUBA_WIDGETS_ATTACHMENT_TYPE_BOX (tuba_widgets_attachment_box_get_type ())
#define TUBA_WIDGETS_ATTACHMENT_BOX(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_WIDGETS_ATTACHMENT_TYPE_BOX, TubaWidgetsAttachmentBox))
#define TUBA_WIDGETS_ATTACHMENT_BOX_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_WIDGETS_ATTACHMENT_TYPE_BOX, TubaWidgetsAttachmentBoxClass))
#define TUBA_WIDGETS_ATTACHMENT_IS_BOX(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_WIDGETS_ATTACHMENT_TYPE_BOX))
#define TUBA_WIDGETS_ATTACHMENT_IS_BOX_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_WIDGETS_ATTACHMENT_TYPE_BOX))
#define TUBA_WIDGETS_ATTACHMENT_BOX_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_WIDGETS_ATTACHMENT_TYPE_BOX, TubaWidgetsAttachmentBoxClass))

typedef struct _TubaWidgetsAttachmentBox TubaWidgetsAttachmentBox;
typedef struct _TubaWidgetsAttachmentBoxClass TubaWidgetsAttachmentBoxClass;
enum  {
	TUBA_WIDGETS_STATUS_0_PROPERTY,
	TUBA_WIDGETS_STATUS_STATUS_PROPERTY,
	TUBA_WIDGETS_STATUS_KIND_INSTIGATOR_PROPERTY,
	TUBA_WIDGETS_STATUS_TRANSLATION_PROPERTY,
	TUBA_WIDGETS_STATUS_OTHER_DATA_PROPERTY,
	TUBA_WIDGETS_STATUS_ENABLE_THREAD_LINES_PROPERTY,
	TUBA_WIDGETS_STATUS_CAN_BE_OPENED_PROPERTY,
	TUBA_WIDGETS_STATUS_IS_QUOTE_PROPERTY,
	TUBA_WIDGETS_STATUS_KIND_PROPERTY,
	TUBA_WIDGETS_STATUS_CHANGE_BACKGROUND_ON_DIRECT_PROPERTY,
	TUBA_WIDGETS_STATUS_CONTEXT_MENU_PROPERTY,
	TUBA_WIDGETS_STATUS_SPOILER_TEXT_PROPERTY,
	TUBA_WIDGETS_STATUS_SPOILER_TEXT_REVEALED_PROPERTY,
	TUBA_WIDGETS_STATUS_DATE_PROPERTY,
	TUBA_WIDGETS_STATUS_FULL_DATE_PROPERTY,
	TUBA_WIDGETS_STATUS_TITLE_TEXT_PROPERTY,
	TUBA_WIDGETS_STATUS_SUBTITLE_TEXT_PROPERTY,
	TUBA_WIDGETS_STATUS_AVATAR_URL_PROPERTY,
	TUBA_WIDGETS_STATUS_NUM_PROPERTIES
};
static GParamSpec* tuba_widgets_status_properties[TUBA_WIDGETS_STATUS_NUM_PROPERTIES];
typedef void (*GSimpleActionActivateCallback) (GSimpleAction* action, GVariant* parameter, gpointer user_data);
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
#define _g_free0(var) (var = (g_free (var), NULL))

#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_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_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;

#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_TYPE_EMOJI_REACTION (tuba_api_emoji_reaction_get_type ())
#define TUBA_API_EMOJI_REACTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_API_TYPE_EMOJI_REACTION, TubaAPIEmojiReaction))
#define TUBA_API_EMOJI_REACTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_API_TYPE_EMOJI_REACTION, TubaAPIEmojiReactionClass))
#define TUBA_API_IS_EMOJI_REACTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_API_TYPE_EMOJI_REACTION))
#define TUBA_API_IS_EMOJI_REACTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_API_TYPE_EMOJI_REACTION))
#define TUBA_API_EMOJI_REACTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_API_TYPE_EMOJI_REACTION, TubaAPIEmojiReactionClass))

typedef struct _TubaAPIEmojiReaction TubaAPIEmojiReaction;
typedef struct _TubaAPIEmojiReactionClass TubaAPIEmojiReactionClass;
typedef struct _Block101Data Block101Data;

#define TUBA_API_TYPE_MENTION (tuba_api_mention_get_type ())
#define TUBA_API_MENTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_API_TYPE_MENTION, TubaAPIMention))
#define TUBA_API_MENTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_API_TYPE_MENTION, TubaAPIMentionClass))
#define TUBA_API_IS_MENTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_API_TYPE_MENTION))
#define TUBA_API_IS_MENTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_API_TYPE_MENTION))
#define TUBA_API_MENTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_API_TYPE_MENTION, TubaAPIMentionClass))

typedef struct _TubaAPIMention TubaAPIMention;
typedef struct _TubaAPIMentionClass TubaAPIMentionClass;

#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_INSTANCE_V2_TYPE_API_VERSIONS (tuba_api_instance_v2_api_versions_get_type ())
#define TUBA_API_INSTANCE_V2_API_VERSIONS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_API_INSTANCE_V2_TYPE_API_VERSIONS, TubaAPIInstanceV2APIVersions))
#define TUBA_API_INSTANCE_V2_API_VERSIONS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_API_INSTANCE_V2_TYPE_API_VERSIONS, TubaAPIInstanceV2APIVersionsClass))
#define TUBA_API_INSTANCE_V2_IS_API_VERSIONS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_API_INSTANCE_V2_TYPE_API_VERSIONS))
#define TUBA_API_INSTANCE_V2_IS_API_VERSIONS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_API_INSTANCE_V2_TYPE_API_VERSIONS))
#define TUBA_API_INSTANCE_V2_API_VERSIONS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_API_INSTANCE_V2_TYPE_API_VERSIONS, TubaAPIInstanceV2APIVersionsClass))

typedef struct _TubaAPIInstanceV2APIVersions TubaAPIInstanceV2APIVersions;
typedef struct _TubaAPIInstanceV2APIVersionsClass TubaAPIInstanceV2APIVersionsClass;

#define TUBA_API_STATUS_TYPE_QUOTE_APPROVAL (tuba_api_status_quote_approval_get_type ())
#define TUBA_API_STATUS_QUOTE_APPROVAL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_API_STATUS_TYPE_QUOTE_APPROVAL, TubaAPIStatusQuoteApproval))
#define TUBA_API_STATUS_QUOTE_APPROVAL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_API_STATUS_TYPE_QUOTE_APPROVAL, TubaAPIStatusQuoteApprovalClass))
#define TUBA_API_STATUS_IS_QUOTE_APPROVAL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_API_STATUS_TYPE_QUOTE_APPROVAL))
#define TUBA_API_STATUS_IS_QUOTE_APPROVAL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_API_STATUS_TYPE_QUOTE_APPROVAL))
#define TUBA_API_STATUS_QUOTE_APPROVAL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_API_STATUS_TYPE_QUOTE_APPROVAL, TubaAPIStatusQuoteApprovalClass))

typedef struct _TubaAPIStatusQuoteApproval TubaAPIStatusQuoteApproval;
typedef struct _TubaAPIStatusQuoteApprovalClass TubaAPIStatusQuoteApprovalClass;
typedef enum  {
	TUBA_API_STATUS_QUOTE_POLICY_PUBLIC,
	TUBA_API_STATUS_QUOTE_POLICY_FOLLOWERS,
	TUBA_API_STATUS_QUOTE_POLICY_NOBODY
} TubaAPIStatusQuotePolicy;

#define TUBA_API_STATUS_TYPE_QUOTE_POLICY (tuba_api_status_quote_policy_get_type ())
#define _g_variant_unref0(var) ((var == NULL) ? NULL : (var = (g_variant_unref (var), NULL)))

#define TUBA_API_TYPE_INSTANCE (tuba_api_instance_get_type ())
#define TUBA_API_INSTANCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_API_TYPE_INSTANCE, TubaAPIInstance))
#define TUBA_API_INSTANCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_API_TYPE_INSTANCE, TubaAPIInstanceClass))
#define TUBA_API_IS_INSTANCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_API_TYPE_INSTANCE))
#define TUBA_API_IS_INSTANCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_API_TYPE_INSTANCE))
#define TUBA_API_INSTANCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_API_TYPE_INSTANCE, TubaAPIInstanceClass))

typedef struct _TubaAPIInstance TubaAPIInstance;
typedef struct _TubaAPIInstanceClass TubaAPIInstanceClass;
typedef enum  {
	TUBA_INSTANCE_ACCOUNT_INSTANCE_FEATURES_NONE = 1 << 0,
	TUBA_INSTANCE_ACCOUNT_INSTANCE_FEATURES_QUOTE = 1 << 1,
	TUBA_INSTANCE_ACCOUNT_INSTANCE_FEATURES_EMOJI_REACTIONS = 1 << 2,
	TUBA_INSTANCE_ACCOUNT_INSTANCE_FEATURES_BUBBLE = 1 << 3,
	TUBA_INSTANCE_ACCOUNT_INSTANCE_FEATURES_GROUP_NOTIFICATIONS = 1 << 4,
	TUBA_INSTANCE_ACCOUNT_INSTANCE_FEATURES_FEATURE_TAGS = 1 << 5,
	TUBA_INSTANCE_ACCOUNT_INSTANCE_FEATURES_ENDORSE_USERS = 1 << 6,
	TUBA_INSTANCE_ACCOUNT_INSTANCE_FEATURES_MUTUALS = 1 << 7,
	TUBA_INSTANCE_ACCOUNT_INSTANCE_FEATURES_TRANSLATION = 1 << 8,
	TUBA_INSTANCE_ACCOUNT_INSTANCE_FEATURES_ICESHRIMP = 1 << 9,
	TUBA_INSTANCE_ACCOUNT_INSTANCE_FEATURES_GLITCH = 1 << 10,
	TUBA_INSTANCE_ACCOUNT_INSTANCE_FEATURES_LOCAL_ONLY = 1 << 11,
	TUBA_INSTANCE_ACCOUNT_INSTANCE_FEATURES_GOTOSOCIAL = 1 << 12
} TubaInstanceAccountInstanceFeatures;

#define TUBA_INSTANCE_ACCOUNT_TYPE_INSTANCE_FEATURES (tuba_instance_account_instance_features_get_type ())

#define TUBA_API_TYPE_QUOTE (tuba_api_quote_get_type ())
#define TUBA_API_QUOTE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_API_TYPE_QUOTE, TubaAPIQuote))
#define TUBA_API_QUOTE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_API_TYPE_QUOTE, TubaAPIQuoteClass))
#define TUBA_API_IS_QUOTE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_API_TYPE_QUOTE))
#define TUBA_API_IS_QUOTE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_API_TYPE_QUOTE))
#define TUBA_API_QUOTE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_API_TYPE_QUOTE, TubaAPIQuoteClass))

typedef struct _TubaAPIQuote TubaAPIQuote;
typedef struct _TubaAPIQuoteClass TubaAPIQuoteClass;

#define TUBA_APPLICATION_TYPE_QUESTION_TEXT (tuba_application_question_text_get_type ())
typedef struct _TubaApplicationQuestionText TubaApplicationQuestionText;

#define TUBA_APPLICATION_TYPE_QUESTION_BUTTONS (tuba_application_question_buttons_get_type ())
typedef struct _TubaApplicationQuestionButtons TubaApplicationQuestionButtons;

#define TUBA_APPLICATION_TYPE_QUESTION_BUTTON (tuba_application_question_button_get_type ())
typedef struct _TubaApplicationQuestionButton TubaApplicationQuestionButton;
typedef enum  {
	TUBA_APPLICATION_QUESTION_ANSWER_YES,
	TUBA_APPLICATION_QUESTION_ANSWER_NO,
	TUBA_APPLICATION_QUESTION_ANSWER_CLOSE
} TubaApplicationQuestionAnswer;

#define TUBA_APPLICATION_TYPE_QUESTION_ANSWER (tuba_application_question_answer_get_type ())
typedef struct _TubaEntityPrivate TubaEntityPrivate;

#define TUBA_API_TYPE_SEARCH_RESULT (tuba_api_search_result_get_type ())
#define TUBA_API_SEARCH_RESULT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_API_TYPE_SEARCH_RESULT, TubaAPISearchResult))
#define TUBA_API_IS_SEARCH_RESULT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_API_TYPE_SEARCH_RESULT))
#define TUBA_API_SEARCH_RESULT_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), TUBA_API_TYPE_SEARCH_RESULT, TubaAPISearchResultIface))

typedef struct _TubaAPISearchResult TubaAPISearchResult;
typedef struct _TubaAPISearchResultIface TubaAPISearchResultIface;
typedef struct _TubaAPIAccountPrivate TubaAPIAccountPrivate;

#define TUBA_TYPE_STREAMABLE (tuba_streamable_get_type ())
#define TUBA_STREAMABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_TYPE_STREAMABLE, TubaStreamable))
#define TUBA_IS_STREAMABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_TYPE_STREAMABLE))
#define TUBA_STREAMABLE_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), TUBA_TYPE_STREAMABLE, TubaStreamableIface))

typedef struct _TubaStreamable TubaStreamable;
typedef struct _TubaStreamableIface TubaStreamableIface;
typedef struct _TubaInstanceAccountPrivate TubaInstanceAccountPrivate;

#define TUBA_INSTANCE_ACCOUNT_TYPE_KIND (tuba_instance_account_kind_get_type ())
typedef struct _TubaInstanceAccountKind TubaInstanceAccountKind;

#define TUBA_TYPE_PLACE (tuba_place_get_type ())
#define TUBA_PLACE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_TYPE_PLACE, TubaPlace))
#define TUBA_PLACE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_TYPE_PLACE, TubaPlaceClass))
#define TUBA_IS_PLACE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_TYPE_PLACE))
#define TUBA_IS_PLACE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_TYPE_PLACE))
#define TUBA_PLACE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_TYPE_PLACE, TubaPlaceClass))

typedef struct _TubaPlace TubaPlace;
typedef struct _TubaPlaceClass TubaPlaceClass;

#define TUBA_API_TYPE_NOTIFICATION (tuba_api_notification_get_type ())
#define TUBA_API_NOTIFICATION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_API_TYPE_NOTIFICATION, TubaAPINotification))
#define TUBA_API_NOTIFICATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_API_TYPE_NOTIFICATION, TubaAPINotificationClass))
#define TUBA_API_IS_NOTIFICATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_API_TYPE_NOTIFICATION))
#define TUBA_API_IS_NOTIFICATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_API_TYPE_NOTIFICATION))
#define TUBA_API_NOTIFICATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_API_TYPE_NOTIFICATION, TubaAPINotificationClass))

typedef struct _TubaAPINotification TubaAPINotification;
typedef struct _TubaAPINotificationClass TubaAPINotificationClass;

#define TUBA_INSTANCE_ACCOUNT_TYPE_VISIBILITY (tuba_instance_account_visibility_get_type ())
#define TUBA_INSTANCE_ACCOUNT_VISIBILITY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_INSTANCE_ACCOUNT_TYPE_VISIBILITY, TubaInstanceAccountVisibility))
#define TUBA_INSTANCE_ACCOUNT_VISIBILITY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_INSTANCE_ACCOUNT_TYPE_VISIBILITY, TubaInstanceAccountVisibilityClass))
#define TUBA_INSTANCE_ACCOUNT_IS_VISIBILITY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_INSTANCE_ACCOUNT_TYPE_VISIBILITY))
#define TUBA_INSTANCE_ACCOUNT_IS_VISIBILITY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_INSTANCE_ACCOUNT_TYPE_VISIBILITY))
#define TUBA_INSTANCE_ACCOUNT_VISIBILITY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_INSTANCE_ACCOUNT_TYPE_VISIBILITY, TubaInstanceAccountVisibilityClass))

typedef struct _TubaInstanceAccountVisibility TubaInstanceAccountVisibility;
typedef struct _TubaInstanceAccountVisibilityClass TubaInstanceAccountVisibilityClass;

#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;

#define TUBA_VIEWS_TYPE_BROWSER (tuba_views_browser_get_type ())
#define TUBA_VIEWS_BROWSER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_VIEWS_TYPE_BROWSER, TubaViewsBrowser))
#define TUBA_VIEWS_BROWSER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_VIEWS_TYPE_BROWSER, TubaViewsBrowserClass))
#define TUBA_VIEWS_IS_BROWSER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_VIEWS_TYPE_BROWSER))
#define TUBA_VIEWS_IS_BROWSER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_VIEWS_TYPE_BROWSER))
#define TUBA_VIEWS_BROWSER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_VIEWS_TYPE_BROWSER, TubaViewsBrowserClass))

typedef struct _TubaViewsBrowser TubaViewsBrowser;
typedef struct _TubaViewsBrowserClass TubaViewsBrowserClass;

#define TUBA_API_TYPE_COLLECTION (tuba_api_collection_get_type ())
#define TUBA_API_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_API_TYPE_COLLECTION, TubaAPICollection))
#define TUBA_API_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_API_TYPE_COLLECTION, TubaAPICollectionClass))
#define TUBA_API_IS_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_API_TYPE_COLLECTION))
#define TUBA_API_IS_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_API_TYPE_COLLECTION))
#define TUBA_API_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_API_TYPE_COLLECTION, TubaAPICollectionClass))

typedef struct _TubaAPICollection TubaAPICollection;
typedef struct _TubaAPICollectionClass TubaAPICollectionClass;

#define TUBA_DIALOGS_TYPE_REPORT (tuba_dialogs_report_get_type ())
#define TUBA_DIALOGS_REPORT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_DIALOGS_TYPE_REPORT, TubaDialogsReport))
#define TUBA_DIALOGS_REPORT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_DIALOGS_TYPE_REPORT, TubaDialogsReportClass))
#define TUBA_DIALOGS_IS_REPORT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_DIALOGS_TYPE_REPORT))
#define TUBA_DIALOGS_IS_REPORT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_DIALOGS_TYPE_REPORT))
#define TUBA_DIALOGS_REPORT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_DIALOGS_TYPE_REPORT, TubaDialogsReportClass))

typedef struct _TubaDialogsReport TubaDialogsReport;
typedef struct _TubaDialogsReportClass TubaDialogsReportClass;

#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_TIMELINE (tuba_views_timeline_get_type ())
#define TUBA_VIEWS_TIMELINE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_VIEWS_TYPE_TIMELINE, TubaViewsTimeline))
#define TUBA_VIEWS_TIMELINE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_VIEWS_TYPE_TIMELINE, TubaViewsTimelineClass))
#define TUBA_VIEWS_IS_TIMELINE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_VIEWS_TYPE_TIMELINE))
#define TUBA_VIEWS_IS_TIMELINE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_VIEWS_TYPE_TIMELINE))
#define TUBA_VIEWS_TIMELINE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_VIEWS_TYPE_TIMELINE, TubaViewsTimelineClass))

typedef struct _TubaViewsTimeline TubaViewsTimeline;
typedef struct _TubaViewsTimelineClass TubaViewsTimelineClass;

#define TUBA_VIEWS_TYPE_EDIT_HISTORY (tuba_views_edit_history_get_type ())
#define TUBA_VIEWS_EDIT_HISTORY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_VIEWS_TYPE_EDIT_HISTORY, TubaViewsEditHistory))
#define TUBA_VIEWS_EDIT_HISTORY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_VIEWS_TYPE_EDIT_HISTORY, TubaViewsEditHistoryClass))
#define TUBA_VIEWS_IS_EDIT_HISTORY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_VIEWS_TYPE_EDIT_HISTORY))
#define TUBA_VIEWS_IS_EDIT_HISTORY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_VIEWS_TYPE_EDIT_HISTORY))
#define TUBA_VIEWS_EDIT_HISTORY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_VIEWS_TYPE_EDIT_HISTORY, TubaViewsEditHistoryClass))

typedef struct _TubaViewsEditHistory TubaViewsEditHistory;
typedef struct _TubaViewsEditHistoryClass TubaViewsEditHistoryClass;

#define TUBA_VIEWS_TYPE_TABBED_BASE (tuba_views_tabbed_base_get_type ())
#define TUBA_VIEWS_TABBED_BASE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_VIEWS_TYPE_TABBED_BASE, TubaViewsTabbedBase))
#define TUBA_VIEWS_TABBED_BASE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_VIEWS_TYPE_TABBED_BASE, TubaViewsTabbedBaseClass))
#define TUBA_VIEWS_IS_TABBED_BASE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_VIEWS_TYPE_TABBED_BASE))
#define TUBA_VIEWS_IS_TABBED_BASE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_VIEWS_TYPE_TABBED_BASE))
#define TUBA_VIEWS_TABBED_BASE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_VIEWS_TYPE_TABBED_BASE, TubaViewsTabbedBaseClass))

typedef struct _TubaViewsTabbedBase TubaViewsTabbedBase;
typedef struct _TubaViewsTabbedBaseClass TubaViewsTabbedBaseClass;

#define TUBA_VIEWS_TYPE_STATUS_STATS (tuba_views_status_stats_get_type ())
#define TUBA_VIEWS_STATUS_STATS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_VIEWS_TYPE_STATUS_STATS, TubaViewsStatusStats))
#define TUBA_VIEWS_STATUS_STATS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_VIEWS_TYPE_STATUS_STATS, TubaViewsStatusStatsClass))
#define TUBA_VIEWS_IS_STATUS_STATS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_VIEWS_TYPE_STATUS_STATS))
#define TUBA_VIEWS_IS_STATUS_STATS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_VIEWS_TYPE_STATUS_STATS))
#define TUBA_VIEWS_STATUS_STATS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_VIEWS_TYPE_STATUS_STATS, TubaViewsStatusStatsClass))

typedef struct _TubaViewsStatusStats TubaViewsStatusStats;
typedef struct _TubaViewsStatusStatsClass TubaViewsStatusStatsClass;

#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_TYPE_NETWORK (tuba_network_get_type ())
#define TUBA_NETWORK(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_TYPE_NETWORK, TubaNetwork))
#define TUBA_NETWORK_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_TYPE_NETWORK, TubaNetworkClass))
#define TUBA_IS_NETWORK(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_TYPE_NETWORK))
#define TUBA_IS_NETWORK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_TYPE_NETWORK))
#define TUBA_NETWORK_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_TYPE_NETWORK, TubaNetworkClass))

typedef struct _TubaNetwork TubaNetwork;
typedef struct _TubaNetworkClass TubaNetworkClass;
#define __vala_JsonNode_free0(var) ((var == NULL) ? NULL : (var = (_vala_JsonNode_free (var), NULL)))
#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))
typedef struct _TubaWidgetsStatusChangeQuotePolicyRealData TubaWidgetsStatusChangeQuotePolicyRealData;
typedef struct _TubaWidgetsStatusTogglePinnedRealData TubaWidgetsStatusTogglePinnedRealData;

#define TUBA_API_TYPE_STATUS_SOURCE (tuba_api_status_source_get_type ())
#define TUBA_API_STATUS_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_API_TYPE_STATUS_SOURCE, TubaAPIStatusSource))
#define TUBA_API_STATUS_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_API_TYPE_STATUS_SOURCE, TubaAPIStatusSourceClass))
#define TUBA_API_IS_STATUS_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_API_TYPE_STATUS_SOURCE))
#define TUBA_API_IS_STATUS_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_API_TYPE_STATUS_SOURCE))
#define TUBA_API_STATUS_SOURCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_API_TYPE_STATUS_SOURCE, TubaAPIStatusSourceClass))

typedef struct _TubaAPIStatusSource TubaAPIStatusSource;
typedef struct _TubaAPIStatusSourceClass TubaAPIStatusSourceClass;

#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 _TubaWidgetsStatusEditStatusRealData TubaWidgetsStatusEditStatusRealData;
typedef struct _TubaWidgetsStatusRevokeQuoteRealData TubaWidgetsStatusRevokeQuoteRealData;
typedef struct _Block102Data Block102Data;
typedef struct _TubaWidgetsStatusDeleteStatusRealData TubaWidgetsStatusDeleteStatusRealData;
typedef struct _TubaWidgetsStatusToggleMuteConversationRealData TubaWidgetsStatusToggleMuteConversationRealData;

#define TUBA_API_PLEROMA_TYPE_INSTANCE (tuba_api_pleroma_instance_get_type ())
#define TUBA_API_PLEROMA_INSTANCE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_API_PLEROMA_TYPE_INSTANCE, TubaAPIPleromaInstance))
#define TUBA_API_PLEROMA_INSTANCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_API_PLEROMA_TYPE_INSTANCE, TubaAPIPleromaInstanceClass))
#define TUBA_API_PLEROMA_IS_INSTANCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_API_PLEROMA_TYPE_INSTANCE))
#define TUBA_API_PLEROMA_IS_INSTANCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_API_PLEROMA_TYPE_INSTANCE))
#define TUBA_API_PLEROMA_INSTANCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_API_PLEROMA_TYPE_INSTANCE, TubaAPIPleromaInstanceClass))

typedef struct _TubaAPIPleromaInstance TubaAPIPleromaInstance;
typedef struct _TubaAPIPleromaInstanceClass TubaAPIPleromaInstanceClass;

#define TUBA_API_TYPE_AKKOMA_TRANSLATION (tuba_api_akkoma_translation_get_type ())
#define TUBA_API_AKKOMA_TRANSLATION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_API_TYPE_AKKOMA_TRANSLATION, TubaAPIAkkomaTranslation))
#define TUBA_API_AKKOMA_TRANSLATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_API_TYPE_AKKOMA_TRANSLATION, TubaAPIAkkomaTranslationClass))
#define TUBA_API_IS_AKKOMA_TRANSLATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_API_TYPE_AKKOMA_TRANSLATION))
#define TUBA_API_IS_AKKOMA_TRANSLATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_API_TYPE_AKKOMA_TRANSLATION))
#define TUBA_API_AKKOMA_TRANSLATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_API_TYPE_AKKOMA_TRANSLATION, TubaAPIAkkomaTranslationClass))

typedef struct _TubaAPIAkkomaTranslation TubaAPIAkkomaTranslation;
typedef struct _TubaAPIAkkomaTranslationClass TubaAPIAkkomaTranslationClass;
typedef struct _TubaWidgetsStatusTranslateRealData TubaWidgetsStatusTranslateRealData;
#define _g_date_time_unref0(var) ((var == NULL) ? NULL : (var = (g_date_time_unref (var), NULL)))
#define _g_time_zone_unref0(var) ((var == NULL) ? NULL : (var = (g_time_zone_unref (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 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_API_TYPE_STATUS_APPLICATION (tuba_api_status_application_get_type ())
#define TUBA_API_STATUS_APPLICATION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_API_TYPE_STATUS_APPLICATION, TubaAPIStatusApplication))
#define TUBA_API_STATUS_APPLICATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_API_TYPE_STATUS_APPLICATION, TubaAPIStatusApplicationClass))
#define TUBA_API_IS_STATUS_APPLICATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_API_TYPE_STATUS_APPLICATION))
#define TUBA_API_IS_STATUS_APPLICATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_API_TYPE_STATUS_APPLICATION))
#define TUBA_API_STATUS_APPLICATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_API_TYPE_STATUS_APPLICATION, TubaAPIStatusApplicationClass))

typedef struct _TubaAPIStatusApplication TubaAPIStatusApplication;
typedef struct _TubaAPIStatusApplicationClass TubaAPIStatusApplicationClass;

#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_REACTIONS_ROW (tuba_widgets_reactions_row_get_type ())
#define TUBA_WIDGETS_REACTIONS_ROW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_WIDGETS_TYPE_REACTIONS_ROW, TubaWidgetsReactionsRow))
#define TUBA_WIDGETS_REACTIONS_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_WIDGETS_TYPE_REACTIONS_ROW, TubaWidgetsReactionsRowClass))
#define TUBA_WIDGETS_IS_REACTIONS_ROW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_WIDGETS_TYPE_REACTIONS_ROW))
#define TUBA_WIDGETS_IS_REACTIONS_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_WIDGETS_TYPE_REACTIONS_ROW))
#define TUBA_WIDGETS_REACTIONS_ROW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_WIDGETS_TYPE_REACTIONS_ROW, TubaWidgetsReactionsRowClass))

typedef struct _TubaWidgetsReactionsRow TubaWidgetsReactionsRow;
typedef struct _TubaWidgetsReactionsRowClass TubaWidgetsReactionsRowClass;

#define TUBA_API_TRANSLATION_TYPE_ATTACHMENT (tuba_api_translation_attachment_get_type ())
#define TUBA_API_TRANSLATION_ATTACHMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_API_TRANSLATION_TYPE_ATTACHMENT, TubaAPITranslationAttachment))
#define TUBA_API_TRANSLATION_ATTACHMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_API_TRANSLATION_TYPE_ATTACHMENT, TubaAPITranslationAttachmentClass))
#define TUBA_API_TRANSLATION_IS_ATTACHMENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_API_TRANSLATION_TYPE_ATTACHMENT))
#define TUBA_API_TRANSLATION_IS_ATTACHMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_API_TRANSLATION_TYPE_ATTACHMENT))
#define TUBA_API_TRANSLATION_ATTACHMENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_API_TRANSLATION_TYPE_ATTACHMENT, TubaAPITranslationAttachmentClass))

typedef struct _TubaAPITranslationAttachment TubaAPITranslationAttachment;
typedef struct _TubaAPITranslationAttachmentClass TubaAPITranslationAttachmentClass;
typedef struct _Block103Data Block103Data;

#define TUBA_API_TYPE_PREVIEW_CARD (tuba_api_preview_card_get_type ())
#define TUBA_API_PREVIEW_CARD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TUBA_API_TYPE_PREVIEW_CARD, TubaAPIPreviewCard))
#define TUBA_API_PREVIEW_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TUBA_API_TYPE_PREVIEW_CARD, TubaAPIPreviewCardClass))
#define TUBA_API_IS_PREVIEW_CARD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TUBA_API_TYPE_PREVIEW_CARD))
#define TUBA_API_IS_PREVIEW_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TUBA_API_TYPE_PREVIEW_CARD))
#define TUBA_API_PREVIEW_CARD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TUBA_API_TYPE_PREVIEW_CARD, TubaAPIPreviewCardClass))

typedef struct _TubaAPIPreviewCard TubaAPIPreviewCard;
typedef struct _TubaAPIPreviewCardClass TubaAPIPreviewCardClass;
typedef struct _TubaWidgetsPreviewCardPrivate TubaWidgetsPreviewCardPrivate;

#define TUBA_UTILS_TAG_EXTRACTOR_TYPE_TAG (tuba_utils_tag_extractor_tag_get_type ())
typedef struct _TubaUtilsTagExtractorTag TubaUtilsTagExtractorTag;
typedef enum  {
	TUBA_VIEWS_THREAD_THREAD_ROLE_NONE,
	TUBA_VIEWS_THREAD_THREAD_ROLE_START,
	TUBA_VIEWS_THREAD_THREAD_ROLE_MIDDLE,
	TUBA_VIEWS_THREAD_THREAD_ROLE_END
} TubaViewsThreadThreadRole;

#define TUBA_VIEWS_THREAD_TYPE_THREAD_ROLE (tuba_views_thread_thread_role_get_type ())
#define _g_regex_unref0(var) ((var == NULL) ? NULL : (var = (g_regex_unref (var), NULL)))
enum  {
	TUBA_WIDGETS_STATUS_PIN_CHANGED_SIGNAL,
	TUBA_WIDGETS_STATUS_OPEN_SIGNAL,
	TUBA_WIDGETS_STATUS_NUM_SIGNALS
};
static guint tuba_widgets_status_signals[TUBA_WIDGETS_STATUS_NUM_SIGNALS] = {0};

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);
};

struct _TubaWidgetsStatusPrivate {
	TubaAPIStatus* _bound_status;
	TubaAPIAccount* _kind_instigator;
	GtkButton* _quoted_status_btn;
	GtkLabel* _quote_warning;
	TubaAPITranslation* _translation;
	AdwBin* _emoji_reactions;
	gchar* _other_data;
	gboolean _enable_thread_lines;
	gboolean _can_be_opened;
	gboolean _is_quote;
	gchar* _kind;
	gboolean _change_background_on_direct;
	TubaWidgetsActionsRow* _actions;
	GtkPopoverMenu* _context_menu;
	GSimpleActionGroup* action_group;
	GSimpleAction* edit_history_simple_action;
	GSimpleAction* stats_simple_action;
	GSimpleAction* toggle_pinned_simple_action;
	GSimpleAction* translate_simple_action;
	GSimpleAction* show_original_simple_action;
	GSimpleAction* mute_conversation_action;
	GSimpleAction* unmute_conversation_action;
	GSimpleAction* change_quote_policy_action;
	GMenuItem* pin_menu_item;
	gchar* _spoiler_text_revealed;
	gchar* forced_kind_instigator_name;
	TubaWidgetsAvatar* actor_avatar;
	gulong header_button_activate;
	GBinding* actor_avatar_binding;
	gchar* header_kind_url;
	TubaWidgetsHashtagBar* hashtag_bar;
	TubaWidgetsCollectionButton* collection_card;
	TubaWidgetsAttachmentBox* attachments;
	GtkLabel* translation_label;
	GtkImage* local_only_indicator;
	gulong* formal_handler_ids;
	gint formal_handler_ids_length1;
	gint _formal_handler_ids_size_;
	gulong* this_handler_ids;
	gint this_handler_ids_length1;
	gint _this_handler_ids_size_;
	GBinding** bindings;
	gint bindings_length1;
	gint _bindings_size_;
	gboolean expanded;
};

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

struct _Block101Data {
	int _ref_count_;
	TubaWidgetsStatus* self;
	TubaAPIStatus* status;
};

struct _TubaApplicationQuestionText {
	gchar* text;
	gboolean use_markup;
};

struct _TubaApplicationQuestionButton {
	gchar* label;
	AdwResponseAppearance appearance;
};

struct _TubaApplicationQuestionButtons {
	TubaApplicationQuestionButton yes;
	TubaApplicationQuestionButton no;
};

struct _TubaEntity {
	GObject parent_instance;
	TubaEntityPrivate * priv;
};

struct _TubaEntityClass {
	GObjectClass parent_class;
	gboolean (*is_local) (TubaEntity* self, TubaInstanceAccount* account);
	GType (*deserialize_array_type) (TubaEntity* self, const gchar* prop);
};

struct _TubaAPISearchResultIface {
	GTypeInterface parent_iface;
	GRegex* (*get_tuba_search_query_regex) (TubaAPISearchResult* self);
	void (*set_tuba_search_query_regex) (TubaAPISearchResult* self, GRegex* value);
};

struct _TubaAPIAccount {
	TubaEntity parent_instance;
	TubaAPIAccountPrivate * priv;
};

struct _TubaAPIAccountClass {
	TubaEntityClass parent_class;
};

struct _TubaStreamableIface {
	GTypeInterface parent_iface;
	gchar* (*get_stream_url) (TubaStreamable* self);
	void (*on_streaming_policy_changed) (TubaStreamable* self);
	const gchar* (*get_t_connection_url) (TubaStreamable* self);
	void (*set_t_connection_url) (TubaStreamable* self, const gchar* value);
	gboolean (*get_subscribed) (TubaStreamable* self);
	void (*set_subscribed) (TubaStreamable* self, gboolean value);
};

struct _TubaInstanceAccountKind {
	gchar* icon;
	gchar* description;
	gchar* url;
};

struct _TubaInstanceAccount {
	TubaAPIAccount parent_instance;
	TubaInstanceAccountPrivate * priv;
	GListStore* known_places;
	GListStore* list_places;
	GListStore* tags_places;
	GeeHashMap* type_overrides;
	GeeHashMap* visibility;
	GListStore* visibility_list;
	GListStore* supported_mime_types;
};

struct _TubaInstanceAccountClass {
	TubaAPIAccountClass parent_class;
	void (*describe_kind) (TubaInstanceAccount* self, const gchar* kind, TubaInstanceAccountKind* _result_, const gchar* actor_name, const gchar* callback_url, const gchar* other_data);
	void (*register_known_places) (TubaInstanceAccount* self, GListStore* places);
	void (*register_extra) (TubaInstanceAccount* self, GListStore* places, TubaPlace** extra, gint extra_length1);
	void (*bump_sidebar_items) (TubaInstanceAccount* self);
	void (*check_notifications) (TubaInstanceAccount* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*check_notifications_finish) (TubaInstanceAccount* self, GAsyncResult* _res_);
	gchar* (*get_stream_url) (TubaInstanceAccount* self);
	void (*on_notification_received) (TubaInstanceAccount* self, TubaAPINotification* entity);
	void (*open_status_url) (TubaInstanceAccount* self, const gchar* url);
	void (*answer_follow_request) (TubaInstanceAccount* self, const gchar* issuer_id, const gchar* fr_id, gboolean accept);
	void (*follow_back) (TubaInstanceAccount* self, const gchar* issuer_id, const gchar* acc_id);
	void (*reply_to_status_uri) (TubaInstanceAccount* self, const gchar* issuer_id, const gchar* uri);
	void (*remove_from_followers) (TubaInstanceAccount* self, const gchar* issuer_id, const gchar* acc_id);
	void (*activated) (TubaInstanceAccount* self);
	void (*deactivated) (TubaInstanceAccount* self);
	void (*added) (TubaInstanceAccount* self);
	void (*removed) (TubaInstanceAccount* self);
};

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 _TubaWidgetsStatusChangeQuotePolicyRealData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	TubaWidgetsStatus* self;
	gchar* new_policy;
	gchar* old_policy;
	TubaRequestV2* req;
	TubaAPIStatus* _tmp0_;
	TubaAPIStatus* _tmp1_;
	TubaAPIStatus* _tmp2_;
	TubaAPIStatus* _tmp3_;
	const gchar* _tmp4_;
	const gchar* _tmp5_;
	const gchar* _tmp6_;
	gchar* _tmp7_;
	gchar* _tmp8_;
	TubaAccountStore* _tmp9_;
	TubaInstanceAccount* _tmp10_;
	TubaInstanceAccount* _tmp11_;
	TubaInstanceAccount* _tmp12_;
	TubaRequestV2* _tmp13_;
	TubaRequestV2* _tmp14_;
	TubaRequestV2* _tmp15_;
	GInputStream* in_stream;
	TubaRequestV2* _tmp16_;
	GInputStream* _tmp17_;
	JsonParser* parser;
	GInputStream* _tmp18_;
	JsonParser* _tmp19_;
	JsonNode* node;
	TubaNetwork* _tmp20_;
	JsonParser* _tmp21_;
	JsonNode* _tmp22_;
	TubaAPIStatus* _tmp23_;
	JsonNode* _tmp24_;
	TubaAPIStatus* _tmp25_;
	GError* e;
	GSimpleAction* _tmp26_;
	GVariant* _tmp27_;
	TubaAPIStatus* _tmp28_;
	TubaAPIStatus* _tmp29_;
	TubaAPIStatus* _tmp30_;
	TubaAPIStatus* _tmp31_;
	const gchar* _tmp32_;
	const gchar* _tmp33_;
	const gchar* _tmp34_;
	GError* _tmp35_;
	gchar* _tmp36_;
	gchar* _tmp37_;
	GError* _tmp38_;
	const gchar* _tmp39_;
	const gchar* _tmp40_;
	gchar* _tmp41_;
	gchar* _tmp42_;
	TubaApplication* _tmp43_;
	GError* _tmp44_;
	const gchar* _tmp45_;
	gchar* _tmp46_;
	gchar* _tmp47_;
	GError* _inner_error0_;
};

struct _TubaWidgetsStatusTogglePinnedRealData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	TubaWidgetsStatus* self;
	const gchar* _tmp0_;
	TubaAPIStatus* _tmp1_;
	TubaAPIStatus* _tmp2_;
	TubaAPIStatus* _tmp3_;
	TubaAPIStatus* _tmp4_;
	gboolean _tmp5_;
	gboolean _tmp6_;
	gchar* p_action;
	gchar* _tmp7_;
	TubaRequestV2* req;
	TubaAPIStatus* _tmp8_;
	TubaAPIStatus* _tmp9_;
	TubaAPIStatus* _tmp10_;
	TubaAPIStatus* _tmp11_;
	const gchar* _tmp12_;
	const gchar* _tmp13_;
	const gchar* _tmp14_;
	const gchar* _tmp15_;
	gchar* _tmp16_;
	gchar* _tmp17_;
	TubaAccountStore* _tmp18_;
	TubaInstanceAccount* _tmp19_;
	TubaInstanceAccount* _tmp20_;
	TubaInstanceAccount* _tmp21_;
	TubaRequestV2* _tmp22_;
	TubaRequestV2* _tmp23_;
	GInputStream* _tmp24_;
	GInputStream* _tmp25_;
	TubaAPIStatus* _tmp26_;
	TubaAPIStatus* _tmp27_;
	TubaAPIStatus* _tmp28_;
	TubaAPIStatus* _tmp29_;
	GError* e;
	GError* _tmp30_;
	gchar* _tmp31_;
	gchar* _tmp32_;
	GError* _tmp33_;
	const gchar* _tmp34_;
	const gchar* _tmp35_;
	gchar* _tmp36_;
	gchar* _tmp37_;
	TubaApplication* _tmp38_;
	GError* _tmp39_;
	const gchar* _tmp40_;
	gchar* _tmp41_;
	gchar* _tmp42_;
	GError* _inner_error0_;
};

struct _TubaWidgetsStatusEditStatusRealData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	TubaWidgetsStatus* self;
	gboolean redraft;
	TubaRequestV2* req;
	TubaAPIStatus* _tmp0_;
	TubaAPIStatus* _tmp1_;
	TubaAPIStatus* _tmp2_;
	TubaAPIStatus* _tmp3_;
	TubaRequestV2* _tmp4_;
	TubaAPIStatus* _tmp5_;
	TubaAPIStatus* _tmp6_;
	TubaAPIStatus* _tmp7_;
	TubaAPIStatus* _tmp8_;
	const gchar* _tmp9_;
	const gchar* _tmp10_;
	const gchar* _tmp11_;
	gchar* _tmp12_;
	gchar* _tmp13_;
	TubaRequestV2* _tmp14_;
	TubaRequestV2* _tmp15_;
	TubaAccountStore* _tmp16_;
	TubaInstanceAccount* _tmp17_;
	TubaInstanceAccount* _tmp18_;
	GInputStream* in_stream;
	TubaRequestV2* _tmp19_;
	GInputStream* _tmp20_;
	JsonParser* parser;
	GInputStream* _tmp21_;
	JsonParser* _tmp22_;
	JsonNode* node;
	TubaNetwork* _tmp23_;
	JsonParser* _tmp24_;
	JsonNode* _tmp25_;
	TubaAPIStatusSource* source;
	JsonNode* _tmp26_;
	TubaAPIStatusSource* _tmp27_;
	TubaAPIStatus* _tmp28_;
	TubaAPIStatus* _tmp29_;
	TubaAPIStatus* _tmp30_;
	TubaAPIStatus* _tmp31_;
	TubaAPIStatusSource* _tmp32_;
	TubaDialogsComposerDialog* _tmp33_;
	TubaDialogsComposerDialog* _tmp34_;
	TubaAPIStatus* _tmp35_;
	TubaAPIStatus* _tmp36_;
	TubaAPIStatus* _tmp37_;
	TubaAPIStatus* _tmp38_;
	TubaAPIStatusSource* _tmp39_;
	TubaDialogsComposerDialog* _tmp40_;
	TubaDialogsComposerDialog* _tmp41_;
	GError* e;
	GError* _tmp42_;
	gchar* _tmp43_;
	gchar* _tmp44_;
	GError* _tmp45_;
	const gchar* _tmp46_;
	const gchar* _tmp47_;
	gchar* _tmp48_;
	gchar* _tmp49_;
	TubaApplication* _tmp50_;
	GError* _tmp51_;
	const gchar* _tmp52_;
	TubaAPIStatus* _tmp53_;
	TubaAPIStatus* _tmp54_;
	TubaAPIStatus* _tmp55_;
	TubaAPIStatus* _tmp56_;
	TubaDialogsComposerDialog* _tmp57_;
	TubaDialogsComposerDialog* _tmp58_;
	GError* _inner_error0_;
};

struct _TubaWidgetsStatusRevokeQuoteRealData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	TubaWidgetsStatus* self;
	TubaApplicationQuestionAnswer res;
	TubaApplication* _tmp0_;
	TubaApplicationQuestionText _tmp1_;
	TubaApplication* _tmp2_;
	TubaDialogsMainWindow* _tmp3_;
	TubaDialogsMainWindow* _tmp4_;
	TubaApplicationQuestionButtons _tmp5_;
	TubaRequestV2* req;
	TubaAPIStatus* _tmp6_;
	TubaAPIStatus* _tmp7_;
	TubaAPIStatus* _tmp8_;
	TubaAPIStatus* _tmp9_;
	TubaAPIQuote* _tmp10_;
	TubaAPIQuote* _tmp11_;
	const gchar* _tmp12_;
	const gchar* _tmp13_;
	const gchar* _tmp14_;
	TubaAPIStatus* _tmp15_;
	TubaAPIStatus* _tmp16_;
	TubaAPIStatus* _tmp17_;
	TubaAPIStatus* _tmp18_;
	const gchar* _tmp19_;
	const gchar* _tmp20_;
	const gchar* _tmp21_;
	gchar* _tmp22_;
	gchar* _tmp23_;
	TubaAccountStore* _tmp24_;
	TubaInstanceAccount* _tmp25_;
	TubaInstanceAccount* _tmp26_;
	TubaInstanceAccount* _tmp27_;
	TubaRequestV2* _tmp28_;
	TubaRequestV2* _tmp29_;
	GInputStream* in_stream;
	TubaRequestV2* _tmp30_;
	GInputStream* _tmp31_;
	JsonParser* parser;
	GInputStream* _tmp32_;
	JsonParser* _tmp33_;
	JsonNode* node;
	TubaNetwork* _tmp34_;
	JsonParser* _tmp35_;
	JsonNode* _tmp36_;
	TubaAPIStatus* _tmp37_;
	JsonNode* _tmp38_;
	TubaAPIStatus* _tmp39_;
	GError* e;
	GError* _tmp40_;
	gchar* _tmp41_;
	gchar* _tmp42_;
	GError* _tmp43_;
	const gchar* _tmp44_;
	const gchar* _tmp45_;
	gchar* _tmp46_;
	gchar* _tmp47_;
	TubaApplication* _tmp48_;
	GError* _tmp49_;
	const gchar* _tmp50_;
	gchar* _tmp51_;
	gchar* _tmp52_;
	GError* _inner_error0_;
};

struct _Block102Data {
	int _ref_count_;
	TubaWidgetsStatus* self;
	AdwAlertDialog* dlg;
};

struct _TubaWidgetsStatusDeleteStatusRealData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	TubaWidgetsStatus* self;
	gchar* s_id;
	TubaAPIStatus* _tmp0_;
	TubaAPIStatus* _tmp1_;
	TubaAPIStatus* _tmp2_;
	TubaAPIStatus* _tmp3_;
	const gchar* _tmp4_;
	const gchar* _tmp5_;
	gchar* _tmp6_;
	TubaAPIStatus* _tmp7_;
	TubaAPIStatus* _tmp8_;
	TubaAPIStatus* _tmp9_;
	TubaAPIStatus* _tmp10_;
	TubaRequestV2* _tmp11_;
	TubaRequestV2* _tmp12_;
	GInputStream* _tmp13_;
	GInputStream* _tmp14_;
	TubaApplication* _tmp15_;
	GError* e;
	GError* _tmp16_;
	gchar* _tmp17_;
	gchar* _tmp18_;
	GError* _tmp19_;
	const gchar* _tmp20_;
	const gchar* _tmp21_;
	gchar* _tmp22_;
	gchar* _tmp23_;
	TubaApplication* _tmp24_;
	GError* _tmp25_;
	const gchar* _tmp26_;
	gchar* _tmp27_;
	gchar* _tmp28_;
	GError* _inner_error0_;
};

struct _TubaWidgetsStatusToggleMuteConversationRealData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	TubaWidgetsStatus* self;
	const gchar* _tmp0_;
	TubaAPIStatus* _tmp1_;
	TubaAPIStatus* _tmp2_;
	TubaAPIStatus* _tmp3_;
	TubaAPIStatus* _tmp4_;
	gboolean _tmp5_;
	gboolean _tmp6_;
	gchar* api_action;
	gchar* _tmp7_;
	TubaRequestV2* req;
	TubaAPIStatus* _tmp8_;
	TubaAPIStatus* _tmp9_;
	TubaAPIStatus* _tmp10_;
	TubaAPIStatus* _tmp11_;
	const gchar* _tmp12_;
	const gchar* _tmp13_;
	const gchar* _tmp14_;
	const gchar* _tmp15_;
	gchar* _tmp16_;
	gchar* _tmp17_;
	TubaAccountStore* _tmp18_;
	TubaInstanceAccount* _tmp19_;
	TubaInstanceAccount* _tmp20_;
	TubaInstanceAccount* _tmp21_;
	TubaRequestV2* _tmp22_;
	TubaRequestV2* _tmp23_;
	GInputStream* _tmp24_;
	GInputStream* _tmp25_;
	TubaAPIStatus* _tmp26_;
	TubaAPIStatus* _tmp27_;
	TubaAPIStatus* _tmp28_;
	TubaAPIStatus* _tmp29_;
	TubaAPIStatus* _tmp30_;
	TubaAPIStatus* _tmp31_;
	TubaAPIStatus* _tmp32_;
	TubaAPIStatus* _tmp33_;
	gboolean _tmp34_;
	gboolean _tmp35_;
	GError* e;
	const gchar* _tmp36_;
	TubaAPIStatus* _tmp37_;
	TubaAPIStatus* _tmp38_;
	TubaAPIStatus* _tmp39_;
	TubaAPIStatus* _tmp40_;
	const gchar* _tmp41_;
	const gchar* _tmp42_;
	const gchar* _tmp43_;
	GError* _tmp44_;
	gchar* _tmp45_;
	gchar* _tmp46_;
	GError* _tmp47_;
	const gchar* _tmp48_;
	const gchar* _tmp49_;
	gchar* _tmp50_;
	gchar* _tmp51_;
	gchar* _tmp52_;
	GError* _tmp53_;
	const gchar* _tmp54_;
	gchar* _tmp55_;
	GError* _tmp56_;
	const gchar* _tmp57_;
	gchar* _tmp58_;
	TubaApplication* _tmp59_;
	GError* _inner_error0_;
};

struct _TubaWidgetsStatusTranslateRealData {
	int _state_;
	GObject* _source_object_;
	GAsyncResult* _res_;
	GTask* _async_result;
	TubaWidgetsStatus* self;
	TubaAPITranslation* _tmp0_;
	GSimpleAction* _tmp1_;
	GSimpleAction* _tmp2_;
	TubaAccountStore* _tmp3_;
	TubaInstanceAccount* _tmp4_;
	TubaInstanceAccount* _tmp5_;
	TubaAPIInstance* _tmp6_;
	TubaAPIInstance* _tmp7_;
	TubaAPIPleromaInstance* _tmp8_;
	TubaAPIPleromaInstance* _tmp9_;
	TubaRequestV2* req;
	TubaAPIStatus* _tmp10_;
	TubaAPIStatus* _tmp11_;
	TubaAPIStatus* _tmp12_;
	TubaAPIStatus* _tmp13_;
	const gchar* _tmp14_;
	const gchar* _tmp15_;
	const gchar* _tmp16_;
	const gchar* _tmp17_;
	const gchar* _tmp18_;
	gchar* _tmp19_;
	gchar* _tmp20_;
	TubaAccountStore* _tmp21_;
	TubaInstanceAccount* _tmp22_;
	TubaInstanceAccount* _tmp23_;
	TubaInstanceAccount* _tmp24_;
	TubaRequestV2* _tmp25_;
	TubaRequestV2* _tmp26_;
	GInputStream* in_stream;
	TubaRequestV2* _tmp27_;
	GInputStream* _tmp28_;
	JsonParser* parser;
	GInputStream* _tmp29_;
	JsonParser* _tmp30_;
	JsonNode* node;
	TubaNetwork* _tmp31_;
	JsonParser* _tmp32_;
	JsonNode* _tmp33_;
	TubaAPIAkkomaTranslation* akkotrans;
	JsonNode* _tmp34_;
	TubaAPIAkkomaTranslation* _tmp35_;
	TubaAPIAkkomaTranslation* _tmp36_;
	const gchar* _tmp37_;
	const gchar* _tmp38_;
	gchar* _tmp39_;
	TubaAPIAkkomaTranslation* _tmp40_;
	const gchar* _tmp41_;
	const gchar* _tmp42_;
	gchar* _tmp43_;
	TubaAPITranslation* _tmp44_;
	TubaAPITranslation* _tmp45_;
	GSimpleAction* _tmp46_;
	GSimpleAction* _tmp47_;
	GError* e;
	TubaAPIStatus* _tmp48_;
	TubaAPIStatus* _tmp49_;
	TubaAPIStatus* _tmp50_;
	TubaAPIStatus* _tmp51_;
	const gchar* _tmp52_;
	const gchar* _tmp53_;
	const gchar* _tmp54_;
	GError* _tmp55_;
	gchar* _tmp56_;
	gchar* _tmp57_;
	GError* _tmp58_;
	const gchar* _tmp59_;
	const gchar* _tmp60_;
	gchar* _tmp61_;
	gchar* _tmp62_;
	TubaApplication* _tmp63_;
	GError* _tmp64_;
	const gchar* _tmp65_;
	gchar* _tmp66_;
	gchar* _tmp67_;
	TubaRequestV2* _vala1_req;
	TubaAPIStatus* _tmp68_;
	TubaAPIStatus* _tmp69_;
	TubaAPIStatus* _tmp70_;
	TubaAPIStatus* _tmp71_;
	const gchar* _tmp72_;
	const gchar* _tmp73_;
	const gchar* _tmp74_;
	gchar* _tmp75_;
	gchar* _tmp76_;
	TubaAccountStore* _tmp77_;
	TubaInstanceAccount* _tmp78_;
	TubaInstanceAccount* _tmp79_;
	TubaInstanceAccount* _tmp80_;
	TubaRequestV2* _tmp81_;
	TubaRequestV2* _tmp82_;
	TubaRequestV2* _tmp83_;
	const gchar* _tmp84_;
	GInputStream* _vala1_in_stream;
	TubaRequestV2* _tmp85_;
	GInputStream* _tmp86_;
	JsonParser* _vala1_parser;
	GInputStream* _tmp87_;
	JsonParser* _tmp88_;
	JsonNode* _vala1_node;
	TubaNetwork* _tmp89_;
	JsonParser* _tmp90_;
	JsonNode* _tmp91_;
	TubaAPITranslation* _tmp92_;
	JsonNode* _tmp93_;
	TubaAPITranslation* _tmp94_;
	GSimpleAction* _tmp95_;
	GSimpleAction* _tmp96_;
	GError* _vala1_e;
	TubaAPIStatus* _tmp97_;
	TubaAPIStatus* _tmp98_;
	TubaAPIStatus* _tmp99_;
	TubaAPIStatus* _tmp100_;
	const gchar* _tmp101_;
	const gchar* _tmp102_;
	const gchar* _tmp103_;
	GError* _tmp104_;
	gchar* _tmp105_;
	gchar* _tmp106_;
	GError* _tmp107_;
	const gchar* _tmp108_;
	const gchar* _tmp109_;
	gchar* _tmp110_;
	gchar* _tmp111_;
	TubaApplication* _tmp112_;
	GError* _tmp113_;
	const gchar* _tmp114_;
	gchar* _tmp115_;
	gchar* _tmp116_;
	GError* _inner_error0_;
};

struct _Block103Data {
	int _ref_count_;
	TubaWidgetsStatus* self;
	GeeHashMap* translated_media;
};

struct _TubaWidgetsPreviewCard {
	GtkBox parent_instance;
	TubaWidgetsPreviewCardPrivate * priv;
	GtkButton* button;
};

struct _TubaWidgetsPreviewCardClass {
	GtkBoxClass parent_class;
};

struct _TubaUtilsTagExtractorTag {
	gchar* tag;
	gchar* link;
};

static gint TubaWidgetsStatus_private_offset;
static gpointer tuba_widgets_status_parent_class = NULL;
VALA_EXTERN TubaSettings* tuba_settings;
VALA_EXTERN TubaApplication* tuba_app;
VALA_EXTERN TubaAccountStore* tuba_accounts;
VALA_EXTERN gchar* tuba_default_locale;
VALA_EXTERN TubaNetwork* tuba_network;

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_entity_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaEntity, g_object_unref)
VALA_EXTERN GType tuba_api_status_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPIStatus, g_object_unref)
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_avatar_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaWidgetsAvatar, 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)
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_api_translation_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPITranslation, g_object_unref)
VALA_EXTERN GType tuba_widgets_actions_row_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaWidgetsActionsRow, g_object_unref)
VALA_EXTERN GType tuba_widgets_hashtag_bar_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaWidgetsHashtagBar, g_object_unref)
VALA_EXTERN GType tuba_widgets_collection_button_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaWidgetsCollectionButton, g_object_unref)
VALA_EXTERN GType tuba_widgets_attachment_box_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaWidgetsAttachmentBox, g_object_unref)
VALA_EXTERN void tuba_widgets_status_on_open (TubaWidgetsStatus* self);
VALA_EXTERN void tuba_widgets_status_change_kind (TubaWidgetsStatus* self);
VALA_EXTERN void tuba_widgets_status_bind (TubaWidgetsStatus* self);
VALA_EXTERN GtkPopoverMenu* tuba_widgets_status_get_context_menu (TubaWidgetsStatus* self);
static void tuba_widgets_status_copy_url (TubaWidgetsStatus* self);
static void _tuba_widgets_status_copy_url_gsimple_action_activate_callback (GSimpleAction* action,
                                                                     GVariant* parameter,
                                                                     gpointer self);
static void tuba_widgets_status_open_in_browser (TubaWidgetsStatus* self);
static void _tuba_widgets_status_open_in_browser_gsimple_action_activate_callback (GSimpleAction* action,
                                                                            GVariant* parameter,
                                                                            gpointer self);
static void tuba_widgets_status_report_status (TubaWidgetsStatus* self);
static void _tuba_widgets_status_report_status_gsimple_action_activate_callback (GSimpleAction* action,
                                                                          GVariant* parameter,
                                                                          gpointer self);
VALA_EXTERN void tuba_widgets_status_toggle_actions_visibility (TubaWidgetsStatus* self,
                                                    gboolean visible);
static TubaWidgetsActionsRow* tuba_widgets_status_get_actions (TubaWidgetsStatus* self);
static void tuba_widgets_status_settings_updated (TubaWidgetsStatus* self);
VALA_EXTERN void tuba_toggle_css (GtkWidget* wdg,
                      gboolean state,
                      const gchar* style);
VALA_EXTERN GType tuba_settings_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaSettings, g_object_unref)
VALA_EXTERN gboolean tuba_settings_get_larger_line_height (TubaSettings* self);
VALA_EXTERN gboolean tuba_settings_get_scale_emoji_hover (TubaSettings* self);
static void tuba_widgets_status_font_size_updated (TubaWidgetsStatus* self);
VALA_EXTERN gdouble tuba_settings_get_status_font_size (TubaSettings* self);
static void tuba_widgets_status_update_collapse (TubaWidgetsStatus* self);
VALA_EXTERN gboolean tuba_settings_get_collapse_long_posts (TubaSettings* self);
VALA_EXTERN gboolean tuba_widgets_status_get_enable_thread_lines (TubaWidgetsStatus* self);
VALA_EXTERN void tuba_widgets_fade_bin_set_reveal (TubaWidgetsFadeBin* self,
                                       gboolean value);
static void tuba_widgets_status_on_mobile_size (TubaWidgetsStatus* self);
VALA_EXTERN gint tuba_widgets_avatar_get_size (TubaWidgetsAvatar* self);
VALA_EXTERN GType tuba_application_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaApplication, g_object_unref)
VALA_EXTERN gboolean tuba_application_get_is_mobile (TubaApplication* self);
VALA_EXTERN void tuba_widgets_avatar_set_size (TubaWidgetsAvatar* self,
                                   gint value);
static void tuba_widgets_status_on_name_button_clicked (TubaWidgetsStatus* self);
VALA_EXTERN TubaAPIStatus* tuba_widgets_status_get_status (TubaWidgetsStatus* self);
VALA_EXTERN TubaAPIStatus* tuba_api_status_get_formal (TubaAPIStatus* self);
VALA_EXTERN TubaAPIAccount* tuba_api_status_get_account (TubaAPIStatus* self);
VALA_EXTERN GType tuba_instance_account_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaInstanceAccount, 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 void tuba_widgetizable_open (TubaWidgetizable* self);
static void tuba_widgets_status_show_view_stats_action (TubaWidgetsStatus* self);
static gboolean tuba_widgets_status_get_has_stats (TubaWidgetsStatus* self);
static gboolean tuba_widgets_status_has_reactions (TubaWidgetsStatus* self);
VALA_EXTERN GType tuba_api_emoji_reaction_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPIEmojiReaction, g_object_unref)
VALA_EXTERN GeeArrayList* tuba_api_status_get_compat_status_reactions (TubaAPIStatus* self);
VALA_EXTERN GeeArrayList* tuba_api_emoji_reaction_get_account_ids (TubaAPIEmojiReaction* self);
VALA_EXTERN TubaWidgetsStatus* tuba_widgets_status_new (TubaAPIStatus* status);
VALA_EXTERN TubaWidgetsStatus* tuba_widgets_status_construct (GType object_type,
                                                  TubaAPIStatus* status);
static Block101Data* block101_data_ref (Block101Data* _data101_);
static void block101_data_unref (void * _userdata_);
VALA_EXTERN const gchar* tuba_widgets_status_get_kind (TubaWidgetsStatus* self);
VALA_EXTERN TubaAPIStatus* tuba_api_status_get_reblog (TubaAPIStatus* self);
VALA_EXTERN void tuba_widgets_status_set_kind (TubaWidgetsStatus* self,
                                   const gchar* value);
VALA_EXTERN const gchar* tuba_api_status_get_in_reply_to_id (TubaAPIStatus* self);
VALA_EXTERN const gchar* tuba_api_status_get_in_reply_to_account_id (TubaAPIStatus* self);
VALA_EXTERN GType tuba_api_mention_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPIMention, g_object_unref)
VALA_EXTERN GeeArrayList* tuba_api_status_get_mentions (TubaAPIStatus* self);
static gboolean ______lambda125_ (Block101Data* _data101_,
                           TubaAPIMention* mention);
VALA_EXTERN const gchar* tuba_api_mention_get_id (TubaAPIMention* self);
VALA_EXTERN const gchar* tuba_api_mention_get_acct (TubaAPIMention* self);
static gboolean _______lambda125__gee_forall_func (gpointer g,
                                            gpointer self);
VALA_EXTERN void tuba_widgets_status_init_menu_button (TubaWidgetsStatus* self);
VALA_EXTERN void tuba_widgets_status_create_actions (TubaWidgetsStatus* self);
VALA_EXTERN void tuba_widgets_status_create_context_menu (TubaWidgetsStatus* self);
static void tuba_widgets_status_toggle_mute_conversation (TubaWidgetsStatus* self);
static void _tuba_widgets_status_toggle_mute_conversation_g_simple_action_activate (GSimpleAction* _sender,
                                                                             GVariant* parameter,
                                                                             gpointer self);
VALA_EXTERN gboolean tuba_api_account_is_self (TubaAPIAccount* self);
VALA_EXTERN const gchar* tuba_api_status_get_visibility (TubaAPIStatus* self);
static void tuba_widgets_status_toggle_pinned (TubaWidgetsStatus* self);
static void _tuba_widgets_status_toggle_pinned_g_simple_action_activate (GSimpleAction* _sender,
                                                                  GVariant* parameter,
                                                                  gpointer self);
VALA_EXTERN GType tuba_account_store_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAccountStore, g_object_unref)
VALA_EXTERN TubaInstanceAccount* tuba_account_store_get_active (TubaAccountStore* self);
VALA_EXTERN GType tuba_api_instance_v2_api_versions_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPIInstanceV2APIVersions, g_object_unref)
VALA_EXTERN TubaAPIInstanceV2APIVersions* tuba_instance_account_get_tuba_api_versions (TubaInstanceAccount* self);
VALA_EXTERN gint8 tuba_api_instance_v2_api_versions_get_mastodon (TubaAPIInstanceV2APIVersions* self);
VALA_EXTERN GType tuba_api_status_quote_approval_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPIStatusQuoteApproval, g_object_unref)
VALA_EXTERN TubaAPIStatusQuoteApproval* tuba_api_status_get_quote_approval (TubaAPIStatus* self);
VALA_EXTERN GType tuba_api_status_quote_policy_get_type (void) G_GNUC_CONST ;
VALA_EXTERN TubaAPIStatusQuotePolicy tuba_api_status_quote_approval_to_quote_policy (TubaAPIStatusQuoteApproval* self);
VALA_EXTERN gchar* tuba_api_status_quote_policy_to_string (TubaAPIStatusQuotePolicy self);
static GVariant* _variant_new41 (gchar* value);
static void tuba_widgets_status_change_quote_policy (TubaWidgetsStatus* self,
                                              GSimpleAction* action,
                                              GVariant* value);
static void _tuba_widgets_status_change_quote_policy_g_simple_action_activate (GSimpleAction* _sender,
                                                                        GVariant* parameter,
                                                                        gpointer self);
static void tuba_widgets_status_edit_status (TubaWidgetsStatus* self);
static void _tuba_widgets_status_edit_status_g_simple_action_activate (GSimpleAction* _sender,
                                                                GVariant* parameter,
                                                                gpointer self);
static void tuba_widgets_status_delete_status (TubaWidgetsStatus* self);
static void _tuba_widgets_status_delete_status_g_simple_action_activate (GSimpleAction* _sender,
                                                                  GVariant* parameter,
                                                                  gpointer self);
VALA_EXTERN GType tuba_api_instance_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPIInstance, g_object_unref)
VALA_EXTERN TubaAPIInstance* tuba_instance_account_get_instance_info (TubaInstanceAccount* self);
VALA_EXTERN gboolean tuba_api_instance_get_tuba_can_translate (TubaAPIInstance* self);
VALA_EXTERN GType tuba_instance_account_instance_features_get_type (void) G_GNUC_CONST ;
VALA_EXTERN TubaInstanceAccountInstanceFeatures tuba_instance_account_get_tuba_instance_features (TubaInstanceAccount* self);
static void tuba_widgets_status_translate (TubaWidgetsStatus* self);
static void _tuba_widgets_status_translate_g_simple_action_activate (GSimpleAction* _sender,
                                                              GVariant* parameter,
                                                              gpointer self);
VALA_EXTERN GType tuba_api_quote_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPIQuote, g_object_unref)
VALA_EXTERN TubaAPIQuote* tuba_api_status_get_quote (TubaAPIStatus* self);
VALA_EXTERN gboolean tuba_api_quote_get_tuba_has_quote (TubaAPIQuote* self);
static void tuba_widgets_status_revoke_quote (TubaWidgetsStatus* self);
static void _tuba_widgets_status_revoke_quote_g_simple_action_activate (GSimpleAction* _sender,
                                                                 GVariant* parameter,
                                                                 gpointer self);
static void tuba_widgets_status_update_mute_conversation_actions_enabled_status (TubaWidgetsStatus* self);
static GVariant* _variant_new42 (const gchar* value);
static GVariant* _variant_new43 (const gchar* value);
static GVariant* _variant_new44 (const gchar* value);
static GVariant* _variant_new45 (const gchar* value);
static void tuba_widgets_status_update_toggle_pinned_label (TubaWidgetsStatus* self);
static GVariant* _variant_new46 (const gchar* value);
VALA_EXTERN gchar* tuba_api_status_quote_policy_to_title (TubaAPIStatusQuotePolicy self);
VALA_EXTERN gboolean tuba_api_status_get_tuba_translatable (TubaAPIStatus* self);
VALA_EXTERN const gchar* tuba_api_status_get_language (TubaAPIStatus* self);
static GVariant* _variant_new47 (const gchar* value);
static GVariant* _variant_new48 (const gchar* value);
static GVariant* _variant_new49 (const gchar* value);
VALA_EXTERN void tuba_widgets_status_set_context_menu (TubaWidgetsStatus* self,
                                           GtkPopoverMenu* value);
VALA_EXTERN gchar* tuba_api_status_get_url (TubaAPIStatus* self);
VALA_EXTERN gboolean tuba_settings_get_copy_private_link_reminder (TubaSettings* self);
VALA_EXTERN gchar* tuba_api_account_get_full_handle (TubaAPIAccount* self);
VALA_EXTERN GType tuba_application_question_text_get_type (void) G_GNUC_CONST ;
VALA_EXTERN TubaApplicationQuestionText* tuba_application_question_text_dup (const TubaApplicationQuestionText* self);
VALA_EXTERN void tuba_application_question_text_free (TubaApplicationQuestionText* self);
VALA_EXTERN void tuba_application_question_text_copy (const TubaApplicationQuestionText* self,
                                          TubaApplicationQuestionText* dest);
VALA_EXTERN void tuba_application_question_text_destroy (TubaApplicationQuestionText* self);
G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC (TubaApplicationQuestionText, tuba_application_question_text_destroy)
VALA_EXTERN GType tuba_application_question_buttons_get_type (void) G_GNUC_CONST ;
VALA_EXTERN GType tuba_application_question_button_get_type (void) G_GNUC_CONST ;
VALA_EXTERN TubaApplicationQuestionButton* tuba_application_question_button_dup (const TubaApplicationQuestionButton* self);
VALA_EXTERN void tuba_application_question_button_free (TubaApplicationQuestionButton* self);
VALA_EXTERN void tuba_application_question_button_copy (const TubaApplicationQuestionButton* self,
                                            TubaApplicationQuestionButton* dest);
VALA_EXTERN void tuba_application_question_button_destroy (TubaApplicationQuestionButton* self);
G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC (TubaApplicationQuestionButton, tuba_application_question_button_destroy)
VALA_EXTERN TubaApplicationQuestionButtons* tuba_application_question_buttons_dup (const TubaApplicationQuestionButtons* self);
VALA_EXTERN void tuba_application_question_buttons_free (TubaApplicationQuestionButtons* self);
VALA_EXTERN void tuba_application_question_buttons_copy (const TubaApplicationQuestionButtons* self,
                                             TubaApplicationQuestionButtons* dest);
VALA_EXTERN void tuba_application_question_buttons_destroy (TubaApplicationQuestionButtons* self);
G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC (TubaApplicationQuestionButtons, tuba_application_question_buttons_destroy)
VALA_EXTERN void tuba_application_question (TubaApplication* self,
                                TubaApplicationQuestionText* title,
                                TubaApplicationQuestionText* msg,
                                GtkWidget* win,
                                TubaApplicationQuestionButtons* buttons,
                                GtkWidget* child,
                                gboolean skip,
                                GAsyncReadyCallback _callback_,
                                gpointer _user_data_);
VALA_EXTERN GType tuba_application_question_answer_get_type (void) G_GNUC_CONST ;
VALA_EXTERN TubaApplicationQuestionAnswer tuba_application_question_finish (TubaApplication* self,
                                                                GAsyncResult* _res_);
VALA_EXTERN GType tuba_api_search_result_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPISearchResult, g_object_unref)
VALA_EXTERN GType tuba_streamable_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaStreamable, g_object_unref)
VALA_EXTERN GType tuba_instance_account_kind_get_type (void) G_GNUC_CONST ;
VALA_EXTERN TubaInstanceAccountKind* tuba_instance_account_kind_dup (const TubaInstanceAccountKind* self);
VALA_EXTERN void tuba_instance_account_kind_free (TubaInstanceAccountKind* self);
VALA_EXTERN void tuba_instance_account_kind_copy (const TubaInstanceAccountKind* self,
                                      TubaInstanceAccountKind* dest);
VALA_EXTERN void tuba_instance_account_kind_destroy (TubaInstanceAccountKind* self);
G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC (TubaInstanceAccountKind, tuba_instance_account_kind_destroy)
VALA_EXTERN GType tuba_place_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaPlace, g_object_unref)
VALA_EXTERN GType tuba_api_notification_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPINotification, g_object_unref)
VALA_EXTERN GType tuba_instance_account_visibility_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaInstanceAccountVisibility, g_object_unref)
VALA_EXTERN const gchar* tuba_instance_account_visibility_get_name (TubaInstanceAccountVisibility* self);
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 ___lambda124_ (TubaWidgetsStatus* self,
                    GObject* obj,
                    GAsyncResult* res);
VALA_EXTERN void tuba_settings_set_copy_private_link_reminder (TubaSettings* self,
                                                   gboolean value);
VALA_EXTERN void tuba_utils_host_copy (const gchar* str);
static void ____lambda124__gasync_ready_callback (GObject* source_object,
                                           GAsyncResult* res,
                                           gpointer self);
VALA_EXTERN const gchar* tuba_api_account_get_url (TubaAPIAccount* self);
VALA_EXTERN gboolean tuba_settings_get_use_in_app_browser_if_available (TubaSettings* self);
VALA_EXTERN gboolean tuba_views_browser_can_handle_url (const gchar* url);
VALA_EXTERN TubaViewsBrowser* tuba_views_browser_new_with_url (const gchar* url);
VALA_EXTERN TubaViewsBrowser* tuba_views_browser_construct_with_url (GType object_type,
                                                         const gchar* url);
VALA_EXTERN GType tuba_views_browser_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaViewsBrowser, g_object_unref)
VALA_EXTERN void tuba_utils_host_open_url (const gchar* _uri,
                               GAsyncReadyCallback _callback_,
                               gpointer _user_data_);
VALA_EXTERN gboolean tuba_utils_host_open_url_finish (GAsyncResult* _res_);
VALA_EXTERN const gchar* tuba_api_status_get_id (TubaAPIStatus* self);
VALA_EXTERN GType tuba_api_collection_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPICollection, g_object_unref)
VALA_EXTERN TubaDialogsReport* tuba_dialogs_report_new (TubaAPIAccount* account,
                                            const gchar* status_id,
                                            GeeArrayList* mentions,
                                            TubaAPICollection* collection);
VALA_EXTERN TubaDialogsReport* tuba_dialogs_report_construct (GType object_type,
                                                  TubaAPIAccount* account,
                                                  const gchar* status_id,
                                                  GeeArrayList* mentions,
                                                  TubaAPICollection* collection);
VALA_EXTERN GType tuba_dialogs_report_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaDialogsReport, g_object_unref)
static void tuba_widgets_status_view_edit_history (TubaWidgetsStatus* self);
VALA_EXTERN GType tuba_views_base_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaViewsBase, g_object_unref)
VALA_EXTERN TubaViewsBase* tuba_dialogs_main_window_open_view (TubaDialogsMainWindow* self,
                                                   TubaViewsBase* view);
VALA_EXTERN TubaViewsEditHistory* tuba_views_edit_history_new (const gchar* status_id);
VALA_EXTERN TubaViewsEditHistory* tuba_views_edit_history_construct (GType object_type,
                                                         const gchar* status_id);
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_timeline_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaViewsTimeline, g_object_unref)
VALA_EXTERN GType tuba_views_edit_history_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaViewsEditHistory, g_object_unref)
static void tuba_widgets_status_view_stats (TubaWidgetsStatus* self);
VALA_EXTERN TubaViewsStatusStats* tuba_views_status_stats_new (const gchar* status_id,
                                                   gboolean has_reactors);
VALA_EXTERN TubaViewsStatusStats* tuba_views_status_stats_construct (GType object_type,
                                                         const gchar* status_id,
                                                         gboolean has_reactors);
VALA_EXTERN GType tuba_views_tabbed_base_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaViewsTabbedBase, g_object_unref)
VALA_EXTERN GType tuba_views_status_stats_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaViewsStatusStats, g_object_unref)
VALA_EXTERN void tuba_widgets_status_on_edit (TubaWidgetsStatus* self,
                                  TubaAPIStatus* x);
VALA_EXTERN void tuba_entity_patch (TubaEntity* self,
                        GObject* with);
static void tuba_widgets_status_change_quote_policy_real (TubaWidgetsStatus* self,
                                                   const gchar* new_policy,
                                                   const gchar* old_policy,
                                                   GAsyncReadyCallback _callback_,
                                                   gpointer _user_data_);
static void tuba_widgets_status_change_quote_policy_real_finish (TubaWidgetsStatus* self,
                                                          GAsyncResult* _res_);
static GVariant* _variant_new50 (const gchar* value);
static void tuba_widgets_status_change_quote_policy_real_data_free (gpointer _data);
static gboolean tuba_widgets_status_change_quote_policy_real_co (TubaWidgetsStatusChangeQuotePolicyRealData* _data_);
VALA_EXTERN GType tuba_request_v2_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaRequestV2, g_object_unref)
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_add_form_data (TubaRequestV2* self,
                                    const gchar* name,
                                    const gchar* val);
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);
static void tuba_widgets_status_change_quote_policy_real_ready (GObject* source_object,
                                                         GAsyncResult* _res_,
                                                         gpointer _user_data_);
VALA_EXTERN void tuba_network_get_parser_from_inputstream_async (GInputStream* in_stream,
                                                     GCancellable* cancellable,
                                                     GAsyncReadyCallback _callback_,
                                                     gpointer _user_data_);
VALA_EXTERN JsonParser* tuba_network_get_parser_from_inputstream_finish (GAsyncResult* _res_,
                                                             GError** error);
VALA_EXTERN GType tuba_network_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaNetwork, g_object_unref)
VALA_EXTERN JsonNode* tuba_network_parse_node (TubaNetwork* self,
                                   JsonParser* parser);
VALA_EXTERN TubaAPIStatus* tuba_api_status_from (JsonNode* node,
                                     GError** error);
static void _vala_JsonNode_free (JsonNode* self);
static GVariant* _variant_new51 (const gchar* value);
static void tuba_widgets_status_toggle_pinned_real (TubaWidgetsStatus* self,
                                             GAsyncReadyCallback _callback_,
                                             gpointer _user_data_);
static void tuba_widgets_status_toggle_pinned_real_finish (TubaWidgetsStatus* self,
                                                    GAsyncResult* _res_);
static void tuba_widgets_status_toggle_pinned_real_data_free (gpointer _data);
static gboolean tuba_widgets_status_toggle_pinned_real_co (TubaWidgetsStatusTogglePinnedRealData* _data_);
VALA_EXTERN gboolean tuba_api_status_get_pinned (TubaAPIStatus* self);
static void tuba_widgets_status_toggle_pinned_real_ready (GObject* source_object,
                                                   GAsyncResult* _res_,
                                                   gpointer _user_data_);
VALA_EXTERN void tuba_api_status_set_pinned (TubaAPIStatus* self,
                                 gboolean value);
static void tuba_widgets_status_edit_status_real (TubaWidgetsStatus* self,
                                           gboolean redraft,
                                           GAsyncReadyCallback _callback_,
                                           gpointer _user_data_);
static void tuba_widgets_status_edit_status_real_finish (TubaWidgetsStatus* self,
                                                  GAsyncResult* _res_);
static void tuba_widgets_status_edit_status_real_data_free (gpointer _data);
static gboolean tuba_widgets_status_edit_status_real_co (TubaWidgetsStatusEditStatusRealData* _data_);
VALA_EXTERN TubaRequestV2* tuba_api_status_annihilate (TubaAPIStatus* self);
static void tuba_widgets_status_edit_status_real_ready (GObject* source_object,
                                                 GAsyncResult* _res_,
                                                 gpointer _user_data_);
VALA_EXTERN GType tuba_api_status_source_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPIStatusSource, g_object_unref)
VALA_EXTERN TubaAPIStatusSource* tuba_api_status_source_from (JsonNode* node,
                                                  GError** error);
VALA_EXTERN TubaDialogsComposerDialog* tuba_dialogs_composer_dialog_new_edit (TubaAPIStatus* t_status,
                                                                  TubaAPIStatusSource* source,
                                                                  TubaDialogsComposerDialogSuccessCallback t_cb,
                                                                  gpointer t_cb_target,
                                                                  GDestroyNotify t_cb_target_destroy_notify,
                                                                  gboolean redraft);
VALA_EXTERN TubaDialogsComposerDialog* tuba_dialogs_composer_dialog_construct_edit (GType object_type,
                                                                        TubaAPIStatus* t_status,
                                                                        TubaAPIStatusSource* source,
                                                                        TubaDialogsComposerDialogSuccessCallback t_cb,
                                                                        gpointer t_cb_target,
                                                                        GDestroyNotify t_cb_target_destroy_notify,
                                                                        gboolean redraft);
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_widgets_status_on_edit_tuba_dialogs_composer_dialog_success_callback (TubaAPIStatus* cb_status,
                                                                                 gpointer self);
static void tuba_widgets_status_revoke_quote_real (TubaWidgetsStatus* self,
                                            GAsyncReadyCallback _callback_,
                                            gpointer _user_data_);
static void tuba_widgets_status_revoke_quote_real_finish (TubaWidgetsStatus* self,
                                                   GAsyncResult* _res_);
static void tuba_widgets_status_revoke_quote_real_data_free (gpointer _data);
static gboolean tuba_widgets_status_revoke_quote_real_co (TubaWidgetsStatusRevokeQuoteRealData* _data_);
static void tuba_widgets_status_revoke_quote_real_ready (GObject* source_object,
                                                  GAsyncResult* _res_,
                                                  gpointer _user_data_);
VALA_EXTERN gboolean tuba_application_question_answer_truthy (TubaApplicationQuestionAnswer self);
static Block102Data* block102_data_ref (Block102Data* _data102_);
static void block102_data_unref (void * _userdata_);
static void __lambda101_ (Block102Data* _data102_,
                   GObject* obj,
                   GAsyncResult* res);
static void tuba_widgets_status_delete_status_real (TubaWidgetsStatus* self,
                                             GAsyncReadyCallback _callback_,
                                             gpointer _user_data_);
static void tuba_widgets_status_delete_status_real_finish (TubaWidgetsStatus* self,
                                                    GAsyncResult* _res_);
static void ___lambda101__gasync_ready_callback (GObject* source_object,
                                          GAsyncResult* res,
                                          gpointer self);
static void tuba_widgets_status_delete_status_real_data_free (gpointer _data);
static gboolean tuba_widgets_status_delete_status_real_co (TubaWidgetsStatusDeleteStatusRealData* _data_);
static void tuba_widgets_status_delete_status_real_ready (GObject* source_object,
                                                   GAsyncResult* _res_,
                                                   gpointer _user_data_);
static void tuba_widgets_status_toggle_mute_conversation_real (TubaWidgetsStatus* self,
                                                        GAsyncReadyCallback _callback_,
                                                        gpointer _user_data_);
static void tuba_widgets_status_toggle_mute_conversation_real_finish (TubaWidgetsStatus* self,
                                                               GAsyncResult* _res_);
static void tuba_widgets_status_toggle_mute_conversation_real_data_free (gpointer _data);
static gboolean tuba_widgets_status_toggle_mute_conversation_real_co (TubaWidgetsStatusToggleMuteConversationRealData* _data_);
VALA_EXTERN gboolean tuba_api_status_get_muted (TubaAPIStatus* self);
static void tuba_widgets_status_toggle_mute_conversation_real_ready (GObject* source_object,
                                                              GAsyncResult* _res_,
                                                              gpointer _user_data_);
VALA_EXTERN void tuba_api_status_set_muted (TubaAPIStatus* self,
                                gboolean value);
VALA_EXTERN const gchar* tuba_api_account_get_id (TubaAPIAccount* self);
static void tuba_widgets_status_translate_real (TubaWidgetsStatus* self,
                                         GAsyncReadyCallback _callback_,
                                         gpointer _user_data_);
static void tuba_widgets_status_translate_real_finish (TubaWidgetsStatus* self,
                                                GAsyncResult* _res_);
static void tuba_widgets_status_translate_real_data_free (gpointer _data);
static gboolean tuba_widgets_status_translate_real_co (TubaWidgetsStatusTranslateRealData* _data_);
VALA_EXTERN TubaAPITranslation* tuba_widgets_status_get_translation (TubaWidgetsStatus* self);
static void tuba_widgets_status_set_translation (TubaWidgetsStatus* self,
                                          TubaAPITranslation* value);
VALA_EXTERN GType tuba_api_pleroma_instance_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPIPleromaInstance, g_object_unref)
VALA_EXTERN TubaAPIPleromaInstance* tuba_api_instance_get_pleroma (TubaAPIInstance* self);
static void tuba_widgets_status_translate_real_ready (GObject* source_object,
                                               GAsyncResult* _res_,
                                               gpointer _user_data_);
VALA_EXTERN GType tuba_api_akkoma_translation_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPIAkkomaTranslation, g_object_unref)
VALA_EXTERN TubaAPIAkkomaTranslation* tuba_api_akkoma_translation_from (JsonNode* node,
                                                            GError** error);
VALA_EXTERN const gchar* tuba_api_akkoma_translation_get_text (TubaAPIAkkomaTranslation* self);
VALA_EXTERN const gchar* tuba_api_akkoma_translation_get_detected_language (TubaAPIAkkomaTranslation* self);
VALA_EXTERN TubaAPITranslation* tuba_api_translation_new (void);
VALA_EXTERN TubaAPITranslation* tuba_api_translation_construct (GType object_type);
VALA_EXTERN void tuba_api_translation_set_content (TubaAPITranslation* self,
                                       const gchar* value);
VALA_EXTERN void tuba_api_translation_set_detected_source_language (TubaAPITranslation* self,
                                                        const gchar* value);
VALA_EXTERN TubaAPITranslation* tuba_api_translation_from (JsonNode* node,
                                               GError** error);
VALA_EXTERN void tuba_widgets_status_update_time (TubaWidgetsStatus* self);
VALA_EXTERN gchar* tuba_widgets_status_get_date (TubaWidgetsStatus* self);
VALA_EXTERN void tuba_widgets_vote_box_update_time (TubaWidgetsVoteBox* self,
                                        gboolean skip_aria);
static gchar* tuba_widgets_status_formatted_full_date (TubaWidgetsStatus* self);
VALA_EXTERN const gchar* tuba_widgets_status_get_full_date (TubaWidgetsStatus* self);
static void tuba_widgets_status_real_on_open (TubaWidgetsStatus* self);
VALA_EXTERN void tuba_widgets_status_on_avatar_clicked (TubaWidgetsStatus* self);
VALA_EXTERN void tuba_widgets_status_on_open_unless_reveal (TubaWidgetsStatus* self,
                                                GtkButton* btn);
VALA_EXTERN void tuba_widgets_status_toggle_filter (TubaWidgetsStatus* self);
static void tuba_widgets_status_real_change_kind (TubaWidgetsStatus* self);
VALA_EXTERN TubaAPIAccount* tuba_widgets_status_get_kind_instigator (TubaWidgetsStatus* self);
VALA_EXTERN const gchar* tuba_api_account_get_display_name (TubaAPIAccount* self);
VALA_EXTERN void tuba_instance_account_describe_kind (TubaInstanceAccount* self,
                                          const gchar* kind,
                                          TubaInstanceAccountKind* _result_,
                                          const gchar* actor_name,
                                          const gchar* callback_url,
                                          const gchar* other_data);
VALA_EXTERN const gchar* tuba_widgets_status_get_other_data (TubaWidgetsStatus* self);
static gboolean _vala_string_array_contains (const gchar* * stack,
                                      gssize stack_length,
                                      const const gchar* needle);
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_allow_mini_profile (TubaWidgetsAvatar* self,
                                                 gboolean value);
static void tuba_widgets_status_open_kind_instigator_account (TubaWidgetsStatus* self);
static void _tuba_widgets_status_open_kind_instigator_account_tuba_widgets_avatar_mini_clicked (TubaWidgetsAvatar* _sender,
                                                                                         TubaAPIAccount* acc,
                                                                                         gpointer self);
VALA_EXTERN gchar* tuba_api_account_get_handle (TubaAPIAccount* self);
static void tuba_widgets_status_open_status_account (TubaWidgetsStatus* self);
static void _tuba_widgets_status_open_status_account_tuba_widgets_avatar_mini_clicked (TubaWidgetsAvatar* _sender,
                                                                                TubaAPIAccount* acc,
                                                                                gpointer self);
VALA_EXTERN GeeHashMap* tuba_api_account_get_emojis_map (TubaAPIAccount* self);
VALA_EXTERN void tuba_widgets_rich_label_set_instance_emojis (TubaWidgetsRichLabel* self,
                                                  GeeHashMap* value);
VALA_EXTERN void tuba_widgets_rich_label_set_label (TubaWidgetsRichLabel* self,
                                        const gchar* value);
static void tuba_widgets_status_on_header_button_clicked (TubaWidgetsStatus* self);
static void _tuba_widgets_status_on_header_button_clicked_gtk_button_clicked (GtkButton* _sender,
                                                                       gpointer self);
static void _tuba_widgets_status_on_open_gtk_button_clicked (GtkButton* _sender,
                                                      gpointer self);
VALA_EXTERN gboolean tuba_widgets_rich_label_on_activate_link (TubaWidgetsRichLabel* self,
                                                   const gchar* url);
static void tuba_widgets_status_update_spoiler_status (TubaWidgetsStatus* self);
VALA_EXTERN gboolean tuba_api_status_get_tuba_spoiler_revealed (TubaAPIStatus* self);
VALA_EXTERN gboolean tuba_api_status_get_has_spoiler (TubaAPIStatus* self);
static void tuba_widgets_status_update_spoiler_status_no_transition (TubaWidgetsStatus* self);
VALA_EXTERN void tuba_widgets_status_show_toggle_pinned_action (TubaWidgetsStatus* self);
static void tuba_widgets_status_aria_describe_status (TubaWidgetsStatus* self);
VALA_EXTERN gint tuba_settings_get_status_aria_verbosity (TubaSettings* self);
VALA_EXTERN gchar* tuba_api_status_get_tuba_filter_warn (TubaAPIStatus* self);
VALA_EXTERN gchar* tuba_widgets_status_get_title_text (TubaWidgetsStatus* self);
VALA_EXTERN gchar* tuba_widgets_status_get_subtitle_text (TubaWidgetsStatus* self);
VALA_EXTERN gchar* tuba_utils_date_time_humanize_aria (const gchar* iso8601);
VALA_EXTERN gboolean tuba_api_status_get_is_edited (TubaAPIStatus* self);
VALA_EXTERN gboolean tuba_api_status_get_has_media (TubaAPIStatus* self);
VALA_EXTERN GType tuba_api_attachment_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPIAttachment, g_object_unref)
VALA_EXTERN GeeArrayList* tuba_api_status_get_media_attachments (TubaAPIStatus* self);
VALA_EXTERN GType tuba_api_poll_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPIPoll, g_object_unref)
VALA_EXTERN TubaAPIPoll* tuba_api_status_get_poll (TubaAPIStatus* self);
VALA_EXTERN gboolean tuba_api_poll_get_expired (TubaAPIPoll* self);
VALA_EXTERN const gchar* tuba_api_status_get_spoiler_text (TubaAPIStatus* self);
VALA_EXTERN gchar* tuba_widgets_status_get_spoiler_text (TubaWidgetsStatus* self);
VALA_EXTERN GType tuba_api_status_application_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPIStatusApplication, g_object_unref)
VALA_EXTERN TubaAPIStatusApplication* tuba_api_status_get_application (TubaAPIStatus* self);
VALA_EXTERN const gchar* tuba_api_status_application_get_name (TubaAPIStatusApplication* self);
VALA_EXTERN gint64 tuba_api_status_get_replies_count (TubaAPIStatus* self);
VALA_EXTERN gint64 tuba_api_status_get_reblogs_count (TubaAPIStatus* self);
VALA_EXTERN gint64 tuba_api_status_get_quotes_count (TubaAPIStatus* self);
VALA_EXTERN gint64 tuba_api_status_get_favourites_count (TubaAPIStatus* self);
VALA_EXTERN const gchar* tuba_widgets_rich_label_get_accessible_text (TubaWidgetsRichLabel* self);
static GtkButton* tuba_widgets_status_get_quoted_status_btn (TubaWidgetsStatus* self);
static void tuba_widgets_status_real_bind (TubaWidgetsStatus* self);
VALA_EXTERN void tuba_widgets_status_soft_unbind (TubaWidgetsStatus* 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 GeeArrayList* tuba_api_status_get_filtered (TubaAPIStatus* self);
VALA_EXTERN void tuba_widgets_actions_row_unbind (TubaWidgetsActionsRow* self);
VALA_EXTERN TubaWidgetsActionsRow* tuba_widgets_actions_row_new (TubaAPIStatus* t_status);
VALA_EXTERN TubaWidgetsActionsRow* tuba_widgets_actions_row_construct (GType object_type,
                                                           TubaAPIStatus* t_status);
static void tuba_widgets_status_set_actions (TubaWidgetsStatus* self,
                                      TubaWidgetsActionsRow* value);
static void tuba_widgets_status_on_reply_button_clicked (TubaWidgetsStatus* self);
static void _tuba_widgets_status_on_reply_button_clicked_tuba_widgets_actions_row_reply (TubaWidgetsActionsRow* _sender,
                                                                                  GtkButton* btn,
                                                                                  gpointer self);
VALA_EXTERN GRegex* tuba_api_search_result_get_tuba_search_query_regex (TubaAPISearchResult* self);
VALA_EXTERN void tuba_widgets_markup_view_set_bold_text_regex (TubaWidgetsMarkupView* self,
                                                   GRegex* value);
VALA_EXTERN gboolean tuba_api_status_get_tuba_had_quote (TubaAPIStatus* self);
VALA_EXTERN void tuba_widgets_markup_view_set_has_quote (TubaWidgetsMarkupView* self,
                                             gboolean value);
VALA_EXTERN void tuba_widgets_markup_view_set_mentions (TubaWidgetsMarkupView* self,
                                            GeeArrayList* value);
VALA_EXTERN GeeHashMap* tuba_api_status_get_emojis_map (TubaAPIStatus* self);
VALA_EXTERN void tuba_widgets_markup_view_set_instance_emojis (TubaWidgetsMarkupView* self,
                                                   GeeHashMap* value);
VALA_EXTERN const gchar* tuba_api_translation_get_content (TubaAPITranslation* self);
VALA_EXTERN void tuba_widgets_markup_view_set_content (TubaWidgetsMarkupView* self,
                                           const gchar* value);
VALA_EXTERN const gchar* tuba_api_status_get_content (TubaAPIStatus* self);
static GtkLabel* tuba_widgets_status_get_quote_warning (TubaWidgetsStatus* self);
VALA_EXTERN gboolean tuba_widgets_status_get_is_quote (TubaWidgetsStatus* self);
VALA_EXTERN GtkWidget* tuba_widgetizable_to_widget (TubaWidgetizable* self);
VALA_EXTERN void tuba_widgets_status_set_is_quote (TubaWidgetsStatus* self,
                                       gboolean value);
static void tuba_widgets_status_set_quoted_status_btn (TubaWidgetsStatus* self,
                                                GtkButton* value);
static void _tuba_widgets_status_on_open_unless_reveal_gtk_button_clicked (GtkButton* _sender,
                                                                    gpointer self);
VALA_EXTERN const gchar* tuba_api_quote_get_state (TubaAPIQuote* self);
VALA_EXTERN gboolean tuba_api_account_get_limited (TubaAPIAccount* self);
VALA_EXTERN gchar* tuba_api_account_get_domain (TubaAPIAccount* self);
static void tuba_widgets_status_set_quote_warning (TubaWidgetsStatus* self,
                                            GtkLabel* value);
static AdwBin* tuba_widgets_status_get_emoji_reactions (TubaWidgetsStatus* self);
VALA_EXTERN TubaWidgetsReactionsRow* tuba_widgets_reactions_row_new (const gchar* status_id,
                                                         GeeArrayList* reactions,
                                                         gboolean is_announcement);
VALA_EXTERN TubaWidgetsReactionsRow* tuba_widgets_reactions_row_construct (GType object_type,
                                                               const gchar* status_id,
                                                               GeeArrayList* reactions,
                                                               gboolean is_announcement);
VALA_EXTERN GType tuba_widgets_reactions_row_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaWidgetsReactionsRow, g_object_unref)
static void tuba_widgets_status_set_emoji_reactions (TubaWidgetsStatus* self,
                                              AdwBin* value);
VALA_EXTERN const gchar* tuba_widgets_status_get_spoiler_text_revealed (TubaWidgetsStatus* self);
VALA_EXTERN void tuba_api_status_set_tuba_spoiler_revealed (TubaAPIStatus* self,
                                                gboolean value);
VALA_EXTERN const gchar* tuba_instance_account_visibility_get_small_icon_name (TubaInstanceAccountVisibility* self);
VALA_EXTERN gboolean tuba_widgets_status_get_change_background_on_direct (TubaWidgetsStatus* self);
VALA_EXTERN gboolean tuba_api_status_get_compat_local_only (TubaAPIStatus* self);
VALA_EXTERN void tuba_widgets_avatar_set_account (TubaWidgetsAvatar* self,
                                      TubaAPIAccount* value);
VALA_EXTERN TubaWidgetsVoteBox* tuba_widgets_vote_box_new (void);
VALA_EXTERN TubaWidgetsVoteBox* tuba_widgets_vote_box_construct (GType object_type);
VALA_EXTERN void tuba_widgets_vote_box_set_translation (TubaWidgetsVoteBox* self,
                                            TubaAPITranslation* value);
static void _vala_array_add148 (GBinding** * array,
                         gint* length,
                         gint* size,
                         GBinding* value);
VALA_EXTERN GType tuba_api_translation_attachment_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPITranslationAttachment, g_object_unref)
VALA_EXTERN GeeArrayList* tuba_api_translation_get_media_attachments (TubaAPITranslation* self);
static Block103Data* block103_data_ref (Block103Data* _data103_);
static void block103_data_unref (void * _userdata_);
static gboolean ____lambda98_ (Block103Data* _data103_,
                        TubaAPITranslationAttachment* e);
VALA_EXTERN const gchar* tuba_api_translation_attachment_get_id (TubaAPITranslationAttachment* self);
VALA_EXTERN const gchar* tuba_api_translation_attachment_get_description (TubaAPITranslationAttachment* self);
static gboolean _____lambda98__gee_forall_func (gpointer g,
                                         gpointer self);
static gboolean ____lambda99_ (Block103Data* _data103_,
                        TubaAPIAttachment* item);
VALA_EXTERN const gchar* tuba_api_attachment_get_id (TubaAPIAttachment* self);
VALA_EXTERN void tuba_api_attachment_set_tuba_translated_alt_text (TubaAPIAttachment* self,
                                                       const gchar* value);
static gboolean _____lambda99__gee_forall_func (gpointer g,
                                         gpointer self);
static gboolean ____lambda100_ (TubaWidgetsStatus* self,
                         TubaAPIAttachment* item);
static gboolean _____lambda100__gee_forall_func (gpointer g,
                                          gpointer self);
VALA_EXTERN TubaWidgetsAttachmentBox* tuba_widgets_attachment_box_new (void);
VALA_EXTERN TubaWidgetsAttachmentBox* tuba_widgets_attachment_box_construct (GType object_type);
VALA_EXTERN gboolean tuba_api_status_get_sensitive (TubaAPIStatus* self);
VALA_EXTERN void tuba_widgets_attachment_box_set_has_spoiler (TubaWidgetsAttachmentBox* self,
                                                  gboolean value);
VALA_EXTERN void tuba_widgets_attachment_box_set_list (TubaWidgetsAttachmentBox* self,
                                           GeeArrayList* value);
VALA_EXTERN gboolean tuba_widgets_attachment_box_get_has_thumbnailess_audio (TubaWidgetsAttachmentBox* self);
static void _vala_array_add149 (GBinding** * array,
                         gint* length,
                         gint* size,
                         GBinding* value);
VALA_EXTERN const gchar* tuba_api_translation_get_provider (TubaAPITranslation* self);
VALA_EXTERN const gchar* tuba_api_translation_get_detected_source_language (TubaAPITranslation* self);
VALA_EXTERN GeeArrayList* tuba_api_status_get_tagged_collections (TubaAPIStatus* self);
VALA_EXTERN TubaWidgetsCollectionButton* tuba_widgets_collection_button_new (TubaAPICollection* collection);
VALA_EXTERN TubaWidgetsCollectionButton* tuba_widgets_collection_button_construct (GType object_type,
                                                                       TubaAPICollection* collection);
VALA_EXTERN gboolean tuba_settings_get_show_preview_cards (TubaSettings* self);
VALA_EXTERN GType tuba_api_preview_card_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (TubaAPIPreviewCard, g_object_unref)
VALA_EXTERN TubaAPIPreviewCard* tuba_api_status_get_card (TubaAPIStatus* self);
VALA_EXTERN const gchar* tuba_api_preview_card_get_kind (TubaAPIPreviewCard* self);
static void tuba_widgets_status_open_card_url (TubaWidgetsStatus* self);
static void _tuba_widgets_status_open_card_url_gtk_button_clicked (GtkButton* _sender,
                                                            gpointer self);
VALA_EXTERN GType tuba_utils_tag_extractor_tag_get_type (void) G_GNUC_CONST ;
VALA_EXTERN TubaUtilsTagExtractorTag* tuba_utils_tag_extractor_tag_dup (const TubaUtilsTagExtractorTag* self);
VALA_EXTERN void tuba_utils_tag_extractor_tag_free (TubaUtilsTagExtractorTag* self);
VALA_EXTERN void tuba_utils_tag_extractor_tag_copy (const TubaUtilsTagExtractorTag* self,
                                        TubaUtilsTagExtractorTag* dest);
VALA_EXTERN void tuba_utils_tag_extractor_tag_destroy (TubaUtilsTagExtractorTag* self);
G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC (TubaUtilsTagExtractorTag, tuba_utils_tag_extractor_tag_destroy)
VALA_EXTERN TubaUtilsTagExtractorTag* tuba_widgets_markup_view_get_extracted_tags (TubaWidgetsMarkupView* self,
                                                                       gint* result_length1);
static void _vala_TubaUtilsTagExtractorTag_array_free (TubaUtilsTagExtractorTag * array,
                                                gssize array_length);
VALA_EXTERN TubaWidgetsHashtagBar* tuba_widgets_hashtag_bar_new (TubaUtilsTagExtractorTag* tags,
                                                     gint tags_length1);
VALA_EXTERN TubaWidgetsHashtagBar* tuba_widgets_hashtag_bar_construct (GType object_type,
                                                           TubaUtilsTagExtractorTag* tags,
                                                           gint tags_length1);
static void _tuba_widgets_status_show_view_stats_action_g_object_notify (GObject* _sender,
                                                                  GParamSpec* pspec,
                                                                  gpointer self);
static void _vala_array_add150 (gulong* * array,
                         gint* length,
                         gint* size,
                         gulong value);
static void _vala_array_add151 (gulong* * array,
                         gint* length,
                         gint* size,
                         gulong value);
VALA_EXTERN void tuba_widgets_status_install_thread_line (TubaWidgetsStatus* self);
static void _tuba_widgets_status_install_thread_line_g_object_notify (GObject* _sender,
                                                               GParamSpec* pspec,
                                                               gpointer self);
static void _vala_array_add152 (gulong* * array,
                         gint* length,
                         gint* size,
                         gulong value);
static void _tuba_widgets_status_update_spoiler_status_g_object_notify (GObject* _sender,
                                                                 GParamSpec* pspec,
                                                                 gpointer self);
static void _vala_array_add153 (gulong* * array,
                         gint* length,
                         gint* size,
                         gulong value);
VALA_EXTERN void tuba_api_preview_card_open_special_card (TubaAPIPreviewCard* self);
static void tuba_widgets_status_on_reply (TubaWidgetsStatus* self,
                                   TubaAPIStatus* x);
static void _tuba_widgets_status_on_reply_tuba_dialogs_composer_dialog_success_callback (TubaAPIStatus* cb_status,
                                                                                  gpointer self);
VALA_EXTERN TubaDialogsComposerDialog* tuba_dialogs_composer_dialog_new_reply (TubaAPIStatus* to,
                                                                   TubaDialogsComposerDialogSuccessCallback t_cb,
                                                                   gpointer t_cb_target,
                                                                   GDestroyNotify t_cb_target_destroy_notify);
VALA_EXTERN TubaDialogsComposerDialog* tuba_dialogs_composer_dialog_construct_reply (GType object_type,
                                                                         TubaAPIStatus* to,
                                                                         TubaDialogsComposerDialogSuccessCallback t_cb,
                                                                         gpointer t_cb_target,
                                                                         GDestroyNotify t_cb_target_destroy_notify);
VALA_EXTERN void tuba_widgets_status_on_fade_reveal (TubaWidgetsStatus* self);
VALA_EXTERN void tuba_widgets_fade_bin_reveal_animated (TubaWidgetsFadeBin* self);
static void _tuba_widgets_status_on_fade_reveal_gtk_button_clicked (GtkButton* _sender,
                                                             gpointer self);
VALA_EXTERN void tuba_widgets_status_toggle_spoiler (TubaWidgetsStatus* self);
static void _tuba_widgets_status_toggle_spoiler_gtk_button_clicked (GtkButton* _sender,
                                                             gpointer self);
static void _tuba_widgets_status_toggle_filter_gtk_button_clicked (GtkButton* _sender,
                                                            gpointer self);
static void _tuba_widgets_status_on_avatar_clicked_tuba_widgets_avatar_mini_clicked (TubaWidgetsAvatar* _sender,
                                                                              TubaAPIAccount* acc,
                                                                              gpointer self);
VALA_EXTERN void tuba_widgets_status_to_display_only (TubaWidgetsStatus* self);
VALA_EXTERN void tuba_widgets_vote_box_set_usable (TubaWidgetsVoteBox* self,
                                       gboolean value);
VALA_EXTERN void tuba_widgets_hashtag_bar_to_display_only (TubaWidgetsHashtagBar* self);
VALA_EXTERN void tuba_widgets_attachment_box_set_usable (TubaWidgetsAttachmentBox* self,
                                             gboolean value);
VALA_EXTERN void tuba_widgets_status_set_can_be_opened (TubaWidgetsStatus* self,
                                            gboolean value);
VALA_EXTERN void tuba_widgets_markup_view_set_selectable (TubaWidgetsMarkupView* self,
                                              gboolean value);
VALA_EXTERN void tuba_widgets_markup_view_set_can_open (TubaWidgetsMarkupView* self,
                                            gboolean value);
VALA_EXTERN void tuba_widgets_status_expand_root (TubaWidgetsStatus* self);
static void tuba_widgets_status_append_to_bottom_bar (TubaWidgetsStatus* self,
                                               AdwWrapBox* wrap_box,
                                               GtkWidget* child,
                                               const gchar* separator);
VALA_EXTERN const gchar* tuba_api_status_application_get_website (TubaAPIStatusApplication* self);
VALA_EXTERN void tuba_widgets_status_patch_stats (TubaWidgetsStatus* self,
                                      TubaAPIStatus* x);
VALA_EXTERN void tuba_api_status_set_favourites_count (TubaAPIStatus* self,
                                           gint64 value);
VALA_EXTERN void tuba_api_status_set_reblogs_count (TubaAPIStatus* self,
                                        gint64 value);
VALA_EXTERN void tuba_api_status_set_replies_count (TubaAPIStatus* self,
                                        gint64 value);
VALA_EXTERN void tuba_api_status_set_quotes_count (TubaAPIStatus* self,
                                       gint64 value);
static void tuba_widgets_status_real_snapshot (GtkWidget* base,
                                        GtkSnapshot* snapshot);
VALA_EXTERN GType tuba_views_thread_thread_role_get_type (void) G_GNUC_CONST ;
VALA_EXTERN TubaViewsThreadThreadRole tuba_api_status_get_tuba_thread_role (TubaAPIStatus* self);
VALA_EXTERN void tuba_widgets_status_set_status (TubaWidgetsStatus* self,
                                     TubaAPIStatus* value);
VALA_EXTERN void tuba_widgets_status_set_kind_instigator (TubaWidgetsStatus* self,
                                              TubaAPIAccount* value);
VALA_EXTERN void tuba_widgets_status_set_other_data (TubaWidgetsStatus* self,
                                         const gchar* value);
VALA_EXTERN void tuba_widgets_status_set_enable_thread_lines (TubaWidgetsStatus* self,
                                                  gboolean value);
VALA_EXTERN gboolean tuba_widgets_status_get_can_be_opened (TubaWidgetsStatus* self);
VALA_EXTERN void tuba_widgets_status_set_change_background_on_direct (TubaWidgetsStatus* self,
                                                          gboolean value);
VALA_EXTERN const gchar* tuba_api_translation_get_spoiler_text (TubaAPITranslation* self);
VALA_EXTERN void tuba_widgets_status_set_spoiler_text_revealed (TubaWidgetsStatus* self,
                                                    const gchar* value);
VALA_EXTERN gchar* tuba_utils_date_time_humanize (const gchar* iso8601);
VALA_EXTERN const gchar* tuba_api_status_get_edited_at (TubaAPIStatus* self);
VALA_EXTERN const gchar* tuba_api_status_get_created_at (TubaAPIStatus* self);
VALA_EXTERN gchar* tuba_widgets_status_get_avatar_url (TubaWidgetsStatus* self);
VALA_EXTERN const gchar* tuba_api_account_get_avatar (TubaAPIAccount* self);
static GObject * tuba_widgets_status_constructor (GType type,
                                           guint n_construct_properties,
                                           GObjectConstructParam * construct_properties);
VALA_EXTERN void tuba_widgets_rich_label_set_use_markup (TubaWidgetsRichLabel* self,
                                             gboolean value);
static void _tuba_widgets_status_on_open_tuba_widgets_status_open (TubaWidgetsStatus* _sender,
                                                            gpointer self);
static void _tuba_widgets_status_font_size_updated_g_object_notify (GObject* _sender,
                                                             GParamSpec* pspec,
                                                             gpointer self);
static void _tuba_widgets_status_settings_updated_g_object_notify (GObject* _sender,
                                                            GParamSpec* pspec,
                                                            gpointer self);
static void _tuba_widgets_status_update_collapse_g_object_notify (GObject* _sender,
                                                           GParamSpec* pspec,
                                                           gpointer self);
static void _tuba_widgets_status_on_mobile_size_g_object_notify (GObject* _sender,
                                                          GParamSpec* pspec,
                                                          gpointer self);
static void _tuba_widgets_status_view_edit_history_g_simple_action_activate (GSimpleAction* _sender,
                                                                      GVariant* parameter,
                                                                      gpointer self);
static void _tuba_widgets_status_view_stats_g_simple_action_activate (GSimpleAction* _sender,
                                                               GVariant* parameter,
                                                               gpointer self);
static void _tuba_widgets_status_on_name_button_clicked_gtk_button_clicked (GtkButton* _sender,
                                                                     gpointer self);
static void tuba_widgets_status_finalize (GObject * obj);
static GType tuba_widgets_status_get_type_once (void);
static void _vala_tuba_widgets_status_get_property (GObject * object,
                                             guint property_id,
                                             GValue * value,
                                             GParamSpec * pspec);
static void _vala_tuba_widgets_status_set_property (GObject * object,
                                             guint property_id,
                                             const GValue * value,
                                             GParamSpec * pspec);
static void _vala_array_destroy (gpointer array,
                          gssize array_length,
                          GDestroyNotify destroy_func);
static void _vala_array_free (gpointer array,
                       gssize array_length,
                       GDestroyNotify destroy_func);
static gssize _vala_array_length (gpointer array);

static const GActionEntry TUBA_WIDGETS_STATUS_ACTION_ENTRIES[3] = {{"copy-url", _tuba_widgets_status_copy_url_gsimple_action_activate_callback}, {"open-in-browser", _tuba_widgets_status_open_in_browser_gsimple_action_activate_callback}, {"report", _tuba_widgets_status_report_status_gsimple_action_activate_callback}};
static const gchar* TUBA_WIDGETS_STATUS_SHOULD_SHOW_ACTOR_AVATAR[3] = {TUBA_INSTANCE_ACCOUNT_KIND_REBLOG, TUBA_INSTANCE_ACCOUNT_KIND_REMOTE_REBLOG, TUBA_INSTANCE_ACCOUNT_KIND_FAVOURITE};
static const gchar* TUBA_WIDGETS_STATUS_ALLOWED_CARD_TYPES[2] = {"link", "video"};

static inline gpointer
tuba_widgets_status_get_instance_private (TubaWidgetsStatus* self)
{
	return G_STRUCT_MEMBER_P (self, TubaWidgetsStatus_private_offset);
}

static void
_tuba_widgets_status_copy_url_gsimple_action_activate_callback (GSimpleAction* action,
                                                                GVariant* parameter,
                                                                gpointer self)
{
	tuba_widgets_status_copy_url ((TubaWidgetsStatus*) self);
}

static void
_tuba_widgets_status_open_in_browser_gsimple_action_activate_callback (GSimpleAction* action,
                                                                       GVariant* parameter,
                                                                       gpointer self)
{
	tuba_widgets_status_open_in_browser ((TubaWidgetsStatus*) self);
}

static void
_tuba_widgets_status_report_status_gsimple_action_activate_callback (GSimpleAction* action,
                                                                     GVariant* parameter,
                                                                     gpointer self)
{
	tuba_widgets_status_report_status ((TubaWidgetsStatus*) self);
}

void
tuba_widgets_status_toggle_actions_visibility (TubaWidgetsStatus* self,
                                               gboolean visible)
{
	TubaWidgetsActionsRow* _tmp0_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->priv->_actions;
	gtk_widget_set_visible ((GtkWidget*) _tmp0_, visible);
	if (visible) {
		GtkBox* _tmp1_;
		_tmp1_ = self->status_box;
		gtk_widget_add_css_class ((GtkWidget*) _tmp1_, "has-actions");
	} else {
		GtkBox* _tmp2_;
		_tmp2_ = self->status_box;
		gtk_widget_remove_css_class ((GtkWidget*) _tmp2_, "has-actions");
	}
}

static void
tuba_widgets_status_settings_updated (TubaWidgetsStatus* self)
{
	TubaSettings* _tmp0_;
	gboolean _tmp1_;
	gboolean _tmp2_;
	TubaSettings* _tmp3_;
	gboolean _tmp4_;
	gboolean _tmp5_;
	g_return_if_fail (self != NULL);
	_tmp0_ = tuba_settings;
	_tmp1_ = tuba_settings_get_larger_line_height (_tmp0_);
	_tmp2_ = _tmp1_;
	tuba_toggle_css ((GtkWidget*) self, _tmp2_, "ttl-status-line-height-large");
	_tmp3_ = tuba_settings;
	_tmp4_ = tuba_settings_get_scale_emoji_hover (_tmp3_);
	_tmp5_ = _tmp4_;
	tuba_toggle_css ((GtkWidget*) self, _tmp5_, "lww-scale-emoji-hover");
}

static void
tuba_widgets_status_font_size_updated (TubaWidgetsStatus* self)
{
	gchar** _tmp0_;
	gint _tmp0__length1;
	gchar** _tmp1_;
	gint _tmp1__length1;
	TubaSettings* _tmp5_;
	gdouble _tmp6_;
	gdouble _tmp7_;
	gchar* _tmp8_;
	gchar* _tmp9_;
	gchar* _tmp10_;
	gchar* _tmp11_;
	g_return_if_fail (self != NULL);
	_tmp0_ = gtk_widget_get_css_classes ((GtkWidget*) self);
	_tmp0__length1 = _vala_array_length (_tmp0_);
	_tmp1_ = _tmp0_;
	_tmp1__length1 = _tmp0__length1;
	{
		gchar** style_collection = NULL;
		gint style_collection_length1 = 0;
		gint _style_collection_size_ = 0;
		gint style_it = 0;
		style_collection = _tmp1_;
		style_collection_length1 = _tmp1__length1;
		for (style_it = 0; style_it < style_collection_length1; style_it = style_it + 1) {
			gchar* _tmp2_;
			gchar* style = NULL;
			_tmp2_ = g_strdup (style_collection[style_it]);
			style = _tmp2_;
			{
				const gchar* _tmp3_;
				_tmp3_ = style;
				if (g_str_has_prefix (_tmp3_, "ttl-status-font-large")) {
					const gchar* _tmp4_;
					_tmp4_ = style;
					gtk_widget_remove_css_class ((GtkWidget*) self, _tmp4_);
					_g_free0 (style);
					break;
				}
				_g_free0 (style);
			}
		}
		style_collection = (_vala_array_free (style_collection, style_collection_length1, (GDestroyNotify) g_free), NULL);
	}
	_tmp5_ = tuba_settings;
	_tmp6_ = tuba_settings_get_status_font_size (_tmp5_);
	_tmp7_ = _tmp6_;
	_tmp8_ = g_strdup_printf ("%i", (gint) (_tmp7_ * 100));
	_tmp9_ = _tmp8_;
	_tmp10_ = g_strconcat ("ttl-status-font-large-", _tmp9_, NULL);
	_tmp11_ = _tmp10_;
	gtk_widget_add_css_class ((GtkWidget*) self, _tmp11_);
	_g_free0 (_tmp11_);
	_g_free0 (_tmp9_);
}

static void
tuba_widgets_status_update_collapse (TubaWidgetsStatus* self)
{
	gboolean _tmp0_ = FALSE;
	gboolean _tmp1_ = FALSE;
	TubaSettings* _tmp2_;
	gboolean _tmp3_;
	gboolean _tmp4_;
	TubaWidgetsFadeBin* _tmp7_;
	g_return_if_fail (self != NULL);
	_tmp2_ = tuba_settings;
	_tmp3_ = tuba_settings_get_collapse_long_posts (_tmp2_);
	_tmp4_ = _tmp3_;
	if (!_tmp4_) {
		_tmp1_ = TRUE;
	} else {
		_tmp1_ = self->priv->expanded;
	}
	if (_tmp1_) {
		_tmp0_ = TRUE;
	} else {
		gboolean _tmp5_;
		gboolean _tmp6_;
		_tmp5_ = tuba_widgets_status_get_enable_thread_lines (self);
		_tmp6_ = _tmp5_;
		_tmp0_ = _tmp6_;
	}
	_tmp7_ = self->fade_bin;
	tuba_widgets_fade_bin_set_reveal (_tmp7_, _tmp0_);
}

static void
tuba_widgets_status_on_mobile_size (TubaWidgetsStatus* self)
{
	TubaWidgetsAvatar* _tmp0_;
	gboolean _tmp1_;
	gboolean _tmp2_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->avatar;
	_tmp1_ = gtk_widget_get_visible ((GtkWidget*) _tmp0_);
	_tmp2_ = _tmp1_;
	if (_tmp2_) {
		gboolean _tmp3_ = FALSE;
		TubaWidgetsAvatar* _tmp4_;
		gint _tmp5_;
		gint _tmp6_;
		_tmp4_ = self->avatar;
		_tmp5_ = tuba_widgets_avatar_get_size (_tmp4_);
		_tmp6_ = _tmp5_;
		if (_tmp6_ == 48) {
			TubaApplication* _tmp7_;
			gboolean _tmp8_;
			gboolean _tmp9_;
			_tmp7_ = tuba_app;
			_tmp8_ = tuba_application_get_is_mobile (_tmp7_);
			_tmp9_ = _tmp8_;
			_tmp3_ = _tmp9_;
		} else {
			_tmp3_ = FALSE;
		}
		if (_tmp3_) {
			TubaWidgetsAvatar* _tmp10_;
			TubaWidgetsAvatar* _tmp11_;
			_tmp10_ = self->avatar;
			tuba_widgets_avatar_set_size (_tmp10_, 36);
			_tmp11_ = self->priv->actor_avatar;
			if (_tmp11_ != NULL) {
				TubaWidgetsAvatar* _tmp12_;
				_tmp12_ = self->priv->actor_avatar;
				tuba_widgets_avatar_set_size (_tmp12_, 24);
			}
		} else {
			gboolean _tmp13_ = FALSE;
			TubaWidgetsAvatar* _tmp14_;
			gint _tmp15_;
			gint _tmp16_;
			_tmp14_ = self->avatar;
			_tmp15_ = tuba_widgets_avatar_get_size (_tmp14_);
			_tmp16_ = _tmp15_;
			if (_tmp16_ == 36) {
				TubaApplication* _tmp17_;
				gboolean _tmp18_;
				gboolean _tmp19_;
				_tmp17_ = tuba_app;
				_tmp18_ = tuba_application_get_is_mobile (_tmp17_);
				_tmp19_ = _tmp18_;
				_tmp13_ = !_tmp19_;
			} else {
				_tmp13_ = FALSE;
			}
			if (_tmp13_) {
				TubaWidgetsAvatar* _tmp20_;
				TubaWidgetsAvatar* _tmp21_;
				_tmp20_ = self->avatar;
				tuba_widgets_avatar_set_size (_tmp20_, 48);
				_tmp21_ = self->priv->actor_avatar;
				if (_tmp21_ != NULL) {
					TubaWidgetsAvatar* _tmp22_;
					_tmp22_ = self->priv->actor_avatar;
					tuba_widgets_avatar_set_size (_tmp22_, 34);
				}
			}
		}
	}
}

static void
tuba_widgets_status_on_name_button_clicked (TubaWidgetsStatus* self)
{
	TubaAPIStatus* _tmp0_;
	TubaAPIStatus* _tmp1_;
	TubaAPIStatus* _tmp2_;
	TubaAPIStatus* _tmp3_;
	TubaAPIAccount* _tmp4_;
	TubaAPIAccount* _tmp5_;
	g_return_if_fail (self != NULL);
	_tmp0_ = tuba_widgets_status_get_status (self);
	_tmp1_ = _tmp0_;
	_tmp2_ = tuba_api_status_get_formal (_tmp1_);
	_tmp3_ = _tmp2_;
	_tmp4_ = tuba_api_status_get_account (_tmp3_);
	_tmp5_ = _tmp4_;
	tuba_widgetizable_open ((TubaWidgetizable*) _tmp5_);
}

static void
tuba_widgets_status_show_view_stats_action (TubaWidgetsStatus* self)
{
	gboolean _tmp0_ = FALSE;
	gboolean _tmp1_;
	gboolean _tmp2_;
	GSimpleAction* _tmp3_;
	g_return_if_fail (self != NULL);
	_tmp1_ = tuba_widgets_status_get_has_stats (self);
	_tmp2_ = _tmp1_;
	if (_tmp2_) {
		_tmp0_ = TRUE;
	} else {
		_tmp0_ = tuba_widgets_status_has_reactions (self);
	}
	_tmp3_ = self->priv->stats_simple_action;
	g_simple_action_set_enabled (_tmp3_, _tmp0_);
}

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

static gboolean
tuba_widgets_status_has_reactions (TubaWidgetsStatus* self)
{
	gboolean res = FALSE;
	GeeArrayList* reactions = NULL;
	TubaAPIStatus* _tmp0_;
	TubaAPIStatus* _tmp1_;
	TubaAPIStatus* _tmp2_;
	TubaAPIStatus* _tmp3_;
	GeeArrayList* _tmp4_;
	GeeArrayList* _tmp5_;
	GeeArrayList* _tmp6_;
	gboolean _tmp7_ = FALSE;
	GeeArrayList* _tmp8_;
	gboolean result;
	g_return_val_if_fail (self != NULL, FALSE);
	res = FALSE;
	_tmp0_ = tuba_widgets_status_get_status (self);
	_tmp1_ = _tmp0_;
	_tmp2_ = tuba_api_status_get_formal (_tmp1_);
	_tmp3_ = _tmp2_;
	_tmp4_ = tuba_api_status_get_compat_status_reactions (_tmp3_);
	_tmp5_ = _tmp4_;
	_tmp6_ = _g_object_ref0 (_tmp5_);
	reactions = _tmp6_;
	_tmp8_ = reactions;
	if (_tmp8_ != NULL) {
		GeeArrayList* _tmp9_;
		gint _tmp10_;
		gint _tmp11_;
		_tmp9_ = reactions;
		_tmp10_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp9_);
		_tmp11_ = _tmp10_;
		_tmp7_ = _tmp11_ > 0;
	} else {
		_tmp7_ = FALSE;
	}
	if (_tmp7_) {
		gboolean _tmp12_ = FALSE;
		GeeArrayList* _tmp13_;
		gpointer _tmp14_;
		TubaAPIEmojiReaction* _tmp15_;
		GeeArrayList* _tmp16_;
		GeeArrayList* _tmp17_;
		gboolean _tmp18_;
		_tmp13_ = reactions;
		_tmp14_ = gee_abstract_list_get ((GeeAbstractList*) _tmp13_, 0);
		_tmp15_ = (TubaAPIEmojiReaction*) _tmp14_;
		_tmp16_ = tuba_api_emoji_reaction_get_account_ids (_tmp15_);
		_tmp17_ = _tmp16_;
		_tmp18_ = _tmp17_ != NULL;
		_g_object_unref0 (_tmp15_);
		if (_tmp18_) {
			GeeArrayList* _tmp19_;
			gpointer _tmp20_;
			TubaAPIEmojiReaction* _tmp21_;
			GeeArrayList* _tmp22_;
			GeeArrayList* _tmp23_;
			gint _tmp24_;
			gint _tmp25_;
			_tmp19_ = reactions;
			_tmp20_ = gee_abstract_list_get ((GeeAbstractList*) _tmp19_, 0);
			_tmp21_ = (TubaAPIEmojiReaction*) _tmp20_;
			_tmp22_ = tuba_api_emoji_reaction_get_account_ids (_tmp21_);
			_tmp23_ = _tmp22_;
			_tmp24_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp23_);
			_tmp25_ = _tmp24_;
			_tmp12_ = _tmp25_ > 0;
			_g_object_unref0 (_tmp21_);
		} else {
			_tmp12_ = FALSE;
		}
		res = _tmp12_;
	}
	result = res;
	_g_object_unref0 (reactions);
	return result;
}

static Block101Data*
block101_data_ref (Block101Data* _data101_)
{
	g_atomic_int_inc (&_data101_->_ref_count_);
	return _data101_;
}

static void
block101_data_unref (void * _userdata_)
{
	Block101Data* _data101_;
	_data101_ = (Block101Data*) _userdata_;
	if (g_atomic_int_dec_and_test (&_data101_->_ref_count_)) {
		TubaWidgetsStatus* self;
		self = _data101_->self;
		_g_object_unref0 (_data101_->status);
		_g_object_unref0 (self);
		g_slice_free (Block101Data, _data101_);
	}
}

static gboolean
______lambda125_ (Block101Data* _data101_,
                  TubaAPIMention* mention)
{
	TubaWidgetsStatus* self;
	const gchar* _tmp0_;
	const gchar* _tmp1_;
	TubaAPIStatus* _tmp2_;
	TubaAPIStatus* _tmp3_;
	const gchar* _tmp4_;
	const gchar* _tmp5_;
	gboolean result;
	self = _data101_->self;
	g_return_val_if_fail (mention != NULL, FALSE);
	_tmp0_ = tuba_api_mention_get_id (mention);
	_tmp1_ = _tmp0_;
	_tmp2_ = tuba_api_status_get_formal (_data101_->status);
	_tmp3_ = _tmp2_;
	_tmp4_ = tuba_api_status_get_in_reply_to_account_id (_tmp3_);
	_tmp5_ = _tmp4_;
	if (g_strcmp0 (_tmp1_, _tmp5_) == 0) {
		const gchar* _tmp6_;
		const gchar* _tmp7_;
		gchar* _tmp8_;
		_tmp6_ = tuba_api_mention_get_acct (mention);
		_tmp7_ = _tmp6_;
		_tmp8_ = g_strdup (_tmp7_);
		_g_free0 (self->priv->forced_kind_instigator_name);
		self->priv->forced_kind_instigator_name = _tmp8_;
		result = FALSE;
		_g_object_unref0 (mention);
		return result;
	}
	result = TRUE;
	_g_object_unref0 (mention);
	return result;
}

static gboolean
_______lambda125__gee_forall_func (gpointer g,
                                   gpointer self)
{
	gboolean result;
	result = ______lambda125_ (self, (TubaAPIMention*) g);
	return result;
}

TubaWidgetsStatus*
tuba_widgets_status_construct (GType object_type,
                               TubaAPIStatus* status)
{
	TubaWidgetsStatus * self = NULL;
	Block101Data* _data101_;
	TubaAPIStatus* _tmp0_;
	TubaAPIAccount* _tmp1_;
	TubaAPIAccount* _tmp2_;
	const gchar* _tmp3_;
	const gchar* _tmp4_;
	g_return_val_if_fail (status != NULL, NULL);
	_data101_ = g_slice_new0 (Block101Data);
	_data101_->_ref_count_ = 1;
	_tmp0_ = _g_object_ref0 (status);
	_g_object_unref0 (_data101_->status);
	_data101_->status = _tmp0_;
	_tmp1_ = tuba_api_status_get_account (_data101_->status);
	_tmp2_ = _tmp1_;
	self = (TubaWidgetsStatus*) g_object_new (object_type, "kind-instigator", _tmp2_, "status", _data101_->status, NULL);
	_data101_->self = g_object_ref (self);
	_tmp3_ = tuba_widgets_status_get_kind (self);
	_tmp4_ = _tmp3_;
	if (_tmp4_ == NULL) {
		TubaAPIStatus* _tmp5_;
		TubaAPIStatus* _tmp6_;
		_tmp5_ = tuba_api_status_get_reblog (_data101_->status);
		_tmp6_ = _tmp5_;
		if (_tmp6_ != NULL) {
			tuba_widgets_status_set_kind (self, TUBA_INSTANCE_ACCOUNT_KIND_REMOTE_REBLOG);
		} else {
			gboolean _tmp7_ = FALSE;
			const gchar* _tmp8_;
			const gchar* _tmp9_;
			_tmp8_ = tuba_api_status_get_in_reply_to_id (_data101_->status);
			_tmp9_ = _tmp8_;
			if (_tmp9_ != NULL) {
				_tmp7_ = TRUE;
			} else {
				const gchar* _tmp10_;
				const gchar* _tmp11_;
				_tmp10_ = tuba_api_status_get_in_reply_to_account_id (_data101_->status);
				_tmp11_ = _tmp10_;
				_tmp7_ = _tmp11_ != NULL;
			}
			if (_tmp7_) {
				gboolean _tmp12_ = FALSE;
				gboolean _tmp13_ = FALSE;
				TubaAPIStatus* _tmp14_;
				TubaAPIStatus* _tmp15_;
				const gchar* _tmp16_;
				const gchar* _tmp17_;
				_tmp14_ = tuba_api_status_get_formal (_data101_->status);
				_tmp15_ = _tmp14_;
				_tmp16_ = tuba_api_status_get_in_reply_to_account_id (_tmp15_);
				_tmp17_ = _tmp16_;
				if (_tmp17_ != NULL) {
					TubaAPIStatus* _tmp18_;
					TubaAPIStatus* _tmp19_;
					GeeArrayList* _tmp20_;
					GeeArrayList* _tmp21_;
					_tmp18_ = tuba_api_status_get_formal (_data101_->status);
					_tmp19_ = _tmp18_;
					_tmp20_ = tuba_api_status_get_mentions (_tmp19_);
					_tmp21_ = _tmp20_;
					_tmp13_ = _tmp21_ != NULL;
				} else {
					_tmp13_ = FALSE;
				}
				if (_tmp13_) {
					TubaAPIStatus* _tmp22_;
					TubaAPIStatus* _tmp23_;
					GeeArrayList* _tmp24_;
					GeeArrayList* _tmp25_;
					gint _tmp26_;
					gint _tmp27_;
					_tmp22_ = tuba_api_status_get_formal (_data101_->status);
					_tmp23_ = _tmp22_;
					_tmp24_ = tuba_api_status_get_mentions (_tmp23_);
					_tmp25_ = _tmp24_;
					_tmp26_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp25_);
					_tmp27_ = _tmp26_;
					_tmp12_ = _tmp27_ > 0;
				} else {
					_tmp12_ = FALSE;
				}
				if (_tmp12_) {
					TubaAPIStatus* _tmp28_;
					TubaAPIStatus* _tmp29_;
					GeeArrayList* _tmp30_;
					GeeArrayList* _tmp31_;
					_tmp28_ = tuba_api_status_get_formal (_data101_->status);
					_tmp29_ = _tmp28_;
					_tmp30_ = tuba_api_status_get_mentions (_tmp29_);
					_tmp31_ = _tmp30_;
					gee_abstract_collection_foreach ((GeeAbstractCollection*) _tmp31_, _______lambda125__gee_forall_func, _data101_);
				}
				tuba_widgets_status_set_kind (self, TUBA_INSTANCE_ACCOUNT_KIND_REPLY);
			}
		}
	}
	tuba_widgets_status_init_menu_button (self);
	block101_data_unref (_data101_);
	_data101_ = NULL;
	return self;
}

TubaWidgetsStatus*
tuba_widgets_status_new (TubaAPIStatus* status)
{
	return tuba_widgets_status_construct (TUBA_WIDGETS_TYPE_STATUS, status);
}

void
tuba_widgets_status_init_menu_button (TubaWidgetsStatus* self)
{
	GtkPopoverMenu* _tmp0_;
	GtkMenuButton* _tmp1_;
	GtkPopoverMenu* _tmp2_;
	GtkMenuButton* _tmp3_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->priv->_context_menu;
	if (_tmp0_ == NULL) {
		tuba_widgets_status_create_actions (self);
	}
	_tmp1_ = self->menu_button;
	_tmp2_ = self->priv->_context_menu;
	gtk_menu_button_set_popover (_tmp1_, (GtkPopover*) _tmp2_);
	_tmp3_ = self->menu_button;
	gtk_widget_set_visible ((GtkWidget*) _tmp3_, TRUE);
}

static void
_tuba_widgets_status_toggle_mute_conversation_g_simple_action_activate (GSimpleAction* _sender,
                                                                        GVariant* parameter,
                                                                        gpointer self)
{
	tuba_widgets_status_toggle_mute_conversation ((TubaWidgetsStatus*) self);
}

static void
_tuba_widgets_status_toggle_pinned_g_simple_action_activate (GSimpleAction* _sender,
                                                             GVariant* parameter,
                                                             gpointer self)
{
	tuba_widgets_status_toggle_pinned ((TubaWidgetsStatus*) self);
}

static GVariant*
_variant_new41 (gchar* value)
{
	return g_variant_ref_sink (g_variant_new_string (value));
}

static void
_tuba_widgets_status_change_quote_policy_g_simple_action_activate (GSimpleAction* _sender,
                                                                   GVariant* parameter,
                                                                   gpointer self)
{
	tuba_widgets_status_change_quote_policy ((TubaWidgetsStatus*) self, _sender, parameter);
}

static void
_tuba_widgets_status_edit_status_g_simple_action_activate (GSimpleAction* _sender,
                                                           GVariant* parameter,
                                                           gpointer self)
{
	tuba_widgets_status_edit_status ((TubaWidgetsStatus*) self);
}

static void
_tuba_widgets_status_delete_status_g_simple_action_activate (GSimpleAction* _sender,
                                                             GVariant* parameter,
                                                             gpointer self)
{
	tuba_widgets_status_delete_status ((TubaWidgetsStatus*) self);
}

static void
_tuba_widgets_status_translate_g_simple_action_activate (GSimpleAction* _sender,
                                                         GVariant* parameter,
                                                         gpointer self)
{
	tuba_widgets_status_translate ((TubaWidgetsStatus*) self);
}

static void
_tuba_widgets_status_revoke_quote_g_simple_action_activate (GSimpleAction* _sender,
                                                            GVariant* parameter,
                                                            gpointer self)
{
	tuba_widgets_status_revoke_quote ((TubaWidgetsStatus*) self);
}

void
tuba_widgets_status_create_actions (TubaWidgetsStatus* self)
{
	GSimpleAction* _tmp0_;
	GSimpleAction* _tmp1_;
	GSimpleActionGroup* _tmp2_;
	GSimpleAction* _tmp3_;
	GSimpleAction* _tmp4_;
	GSimpleAction* _tmp5_;
	GSimpleActionGroup* _tmp6_;
	GSimpleAction* _tmp7_;
	TubaAPIStatus* _tmp8_;
	TubaAPIStatus* _tmp9_;
	TubaAPIStatus* _tmp10_;
	TubaAPIStatus* _tmp11_;
	TubaAPIAccount* _tmp12_;
	TubaAPIAccount* _tmp13_;
	gboolean _tmp104_ = FALSE;
	gboolean _tmp105_ = FALSE;
	gboolean _tmp106_ = FALSE;
	TubaAPIStatus* _tmp107_;
	TubaAPIStatus* _tmp108_;
	TubaAPIStatus* _tmp109_;
	TubaAPIStatus* _tmp110_;
	TubaAPIQuote* _tmp111_;
	TubaAPIQuote* _tmp112_;
	g_return_if_fail (self != NULL);
	tuba_widgets_status_create_context_menu (self);
	_tmp0_ = g_simple_action_new ("mute-conversation", NULL);
	_g_object_unref0 (self->priv->mute_conversation_action);
	self->priv->mute_conversation_action = _tmp0_;
	_tmp1_ = self->priv->mute_conversation_action;
	g_signal_connect_object (_tmp1_, "activate", (GCallback) _tuba_widgets_status_toggle_mute_conversation_g_simple_action_activate, self, 0);
	_tmp2_ = self->priv->action_group;
	_tmp3_ = self->priv->mute_conversation_action;
	g_action_map_add_action ((GActionMap*) _tmp2_, (GAction*) _tmp3_);
	_tmp4_ = g_simple_action_new ("unmute-conversation", NULL);
	_g_object_unref0 (self->priv->unmute_conversation_action);
	self->priv->unmute_conversation_action = _tmp4_;
	_tmp5_ = self->priv->unmute_conversation_action;
	g_signal_connect_object (_tmp5_, "activate", (GCallback) _tuba_widgets_status_toggle_mute_conversation_g_simple_action_activate, self, 0);
	_tmp6_ = self->priv->action_group;
	_tmp7_ = self->priv->unmute_conversation_action;
	g_action_map_add_action ((GActionMap*) _tmp6_, (GAction*) _tmp7_);
	_tmp8_ = tuba_widgets_status_get_status (self);
	_tmp9_ = _tmp8_;
	_tmp10_ = tuba_api_status_get_formal (_tmp9_);
	_tmp11_ = _tmp10_;
	_tmp12_ = tuba_api_status_get_account (_tmp11_);
	_tmp13_ = _tmp12_;
	if (tuba_api_account_is_self (_tmp13_)) {
		TubaAPIStatus* _tmp14_;
		TubaAPIStatus* _tmp15_;
		TubaAPIStatus* _tmp16_;
		TubaAPIStatus* _tmp17_;
		const gchar* _tmp18_;
		const gchar* _tmp19_;
		GSimpleAction* edit_status_simple_action = NULL;
		GSimpleAction* _tmp67_;
		GSimpleAction* _tmp68_;
		GSimpleActionGroup* _tmp69_;
		GSimpleAction* _tmp70_;
		GSimpleAction* delete_status_simple_action = NULL;
		GSimpleAction* _tmp71_;
		GSimpleAction* _tmp72_;
		GSimpleActionGroup* _tmp73_;
		GSimpleAction* _tmp74_;
		_tmp14_ = tuba_widgets_status_get_status (self);
		_tmp15_ = _tmp14_;
		_tmp16_ = tuba_api_status_get_formal (_tmp15_);
		_tmp17_ = _tmp16_;
		_tmp18_ = tuba_api_status_get_visibility (_tmp17_);
		_tmp19_ = _tmp18_;
		if (g_strcmp0 (_tmp19_, "direct") != 0) {
			GSimpleAction* _tmp20_;
			GSimpleAction* _tmp21_;
			GSimpleAction* _tmp22_;
			GSimpleActionGroup* _tmp23_;
			GSimpleAction* _tmp24_;
			gboolean _tmp25_ = FALSE;
			gboolean _tmp26_ = FALSE;
			TubaAccountStore* _tmp27_;
			TubaInstanceAccount* _tmp28_;
			TubaInstanceAccount* _tmp29_;
			TubaAPIInstanceV2APIVersions* _tmp30_;
			TubaAPIInstanceV2APIVersions* _tmp31_;
			gint8 _tmp32_;
			gint8 _tmp33_;
			_tmp20_ = g_simple_action_new ("toggle-pinned", NULL);
			_g_object_unref0 (self->priv->toggle_pinned_simple_action);
			self->priv->toggle_pinned_simple_action = _tmp20_;
			_tmp21_ = self->priv->toggle_pinned_simple_action;
			g_signal_connect_object (_tmp21_, "activate", (GCallback) _tuba_widgets_status_toggle_pinned_g_simple_action_activate, self, 0);
			_tmp22_ = self->priv->toggle_pinned_simple_action;
			g_simple_action_set_enabled (_tmp22_, FALSE);
			_tmp23_ = self->priv->action_group;
			_tmp24_ = self->priv->toggle_pinned_simple_action;
			g_action_map_add_action ((GActionMap*) _tmp23_, (GAction*) _tmp24_);
			_tmp27_ = tuba_accounts;
			_tmp28_ = tuba_account_store_get_active (_tmp27_);
			_tmp29_ = _tmp28_;
			_tmp30_ = tuba_instance_account_get_tuba_api_versions (_tmp29_);
			_tmp31_ = _tmp30_;
			_tmp32_ = tuba_api_instance_v2_api_versions_get_mastodon (_tmp31_);
			_tmp33_ = _tmp32_;
			if (((gint) _tmp33_) >= 7) {
				gboolean _tmp34_ = FALSE;
				TubaAPIStatus* _tmp35_;
				TubaAPIStatus* _tmp36_;
				TubaAPIStatus* _tmp37_;
				TubaAPIStatus* _tmp38_;
				const gchar* _tmp39_;
				const gchar* _tmp40_;
				_tmp35_ = tuba_widgets_status_get_status (self);
				_tmp36_ = _tmp35_;
				_tmp37_ = tuba_api_status_get_formal (_tmp36_);
				_tmp38_ = _tmp37_;
				_tmp39_ = tuba_api_status_get_visibility (_tmp38_);
				_tmp40_ = _tmp39_;
				if (g_strcmp0 (_tmp40_, "public") == 0) {
					_tmp34_ = TRUE;
				} else {
					TubaAPIStatus* _tmp41_;
					TubaAPIStatus* _tmp42_;
					TubaAPIStatus* _tmp43_;
					TubaAPIStatus* _tmp44_;
					const gchar* _tmp45_;
					const gchar* _tmp46_;
					_tmp41_ = tuba_widgets_status_get_status (self);
					_tmp42_ = _tmp41_;
					_tmp43_ = tuba_api_status_get_formal (_tmp42_);
					_tmp44_ = _tmp43_;
					_tmp45_ = tuba_api_status_get_visibility (_tmp44_);
					_tmp46_ = _tmp45_;
					_tmp34_ = g_strcmp0 (_tmp46_, "unlisted") == 0;
				}
				_tmp26_ = _tmp34_;
			} else {
				_tmp26_ = FALSE;
			}
			if (_tmp26_) {
				TubaAPIStatus* _tmp47_;
				TubaAPIStatus* _tmp48_;
				TubaAPIStatus* _tmp49_;
				TubaAPIStatus* _tmp50_;
				TubaAPIStatusQuoteApproval* _tmp51_;
				TubaAPIStatusQuoteApproval* _tmp52_;
				_tmp47_ = tuba_widgets_status_get_status (self);
				_tmp48_ = _tmp47_;
				_tmp49_ = tuba_api_status_get_formal (_tmp48_);
				_tmp50_ = _tmp49_;
				_tmp51_ = tuba_api_status_get_quote_approval (_tmp50_);
				_tmp52_ = _tmp51_;
				_tmp25_ = _tmp52_ != NULL;
			} else {
				_tmp25_ = FALSE;
			}
			if (_tmp25_) {
				const GVariantType* _tmp53_;
				TubaAPIStatus* _tmp54_;
				TubaAPIStatus* _tmp55_;
				TubaAPIStatus* _tmp56_;
				TubaAPIStatus* _tmp57_;
				TubaAPIStatusQuoteApproval* _tmp58_;
				TubaAPIStatusQuoteApproval* _tmp59_;
				gchar* _tmp60_;
				gchar* _tmp61_;
				GVariant* _tmp62_;
				GSimpleAction* _tmp63_;
				GSimpleAction* _tmp64_;
				GSimpleActionGroup* _tmp65_;
				GSimpleAction* _tmp66_;
				_tmp53_ = G_VARIANT_TYPE_STRING;
				_tmp54_ = tuba_widgets_status_get_status (self);
				_tmp55_ = _tmp54_;
				_tmp56_ = tuba_api_status_get_formal (_tmp55_);
				_tmp57_ = _tmp56_;
				_tmp58_ = tuba_api_status_get_quote_approval (_tmp57_);
				_tmp59_ = _tmp58_;
				_tmp60_ = tuba_api_status_quote_policy_to_string (tuba_api_status_quote_approval_to_quote_policy (_tmp59_));
				_tmp61_ = _tmp60_;
				_tmp62_ = _variant_new41 (_tmp61_);
				_tmp63_ = g_simple_action_new_stateful ("change-quote-policy", _tmp53_, _tmp62_);
				_g_object_unref0 (self->priv->change_quote_policy_action);
				self->priv->change_quote_policy_action = _tmp63_;
				_g_variant_unref0 (_tmp62_);
				_g_free0 (_tmp61_);
				_tmp64_ = self->priv->change_quote_policy_action;
				g_signal_connect_object (_tmp64_, "activate", (GCallback) _tuba_widgets_status_change_quote_policy_g_simple_action_activate, self, 0);
				_tmp65_ = self->priv->action_group;
				_tmp66_ = self->priv->change_quote_policy_action;
				g_action_map_add_action ((GActionMap*) _tmp65_, (GAction*) _tmp66_);
			}
		}
		_tmp67_ = g_simple_action_new ("edit-status", NULL);
		edit_status_simple_action = _tmp67_;
		_tmp68_ = edit_status_simple_action;
		g_signal_connect_object (_tmp68_, "activate", (GCallback) _tuba_widgets_status_edit_status_g_simple_action_activate, self, 0);
		_tmp69_ = self->priv->action_group;
		_tmp70_ = edit_status_simple_action;
		g_action_map_add_action ((GActionMap*) _tmp69_, (GAction*) _tmp70_);
		_tmp71_ = g_simple_action_new ("delete-status", NULL);
		delete_status_simple_action = _tmp71_;
		_tmp72_ = delete_status_simple_action;
		g_signal_connect_object (_tmp72_, "activate", (GCallback) _tuba_widgets_status_delete_status_g_simple_action_activate, self, 0);
		_tmp73_ = self->priv->action_group;
		_tmp74_ = delete_status_simple_action;
		g_action_map_add_action ((GActionMap*) _tmp73_, (GAction*) _tmp74_);
		_g_object_unref0 (delete_status_simple_action);
		_g_object_unref0 (edit_status_simple_action);
	} else {
		gboolean _tmp75_ = FALSE;
		gboolean _tmp76_ = FALSE;
		TubaAccountStore* _tmp77_;
		TubaInstanceAccount* _tmp78_;
		TubaInstanceAccount* _tmp79_;
		TubaAPIInstance* _tmp80_;
		TubaAPIInstance* _tmp81_;
		_tmp77_ = tuba_accounts;
		_tmp78_ = tuba_account_store_get_active (_tmp77_);
		_tmp79_ = _tmp78_;
		_tmp80_ = tuba_instance_account_get_instance_info (_tmp79_);
		_tmp81_ = _tmp80_;
		if (_tmp81_ != NULL) {
			TubaAccountStore* _tmp82_;
			TubaInstanceAccount* _tmp83_;
			TubaInstanceAccount* _tmp84_;
			TubaAPIInstance* _tmp85_;
			TubaAPIInstance* _tmp86_;
			gboolean _tmp87_;
			gboolean _tmp88_;
			_tmp82_ = tuba_accounts;
			_tmp83_ = tuba_account_store_get_active (_tmp82_);
			_tmp84_ = _tmp83_;
			_tmp85_ = tuba_instance_account_get_instance_info (_tmp84_);
			_tmp86_ = _tmp85_;
			_tmp87_ = tuba_api_instance_get_tuba_can_translate (_tmp86_);
			_tmp88_ = _tmp87_;
			_tmp76_ = _tmp88_;
		} else {
			_tmp76_ = FALSE;
		}
		if (_tmp76_) {
			_tmp75_ = TRUE;
		} else {
			TubaAccountStore* _tmp89_;
			TubaInstanceAccount* _tmp90_;
			TubaInstanceAccount* _tmp91_;
			TubaInstanceAccountInstanceFeatures _tmp92_;
			TubaInstanceAccountInstanceFeatures _tmp93_;
			_tmp89_ = tuba_accounts;
			_tmp90_ = tuba_account_store_get_active (_tmp89_);
			_tmp91_ = _tmp90_;
			_tmp92_ = tuba_instance_account_get_tuba_instance_features (_tmp91_);
			_tmp93_ = _tmp92_;
			_tmp75_ = (_tmp93_ & TUBA_INSTANCE_ACCOUNT_INSTANCE_FEATURES_TRANSLATION) == TUBA_INSTANCE_ACCOUNT_INSTANCE_FEATURES_TRANSLATION;
		}
		if (_tmp75_) {
			GSimpleAction* _tmp94_;
			GSimpleAction* _tmp95_;
			GSimpleAction* _tmp96_;
			GSimpleAction* _tmp97_;
			GSimpleAction* _tmp98_;
			GSimpleAction* _tmp99_;
			GSimpleActionGroup* _tmp100_;
			GSimpleAction* _tmp101_;
			GSimpleActionGroup* _tmp102_;
			GSimpleAction* _tmp103_;
			_tmp94_ = g_simple_action_new ("translate", NULL);
			_g_object_unref0 (self->priv->translate_simple_action);
			self->priv->translate_simple_action = _tmp94_;
			_tmp95_ = self->priv->translate_simple_action;
			g_signal_connect_object (_tmp95_, "activate", (GCallback) _tuba_widgets_status_translate_g_simple_action_activate, self, 0);
			_tmp96_ = self->priv->translate_simple_action;
			g_simple_action_set_enabled (_tmp96_, TRUE);
			_tmp97_ = g_simple_action_new ("show-original", NULL);
			_g_object_unref0 (self->priv->show_original_simple_action);
			self->priv->show_original_simple_action = _tmp97_;
			_tmp98_ = self->priv->show_original_simple_action;
			g_signal_connect_object (_tmp98_, "activate", (GCallback) _tuba_widgets_status_translate_g_simple_action_activate, self, 0);
			_tmp99_ = self->priv->show_original_simple_action;
			g_simple_action_set_enabled (_tmp99_, FALSE);
			_tmp100_ = self->priv->action_group;
			_tmp101_ = self->priv->translate_simple_action;
			g_action_map_add_action ((GActionMap*) _tmp100_, (GAction*) _tmp101_);
			_tmp102_ = self->priv->action_group;
			_tmp103_ = self->priv->show_original_simple_action;
			g_action_map_add_action ((GActionMap*) _tmp102_, (GAction*) _tmp103_);
		}
	}
	_tmp107_ = tuba_widgets_status_get_status (self);
	_tmp108_ = _tmp107_;
	_tmp109_ = tuba_api_status_get_formal (_tmp108_);
	_tmp110_ = _tmp109_;
	_tmp111_ = tuba_api_status_get_quote (_tmp110_);
	_tmp112_ = _tmp111_;
	if (_tmp112_ != NULL) {
		TubaAPIStatus* _tmp113_;
		TubaAPIStatus* _tmp114_;
		TubaAPIStatus* _tmp115_;
		TubaAPIStatus* _tmp116_;
		TubaAPIQuote* _tmp117_;
		TubaAPIQuote* _tmp118_;
		gboolean _tmp119_;
		gboolean _tmp120_;
		_tmp113_ = tuba_widgets_status_get_status (self);
		_tmp114_ = _tmp113_;
		_tmp115_ = tuba_api_status_get_formal (_tmp114_);
		_tmp116_ = _tmp115_;
		_tmp117_ = tuba_api_status_get_quote (_tmp116_);
		_tmp118_ = _tmp117_;
		_tmp119_ = tuba_api_quote_get_tuba_has_quote (_tmp118_);
		_tmp120_ = _tmp119_;
		_tmp106_ = _tmp120_;
	} else {
		_tmp106_ = FALSE;
	}
	if (_tmp106_) {
		TubaAccountStore* _tmp121_;
		TubaInstanceAccount* _tmp122_;
		TubaInstanceAccount* _tmp123_;
		TubaAPIInstanceV2APIVersions* _tmp124_;
		TubaAPIInstanceV2APIVersions* _tmp125_;
		gint8 _tmp126_;
		gint8 _tmp127_;
		_tmp121_ = tuba_accounts;
		_tmp122_ = tuba_account_store_get_active (_tmp121_);
		_tmp123_ = _tmp122_;
		_tmp124_ = tuba_instance_account_get_tuba_api_versions (_tmp123_);
		_tmp125_ = _tmp124_;
		_tmp126_ = tuba_api_instance_v2_api_versions_get_mastodon (_tmp125_);
		_tmp127_ = _tmp126_;
		_tmp105_ = ((gint) _tmp127_) >= 7;
	} else {
		_tmp105_ = FALSE;
	}
	if (_tmp105_) {
		TubaAPIStatus* _tmp128_;
		TubaAPIStatus* _tmp129_;
		TubaAPIStatus* _tmp130_;
		TubaAPIStatus* _tmp131_;
		TubaAPIQuote* _tmp132_;
		TubaAPIQuote* _tmp133_;
		TubaAPIAccount* _tmp134_;
		TubaAPIAccount* _tmp135_;
		_tmp128_ = tuba_widgets_status_get_status (self);
		_tmp129_ = _tmp128_;
		_tmp130_ = tuba_api_status_get_formal (_tmp129_);
		_tmp131_ = _tmp130_;
		_tmp132_ = tuba_api_status_get_quote (_tmp131_);
		_tmp133_ = _tmp132_;
		_tmp134_ = tuba_api_status_get_account ((TubaAPIStatus*) _tmp133_);
		_tmp135_ = _tmp134_;
		_tmp104_ = tuba_api_account_is_self (_tmp135_);
	} else {
		_tmp104_ = FALSE;
	}
	if (_tmp104_) {
		GSimpleAction* revoke_quote_simple_action = NULL;
		GSimpleAction* _tmp136_;
		GSimpleAction* _tmp137_;
		GSimpleActionGroup* _tmp138_;
		GSimpleAction* _tmp139_;
		_tmp136_ = g_simple_action_new ("revoke-quote", NULL);
		revoke_quote_simple_action = _tmp136_;
		_tmp137_ = revoke_quote_simple_action;
		g_signal_connect_object (_tmp137_, "activate", (GCallback) _tuba_widgets_status_revoke_quote_g_simple_action_activate, self, 0);
		_tmp138_ = self->priv->action_group;
		_tmp139_ = revoke_quote_simple_action;
		g_action_map_add_action ((GActionMap*) _tmp138_, (GAction*) _tmp139_);
		_g_object_unref0 (revoke_quote_simple_action);
	}
	tuba_widgets_status_update_mute_conversation_actions_enabled_status (self);
}

static GVariant*
_variant_new42 (const gchar* value)
{
	return g_variant_ref_sink (g_variant_new_string (value));
}

static GVariant*
_variant_new43 (const gchar* value)
{
	return g_variant_ref_sink (g_variant_new_string (value));
}

static GVariant*
_variant_new44 (const gchar* value)
{
	return g_variant_ref_sink (g_variant_new_string (value));
}

static GVariant*
_variant_new45 (const gchar* value)
{
	return g_variant_ref_sink (g_variant_new_string (value));
}

static GVariant*
_variant_new46 (const gchar* value)
{
	return g_variant_ref_sink (g_variant_new_string (value));
}

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 GVariant*
_variant_new47 (const gchar* value)
{
	return g_variant_ref_sink (g_variant_new_string (value));
}

static GVariant*
_variant_new48 (const gchar* value)
{
	return g_variant_ref_sink (g_variant_new_string (value));
}

static GVariant*
_variant_new49 (const gchar* value)
{
	return g_variant_ref_sink (g_variant_new_string (value));
}

void
tuba_widgets_status_create_context_menu (TubaWidgetsStatus* self)
{
	GMenu* menu_model = NULL;
	GMenu* _tmp0_;
	GMenu* _tmp1_;
	GMenu* _tmp2_;
	GMenuItem* stats_menu_item = NULL;
	GMenuItem* _tmp3_;
	GMenuItem* _tmp4_;
	GVariant* _tmp5_;
	GMenu* _tmp6_;
	GMenuItem* _tmp7_;
	GMenuItem* edit_history_menu_item = NULL;
	GMenuItem* _tmp8_;
	GMenuItem* _tmp9_;
	GVariant* _tmp10_;
	GMenu* _tmp11_;
	GMenuItem* _tmp12_;
	GMenuItem* mute_menu_item = NULL;
	GMenuItem* _tmp13_;
	GMenuItem* _tmp14_;
	GVariant* _tmp15_;
	GMenuItem* unmute_menu_item = NULL;
	GMenuItem* _tmp16_;
	GMenuItem* _tmp17_;
	GVariant* _tmp18_;
	TubaAPIStatus* _tmp19_;
	TubaAPIStatus* _tmp20_;
	TubaAPIStatus* _tmp21_;
	TubaAPIStatus* _tmp22_;
	TubaAPIAccount* _tmp23_;
	TubaAPIAccount* _tmp24_;
	GMenu* _tmp168_;
	GtkPopoverMenu* _tmp169_;
	GtkPopoverMenu* _tmp170_;
	g_return_if_fail (self != NULL);
	_tmp0_ = g_menu_new ();
	menu_model = _tmp0_;
	_tmp1_ = menu_model;
	g_menu_append (_tmp1_, _ ("Open in Browser"), "status.open-in-browser");
	_tmp2_ = menu_model;
	g_menu_append (_tmp2_, _ ("Copy URL"), "status.copy-url");
	_tmp3_ = g_menu_item_new (_ ("View Stats"), "status.status-stats");
	stats_menu_item = _tmp3_;
	_tmp4_ = stats_menu_item;
	_tmp5_ = _variant_new42 ("action-disabled");
	g_menu_item_set_attribute_value (_tmp4_, "hidden-when", _tmp5_);
	_g_variant_unref0 (_tmp5_);
	_tmp6_ = menu_model;
	_tmp7_ = stats_menu_item;
	g_menu_append_item (_tmp6_, _tmp7_);
	_tmp8_ = g_menu_item_new (_ ("View Edit History"), "status.edit-history");
	edit_history_menu_item = _tmp8_;
	_tmp9_ = edit_history_menu_item;
	_tmp10_ = _variant_new43 ("action-disabled");
	g_menu_item_set_attribute_value (_tmp9_, "hidden-when", _tmp10_);
	_g_variant_unref0 (_tmp10_);
	_tmp11_ = menu_model;
	_tmp12_ = edit_history_menu_item;
	g_menu_append_item (_tmp11_, _tmp12_);
	_tmp13_ = g_menu_item_new (_ ("Mute"), "status.mute-conversation");
	mute_menu_item = _tmp13_;
	_tmp14_ = mute_menu_item;
	_tmp15_ = _variant_new44 ("action-disabled");
	g_menu_item_set_attribute_value (_tmp14_, "hidden-when", _tmp15_);
	_g_variant_unref0 (_tmp15_);
	_tmp16_ = g_menu_item_new (_ ("Unmute"), "status.unmute-conversation");
	unmute_menu_item = _tmp16_;
	_tmp17_ = unmute_menu_item;
	_tmp18_ = _variant_new45 ("action-disabled");
	g_menu_item_set_attribute_value (_tmp17_, "hidden-when", _tmp18_);
	_g_variant_unref0 (_tmp18_);
	_tmp19_ = tuba_widgets_status_get_status (self);
	_tmp20_ = _tmp19_;
	_tmp21_ = tuba_api_status_get_formal (_tmp20_);
	_tmp22_ = _tmp21_;
	_tmp23_ = tuba_api_status_get_account (_tmp22_);
	_tmp24_ = _tmp23_;
	if (tuba_api_account_is_self (_tmp24_)) {
		GMenuItem* _tmp25_;
		GMenuItem* _tmp26_;
		GVariant* _tmp27_;
		GMenu* _tmp28_;
		GMenuItem* _tmp29_;
		GMenu* _tmp30_;
		GMenuItem* _tmp31_;
		GMenu* _tmp32_;
		GMenuItem* _tmp33_;
		gboolean _tmp34_ = FALSE;
		gboolean _tmp35_ = FALSE;
		TubaAccountStore* _tmp36_;
		TubaInstanceAccount* _tmp37_;
		TubaInstanceAccount* _tmp38_;
		TubaAPIInstanceV2APIVersions* _tmp39_;
		TubaAPIInstanceV2APIVersions* _tmp40_;
		gint8 _tmp41_;
		gint8 _tmp42_;
		GMenu* _tmp89_;
		GMenu* _tmp90_;
		_tmp25_ = g_menu_item_new (_ ("Pin"), "status.toggle-pinned");
		_g_object_unref0 (self->priv->pin_menu_item);
		self->priv->pin_menu_item = _tmp25_;
		tuba_widgets_status_update_toggle_pinned_label (self);
		_tmp26_ = self->priv->pin_menu_item;
		_tmp27_ = _variant_new46 ("action-disabled");
		g_menu_item_set_attribute_value (_tmp26_, "hidden-when", _tmp27_);
		_g_variant_unref0 (_tmp27_);
		_tmp28_ = menu_model;
		_tmp29_ = self->priv->pin_menu_item;
		g_menu_append_item (_tmp28_, _tmp29_);
		_tmp30_ = menu_model;
		_tmp31_ = mute_menu_item;
		g_menu_append_item (_tmp30_, _tmp31_);
		_tmp32_ = menu_model;
		_tmp33_ = unmute_menu_item;
		g_menu_append_item (_tmp32_, _tmp33_);
		_tmp36_ = tuba_accounts;
		_tmp37_ = tuba_account_store_get_active (_tmp36_);
		_tmp38_ = _tmp37_;
		_tmp39_ = tuba_instance_account_get_tuba_api_versions (_tmp38_);
		_tmp40_ = _tmp39_;
		_tmp41_ = tuba_api_instance_v2_api_versions_get_mastodon (_tmp40_);
		_tmp42_ = _tmp41_;
		if (((gint) _tmp42_) >= 7) {
			gboolean _tmp43_ = FALSE;
			TubaAPIStatus* _tmp44_;
			TubaAPIStatus* _tmp45_;
			TubaAPIStatus* _tmp46_;
			TubaAPIStatus* _tmp47_;
			const gchar* _tmp48_;
			const gchar* _tmp49_;
			_tmp44_ = tuba_widgets_status_get_status (self);
			_tmp45_ = _tmp44_;
			_tmp46_ = tuba_api_status_get_formal (_tmp45_);
			_tmp47_ = _tmp46_;
			_tmp48_ = tuba_api_status_get_visibility (_tmp47_);
			_tmp49_ = _tmp48_;
			if (g_strcmp0 (_tmp49_, "public") == 0) {
				_tmp43_ = TRUE;
			} else {
				TubaAPIStatus* _tmp50_;
				TubaAPIStatus* _tmp51_;
				TubaAPIStatus* _tmp52_;
				TubaAPIStatus* _tmp53_;
				const gchar* _tmp54_;
				const gchar* _tmp55_;
				_tmp50_ = tuba_widgets_status_get_status (self);
				_tmp51_ = _tmp50_;
				_tmp52_ = tuba_api_status_get_formal (_tmp51_);
				_tmp53_ = _tmp52_;
				_tmp54_ = tuba_api_status_get_visibility (_tmp53_);
				_tmp55_ = _tmp54_;
				_tmp43_ = g_strcmp0 (_tmp55_, "unlisted") == 0;
			}
			_tmp35_ = _tmp43_;
		} else {
			_tmp35_ = FALSE;
		}
		if (_tmp35_) {
			TubaAPIStatus* _tmp56_;
			TubaAPIStatus* _tmp57_;
			TubaAPIStatus* _tmp58_;
			TubaAPIStatus* _tmp59_;
			TubaAPIStatusQuoteApproval* _tmp60_;
			TubaAPIStatusQuoteApproval* _tmp61_;
			_tmp56_ = tuba_widgets_status_get_status (self);
			_tmp57_ = _tmp56_;
			_tmp58_ = tuba_api_status_get_formal (_tmp57_);
			_tmp59_ = _tmp58_;
			_tmp60_ = tuba_api_status_get_quote_approval (_tmp59_);
			_tmp61_ = _tmp60_;
			_tmp34_ = _tmp61_ != NULL;
		} else {
			_tmp34_ = FALSE;
		}
		if (_tmp34_) {
			GMenu* quote_policy_submenu = NULL;
			GMenu* _tmp62_;
			GMenu* _tmp63_;
			gchar* _tmp64_;
			gchar* _tmp65_;
			gchar* _tmp66_;
			gchar* _tmp67_;
			const gchar* _tmp68_;
			gchar* _tmp69_;
			gchar* _tmp70_;
			GMenu* _tmp71_;
			gchar* _tmp72_;
			gchar* _tmp73_;
			gchar* _tmp74_;
			gchar* _tmp75_;
			const gchar* _tmp76_;
			gchar* _tmp77_;
			gchar* _tmp78_;
			GMenu* _tmp79_;
			gchar* _tmp80_;
			gchar* _tmp81_;
			gchar* _tmp82_;
			gchar* _tmp83_;
			const gchar* _tmp84_;
			gchar* _tmp85_;
			gchar* _tmp86_;
			GMenu* _tmp87_;
			GMenu* _tmp88_;
			_tmp62_ = g_menu_new ();
			quote_policy_submenu = _tmp62_;
			_tmp63_ = quote_policy_submenu;
			_tmp64_ = tuba_api_status_quote_policy_to_title (TUBA_API_STATUS_QUOTE_POLICY_PUBLIC);
			_tmp65_ = _tmp64_;
			_tmp66_ = tuba_api_status_quote_policy_to_string (TUBA_API_STATUS_QUOTE_POLICY_PUBLIC);
			_tmp67_ = _tmp66_;
			_tmp68_ = string_to_string (_tmp67_);
			_tmp69_ = g_strconcat ("status.change-quote-policy('", _tmp68_, "')", NULL);
			_tmp70_ = _tmp69_;
			g_menu_append (_tmp63_, _tmp65_, _tmp70_);
			_g_free0 (_tmp70_);
			_g_free0 (_tmp67_);
			_g_free0 (_tmp65_);
			_tmp71_ = quote_policy_submenu;
			_tmp72_ = tuba_api_status_quote_policy_to_title (TUBA_API_STATUS_QUOTE_POLICY_FOLLOWERS);
			_tmp73_ = _tmp72_;
			_tmp74_ = tuba_api_status_quote_policy_to_string (TUBA_API_STATUS_QUOTE_POLICY_FOLLOWERS);
			_tmp75_ = _tmp74_;
			_tmp76_ = string_to_string (_tmp75_);
			_tmp77_ = g_strconcat ("status.change-quote-policy('", _tmp76_, "')", NULL);
			_tmp78_ = _tmp77_;
			g_menu_append (_tmp71_, _tmp73_, _tmp78_);
			_g_free0 (_tmp78_);
			_g_free0 (_tmp75_);
			_g_free0 (_tmp73_);
			_tmp79_ = quote_policy_submenu;
			_tmp80_ = tuba_api_status_quote_policy_to_title (TUBA_API_STATUS_QUOTE_POLICY_NOBODY);
			_tmp81_ = _tmp80_;
			_tmp82_ = tuba_api_status_quote_policy_to_string (TUBA_API_STATUS_QUOTE_POLICY_NOBODY);
			_tmp83_ = _tmp82_;
			_tmp84_ = string_to_string (_tmp83_);
			_tmp85_ = g_strconcat ("status.change-quote-policy('", _tmp84_, "')", NULL);
			_tmp86_ = _tmp85_;
			g_menu_append (_tmp79_, _tmp81_, _tmp86_);
			_g_free0 (_tmp86_);
			_g_free0 (_tmp83_);
			_g_free0 (_tmp81_);
			_tmp87_ = menu_model;
			_tmp88_ = quote_policy_submenu;
			g_menu_append_submenu (_tmp87_, _ ("Quote Policy"), (GMenuModel*) _tmp88_);
			_g_object_unref0 (quote_policy_submenu);
		}
		_tmp89_ = menu_model;
		g_menu_append (_tmp89_, _ ("Edit"), "status.edit-status");
		_tmp90_ = menu_model;
		g_menu_append (_tmp90_, _ ("Delete"), "status.delete-status");
	} else {
		GMenu* _tmp91_;
		GMenuItem* _tmp92_;
		GMenu* _tmp93_;
		GMenuItem* _tmp94_;
		gboolean _tmp95_ = FALSE;
		gboolean _tmp96_ = FALSE;
		gboolean _tmp97_ = FALSE;
		gboolean _tmp98_ = FALSE;
		gboolean _tmp99_ = FALSE;
		gboolean _tmp100_ = FALSE;
		TubaAccountStore* _tmp101_;
		TubaInstanceAccount* _tmp102_;
		TubaInstanceAccount* _tmp103_;
		TubaAPIInstance* _tmp104_;
		TubaAPIInstance* _tmp105_;
		GMenuItem* revoke_quote_menu_item = NULL;
		GMenuItem* _tmp162_;
		GMenuItem* _tmp163_;
		GVariant* _tmp164_;
		GMenu* _tmp165_;
		GMenuItem* _tmp166_;
		GMenu* _tmp167_;
		_tmp91_ = menu_model;
		_tmp92_ = mute_menu_item;
		g_menu_append_item (_tmp91_, _tmp92_);
		_tmp93_ = menu_model;
		_tmp94_ = unmute_menu_item;
		g_menu_append_item (_tmp93_, _tmp94_);
		_tmp101_ = tuba_accounts;
		_tmp102_ = tuba_account_store_get_active (_tmp101_);
		_tmp103_ = _tmp102_;
		_tmp104_ = tuba_instance_account_get_instance_info (_tmp103_);
		_tmp105_ = _tmp104_;
		if (_tmp105_ != NULL) {
			TubaAccountStore* _tmp106_;
			TubaInstanceAccount* _tmp107_;
			TubaInstanceAccount* _tmp108_;
			TubaAPIInstance* _tmp109_;
			TubaAPIInstance* _tmp110_;
			gboolean _tmp111_;
			gboolean _tmp112_;
			_tmp106_ = tuba_accounts;
			_tmp107_ = tuba_account_store_get_active (_tmp106_);
			_tmp108_ = _tmp107_;
			_tmp109_ = tuba_instance_account_get_instance_info (_tmp108_);
			_tmp110_ = _tmp109_;
			_tmp111_ = tuba_api_instance_get_tuba_can_translate (_tmp110_);
			_tmp112_ = _tmp111_;
			_tmp100_ = _tmp112_;
		} else {
			_tmp100_ = FALSE;
		}
		if (_tmp100_) {
			_tmp99_ = TRUE;
		} else {
			TubaAccountStore* _tmp113_;
			TubaInstanceAccount* _tmp114_;
			TubaInstanceAccount* _tmp115_;
			TubaInstanceAccountInstanceFeatures _tmp116_;
			TubaInstanceAccountInstanceFeatures _tmp117_;
			_tmp113_ = tuba_accounts;
			_tmp114_ = tuba_account_store_get_active (_tmp113_);
			_tmp115_ = _tmp114_;
			_tmp116_ = tuba_instance_account_get_tuba_instance_features (_tmp115_);
			_tmp117_ = _tmp116_;
			_tmp99_ = (_tmp117_ & TUBA_INSTANCE_ACCOUNT_INSTANCE_FEATURES_TRANSLATION) == TUBA_INSTANCE_ACCOUNT_INSTANCE_FEATURES_TRANSLATION;
		}
		if (_tmp99_) {
			TubaAPIStatus* _tmp118_;
			TubaAPIStatus* _tmp119_;
			TubaAPIStatus* _tmp120_;
			TubaAPIStatus* _tmp121_;
			gboolean _tmp122_;
			gboolean _tmp123_;
			_tmp118_ = tuba_widgets_status_get_status (self);
			_tmp119_ = _tmp118_;
			_tmp120_ = tuba_api_status_get_formal (_tmp119_);
			_tmp121_ = _tmp120_;
			_tmp122_ = tuba_api_status_get_tuba_translatable (_tmp121_);
			_tmp123_ = _tmp122_;
			_tmp98_ = _tmp123_;
		} else {
			_tmp98_ = FALSE;
		}
		if (_tmp98_) {
			gboolean _tmp124_ = FALSE;
			TubaAPIStatus* _tmp125_;
			TubaAPIStatus* _tmp126_;
			TubaAPIStatus* _tmp127_;
			TubaAPIStatus* _tmp128_;
			const gchar* _tmp129_;
			const gchar* _tmp130_;
			_tmp125_ = tuba_widgets_status_get_status (self);
			_tmp126_ = _tmp125_;
			_tmp127_ = tuba_api_status_get_formal (_tmp126_);
			_tmp128_ = _tmp127_;
			_tmp129_ = tuba_api_status_get_visibility (_tmp128_);
			_tmp130_ = _tmp129_;
			if (g_strcmp0 (_tmp130_, "public") == 0) {
				_tmp124_ = TRUE;
			} else {
				TubaAPIStatus* _tmp131_;
				TubaAPIStatus* _tmp132_;
				TubaAPIStatus* _tmp133_;
				TubaAPIStatus* _tmp134_;
				const gchar* _tmp135_;
				const gchar* _tmp136_;
				_tmp131_ = tuba_widgets_status_get_status (self);
				_tmp132_ = _tmp131_;
				_tmp133_ = tuba_api_status_get_formal (_tmp132_);
				_tmp134_ = _tmp133_;
				_tmp135_ = tuba_api_status_get_visibility (_tmp134_);
				_tmp136_ = _tmp135_;
				_tmp124_ = g_strcmp0 (_tmp136_, "unlisted") == 0;
			}
			_tmp97_ = _tmp124_;
		} else {
			_tmp97_ = FALSE;
		}
		if (_tmp97_) {
			const gchar* _tmp137_;
			TubaAPIStatus* _tmp138_;
			TubaAPIStatus* _tmp139_;
			TubaAPIStatus* _tmp140_;
			TubaAPIStatus* _tmp141_;
			const gchar* _tmp142_;
			const gchar* _tmp143_;
			_tmp137_ = tuba_default_locale;
			_tmp138_ = tuba_widgets_status_get_status (self);
			_tmp139_ = _tmp138_;
			_tmp140_ = tuba_api_status_get_formal (_tmp139_);
			_tmp141_ = _tmp140_;
			_tmp142_ = tuba_api_status_get_language (_tmp141_);
			_tmp143_ = _tmp142_;
			_tmp96_ = g_strcmp0 (_tmp137_, _tmp143_) != 0;
		} else {
			_tmp96_ = FALSE;
		}
		if (_tmp96_) {
			gboolean _tmp144_ = FALSE;
			const gchar* _tmp145_;
			_tmp145_ = tuba_default_locale;
			if (g_strcmp0 (_tmp145_, "en-US") != 0) {
				_tmp144_ = TRUE;
			} else {
				TubaAPIStatus* _tmp146_;
				TubaAPIStatus* _tmp147_;
				TubaAPIStatus* _tmp148_;
				TubaAPIStatus* _tmp149_;
				const gchar* _tmp150_;
				const gchar* _tmp151_;
				_tmp146_ = tuba_widgets_status_get_status (self);
				_tmp147_ = _tmp146_;
				_tmp148_ = tuba_api_status_get_formal (_tmp147_);
				_tmp149_ = _tmp148_;
				_tmp150_ = tuba_api_status_get_language (_tmp149_);
				_tmp151_ = _tmp150_;
				_tmp144_ = g_strcmp0 (_tmp151_, "en") != 0;
			}
			_tmp95_ = _tmp144_;
		} else {
			_tmp95_ = FALSE;
		}
		if (_tmp95_) {
			GMenuItem* translate_menu_item = NULL;
			GMenuItem* _tmp152_;
			GMenuItem* _tmp153_;
			GVariant* _tmp154_;
			GMenuItem* show_original_menu_item = NULL;
			GMenuItem* _tmp155_;
			GMenuItem* _tmp156_;
			GVariant* _tmp157_;
			GMenu* _tmp158_;
			GMenuItem* _tmp159_;
			GMenu* _tmp160_;
			GMenuItem* _tmp161_;
			_tmp152_ = g_menu_item_new (_ ("Translate"), "status.translate");
			translate_menu_item = _tmp152_;
			_tmp153_ = translate_menu_item;
			_tmp154_ = _variant_new47 ("action-disabled");
			g_menu_item_set_attribute_value (_tmp153_, "hidden-when", _tmp154_);
			_g_variant_unref0 (_tmp154_);
			_tmp155_ = g_menu_item_new (_ ("Show Original"), "status.show-original");
			show_original_menu_item = _tmp155_;
			_tmp156_ = show_original_menu_item;
			_tmp157_ = _variant_new48 ("action-disabled");
			g_menu_item_set_attribute_value (_tmp156_, "hidden-when", _tmp157_);
			_g_variant_unref0 (_tmp157_);
			_tmp158_ = menu_model;
			_tmp159_ = translate_menu_item;
			g_menu_append_item (_tmp158_, _tmp159_);
			_tmp160_ = menu_model;
			_tmp161_ = show_original_menu_item;
			g_menu_append_item (_tmp160_, _tmp161_);
			_g_object_unref0 (show_original_menu_item);
			_g_object_unref0 (translate_menu_item);
		}
		_tmp162_ = g_menu_item_new (_ ("Remove my post"), "status.revoke-quote");
		revoke_quote_menu_item = _tmp162_;
		_tmp163_ = revoke_quote_menu_item;
		_tmp164_ = _variant_new49 ("action-disabled");
		g_menu_item_set_attribute_value (_tmp163_, "hidden-when", _tmp164_);
		_g_variant_unref0 (_tmp164_);
		_tmp165_ = menu_model;
		_tmp166_ = revoke_quote_menu_item;
		g_menu_append_item (_tmp165_, _tmp166_);
		_tmp167_ = menu_model;
		g_menu_append (_tmp167_, C_ ("verb", "Report"), "status.report");
		_g_object_unref0 (revoke_quote_menu_item);
	}
	_tmp168_ = menu_model;
	_tmp169_ = (GtkPopoverMenu*) gtk_popover_menu_new_from_model ((GMenuModel*) _tmp168_);
	g_object_ref_sink (_tmp169_);
	_tmp170_ = _tmp169_;
	tuba_widgets_status_set_context_menu (self, _tmp170_);
	_g_object_unref0 (_tmp170_);
	_g_object_unref0 (unmute_menu_item);
	_g_object_unref0 (mute_menu_item);
	_g_object_unref0 (edit_history_menu_item);
	_g_object_unref0 (stats_menu_item);
	_g_object_unref0 (menu_model);
}

static void
___lambda124_ (TubaWidgetsStatus* self,
               GObject* obj,
               GAsyncResult* res)
{
	TubaApplication* _tmp0_;
	TubaAPIStatus* _tmp2_;
	TubaAPIStatus* _tmp3_;
	TubaAPIStatus* _tmp4_;
	TubaAPIStatus* _tmp5_;
	gchar* _tmp6_;
	gchar* _tmp7_;
	gchar* _tmp8_;
	TubaApplication* _tmp9_;
	g_return_if_fail (res != NULL);
	_tmp0_ = tuba_app;
	if (tuba_application_question_finish (_tmp0_, res) == TUBA_APPLICATION_QUESTION_ANSWER_NO) {
		TubaSettings* _tmp1_;
		_tmp1_ = tuba_settings;
		tuba_settings_set_copy_private_link_reminder (_tmp1_, FALSE);
	}
	_tmp2_ = tuba_widgets_status_get_status (self);
	_tmp3_ = _tmp2_;
	_tmp4_ = tuba_api_status_get_formal (_tmp3_);
	_tmp5_ = _tmp4_;
	_tmp6_ = tuba_api_status_get_url (_tmp5_);
	_tmp7_ = _tmp6_;
	_tmp8_ = _tmp7_;
	tuba_utils_host_copy (_tmp8_);
	_g_free0 (_tmp8_);
	_tmp9_ = tuba_app;
	g_signal_emit_by_name (_tmp9_, "toast", _ ("Copied post url to clipboard"), (guint) 5, NULL, NULL, NULL);
}

static void
____lambda124__gasync_ready_callback (GObject* source_object,
                                      GAsyncResult* res,
                                      gpointer self)
{
	___lambda124_ ((TubaWidgetsStatus*) self, source_object, res);
	g_object_unref (self);
}

static void
tuba_widgets_status_copy_url (TubaWidgetsStatus* self)
{
	gboolean _tmp0_ = FALSE;
	gboolean _tmp1_ = FALSE;
	TubaAPIStatus* _tmp2_;
	TubaAPIStatus* _tmp3_;
	TubaAPIStatus* _tmp4_;
	TubaAPIStatus* _tmp5_;
	gchar* _tmp6_;
	gchar* _tmp7_;
	gchar* _tmp8_;
	gboolean _tmp9_;
	g_return_if_fail (self != NULL);
	_tmp2_ = tuba_widgets_status_get_status (self);
	_tmp3_ = _tmp2_;
	_tmp4_ = tuba_api_status_get_formal (_tmp3_);
	_tmp5_ = _tmp4_;
	_tmp6_ = tuba_api_status_get_url (_tmp5_);
	_tmp7_ = _tmp6_;
	_tmp8_ = _tmp7_;
	_tmp9_ = _tmp8_ != NULL;
	_g_free0 (_tmp8_);
	if (_tmp9_) {
		TubaSettings* _tmp10_;
		gboolean _tmp11_;
		gboolean _tmp12_;
		_tmp10_ = tuba_settings;
		_tmp11_ = tuba_settings_get_copy_private_link_reminder (_tmp10_);
		_tmp12_ = _tmp11_;
		_tmp1_ = _tmp12_;
	} else {
		_tmp1_ = FALSE;
	}
	if (_tmp1_) {
		gboolean _tmp13_ = FALSE;
		TubaAPIStatus* _tmp14_;
		TubaAPIStatus* _tmp15_;
		TubaAPIStatus* _tmp16_;
		TubaAPIStatus* _tmp17_;
		const gchar* _tmp18_;
		const gchar* _tmp19_;
		_tmp14_ = tuba_widgets_status_get_status (self);
		_tmp15_ = _tmp14_;
		_tmp16_ = tuba_api_status_get_formal (_tmp15_);
		_tmp17_ = _tmp16_;
		_tmp18_ = tuba_api_status_get_visibility (_tmp17_);
		_tmp19_ = _tmp18_;
		if (g_strcmp0 (_tmp19_, "direct") == 0) {
			_tmp13_ = TRUE;
		} else {
			TubaAPIStatus* _tmp20_;
			TubaAPIStatus* _tmp21_;
			TubaAPIStatus* _tmp22_;
			TubaAPIStatus* _tmp23_;
			const gchar* _tmp24_;
			const gchar* _tmp25_;
			_tmp20_ = tuba_widgets_status_get_status (self);
			_tmp21_ = _tmp20_;
			_tmp22_ = tuba_api_status_get_formal (_tmp21_);
			_tmp23_ = _tmp22_;
			_tmp24_ = tuba_api_status_get_visibility (_tmp23_);
			_tmp25_ = _tmp24_;
			_tmp13_ = g_strcmp0 (_tmp25_, "private") == 0;
		}
		_tmp0_ = _tmp13_;
	} else {
		_tmp0_ = FALSE;
	}
	if (_tmp0_) {
		gchar* body = NULL;
		TubaAPIStatus* _tmp26_;
		TubaAPIStatus* _tmp27_;
		TubaAPIStatus* _tmp28_;
		TubaAPIStatus* _tmp29_;
		const gchar* _tmp30_;
		const gchar* _tmp31_;
		TubaApplication* _tmp50_;
		TubaAccountStore* _tmp51_;
		TubaInstanceAccount* _tmp52_;
		TubaInstanceAccount* _tmp53_;
		GeeHashMap* _tmp54_;
		TubaAPIStatus* _tmp55_;
		TubaAPIStatus* _tmp56_;
		TubaAPIStatus* _tmp57_;
		TubaAPIStatus* _tmp58_;
		const gchar* _tmp59_;
		const gchar* _tmp60_;
		gpointer _tmp61_;
		TubaInstanceAccountVisibility* _tmp62_;
		const gchar* _tmp63_;
		const gchar* _tmp64_;
		gchar* _tmp65_;
		gchar* _tmp66_;
		TubaApplicationQuestionText _tmp67_ = {0};
		const gchar* _tmp68_;
		TubaApplicationQuestionText _tmp69_ = {0};
		TubaApplication* _tmp70_;
		TubaDialogsMainWindow* _tmp71_;
		TubaDialogsMainWindow* _tmp72_;
		TubaApplicationQuestionButtons _tmp73_ = {0};
		_tmp26_ = tuba_widgets_status_get_status (self);
		_tmp27_ = _tmp26_;
		_tmp28_ = tuba_api_status_get_formal (_tmp27_);
		_tmp29_ = _tmp28_;
		_tmp30_ = tuba_api_status_get_visibility (_tmp29_);
		_tmp31_ = _tmp30_;
		if (g_strcmp0 (_tmp31_, "direct") == 0) {
			gchar* _tmp32_;
			_tmp32_ = g_strdup (_ ("Only mentioned people will be able to view it."));
			_g_free0 (body);
			body = _tmp32_;
		} else {
			TubaAPIStatus* _tmp33_;
			TubaAPIStatus* _tmp34_;
			TubaAPIStatus* _tmp35_;
			TubaAPIStatus* _tmp36_;
			TubaAPIAccount* _tmp37_;
			TubaAPIAccount* _tmp38_;
			_tmp33_ = tuba_widgets_status_get_status (self);
			_tmp34_ = _tmp33_;
			_tmp35_ = tuba_api_status_get_formal (_tmp34_);
			_tmp36_ = _tmp35_;
			_tmp37_ = tuba_api_status_get_account (_tmp36_);
			_tmp38_ = _tmp37_;
			if (tuba_api_account_is_self (_tmp38_)) {
				gchar* _tmp39_;
				_tmp39_ = g_strdup (_ ("Only mentioned people and your followers will be able to view it."));
				_g_free0 (body);
				body = _tmp39_;
			} else {
				TubaAPIStatus* _tmp40_;
				TubaAPIStatus* _tmp41_;
				TubaAPIStatus* _tmp42_;
				TubaAPIStatus* _tmp43_;
				TubaAPIAccount* _tmp44_;
				TubaAPIAccount* _tmp45_;
				gchar* _tmp46_;
				gchar* _tmp47_;
				gchar* _tmp48_;
				gchar* _tmp49_;
				_tmp40_ = tuba_widgets_status_get_status (self);
				_tmp41_ = _tmp40_;
				_tmp42_ = tuba_api_status_get_formal (_tmp41_);
				_tmp43_ = _tmp42_;
				_tmp44_ = tuba_api_status_get_account (_tmp43_);
				_tmp45_ = _tmp44_;
				_tmp46_ = tuba_api_account_get_full_handle (_tmp45_);
				_tmp47_ = _tmp46_;
				_tmp48_ = _tmp47_;
				_tmp49_ = g_strdup_printf (_ ("Only mentioned people and people that follow %s will be able to view i" \
"t."), _tmp48_);
				_g_free0 (body);
				body = _tmp49_;
				_g_free0 (_tmp48_);
			}
		}
		_tmp50_ = tuba_app;
		_tmp51_ = tuba_accounts;
		_tmp52_ = tuba_account_store_get_active (_tmp51_);
		_tmp53_ = _tmp52_;
		_tmp54_ = _tmp53_->visibility;
		_tmp55_ = tuba_widgets_status_get_status (self);
		_tmp56_ = _tmp55_;
		_tmp57_ = tuba_api_status_get_formal (_tmp56_);
		_tmp58_ = _tmp57_;
		_tmp59_ = tuba_api_status_get_visibility (_tmp58_);
		_tmp60_ = _tmp59_;
		_tmp61_ = gee_abstract_map_get ((GeeAbstractMap*) _tmp54_, _tmp60_);
		_tmp62_ = (TubaInstanceAccountVisibility*) _tmp61_;
		_tmp63_ = tuba_instance_account_visibility_get_name (_tmp62_);
		_tmp64_ = _tmp63_;
		_tmp65_ = g_strdup_printf (_ ("Copy “%s” Post Link?"), _tmp64_);
		_tmp66_ = _tmp65_;
		_g_free0 (_tmp67_.text);
		_tmp67_.text = _tmp66_;
		_tmp67_.use_markup = FALSE;
		_tmp68_ = body;
		_g_free0 (_tmp69_.text);
		_tmp69_.text = _tmp68_;
		_tmp69_.use_markup = FALSE;
		_tmp70_ = tuba_app;
		_tmp71_ = tuba_application_get_main_window (_tmp70_);
		_tmp72_ = _tmp71_;
		tuba_application_question_button_destroy (&_tmp73_.yes);
		_tmp73_.yes = (TubaApplicationQuestionButton) {_ ("Copy"), ADW_RESPONSE_SUGGESTED};
		tuba_application_question_button_destroy (&_tmp73_.no);
		_tmp73_.no = (TubaApplicationQuestionButton) {_ ("Don't remind me again"), ADW_RESPONSE_DEFAULT};
		tuba_application_question (_tmp50_, &_tmp67_, &_tmp69_, (GtkWidget*) _tmp72_, &_tmp73_, NULL, FALSE, ____lambda124__gasync_ready_callback, g_object_ref (self));
		_g_free0 (_tmp66_);
		_g_object_unref0 (_tmp62_);
		_g_free0 (body);
	} else {
		gchar* _tmp74_ = NULL;
		TubaAPIStatus* _tmp75_;
		TubaAPIStatus* _tmp76_;
		TubaAPIStatus* _tmp77_;
		TubaAPIStatus* _tmp78_;
		gchar* _tmp79_;
		gchar* _tmp80_;
		TubaApplication* _tmp90_;
		_tmp75_ = tuba_widgets_status_get_status (self);
		_tmp76_ = _tmp75_;
		_tmp77_ = tuba_api_status_get_formal (_tmp76_);
		_tmp78_ = _tmp77_;
		_tmp79_ = tuba_api_status_get_url (_tmp78_);
		_tmp80_ = _tmp79_;
		_tmp74_ = _tmp80_;
		if (_tmp74_ == NULL) {
			TubaAPIStatus* _tmp81_;
			TubaAPIStatus* _tmp82_;
			TubaAPIStatus* _tmp83_;
			TubaAPIStatus* _tmp84_;
			TubaAPIAccount* _tmp85_;
			TubaAPIAccount* _tmp86_;
			const gchar* _tmp87_;
			const gchar* _tmp88_;
			gchar* _tmp89_;
			_tmp81_ = tuba_widgets_status_get_status (self);
			_tmp82_ = _tmp81_;
			_tmp83_ = tuba_api_status_get_formal (_tmp82_);
			_tmp84_ = _tmp83_;
			_tmp85_ = tuba_api_status_get_account (_tmp84_);
			_tmp86_ = _tmp85_;
			_tmp87_ = tuba_api_account_get_url (_tmp86_);
			_tmp88_ = _tmp87_;
			_tmp89_ = g_strdup (_tmp88_);
			_g_free0 (_tmp74_);
			_tmp74_ = _tmp89_;
		}
		tuba_utils_host_copy (_tmp74_);
		_tmp90_ = tuba_app;
		g_signal_emit_by_name (_tmp90_, "toast", _ ("Copied post url to clipboard"), (guint) 5, NULL, NULL, NULL);
		_g_free0 (_tmp74_);
	}
}

static void
tuba_widgets_status_open_in_browser (TubaWidgetsStatus* self)
{
	gchar* _tmp0_ = NULL;
	TubaAPIStatus* _tmp1_;
	TubaAPIStatus* _tmp2_;
	TubaAPIStatus* _tmp3_;
	TubaAPIStatus* _tmp4_;
	gchar* _tmp5_;
	gchar* _tmp6_;
	gchar* final_url = NULL;
	gchar* _tmp16_;
	gboolean _tmp17_ = FALSE;
	TubaSettings* _tmp18_;
	gboolean _tmp19_;
	gboolean _tmp20_;
	const gchar* _tmp28_;
	g_return_if_fail (self != NULL);
	_tmp1_ = tuba_widgets_status_get_status (self);
	_tmp2_ = _tmp1_;
	_tmp3_ = tuba_api_status_get_formal (_tmp2_);
	_tmp4_ = _tmp3_;
	_tmp5_ = tuba_api_status_get_url (_tmp4_);
	_tmp6_ = _tmp5_;
	_tmp0_ = _tmp6_;
	if (_tmp0_ == NULL) {
		TubaAPIStatus* _tmp7_;
		TubaAPIStatus* _tmp8_;
		TubaAPIStatus* _tmp9_;
		TubaAPIStatus* _tmp10_;
		TubaAPIAccount* _tmp11_;
		TubaAPIAccount* _tmp12_;
		const gchar* _tmp13_;
		const gchar* _tmp14_;
		gchar* _tmp15_;
		_tmp7_ = tuba_widgets_status_get_status (self);
		_tmp8_ = _tmp7_;
		_tmp9_ = tuba_api_status_get_formal (_tmp8_);
		_tmp10_ = _tmp9_;
		_tmp11_ = tuba_api_status_get_account (_tmp10_);
		_tmp12_ = _tmp11_;
		_tmp13_ = tuba_api_account_get_url (_tmp12_);
		_tmp14_ = _tmp13_;
		_tmp15_ = g_strdup (_tmp14_);
		_g_free0 (_tmp0_);
		_tmp0_ = _tmp15_;
	}
	_tmp16_ = _tmp0_;
	_tmp0_ = NULL;
	final_url = _tmp16_;
	_tmp18_ = tuba_settings;
	_tmp19_ = tuba_settings_get_use_in_app_browser_if_available (_tmp18_);
	_tmp20_ = _tmp19_;
	if (_tmp20_) {
		const gchar* _tmp21_;
		_tmp21_ = final_url;
		_tmp17_ = tuba_views_browser_can_handle_url (_tmp21_);
	} else {
		_tmp17_ = FALSE;
	}
	if (_tmp17_) {
		const gchar* _tmp22_;
		TubaViewsBrowser* _tmp23_;
		TubaViewsBrowser* _tmp24_;
		TubaApplication* _tmp25_;
		TubaDialogsMainWindow* _tmp26_;
		TubaDialogsMainWindow* _tmp27_;
		_tmp22_ = final_url;
		_tmp23_ = tuba_views_browser_new_with_url (_tmp22_);
		g_object_ref_sink (_tmp23_);
		_tmp24_ = _tmp23_;
		_tmp25_ = tuba_app;
		_tmp26_ = tuba_application_get_main_window (_tmp25_);
		_tmp27_ = _tmp26_;
		adw_dialog_present ((AdwDialog*) _tmp24_, (GtkWidget*) _tmp27_);
		_g_object_unref0 (_tmp24_);
		_g_free0 (final_url);
		_g_free0 (_tmp0_);
		return;
	}
	_tmp28_ = final_url;
	tuba_utils_host_open_url (_tmp28_, NULL, NULL);
	_g_free0 (final_url);
	_g_free0 (_tmp0_);
}

static void
tuba_widgets_status_report_status (TubaWidgetsStatus* self)
{
	TubaAPIStatus* _tmp0_;
	TubaAPIStatus* _tmp1_;
	TubaAPIStatus* _tmp2_;
	TubaAPIStatus* _tmp3_;
	TubaAPIAccount* _tmp4_;
	TubaAPIAccount* _tmp5_;
	TubaAPIStatus* _tmp6_;
	TubaAPIStatus* _tmp7_;
	TubaAPIStatus* _tmp8_;
	TubaAPIStatus* _tmp9_;
	const gchar* _tmp10_;
	const gchar* _tmp11_;
	TubaAPIStatus* _tmp12_;
	TubaAPIStatus* _tmp13_;
	TubaAPIStatus* _tmp14_;
	TubaAPIStatus* _tmp15_;
	GeeArrayList* _tmp16_;
	GeeArrayList* _tmp17_;
	TubaDialogsReport* _tmp18_;
	TubaDialogsReport* _tmp19_;
	g_return_if_fail (self != NULL);
	_tmp0_ = tuba_widgets_status_get_status (self);
	_tmp1_ = _tmp0_;
	_tmp2_ = tuba_api_status_get_formal (_tmp1_);
	_tmp3_ = _tmp2_;
	_tmp4_ = tuba_api_status_get_account (_tmp3_);
	_tmp5_ = _tmp4_;
	_tmp6_ = tuba_widgets_status_get_status (self);
	_tmp7_ = _tmp6_;
	_tmp8_ = tuba_api_status_get_formal (_tmp7_);
	_tmp9_ = _tmp8_;
	_tmp10_ = tuba_api_status_get_id (_tmp9_);
	_tmp11_ = _tmp10_;
	_tmp12_ = tuba_widgets_status_get_status (self);
	_tmp13_ = _tmp12_;
	_tmp14_ = tuba_api_status_get_formal (_tmp13_);
	_tmp15_ = _tmp14_;
	_tmp16_ = tuba_api_status_get_mentions (_tmp15_);
	_tmp17_ = _tmp16_;
	_tmp18_ = tuba_dialogs_report_new (_tmp5_, _tmp11_, _tmp17_, NULL);
	g_object_ref_sink (_tmp18_);
	_tmp19_ = _tmp18_;
	_g_object_unref0 (_tmp19_);
}

static void
tuba_widgets_status_view_edit_history (TubaWidgetsStatus* self)
{
	TubaApplication* _tmp0_;
	TubaDialogsMainWindow* _tmp1_;
	TubaDialogsMainWindow* _tmp2_;
	TubaAPIStatus* _tmp3_;
	TubaAPIStatus* _tmp4_;
	TubaAPIStatus* _tmp5_;
	TubaAPIStatus* _tmp6_;
	const gchar* _tmp7_;
	const gchar* _tmp8_;
	TubaViewsEditHistory* _tmp9_;
	TubaViewsEditHistory* _tmp10_;
	TubaViewsBase* _tmp11_;
	TubaViewsBase* _tmp12_;
	g_return_if_fail (self != NULL);
	_tmp0_ = tuba_app;
	_tmp1_ = tuba_application_get_main_window (_tmp0_);
	_tmp2_ = _tmp1_;
	_tmp3_ = tuba_widgets_status_get_status (self);
	_tmp4_ = _tmp3_;
	_tmp5_ = tuba_api_status_get_formal (_tmp4_);
	_tmp6_ = _tmp5_;
	_tmp7_ = tuba_api_status_get_id (_tmp6_);
	_tmp8_ = _tmp7_;
	_tmp9_ = tuba_views_edit_history_new (_tmp8_);
	g_object_ref_sink (_tmp9_);
	_tmp10_ = _tmp9_;
	_tmp11_ = tuba_dialogs_main_window_open_view (_tmp2_, (TubaViewsBase*) _tmp10_);
	_tmp12_ = _tmp11_;
	_g_object_unref0 (_tmp12_);
	_g_object_unref0 (_tmp10_);
}

static void
tuba_widgets_status_view_stats (TubaWidgetsStatus* self)
{
	TubaApplication* _tmp0_;
	TubaDialogsMainWindow* _tmp1_;
	TubaDialogsMainWindow* _tmp2_;
	TubaAPIStatus* _tmp3_;
	TubaAPIStatus* _tmp4_;
	TubaAPIStatus* _tmp5_;
	TubaAPIStatus* _tmp6_;
	const gchar* _tmp7_;
	const gchar* _tmp8_;
	TubaViewsStatusStats* _tmp9_;
	TubaViewsStatusStats* _tmp10_;
	TubaViewsBase* _tmp11_;
	TubaViewsBase* _tmp12_;
	g_return_if_fail (self != NULL);
	_tmp0_ = tuba_app;
	_tmp1_ = tuba_application_get_main_window (_tmp0_);
	_tmp2_ = _tmp1_;
	_tmp3_ = tuba_widgets_status_get_status (self);
	_tmp4_ = _tmp3_;
	_tmp5_ = tuba_api_status_get_formal (_tmp4_);
	_tmp6_ = _tmp5_;
	_tmp7_ = tuba_api_status_get_id (_tmp6_);
	_tmp8_ = _tmp7_;
	_tmp9_ = tuba_views_status_stats_new (_tmp8_, tuba_widgets_status_has_reactions (self));
	g_object_ref_sink (_tmp9_);
	_tmp10_ = _tmp9_;
	_tmp11_ = tuba_dialogs_main_window_open_view (_tmp2_, (TubaViewsBase*) _tmp10_);
	_tmp12_ = _tmp11_;
	_g_object_unref0 (_tmp12_);
	_g_object_unref0 (_tmp10_);
}

void
tuba_widgets_status_on_edit (TubaWidgetsStatus* self,
                             TubaAPIStatus* x)
{
	TubaAPIStatus* _tmp0_;
	TubaAPIStatus* _tmp1_;
	g_return_if_fail (self != NULL);
	if (x == NULL) {
		return;
	}
	_tmp0_ = tuba_widgets_status_get_status (self);
	_tmp1_ = _tmp0_;
	if (_tmp1_ != NULL) {
		TubaAPIStatus* _tmp2_;
		TubaAPIStatus* _tmp3_;
		_tmp2_ = tuba_widgets_status_get_status (self);
		_tmp3_ = _tmp2_;
		tuba_entity_patch ((TubaEntity*) _tmp3_, (GObject*) x);
	}
	tuba_widgets_status_bind (self);
}

static GVariant*
_variant_new50 (const gchar* value)
{
	return g_variant_ref_sink (g_variant_new_string (value));
}

static void
tuba_widgets_status_change_quote_policy (TubaWidgetsStatus* self,
                                         GSimpleAction* action,
                                         GVariant* value)
{
	gchar* new_quote_policy = NULL;
	const gchar* _tmp0_;
	gchar* _tmp1_;
	const gchar* _tmp2_;
	GVariant* _tmp3_;
	GVariant* _tmp4_;
	const gchar* _tmp5_;
	const gchar* _tmp6_;
	GVariant* _tmp7_;
	g_return_if_fail (self != NULL);
	g_return_if_fail (action != NULL);
	if (value == NULL) {
		return;
	}
	_tmp0_ = g_variant_get_string (value, NULL);
	_tmp1_ = g_strdup (_tmp0_);
	new_quote_policy = _tmp1_;
	_tmp2_ = new_quote_policy;
	_tmp3_ = g_action_get_state ((GAction*) action);
	_tmp4_ = _tmp3_;
	_tmp5_ = g_variant_get_string (_tmp4_, NULL);
	tuba_widgets_status_change_quote_policy_real (self, _tmp2_, _tmp5_, NULL, NULL);
	_g_variant_unref0 (_tmp4_);
	_tmp6_ = new_quote_policy;
	_tmp7_ = _variant_new50 (_tmp6_);
	g_simple_action_set_state (action, _tmp7_);
	_g_variant_unref0 (_tmp7_);
	_g_free0 (new_quote_policy);
}

static void
tuba_widgets_status_change_quote_policy_real_data_free (gpointer _data)
{
	TubaWidgetsStatusChangeQuotePolicyRealData* _data_;
	_data_ = _data;
	_g_free0 (_data_->new_policy);
	_g_free0 (_data_->old_policy);
	_g_object_unref0 (_data_->self);
	g_slice_free (TubaWidgetsStatusChangeQuotePolicyRealData, _data_);
}

static void
tuba_widgets_status_change_quote_policy_real (TubaWidgetsStatus* self,
                                              const gchar* new_policy,
                                              const gchar* old_policy,
                                              GAsyncReadyCallback _callback_,
                                              gpointer _user_data_)
{
	TubaWidgetsStatusChangeQuotePolicyRealData* _data_;
	TubaWidgetsStatus* _tmp0_;
	gchar* _tmp1_;
	gchar* _tmp2_;
	g_return_if_fail (self != NULL);
	g_return_if_fail (new_policy != NULL);
	g_return_if_fail (old_policy != NULL);
	_data_ = g_slice_new0 (TubaWidgetsStatusChangeQuotePolicyRealData);
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
	g_task_set_task_data (_data_->_async_result, _data_, tuba_widgets_status_change_quote_policy_real_data_free);
	_tmp0_ = _g_object_ref0 (self);
	_data_->self = _tmp0_;
	_tmp1_ = g_strdup (new_policy);
	_g_free0 (_data_->new_policy);
	_data_->new_policy = _tmp1_;
	_tmp2_ = g_strdup (old_policy);
	_g_free0 (_data_->old_policy);
	_data_->old_policy = _tmp2_;
	tuba_widgets_status_change_quote_policy_real_co (_data_);
}

static void
tuba_widgets_status_change_quote_policy_real_finish (TubaWidgetsStatus* self,
                                                     GAsyncResult* _res_)
{
	TubaWidgetsStatusChangeQuotePolicyRealData* _data_;
	_data_ = g_task_propagate_pointer (G_TASK (_res_), NULL);
}

static void
tuba_widgets_status_change_quote_policy_real_ready (GObject* source_object,
                                                    GAsyncResult* _res_,
                                                    gpointer _user_data_)
{
	TubaWidgetsStatusChangeQuotePolicyRealData* _data_;
	_data_ = _user_data_;
	_data_->_source_object_ = source_object;
	_data_->_res_ = _res_;
	tuba_widgets_status_change_quote_policy_real_co (_data_);
}

static void
_vala_JsonNode_free (JsonNode* self)
{
	g_boxed_free (json_node_get_type (), self);
}

static GVariant*
_variant_new51 (const gchar* value)
{
	return g_variant_ref_sink (g_variant_new_string (value));
}

static gboolean
tuba_widgets_status_change_quote_policy_real_co (TubaWidgetsStatusChangeQuotePolicyRealData* _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_ = tuba_widgets_status_get_status (_data_->self);
		_data_->_tmp1_ = _data_->_tmp0_;
		_data_->_tmp2_ = tuba_api_status_get_formal (_data_->_tmp1_);
		_data_->_tmp3_ = _data_->_tmp2_;
		_data_->_tmp4_ = tuba_api_status_get_id (_data_->_tmp3_);
		_data_->_tmp5_ = _data_->_tmp4_;
		_data_->_tmp6_ = string_to_string (_data_->_tmp5_);
		_data_->_tmp7_ = g_strconcat ("/api/v1/statuses/", _data_->_tmp6_, "/interaction_policy", NULL);
		_data_->_tmp8_ = _data_->_tmp7_;
		_data_->_tmp9_ = tuba_accounts;
		_data_->_tmp10_ = tuba_account_store_get_active (_data_->_tmp9_);
		_data_->_tmp11_ = _data_->_tmp10_;
		_data_->_tmp12_ = _g_object_ref0 (_data_->_tmp11_);
		_data_->_tmp13_ = NULL;
		_data_->_tmp13_ = tuba_request_v2_new (_data_->_tmp8_, TUBA_REQUEST_V2_METHOD_PUT);
		tuba_request_v2_set_account (_data_->_tmp13_, _data_->_tmp12_);
		_g_object_unref0 (_data_->_tmp12_);
		_data_->_tmp14_ = _data_->_tmp13_;
		_g_free0 (_data_->_tmp8_);
		_data_->req = _data_->_tmp14_;
		_data_->_tmp15_ = _data_->req;
		tuba_request_v2_add_form_data (_data_->_tmp15_, "quote_approval_policy", _data_->new_policy);
		_data_->_tmp16_ = _data_->req;
		_data_->_state_ = 1;
		tuba_request_v2_exec (_data_->_tmp16_, tuba_widgets_status_change_quote_policy_real_ready, _data_);
		return FALSE;
		_state_1:
		_data_->_tmp17_ = tuba_request_v2_exec_finish (_data_->_tmp16_, _data_->_res_, NULL, &_data_->_inner_error0_);
		_data_->in_stream = _data_->_tmp17_;
		if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
			_g_object_unref0 (_data_->req);
			goto __catch0_g_error;
		}
		_data_->_tmp18_ = _data_->in_stream;
		_data_->_state_ = 2;
		tuba_network_get_parser_from_inputstream_async (_data_->_tmp18_, NULL, tuba_widgets_status_change_quote_policy_real_ready, _data_);
		return FALSE;
		_state_2:
		_data_->_tmp19_ = tuba_network_get_parser_from_inputstream_finish (_data_->_res_, &_data_->_inner_error0_);
		_data_->parser = _data_->_tmp19_;
		if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
			_g_object_unref0 (_data_->in_stream);
			_g_object_unref0 (_data_->req);
			goto __catch0_g_error;
		}
		_data_->_tmp20_ = tuba_network;
		_data_->_tmp21_ = _data_->parser;
		_data_->_tmp22_ = tuba_network_parse_node (_data_->_tmp20_, _data_->_tmp21_);
		_data_->node = _data_->_tmp22_;
		_data_->_tmp24_ = _data_->node;
		_data_->_tmp25_ = tuba_api_status_from (_data_->_tmp24_, &_data_->_inner_error0_);
		_data_->_tmp23_ = _data_->_tmp25_;
		if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
			__vala_JsonNode_free0 (_data_->node);
			_g_object_unref0 (_data_->parser);
			_g_object_unref0 (_data_->in_stream);
			_g_object_unref0 (_data_->req);
			goto __catch0_g_error;
		}
		tuba_widgets_status_on_edit (_data_->self, _data_->_tmp23_);
		_g_object_unref0 (_data_->_tmp23_);
		__vala_JsonNode_free0 (_data_->node);
		_g_object_unref0 (_data_->parser);
		_g_object_unref0 (_data_->in_stream);
		_g_object_unref0 (_data_->req);
	}
	goto __finally0;
	__catch0_g_error:
	{
		_data_->e = _data_->_inner_error0_;
		_data_->_inner_error0_ = NULL;
		_data_->_tmp26_ = _data_->self->priv->change_quote_policy_action;
		_data_->_tmp27_ = _variant_new51 (_data_->old_policy);
		g_simple_action_set_state (_data_->_tmp26_, _data_->_tmp27_);
		_g_variant_unref0 (_data_->_tmp27_);
		_data_->_tmp28_ = tuba_widgets_status_get_status (_data_->self);
		_data_->_tmp29_ = _data_->_tmp28_;
		_data_->_tmp30_ = tuba_api_status_get_formal (_data_->_tmp29_);
		_data_->_tmp31_ = _data_->_tmp30_;
		_data_->_tmp32_ = tuba_api_status_get_id (_data_->_tmp31_);
		_data_->_tmp33_ = _data_->_tmp32_;
		_data_->_tmp34_ = string_to_string (_data_->_tmp33_);
		_data_->_tmp35_ = _data_->e;
		_data_->_tmp36_ = g_strdup_printf ("%i", _data_->_tmp35_->code);
		_data_->_tmp37_ = _data_->_tmp36_;
		_data_->_tmp38_ = _data_->e;
		_data_->_tmp39_ = _data_->_tmp38_->message;
		_data_->_tmp40_ = string_to_string (_data_->_tmp39_);
		_data_->_tmp41_ = g_strconcat ("Couldn't change quote policy for ", _data_->_tmp34_, ": ", _data_->_tmp37_, " ", _data_->_tmp40_, NULL);
		_data_->_tmp42_ = _data_->_tmp41_;
		g_warning ("Status.vala:572: %s", _data_->_tmp42_);
		_g_free0 (_data_->_tmp42_);
		_g_free0 (_data_->_tmp37_);
		_data_->_tmp43_ = tuba_app;
		_data_->_tmp44_ = _data_->e;
		_data_->_tmp45_ = _data_->_tmp44_->message;
		_data_->_tmp46_ = g_strdup_printf ("%s %s", _ ("Error"), _data_->_tmp45_);
		_data_->_tmp47_ = _data_->_tmp46_;
		g_signal_emit_by_name (_data_->_tmp43_, "toast", _data_->_tmp47_, (guint) 5, NULL, NULL, NULL);
		_g_free0 (_data_->_tmp47_);
		_g_error_free0 (_data_->e);
	}
	__finally0:
	if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _data_->_inner_error0_->message, g_quark_to_string (_data_->_inner_error0_->domain), _data_->_inner_error0_->code);
		g_clear_error (&_data_->_inner_error0_);
		g_object_unref (_data_->_async_result);
		return FALSE;
	}
	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_widgets_status_toggle_pinned (TubaWidgetsStatus* self)
{
	g_return_if_fail (self != NULL);
	tuba_widgets_status_toggle_pinned_real (self, NULL, NULL);
}

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

static void
tuba_widgets_status_toggle_pinned_real (TubaWidgetsStatus* self,
                                        GAsyncReadyCallback _callback_,
                                        gpointer _user_data_)
{
	TubaWidgetsStatusTogglePinnedRealData* _data_;
	TubaWidgetsStatus* _tmp0_;
	g_return_if_fail (self != NULL);
	_data_ = g_slice_new0 (TubaWidgetsStatusTogglePinnedRealData);
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
	g_task_set_task_data (_data_->_async_result, _data_, tuba_widgets_status_toggle_pinned_real_data_free);
	_tmp0_ = _g_object_ref0 (self);
	_data_->self = _tmp0_;
	tuba_widgets_status_toggle_pinned_real_co (_data_);
}

static void
tuba_widgets_status_toggle_pinned_real_finish (TubaWidgetsStatus* self,
                                               GAsyncResult* _res_)
{
	TubaWidgetsStatusTogglePinnedRealData* _data_;
	_data_ = g_task_propagate_pointer (G_TASK (_res_), NULL);
}

static void
tuba_widgets_status_toggle_pinned_real_ready (GObject* source_object,
                                              GAsyncResult* _res_,
                                              gpointer _user_data_)
{
	TubaWidgetsStatusTogglePinnedRealData* _data_;
	_data_ = _user_data_;
	_data_->_source_object_ = source_object;
	_data_->_res_ = _res_;
	tuba_widgets_status_toggle_pinned_real_co (_data_);
}

static gboolean
tuba_widgets_status_toggle_pinned_real_co (TubaWidgetsStatusTogglePinnedRealData* _data_)
{
	switch (_data_->_state_) {
		case 0:
		goto _state_0;
		case 1:
		goto _state_1;
		default:
		g_assert_not_reached ();
	}
	_state_0:
	_data_->_tmp1_ = tuba_widgets_status_get_status (_data_->self);
	_data_->_tmp2_ = _data_->_tmp1_;
	_data_->_tmp3_ = tuba_api_status_get_formal (_data_->_tmp2_);
	_data_->_tmp4_ = _data_->_tmp3_;
	_data_->_tmp5_ = tuba_api_status_get_pinned (_data_->_tmp4_);
	_data_->_tmp6_ = _data_->_tmp5_;
	if (_data_->_tmp6_) {
		_data_->_tmp0_ = "unpin";
	} else {
		_data_->_tmp0_ = "pin";
	}
	_data_->_tmp7_ = g_strdup (_data_->_tmp0_);
	_data_->p_action = _data_->_tmp7_;
	_data_->_tmp8_ = tuba_widgets_status_get_status (_data_->self);
	_data_->_tmp9_ = _data_->_tmp8_;
	_data_->_tmp10_ = tuba_api_status_get_formal (_data_->_tmp9_);
	_data_->_tmp11_ = _data_->_tmp10_;
	_data_->_tmp12_ = tuba_api_status_get_id (_data_->_tmp11_);
	_data_->_tmp13_ = _data_->_tmp12_;
	_data_->_tmp14_ = string_to_string (_data_->_tmp13_);
	_data_->_tmp15_ = string_to_string (_data_->p_action);
	_data_->_tmp16_ = g_strconcat ("/api/v1/statuses/", _data_->_tmp14_, "/", _data_->_tmp15_, NULL);
	_data_->_tmp17_ = _data_->_tmp16_;
	_data_->_tmp18_ = tuba_accounts;
	_data_->_tmp19_ = tuba_account_store_get_active (_data_->_tmp18_);
	_data_->_tmp20_ = _data_->_tmp19_;
	_data_->_tmp21_ = _g_object_ref0 (_data_->_tmp20_);
	_data_->_tmp22_ = NULL;
	_data_->_tmp22_ = tuba_request_v2_new (_data_->_tmp17_, TUBA_REQUEST_V2_METHOD_POST);
	tuba_request_v2_set_account (_data_->_tmp22_, _data_->_tmp21_);
	_g_object_unref0 (_data_->_tmp21_);
	_data_->_tmp23_ = _data_->_tmp22_;
	_g_free0 (_data_->_tmp17_);
	_data_->req = _data_->_tmp23_;
	{
		_data_->_state_ = 1;
		tuba_request_v2_exec (_data_->req, tuba_widgets_status_toggle_pinned_real_ready, _data_);
		return FALSE;
		_state_1:
		_data_->_tmp24_ = tuba_request_v2_exec_finish (_data_->req, _data_->_res_, NULL, &_data_->_inner_error0_);
		_data_->_tmp25_ = _data_->_tmp24_;
		_g_object_unref0 (_data_->_tmp25_);
		if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
			goto __catch0_g_error;
		}
		_data_->_tmp26_ = tuba_widgets_status_get_status (_data_->self);
		_data_->_tmp27_ = _data_->_tmp26_;
		_data_->_tmp28_ = tuba_api_status_get_formal (_data_->_tmp27_);
		_data_->_tmp29_ = _data_->_tmp28_;
		tuba_api_status_set_pinned (_data_->_tmp29_, g_strcmp0 (_data_->p_action, "pin") == 0);
		g_signal_emit (_data_->self, tuba_widgets_status_signals[TUBA_WIDGETS_STATUS_PIN_CHANGED_SIGNAL], 0);
	}
	goto __finally0;
	__catch0_g_error:
	{
		_data_->e = _data_->_inner_error0_;
		_data_->_inner_error0_ = NULL;
		_data_->_tmp30_ = _data_->e;
		_data_->_tmp31_ = g_strdup_printf ("%i", _data_->_tmp30_->code);
		_data_->_tmp32_ = _data_->_tmp31_;
		_data_->_tmp33_ = _data_->e;
		_data_->_tmp34_ = _data_->_tmp33_->message;
		_data_->_tmp35_ = string_to_string (_data_->_tmp34_);
		_data_->_tmp36_ = g_strconcat ("Error while pin toggling: ", _data_->_tmp32_, " ", _data_->_tmp35_, NULL);
		_data_->_tmp37_ = _data_->_tmp36_;
		g_warning ("Status.vala:591: %s", _data_->_tmp37_);
		_g_free0 (_data_->_tmp37_);
		_g_free0 (_data_->_tmp32_);
		_data_->_tmp38_ = tuba_app;
		_data_->_tmp39_ = _data_->e;
		_data_->_tmp40_ = _data_->_tmp39_->message;
		_data_->_tmp41_ = g_strdup_printf ("%s: %s", _ ("Error"), _data_->_tmp40_);
		_data_->_tmp42_ = _data_->_tmp41_;
		g_signal_emit_by_name (_data_->_tmp38_, "toast", _data_->_tmp42_, (guint) 5, NULL, NULL, NULL);
		_g_free0 (_data_->_tmp42_);
		_g_error_free0 (_data_->e);
	}
	__finally0:
	if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
		_g_object_unref0 (_data_->req);
		_g_free0 (_data_->p_action);
		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_->req);
	_g_free0 (_data_->p_action);
	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_widgets_status_edit_status (TubaWidgetsStatus* self)
{
	g_return_if_fail (self != NULL);
	tuba_widgets_status_edit_status_real (self, FALSE, NULL, NULL);
}

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

static void
tuba_widgets_status_edit_status_real (TubaWidgetsStatus* self,
                                      gboolean redraft,
                                      GAsyncReadyCallback _callback_,
                                      gpointer _user_data_)
{
	TubaWidgetsStatusEditStatusRealData* _data_;
	TubaWidgetsStatus* _tmp0_;
	g_return_if_fail (self != NULL);
	_data_ = g_slice_new0 (TubaWidgetsStatusEditStatusRealData);
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
	g_task_set_task_data (_data_->_async_result, _data_, tuba_widgets_status_edit_status_real_data_free);
	_tmp0_ = _g_object_ref0 (self);
	_data_->self = _tmp0_;
	_data_->redraft = redraft;
	tuba_widgets_status_edit_status_real_co (_data_);
}

static void
tuba_widgets_status_edit_status_real_finish (TubaWidgetsStatus* self,
                                             GAsyncResult* _res_)
{
	TubaWidgetsStatusEditStatusRealData* _data_;
	_data_ = g_task_propagate_pointer (G_TASK (_res_), NULL);
}

static void
tuba_widgets_status_edit_status_real_ready (GObject* source_object,
                                            GAsyncResult* _res_,
                                            gpointer _user_data_)
{
	TubaWidgetsStatusEditStatusRealData* _data_;
	_data_ = _user_data_;
	_data_->_source_object_ = source_object;
	_data_->_res_ = _res_;
	tuba_widgets_status_edit_status_real_co (_data_);
}

static void
_tuba_widgets_status_on_edit_tuba_dialogs_composer_dialog_success_callback (TubaAPIStatus* cb_status,
                                                                            gpointer self)
{
	tuba_widgets_status_on_edit ((TubaWidgetsStatus*) self, cb_status);
}

static gboolean
tuba_widgets_status_edit_status_real_co (TubaWidgetsStatusEditStatusRealData* _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:
	if (_data_->redraft) {
		_data_->_tmp0_ = tuba_widgets_status_get_status (_data_->self);
		_data_->_tmp1_ = _data_->_tmp0_;
		_data_->_tmp2_ = tuba_api_status_get_formal (_data_->_tmp1_);
		_data_->_tmp3_ = _data_->_tmp2_;
		_data_->_tmp4_ = tuba_api_status_annihilate (_data_->_tmp3_);
		_g_object_unref0 (_data_->req);
		_data_->req = _data_->_tmp4_;
	} else {
		_data_->_tmp5_ = tuba_widgets_status_get_status (_data_->self);
		_data_->_tmp6_ = _data_->_tmp5_;
		_data_->_tmp7_ = tuba_api_status_get_formal (_data_->_tmp6_);
		_data_->_tmp8_ = _data_->_tmp7_;
		_data_->_tmp9_ = tuba_api_status_get_id (_data_->_tmp8_);
		_data_->_tmp10_ = _data_->_tmp9_;
		_data_->_tmp11_ = string_to_string (_data_->_tmp10_);
		_data_->_tmp12_ = g_strconcat ("/api/v1/statuses/", _data_->_tmp11_, "/source", NULL);
		_data_->_tmp13_ = _data_->_tmp12_;
		_data_->_tmp14_ = tuba_request_v2_new (_data_->_tmp13_, TUBA_REQUEST_V2_METHOD_GET);
		_g_object_unref0 (_data_->req);
		_data_->req = _data_->_tmp14_;
		_g_free0 (_data_->_tmp13_);
	}
	_data_->_tmp15_ = _data_->req;
	_data_->_tmp16_ = tuba_accounts;
	_data_->_tmp17_ = tuba_account_store_get_active (_data_->_tmp16_);
	_data_->_tmp18_ = _data_->_tmp17_;
	tuba_request_v2_set_account (_data_->_tmp15_, _data_->_tmp18_);
	{
		_data_->_tmp19_ = _data_->req;
		_data_->_state_ = 1;
		tuba_request_v2_exec (_data_->_tmp19_, tuba_widgets_status_edit_status_real_ready, _data_);
		return FALSE;
		_state_1:
		_data_->_tmp20_ = tuba_request_v2_exec_finish (_data_->_tmp19_, _data_->_res_, NULL, &_data_->_inner_error0_);
		_data_->in_stream = _data_->_tmp20_;
		if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
			goto __catch0_g_error;
		}
		_data_->_tmp21_ = _data_->in_stream;
		_data_->_state_ = 2;
		tuba_network_get_parser_from_inputstream_async (_data_->_tmp21_, NULL, tuba_widgets_status_edit_status_real_ready, _data_);
		return FALSE;
		_state_2:
		_data_->_tmp22_ = tuba_network_get_parser_from_inputstream_finish (_data_->_res_, &_data_->_inner_error0_);
		_data_->parser = _data_->_tmp22_;
		if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
			_g_object_unref0 (_data_->in_stream);
			goto __catch0_g_error;
		}
		_data_->_tmp23_ = tuba_network;
		_data_->_tmp24_ = _data_->parser;
		_data_->_tmp25_ = tuba_network_parse_node (_data_->_tmp23_, _data_->_tmp24_);
		_data_->node = _data_->_tmp25_;
		_data_->_tmp26_ = _data_->node;
		_data_->_tmp27_ = tuba_api_status_source_from (_data_->_tmp26_, &_data_->_inner_error0_);
		_data_->source = _data_->_tmp27_;
		if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
			__vala_JsonNode_free0 (_data_->node);
			_g_object_unref0 (_data_->parser);
			_g_object_unref0 (_data_->in_stream);
			goto __catch0_g_error;
		}
		if (_data_->redraft) {
			_data_->_tmp28_ = tuba_widgets_status_get_status (_data_->self);
			_data_->_tmp29_ = _data_->_tmp28_;
			_data_->_tmp30_ = tuba_api_status_get_formal (_data_->_tmp29_);
			_data_->_tmp31_ = _data_->_tmp30_;
			_data_->_tmp32_ = _data_->source;
			_data_->_tmp33_ = tuba_dialogs_composer_dialog_new_edit (_data_->_tmp31_, _data_->_tmp32_, NULL, NULL, NULL, TRUE);
			g_object_ref_sink (_data_->_tmp33_);
			_data_->_tmp34_ = _data_->_tmp33_;
			_g_object_unref0 (_data_->_tmp34_);
		} else {
			_data_->_tmp35_ = tuba_widgets_status_get_status (_data_->self);
			_data_->_tmp36_ = _data_->_tmp35_;
			_data_->_tmp37_ = tuba_api_status_get_formal (_data_->_tmp36_);
			_data_->_tmp38_ = _data_->_tmp37_;
			_data_->_tmp39_ = _data_->source;
			_data_->_tmp40_ = tuba_dialogs_composer_dialog_new_edit (_data_->_tmp38_, _data_->_tmp39_, _tuba_widgets_status_on_edit_tuba_dialogs_composer_dialog_success_callback, g_object_ref (_data_->self), g_object_unref, FALSE);
			g_object_ref_sink (_data_->_tmp40_);
			_data_->_tmp41_ = _data_->_tmp40_;
			_g_object_unref0 (_data_->_tmp41_);
		}
		_g_object_unref0 (_data_->source);
		__vala_JsonNode_free0 (_data_->node);
		_g_object_unref0 (_data_->parser);
		_g_object_unref0 (_data_->in_stream);
	}
	goto __finally0;
	__catch0_g_error:
	{
		_data_->e = _data_->_inner_error0_;
		_data_->_inner_error0_ = NULL;
		if (_data_->redraft) {
			_data_->_tmp42_ = _data_->e;
			_data_->_tmp43_ = g_strdup_printf ("%i", _data_->_tmp42_->code);
			_data_->_tmp44_ = _data_->_tmp43_;
			_data_->_tmp45_ = _data_->e;
			_data_->_tmp46_ = _data_->_tmp45_->message;
			_data_->_tmp47_ = string_to_string (_data_->_tmp46_);
			_data_->_tmp48_ = g_strconcat ("Error while deleting status for redrafting: ", _data_->_tmp44_, " ", _data_->_tmp47_, NULL);
			_data_->_tmp49_ = _data_->_tmp48_;
			g_warning ("Status.vala:622: %s", _data_->_tmp49_);
			_g_free0 (_data_->_tmp49_);
			_g_free0 (_data_->_tmp44_);
			_data_->_tmp50_ = tuba_app;
			_data_->_tmp51_ = _data_->e;
			_data_->_tmp52_ = _data_->_tmp51_->message;
			g_signal_emit_by_name (_data_->_tmp50_, "toast", _data_->_tmp52_, (guint) 0, NULL, NULL, NULL);
		} else {
			_data_->_tmp53_ = tuba_widgets_status_get_status (_data_->self);
			_data_->_tmp54_ = _data_->_tmp53_;
			_data_->_tmp55_ = tuba_api_status_get_formal (_data_->_tmp54_);
			_data_->_tmp56_ = _data_->_tmp55_;
			_data_->_tmp57_ = tuba_dialogs_composer_dialog_new_edit (_data_->_tmp56_, NULL, _tuba_widgets_status_on_edit_tuba_dialogs_composer_dialog_success_callback, g_object_ref (_data_->self), g_object_unref, FALSE);
			g_object_ref_sink (_data_->_tmp57_);
			_data_->_tmp58_ = _data_->_tmp57_;
			_g_object_unref0 (_data_->_tmp58_);
		}
		_g_error_free0 (_data_->e);
	}
	__finally0:
	if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
		_g_object_unref0 (_data_->req);
		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_->req);
	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_widgets_status_revoke_quote (TubaWidgetsStatus* self)
{
	g_return_if_fail (self != NULL);
	tuba_widgets_status_revoke_quote_real (self, NULL, NULL);
}

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

static void
tuba_widgets_status_revoke_quote_real (TubaWidgetsStatus* self,
                                       GAsyncReadyCallback _callback_,
                                       gpointer _user_data_)
{
	TubaWidgetsStatusRevokeQuoteRealData* _data_;
	TubaWidgetsStatus* _tmp0_;
	g_return_if_fail (self != NULL);
	_data_ = g_slice_new0 (TubaWidgetsStatusRevokeQuoteRealData);
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
	g_task_set_task_data (_data_->_async_result, _data_, tuba_widgets_status_revoke_quote_real_data_free);
	_tmp0_ = _g_object_ref0 (self);
	_data_->self = _tmp0_;
	tuba_widgets_status_revoke_quote_real_co (_data_);
}

static void
tuba_widgets_status_revoke_quote_real_finish (TubaWidgetsStatus* self,
                                              GAsyncResult* _res_)
{
	TubaWidgetsStatusRevokeQuoteRealData* _data_;
	_data_ = g_task_propagate_pointer (G_TASK (_res_), NULL);
}

static void
tuba_widgets_status_revoke_quote_real_ready (GObject* source_object,
                                             GAsyncResult* _res_,
                                             gpointer _user_data_)
{
	TubaWidgetsStatusRevokeQuoteRealData* _data_;
	_data_ = _user_data_;
	_data_->_source_object_ = source_object;
	_data_->_res_ = _res_;
	tuba_widgets_status_revoke_quote_real_co (_data_);
}

static gboolean
tuba_widgets_status_revoke_quote_real_co (TubaWidgetsStatusRevokeQuoteRealData* _data_)
{
	switch (_data_->_state_) {
		case 0:
		goto _state_0;
		case 1:
		goto _state_1;
		case 2:
		goto _state_2;
		case 3:
		goto _state_3;
		default:
		g_assert_not_reached ();
	}
	_state_0:
	_data_->_tmp0_ = tuba_app;
	memset (&_data_->_tmp1_, 0, sizeof (TubaApplicationQuestionText));
	_g_free0 (_data_->_tmp1_.text);
	_data_->_tmp1_.text = _ ("Remove your post from the quote?");
	_data_->_tmp1_.use_markup = FALSE;
	_data_->_tmp2_ = tuba_app;
	_data_->_tmp3_ = tuba_application_get_main_window (_data_->_tmp2_);
	_data_->_tmp4_ = _data_->_tmp3_;
	memset (&_data_->_tmp5_, 0, sizeof (TubaApplicationQuestionButtons));
	tuba_application_question_button_destroy (&_data_->_tmp5_.yes);
	_data_->_tmp5_.yes = (TubaApplicationQuestionButton) {_ ("Remove"), ADW_RESPONSE_DESTRUCTIVE};
	tuba_application_question_button_destroy (&_data_->_tmp5_.no);
	_data_->_tmp5_.no = (TubaApplicationQuestionButton) {_ ("Cancel"), ADW_RESPONSE_DEFAULT};
	_data_->_state_ = 1;
	tuba_application_question (_data_->_tmp0_, &_data_->_tmp1_, NULL, (GtkWidget*) _data_->_tmp4_, &_data_->_tmp5_, NULL, FALSE, tuba_widgets_status_revoke_quote_real_ready, _data_);
	return FALSE;
	_state_1:
	_data_->res = tuba_application_question_finish (_data_->_tmp0_, _data_->_res_);
	if (!tuba_application_question_answer_truthy (_data_->res)) {
		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;
	}
	{
		_data_->_tmp6_ = tuba_widgets_status_get_status (_data_->self);
		_data_->_tmp7_ = _data_->_tmp6_;
		_data_->_tmp8_ = tuba_api_status_get_formal (_data_->_tmp7_);
		_data_->_tmp9_ = _data_->_tmp8_;
		_data_->_tmp10_ = tuba_api_status_get_quote (_data_->_tmp9_);
		_data_->_tmp11_ = _data_->_tmp10_;
		_data_->_tmp12_ = tuba_api_status_get_id ((TubaAPIStatus*) _data_->_tmp11_);
		_data_->_tmp13_ = _data_->_tmp12_;
		_data_->_tmp14_ = string_to_string (_data_->_tmp13_);
		_data_->_tmp15_ = tuba_widgets_status_get_status (_data_->self);
		_data_->_tmp16_ = _data_->_tmp15_;
		_data_->_tmp17_ = tuba_api_status_get_formal (_data_->_tmp16_);
		_data_->_tmp18_ = _data_->_tmp17_;
		_data_->_tmp19_ = tuba_api_status_get_id (_data_->_tmp18_);
		_data_->_tmp20_ = _data_->_tmp19_;
		_data_->_tmp21_ = string_to_string (_data_->_tmp20_);
		_data_->_tmp22_ = g_strconcat ("/api/v1/statuses/", _data_->_tmp14_, "/quotes/", _data_->_tmp21_, "/revoke", NULL);
		_data_->_tmp23_ = _data_->_tmp22_;
		_data_->_tmp24_ = tuba_accounts;
		_data_->_tmp25_ = tuba_account_store_get_active (_data_->_tmp24_);
		_data_->_tmp26_ = _data_->_tmp25_;
		_data_->_tmp27_ = _g_object_ref0 (_data_->_tmp26_);
		_data_->_tmp28_ = NULL;
		_data_->_tmp28_ = tuba_request_v2_new (_data_->_tmp23_, TUBA_REQUEST_V2_METHOD_POST);
		tuba_request_v2_set_account (_data_->_tmp28_, _data_->_tmp27_);
		_g_object_unref0 (_data_->_tmp27_);
		_data_->_tmp29_ = _data_->_tmp28_;
		_g_free0 (_data_->_tmp23_);
		_data_->req = _data_->_tmp29_;
		_data_->_tmp30_ = _data_->req;
		_data_->_state_ = 2;
		tuba_request_v2_exec (_data_->_tmp30_, tuba_widgets_status_revoke_quote_real_ready, _data_);
		return FALSE;
		_state_2:
		_data_->_tmp31_ = tuba_request_v2_exec_finish (_data_->_tmp30_, _data_->_res_, NULL, &_data_->_inner_error0_);
		_data_->in_stream = _data_->_tmp31_;
		if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
			_g_object_unref0 (_data_->req);
			goto __catch0_g_error;
		}
		_data_->_tmp32_ = _data_->in_stream;
		_data_->_state_ = 3;
		tuba_network_get_parser_from_inputstream_async (_data_->_tmp32_, NULL, tuba_widgets_status_revoke_quote_real_ready, _data_);
		return FALSE;
		_state_3:
		_data_->_tmp33_ = tuba_network_get_parser_from_inputstream_finish (_data_->_res_, &_data_->_inner_error0_);
		_data_->parser = _data_->_tmp33_;
		if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
			_g_object_unref0 (_data_->in_stream);
			_g_object_unref0 (_data_->req);
			goto __catch0_g_error;
		}
		_data_->_tmp34_ = tuba_network;
		_data_->_tmp35_ = _data_->parser;
		_data_->_tmp36_ = tuba_network_parse_node (_data_->_tmp34_, _data_->_tmp35_);
		_data_->node = _data_->_tmp36_;
		_data_->_tmp38_ = _data_->node;
		_data_->_tmp39_ = tuba_api_status_from (_data_->_tmp38_, &_data_->_inner_error0_);
		_data_->_tmp37_ = _data_->_tmp39_;
		if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
			__vala_JsonNode_free0 (_data_->node);
			_g_object_unref0 (_data_->parser);
			_g_object_unref0 (_data_->in_stream);
			_g_object_unref0 (_data_->req);
			goto __catch0_g_error;
		}
		tuba_widgets_status_on_edit (_data_->self, _data_->_tmp37_);
		_g_object_unref0 (_data_->_tmp37_);
		__vala_JsonNode_free0 (_data_->node);
		_g_object_unref0 (_data_->parser);
		_g_object_unref0 (_data_->in_stream);
		_g_object_unref0 (_data_->req);
	}
	goto __finally0;
	__catch0_g_error:
	{
		_data_->e = _data_->_inner_error0_;
		_data_->_inner_error0_ = NULL;
		_data_->_tmp40_ = _data_->e;
		_data_->_tmp41_ = g_strdup_printf ("%i", _data_->_tmp40_->code);
		_data_->_tmp42_ = _data_->_tmp41_;
		_data_->_tmp43_ = _data_->e;
		_data_->_tmp44_ = _data_->_tmp43_->message;
		_data_->_tmp45_ = string_to_string (_data_->_tmp44_);
		_data_->_tmp46_ = g_strconcat ("Couldn't revoke quote: ", _data_->_tmp42_, " ", _data_->_tmp45_, NULL);
		_data_->_tmp47_ = _data_->_tmp46_;
		g_warning ("Status.vala:652: %s", _data_->_tmp47_);
		_g_free0 (_data_->_tmp47_);
		_g_free0 (_data_->_tmp42_);
		_data_->_tmp48_ = tuba_app;
		_data_->_tmp49_ = _data_->e;
		_data_->_tmp50_ = _data_->_tmp49_->message;
		_data_->_tmp51_ = g_strdup_printf ("%s %s", _ ("Error"), _data_->_tmp50_);
		_data_->_tmp52_ = _data_->_tmp51_;
		g_signal_emit_by_name (_data_->_tmp48_, "toast", _data_->_tmp52_, (guint) 5, NULL, NULL, NULL);
		_g_free0 (_data_->_tmp52_);
		_g_error_free0 (_data_->e);
	}
	__finally0:
	if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _data_->_inner_error0_->message, g_quark_to_string (_data_->_inner_error0_->domain), _data_->_inner_error0_->code);
		g_clear_error (&_data_->_inner_error0_);
		g_object_unref (_data_->_async_result);
		return FALSE;
	}
	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 Block102Data*
block102_data_ref (Block102Data* _data102_)
{
	g_atomic_int_inc (&_data102_->_ref_count_);
	return _data102_;
}

static void
block102_data_unref (void * _userdata_)
{
	Block102Data* _data102_;
	_data102_ = (Block102Data*) _userdata_;
	if (g_atomic_int_dec_and_test (&_data102_->_ref_count_)) {
		TubaWidgetsStatus* self;
		self = _data102_->self;
		_g_object_unref0 (_data102_->dlg);
		_g_object_unref0 (self);
		g_slice_free (Block102Data, _data102_);
	}
}

static void
__lambda101_ (Block102Data* _data102_,
              GObject* obj,
              GAsyncResult* res)
{
	TubaWidgetsStatus* self;
	const gchar* _tmp0_;
	const gchar* _tmp1_;
	GQuark _tmp3_ = 0U;
	static GQuark _tmp2_label0 = 0;
	static GQuark _tmp2_label1 = 0;
	self = _data102_->self;
	g_return_if_fail (res != NULL);
	_tmp0_ = adw_alert_dialog_choose_finish (_data102_->dlg, res);
	_tmp1_ = _tmp0_;
	_tmp3_ = (NULL == _tmp1_) ? 0 : g_quark_from_string (_tmp1_);
	if (_tmp3_ == ((0 != _tmp2_label0) ? _tmp2_label0 : (_tmp2_label0 = g_quark_from_static_string ("delete")))) {
		switch (0) {
			default:
			{
				tuba_widgets_status_delete_status_real (self, NULL, NULL);
				break;
			}
		}
	} else if (_tmp3_ == ((0 != _tmp2_label1) ? _tmp2_label1 : (_tmp2_label1 = g_quark_from_static_string ("redraft")))) {
		switch (0) {
			default:
			{
				tuba_widgets_status_edit_status_real (self, TRUE, NULL, NULL);
				break;
			}
		}
	} else {
		switch (0) {
			default:
			{
				break;
			}
		}
	}
}

static void
___lambda101__gasync_ready_callback (GObject* source_object,
                                     GAsyncResult* res,
                                     gpointer self)
{
	__lambda101_ (self, source_object, res);
	block102_data_unref (self);
}

static void
tuba_widgets_status_delete_status (TubaWidgetsStatus* self)
{
	Block102Data* _data102_;
	gchar* _tmp0_;
	gchar* _tmp1_;
	AdwAlertDialog* _tmp2_ = NULL;
	TubaApplication* _tmp3_;
	TubaDialogsMainWindow* _tmp4_;
	TubaDialogsMainWindow* _tmp5_;
	g_return_if_fail (self != NULL);
	_data102_ = g_slice_new0 (Block102Data);
	_data102_->_ref_count_ = 1;
	_data102_->self = g_object_ref (self);
	_tmp0_ = g_strdup ("delete");
	_tmp1_ = g_strdup ("cancel");
	_tmp2_ = (AdwAlertDialog*) adw_alert_dialog_new (_ ("Delete Post?"), NULL);
	adw_alert_dialog_set_heading_use_markup (_tmp2_, FALSE);
	adw_alert_dialog_set_body_use_markup (_tmp2_, FALSE);
	adw_alert_dialog_set_default_response (_tmp2_, _tmp0_);
	_g_free0 (_tmp0_);
	adw_alert_dialog_set_close_response (_tmp2_, _tmp1_);
	_g_free0 (_tmp1_);
	g_object_ref_sink (_tmp2_);
	_data102_->dlg = _tmp2_;
	adw_alert_dialog_add_responses (_data102_->dlg, "cancel", _ ("Cancel"), "redraft", _ ("Redraft"), "delete", _ ("Delete"), NULL);
	adw_alert_dialog_set_response_appearance (_data102_->dlg, "delete", ADW_RESPONSE_DESTRUCTIVE);
	adw_alert_dialog_set_response_appearance (_data102_->dlg, "redraft", ADW_RESPONSE_DESTRUCTIVE);
	_tmp3_ = tuba_app;
	_tmp4_ = tuba_application_get_main_window (_tmp3_);
	_tmp5_ = _tmp4_;
	adw_alert_dialog_choose (_data102_->dlg, (GtkWidget*) _tmp5_, NULL, ___lambda101__gasync_ready_callback, block102_data_ref (_data102_));
	block102_data_unref (_data102_);
	_data102_ = NULL;
}

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

static void
tuba_widgets_status_delete_status_real (TubaWidgetsStatus* self,
                                        GAsyncReadyCallback _callback_,
                                        gpointer _user_data_)
{
	TubaWidgetsStatusDeleteStatusRealData* _data_;
	TubaWidgetsStatus* _tmp0_;
	g_return_if_fail (self != NULL);
	_data_ = g_slice_new0 (TubaWidgetsStatusDeleteStatusRealData);
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
	g_task_set_task_data (_data_->_async_result, _data_, tuba_widgets_status_delete_status_real_data_free);
	_tmp0_ = _g_object_ref0 (self);
	_data_->self = _tmp0_;
	tuba_widgets_status_delete_status_real_co (_data_);
}

static void
tuba_widgets_status_delete_status_real_finish (TubaWidgetsStatus* self,
                                               GAsyncResult* _res_)
{
	TubaWidgetsStatusDeleteStatusRealData* _data_;
	_data_ = g_task_propagate_pointer (G_TASK (_res_), NULL);
}

static void
tuba_widgets_status_delete_status_real_ready (GObject* source_object,
                                              GAsyncResult* _res_,
                                              gpointer _user_data_)
{
	TubaWidgetsStatusDeleteStatusRealData* _data_;
	_data_ = _user_data_;
	_data_->_source_object_ = source_object;
	_data_->_res_ = _res_;
	tuba_widgets_status_delete_status_real_co (_data_);
}

static gboolean
tuba_widgets_status_delete_status_real_co (TubaWidgetsStatusDeleteStatusRealData* _data_)
{
	switch (_data_->_state_) {
		case 0:
		goto _state_0;
		case 1:
		goto _state_1;
		default:
		g_assert_not_reached ();
	}
	_state_0:
	{
		_data_->_tmp0_ = tuba_widgets_status_get_status (_data_->self);
		_data_->_tmp1_ = _data_->_tmp0_;
		_data_->_tmp2_ = tuba_api_status_get_formal (_data_->_tmp1_);
		_data_->_tmp3_ = _data_->_tmp2_;
		_data_->_tmp4_ = tuba_api_status_get_id (_data_->_tmp3_);
		_data_->_tmp5_ = _data_->_tmp4_;
		_data_->_tmp6_ = g_strdup (_data_->_tmp5_);
		_data_->s_id = _data_->_tmp6_;
		_data_->_tmp7_ = tuba_widgets_status_get_status (_data_->self);
		_data_->_tmp8_ = _data_->_tmp7_;
		_data_->_tmp9_ = tuba_api_status_get_formal (_data_->_tmp8_);
		_data_->_tmp10_ = _data_->_tmp9_;
		_data_->_tmp11_ = tuba_api_status_annihilate (_data_->_tmp10_);
		_data_->_tmp12_ = _data_->_tmp11_;
		_data_->_state_ = 1;
		tuba_request_v2_exec (_data_->_tmp12_, tuba_widgets_status_delete_status_real_ready, _data_);
		return FALSE;
		_state_1:
		_data_->_tmp13_ = tuba_request_v2_exec_finish (_data_->_tmp12_, _data_->_res_, NULL, &_data_->_inner_error0_);
		_data_->_tmp14_ = _data_->_tmp13_;
		_g_object_unref0 (_data_->_tmp14_);
		_g_object_unref0 (_data_->_tmp12_);
		if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
			_g_free0 (_data_->s_id);
			goto __catch0_g_error;
		}
		_data_->_tmp15_ = tuba_app;
		g_signal_emit_by_name (_data_->_tmp15_, "remove-status-widget", _data_->s_id);
		_g_free0 (_data_->s_id);
	}
	goto __finally0;
	__catch0_g_error:
	{
		_data_->e = _data_->_inner_error0_;
		_data_->_inner_error0_ = NULL;
		_data_->_tmp16_ = _data_->e;
		_data_->_tmp17_ = g_strdup_printf ("%i", _data_->_tmp16_->code);
		_data_->_tmp18_ = _data_->_tmp17_;
		_data_->_tmp19_ = _data_->e;
		_data_->_tmp20_ = _data_->_tmp19_->message;
		_data_->_tmp21_ = string_to_string (_data_->_tmp20_);
		_data_->_tmp22_ = g_strconcat ("Couldn't delete status: ", _data_->_tmp18_, " ", _data_->_tmp21_, NULL);
		_data_->_tmp23_ = _data_->_tmp22_;
		g_warning ("Status.vala:698: %s", _data_->_tmp23_);
		_g_free0 (_data_->_tmp23_);
		_g_free0 (_data_->_tmp18_);
		_data_->_tmp24_ = tuba_app;
		_data_->_tmp25_ = _data_->e;
		_data_->_tmp26_ = _data_->_tmp25_->message;
		_data_->_tmp27_ = g_strdup_printf ("%s %s", _ ("Error"), _data_->_tmp26_);
		_data_->_tmp28_ = _data_->_tmp27_;
		g_signal_emit_by_name (_data_->_tmp24_, "toast", _data_->_tmp28_, (guint) 5, NULL, NULL, NULL);
		_g_free0 (_data_->_tmp28_);
		_g_error_free0 (_data_->e);
	}
	__finally0:
	if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _data_->_inner_error0_->message, g_quark_to_string (_data_->_inner_error0_->domain), _data_->_inner_error0_->code);
		g_clear_error (&_data_->_inner_error0_);
		g_object_unref (_data_->_async_result);
		return FALSE;
	}
	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_widgets_status_toggle_mute_conversation (TubaWidgetsStatus* self)
{
	g_return_if_fail (self != NULL);
	tuba_widgets_status_toggle_mute_conversation_real (self, NULL, NULL);
}

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

static void
tuba_widgets_status_toggle_mute_conversation_real (TubaWidgetsStatus* self,
                                                   GAsyncReadyCallback _callback_,
                                                   gpointer _user_data_)
{
	TubaWidgetsStatusToggleMuteConversationRealData* _data_;
	TubaWidgetsStatus* _tmp0_;
	g_return_if_fail (self != NULL);
	_data_ = g_slice_new0 (TubaWidgetsStatusToggleMuteConversationRealData);
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
	g_task_set_task_data (_data_->_async_result, _data_, tuba_widgets_status_toggle_mute_conversation_real_data_free);
	_tmp0_ = _g_object_ref0 (self);
	_data_->self = _tmp0_;
	tuba_widgets_status_toggle_mute_conversation_real_co (_data_);
}

static void
tuba_widgets_status_toggle_mute_conversation_real_finish (TubaWidgetsStatus* self,
                                                          GAsyncResult* _res_)
{
	TubaWidgetsStatusToggleMuteConversationRealData* _data_;
	_data_ = g_task_propagate_pointer (G_TASK (_res_), NULL);
}

static void
tuba_widgets_status_toggle_mute_conversation_real_ready (GObject* source_object,
                                                         GAsyncResult* _res_,
                                                         gpointer _user_data_)
{
	TubaWidgetsStatusToggleMuteConversationRealData* _data_;
	_data_ = _user_data_;
	_data_->_source_object_ = source_object;
	_data_->_res_ = _res_;
	tuba_widgets_status_toggle_mute_conversation_real_co (_data_);
}

static gboolean
tuba_widgets_status_toggle_mute_conversation_real_co (TubaWidgetsStatusToggleMuteConversationRealData* _data_)
{
	switch (_data_->_state_) {
		case 0:
		goto _state_0;
		case 1:
		goto _state_1;
		default:
		g_assert_not_reached ();
	}
	_state_0:
	_data_->_tmp1_ = tuba_widgets_status_get_status (_data_->self);
	_data_->_tmp2_ = _data_->_tmp1_;
	_data_->_tmp3_ = tuba_api_status_get_formal (_data_->_tmp2_);
	_data_->_tmp4_ = _data_->_tmp3_;
	_data_->_tmp5_ = tuba_api_status_get_muted (_data_->_tmp4_);
	_data_->_tmp6_ = _data_->_tmp5_;
	if (_data_->_tmp6_) {
		_data_->_tmp0_ = "unmute";
	} else {
		_data_->_tmp0_ = "mute";
	}
	_data_->_tmp7_ = g_strdup (_data_->_tmp0_);
	_data_->api_action = _data_->_tmp7_;
	_data_->_tmp8_ = tuba_widgets_status_get_status (_data_->self);
	_data_->_tmp9_ = _data_->_tmp8_;
	_data_->_tmp10_ = tuba_api_status_get_formal (_data_->_tmp9_);
	_data_->_tmp11_ = _data_->_tmp10_;
	_data_->_tmp12_ = tuba_api_status_get_id (_data_->_tmp11_);
	_data_->_tmp13_ = _data_->_tmp12_;
	_data_->_tmp14_ = string_to_string (_data_->_tmp13_);
	_data_->_tmp15_ = string_to_string (_data_->api_action);
	_data_->_tmp16_ = g_strconcat ("/api/v1/statuses/", _data_->_tmp14_, "/", _data_->_tmp15_, NULL);
	_data_->_tmp17_ = _data_->_tmp16_;
	_data_->_tmp18_ = tuba_accounts;
	_data_->_tmp19_ = tuba_account_store_get_active (_data_->_tmp18_);
	_data_->_tmp20_ = _data_->_tmp19_;
	_data_->_tmp21_ = _g_object_ref0 (_data_->_tmp20_);
	_data_->_tmp22_ = NULL;
	_data_->_tmp22_ = tuba_request_v2_new (_data_->_tmp17_, TUBA_REQUEST_V2_METHOD_POST);
	tuba_request_v2_set_account (_data_->_tmp22_, _data_->_tmp21_);
	_g_object_unref0 (_data_->_tmp21_);
	_data_->_tmp23_ = _data_->_tmp22_;
	_g_free0 (_data_->_tmp17_);
	_data_->req = _data_->_tmp23_;
	{
		_data_->_state_ = 1;
		tuba_request_v2_exec (_data_->req, tuba_widgets_status_toggle_mute_conversation_real_ready, _data_);
		return FALSE;
		_state_1:
		_data_->_tmp24_ = tuba_request_v2_exec_finish (_data_->req, _data_->_res_, NULL, &_data_->_inner_error0_);
		_data_->_tmp25_ = _data_->_tmp24_;
		_g_object_unref0 (_data_->_tmp25_);
		if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
			goto __catch0_g_error;
		}
		_data_->_tmp26_ = tuba_widgets_status_get_status (_data_->self);
		_data_->_tmp27_ = _data_->_tmp26_;
		_data_->_tmp28_ = tuba_api_status_get_formal (_data_->_tmp27_);
		_data_->_tmp29_ = _data_->_tmp28_;
		_data_->_tmp30_ = tuba_widgets_status_get_status (_data_->self);
		_data_->_tmp31_ = _data_->_tmp30_;
		_data_->_tmp32_ = tuba_api_status_get_formal (_data_->_tmp31_);
		_data_->_tmp33_ = _data_->_tmp32_;
		_data_->_tmp34_ = tuba_api_status_get_muted (_data_->_tmp33_);
		_data_->_tmp35_ = _data_->_tmp34_;
		tuba_api_status_set_muted (_data_->_tmp29_, !_data_->_tmp35_);
		tuba_widgets_status_update_mute_conversation_actions_enabled_status (_data_->self);
	}
	goto __finally0;
	__catch0_g_error:
	{
		_data_->e = _data_->_inner_error0_;
		_data_->_inner_error0_ = NULL;
		_data_->_tmp36_ = string_to_string (_data_->api_action);
		_data_->_tmp37_ = tuba_widgets_status_get_status (_data_->self);
		_data_->_tmp38_ = _data_->_tmp37_;
		_data_->_tmp39_ = tuba_api_status_get_formal (_data_->_tmp38_);
		_data_->_tmp40_ = _data_->_tmp39_;
		_data_->_tmp41_ = tuba_api_status_get_id (_data_->_tmp40_);
		_data_->_tmp42_ = _data_->_tmp41_;
		_data_->_tmp43_ = string_to_string (_data_->_tmp42_);
		_data_->_tmp44_ = _data_->e;
		_data_->_tmp45_ = g_strdup_printf ("%i", _data_->_tmp44_->code);
		_data_->_tmp46_ = _data_->_tmp45_;
		_data_->_tmp47_ = _data_->e;
		_data_->_tmp48_ = _data_->_tmp47_->message;
		_data_->_tmp49_ = string_to_string (_data_->_tmp48_);
		_data_->_tmp50_ = g_strconcat ("Couldn't ", _data_->_tmp36_, " ", _data_->_tmp43_, ": ", _data_->_tmp46_, " ", _data_->_tmp49_, NULL);
		_data_->_tmp51_ = _data_->_tmp50_;
		g_warning ("Status.vala:716: %s", _data_->_tmp51_);
		_g_free0 (_data_->_tmp51_);
		_g_free0 (_data_->_tmp46_);
		if (g_strcmp0 (_data_->api_action, "mute") == 0) {
			_data_->_tmp53_ = _data_->e;
			_data_->_tmp54_ = _data_->_tmp53_->message;
			_data_->_tmp55_ = g_strdup_printf (_ ("Couldn't Mute Conversation: %s"), _data_->_tmp54_);
			_g_free0 (_data_->_tmp52_);
			_data_->_tmp52_ = _data_->_tmp55_;
		} else {
			_data_->_tmp56_ = _data_->e;
			_data_->_tmp57_ = _data_->_tmp56_->message;
			_data_->_tmp58_ = g_strdup_printf (_ ("Couldn't Unmute Conversation: %s"), _data_->_tmp57_);
			_g_free0 (_data_->_tmp52_);
			_data_->_tmp52_ = _data_->_tmp58_;
		}
		_data_->_tmp59_ = tuba_app;
		g_signal_emit_by_name (_data_->_tmp59_, "toast", _data_->_tmp52_, (guint) 5, NULL, NULL, NULL);
		_g_free0 (_data_->_tmp52_);
		_g_error_free0 (_data_->e);
	}
	__finally0:
	if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
		_g_object_unref0 (_data_->req);
		_g_free0 (_data_->api_action);
		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_->req);
	_g_free0 (_data_->api_action);
	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_widgets_status_update_mute_conversation_actions_enabled_status (TubaWidgetsStatus* self)
{
	gboolean _tmp0_ = FALSE;
	GSimpleAction* _tmp1_;
	gboolean can_mute_convo = FALSE;
	TubaAPIStatus* _tmp3_;
	TubaAPIStatus* _tmp4_;
	TubaAPIStatus* _tmp5_;
	TubaAPIStatus* _tmp6_;
	TubaAPIAccount* _tmp7_;
	TubaAPIAccount* _tmp8_;
	gboolean _tmp9_ = FALSE;
	gboolean _tmp10_ = FALSE;
	g_return_if_fail (self != NULL);
	_tmp1_ = self->priv->mute_conversation_action;
	if (_tmp1_ == NULL) {
		_tmp0_ = TRUE;
	} else {
		GSimpleAction* _tmp2_;
		_tmp2_ = self->priv->unmute_conversation_action;
		_tmp0_ = _tmp2_ == NULL;
	}
	if (_tmp0_) {
		return;
	}
	_tmp3_ = tuba_widgets_status_get_status (self);
	_tmp4_ = _tmp3_;
	_tmp5_ = tuba_api_status_get_formal (_tmp4_);
	_tmp6_ = _tmp5_;
	_tmp7_ = tuba_api_status_get_account (_tmp6_);
	_tmp8_ = _tmp7_;
	can_mute_convo = tuba_api_account_is_self (_tmp8_);
	if (!can_mute_convo) {
		TubaAPIStatus* _tmp11_;
		TubaAPIStatus* _tmp12_;
		TubaAPIStatus* _tmp13_;
		TubaAPIStatus* _tmp14_;
		GeeArrayList* _tmp15_;
		GeeArrayList* _tmp16_;
		_tmp11_ = tuba_widgets_status_get_status (self);
		_tmp12_ = _tmp11_;
		_tmp13_ = tuba_api_status_get_formal (_tmp12_);
		_tmp14_ = _tmp13_;
		_tmp15_ = tuba_api_status_get_mentions (_tmp14_);
		_tmp16_ = _tmp15_;
		_tmp10_ = _tmp16_ != NULL;
	} else {
		_tmp10_ = FALSE;
	}
	if (_tmp10_) {
		TubaAPIStatus* _tmp17_;
		TubaAPIStatus* _tmp18_;
		TubaAPIStatus* _tmp19_;
		TubaAPIStatus* _tmp20_;
		GeeArrayList* _tmp21_;
		GeeArrayList* _tmp22_;
		gint _tmp23_;
		gint _tmp24_;
		_tmp17_ = tuba_widgets_status_get_status (self);
		_tmp18_ = _tmp17_;
		_tmp19_ = tuba_api_status_get_formal (_tmp18_);
		_tmp20_ = _tmp19_;
		_tmp21_ = tuba_api_status_get_mentions (_tmp20_);
		_tmp22_ = _tmp21_;
		_tmp23_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp22_);
		_tmp24_ = _tmp23_;
		_tmp9_ = _tmp24_ > 0;
	} else {
		_tmp9_ = FALSE;
	}
	if (_tmp9_) {
		{
			GeeArrayList* _mention_list = NULL;
			TubaAPIStatus* _tmp25_;
			TubaAPIStatus* _tmp26_;
			TubaAPIStatus* _tmp27_;
			TubaAPIStatus* _tmp28_;
			GeeArrayList* _tmp29_;
			GeeArrayList* _tmp30_;
			gint _mention_size = 0;
			GeeArrayList* _tmp31_;
			gint _tmp32_;
			gint _tmp33_;
			gint _mention_index = 0;
			_tmp25_ = tuba_widgets_status_get_status (self);
			_tmp26_ = _tmp25_;
			_tmp27_ = tuba_api_status_get_formal (_tmp26_);
			_tmp28_ = _tmp27_;
			_tmp29_ = tuba_api_status_get_mentions (_tmp28_);
			_tmp30_ = _tmp29_;
			_mention_list = _tmp30_;
			_tmp31_ = _mention_list;
			_tmp32_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp31_);
			_tmp33_ = _tmp32_;
			_mention_size = _tmp33_;
			_mention_index = -1;
			while (TRUE) {
				gint _tmp34_;
				gint _tmp35_;
				TubaAPIMention* mention = NULL;
				GeeArrayList* _tmp36_;
				gpointer _tmp37_;
				TubaAPIMention* _tmp38_;
				const gchar* _tmp39_;
				const gchar* _tmp40_;
				TubaAccountStore* _tmp41_;
				TubaInstanceAccount* _tmp42_;
				TubaInstanceAccount* _tmp43_;
				const gchar* _tmp44_;
				const gchar* _tmp45_;
				_mention_index = _mention_index + 1;
				_tmp34_ = _mention_index;
				_tmp35_ = _mention_size;
				if (!(_tmp34_ < _tmp35_)) {
					break;
				}
				_tmp36_ = _mention_list;
				_tmp37_ = gee_abstract_list_get ((GeeAbstractList*) _tmp36_, _mention_index);
				mention = (TubaAPIMention*) _tmp37_;
				_tmp38_ = mention;
				_tmp39_ = tuba_api_mention_get_id (_tmp38_);
				_tmp40_ = _tmp39_;
				_tmp41_ = tuba_accounts;
				_tmp42_ = tuba_account_store_get_active (_tmp41_);
				_tmp43_ = _tmp42_;
				_tmp44_ = tuba_api_account_get_id ((TubaAPIAccount*) _tmp43_);
				_tmp45_ = _tmp44_;
				if (g_strcmp0 (_tmp40_, _tmp45_) == 0) {
					can_mute_convo = TRUE;
					_g_object_unref0 (mention);
					break;
				}
				_g_object_unref0 (mention);
			}
		}
	}
	if (can_mute_convo) {
		GSimpleAction* _tmp46_;
		TubaAPIStatus* _tmp47_;
		TubaAPIStatus* _tmp48_;
		TubaAPIStatus* _tmp49_;
		TubaAPIStatus* _tmp50_;
		gboolean _tmp51_;
		gboolean _tmp52_;
		GSimpleAction* _tmp53_;
		TubaAPIStatus* _tmp54_;
		TubaAPIStatus* _tmp55_;
		TubaAPIStatus* _tmp56_;
		TubaAPIStatus* _tmp57_;
		gboolean _tmp58_;
		gboolean _tmp59_;
		_tmp46_ = self->priv->mute_conversation_action;
		_tmp47_ = tuba_widgets_status_get_status (self);
		_tmp48_ = _tmp47_;
		_tmp49_ = tuba_api_status_get_formal (_tmp48_);
		_tmp50_ = _tmp49_;
		_tmp51_ = tuba_api_status_get_muted (_tmp50_);
		_tmp52_ = _tmp51_;
		g_simple_action_set_enabled (_tmp46_, !_tmp52_);
		_tmp53_ = self->priv->unmute_conversation_action;
		_tmp54_ = tuba_widgets_status_get_status (self);
		_tmp55_ = _tmp54_;
		_tmp56_ = tuba_api_status_get_formal (_tmp55_);
		_tmp57_ = _tmp56_;
		_tmp58_ = tuba_api_status_get_muted (_tmp57_);
		_tmp59_ = _tmp58_;
		g_simple_action_set_enabled (_tmp53_, _tmp59_);
	} else {
		GSimpleAction* _tmp60_;
		GSimpleAction* _tmp61_;
		_tmp60_ = self->priv->mute_conversation_action;
		g_simple_action_set_enabled (_tmp60_, FALSE);
		_tmp61_ = self->priv->unmute_conversation_action;
		g_simple_action_set_enabled (_tmp61_, FALSE);
	}
}

static void
tuba_widgets_status_translate (TubaWidgetsStatus* self)
{
	g_return_if_fail (self != NULL);
	tuba_widgets_status_translate_real (self, NULL, NULL);
}

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

static void
tuba_widgets_status_translate_real (TubaWidgetsStatus* self,
                                    GAsyncReadyCallback _callback_,
                                    gpointer _user_data_)
{
	TubaWidgetsStatusTranslateRealData* _data_;
	TubaWidgetsStatus* _tmp0_;
	g_return_if_fail (self != NULL);
	_data_ = g_slice_new0 (TubaWidgetsStatusTranslateRealData);
	_data_->_async_result = g_task_new (G_OBJECT (self), NULL, _callback_, _user_data_);
	g_task_set_task_data (_data_->_async_result, _data_, tuba_widgets_status_translate_real_data_free);
	_tmp0_ = _g_object_ref0 (self);
	_data_->self = _tmp0_;
	tuba_widgets_status_translate_real_co (_data_);
}

static void
tuba_widgets_status_translate_real_finish (TubaWidgetsStatus* self,
                                           GAsyncResult* _res_)
{
	TubaWidgetsStatusTranslateRealData* _data_;
	_data_ = g_task_propagate_pointer (G_TASK (_res_), NULL);
}

static void
tuba_widgets_status_translate_real_ready (GObject* source_object,
                                          GAsyncResult* _res_,
                                          gpointer _user_data_)
{
	TubaWidgetsStatusTranslateRealData* _data_;
	_data_ = _user_data_;
	_data_->_source_object_ = source_object;
	_data_->_res_ = _res_;
	tuba_widgets_status_translate_real_co (_data_);
}

static gboolean
tuba_widgets_status_translate_real_co (TubaWidgetsStatusTranslateRealData* _data_)
{
	switch (_data_->_state_) {
		case 0:
		goto _state_0;
		case 1:
		goto _state_1;
		case 2:
		goto _state_2;
		case 3:
		goto _state_3;
		case 4:
		goto _state_4;
		default:
		g_assert_not_reached ();
	}
	_state_0:
	_data_->_tmp0_ = _data_->self->priv->_translation;
	if (_data_->_tmp0_ != NULL) {
		tuba_widgets_status_set_translation (_data_->self, NULL);
		tuba_widgets_status_bind (_data_->self);
		_data_->_tmp1_ = _data_->self->priv->translate_simple_action;
		g_simple_action_set_enabled (_data_->_tmp1_, TRUE);
		_data_->_tmp2_ = _data_->self->priv->show_original_simple_action;
		g_simple_action_set_enabled (_data_->_tmp2_, FALSE);
		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;
	}
	_data_->_tmp3_ = tuba_accounts;
	_data_->_tmp4_ = tuba_account_store_get_active (_data_->_tmp3_);
	_data_->_tmp5_ = _data_->_tmp4_;
	_data_->_tmp6_ = tuba_instance_account_get_instance_info (_data_->_tmp5_);
	_data_->_tmp7_ = _data_->_tmp6_;
	_data_->_tmp8_ = tuba_api_instance_get_pleroma (_data_->_tmp7_);
	_data_->_tmp9_ = _data_->_tmp8_;
	if (_data_->_tmp9_ != NULL) {
		_data_->_tmp10_ = tuba_widgets_status_get_status (_data_->self);
		_data_->_tmp11_ = _data_->_tmp10_;
		_data_->_tmp12_ = tuba_api_status_get_formal (_data_->_tmp11_);
		_data_->_tmp13_ = _data_->_tmp12_;
		_data_->_tmp14_ = tuba_api_status_get_id (_data_->_tmp13_);
		_data_->_tmp15_ = _data_->_tmp14_;
		_data_->_tmp16_ = string_to_string (_data_->_tmp15_);
		_data_->_tmp17_ = tuba_default_locale;
		_data_->_tmp18_ = string_to_string (_data_->_tmp17_);
		_data_->_tmp19_ = g_strconcat ("/api/v1/statuses/", _data_->_tmp16_, "/translations/", _data_->_tmp18_, NULL);
		_data_->_tmp20_ = _data_->_tmp19_;
		_data_->_tmp21_ = tuba_accounts;
		_data_->_tmp22_ = tuba_account_store_get_active (_data_->_tmp21_);
		_data_->_tmp23_ = _data_->_tmp22_;
		_data_->_tmp24_ = _g_object_ref0 (_data_->_tmp23_);
		_data_->_tmp25_ = NULL;
		_data_->_tmp25_ = tuba_request_v2_new (_data_->_tmp20_, TUBA_REQUEST_V2_METHOD_GET);
		tuba_request_v2_set_account (_data_->_tmp25_, _data_->_tmp24_);
		_g_object_unref0 (_data_->_tmp24_);
		_data_->_tmp26_ = _data_->_tmp25_;
		_g_free0 (_data_->_tmp20_);
		_data_->req = _data_->_tmp26_;
		{
			_data_->_tmp27_ = _data_->req;
			_data_->_state_ = 1;
			tuba_request_v2_exec (_data_->_tmp27_, tuba_widgets_status_translate_real_ready, _data_);
			return FALSE;
			_state_1:
			_data_->_tmp28_ = tuba_request_v2_exec_finish (_data_->_tmp27_, _data_->_res_, NULL, &_data_->_inner_error0_);
			_data_->in_stream = _data_->_tmp28_;
			if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
				goto __catch0_g_error;
			}
			_data_->_tmp29_ = _data_->in_stream;
			_data_->_state_ = 2;
			tuba_network_get_parser_from_inputstream_async (_data_->_tmp29_, NULL, tuba_widgets_status_translate_real_ready, _data_);
			return FALSE;
			_state_2:
			_data_->_tmp30_ = tuba_network_get_parser_from_inputstream_finish (_data_->_res_, &_data_->_inner_error0_);
			_data_->parser = _data_->_tmp30_;
			if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
				_g_object_unref0 (_data_->in_stream);
				goto __catch0_g_error;
			}
			_data_->_tmp31_ = tuba_network;
			_data_->_tmp32_ = _data_->parser;
			_data_->_tmp33_ = tuba_network_parse_node (_data_->_tmp31_, _data_->_tmp32_);
			_data_->node = _data_->_tmp33_;
			_data_->_tmp34_ = _data_->node;
			_data_->_tmp35_ = tuba_api_akkoma_translation_from (_data_->_tmp34_, &_data_->_inner_error0_);
			_data_->akkotrans = _data_->_tmp35_;
			if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
				__vala_JsonNode_free0 (_data_->node);
				_g_object_unref0 (_data_->parser);
				_g_object_unref0 (_data_->in_stream);
				goto __catch0_g_error;
			}
			_data_->_tmp36_ = _data_->akkotrans;
			_data_->_tmp37_ = tuba_api_akkoma_translation_get_text (_data_->_tmp36_);
			_data_->_tmp38_ = _data_->_tmp37_;
			_data_->_tmp39_ = g_strdup (_data_->_tmp38_);
			_data_->_tmp40_ = _data_->akkotrans;
			_data_->_tmp41_ = tuba_api_akkoma_translation_get_detected_language (_data_->_tmp40_);
			_data_->_tmp42_ = _data_->_tmp41_;
			_data_->_tmp43_ = g_strdup (_data_->_tmp42_);
			_data_->_tmp44_ = NULL;
			_data_->_tmp44_ = tuba_api_translation_new ();
			tuba_api_translation_set_content (_data_->_tmp44_, _data_->_tmp39_);
			_g_free0 (_data_->_tmp39_);
			tuba_api_translation_set_detected_source_language (_data_->_tmp44_, _data_->_tmp43_);
			_g_free0 (_data_->_tmp43_);
			_data_->_tmp45_ = _data_->_tmp44_;
			tuba_widgets_status_set_translation (_data_->self, _data_->_tmp45_);
			_g_object_unref0 (_data_->_tmp45_);
			tuba_widgets_status_bind (_data_->self);
			_data_->_tmp46_ = _data_->self->priv->translate_simple_action;
			g_simple_action_set_enabled (_data_->_tmp46_, FALSE);
			_data_->_tmp47_ = _data_->self->priv->show_original_simple_action;
			g_simple_action_set_enabled (_data_->_tmp47_, TRUE);
			_g_object_unref0 (_data_->akkotrans);
			__vala_JsonNode_free0 (_data_->node);
			_g_object_unref0 (_data_->parser);
			_g_object_unref0 (_data_->in_stream);
		}
		goto __finally0;
		__catch0_g_error:
		{
			_data_->e = _data_->_inner_error0_;
			_data_->_inner_error0_ = NULL;
			_data_->_tmp48_ = tuba_widgets_status_get_status (_data_->self);
			_data_->_tmp49_ = _data_->_tmp48_;
			_data_->_tmp50_ = tuba_api_status_get_formal (_data_->_tmp49_);
			_data_->_tmp51_ = _data_->_tmp50_;
			_data_->_tmp52_ = tuba_api_status_get_id (_data_->_tmp51_);
			_data_->_tmp53_ = _data_->_tmp52_;
			_data_->_tmp54_ = string_to_string (_data_->_tmp53_);
			_data_->_tmp55_ = _data_->e;
			_data_->_tmp56_ = g_strdup_printf ("%i", _data_->_tmp55_->code);
			_data_->_tmp57_ = _data_->_tmp56_;
			_data_->_tmp58_ = _data_->e;
			_data_->_tmp59_ = _data_->_tmp58_->message;
			_data_->_tmp60_ = string_to_string (_data_->_tmp59_);
			_data_->_tmp61_ = g_strconcat ("Couldn't translate ", _data_->_tmp54_, ": ", _data_->_tmp57_, " ", _data_->_tmp60_, NULL);
			_data_->_tmp62_ = _data_->_tmp61_;
			g_warning ("Status.vala:782: %s", _data_->_tmp62_);
			_g_free0 (_data_->_tmp62_);
			_g_free0 (_data_->_tmp57_);
			_data_->_tmp63_ = tuba_app;
			_data_->_tmp64_ = _data_->e;
			_data_->_tmp65_ = _data_->_tmp64_->message;
			_data_->_tmp66_ = g_strdup_printf (_ ("Couldn't translate: %s"), _data_->_tmp65_);
			_data_->_tmp67_ = _data_->_tmp66_;
			g_signal_emit_by_name (_data_->_tmp63_, "toast", _data_->_tmp67_, (guint) 5, NULL, NULL, NULL);
			_g_free0 (_data_->_tmp67_);
			_g_error_free0 (_data_->e);
		}
		__finally0:
		if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
			_g_object_unref0 (_data_->req);
			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_->req);
		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;
	}
	_data_->_tmp68_ = tuba_widgets_status_get_status (_data_->self);
	_data_->_tmp69_ = _data_->_tmp68_;
	_data_->_tmp70_ = tuba_api_status_get_formal (_data_->_tmp69_);
	_data_->_tmp71_ = _data_->_tmp70_;
	_data_->_tmp72_ = tuba_api_status_get_id (_data_->_tmp71_);
	_data_->_tmp73_ = _data_->_tmp72_;
	_data_->_tmp74_ = string_to_string (_data_->_tmp73_);
	_data_->_tmp75_ = g_strconcat ("/api/v1/statuses/", _data_->_tmp74_, "/translate", NULL);
	_data_->_tmp76_ = _data_->_tmp75_;
	_data_->_tmp77_ = tuba_accounts;
	_data_->_tmp78_ = tuba_account_store_get_active (_data_->_tmp77_);
	_data_->_tmp79_ = _data_->_tmp78_;
	_data_->_tmp80_ = _g_object_ref0 (_data_->_tmp79_);
	_data_->_tmp81_ = NULL;
	_data_->_tmp81_ = tuba_request_v2_new (_data_->_tmp76_, TUBA_REQUEST_V2_METHOD_POST);
	tuba_request_v2_set_account (_data_->_tmp81_, _data_->_tmp80_);
	_g_object_unref0 (_data_->_tmp80_);
	_data_->_tmp82_ = _data_->_tmp81_;
	_g_free0 (_data_->_tmp76_);
	_data_->_vala1_req = _data_->_tmp82_;
	_data_->_tmp83_ = _data_->_vala1_req;
	_data_->_tmp84_ = tuba_default_locale;
	tuba_request_v2_add_form_data (_data_->_tmp83_, "lang", _data_->_tmp84_);
	{
		_data_->_tmp85_ = _data_->_vala1_req;
		_data_->_state_ = 3;
		tuba_request_v2_exec (_data_->_tmp85_, tuba_widgets_status_translate_real_ready, _data_);
		return FALSE;
		_state_3:
		_data_->_tmp86_ = tuba_request_v2_exec_finish (_data_->_tmp85_, _data_->_res_, NULL, &_data_->_inner_error0_);
		_data_->_vala1_in_stream = _data_->_tmp86_;
		if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
			goto __catch1_g_error;
		}
		_data_->_tmp87_ = _data_->_vala1_in_stream;
		_data_->_state_ = 4;
		tuba_network_get_parser_from_inputstream_async (_data_->_tmp87_, NULL, tuba_widgets_status_translate_real_ready, _data_);
		return FALSE;
		_state_4:
		_data_->_tmp88_ = tuba_network_get_parser_from_inputstream_finish (_data_->_res_, &_data_->_inner_error0_);
		_data_->_vala1_parser = _data_->_tmp88_;
		if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
			_g_object_unref0 (_data_->_vala1_in_stream);
			goto __catch1_g_error;
		}
		_data_->_tmp89_ = tuba_network;
		_data_->_tmp90_ = _data_->_vala1_parser;
		_data_->_tmp91_ = tuba_network_parse_node (_data_->_tmp89_, _data_->_tmp90_);
		_data_->_vala1_node = _data_->_tmp91_;
		_data_->_tmp93_ = _data_->_vala1_node;
		_data_->_tmp94_ = tuba_api_translation_from (_data_->_tmp93_, &_data_->_inner_error0_);
		_data_->_tmp92_ = _data_->_tmp94_;
		if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
			__vala_JsonNode_free0 (_data_->_vala1_node);
			_g_object_unref0 (_data_->_vala1_parser);
			_g_object_unref0 (_data_->_vala1_in_stream);
			goto __catch1_g_error;
		}
		tuba_widgets_status_set_translation (_data_->self, _data_->_tmp92_);
		tuba_widgets_status_bind (_data_->self);
		_data_->_tmp95_ = _data_->self->priv->translate_simple_action;
		g_simple_action_set_enabled (_data_->_tmp95_, FALSE);
		_data_->_tmp96_ = _data_->self->priv->show_original_simple_action;
		g_simple_action_set_enabled (_data_->_tmp96_, TRUE);
		_g_object_unref0 (_data_->_tmp92_);
		__vala_JsonNode_free0 (_data_->_vala1_node);
		_g_object_unref0 (_data_->_vala1_parser);
		_g_object_unref0 (_data_->_vala1_in_stream);
	}
	goto __finally1;
	__catch1_g_error:
	{
		_data_->_vala1_e = _data_->_inner_error0_;
		_data_->_inner_error0_ = NULL;
		_data_->_tmp97_ = tuba_widgets_status_get_status (_data_->self);
		_data_->_tmp98_ = _data_->_tmp97_;
		_data_->_tmp99_ = tuba_api_status_get_formal (_data_->_tmp98_);
		_data_->_tmp100_ = _data_->_tmp99_;
		_data_->_tmp101_ = tuba_api_status_get_id (_data_->_tmp100_);
		_data_->_tmp102_ = _data_->_tmp101_;
		_data_->_tmp103_ = string_to_string (_data_->_tmp102_);
		_data_->_tmp104_ = _data_->_vala1_e;
		_data_->_tmp105_ = g_strdup_printf ("%i", _data_->_tmp104_->code);
		_data_->_tmp106_ = _data_->_tmp105_;
		_data_->_tmp107_ = _data_->_vala1_e;
		_data_->_tmp108_ = _data_->_tmp107_->message;
		_data_->_tmp109_ = string_to_string (_data_->_tmp108_);
		_data_->_tmp110_ = g_strconcat ("Couldn't translate ", _data_->_tmp103_, ": ", _data_->_tmp106_, " ", _data_->_tmp109_, NULL);
		_data_->_tmp111_ = _data_->_tmp110_;
		g_warning ("Status.vala:804: %s", _data_->_tmp111_);
		_g_free0 (_data_->_tmp111_);
		_g_free0 (_data_->_tmp106_);
		_data_->_tmp112_ = tuba_app;
		_data_->_tmp113_ = _data_->_vala1_e;
		_data_->_tmp114_ = _data_->_tmp113_->message;
		_data_->_tmp115_ = g_strdup_printf (_ ("Couldn't translate: %s"), _data_->_tmp114_);
		_data_->_tmp116_ = _data_->_tmp115_;
		g_signal_emit_by_name (_data_->_tmp112_, "toast", _data_->_tmp116_, (guint) 5, NULL, NULL, NULL);
		_g_free0 (_data_->_tmp116_);
		_g_error_free0 (_data_->_vala1_e);
	}
	__finally1:
	if (G_UNLIKELY (_data_->_inner_error0_ != NULL)) {
		_g_object_unref0 (_data_->_vala1_req);
		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_->_vala1_req);
	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;
}

void
tuba_widgets_status_update_time (TubaWidgetsStatus* self)
{
	GtkLabel* _tmp0_;
	gboolean _tmp1_;
	gboolean _tmp2_;
	TubaWidgetsVoteBox* _tmp7_;
	g_return_if_fail (self != NULL);
	if (self->priv->expanded) {
		return;
	}
	_tmp0_ = self->date_label;
	_tmp1_ = gtk_widget_get_visible ((GtkWidget*) _tmp0_);
	_tmp2_ = _tmp1_;
	if (_tmp2_) {
		GtkLabel* _tmp3_;
		gchar* _tmp4_;
		gchar* _tmp5_;
		gchar* _tmp6_;
		_tmp3_ = self->date_label;
		_tmp4_ = tuba_widgets_status_get_date (self);
		_tmp5_ = _tmp4_;
		_tmp6_ = _tmp5_;
		gtk_label_set_label (_tmp3_, _tmp6_);
		_g_free0 (_tmp6_);
	}
	_tmp7_ = self->poll;
	if (_tmp7_ != NULL) {
		TubaWidgetsVoteBox* _tmp8_;
		_tmp8_ = self->poll;
		tuba_widgets_vote_box_update_time (_tmp8_, FALSE);
	}
}

static gchar*
tuba_widgets_status_formatted_full_date (TubaWidgetsStatus* self)
{
	const gchar* _tmp0_;
	const gchar* _tmp1_;
	GDateTime* _tmp2_;
	GDateTime* _tmp3_;
	GTimeZone* _tmp4_;
	GTimeZone* _tmp5_;
	GDateTime* _tmp6_;
	GDateTime* _tmp7_;
	gchar* _tmp8_;
	gchar* _tmp9_;
	gchar* result;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = tuba_widgets_status_get_full_date (self);
	_tmp1_ = _tmp0_;
	_tmp2_ = g_date_time_new_from_iso8601 (_tmp1_, NULL);
	_tmp3_ = _tmp2_;
	_tmp4_ = g_time_zone_new_local ();
	_tmp5_ = _tmp4_;
	_tmp6_ = g_date_time_to_timezone (_tmp3_, _tmp5_);
	_tmp7_ = _tmp6_;
	_tmp8_ = g_date_time_format (_tmp7_, "%F %T");
	_tmp9_ = _tmp8_;
	_g_date_time_unref0 (_tmp7_);
	_g_time_zone_unref0 (_tmp5_);
	_g_date_time_unref0 (_tmp3_);
	result = _tmp9_;
	return result;
}

static void
tuba_widgets_status_real_on_open (TubaWidgetsStatus* self)
{
	TubaAPIStatus* _tmp0_;
	TubaAPIStatus* _tmp1_;
	const gchar* _tmp2_;
	const gchar* _tmp3_;
	_tmp0_ = tuba_widgets_status_get_status (self);
	_tmp1_ = _tmp0_;
	_tmp2_ = tuba_api_status_get_id (_tmp1_);
	_tmp3_ = _tmp2_;
	if (g_strcmp0 (_tmp3_, "") == 0) {
		tuba_widgets_status_on_avatar_clicked (self);
	} else {
		tuba_widgets_status_on_open_unless_reveal (self, NULL);
	}
}

void
tuba_widgets_status_on_open (TubaWidgetsStatus* self)
{
	TubaWidgetsStatusClass* _klass_;
	g_return_if_fail (self != NULL);
	_klass_ = TUBA_WIDGETS_STATUS_GET_CLASS (self);
	if (_klass_->on_open) {
		_klass_->on_open (self);
	}
}

void
tuba_widgets_status_on_open_unless_reveal (TubaWidgetsStatus* self,
                                           GtkButton* btn)
{
	gboolean _tmp0_ = FALSE;
	gboolean _tmp1_ = FALSE;
	g_return_if_fail (self != NULL);
	if (btn != NULL) {
		GtkWidget* _tmp2_;
		_tmp2_ = gtk_widget_get_first_child ((GtkWidget*) btn);
		_tmp1_ = G_TYPE_CHECK_INSTANCE_TYPE (_tmp2_, gtk_stack_get_type ());
	} else {
		_tmp1_ = FALSE;
	}
	if (_tmp1_) {
		GtkWidget* _tmp3_;
		const gchar* _tmp4_;
		const gchar* _tmp5_;
		_tmp3_ = gtk_widget_get_first_child ((GtkWidget*) btn);
		_tmp4_ = gtk_stack_get_visible_child_name (G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, gtk_stack_get_type (), GtkStack));
		_tmp5_ = _tmp4_;
		_tmp0_ = g_strcmp0 (_tmp5_, "status") != 0;
	} else {
		_tmp0_ = FALSE;
	}
	if (_tmp0_) {
		GtkWidget* _tmp6_;
		_tmp6_ = gtk_widget_get_first_child ((GtkWidget*) btn);
		gtk_stack_set_visible_child_name (G_TYPE_CHECK_INSTANCE_CAST (_tmp6_, gtk_stack_get_type (), GtkStack), "status");
	} else {
		GtkStack* _tmp7_;
		const gchar* _tmp8_;
		const gchar* _tmp9_;
		_tmp7_ = self->filter_stack;
		_tmp8_ = gtk_stack_get_visible_child_name (_tmp7_);
		_tmp9_ = _tmp8_;
		if (g_strcmp0 (_tmp9_, "filter") == 0) {
			tuba_widgets_status_toggle_filter (self);
		} else {
			TubaAPIStatus* _tmp10_;
			TubaAPIStatus* _tmp11_;
			_tmp10_ = tuba_widgets_status_get_status (self);
			_tmp11_ = _tmp10_;
			tuba_widgetizable_open ((TubaWidgetizable*) _tmp11_);
		}
	}
}

static gboolean
_vala_string_array_contains (const gchar* * stack,
                             gssize stack_length,
                             const const gchar* needle)
{
	gssize i;
	for (i = 0; i < stack_length; i++) {
		if (g_strcmp0 (stack[i], needle) == 0) {
			return TRUE;
		}
	}
	return FALSE;
}

static void
_tuba_widgets_status_open_kind_instigator_account_tuba_widgets_avatar_mini_clicked (TubaWidgetsAvatar* _sender,
                                                                                    TubaAPIAccount* acc,
                                                                                    gpointer self)
{
	tuba_widgets_status_open_kind_instigator_account ((TubaWidgetsStatus*) self);
}

static void
_tuba_widgets_status_open_status_account_tuba_widgets_avatar_mini_clicked (TubaWidgetsAvatar* _sender,
                                                                           TubaAPIAccount* acc,
                                                                           gpointer self)
{
	tuba_widgets_status_open_status_account ((TubaWidgetsStatus*) self);
}

static void
_tuba_widgets_status_on_header_button_clicked_gtk_button_clicked (GtkButton* _sender,
                                                                  gpointer self)
{
	tuba_widgets_status_on_header_button_clicked ((TubaWidgetsStatus*) self);
}

static void
_tuba_widgets_status_on_open_gtk_button_clicked (GtkButton* _sender,
                                                 gpointer self)
{
	tuba_widgets_status_on_open ((TubaWidgetsStatus*) self);
}

static void
tuba_widgets_status_real_change_kind (TubaWidgetsStatus* self)
{
	TubaInstanceAccountKind res_kind = {0};
	gchar* actor_name = NULL;
	TubaAPIAccount* _tmp0_;
	const gchar* _tmp1_;
	const gchar* _tmp2_;
	gchar* _tmp3_;
	const gchar* _tmp4_;
	const gchar* _tmp5_;
	TubaAccountStore* _tmp8_;
	TubaInstanceAccount* _tmp9_;
	TubaInstanceAccount* _tmp10_;
	const gchar* _tmp11_;
	const gchar* _tmp12_;
	const gchar* _tmp13_;
	TubaAPIAccount* _tmp14_;
	const gchar* _tmp15_;
	const gchar* _tmp16_;
	const gchar* _tmp17_;
	TubaInstanceAccountKind _tmp18_ = {0};
	TubaInstanceAccountKind _tmp20_;
	const gchar* _tmp21_;
	GtkImage* _tmp24_;
	GtkButton* _tmp25_;
	const gchar* _tmp26_;
	const gchar* _tmp27_;
	GtkImage* _tmp66_;
	TubaInstanceAccountKind _tmp67_;
	const gchar* _tmp68_;
	TubaWidgetsRichLabel* _tmp69_;
	TubaAPIAccount* _tmp70_;
	GeeHashMap* _tmp71_;
	GeeHashMap* _tmp72_;
	GeeHashMap* _tmp73_;
	TubaWidgetsRichLabel* _tmp74_;
	TubaInstanceAccountKind _tmp75_;
	const gchar* _tmp76_;
	TubaInstanceAccountKind _tmp77_;
	const gchar* _tmp78_;
	gchar* _tmp79_;
	const gchar* _tmp80_;
	_tmp0_ = self->priv->_kind_instigator;
	_tmp1_ = tuba_api_account_get_display_name (_tmp0_);
	_tmp2_ = _tmp1_;
	_tmp3_ = g_strdup (_tmp2_);
	actor_name = _tmp3_;
	_tmp4_ = tuba_widgets_status_get_kind (self);
	_tmp5_ = _tmp4_;
	if (g_strcmp0 (_tmp5_, TUBA_INSTANCE_ACCOUNT_KIND_REPLY) == 0) {
		const gchar* _tmp6_;
		gchar* _tmp7_;
		_tmp6_ = self->priv->forced_kind_instigator_name;
		_tmp7_ = g_strdup (_tmp6_);
		_g_free0 (actor_name);
		actor_name = _tmp7_;
	}
	_tmp8_ = tuba_accounts;
	_tmp9_ = tuba_account_store_get_active (_tmp8_);
	_tmp10_ = _tmp9_;
	_tmp11_ = tuba_widgets_status_get_kind (self);
	_tmp12_ = _tmp11_;
	_tmp13_ = actor_name;
	_tmp14_ = self->priv->_kind_instigator;
	_tmp15_ = tuba_api_account_get_url (_tmp14_);
	_tmp16_ = _tmp15_;
	_tmp17_ = self->priv->_other_data;
	tuba_instance_account_describe_kind (_tmp10_, _tmp12_, &_tmp18_, _tmp13_, _tmp16_, _tmp17_);
	tuba_instance_account_kind_destroy (&res_kind);
	res_kind = _tmp18_;
	if (self->priv->header_button_activate > ((gulong) 0)) {
		GtkButton* _tmp19_;
		_tmp19_ = self->header_button;
		g_signal_handler_disconnect ((GObject*) _tmp19_, self->priv->header_button_activate);
	}
	_tmp20_ = res_kind;
	_tmp21_ = _tmp20_.icon;
	if (_tmp21_ == NULL) {
		GtkImage* _tmp22_;
		GtkButton* _tmp23_;
		_tmp22_ = self->header_icon;
		_tmp23_ = self->header_button;
		gtk_widget_set_visible ((GtkWidget*) _tmp23_, FALSE);
		gtk_widget_set_visible ((GtkWidget*) _tmp22_, FALSE);
		_g_free0 (actor_name);
		tuba_instance_account_kind_destroy (&res_kind);
		return;
	}
	_tmp24_ = self->header_icon;
	_tmp25_ = self->header_button;
	gtk_widget_set_visible ((GtkWidget*) _tmp25_, TRUE);
	gtk_widget_set_visible ((GtkWidget*) _tmp24_, TRUE);
	_tmp26_ = tuba_widgets_status_get_kind (self);
	_tmp27_ = _tmp26_;
	if (_vala_string_array_contains (TUBA_WIDGETS_STATUS_SHOULD_SHOW_ACTOR_AVATAR, G_N_ELEMENTS (TUBA_WIDGETS_STATUS_SHOULD_SHOW_ACTOR_AVATAR), _tmp27_)) {
		TubaWidgetsAvatar* _tmp28_;
		TubaWidgetsAvatar* _tmp59_;
		GtkOverlay* _tmp60_;
		TubaWidgetsAvatar* _tmp61_;
		_tmp28_ = self->priv->actor_avatar;
		if (_tmp28_ == NULL) {
			gint _tmp29_ = 0;
			TubaApplication* _tmp30_;
			gboolean _tmp31_;
			gboolean _tmp32_;
			TubaWidgetsAvatar* _tmp33_ = NULL;
			TubaWidgetsAvatar* _tmp34_;
			gchar* actor_handle = NULL;
			TubaAPIAccount* _tmp35_;
			TubaWidgetsAvatar* _tmp55_;
			const gchar* _tmp56_;
			gchar* _tmp57_;
			gchar* _tmp58_;
			_tmp30_ = tuba_app;
			_tmp31_ = tuba_application_get_is_mobile (_tmp30_);
			_tmp32_ = _tmp31_;
			if (_tmp32_) {
				_tmp29_ = 24;
			} else {
				_tmp29_ = 34;
			}
			_tmp33_ = tuba_widgets_avatar_new ();
			tuba_widgets_avatar_set_size (_tmp33_, _tmp29_);
			gtk_widget_set_valign ((GtkWidget*) _tmp33_, GTK_ALIGN_START);
			gtk_widget_set_halign ((GtkWidget*) _tmp33_, GTK_ALIGN_START);
			gtk_widget_set_overflow ((GtkWidget*) _tmp33_, GTK_OVERFLOW_HIDDEN);
			tuba_widgets_avatar_set_allow_mini_profile (_tmp33_, TRUE);
			g_object_ref_sink (_tmp33_);
			_g_object_unref0 (self->priv->actor_avatar);
			self->priv->actor_avatar = _tmp33_;
			_tmp34_ = self->priv->actor_avatar;
			gtk_widget_add_css_class ((GtkWidget*) _tmp34_, "ttl-status-avatar-actor");
			_tmp35_ = self->priv->_kind_instigator;
			if (_tmp35_ != NULL) {
				TubaWidgetsAvatar* _tmp36_;
				GBinding* _tmp37_;
				GBinding* _tmp38_;
				TubaWidgetsAvatar* _tmp39_;
				TubaAPIAccount* _tmp40_;
				gchar* _tmp41_;
				gchar* _tmp42_;
				_tmp36_ = self->priv->actor_avatar;
				_tmp37_ = g_object_bind_property_with_closures ((GObject*) self, "kind_instigator", (GObject*) _tmp36_, "account", G_BINDING_SYNC_CREATE, (GClosure*) ((NULL == NULL) ? NULL : g_cclosure_new ((GCallback) NULL, NULL, (GClosureNotify) NULL)), (GClosure*) ((NULL == NULL) ? NULL : g_cclosure_new ((GCallback) NULL, NULL, (GClosureNotify) NULL)));
				_tmp38_ = _g_object_ref0 (_tmp37_);
				_g_object_unref0 (self->priv->actor_avatar_binding);
				self->priv->actor_avatar_binding = _tmp38_;
				_tmp39_ = self->priv->actor_avatar;
				g_signal_connect_object (_tmp39_, "mini-clicked", (GCallback) _tuba_widgets_status_open_kind_instigator_account_tuba_widgets_avatar_mini_clicked, self, 0);
				_tmp40_ = self->priv->_kind_instigator;
				_tmp41_ = tuba_api_account_get_handle (_tmp40_);
				_tmp42_ = _tmp41_;
				_g_free0 (actor_handle);
				actor_handle = _tmp42_;
			} else {
				TubaAPIStatus* _tmp43_;
				TubaAPIStatus* _tmp44_;
				TubaWidgetsAvatar* _tmp45_;
				GBinding* _tmp46_;
				GBinding* _tmp47_;
				TubaWidgetsAvatar* _tmp48_;
				TubaAPIStatus* _tmp49_;
				TubaAPIStatus* _tmp50_;
				TubaAPIAccount* _tmp51_;
				TubaAPIAccount* _tmp52_;
				gchar* _tmp53_;
				gchar* _tmp54_;
				_tmp43_ = tuba_widgets_status_get_status (self);
				_tmp44_ = _tmp43_;
				_tmp45_ = self->priv->actor_avatar;
				_tmp46_ = g_object_bind_property_with_closures ((GObject*) _tmp44_, "account", (GObject*) _tmp45_, "account", G_BINDING_SYNC_CREATE, (GClosure*) ((NULL == NULL) ? NULL : g_cclosure_new ((GCallback) NULL, NULL, (GClosureNotify) NULL)), (GClosure*) ((NULL == NULL) ? NULL : g_cclosure_new ((GCallback) NULL, NULL, (GClosureNotify) NULL)));
				_tmp47_ = _g_object_ref0 (_tmp46_);
				_g_object_unref0 (self->priv->actor_avatar_binding);
				self->priv->actor_avatar_binding = _tmp47_;
				_tmp48_ = self->priv->actor_avatar;
				g_signal_connect_object (_tmp48_, "mini-clicked", (GCallback) _tuba_widgets_status_open_status_account_tuba_widgets_avatar_mini_clicked, self, 0);
				_tmp49_ = tuba_widgets_status_get_status (self);
				_tmp50_ = _tmp49_;
				_tmp51_ = tuba_api_status_get_account (_tmp50_);
				_tmp52_ = _tmp51_;
				_tmp53_ = tuba_api_account_get_handle (_tmp52_);
				_tmp54_ = _tmp53_;
				_g_free0 (actor_handle);
				actor_handle = _tmp54_;
			}
			_tmp55_ = self->priv->actor_avatar;
			_tmp56_ = actor_handle;
			_tmp57_ = g_strdup_printf (_ ("Open %s's Mini Profile"), _tmp56_);
			_tmp58_ = _tmp57_;
			gtk_widget_set_tooltip_text ((GtkWidget*) _tmp55_, _tmp58_);
			_g_free0 (_tmp58_);
			_g_free0 (actor_handle);
		}
		_tmp59_ = self->avatar;
		gtk_widget_add_css_class ((GtkWidget*) _tmp59_, "ttl-status-avatar-border");
		_tmp60_ = self->avatar_overlay;
		_tmp61_ = self->priv->actor_avatar;
		gtk_overlay_set_child (_tmp60_, (GtkWidget*) _tmp61_);
	} else {
		TubaWidgetsAvatar* _tmp62_;
		_tmp62_ = self->priv->actor_avatar;
		if (_tmp62_ != NULL) {
			GBinding* _tmp63_;
			GBinding* _tmp64_;
			GtkOverlay* _tmp65_;
			_tmp63_ = self->priv->actor_avatar_binding;
			_tmp64_ = _g_object_ref0 (_tmp63_);
			g_binding_unbind (_tmp64_);
			_tmp65_ = self->avatar_overlay;
			gtk_overlay_set_child (_tmp65_, NULL);
		}
	}
	_tmp66_ = self->header_icon;
	_tmp67_ = res_kind;
	_tmp68_ = _tmp67_.icon;
	g_object_set (_tmp66_, "icon-name", _tmp68_, NULL);
	_tmp69_ = self->header_label;
	_tmp70_ = self->priv->_kind_instigator;
	_tmp71_ = tuba_api_account_get_emojis_map (_tmp70_);
	_tmp72_ = _tmp71_;
	_tmp73_ = _tmp72_;
	tuba_widgets_rich_label_set_instance_emojis (_tmp69_, _tmp73_);
	_g_object_unref0 (_tmp73_);
	_tmp74_ = self->header_label;
	_tmp75_ = res_kind;
	_tmp76_ = _tmp75_.description;
	tuba_widgets_rich_label_set_label (_tmp74_, _tmp76_);
	_tmp77_ = res_kind;
	_tmp78_ = _tmp77_.url;
	_tmp79_ = g_strdup (_tmp78_);
	_g_free0 (self->priv->header_kind_url);
	self->priv->header_kind_url = _tmp79_;
	_tmp80_ = self->priv->header_kind_url;
	if (_tmp80_ != NULL) {
		GtkButton* _tmp81_;
		gulong _tmp82_;
		_tmp81_ = self->header_button;
		_tmp82_ = g_signal_connect_object (_tmp81_, "clicked", (GCallback) _tuba_widgets_status_on_header_button_clicked_gtk_button_clicked, self, 0);
		self->priv->header_button_activate = _tmp82_;
	} else {
		GtkButton* _tmp83_;
		gulong _tmp84_;
		_tmp83_ = self->header_button;
		_tmp84_ = g_signal_connect_object (_tmp83_, "clicked", (GCallback) _tuba_widgets_status_on_open_gtk_button_clicked, self, 0);
		self->priv->header_button_activate = _tmp84_;
	}
	_g_free0 (actor_name);
	tuba_instance_account_kind_destroy (&res_kind);
}

void
tuba_widgets_status_change_kind (TubaWidgetsStatus* self)
{
	TubaWidgetsStatusClass* _klass_;
	g_return_if_fail (self != NULL);
	_klass_ = TUBA_WIDGETS_STATUS_GET_CLASS (self);
	if (_klass_->change_kind) {
		_klass_->change_kind (self);
	}
}

static void
tuba_widgets_status_on_header_button_clicked (TubaWidgetsStatus* self)
{
	const gchar* _tmp0_;
	TubaAPIAccount* _tmp1_;
	const gchar* _tmp2_;
	const gchar* _tmp3_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->priv->header_kind_url;
	_tmp1_ = self->priv->_kind_instigator;
	_tmp2_ = tuba_api_account_get_url (_tmp1_);
	_tmp3_ = _tmp2_;
	if (g_strcmp0 (_tmp0_, _tmp3_) == 0) {
		tuba_widgets_status_open_kind_instigator_account (self);
	} else {
		const gchar* _tmp4_;
		_tmp4_ = self->priv->header_kind_url;
		if (_tmp4_ != NULL) {
			TubaWidgetsRichLabel* _tmp5_;
			const gchar* _tmp6_;
			_tmp5_ = self->header_label;
			_tmp6_ = self->priv->header_kind_url;
			tuba_widgets_rich_label_on_activate_link (_tmp5_, _tmp6_);
		}
	}
}

static void
tuba_widgets_status_open_kind_instigator_account (TubaWidgetsStatus* self)
{
	TubaAPIAccount* _tmp0_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->priv->_kind_instigator;
	tuba_widgetizable_open ((TubaWidgetizable*) _tmp0_);
}

static void
tuba_widgets_status_open_status_account (TubaWidgetsStatus* self)
{
	TubaAPIStatus* _tmp0_;
	TubaAPIStatus* _tmp1_;
	TubaAPIAccount* _tmp2_;
	TubaAPIAccount* _tmp3_;
	g_return_if_fail (self != NULL);
	_tmp0_ = tuba_widgets_status_get_status (self);
	_tmp1_ = _tmp0_;
	_tmp2_ = tuba_api_status_get_account (_tmp1_);
	_tmp3_ = _tmp2_;
	tuba_widgetizable_open ((TubaWidgetizable*) _tmp3_);
}

static void
tuba_widgets_status_update_spoiler_status (TubaWidgetsStatus* self)
{
	gboolean _tmp0_ = FALSE;
	TubaAPIStatus* _tmp1_;
	TubaAPIStatus* _tmp2_;
	TubaAPIStatus* _tmp3_;
	TubaAPIStatus* _tmp4_;
	gboolean _tmp5_;
	gboolean _tmp6_;
	GtkBox* _tmp13_;
	const gchar* _tmp14_ = NULL;
	TubaAPIStatus* _tmp15_;
	TubaAPIStatus* _tmp16_;
	TubaAPIStatus* _tmp17_;
	TubaAPIStatus* _tmp18_;
	gboolean _tmp19_;
	gboolean _tmp20_;
	GtkStack* _tmp21_;
	g_return_if_fail (self != NULL);
	_tmp1_ = tuba_widgets_status_get_status (self);
	_tmp2_ = _tmp1_;
	_tmp3_ = tuba_api_status_get_formal (_tmp2_);
	_tmp4_ = _tmp3_;
	_tmp5_ = tuba_api_status_get_tuba_spoiler_revealed (_tmp4_);
	_tmp6_ = _tmp5_;
	if (_tmp6_) {
		TubaAPIStatus* _tmp7_;
		TubaAPIStatus* _tmp8_;
		TubaAPIStatus* _tmp9_;
		TubaAPIStatus* _tmp10_;
		gboolean _tmp11_;
		gboolean _tmp12_;
		_tmp7_ = tuba_widgets_status_get_status (self);
		_tmp8_ = _tmp7_;
		_tmp9_ = tuba_api_status_get_formal (_tmp8_);
		_tmp10_ = _tmp9_;
		_tmp11_ = tuba_api_status_get_has_spoiler (_tmp10_);
		_tmp12_ = _tmp11_;
		_tmp0_ = _tmp12_;
	} else {
		_tmp0_ = FALSE;
	}
	_tmp13_ = self->spoiler_status_con;
	gtk_widget_set_visible ((GtkWidget*) _tmp13_, _tmp0_);
	_tmp15_ = tuba_widgets_status_get_status (self);
	_tmp16_ = _tmp15_;
	_tmp17_ = tuba_api_status_get_formal (_tmp16_);
	_tmp18_ = _tmp17_;
	_tmp19_ = tuba_api_status_get_tuba_spoiler_revealed (_tmp18_);
	_tmp20_ = _tmp19_;
	if (_tmp20_) {
		_tmp14_ = "content";
	} else {
		_tmp14_ = "spoiler";
	}
	_tmp21_ = self->spoiler_stack;
	gtk_stack_set_visible_child_name (_tmp21_, _tmp14_);
}

static void
tuba_widgets_status_update_spoiler_status_no_transition (TubaWidgetsStatus* self)
{
	GtkStackTransitionType old_transition = 0;
	GtkStack* _tmp0_;
	GtkStackTransitionType _tmp1_;
	GtkStackTransitionType _tmp2_;
	GtkStack* _tmp3_;
	GtkStack* _tmp4_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->spoiler_stack;
	_tmp1_ = gtk_stack_get_transition_type (_tmp0_);
	_tmp2_ = _tmp1_;
	old_transition = _tmp2_;
	_tmp3_ = self->spoiler_stack;
	gtk_stack_set_transition_type (_tmp3_, GTK_STACK_TRANSITION_TYPE_NONE);
	tuba_widgets_status_update_spoiler_status (self);
	_tmp4_ = self->spoiler_stack;
	gtk_stack_set_transition_type (_tmp4_, old_transition);
}

void
tuba_widgets_status_show_toggle_pinned_action (TubaWidgetsStatus* self)
{
	GSimpleAction* _tmp0_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->priv->toggle_pinned_simple_action;
	if (_tmp0_ != NULL) {
		GSimpleAction* _tmp1_;
		_tmp1_ = self->priv->toggle_pinned_simple_action;
		g_simple_action_set_enabled (_tmp1_, TRUE);
	}
}

static void
tuba_widgets_status_update_toggle_pinned_label (TubaWidgetsStatus* self)
{
	gboolean _tmp0_ = FALSE;
	gboolean _tmp1_ = FALSE;
	GMenuItem* _tmp2_;
	g_return_if_fail (self != NULL);
	_tmp2_ = self->priv->pin_menu_item;
	if (_tmp2_ != NULL) {
		TubaAPIStatus* _tmp3_;
		TubaAPIStatus* _tmp4_;
		_tmp3_ = tuba_widgets_status_get_status (self);
		_tmp4_ = _tmp3_;
		_tmp1_ = _tmp4_ != NULL;
	} else {
		_tmp1_ = FALSE;
	}
	if (_tmp1_) {
		TubaAPIStatus* _tmp5_;
		TubaAPIStatus* _tmp6_;
		TubaAPIStatus* _tmp7_;
		TubaAPIStatus* _tmp8_;
		_tmp5_ = tuba_widgets_status_get_status (self);
		_tmp6_ = _tmp5_;
		_tmp7_ = tuba_api_status_get_formal (_tmp6_);
		_tmp8_ = _tmp7_;
		_tmp0_ = _tmp8_ != NULL;
	} else {
		_tmp0_ = FALSE;
	}
	if (_tmp0_) {
		const gchar* _tmp9_ = NULL;
		TubaAPIStatus* _tmp10_;
		TubaAPIStatus* _tmp11_;
		TubaAPIStatus* _tmp12_;
		TubaAPIStatus* _tmp13_;
		gboolean _tmp14_;
		gboolean _tmp15_;
		GMenuItem* _tmp16_;
		_tmp10_ = tuba_widgets_status_get_status (self);
		_tmp11_ = _tmp10_;
		_tmp12_ = tuba_api_status_get_formal (_tmp11_);
		_tmp13_ = _tmp12_;
		_tmp14_ = tuba_api_status_get_pinned (_tmp13_);
		_tmp15_ = _tmp14_;
		if (_tmp15_) {
			_tmp9_ = _ ("Unpin");
		} else {
			_tmp9_ = _ ("Pin");
		}
		_tmp16_ = self->priv->pin_menu_item;
		g_menu_item_set_label (_tmp16_, _tmp9_);
	}
}

static void
tuba_widgets_status_aria_describe_status (TubaWidgetsStatus* self)
{
	TubaSettings* _tmp0_;
	gint _tmp1_;
	gint _tmp2_;
	GtkStack* _tmp3_;
	const gchar* _tmp4_;
	const gchar* _tmp5_;
	gchar* post = NULL;
	GtkImage* _tmp28_;
	const gchar* _tmp29_;
	const gchar* _tmp30_;
	gchar* _tmp31_;
	gchar* _tmp32_;
	gchar* _tmp33_;
	gchar* _tmp34_;
	gchar* _tmp35_;
	gchar* _tmp36_;
	gchar* _tmp37_;
	gchar* _tmp38_;
	gchar* aria_date = NULL;
	const gchar* _tmp39_;
	const gchar* _tmp40_;
	gchar* _tmp41_;
	gchar* _tmp42_ = NULL;
	TubaAPIStatus* _tmp43_;
	TubaAPIStatus* _tmp44_;
	TubaAPIStatus* _tmp45_;
	TubaAPIStatus* _tmp46_;
	gboolean _tmp47_;
	gboolean _tmp48_;
	gchar* aria_date_prefixed = NULL;
	gchar* _tmp53_;
	gchar* aria_pinned = NULL;
	gchar* _tmp54_;
	gboolean _tmp55_ = FALSE;
	TubaSettings* _tmp56_;
	gint _tmp57_;
	gint _tmp58_;
	gchar* aria_quote = NULL;
	gchar* _tmp66_;
	gboolean _tmp67_ = FALSE;
	TubaSettings* _tmp68_;
	gint _tmp69_;
	gint _tmp70_;
	gchar* aria_attachments = NULL;
	gchar* _tmp78_;
	gboolean _tmp79_ = FALSE;
	TubaSettings* _tmp80_;
	gint _tmp81_;
	gint _tmp82_;
	gchar* aria_poll = NULL;
	gchar* _tmp106_;
	gboolean _tmp107_ = FALSE;
	TubaSettings* _tmp108_;
	gint _tmp109_;
	gint _tmp110_;
	gchar* aria_spoiler = NULL;
	gchar* _tmp127_;
	gboolean _tmp128_ = FALSE;
	TubaSettings* _tmp129_;
	gint _tmp130_;
	gint _tmp131_;
	gchar* aria_app = NULL;
	gchar* _tmp156_;
	gboolean _tmp157_ = FALSE;
	TubaSettings* _tmp158_;
	gint _tmp159_;
	gint _tmp160_;
	gchar* aria_reactions = NULL;
	gchar* _tmp176_;
	gboolean _tmp177_ = FALSE;
	gboolean _tmp178_ = FALSE;
	TubaSettings* _tmp179_;
	gint _tmp180_;
	gint _tmp181_;
	gchar* aria_stats = NULL;
	gchar* _tmp213_;
	TubaSettings* _tmp214_;
	gint _tmp215_;
	gint _tmp216_;
	gchar* aria_translation = NULL;
	gchar* _tmp282_;
	gboolean _tmp283_ = FALSE;
	TubaSettings* _tmp284_;
	gint _tmp285_;
	gint _tmp286_;
	TubaWidgetsRichLabel* _tmp291_;
	const gchar* _tmp292_;
	const gchar* _tmp293_;
	const gchar* _tmp294_;
	const gchar* _tmp295_;
	const gchar* _tmp296_;
	const gchar* _tmp297_;
	const gchar* _tmp298_;
	const gchar* _tmp299_;
	const gchar* _tmp300_;
	const gchar* _tmp301_;
	const gchar* _tmp302_;
	const gchar* _tmp303_;
	const gchar* _tmp304_;
	gchar* _tmp305_;
	gchar* _tmp306_;
	GtkBox* _tmp307_;
	const gchar* _tmp308_;
	GtkButton* _tmp309_;
	g_return_if_fail (self != NULL);
	_tmp0_ = tuba_settings;
	_tmp1_ = tuba_settings_get_status_aria_verbosity (_tmp0_);
	_tmp2_ = _tmp1_;
	if (_tmp2_ < 1) {
		return;
	}
	_tmp3_ = self->filter_stack;
	_tmp4_ = gtk_stack_get_visible_child_name (_tmp3_);
	_tmp5_ = _tmp4_;
	if (g_strcmp0 (_tmp5_, "filter") == 0) {
		gchar* aria_filter = NULL;
		gchar* _tmp6_;
		TubaAPIStatus* _tmp7_;
		TubaAPIStatus* _tmp8_;
		TubaAPIStatus* _tmp9_;
		TubaAPIStatus* _tmp10_;
		gchar* _tmp11_;
		gchar* _tmp12_;
		gchar* _tmp13_;
		gboolean _tmp14_;
		const gchar* _tmp27_;
		_tmp6_ = g_strdup (_ ("Filtered post"));
		aria_filter = _tmp6_;
		_tmp7_ = tuba_widgets_status_get_status (self);
		_tmp8_ = _tmp7_;
		_tmp9_ = tuba_api_status_get_formal (_tmp8_);
		_tmp10_ = _tmp9_;
		_tmp11_ = tuba_api_status_get_tuba_filter_warn (_tmp10_);
		_tmp12_ = _tmp11_;
		_tmp13_ = _tmp12_;
		_tmp14_ = _tmp13_ != NULL;
		_g_free0 (_tmp13_);
		if (_tmp14_) {
			const gchar* _tmp15_;
			TubaAPIStatus* _tmp16_;
			TubaAPIStatus* _tmp17_;
			TubaAPIStatus* _tmp18_;
			TubaAPIStatus* _tmp19_;
			gchar* _tmp20_;
			gchar* _tmp21_;
			gchar* _tmp22_;
			const gchar* _tmp23_;
			gchar* _tmp24_;
			gchar* _tmp25_;
			gchar* _tmp26_;
			_tmp15_ = aria_filter;
			_tmp16_ = tuba_widgets_status_get_status (self);
			_tmp17_ = _tmp16_;
			_tmp18_ = tuba_api_status_get_formal (_tmp17_);
			_tmp19_ = _tmp18_;
			_tmp20_ = tuba_api_status_get_tuba_filter_warn (_tmp19_);
			_tmp21_ = _tmp20_;
			_tmp22_ = _tmp21_;
			_tmp23_ = string_to_string (_tmp22_);
			_tmp24_ = g_strconcat (": ", _tmp23_, NULL);
			_tmp25_ = _tmp24_;
			_tmp26_ = g_strconcat (_tmp15_, _tmp25_, NULL);
			_g_free0 (aria_filter);
			aria_filter = _tmp26_;
			_g_free0 (_tmp25_);
			_g_free0 (_tmp22_);
		}
		_tmp27_ = aria_filter;
		gtk_accessible_update_property ((GtkAccessible*) self, GTK_ACCESSIBLE_PROPERTY_LABEL, _tmp27_, -1, -1);
		_g_free0 (aria_filter);
		return;
	}
	_tmp28_ = self->visibility_indicator;
	_tmp29_ = gtk_widget_get_tooltip_text ((GtkWidget*) _tmp28_);
	_tmp30_ = _tmp29_;
	_tmp31_ = tuba_widgets_status_get_title_text (self);
	_tmp32_ = _tmp31_;
	_tmp33_ = _tmp32_;
	_tmp34_ = tuba_widgets_status_get_subtitle_text (self);
	_tmp35_ = _tmp34_;
	_tmp36_ = _tmp35_;
	_tmp37_ = g_strdup_printf (_ ("%s post by %s (%s)."), _tmp30_, _tmp33_, _tmp36_);
	_tmp38_ = _tmp37_;
	_g_free0 (_tmp36_);
	_g_free0 (_tmp33_);
	post = _tmp38_;
	_tmp39_ = tuba_widgets_status_get_full_date (self);
	_tmp40_ = _tmp39_;
	_tmp41_ = tuba_utils_date_time_humanize_aria (_tmp40_);
	aria_date = _tmp41_;
	_tmp43_ = tuba_widgets_status_get_status (self);
	_tmp44_ = _tmp43_;
	_tmp45_ = tuba_api_status_get_formal (_tmp44_);
	_tmp46_ = _tmp45_;
	_tmp47_ = tuba_api_status_get_is_edited (_tmp46_);
	_tmp48_ = _tmp47_;
	if (_tmp48_) {
		const gchar* _tmp49_;
		gchar* _tmp50_;
		_tmp49_ = aria_date;
		_tmp50_ = g_strdup_printf (_ ("Edited: %s."), _tmp49_);
		_g_free0 (_tmp42_);
		_tmp42_ = _tmp50_;
	} else {
		const gchar* _tmp51_;
		gchar* _tmp52_;
		_tmp51_ = aria_date;
		_tmp52_ = g_strdup_printf (_ ("Published: %s."), _tmp51_);
		_g_free0 (_tmp42_);
		_tmp42_ = _tmp52_;
	}
	_tmp53_ = _tmp42_;
	_tmp42_ = NULL;
	aria_date_prefixed = _tmp53_;
	_tmp54_ = g_strdup ("");
	aria_pinned = _tmp54_;
	_tmp56_ = tuba_settings;
	_tmp57_ = tuba_settings_get_status_aria_verbosity (_tmp56_);
	_tmp58_ = _tmp57_;
	if (_tmp58_ >= 2) {
		TubaAPIStatus* _tmp59_;
		TubaAPIStatus* _tmp60_;
		TubaAPIStatus* _tmp61_;
		TubaAPIStatus* _tmp62_;
		gboolean _tmp63_;
		gboolean _tmp64_;
		_tmp59_ = tuba_widgets_status_get_status (self);
		_tmp60_ = _tmp59_;
		_tmp61_ = tuba_api_status_get_formal (_tmp60_);
		_tmp62_ = _tmp61_;
		_tmp63_ = tuba_api_status_get_pinned (_tmp62_);
		_tmp64_ = _tmp63_;
		_tmp55_ = _tmp64_;
	} else {
		_tmp55_ = FALSE;
	}
	if (_tmp55_) {
		gchar* _tmp65_;
		_tmp65_ = g_strdup (_ ("The post is pinned."));
		_g_free0 (aria_pinned);
		aria_pinned = _tmp65_;
	}
	_tmp66_ = g_strdup ("");
	aria_quote = _tmp66_;
	_tmp68_ = tuba_settings;
	_tmp69_ = tuba_settings_get_status_aria_verbosity (_tmp68_);
	_tmp70_ = _tmp69_;
	if (_tmp70_ >= 2) {
		TubaAPIStatus* _tmp71_;
		TubaAPIStatus* _tmp72_;
		TubaAPIStatus* _tmp73_;
		TubaAPIStatus* _tmp74_;
		TubaAPIQuote* _tmp75_;
		TubaAPIQuote* _tmp76_;
		_tmp71_ = tuba_widgets_status_get_status (self);
		_tmp72_ = _tmp71_;
		_tmp73_ = tuba_api_status_get_formal (_tmp72_);
		_tmp74_ = _tmp73_;
		_tmp75_ = tuba_api_status_get_quote (_tmp74_);
		_tmp76_ = _tmp75_;
		_tmp67_ = _tmp76_ != NULL;
	} else {
		_tmp67_ = FALSE;
	}
	if (_tmp67_) {
		gchar* _tmp77_;
		_tmp77_ = g_strdup (_ ("Contains a quoted post."));
		_g_free0 (aria_quote);
		aria_quote = _tmp77_;
	}
	_tmp78_ = g_strdup ("");
	aria_attachments = _tmp78_;
	_tmp80_ = tuba_settings;
	_tmp81_ = tuba_settings_get_status_aria_verbosity (_tmp80_);
	_tmp82_ = _tmp81_;
	if (_tmp82_ >= 3) {
		TubaAPIStatus* _tmp83_;
		TubaAPIStatus* _tmp84_;
		TubaAPIStatus* _tmp85_;
		TubaAPIStatus* _tmp86_;
		gboolean _tmp87_;
		gboolean _tmp88_;
		_tmp83_ = tuba_widgets_status_get_status (self);
		_tmp84_ = _tmp83_;
		_tmp85_ = tuba_api_status_get_formal (_tmp84_);
		_tmp86_ = _tmp85_;
		_tmp87_ = tuba_api_status_get_has_media (_tmp86_);
		_tmp88_ = _tmp87_;
		_tmp79_ = _tmp88_;
	} else {
		_tmp79_ = FALSE;
	}
	if (_tmp79_) {
		TubaAPIStatus* _tmp89_;
		TubaAPIStatus* _tmp90_;
		TubaAPIStatus* _tmp91_;
		TubaAPIStatus* _tmp92_;
		GeeArrayList* _tmp93_;
		GeeArrayList* _tmp94_;
		gint _tmp95_;
		gint _tmp96_;
		TubaAPIStatus* _tmp97_;
		TubaAPIStatus* _tmp98_;
		TubaAPIStatus* _tmp99_;
		TubaAPIStatus* _tmp100_;
		GeeArrayList* _tmp101_;
		GeeArrayList* _tmp102_;
		gint _tmp103_;
		gint _tmp104_;
		gchar* _tmp105_;
		_tmp89_ = tuba_widgets_status_get_status (self);
		_tmp90_ = _tmp89_;
		_tmp91_ = tuba_api_status_get_formal (_tmp90_);
		_tmp92_ = _tmp91_;
		_tmp93_ = tuba_api_status_get_media_attachments (_tmp92_);
		_tmp94_ = _tmp93_;
		_tmp95_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp94_);
		_tmp96_ = _tmp95_;
		_tmp97_ = tuba_widgets_status_get_status (self);
		_tmp98_ = _tmp97_;
		_tmp99_ = tuba_api_status_get_formal (_tmp98_);
		_tmp100_ = _tmp99_;
		_tmp101_ = tuba_api_status_get_media_attachments (_tmp100_);
		_tmp102_ = _tmp101_;
		_tmp103_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp102_);
		_tmp104_ = _tmp103_;
		_tmp105_ = g_strdup_printf (ngettext ("Contains %d attachment.", "Contains %d attachments.", (gulong) _tmp96_), _tmp104_);
		_g_free0 (aria_attachments);
		aria_attachments = _tmp105_;
	}
	_tmp106_ = g_strdup ("");
	aria_poll = _tmp106_;
	_tmp108_ = tuba_settings;
	_tmp109_ = tuba_settings_get_status_aria_verbosity (_tmp108_);
	_tmp110_ = _tmp109_;
	if (_tmp110_ >= 3) {
		TubaAPIStatus* _tmp111_;
		TubaAPIStatus* _tmp112_;
		TubaAPIStatus* _tmp113_;
		TubaAPIStatus* _tmp114_;
		TubaAPIPoll* _tmp115_;
		TubaAPIPoll* _tmp116_;
		_tmp111_ = tuba_widgets_status_get_status (self);
		_tmp112_ = _tmp111_;
		_tmp113_ = tuba_api_status_get_formal (_tmp112_);
		_tmp114_ = _tmp113_;
		_tmp115_ = tuba_api_status_get_poll (_tmp114_);
		_tmp116_ = _tmp115_;
		_tmp107_ = _tmp116_ != NULL;
	} else {
		_tmp107_ = FALSE;
	}
	if (_tmp107_) {
		const gchar* _tmp117_ = NULL;
		TubaAPIStatus* _tmp118_;
		TubaAPIStatus* _tmp119_;
		TubaAPIStatus* _tmp120_;
		TubaAPIStatus* _tmp121_;
		TubaAPIPoll* _tmp122_;
		TubaAPIPoll* _tmp123_;
		gboolean _tmp124_;
		gboolean _tmp125_;
		gchar* _tmp126_;
		_tmp118_ = tuba_widgets_status_get_status (self);
		_tmp119_ = _tmp118_;
		_tmp120_ = tuba_api_status_get_formal (_tmp119_);
		_tmp121_ = _tmp120_;
		_tmp122_ = tuba_api_status_get_poll (_tmp121_);
		_tmp123_ = _tmp122_;
		_tmp124_ = tuba_api_poll_get_expired (_tmp123_);
		_tmp125_ = _tmp124_;
		if (_tmp125_) {
			_tmp117_ = _ ("Contains an expired poll.");
		} else {
			_tmp117_ = _ ("Contains a poll.");
		}
		_tmp126_ = g_strdup (_tmp117_);
		_g_free0 (aria_poll);
		aria_poll = _tmp126_;
	}
	_tmp127_ = g_strdup ("");
	aria_spoiler = _tmp127_;
	_tmp129_ = tuba_settings;
	_tmp130_ = tuba_settings_get_status_aria_verbosity (_tmp129_);
	_tmp131_ = _tmp130_;
	if (_tmp131_ >= 2) {
		TubaAPIStatus* _tmp132_;
		TubaAPIStatus* _tmp133_;
		TubaAPIStatus* _tmp134_;
		TubaAPIStatus* _tmp135_;
		gboolean _tmp136_;
		gboolean _tmp137_;
		_tmp132_ = tuba_widgets_status_get_status (self);
		_tmp133_ = _tmp132_;
		_tmp134_ = tuba_api_status_get_formal (_tmp133_);
		_tmp135_ = _tmp134_;
		_tmp136_ = tuba_api_status_get_has_spoiler (_tmp135_);
		_tmp137_ = _tmp136_;
		_tmp128_ = _tmp137_;
	} else {
		_tmp128_ = FALSE;
	}
	if (_tmp128_) {
		gboolean _tmp138_ = FALSE;
		TubaAPIStatus* _tmp139_;
		TubaAPIStatus* _tmp140_;
		TubaAPIStatus* _tmp141_;
		TubaAPIStatus* _tmp142_;
		const gchar* _tmp143_;
		const gchar* _tmp144_;
		_tmp139_ = tuba_widgets_status_get_status (self);
		_tmp140_ = _tmp139_;
		_tmp141_ = tuba_api_status_get_formal (_tmp140_);
		_tmp142_ = _tmp141_;
		_tmp143_ = tuba_api_status_get_spoiler_text (_tmp142_);
		_tmp144_ = _tmp143_;
		if (_tmp144_ == NULL) {
			_tmp138_ = TRUE;
		} else {
			TubaAPIStatus* _tmp145_;
			TubaAPIStatus* _tmp146_;
			TubaAPIStatus* _tmp147_;
			TubaAPIStatus* _tmp148_;
			const gchar* _tmp149_;
			const gchar* _tmp150_;
			_tmp145_ = tuba_widgets_status_get_status (self);
			_tmp146_ = _tmp145_;
			_tmp147_ = tuba_api_status_get_formal (_tmp146_);
			_tmp148_ = _tmp147_;
			_tmp149_ = tuba_api_status_get_spoiler_text (_tmp148_);
			_tmp150_ = _tmp149_;
			_tmp138_ = g_strcmp0 (_tmp150_, "") == 0;
		}
		if (_tmp138_) {
			gchar* _tmp151_;
			_tmp151_ = g_strdup (_ ("The post has a spoiler."));
			_g_free0 (aria_spoiler);
			aria_spoiler = _tmp151_;
		} else {
			gchar* _tmp152_;
			gchar* _tmp153_;
			gchar* _tmp154_;
			gchar* _tmp155_;
			_tmp152_ = tuba_widgets_status_get_spoiler_text (self);
			_tmp153_ = _tmp152_;
			_tmp154_ = _tmp153_;
			_tmp155_ = g_strdup_printf (_ ("The post has the following spoiler: %s."), _tmp154_);
			_g_free0 (aria_spoiler);
			aria_spoiler = _tmp155_;
			_g_free0 (_tmp154_);
		}
	}
	_tmp156_ = g_strdup ("");
	aria_app = _tmp156_;
	_tmp158_ = tuba_settings;
	_tmp159_ = tuba_settings_get_status_aria_verbosity (_tmp158_);
	_tmp160_ = _tmp159_;
	if (_tmp160_ >= 3) {
		TubaAPIStatus* _tmp161_;
		TubaAPIStatus* _tmp162_;
		TubaAPIStatus* _tmp163_;
		TubaAPIStatus* _tmp164_;
		TubaAPIStatusApplication* _tmp165_;
		TubaAPIStatusApplication* _tmp166_;
		_tmp161_ = tuba_widgets_status_get_status (self);
		_tmp162_ = _tmp161_;
		_tmp163_ = tuba_api_status_get_formal (_tmp162_);
		_tmp164_ = _tmp163_;
		_tmp165_ = tuba_api_status_get_application (_tmp164_);
		_tmp166_ = _tmp165_;
		_tmp157_ = _tmp166_ != NULL;
	} else {
		_tmp157_ = FALSE;
	}
	if (_tmp157_) {
		TubaAPIStatus* _tmp167_;
		TubaAPIStatus* _tmp168_;
		TubaAPIStatus* _tmp169_;
		TubaAPIStatus* _tmp170_;
		TubaAPIStatusApplication* _tmp171_;
		TubaAPIStatusApplication* _tmp172_;
		const gchar* _tmp173_;
		const gchar* _tmp174_;
		gchar* _tmp175_;
		_tmp167_ = tuba_widgets_status_get_status (self);
		_tmp168_ = _tmp167_;
		_tmp169_ = tuba_api_status_get_formal (_tmp168_);
		_tmp170_ = _tmp169_;
		_tmp171_ = tuba_api_status_get_application (_tmp170_);
		_tmp172_ = _tmp171_;
		_tmp173_ = tuba_api_status_application_get_name (_tmp172_);
		_tmp174_ = _tmp173_;
		_tmp175_ = g_strdup_printf (_ ("Posted using %s."), _tmp174_);
		_g_free0 (aria_app);
		aria_app = _tmp175_;
	}
	_tmp176_ = g_strdup ("");
	aria_reactions = _tmp176_;
	_tmp179_ = tuba_settings;
	_tmp180_ = tuba_settings_get_status_aria_verbosity (_tmp179_);
	_tmp181_ = _tmp180_;
	if (_tmp181_ >= 2) {
		TubaAPIStatus* _tmp182_;
		TubaAPIStatus* _tmp183_;
		TubaAPIStatus* _tmp184_;
		TubaAPIStatus* _tmp185_;
		GeeArrayList* _tmp186_;
		GeeArrayList* _tmp187_;
		_tmp182_ = tuba_widgets_status_get_status (self);
		_tmp183_ = _tmp182_;
		_tmp184_ = tuba_api_status_get_formal (_tmp183_);
		_tmp185_ = _tmp184_;
		_tmp186_ = tuba_api_status_get_compat_status_reactions (_tmp185_);
		_tmp187_ = _tmp186_;
		_tmp178_ = _tmp187_ != NULL;
	} else {
		_tmp178_ = FALSE;
	}
	if (_tmp178_) {
		TubaAPIStatus* _tmp188_;
		TubaAPIStatus* _tmp189_;
		TubaAPIStatus* _tmp190_;
		TubaAPIStatus* _tmp191_;
		GeeArrayList* _tmp192_;
		GeeArrayList* _tmp193_;
		gint _tmp194_;
		gint _tmp195_;
		_tmp188_ = tuba_widgets_status_get_status (self);
		_tmp189_ = _tmp188_;
		_tmp190_ = tuba_api_status_get_formal (_tmp189_);
		_tmp191_ = _tmp190_;
		_tmp192_ = tuba_api_status_get_compat_status_reactions (_tmp191_);
		_tmp193_ = _tmp192_;
		_tmp194_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp193_);
		_tmp195_ = _tmp194_;
		_tmp177_ = _tmp195_ > 0;
	} else {
		_tmp177_ = FALSE;
	}
	if (_tmp177_) {
		TubaAPIStatus* _tmp196_;
		TubaAPIStatus* _tmp197_;
		TubaAPIStatus* _tmp198_;
		TubaAPIStatus* _tmp199_;
		GeeArrayList* _tmp200_;
		GeeArrayList* _tmp201_;
		gint _tmp202_;
		gint _tmp203_;
		TubaAPIStatus* _tmp204_;
		TubaAPIStatus* _tmp205_;
		TubaAPIStatus* _tmp206_;
		TubaAPIStatus* _tmp207_;
		GeeArrayList* _tmp208_;
		GeeArrayList* _tmp209_;
		gint _tmp210_;
		gint _tmp211_;
		gchar* _tmp212_;
		_tmp196_ = tuba_widgets_status_get_status (self);
		_tmp197_ = _tmp196_;
		_tmp198_ = tuba_api_status_get_formal (_tmp197_);
		_tmp199_ = _tmp198_;
		_tmp200_ = tuba_api_status_get_compat_status_reactions (_tmp199_);
		_tmp201_ = _tmp200_;
		_tmp202_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp201_);
		_tmp203_ = _tmp202_;
		_tmp204_ = tuba_widgets_status_get_status (self);
		_tmp205_ = _tmp204_;
		_tmp206_ = tuba_api_status_get_formal (_tmp205_);
		_tmp207_ = _tmp206_;
		_tmp208_ = tuba_api_status_get_compat_status_reactions (_tmp207_);
		_tmp209_ = _tmp208_;
		_tmp210_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp209_);
		_tmp211_ = _tmp210_;
		_tmp212_ = g_strdup_printf (ngettext ("Contains %d reaction.", "Contains %d reactions.", (gulong) _tmp203_), _tmp211_);
		_g_free0 (aria_reactions);
		aria_reactions = _tmp212_;
	}
	_tmp213_ = g_strdup ("");
	aria_stats = _tmp213_;
	_tmp214_ = tuba_settings;
	_tmp215_ = tuba_settings_get_status_aria_verbosity (_tmp214_);
	_tmp216_ = _tmp215_;
	if (_tmp216_ >= 3) {
		TubaAPIStatus* _tmp217_;
		TubaAPIStatus* _tmp218_;
		TubaAPIStatus* _tmp219_;
		TubaAPIStatus* _tmp220_;
		gint64 _tmp221_;
		gint64 _tmp222_;
		TubaAPIStatus* _tmp223_;
		TubaAPIStatus* _tmp224_;
		TubaAPIStatus* _tmp225_;
		TubaAPIStatus* _tmp226_;
		gint64 _tmp227_;
		gint64 _tmp228_;
		gchar* _tmp229_;
		gchar* _tmp230_;
		gchar* _tmp231_;
		gchar* _tmp232_;
		TubaAPIStatus* _tmp233_;
		TubaAPIStatus* _tmp234_;
		TubaAPIStatus* _tmp235_;
		TubaAPIStatus* _tmp236_;
		gint64 _tmp237_;
		gint64 _tmp238_;
		TubaAPIStatus* _tmp239_;
		TubaAPIStatus* _tmp240_;
		TubaAPIStatus* _tmp241_;
		TubaAPIStatus* _tmp242_;
		gint64 _tmp243_;
		gint64 _tmp244_;
		gchar* _tmp245_;
		gchar* _tmp246_;
		gchar* _tmp247_;
		gchar* _tmp248_;
		TubaAPIStatus* _tmp249_;
		TubaAPIStatus* _tmp250_;
		TubaAPIStatus* _tmp251_;
		TubaAPIStatus* _tmp252_;
		gint64 _tmp253_;
		gint64 _tmp254_;
		TubaAPIStatus* _tmp255_;
		TubaAPIStatus* _tmp256_;
		TubaAPIStatus* _tmp257_;
		TubaAPIStatus* _tmp258_;
		gint64 _tmp259_;
		gint64 _tmp260_;
		gchar* _tmp261_;
		gchar* _tmp262_;
		gchar* _tmp263_;
		gchar* _tmp264_;
		TubaAPIStatus* _tmp265_;
		TubaAPIStatus* _tmp266_;
		TubaAPIStatus* _tmp267_;
		TubaAPIStatus* _tmp268_;
		gint64 _tmp269_;
		gint64 _tmp270_;
		TubaAPIStatus* _tmp271_;
		TubaAPIStatus* _tmp272_;
		TubaAPIStatus* _tmp273_;
		TubaAPIStatus* _tmp274_;
		gint64 _tmp275_;
		gint64 _tmp276_;
		gchar* _tmp277_;
		gchar* _tmp278_;
		gchar* _tmp279_;
		gchar* _tmp280_;
		gchar* _tmp281_;
		_tmp217_ = tuba_widgets_status_get_status (self);
		_tmp218_ = _tmp217_;
		_tmp219_ = tuba_api_status_get_formal (_tmp218_);
		_tmp220_ = _tmp219_;
		_tmp221_ = tuba_api_status_get_replies_count (_tmp220_);
		_tmp222_ = _tmp221_;
		_tmp223_ = tuba_widgets_status_get_status (self);
		_tmp224_ = _tmp223_;
		_tmp225_ = tuba_api_status_get_formal (_tmp224_);
		_tmp226_ = _tmp225_;
		_tmp227_ = tuba_api_status_get_replies_count (_tmp226_);
		_tmp228_ = _tmp227_;
		_tmp229_ = g_strdup_printf ("%" G_GINT64_FORMAT, _tmp228_);
		_tmp230_ = _tmp229_;
		_tmp231_ = g_strdup_printf (ngettext ("%s reply", "%s replies", (gulong) _tmp222_), _tmp230_);
		_tmp232_ = _tmp231_;
		_tmp233_ = tuba_widgets_status_get_status (self);
		_tmp234_ = _tmp233_;
		_tmp235_ = tuba_api_status_get_formal (_tmp234_);
		_tmp236_ = _tmp235_;
		_tmp237_ = tuba_api_status_get_reblogs_count (_tmp236_);
		_tmp238_ = _tmp237_;
		_tmp239_ = tuba_widgets_status_get_status (self);
		_tmp240_ = _tmp239_;
		_tmp241_ = tuba_api_status_get_formal (_tmp240_);
		_tmp242_ = _tmp241_;
		_tmp243_ = tuba_api_status_get_reblogs_count (_tmp242_);
		_tmp244_ = _tmp243_;
		_tmp245_ = g_strdup_printf ("%" G_GINT64_FORMAT, _tmp244_);
		_tmp246_ = _tmp245_;
		_tmp247_ = g_strdup_printf (ngettext ("%s boost", "%s boosts", (gulong) _tmp238_), _tmp246_);
		_tmp248_ = _tmp247_;
		_tmp249_ = tuba_widgets_status_get_status (self);
		_tmp250_ = _tmp249_;
		_tmp251_ = tuba_api_status_get_formal (_tmp250_);
		_tmp252_ = _tmp251_;
		_tmp253_ = tuba_api_status_get_quotes_count (_tmp252_);
		_tmp254_ = _tmp253_;
		_tmp255_ = tuba_widgets_status_get_status (self);
		_tmp256_ = _tmp255_;
		_tmp257_ = tuba_api_status_get_formal (_tmp256_);
		_tmp258_ = _tmp257_;
		_tmp259_ = tuba_api_status_get_quotes_count (_tmp258_);
		_tmp260_ = _tmp259_;
		_tmp261_ = g_strdup_printf ("%" G_GINT64_FORMAT, _tmp260_);
		_tmp262_ = _tmp261_;
		_tmp263_ = g_strdup_printf (ngettext ("%s quote", "%s quotes", (gulong) _tmp254_), _tmp262_);
		_tmp264_ = _tmp263_;
		_tmp265_ = tuba_widgets_status_get_status (self);
		_tmp266_ = _tmp265_;
		_tmp267_ = tuba_api_status_get_formal (_tmp266_);
		_tmp268_ = _tmp267_;
		_tmp269_ = tuba_api_status_get_favourites_count (_tmp268_);
		_tmp270_ = _tmp269_;
		_tmp271_ = tuba_widgets_status_get_status (self);
		_tmp272_ = _tmp271_;
		_tmp273_ = tuba_api_status_get_formal (_tmp272_);
		_tmp274_ = _tmp273_;
		_tmp275_ = tuba_api_status_get_favourites_count (_tmp274_);
		_tmp276_ = _tmp275_;
		_tmp277_ = g_strdup_printf ("%" G_GINT64_FORMAT, _tmp276_);
		_tmp278_ = _tmp277_;
		_tmp279_ = g_strdup_printf (ngettext ("%s favorite", "%s favorites", (gulong) _tmp270_), _tmp278_);
		_tmp280_ = _tmp279_;
		_tmp281_ = g_strdup_printf (_ ("Post stats: %s, %s, %s, %s."), _tmp232_, _tmp248_, _tmp264_, _tmp280_);
		_g_free0 (aria_stats);
		aria_stats = _tmp281_;
		_g_free0 (_tmp280_);
		_g_free0 (_tmp278_);
		_g_free0 (_tmp264_);
		_g_free0 (_tmp262_);
		_g_free0 (_tmp248_);
		_g_free0 (_tmp246_);
		_g_free0 (_tmp232_);
		_g_free0 (_tmp230_);
	}
	_tmp282_ = g_strdup ("");
	aria_translation = _tmp282_;
	_tmp284_ = tuba_settings;
	_tmp285_ = tuba_settings_get_status_aria_verbosity (_tmp284_);
	_tmp286_ = _tmp285_;
	if (_tmp286_ >= 3) {
		GtkLabel* _tmp287_;
		_tmp287_ = self->priv->translation_label;
		_tmp283_ = _tmp287_ != NULL;
	} else {
		_tmp283_ = FALSE;
	}
	if (_tmp283_) {
		GtkLabel* _tmp288_;
		const gchar* _tmp289_;
		gchar* _tmp290_;
		_tmp288_ = self->priv->translation_label;
		_tmp289_ = gtk_label_get_text (_tmp288_);
		_tmp290_ = g_strdup (_tmp289_);
		_g_free0 (aria_translation);
		aria_translation = _tmp290_;
	}
	_tmp291_ = self->header_label;
	_tmp292_ = tuba_widgets_rich_label_get_accessible_text (_tmp291_);
	_tmp293_ = _tmp292_;
	_tmp294_ = post;
	_tmp295_ = aria_date_prefixed;
	_tmp296_ = aria_pinned;
	_tmp297_ = aria_quote;
	_tmp298_ = aria_attachments;
	_tmp299_ = aria_poll;
	_tmp300_ = aria_spoiler;
	_tmp301_ = aria_stats;
	_tmp302_ = aria_reactions;
	_tmp303_ = aria_app;
	_tmp304_ = aria_translation;
	_tmp305_ = g_strdup_printf ("%s %s %s %s %s %s %s %s %s %s %s %s.", _tmp293_, _tmp294_, _tmp295_, _tmp296_, _tmp297_, _tmp298_, _tmp299_, _tmp300_, _tmp301_, _tmp302_, _tmp303_, _tmp304_);
	_tmp306_ = _tmp305_;
	gtk_accessible_update_property ((GtkAccessible*) self, GTK_ACCESSIBLE_PROPERTY_LABEL, _tmp306_, -1, -1);
	_g_free0 (_tmp306_);
	_tmp307_ = self->spoiler_status_con;
	_tmp308_ = aria_spoiler;
	gtk_accessible_update_property ((GtkAccessible*) _tmp307_, GTK_ACCESSIBLE_PROPERTY_LABEL, _tmp308_, -1, -1);
	_tmp309_ = self->priv->_quoted_status_btn;
	if (_tmp309_ != NULL) {
		GtkButton* _tmp310_;
		_tmp310_ = self->priv->_quoted_status_btn;
		gtk_accessible_update_property ((GtkAccessible*) _tmp310_, GTK_ACCESSIBLE_PROPERTY_DESCRIPTION, _ ("Quoted Post"), -1, -1);
	}
	_g_free0 (aria_translation);
	_g_free0 (aria_stats);
	_g_free0 (aria_reactions);
	_g_free0 (aria_app);
	_g_free0 (aria_spoiler);
	_g_free0 (aria_poll);
	_g_free0 (aria_attachments);
	_g_free0 (aria_quote);
	_g_free0 (aria_pinned);
	_g_free0 (aria_date_prefixed);
	_g_free0 (_tmp42_);
	_g_free0 (aria_date);
	_g_free0 (post);
}

static void
_tuba_widgets_status_on_reply_button_clicked_tuba_widgets_actions_row_reply (TubaWidgetsActionsRow* _sender,
                                                                             GtkButton* btn,
                                                                             gpointer self)
{
	tuba_widgets_status_on_reply_button_clicked ((TubaWidgetsStatus*) self);
}

static void
_tuba_widgets_status_on_open_unless_reveal_gtk_button_clicked (GtkButton* _sender,
                                                               gpointer self)
{
	tuba_widgets_status_on_open_unless_reveal ((TubaWidgetsStatus*) self, _sender);
}

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

static Block103Data*
block103_data_ref (Block103Data* _data103_)
{
	g_atomic_int_inc (&_data103_->_ref_count_);
	return _data103_;
}

static void
block103_data_unref (void * _userdata_)
{
	Block103Data* _data103_;
	_data103_ = (Block103Data*) _userdata_;
	if (g_atomic_int_dec_and_test (&_data103_->_ref_count_)) {
		TubaWidgetsStatus* self;
		self = _data103_->self;
		_g_object_unref0 (_data103_->translated_media);
		_g_object_unref0 (self);
		g_slice_free (Block103Data, _data103_);
	}
}

static gboolean
____lambda98_ (Block103Data* _data103_,
               TubaAPITranslationAttachment* e)
{
	TubaWidgetsStatus* self;
	GeeHashMap* _tmp0_;
	const gchar* _tmp1_;
	const gchar* _tmp2_;
	const gchar* _tmp3_;
	const gchar* _tmp4_;
	gboolean result;
	self = _data103_->self;
	g_return_val_if_fail (e != NULL, FALSE);
	_tmp0_ = _data103_->translated_media;
	_tmp1_ = tuba_api_translation_attachment_get_id (e);
	_tmp2_ = _tmp1_;
	_tmp3_ = tuba_api_translation_attachment_get_description (e);
	_tmp4_ = _tmp3_;
	gee_abstract_map_set ((GeeAbstractMap*) _tmp0_, _tmp2_, _tmp4_);
	result = TRUE;
	_g_object_unref0 (e);
	return result;
}

static gboolean
_____lambda98__gee_forall_func (gpointer g,
                                gpointer self)
{
	gboolean result;
	result = ____lambda98_ (self, (TubaAPITranslationAttachment*) g);
	return result;
}

static gboolean
____lambda99_ (Block103Data* _data103_,
               TubaAPIAttachment* item)
{
	TubaWidgetsStatus* self;
	GeeHashMap* _tmp0_;
	const gchar* _tmp1_;
	const gchar* _tmp2_;
	gboolean result;
	self = _data103_->self;
	g_return_val_if_fail (item != NULL, FALSE);
	_tmp0_ = _data103_->translated_media;
	_tmp1_ = tuba_api_attachment_get_id (item);
	_tmp2_ = _tmp1_;
	if (gee_abstract_map_has_key ((GeeAbstractMap*) _tmp0_, _tmp2_)) {
		GeeHashMap* _tmp3_;
		const gchar* _tmp4_;
		const gchar* _tmp5_;
		gpointer _tmp6_;
		gchar* _tmp7_;
		_tmp3_ = _data103_->translated_media;
		_tmp4_ = tuba_api_attachment_get_id (item);
		_tmp5_ = _tmp4_;
		_tmp6_ = gee_abstract_map_get ((GeeAbstractMap*) _tmp3_, _tmp5_);
		_tmp7_ = (gchar*) _tmp6_;
		tuba_api_attachment_set_tuba_translated_alt_text (item, _tmp7_);
		_g_free0 (_tmp7_);
	}
	result = TRUE;
	_g_object_unref0 (item);
	return result;
}

static gboolean
_____lambda99__gee_forall_func (gpointer g,
                                gpointer self)
{
	gboolean result;
	result = ____lambda99_ (self, (TubaAPIAttachment*) g);
	return result;
}

static gboolean
____lambda100_ (TubaWidgetsStatus* self,
                TubaAPIAttachment* item)
{
	gboolean result;
	g_return_val_if_fail (item != NULL, FALSE);
	tuba_api_attachment_set_tuba_translated_alt_text (item, NULL);
	result = TRUE;
	_g_object_unref0 (item);
	return result;
}

static gboolean
_____lambda100__gee_forall_func (gpointer g,
                                 gpointer self)
{
	gboolean result;
	result = ____lambda100_ ((TubaWidgetsStatus*) self, (TubaAPIAttachment*) g);
	return result;
}

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

static void
_tuba_widgets_status_open_card_url_gtk_button_clicked (GtkButton* _sender,
                                                       gpointer self)
{
	tuba_widgets_status_open_card_url ((TubaWidgetsStatus*) self);
}

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

static void
_tuba_widgets_status_show_view_stats_action_g_object_notify (GObject* _sender,
                                                             GParamSpec* pspec,
                                                             gpointer self)
{
	tuba_widgets_status_show_view_stats_action ((TubaWidgetsStatus*) self);
}

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

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

static void
_tuba_widgets_status_install_thread_line_g_object_notify (GObject* _sender,
                                                          GParamSpec* pspec,
                                                          gpointer self)
{
	tuba_widgets_status_install_thread_line ((TubaWidgetsStatus*) self);
}

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

static void
_tuba_widgets_status_update_spoiler_status_g_object_notify (GObject* _sender,
                                                            GParamSpec* pspec,
                                                            gpointer self)
{
	tuba_widgets_status_update_spoiler_status ((TubaWidgetsStatus*) self);
}

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

static void
tuba_widgets_status_real_bind (TubaWidgetsStatus* self)
{
	gboolean _tmp0_ = FALSE;
	gboolean _tmp1_ = FALSE;
	TubaAPIStatus* _tmp2_;
	TubaAPIStatus* _tmp3_;
	TubaAPIStatus* _tmp4_;
	TubaAPIStatus* _tmp5_;
	GeeArrayList* _tmp6_;
	GeeArrayList* _tmp7_;
	TubaWidgetsActionsRow* _tmp36_;
	TubaAPIStatus* _tmp40_;
	TubaAPIStatus* _tmp41_;
	TubaAPIStatus* _tmp42_;
	TubaAPIStatus* _tmp43_;
	TubaWidgetsActionsRow* _tmp44_;
	TubaWidgetsActionsRow* _tmp45_;
	TubaWidgetsActionsRow* _tmp46_;
	GtkBox* _tmp47_;
	TubaWidgetsActionsRow* _tmp48_;
	TubaWidgetsMarkupView* _tmp49_;
	TubaAPIStatus* _tmp50_;
	TubaAPIStatus* _tmp51_;
	GRegex* _tmp52_;
	GRegex* _tmp53_;
	gboolean has_quote = FALSE;
	TubaAPIStatus* _tmp54_;
	TubaAPIStatus* _tmp55_;
	TubaAPIStatus* _tmp56_;
	TubaAPIStatus* _tmp57_;
	TubaAPIQuote* _tmp58_;
	TubaAPIQuote* _tmp59_;
	gboolean _tmp60_ = FALSE;
	TubaWidgetsMarkupView* _tmp67_;
	TubaWidgetsMarkupView* _tmp68_;
	TubaAPIStatus* _tmp69_;
	TubaAPIStatus* _tmp70_;
	TubaAPIStatus* _tmp71_;
	TubaAPIStatus* _tmp72_;
	GeeArrayList* _tmp73_;
	GeeArrayList* _tmp74_;
	TubaWidgetsMarkupView* _tmp75_;
	TubaAPIStatus* _tmp76_;
	TubaAPIStatus* _tmp77_;
	TubaAPIStatus* _tmp78_;
	TubaAPIStatus* _tmp79_;
	GeeHashMap* _tmp80_;
	GeeHashMap* _tmp81_;
	GeeHashMap* _tmp82_;
	gboolean _tmp83_ = FALSE;
	gboolean _tmp84_ = FALSE;
	TubaAPITranslation* _tmp85_;
	GtkButton* _tmp103_;
	GtkLabel* _tmp106_;
	gboolean _tmp109_ = FALSE;
	gboolean _tmp110_ = FALSE;
	AdwBin* _tmp285_;
	TubaAPIStatus* _tmp288_;
	TubaAPIStatus* _tmp289_;
	TubaAPIStatus* _tmp290_;
	TubaAPIStatus* _tmp291_;
	GeeArrayList* _tmp292_;
	GeeArrayList* _tmp293_;
	GtkLabel* _tmp311_;
	gchar* _tmp312_;
	gchar* _tmp313_;
	gchar* _tmp314_;
	GtkLabel* _tmp315_;
	const gchar* _tmp316_;
	gboolean _tmp317_ = FALSE;
	TubaAPIStatus* _tmp318_;
	TubaAPIStatus* _tmp319_;
	TubaAPIStatus* _tmp320_;
	TubaAPIStatus* _tmp321_;
	gboolean _tmp322_;
	gboolean _tmp323_;
	TubaAPIStatus* _tmp330_;
	TubaAPIStatus* _tmp331_;
	TubaAPIStatus* _tmp332_;
	TubaAPIStatus* _tmp333_;
	GtkLabel* _tmp334_;
	GtkLabel* _tmp335_;
	gchar* _tmp336_;
	gchar* _tmp337_;
	gchar* _tmp338_;
	GtkLabel* _tmp339_;
	gchar* _tmp340_;
	gchar* _tmp341_;
	gchar* _tmp342_;
	GtkImage* _tmp350_;
	TubaAPIStatus* _tmp351_;
	TubaAPIStatus* _tmp352_;
	TubaAPIStatus* _tmp353_;
	TubaAPIStatus* _tmp354_;
	gboolean _tmp355_;
	gboolean _tmp356_;
	GtkImage* _tmp357_;
	TubaAPIStatus* _tmp358_;
	TubaAPIStatus* _tmp359_;
	TubaAPIStatus* _tmp360_;
	TubaAPIStatus* _tmp361_;
	gboolean _tmp362_;
	gboolean _tmp363_;
	GSimpleAction* _tmp364_;
	TubaAPIStatus* _tmp365_;
	TubaAPIStatus* _tmp366_;
	TubaAPIStatus* _tmp367_;
	TubaAPIStatus* _tmp368_;
	gboolean _tmp369_;
	gboolean _tmp370_;
	TubaAccountStore* _tmp371_;
	TubaInstanceAccount* _tmp372_;
	TubaInstanceAccount* _tmp373_;
	GeeHashMap* _tmp374_;
	TubaAPIStatus* _tmp375_;
	TubaAPIStatus* _tmp376_;
	TubaAPIStatus* _tmp377_;
	TubaAPIStatus* _tmp378_;
	const gchar* _tmp379_;
	const gchar* _tmp380_;
	gboolean _tmp406_ = FALSE;
	gboolean _tmp407_;
	gboolean _tmp408_;
	GtkImage* _tmp415_;
	TubaAPIStatus* _tmp418_;
	TubaAPIStatus* _tmp419_;
	TubaAPIStatus* _tmp420_;
	TubaAPIStatus* _tmp421_;
	gboolean _tmp422_;
	gboolean _tmp423_;
	TubaWidgetsAvatar* _tmp431_;
	TubaAPIStatus* _tmp432_;
	TubaAPIStatus* _tmp433_;
	TubaAPIStatus* _tmp434_;
	TubaAPIStatus* _tmp435_;
	TubaAPIAccount* _tmp436_;
	TubaAPIAccount* _tmp437_;
	GtkButton* _tmp438_;
	TubaWidgetsAvatar* _tmp439_;
	TubaAPIStatus* _tmp440_;
	TubaAPIStatus* _tmp441_;
	TubaAPIStatus* _tmp442_;
	TubaAPIStatus* _tmp443_;
	TubaAPIAccount* _tmp444_;
	TubaAPIAccount* _tmp445_;
	gchar* _tmp446_;
	gchar* _tmp447_;
	gchar* _tmp448_;
	gchar* _tmp449_;
	gchar* _tmp450_;
	TubaWidgetsRichLabel* _tmp451_;
	TubaAPIStatus* _tmp452_;
	TubaAPIStatus* _tmp453_;
	TubaAPIStatus* _tmp454_;
	TubaAPIStatus* _tmp455_;
	TubaAPIAccount* _tmp456_;
	TubaAPIAccount* _tmp457_;
	GeeHashMap* _tmp458_;
	GeeHashMap* _tmp459_;
	GeeHashMap* _tmp460_;
	TubaWidgetsRichLabel* _tmp461_;
	gchar* _tmp462_;
	gchar* _tmp463_;
	gchar* _tmp464_;
	TubaWidgetsVoteBox* _tmp465_;
	TubaAPIStatus* _tmp468_;
	TubaAPIStatus* _tmp469_;
	TubaAPIStatus* _tmp470_;
	TubaAPIStatus* _tmp471_;
	TubaAPIPoll* _tmp472_;
	TubaAPIPoll* _tmp473_;
	TubaWidgetsAttachmentBox* _tmp486_;
	TubaAPIStatus* _tmp489_;
	TubaAPIStatus* _tmp490_;
	TubaAPIStatus* _tmp491_;
	TubaAPIStatus* _tmp492_;
	gboolean _tmp493_;
	gboolean _tmp494_;
	GtkLabel* _tmp548_;
	gboolean _tmp551_ = FALSE;
	TubaAPITranslation* _tmp552_;
	TubaWidgetsPreviewCard* _tmp578_;
	TubaWidgetsCollectionButton* _tmp581_;
	gboolean _tmp584_ = FALSE;
	TubaAPIStatus* _tmp585_;
	TubaAPIStatus* _tmp586_;
	TubaAPIStatus* _tmp587_;
	TubaAPIStatus* _tmp588_;
	GeeArrayList* _tmp589_;
	GeeArrayList* _tmp590_;
	TubaWidgetsHashtagBar* _tmp649_;
	gboolean _tmp652_ = FALSE;
	TubaWidgetsMarkupView* _tmp653_;
	gint _tmp654_ = 0;
	TubaUtilsTagExtractorTag* _tmp655_;
	TubaUtilsTagExtractorTag* _tmp656_;
	gint _tmp656__length1;
	gboolean _tmp657_;
	TubaAPIStatus* _tmp669_;
	TubaAPIStatus* _tmp670_;
	TubaAPIStatus* _tmp671_;
	TubaAPIStatus* _tmp672_;
	gulong _tmp673_;
	TubaAPIStatus* _tmp674_;
	TubaAPIStatus* _tmp675_;
	TubaAPIStatus* _tmp676_;
	TubaAPIStatus* _tmp677_;
	gulong _tmp678_;
	TubaAPIStatus* _tmp679_;
	TubaAPIStatus* _tmp680_;
	TubaAPIStatus* _tmp681_;
	TubaAPIStatus* _tmp682_;
	gulong _tmp683_;
	TubaAPIStatus* _tmp684_;
	TubaAPIStatus* _tmp685_;
	TubaAPIStatus* _tmp686_;
	TubaAPIStatus* _tmp687_;
	gulong _tmp688_;
	tuba_widgets_status_soft_unbind (self);
	_tmp2_ = tuba_widgets_status_get_status (self);
	_tmp3_ = _tmp2_;
	_tmp4_ = tuba_api_status_get_formal (_tmp3_);
	_tmp5_ = _tmp4_;
	_tmp6_ = tuba_api_status_get_filtered (_tmp5_);
	_tmp7_ = _tmp6_;
	if (_tmp7_ != NULL) {
		TubaAPIStatus* _tmp8_;
		TubaAPIStatus* _tmp9_;
		TubaAPIStatus* _tmp10_;
		TubaAPIStatus* _tmp11_;
		GeeArrayList* _tmp12_;
		GeeArrayList* _tmp13_;
		gint _tmp14_;
		gint _tmp15_;
		_tmp8_ = tuba_widgets_status_get_status (self);
		_tmp9_ = _tmp8_;
		_tmp10_ = tuba_api_status_get_formal (_tmp9_);
		_tmp11_ = _tmp10_;
		_tmp12_ = tuba_api_status_get_filtered (_tmp11_);
		_tmp13_ = _tmp12_;
		_tmp14_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp13_);
		_tmp15_ = _tmp14_;
		_tmp1_ = _tmp15_ > 0;
	} else {
		_tmp1_ = FALSE;
	}
	if (_tmp1_) {
		_tmp0_ = !self->priv->expanded;
	} else {
		_tmp0_ = FALSE;
	}
	if (_tmp0_) {
		GtkStack* _tmp16_;
		gchar* filter_warn = NULL;
		TubaAPIStatus* _tmp17_;
		TubaAPIStatus* _tmp18_;
		TubaAPIStatus* _tmp19_;
		TubaAPIStatus* _tmp20_;
		gchar* _tmp21_;
		gchar* _tmp22_;
		const gchar* _tmp23_;
		GtkLabel* _tmp29_;
		gchar* _tmp30_;
		gchar* _tmp31_;
		gchar* _tmp32_;
		gchar* _tmp33_;
		gchar* _tmp34_;
		GtkLabel* _tmp35_;
		_tmp16_ = self->filter_stack;
		gtk_stack_set_visible_child_name (_tmp16_, "filter");
		_tmp17_ = tuba_widgets_status_get_status (self);
		_tmp18_ = _tmp17_;
		_tmp19_ = tuba_api_status_get_formal (_tmp18_);
		_tmp20_ = _tmp19_;
		_tmp21_ = tuba_api_status_get_tuba_filter_warn (_tmp20_);
		_tmp22_ = _tmp21_;
		filter_warn = _tmp22_;
		_tmp23_ = filter_warn;
		if (_tmp23_ != NULL) {
			GtkLabel* _tmp24_;
			const gchar* _tmp25_;
			gchar* _tmp26_;
			gchar* _tmp27_;
			_tmp24_ = self->filter_label;
			_tmp25_ = filter_warn;
			_tmp26_ = g_strdup_printf (_ ("Filtered: %s"), _tmp25_);
			_tmp27_ = _tmp26_;
			gtk_label_set_label (_tmp24_, _tmp27_);
			_g_free0 (_tmp27_);
		} else {
			GtkLabel* _tmp28_;
			_tmp28_ = self->filter_label;
			gtk_label_set_label (_tmp28_, _ ("Filtered"));
		}
		_tmp29_ = self->filter_author_label;
		_tmp30_ = tuba_widgets_status_get_subtitle_text (self);
		_tmp31_ = _tmp30_;
		_tmp32_ = _tmp31_;
		_tmp33_ = g_strdup_printf (_ ("by %s"), _tmp32_);
		_tmp34_ = _tmp33_;
		gtk_label_set_label (_tmp29_, _tmp34_);
		_g_free0 (_tmp34_);
		_g_free0 (_tmp32_);
		_tmp35_ = self->filter_author_label;
		gtk_widget_set_visible ((GtkWidget*) _tmp35_, TRUE);
		_g_free0 (filter_warn);
	}
	_tmp36_ = self->priv->_actions;
	if (_tmp36_ != NULL) {
		TubaWidgetsActionsRow* _tmp37_;
		GtkBox* _tmp38_;
		TubaWidgetsActionsRow* _tmp39_;
		_tmp37_ = self->priv->_actions;
		tuba_widgets_actions_row_unbind (_tmp37_);
		_tmp38_ = self->content_column;
		_tmp39_ = self->priv->_actions;
		gtk_box_remove (_tmp38_, (GtkWidget*) _tmp39_);
	}
	_tmp40_ = tuba_widgets_status_get_status (self);
	_tmp41_ = _tmp40_;
	_tmp42_ = tuba_api_status_get_formal (_tmp41_);
	_tmp43_ = _tmp42_;
	_tmp44_ = tuba_widgets_actions_row_new (_tmp43_);
	g_object_ref_sink (_tmp44_);
	_tmp45_ = _tmp44_;
	tuba_widgets_status_set_actions (self, _tmp45_);
	_g_object_unref0 (_tmp45_);
	_tmp46_ = self->priv->_actions;
	g_signal_connect_object (_tmp46_, "reply", (GCallback) _tuba_widgets_status_on_reply_button_clicked_tuba_widgets_actions_row_reply, self, 0);
	_tmp47_ = self->content_column;
	_tmp48_ = self->priv->_actions;
	gtk_box_append (_tmp47_, (GtkWidget*) _tmp48_);
	tuba_widgets_status_toggle_actions_visibility (self, TRUE);
	_tmp49_ = self->content;
	_tmp50_ = tuba_widgets_status_get_status (self);
	_tmp51_ = _tmp50_;
	_tmp52_ = tuba_api_search_result_get_tuba_search_query_regex ((TubaAPISearchResult*) _tmp51_);
	_tmp53_ = _tmp52_;
	tuba_widgets_markup_view_set_bold_text_regex (_tmp49_, _tmp53_);
	_tmp54_ = tuba_widgets_status_get_status (self);
	_tmp55_ = _tmp54_;
	_tmp56_ = tuba_api_status_get_formal (_tmp55_);
	_tmp57_ = _tmp56_;
	_tmp58_ = tuba_api_status_get_quote (_tmp57_);
	_tmp59_ = _tmp58_;
	has_quote = _tmp59_ != NULL;
	if (has_quote) {
		_tmp60_ = TRUE;
	} else {
		TubaAPIStatus* _tmp61_;
		TubaAPIStatus* _tmp62_;
		TubaAPIStatus* _tmp63_;
		TubaAPIStatus* _tmp64_;
		gboolean _tmp65_;
		gboolean _tmp66_;
		_tmp61_ = tuba_widgets_status_get_status (self);
		_tmp62_ = _tmp61_;
		_tmp63_ = tuba_api_status_get_formal (_tmp62_);
		_tmp64_ = _tmp63_;
		_tmp65_ = tuba_api_status_get_tuba_had_quote (_tmp64_);
		_tmp66_ = _tmp65_;
		_tmp60_ = _tmp66_;
	}
	_tmp67_ = self->content;
	tuba_widgets_markup_view_set_has_quote (_tmp67_, _tmp60_);
	_tmp68_ = self->content;
	_tmp69_ = tuba_widgets_status_get_status (self);
	_tmp70_ = _tmp69_;
	_tmp71_ = tuba_api_status_get_formal (_tmp70_);
	_tmp72_ = _tmp71_;
	_tmp73_ = tuba_api_status_get_mentions (_tmp72_);
	_tmp74_ = _tmp73_;
	tuba_widgets_markup_view_set_mentions (_tmp68_, _tmp74_);
	_tmp75_ = self->content;
	_tmp76_ = tuba_widgets_status_get_status (self);
	_tmp77_ = _tmp76_;
	_tmp78_ = tuba_api_status_get_formal (_tmp77_);
	_tmp79_ = _tmp78_;
	_tmp80_ = tuba_api_status_get_emojis_map (_tmp79_);
	_tmp81_ = _tmp80_;
	_tmp82_ = _tmp81_;
	tuba_widgets_markup_view_set_instance_emojis (_tmp75_, _tmp82_);
	_g_object_unref0 (_tmp82_);
	_tmp85_ = self->priv->_translation;
	if (_tmp85_ != NULL) {
		TubaAPITranslation* _tmp86_;
		const gchar* _tmp87_;
		const gchar* _tmp88_;
		_tmp86_ = self->priv->_translation;
		_tmp87_ = tuba_api_translation_get_content (_tmp86_);
		_tmp88_ = _tmp87_;
		_tmp84_ = _tmp88_ != NULL;
	} else {
		_tmp84_ = FALSE;
	}
	if (_tmp84_) {
		TubaAPITranslation* _tmp89_;
		const gchar* _tmp90_;
		const gchar* _tmp91_;
		_tmp89_ = self->priv->_translation;
		_tmp90_ = tuba_api_translation_get_content (_tmp89_);
		_tmp91_ = _tmp90_;
		_tmp83_ = g_strcmp0 (_tmp91_, "") != 0;
	} else {
		_tmp83_ = FALSE;
	}
	if (_tmp83_) {
		TubaWidgetsMarkupView* _tmp92_;
		TubaAPITranslation* _tmp93_;
		const gchar* _tmp94_;
		const gchar* _tmp95_;
		_tmp92_ = self->content;
		_tmp93_ = self->priv->_translation;
		_tmp94_ = tuba_api_translation_get_content (_tmp93_);
		_tmp95_ = _tmp94_;
		tuba_widgets_markup_view_set_content (_tmp92_, _tmp95_);
	} else {
		TubaWidgetsMarkupView* _tmp96_;
		TubaAPIStatus* _tmp97_;
		TubaAPIStatus* _tmp98_;
		TubaAPIStatus* _tmp99_;
		TubaAPIStatus* _tmp100_;
		const gchar* _tmp101_;
		const gchar* _tmp102_;
		_tmp96_ = self->content;
		_tmp97_ = tuba_widgets_status_get_status (self);
		_tmp98_ = _tmp97_;
		_tmp99_ = tuba_api_status_get_formal (_tmp98_);
		_tmp100_ = _tmp99_;
		_tmp101_ = tuba_api_status_get_content (_tmp100_);
		_tmp102_ = _tmp101_;
		tuba_widgets_markup_view_set_content (_tmp96_, _tmp102_);
	}
	_tmp103_ = self->priv->_quoted_status_btn;
	if (_tmp103_ != NULL) {
		GtkBox* _tmp104_;
		GtkButton* _tmp105_;
		_tmp104_ = self->content_box;
		_tmp105_ = self->priv->_quoted_status_btn;
		gtk_box_remove (_tmp104_, (GtkWidget*) _tmp105_);
	}
	_tmp106_ = self->priv->_quote_warning;
	if (_tmp106_ != NULL) {
		GtkBox* _tmp107_;
		GtkLabel* _tmp108_;
		_tmp107_ = self->content_box;
		_tmp108_ = self->priv->_quote_warning;
		gtk_box_remove (_tmp107_, (GtkWidget*) _tmp108_);
	}
	if (has_quote) {
		gboolean _tmp111_;
		gboolean _tmp112_;
		_tmp111_ = tuba_widgets_status_get_is_quote (self);
		_tmp112_ = _tmp111_;
		_tmp110_ = !_tmp112_;
	} else {
		_tmp110_ = FALSE;
	}
	if (_tmp110_) {
		_tmp109_ = TRUE;
	} else {
		TubaAPIStatus* _tmp113_;
		TubaAPIStatus* _tmp114_;
		TubaAPIStatus* _tmp115_;
		TubaAPIStatus* _tmp116_;
		gboolean _tmp117_;
		gboolean _tmp118_;
		_tmp113_ = tuba_widgets_status_get_status (self);
		_tmp114_ = _tmp113_;
		_tmp115_ = tuba_api_status_get_formal (_tmp114_);
		_tmp116_ = _tmp115_;
		_tmp117_ = tuba_api_status_get_tuba_had_quote (_tmp116_);
		_tmp118_ = _tmp117_;
		_tmp109_ = _tmp118_;
	}
	if (_tmp109_) {
		gboolean _tmp119_ = FALSE;
		TubaAPIStatus* _tmp120_;
		TubaAPIStatus* _tmp121_;
		TubaAPIStatus* _tmp122_;
		TubaAPIStatus* _tmp123_;
		TubaAPIQuote* _tmp124_;
		TubaAPIQuote* _tmp125_;
		_tmp120_ = tuba_widgets_status_get_status (self);
		_tmp121_ = _tmp120_;
		_tmp122_ = tuba_api_status_get_formal (_tmp121_);
		_tmp123_ = _tmp122_;
		_tmp124_ = tuba_api_status_get_quote (_tmp123_);
		_tmp125_ = _tmp124_;
		if (_tmp125_ != NULL) {
			TubaAPIStatus* _tmp126_;
			TubaAPIStatus* _tmp127_;
			TubaAPIStatus* _tmp128_;
			TubaAPIStatus* _tmp129_;
			TubaAPIQuote* _tmp130_;
			TubaAPIQuote* _tmp131_;
			gboolean _tmp132_;
			gboolean _tmp133_;
			_tmp126_ = tuba_widgets_status_get_status (self);
			_tmp127_ = _tmp126_;
			_tmp128_ = tuba_api_status_get_formal (_tmp127_);
			_tmp129_ = _tmp128_;
			_tmp130_ = tuba_api_status_get_quote (_tmp129_);
			_tmp131_ = _tmp130_;
			_tmp132_ = tuba_api_quote_get_tuba_has_quote (_tmp131_);
			_tmp133_ = _tmp132_;
			_tmp119_ = _tmp133_;
		} else {
			_tmp119_ = FALSE;
		}
		if (_tmp119_) {
			TubaWidgetsStatus* quoted_status = NULL;
			TubaAPIStatus* _tmp134_;
			TubaAPIStatus* _tmp135_;
			TubaAPIStatus* _tmp136_;
			TubaAPIStatus* _tmp137_;
			TubaAPIQuote* _tmp138_;
			TubaAPIQuote* _tmp139_;
			GtkWidget* _tmp140_;
			TubaWidgetsStatus* _tmp141_;
			TubaWidgetsStatus* _tmp142_;
			TubaWidgetsStatus* _tmp143_;
			TubaWidgetsStatus* _tmp144_;
			GtkStack* qstack = NULL;
			GtkStack* _tmp145_ = NULL;
			GtkStack* _tmp146_;
			TubaWidgetsStatus* _tmp147_;
			GtkStack* _tmp148_;
			GtkWidget* _tmp149_;
			gchar* _tmp150_;
			gchar* _tmp151_;
			gchar** _tmp152_;
			GtkButton* _tmp153_ = NULL;
			GtkButton* _tmp154_;
			GtkButton* _tmp155_;
			TubaWidgetsStatus* _tmp156_;
			GtkBox* _tmp157_;
			GtkButton* _tmp158_;
			gboolean _tmp159_ = FALSE;
			TubaAPIStatus* _tmp160_;
			TubaAPIStatus* _tmp161_;
			TubaAPIStatus* _tmp162_;
			TubaAPIStatus* _tmp163_;
			TubaAPIQuote* _tmp164_;
			TubaAPIQuote* _tmp165_;
			const gchar* _tmp166_;
			const gchar* _tmp167_;
			_tmp134_ = tuba_widgets_status_get_status (self);
			_tmp135_ = _tmp134_;
			_tmp136_ = tuba_api_status_get_formal (_tmp135_);
			_tmp137_ = _tmp136_;
			_tmp138_ = tuba_api_status_get_quote (_tmp137_);
			_tmp139_ = _tmp138_;
			_tmp140_ = tuba_widgetizable_to_widget ((TubaWidgetizable*) _tmp139_);
			quoted_status = G_TYPE_CHECK_INSTANCE_CAST (_tmp140_, TUBA_WIDGETS_TYPE_STATUS, TubaWidgetsStatus);
			_tmp141_ = quoted_status;
			tuba_widgets_status_set_is_quote (_tmp141_, TRUE);
			_tmp142_ = quoted_status;
			gtk_widget_add_css_class ((GtkWidget*) _tmp142_, "frame");
			_tmp143_ = quoted_status;
			gtk_widget_add_css_class ((GtkWidget*) _tmp143_, "ttl-quote");
			_tmp144_ = quoted_status;
			gtk_widget_set_overflow ((GtkWidget*) _tmp144_, GTK_OVERFLOW_HIDDEN);
			_tmp145_ = (GtkStack*) gtk_stack_new ();
			gtk_stack_set_vhomogeneous (_tmp145_, FALSE);
			gtk_stack_set_hhomogeneous (_tmp145_, FALSE);
			gtk_stack_set_transition_type (_tmp145_, GTK_STACK_TRANSITION_TYPE_CROSSFADE);
			gtk_stack_set_interpolate_size (_tmp145_, TRUE);
			g_object_ref_sink (_tmp145_);
			qstack = _tmp145_;
			_tmp146_ = qstack;
			_tmp147_ = quoted_status;
			gtk_stack_add_named (_tmp146_, (GtkWidget*) _tmp147_, "status");
			_tmp148_ = qstack;
			_tmp149_ = _g_object_ref0 ((GtkWidget*) _tmp148_);
			_tmp150_ = g_strdup ("ttl-flat-button");
			_tmp151_ = g_strdup ("flat");
			_tmp152_ = g_new0 (gchar*, 2 + 1);
			_tmp152_[0] = _tmp150_;
			_tmp152_[1] = _tmp151_;
			_tmp153_ = (GtkButton*) gtk_button_new ();
			gtk_button_set_child (_tmp153_, _tmp149_);
			_g_object_unref0 (_tmp149_);
			gtk_widget_set_css_classes ((GtkWidget*) _tmp153_, _tmp152_);
			_tmp152_ = (_vala_array_free (_tmp152_, 2, (GDestroyNotify) g_free), NULL);
			g_object_ref_sink (_tmp153_);
			_tmp154_ = _tmp153_;
			tuba_widgets_status_set_quoted_status_btn (self, _tmp154_);
			_g_object_unref0 (_tmp154_);
			_tmp155_ = self->priv->_quoted_status_btn;
			_tmp156_ = quoted_status;
			g_signal_connect_object (_tmp155_, "clicked", (GCallback) _tuba_widgets_status_on_open_unless_reveal_gtk_button_clicked, _tmp156_, 0);
			_tmp157_ = self->content_box;
			_tmp158_ = self->priv->_quoted_status_btn;
			gtk_box_append (_tmp157_, (GtkWidget*) _tmp158_);
			_tmp160_ = tuba_widgets_status_get_status (self);
			_tmp161_ = _tmp160_;
			_tmp162_ = tuba_api_status_get_formal (_tmp161_);
			_tmp163_ = _tmp162_;
			_tmp164_ = tuba_api_status_get_quote (_tmp163_);
			_tmp165_ = _tmp164_;
			_tmp166_ = tuba_api_quote_get_state (_tmp165_);
			_tmp167_ = _tmp166_;
			if (g_strcmp0 (_tmp167_, "accepted") != 0) {
				_tmp159_ = TRUE;
			} else {
				gboolean _tmp168_ = FALSE;
				TubaAPIStatus* _tmp169_;
				TubaAPIStatus* _tmp170_;
				TubaAPIStatus* _tmp171_;
				TubaAPIStatus* _tmp172_;
				TubaAPIQuote* _tmp173_;
				TubaAPIQuote* _tmp174_;
				TubaAPIAccount* _tmp175_;
				TubaAPIAccount* _tmp176_;
				_tmp169_ = tuba_widgets_status_get_status (self);
				_tmp170_ = _tmp169_;
				_tmp171_ = tuba_api_status_get_formal (_tmp170_);
				_tmp172_ = _tmp171_;
				_tmp173_ = tuba_api_status_get_quote (_tmp172_);
				_tmp174_ = _tmp173_;
				_tmp175_ = tuba_api_status_get_account ((TubaAPIStatus*) _tmp174_);
				_tmp176_ = _tmp175_;
				if (_tmp176_ != NULL) {
					TubaAPIStatus* _tmp177_;
					TubaAPIStatus* _tmp178_;
					TubaAPIStatus* _tmp179_;
					TubaAPIStatus* _tmp180_;
					TubaAPIQuote* _tmp181_;
					TubaAPIQuote* _tmp182_;
					TubaAPIAccount* _tmp183_;
					TubaAPIAccount* _tmp184_;
					gboolean _tmp185_;
					gboolean _tmp186_;
					_tmp177_ = tuba_widgets_status_get_status (self);
					_tmp178_ = _tmp177_;
					_tmp179_ = tuba_api_status_get_formal (_tmp178_);
					_tmp180_ = _tmp179_;
					_tmp181_ = tuba_api_status_get_quote (_tmp180_);
					_tmp182_ = _tmp181_;
					_tmp183_ = tuba_api_status_get_account ((TubaAPIStatus*) _tmp182_);
					_tmp184_ = _tmp183_;
					_tmp185_ = tuba_api_account_get_limited (_tmp184_);
					_tmp186_ = _tmp185_;
					_tmp168_ = _tmp186_;
				} else {
					_tmp168_ = FALSE;
				}
				_tmp159_ = _tmp168_;
			}
			if (_tmp159_) {
				gchar* label = NULL;
				gchar* _tmp187_;
				TubaAPIStatus* _tmp188_;
				TubaAPIStatus* _tmp189_;
				TubaAPIStatus* _tmp190_;
				TubaAPIStatus* _tmp191_;
				TubaAPIQuote* _tmp192_;
				TubaAPIQuote* _tmp193_;
				const gchar* _tmp194_;
				const gchar* _tmp195_;
				GtkLabel* qbtn = NULL;
				const gchar* _tmp244_;
				gchar* _tmp245_;
				gchar* _tmp246_;
				gchar* _tmp247_;
				gchar* _tmp248_;
				gchar** _tmp249_;
				GtkLabel* _tmp250_ = NULL;
				GtkStack* _tmp251_;
				GtkLabel* _tmp252_;
				GtkStack* _tmp253_;
				_tmp187_ = g_strdup (_ ("Quote is hidden"));
				label = _tmp187_;
				_tmp188_ = tuba_widgets_status_get_status (self);
				_tmp189_ = _tmp188_;
				_tmp190_ = tuba_api_status_get_formal (_tmp189_);
				_tmp191_ = _tmp190_;
				_tmp192_ = tuba_api_status_get_quote (_tmp191_);
				_tmp193_ = _tmp192_;
				_tmp194_ = tuba_api_quote_get_state (_tmp193_);
				_tmp195_ = _tmp194_;
				if (g_strcmp0 (_tmp195_, "accepted") != 0) {
					TubaAPIStatus* _tmp196_;
					TubaAPIStatus* _tmp197_;
					TubaAPIStatus* _tmp198_;
					TubaAPIStatus* _tmp199_;
					TubaAPIQuote* _tmp200_;
					TubaAPIQuote* _tmp201_;
					const gchar* _tmp202_;
					const gchar* _tmp203_;
					const gchar* _tmp204_;
					GQuark _tmp206_ = 0U;
					static GQuark _tmp205_label0 = 0;
					static GQuark _tmp205_label1 = 0;
					static GQuark _tmp205_label2 = 0;
					_tmp196_ = tuba_widgets_status_get_status (self);
					_tmp197_ = _tmp196_;
					_tmp198_ = tuba_api_status_get_formal (_tmp197_);
					_tmp199_ = _tmp198_;
					_tmp200_ = tuba_api_status_get_quote (_tmp199_);
					_tmp201_ = _tmp200_;
					_tmp202_ = tuba_api_quote_get_state (_tmp201_);
					_tmp203_ = _tmp202_;
					_tmp204_ = _tmp203_;
					_tmp206_ = (NULL == _tmp204_) ? 0 : g_quark_from_string (_tmp204_);
					if (_tmp206_ == ((0 != _tmp205_label0) ? _tmp205_label0 : (_tmp205_label0 = g_quark_from_static_string ("blocked_account")))) {
						switch (0) {
							default:
							{
								TubaAPIStatus* _tmp207_;
								TubaAPIStatus* _tmp208_;
								TubaAPIStatus* _tmp209_;
								TubaAPIStatus* _tmp210_;
								TubaAPIQuote* _tmp211_;
								TubaAPIQuote* _tmp212_;
								TubaAPIAccount* _tmp213_;
								TubaAPIAccount* _tmp214_;
								gchar* _tmp215_;
								gchar* _tmp216_;
								gchar* _tmp217_;
								gchar* _tmp218_;
								_tmp207_ = tuba_widgets_status_get_status (self);
								_tmp208_ = _tmp207_;
								_tmp209_ = tuba_api_status_get_formal (_tmp208_);
								_tmp210_ = _tmp209_;
								_tmp211_ = tuba_api_status_get_quote (_tmp210_);
								_tmp212_ = _tmp211_;
								_tmp213_ = tuba_api_status_get_account ((TubaAPIStatus*) _tmp212_);
								_tmp214_ = _tmp213_;
								_tmp215_ = tuba_api_account_get_handle (_tmp214_);
								_tmp216_ = _tmp215_;
								_tmp217_ = _tmp216_;
								_tmp218_ = g_strdup_printf (_ ("This quote is hidden because you've blocked %s"), _tmp217_);
								_g_free0 (label);
								label = _tmp218_;
								_g_free0 (_tmp217_);
								break;
							}
						}
					} else if (_tmp206_ == ((0 != _tmp205_label1) ? _tmp205_label1 : (_tmp205_label1 = g_quark_from_static_string ("blocked_domain")))) {
						switch (0) {
							default:
							{
								TubaAPIStatus* _tmp219_;
								TubaAPIStatus* _tmp220_;
								TubaAPIStatus* _tmp221_;
								TubaAPIStatus* _tmp222_;
								TubaAPIQuote* _tmp223_;
								TubaAPIQuote* _tmp224_;
								TubaAPIAccount* _tmp225_;
								TubaAPIAccount* _tmp226_;
								gchar* _tmp227_;
								gchar* _tmp228_;
								gchar* _tmp229_;
								gchar* _tmp230_;
								_tmp219_ = tuba_widgets_status_get_status (self);
								_tmp220_ = _tmp219_;
								_tmp221_ = tuba_api_status_get_formal (_tmp220_);
								_tmp222_ = _tmp221_;
								_tmp223_ = tuba_api_status_get_quote (_tmp222_);
								_tmp224_ = _tmp223_;
								_tmp225_ = tuba_api_status_get_account ((TubaAPIStatus*) _tmp224_);
								_tmp226_ = _tmp225_;
								_tmp227_ = tuba_api_account_get_domain (_tmp226_);
								_tmp228_ = _tmp227_;
								_tmp229_ = _tmp228_;
								_tmp230_ = g_strdup_printf (_ ("This quote is hidden because you've blocked %s"), _tmp229_);
								_g_free0 (label);
								label = _tmp230_;
								_g_free0 (_tmp229_);
								break;
							}
						}
					} else if (_tmp206_ == ((0 != _tmp205_label2) ? _tmp205_label2 : (_tmp205_label2 = g_quark_from_static_string ("muted_account")))) {
						switch (0) {
							default:
							{
								TubaAPIStatus* _tmp231_;
								TubaAPIStatus* _tmp232_;
								TubaAPIStatus* _tmp233_;
								TubaAPIStatus* _tmp234_;
								TubaAPIQuote* _tmp235_;
								TubaAPIQuote* _tmp236_;
								TubaAPIAccount* _tmp237_;
								TubaAPIAccount* _tmp238_;
								gchar* _tmp239_;
								gchar* _tmp240_;
								gchar* _tmp241_;
								gchar* _tmp242_;
								_tmp231_ = tuba_widgets_status_get_status (self);
								_tmp232_ = _tmp231_;
								_tmp233_ = tuba_api_status_get_formal (_tmp232_);
								_tmp234_ = _tmp233_;
								_tmp235_ = tuba_api_status_get_quote (_tmp234_);
								_tmp236_ = _tmp235_;
								_tmp237_ = tuba_api_status_get_account ((TubaAPIStatus*) _tmp236_);
								_tmp238_ = _tmp237_;
								_tmp239_ = tuba_api_account_get_handle (_tmp238_);
								_tmp240_ = _tmp239_;
								_tmp241_ = _tmp240_;
								_tmp242_ = g_strdup_printf (_ ("This quote is hidden because you've muted %s"), _tmp241_);
								_g_free0 (label);
								label = _tmp242_;
								_g_free0 (_tmp241_);
								break;
							}
						}
					}
				} else {
					gchar* _tmp243_;
					_tmp243_ = g_strdup (_ ("This quote is hidden because the account has been hidden by the modera" \
"tors"));
					_g_free0 (label);
					label = _tmp243_;
				}
				_tmp244_ = label;
				_tmp245_ = g_strdup (_ ("Show Anyway"));
				_tmp246_ = g_strdup ("border-radius-6");
				_tmp247_ = g_strdup ("frame");
				_tmp248_ = g_strdup ("ttl-quote-state");
				_tmp249_ = g_new0 (gchar*, 3 + 1);
				_tmp249_[0] = _tmp246_;
				_tmp249_[1] = _tmp247_;
				_tmp249_[2] = _tmp248_;
				_tmp250_ = (GtkLabel*) gtk_label_new (_tmp244_);
				gtk_label_set_wrap (_tmp250_, TRUE);
				gtk_label_set_wrap_mode (_tmp250_, PANGO_WRAP_CHAR);
				gtk_widget_set_tooltip_text ((GtkWidget*) _tmp250_, _tmp245_);
				_g_free0 (_tmp245_);
				gtk_widget_set_css_classes ((GtkWidget*) _tmp250_, _tmp249_);
				_tmp249_ = (_vala_array_free (_tmp249_, 3, (GDestroyNotify) g_free), NULL);
				g_object_ref_sink (_tmp250_);
				qbtn = _tmp250_;
				_tmp251_ = qstack;
				_tmp252_ = qbtn;
				gtk_stack_add_named (_tmp251_, (GtkWidget*) _tmp252_, "hidden-btn");
				_tmp253_ = qstack;
				gtk_stack_set_visible_child_name (_tmp253_, "hidden-btn");
				_g_object_unref0 (qbtn);
				_g_free0 (label);
			}
			_g_object_unref0 (qstack);
			_g_object_unref0 (quoted_status);
		} else {
			gchar* label = NULL;
			gchar* _tmp254_;
			TubaAPIStatus* _tmp255_;
			TubaAPIStatus* _tmp256_;
			TubaAPIStatus* _tmp257_;
			TubaAPIStatus* _tmp258_;
			gboolean _tmp259_;
			gboolean _tmp260_;
			const gchar* _tmp275_;
			gchar* _tmp276_;
			gchar* _tmp277_;
			gchar* _tmp278_;
			gchar* _tmp279_;
			gchar** _tmp280_;
			GtkLabel* _tmp281_ = NULL;
			GtkLabel* _tmp282_;
			GtkBox* _tmp283_;
			GtkLabel* _tmp284_;
			_tmp254_ = g_strdup (_ ("Quote Unavailable"));
			label = _tmp254_;
			_tmp255_ = tuba_widgets_status_get_status (self);
			_tmp256_ = _tmp255_;
			_tmp257_ = tuba_api_status_get_formal (_tmp256_);
			_tmp258_ = _tmp257_;
			_tmp259_ = tuba_api_status_get_tuba_had_quote (_tmp258_);
			_tmp260_ = _tmp259_;
			if (_tmp260_) {
				gchar* _tmp261_;
				_tmp261_ = g_strdup (_ ("Quoted a post"));
				_g_free0 (label);
				label = _tmp261_;
			} else {
				TubaAPIStatus* _tmp262_;
				TubaAPIStatus* _tmp263_;
				TubaAPIStatus* _tmp264_;
				TubaAPIStatus* _tmp265_;
				TubaAPIQuote* _tmp266_;
				TubaAPIQuote* _tmp267_;
				const gchar* _tmp268_;
				const gchar* _tmp269_;
				const gchar* _tmp270_;
				GQuark _tmp272_ = 0U;
				static GQuark _tmp271_label0 = 0;
				static GQuark _tmp271_label1 = 0;
				static GQuark _tmp271_label2 = 0;
				_tmp262_ = tuba_widgets_status_get_status (self);
				_tmp263_ = _tmp262_;
				_tmp264_ = tuba_api_status_get_formal (_tmp263_);
				_tmp265_ = _tmp264_;
				_tmp266_ = tuba_api_status_get_quote (_tmp265_);
				_tmp267_ = _tmp266_;
				_tmp268_ = tuba_api_quote_get_state (_tmp267_);
				_tmp269_ = _tmp268_;
				_tmp270_ = _tmp269_;
				_tmp272_ = (NULL == _tmp270_) ? 0 : g_quark_from_string (_tmp270_);
				if (_tmp272_ == ((0 != _tmp271_label0) ? _tmp271_label0 : (_tmp271_label0 = g_quark_from_static_string ("pending")))) {
					switch (0) {
						default:
						{
							gchar* _tmp273_;
							_tmp273_ = g_strdup (_ ("Quote Pending"));
							_g_free0 (label);
							label = _tmp273_;
							break;
						}
					}
				} else if ((_tmp272_ == ((0 != _tmp271_label1) ? _tmp271_label1 : (_tmp271_label1 = g_quark_from_static_string ("revoked")))) || (_tmp272_ == ((0 != _tmp271_label2) ? _tmp271_label2 : (_tmp271_label2 = g_quark_from_static_string ("deleted"))))) {
					switch (0) {
						default:
						{
							gchar* _tmp274_;
							_tmp274_ = g_strdup (_ ("Quote removed by author"));
							_g_free0 (label);
							label = _tmp274_;
							break;
						}
					}
				}
			}
			_tmp275_ = label;
			_tmp276_ = g_strdup ("warning");
			_tmp277_ = g_strdup ("border-radius-6");
			_tmp278_ = g_strdup ("frame");
			_tmp279_ = g_strdup ("ttl-quote-state");
			_tmp280_ = g_new0 (gchar*, 4 + 1);
			_tmp280_[0] = _tmp276_;
			_tmp280_[1] = _tmp277_;
			_tmp280_[2] = _tmp278_;
			_tmp280_[3] = _tmp279_;
			_tmp281_ = (GtkLabel*) gtk_label_new (_tmp275_);
			gtk_label_set_wrap (_tmp281_, TRUE);
			gtk_label_set_wrap_mode (_tmp281_, PANGO_WRAP_WORD_CHAR);
			gtk_widget_set_css_classes ((GtkWidget*) _tmp281_, _tmp280_);
			_tmp280_ = (_vala_array_free (_tmp280_, 4, (GDestroyNotify) g_free), NULL);
			g_object_ref_sink (_tmp281_);
			_tmp282_ = _tmp281_;
			tuba_widgets_status_set_quote_warning (self, _tmp282_);
			_g_object_unref0 (_tmp282_);
			_tmp283_ = self->content_box;
			_tmp284_ = self->priv->_quote_warning;
			gtk_box_append (_tmp283_, (GtkWidget*) _tmp284_);
			_g_free0 (label);
		}
	}
	_tmp285_ = self->priv->_emoji_reactions;
	if (_tmp285_ != NULL) {
		GtkBox* _tmp286_;
		AdwBin* _tmp287_;
		_tmp286_ = self->content_column;
		_tmp287_ = self->priv->_emoji_reactions;
		gtk_box_remove (_tmp286_, (GtkWidget*) _tmp287_);
	}
	_tmp288_ = tuba_widgets_status_get_status (self);
	_tmp289_ = _tmp288_;
	_tmp290_ = tuba_api_status_get_formal (_tmp289_);
	_tmp291_ = _tmp290_;
	_tmp292_ = tuba_api_status_get_compat_status_reactions (_tmp291_);
	_tmp293_ = _tmp292_;
	if (_tmp293_ != NULL) {
		TubaAPIStatus* _tmp294_;
		TubaAPIStatus* _tmp295_;
		TubaAPIStatus* _tmp296_;
		TubaAPIStatus* _tmp297_;
		const gchar* _tmp298_;
		const gchar* _tmp299_;
		TubaAPIStatus* _tmp300_;
		TubaAPIStatus* _tmp301_;
		TubaAPIStatus* _tmp302_;
		TubaAPIStatus* _tmp303_;
		GeeArrayList* _tmp304_;
		GeeArrayList* _tmp305_;
		TubaWidgetsReactionsRow* _tmp306_;
		TubaWidgetsReactionsRow* _tmp307_;
		GtkBox* _tmp308_;
		AdwBin* _tmp309_;
		GtkStack* _tmp310_;
		_tmp294_ = tuba_widgets_status_get_status (self);
		_tmp295_ = _tmp294_;
		_tmp296_ = tuba_api_status_get_formal (_tmp295_);
		_tmp297_ = _tmp296_;
		_tmp298_ = tuba_api_status_get_id (_tmp297_);
		_tmp299_ = _tmp298_;
		_tmp300_ = tuba_widgets_status_get_status (self);
		_tmp301_ = _tmp300_;
		_tmp302_ = tuba_api_status_get_formal (_tmp301_);
		_tmp303_ = _tmp302_;
		_tmp304_ = tuba_api_status_get_compat_status_reactions (_tmp303_);
		_tmp305_ = _tmp304_;
		_tmp306_ = tuba_widgets_reactions_row_new (_tmp299_, _tmp305_, FALSE);
		g_object_ref_sink (_tmp306_);
		_tmp307_ = _tmp306_;
		tuba_widgets_status_set_emoji_reactions (self, (AdwBin*) _tmp307_);
		_g_object_unref0 (_tmp307_);
		_tmp308_ = self->content_column;
		_tmp309_ = self->priv->_emoji_reactions;
		_tmp310_ = self->spoiler_stack;
		gtk_box_insert_child_after (_tmp308_, (GtkWidget*) _tmp309_, (GtkWidget*) _tmp310_);
	}
	_tmp311_ = self->spoiler_label;
	_tmp312_ = tuba_widgets_status_get_spoiler_text (self);
	_tmp313_ = _tmp312_;
	_tmp314_ = _tmp313_;
	gtk_label_set_label (_tmp311_, _tmp314_);
	_g_free0 (_tmp314_);
	_tmp315_ = self->spoiler_label_rev;
	_tmp316_ = self->priv->_spoiler_text_revealed;
	gtk_label_set_label (_tmp315_, _tmp316_);
	_tmp318_ = tuba_widgets_status_get_status (self);
	_tmp319_ = _tmp318_;
	_tmp320_ = tuba_api_status_get_formal (_tmp319_);
	_tmp321_ = _tmp320_;
	_tmp322_ = tuba_api_status_get_has_spoiler (_tmp321_);
	_tmp323_ = _tmp322_;
	if (!_tmp323_) {
		_tmp317_ = TRUE;
	} else {
		TubaAPIStatus* _tmp324_;
		TubaAPIStatus* _tmp325_;
		TubaAPIStatus* _tmp326_;
		TubaAPIStatus* _tmp327_;
		gboolean _tmp328_;
		gboolean _tmp329_;
		_tmp324_ = tuba_widgets_status_get_status (self);
		_tmp325_ = _tmp324_;
		_tmp326_ = tuba_api_status_get_formal (_tmp325_);
		_tmp327_ = _tmp326_;
		_tmp328_ = tuba_api_status_get_tuba_spoiler_revealed (_tmp327_);
		_tmp329_ = _tmp328_;
		_tmp317_ = _tmp329_;
	}
	_tmp330_ = tuba_widgets_status_get_status (self);
	_tmp331_ = _tmp330_;
	_tmp332_ = tuba_api_status_get_formal (_tmp331_);
	_tmp333_ = _tmp332_;
	tuba_api_status_set_tuba_spoiler_revealed (_tmp333_, _tmp317_);
	tuba_widgets_status_update_spoiler_status_no_transition (self);
	_tmp334_ = self->handle_label;
	_tmp335_ = self->handle_label;
	_tmp336_ = tuba_widgets_status_get_subtitle_text (self);
	_tmp337_ = _tmp336_;
	_tmp338_ = _tmp337_;
	gtk_widget_set_tooltip_text ((GtkWidget*) _tmp335_, _tmp338_);
	gtk_label_set_label (_tmp334_, _tmp338_);
	_g_free0 (_tmp338_);
	_tmp339_ = self->date_label;
	_tmp340_ = tuba_widgets_status_get_date (self);
	_tmp341_ = _tmp340_;
	_tmp342_ = _tmp341_;
	gtk_label_set_label (_tmp339_, _tmp342_);
	_g_free0 (_tmp342_);
	if (!self->priv->expanded) {
		GtkLabel* _tmp343_;
		gchar* _tmp344_;
		gchar* _tmp345_;
		GtkLabel* _tmp346_;
		GtkLabel* _tmp347_;
		const gchar* _tmp348_;
		const gchar* _tmp349_;
		_tmp343_ = self->date_label;
		_tmp344_ = tuba_widgets_status_formatted_full_date (self);
		_tmp345_ = _tmp344_;
		gtk_widget_set_tooltip_text ((GtkWidget*) _tmp343_, _tmp345_);
		_g_free0 (_tmp345_);
		_tmp346_ = self->date_label;
		_tmp347_ = self->date_label;
		_tmp348_ = gtk_widget_get_tooltip_text ((GtkWidget*) _tmp347_);
		_tmp349_ = _tmp348_;
		gtk_accessible_update_property ((GtkAccessible*) _tmp346_, GTK_ACCESSIBLE_PROPERTY_LABEL, _tmp349_, -1, -1);
	}
	_tmp350_ = self->pin_indicator;
	_tmp351_ = tuba_widgets_status_get_status (self);
	_tmp352_ = _tmp351_;
	_tmp353_ = tuba_api_status_get_formal (_tmp352_);
	_tmp354_ = _tmp353_;
	_tmp355_ = tuba_api_status_get_pinned (_tmp354_);
	_tmp356_ = _tmp355_;
	gtk_widget_set_visible ((GtkWidget*) _tmp350_, _tmp356_);
	tuba_widgets_status_update_toggle_pinned_label (self);
	_tmp357_ = self->edited_indicator;
	_tmp358_ = tuba_widgets_status_get_status (self);
	_tmp359_ = _tmp358_;
	_tmp360_ = tuba_api_status_get_formal (_tmp359_);
	_tmp361_ = _tmp360_;
	_tmp362_ = tuba_api_status_get_is_edited (_tmp361_);
	_tmp363_ = _tmp362_;
	gtk_widget_set_visible ((GtkWidget*) _tmp357_, _tmp363_);
	_tmp364_ = self->priv->edit_history_simple_action;
	_tmp365_ = tuba_widgets_status_get_status (self);
	_tmp366_ = _tmp365_;
	_tmp367_ = tuba_api_status_get_formal (_tmp366_);
	_tmp368_ = _tmp367_;
	_tmp369_ = tuba_api_status_get_is_edited (_tmp368_);
	_tmp370_ = _tmp369_;
	g_simple_action_set_enabled (_tmp364_, _tmp370_);
	_tmp371_ = tuba_accounts;
	_tmp372_ = tuba_account_store_get_active (_tmp371_);
	_tmp373_ = _tmp372_;
	_tmp374_ = _tmp373_->visibility;
	_tmp375_ = tuba_widgets_status_get_status (self);
	_tmp376_ = _tmp375_;
	_tmp377_ = tuba_api_status_get_formal (_tmp376_);
	_tmp378_ = _tmp377_;
	_tmp379_ = tuba_api_status_get_visibility (_tmp378_);
	_tmp380_ = _tmp379_;
	if (gee_abstract_map_has_key ((GeeAbstractMap*) _tmp374_, _tmp380_)) {
		GtkImage* _tmp381_;
		TubaInstanceAccountVisibility* t_visibility = NULL;
		TubaAccountStore* _tmp382_;
		TubaInstanceAccount* _tmp383_;
		TubaInstanceAccount* _tmp384_;
		GeeHashMap* _tmp385_;
		TubaAPIStatus* _tmp386_;
		TubaAPIStatus* _tmp387_;
		TubaAPIStatus* _tmp388_;
		TubaAPIStatus* _tmp389_;
		const gchar* _tmp390_;
		const gchar* _tmp391_;
		gpointer _tmp392_;
		GtkImage* _tmp393_;
		TubaInstanceAccountVisibility* _tmp394_;
		const gchar* _tmp395_;
		const gchar* _tmp396_;
		GtkImage* _tmp397_;
		TubaInstanceAccountVisibility* _tmp398_;
		const gchar* _tmp399_;
		const gchar* _tmp400_;
		GtkImage* _tmp401_;
		TubaInstanceAccountVisibility* _tmp402_;
		const gchar* _tmp403_;
		const gchar* _tmp404_;
		_tmp381_ = self->visibility_indicator;
		gtk_widget_set_visible ((GtkWidget*) _tmp381_, TRUE);
		_tmp382_ = tuba_accounts;
		_tmp383_ = tuba_account_store_get_active (_tmp382_);
		_tmp384_ = _tmp383_;
		_tmp385_ = _tmp384_->visibility;
		_tmp386_ = tuba_widgets_status_get_status (self);
		_tmp387_ = _tmp386_;
		_tmp388_ = tuba_api_status_get_formal (_tmp387_);
		_tmp389_ = _tmp388_;
		_tmp390_ = tuba_api_status_get_visibility (_tmp389_);
		_tmp391_ = _tmp390_;
		_tmp392_ = gee_abstract_map_get ((GeeAbstractMap*) _tmp385_, _tmp391_);
		t_visibility = (TubaInstanceAccountVisibility*) _tmp392_;
		_tmp393_ = self->visibility_indicator;
		_tmp394_ = t_visibility;
		_tmp395_ = tuba_instance_account_visibility_get_small_icon_name (_tmp394_);
		_tmp396_ = _tmp395_;
		g_object_set (_tmp393_, "icon-name", _tmp396_, NULL);
		_tmp397_ = self->visibility_indicator;
		_tmp398_ = t_visibility;
		_tmp399_ = tuba_instance_account_visibility_get_name (_tmp398_);
		_tmp400_ = _tmp399_;
		gtk_widget_set_tooltip_text ((GtkWidget*) _tmp397_, _tmp400_);
		_tmp401_ = self->visibility_indicator;
		_tmp402_ = t_visibility;
		_tmp403_ = tuba_instance_account_visibility_get_name (_tmp402_);
		_tmp404_ = _tmp403_;
		gtk_accessible_update_property ((GtkAccessible*) _tmp401_, GTK_ACCESSIBLE_PROPERTY_LABEL, _tmp404_, -1, -1);
		_g_object_unref0 (t_visibility);
	} else {
		GtkImage* _tmp405_;
		_tmp405_ = self->visibility_indicator;
		gtk_widget_set_visible ((GtkWidget*) _tmp405_, FALSE);
	}
	_tmp407_ = tuba_widgets_status_get_change_background_on_direct (self);
	_tmp408_ = _tmp407_;
	if (_tmp408_) {
		TubaAPIStatus* _tmp409_;
		TubaAPIStatus* _tmp410_;
		TubaAPIStatus* _tmp411_;
		TubaAPIStatus* _tmp412_;
		const gchar* _tmp413_;
		const gchar* _tmp414_;
		_tmp409_ = tuba_widgets_status_get_status (self);
		_tmp410_ = _tmp409_;
		_tmp411_ = tuba_api_status_get_formal (_tmp410_);
		_tmp412_ = _tmp411_;
		_tmp413_ = tuba_api_status_get_visibility (_tmp412_);
		_tmp414_ = _tmp413_;
		_tmp406_ = g_strcmp0 (_tmp414_, "direct") == 0;
	} else {
		_tmp406_ = FALSE;
	}
	if (_tmp406_) {
		gtk_widget_add_css_class ((GtkWidget*) self, "direct");
	} else {
		gtk_widget_remove_css_class ((GtkWidget*) self, "direct");
	}
	_tmp415_ = self->priv->local_only_indicator;
	if (_tmp415_ != NULL) {
		GtkBox* _tmp416_;
		GtkImage* _tmp417_;
		_tmp416_ = self->indicators;
		_tmp417_ = self->priv->local_only_indicator;
		gtk_box_remove (_tmp416_, (GtkWidget*) _tmp417_);
	}
	_tmp418_ = tuba_widgets_status_get_status (self);
	_tmp419_ = _tmp418_;
	_tmp420_ = tuba_api_status_get_formal (_tmp419_);
	_tmp421_ = _tmp420_;
	_tmp422_ = tuba_api_status_get_compat_local_only (_tmp421_);
	_tmp423_ = _tmp422_;
	if (_tmp423_) {
		GtkImage* _tmp424_;
		GtkBox* _tmp429_;
		GtkImage* _tmp430_;
		gtk_widget_add_css_class ((GtkWidget*) self, "local");
		_tmp424_ = self->priv->local_only_indicator;
		if (_tmp424_ == NULL) {
			gchar* _tmp425_;
			gchar** _tmp426_;
			gchar* _tmp427_;
			GtkImage* _tmp428_ = NULL;
			_tmp425_ = g_strdup ("dim-label");
			_tmp426_ = g_new0 (gchar*, 1 + 1);
			_tmp426_[0] = _tmp425_;
			_tmp427_ = g_strdup (_ ("Local Only"));
			_tmp428_ = (GtkImage*) gtk_image_new_from_icon_name ("tuba-important-small-symbolic");
			gtk_widget_set_css_classes ((GtkWidget*) _tmp428_, _tmp426_);
			_tmp426_ = (_vala_array_free (_tmp426_, 1, (GDestroyNotify) g_free), NULL);
			gtk_widget_set_tooltip_text ((GtkWidget*) _tmp428_, _tmp427_);
			_g_free0 (_tmp427_);
			g_object_ref_sink (_tmp428_);
			_g_object_unref0 (self->priv->local_only_indicator);
			self->priv->local_only_indicator = _tmp428_;
		}
		_tmp429_ = self->indicators;
		_tmp430_ = self->priv->local_only_indicator;
		gtk_box_prepend (_tmp429_, (GtkWidget*) _tmp430_);
	} else {
		gtk_widget_remove_css_class ((GtkWidget*) self, "local");
	}
	_tmp431_ = self->avatar;
	_tmp432_ = tuba_widgets_status_get_status (self);
	_tmp433_ = _tmp432_;
	_tmp434_ = tuba_api_status_get_formal (_tmp433_);
	_tmp435_ = _tmp434_;
	_tmp436_ = tuba_api_status_get_account (_tmp435_);
	_tmp437_ = _tmp436_;
	tuba_widgets_avatar_set_account (_tmp431_, _tmp437_);
	_tmp438_ = self->name_button;
	_tmp439_ = self->avatar;
	_tmp440_ = tuba_widgets_status_get_status (self);
	_tmp441_ = _tmp440_;
	_tmp442_ = tuba_api_status_get_formal (_tmp441_);
	_tmp443_ = _tmp442_;
	_tmp444_ = tuba_api_status_get_account (_tmp443_);
	_tmp445_ = _tmp444_;
	_tmp446_ = tuba_api_account_get_handle (_tmp445_);
	_tmp447_ = _tmp446_;
	_tmp448_ = _tmp447_;
	_tmp449_ = g_strdup_printf (_ ("Open %s's Profile"), _tmp448_);
	_tmp450_ = _tmp449_;
	gtk_widget_set_tooltip_text ((GtkWidget*) _tmp439_, _tmp450_);
	gtk_widget_set_tooltip_text ((GtkWidget*) _tmp438_, _tmp450_);
	_g_free0 (_tmp450_);
	_g_free0 (_tmp448_);
	_tmp451_ = self->name_label;
	_tmp452_ = tuba_widgets_status_get_status (self);
	_tmp453_ = _tmp452_;
	_tmp454_ = tuba_api_status_get_formal (_tmp453_);
	_tmp455_ = _tmp454_;
	_tmp456_ = tuba_api_status_get_account (_tmp455_);
	_tmp457_ = _tmp456_;
	_tmp458_ = tuba_api_account_get_emojis_map (_tmp457_);
	_tmp459_ = _tmp458_;
	_tmp460_ = _tmp459_;
	tuba_widgets_rich_label_set_instance_emojis (_tmp451_, _tmp460_);
	_g_object_unref0 (_tmp460_);
	_tmp461_ = self->name_label;
	_tmp462_ = tuba_widgets_status_get_title_text (self);
	_tmp463_ = _tmp462_;
	_tmp464_ = _tmp463_;
	tuba_widgets_rich_label_set_label (_tmp461_, _tmp464_);
	_g_free0 (_tmp464_);
	_tmp465_ = self->poll;
	if (_tmp465_ != NULL) {
		GtkBox* _tmp466_;
		TubaWidgetsVoteBox* _tmp467_;
		_tmp466_ = self->content_box;
		_tmp467_ = self->poll;
		gtk_box_remove (_tmp466_, (GtkWidget*) _tmp467_);
	}
	_tmp468_ = tuba_widgets_status_get_status (self);
	_tmp469_ = _tmp468_;
	_tmp470_ = tuba_api_status_get_formal (_tmp469_);
	_tmp471_ = _tmp470_;
	_tmp472_ = tuba_api_status_get_poll (_tmp471_);
	_tmp473_ = _tmp472_;
	if (_tmp473_ != NULL) {
		TubaWidgetsVoteBox* _tmp474_;
		TubaWidgetsVoteBox* _tmp475_;
		TubaAPITranslation* _tmp476_;
		TubaAPIStatus* _tmp477_;
		TubaAPIStatus* _tmp478_;
		TubaAPIStatus* _tmp479_;
		TubaAPIStatus* _tmp480_;
		TubaWidgetsVoteBox* _tmp481_;
		GBinding* _tmp482_;
		GBinding* _tmp483_;
		GtkBox* _tmp484_;
		TubaWidgetsVoteBox* _tmp485_;
		_tmp474_ = tuba_widgets_vote_box_new ();
		g_object_ref_sink (_tmp474_);
		_g_object_unref0 (self->poll);
		self->poll = _tmp474_;
		_tmp475_ = self->poll;
		_tmp476_ = self->priv->_translation;
		tuba_widgets_vote_box_set_translation (_tmp475_, _tmp476_);
		_tmp477_ = tuba_widgets_status_get_status (self);
		_tmp478_ = _tmp477_;
		_tmp479_ = tuba_api_status_get_formal (_tmp478_);
		_tmp480_ = _tmp479_;
		_tmp481_ = self->poll;
		_tmp482_ = g_object_bind_property_with_closures ((GObject*) _tmp480_, "poll", (GObject*) _tmp481_, "poll", G_BINDING_SYNC_CREATE | G_BINDING_BIDIRECTIONAL, (GClosure*) ((NULL == NULL) ? NULL : g_cclosure_new ((GCallback) NULL, NULL, (GClosureNotify) NULL)), (GClosure*) ((NULL == NULL) ? NULL : g_cclosure_new ((GCallback) NULL, NULL, (GClosureNotify) NULL)));
		_tmp483_ = _g_object_ref0 (_tmp482_);
		_vala_array_add148 (&self->priv->bindings, &self->priv->bindings_length1, &self->priv->_bindings_size_, _tmp483_);
		_tmp484_ = self->content_box;
		_tmp485_ = self->poll;
		gtk_box_append (_tmp484_, (GtkWidget*) _tmp485_);
	}
	_tmp486_ = self->priv->attachments;
	if (_tmp486_ != NULL) {
		GtkBox* _tmp487_;
		TubaWidgetsAttachmentBox* _tmp488_;
		_tmp487_ = self->content_box;
		_tmp488_ = self->priv->attachments;
		gtk_box_remove (_tmp487_, (GtkWidget*) _tmp488_);
	}
	_tmp489_ = tuba_widgets_status_get_status (self);
	_tmp490_ = _tmp489_;
	_tmp491_ = tuba_api_status_get_formal (_tmp490_);
	_tmp492_ = _tmp491_;
	_tmp493_ = tuba_api_status_get_has_media (_tmp492_);
	_tmp494_ = _tmp493_;
	if (_tmp494_) {
		gboolean _tmp495_ = FALSE;
		gboolean _tmp496_ = FALSE;
		TubaAPITranslation* _tmp497_;
		TubaWidgetsAttachmentBox* _tmp522_;
		TubaWidgetsAttachmentBox* _tmp523_;
		TubaAPIStatus* _tmp524_;
		TubaAPIStatus* _tmp525_;
		TubaAPIStatus* _tmp526_;
		TubaAPIStatus* _tmp527_;
		gboolean _tmp528_;
		gboolean _tmp529_;
		TubaWidgetsAttachmentBox* _tmp530_;
		TubaAPIStatus* _tmp531_;
		TubaAPIStatus* _tmp532_;
		TubaAPIStatus* _tmp533_;
		TubaAPIStatus* _tmp534_;
		GeeArrayList* _tmp535_;
		GeeArrayList* _tmp536_;
		gboolean _tmp537_ = FALSE;
		TubaWidgetsAttachmentBox* _tmp538_;
		GtkBox* _tmp546_;
		TubaWidgetsAttachmentBox* _tmp547_;
		_tmp497_ = self->priv->_translation;
		if (_tmp497_ != NULL) {
			TubaAPITranslation* _tmp498_;
			GeeArrayList* _tmp499_;
			GeeArrayList* _tmp500_;
			_tmp498_ = self->priv->_translation;
			_tmp499_ = tuba_api_translation_get_media_attachments (_tmp498_);
			_tmp500_ = _tmp499_;
			_tmp496_ = _tmp500_ != NULL;
		} else {
			_tmp496_ = FALSE;
		}
		if (_tmp496_) {
			TubaAPITranslation* _tmp501_;
			GeeArrayList* _tmp502_;
			GeeArrayList* _tmp503_;
			gint _tmp504_;
			gint _tmp505_;
			_tmp501_ = self->priv->_translation;
			_tmp502_ = tuba_api_translation_get_media_attachments (_tmp501_);
			_tmp503_ = _tmp502_;
			_tmp504_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp503_);
			_tmp505_ = _tmp504_;
			_tmp495_ = _tmp505_ > 0;
		} else {
			_tmp495_ = FALSE;
		}
		if (_tmp495_) {
			Block103Data* _data103_;
			GeeHashMap* _tmp506_;
			TubaAPITranslation* _tmp507_;
			GeeArrayList* _tmp508_;
			GeeArrayList* _tmp509_;
			TubaAPIStatus* _tmp510_;
			TubaAPIStatus* _tmp511_;
			TubaAPIStatus* _tmp512_;
			TubaAPIStatus* _tmp513_;
			GeeArrayList* _tmp514_;
			GeeArrayList* _tmp515_;
			_data103_ = g_slice_new0 (Block103Data);
			_data103_->_ref_count_ = 1;
			_data103_->self = g_object_ref (self);
			_tmp506_ = gee_hash_map_new (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, (GDestroyNotify) g_free, G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, (GDestroyNotify) g_free, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
			_data103_->translated_media = _tmp506_;
			_tmp507_ = self->priv->_translation;
			_tmp508_ = tuba_api_translation_get_media_attachments (_tmp507_);
			_tmp509_ = _tmp508_;
			gee_abstract_collection_foreach ((GeeAbstractCollection*) _tmp509_, _____lambda98__gee_forall_func, _data103_);
			_tmp510_ = tuba_widgets_status_get_status (self);
			_tmp511_ = _tmp510_;
			_tmp512_ = tuba_api_status_get_formal (_tmp511_);
			_tmp513_ = _tmp512_;
			_tmp514_ = tuba_api_status_get_media_attachments (_tmp513_);
			_tmp515_ = _tmp514_;
			gee_abstract_collection_foreach ((GeeAbstractCollection*) _tmp515_, _____lambda99__gee_forall_func, _data103_);
			block103_data_unref (_data103_);
			_data103_ = NULL;
		} else {
			TubaAPIStatus* _tmp516_;
			TubaAPIStatus* _tmp517_;
			TubaAPIStatus* _tmp518_;
			TubaAPIStatus* _tmp519_;
			GeeArrayList* _tmp520_;
			GeeArrayList* _tmp521_;
			_tmp516_ = tuba_widgets_status_get_status (self);
			_tmp517_ = _tmp516_;
			_tmp518_ = tuba_api_status_get_formal (_tmp517_);
			_tmp519_ = _tmp518_;
			_tmp520_ = tuba_api_status_get_media_attachments (_tmp519_);
			_tmp521_ = _tmp520_;
			gee_abstract_collection_foreach ((GeeAbstractCollection*) _tmp521_, _____lambda100__gee_forall_func, self);
		}
		_tmp522_ = tuba_widgets_attachment_box_new ();
		g_object_ref_sink (_tmp522_);
		_g_object_unref0 (self->priv->attachments);
		self->priv->attachments = _tmp522_;
		_tmp523_ = self->priv->attachments;
		_tmp524_ = tuba_widgets_status_get_status (self);
		_tmp525_ = _tmp524_;
		_tmp526_ = tuba_api_status_get_formal (_tmp525_);
		_tmp527_ = _tmp526_;
		_tmp528_ = tuba_api_status_get_sensitive (_tmp527_);
		_tmp529_ = _tmp528_;
		tuba_widgets_attachment_box_set_has_spoiler (_tmp523_, _tmp529_);
		_tmp530_ = self->priv->attachments;
		_tmp531_ = tuba_widgets_status_get_status (self);
		_tmp532_ = _tmp531_;
		_tmp533_ = tuba_api_status_get_formal (_tmp532_);
		_tmp534_ = _tmp533_;
		_tmp535_ = tuba_api_status_get_media_attachments (_tmp534_);
		_tmp536_ = _tmp535_;
		tuba_widgets_attachment_box_set_list (_tmp530_, _tmp536_);
		_tmp538_ = self->priv->attachments;
		if (_tmp538_ != NULL) {
			TubaWidgetsAttachmentBox* _tmp539_;
			gboolean _tmp540_;
			gboolean _tmp541_;
			_tmp539_ = self->priv->attachments;
			_tmp540_ = tuba_widgets_attachment_box_get_has_thumbnailess_audio (_tmp539_);
			_tmp541_ = _tmp540_;
			_tmp537_ = _tmp541_;
		} else {
			_tmp537_ = FALSE;
		}
		if (_tmp537_) {
			TubaWidgetsAvatar* _tmp542_;
			TubaWidgetsAttachmentBox* _tmp543_;
			GBinding* _tmp544_;
			GBinding* _tmp545_;
			_tmp542_ = self->avatar;
			_tmp543_ = self->priv->attachments;
			_tmp544_ = g_object_bind_property_with_closures ((GObject*) _tmp542_, "custom-image", (GObject*) _tmp543_, "audio-fallback-paintable", G_BINDING_SYNC_CREATE, (GClosure*) ((NULL == NULL) ? NULL : g_cclosure_new ((GCallback) NULL, NULL, (GClosureNotify) NULL)), (GClosure*) ((NULL == NULL) ? NULL : g_cclosure_new ((GCallback) NULL, NULL, (GClosureNotify) NULL)));
			_tmp545_ = _g_object_ref0 (_tmp544_);
			_vala_array_add149 (&self->priv->bindings, &self->priv->bindings_length1, &self->priv->_bindings_size_, _tmp545_);
		}
		_tmp546_ = self->content_box;
		_tmp547_ = self->priv->attachments;
		gtk_box_append (_tmp546_, (GtkWidget*) _tmp547_);
	}
	_tmp548_ = self->priv->translation_label;
	if (_tmp548_ != NULL) {
		GtkBox* _tmp549_;
		GtkLabel* _tmp550_;
		_tmp549_ = self->content_box;
		_tmp550_ = self->priv->translation_label;
		gtk_box_remove (_tmp549_, (GtkWidget*) _tmp550_);
	}
	_tmp552_ = self->priv->_translation;
	if (_tmp552_ != NULL) {
		TubaAPITranslation* _tmp553_;
		const gchar* _tmp554_;
		const gchar* _tmp555_;
		_tmp553_ = self->priv->_translation;
		_tmp554_ = tuba_api_translation_get_provider (_tmp553_);
		_tmp555_ = _tmp554_;
		_tmp551_ = g_strcmp0 (_tmp555_, "") != 0;
	} else {
		_tmp551_ = FALSE;
	}
	if (_tmp551_) {
		gchar* translation_label_content = NULL;
		TubaAPITranslation* _tmp556_;
		const gchar* _tmp557_;
		const gchar* _tmp558_;
		const gchar* _tmp572_;
		gchar* _tmp573_;
		gchar** _tmp574_;
		GtkLabel* _tmp575_ = NULL;
		GtkBox* _tmp576_;
		GtkLabel* _tmp577_;
		_tmp556_ = self->priv->_translation;
		_tmp557_ = tuba_api_translation_get_detected_source_language (_tmp556_);
		_tmp558_ = _tmp557_;
		if (g_strcmp0 (_tmp558_, "") != 0) {
			TubaAPITranslation* _tmp559_;
			const gchar* _tmp560_;
			const gchar* _tmp561_;
			gchar* _tmp562_;
			gchar* _tmp563_;
			TubaAPITranslation* _tmp564_;
			const gchar* _tmp565_;
			const gchar* _tmp566_;
			gchar* _tmp567_;
			_tmp559_ = self->priv->_translation;
			_tmp560_ = tuba_api_translation_get_detected_source_language (_tmp559_);
			_tmp561_ = _tmp560_;
			_tmp562_ = g_utf8_strup (_tmp561_, (gssize) -1);
			_tmp563_ = _tmp562_;
			_tmp564_ = self->priv->_translation;
			_tmp565_ = tuba_api_translation_get_provider (_tmp564_);
			_tmp566_ = _tmp565_;
			_tmp567_ = g_strdup_printf (_ ("Translated from %s using %s"), _tmp563_, _tmp566_);
			_g_free0 (translation_label_content);
			translation_label_content = _tmp567_;
			_g_free0 (_tmp563_);
		} else {
			TubaAPITranslation* _tmp568_;
			const gchar* _tmp569_;
			const gchar* _tmp570_;
			gchar* _tmp571_;
			_tmp568_ = self->priv->_translation;
			_tmp569_ = tuba_api_translation_get_provider (_tmp568_);
			_tmp570_ = _tmp569_;
			_tmp571_ = g_strdup_printf (_ ("Translated using %s"), _tmp570_);
			_g_free0 (translation_label_content);
			translation_label_content = _tmp571_;
		}
		_tmp572_ = translation_label_content;
		_tmp573_ = g_strdup ("subtitle");
		_tmp574_ = g_new0 (gchar*, 1 + 1);
		_tmp574_[0] = _tmp573_;
		_tmp575_ = (GtkLabel*) gtk_label_new (_tmp572_);
		gtk_label_set_wrap (_tmp575_, TRUE);
		gtk_label_set_wrap_mode (_tmp575_, PANGO_WRAP_WORD_CHAR);
		gtk_label_set_xalign (_tmp575_, 1.0f);
		gtk_widget_set_css_classes ((GtkWidget*) _tmp575_, _tmp574_);
		_tmp574_ = (_vala_array_free (_tmp574_, 1, (GDestroyNotify) g_free), NULL);
		g_object_ref_sink (_tmp575_);
		_g_object_unref0 (self->priv->translation_label);
		self->priv->translation_label = _tmp575_;
		_tmp576_ = self->content_box;
		_tmp577_ = self->priv->translation_label;
		gtk_box_append (_tmp576_, (GtkWidget*) _tmp577_);
		_g_free0 (translation_label_content);
	}
	_tmp578_ = self->prev_card;
	if (_tmp578_ != NULL) {
		GtkBox* _tmp579_;
		TubaWidgetsPreviewCard* _tmp580_;
		_tmp579_ = self->content_box;
		_tmp580_ = self->prev_card;
		gtk_box_remove (_tmp579_, (GtkWidget*) _tmp580_);
	}
	_tmp581_ = self->priv->collection_card;
	if (_tmp581_ != NULL) {
		GtkBox* _tmp582_;
		TubaWidgetsCollectionButton* _tmp583_;
		_tmp582_ = self->content_box;
		_tmp583_ = self->priv->collection_card;
		gtk_box_remove (_tmp582_, (GtkWidget*) _tmp583_);
	}
	_tmp585_ = tuba_widgets_status_get_status (self);
	_tmp586_ = _tmp585_;
	_tmp587_ = tuba_api_status_get_formal (_tmp586_);
	_tmp588_ = _tmp587_;
	_tmp589_ = tuba_api_status_get_tagged_collections (_tmp588_);
	_tmp590_ = _tmp589_;
	if (_tmp590_ != NULL) {
		TubaAPIStatus* _tmp591_;
		TubaAPIStatus* _tmp592_;
		TubaAPIStatus* _tmp593_;
		TubaAPIStatus* _tmp594_;
		GeeArrayList* _tmp595_;
		GeeArrayList* _tmp596_;
		gint _tmp597_;
		gint _tmp598_;
		_tmp591_ = tuba_widgets_status_get_status (self);
		_tmp592_ = _tmp591_;
		_tmp593_ = tuba_api_status_get_formal (_tmp592_);
		_tmp594_ = _tmp593_;
		_tmp595_ = tuba_api_status_get_tagged_collections (_tmp594_);
		_tmp596_ = _tmp595_;
		_tmp597_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp596_);
		_tmp598_ = _tmp597_;
		_tmp584_ = _tmp598_ > 0;
	} else {
		_tmp584_ = FALSE;
	}
	if (_tmp584_) {
		TubaAPIStatus* _tmp599_;
		TubaAPIStatus* _tmp600_;
		TubaAPIStatus* _tmp601_;
		TubaAPIStatus* _tmp602_;
		GeeArrayList* _tmp603_;
		GeeArrayList* _tmp604_;
		gpointer _tmp605_;
		TubaAPICollection* _tmp606_;
		TubaWidgetsCollectionButton* _tmp607_;
		GtkBox* _tmp608_;
		TubaWidgetsCollectionButton* _tmp609_;
		_tmp599_ = tuba_widgets_status_get_status (self);
		_tmp600_ = _tmp599_;
		_tmp601_ = tuba_api_status_get_formal (_tmp600_);
		_tmp602_ = _tmp601_;
		_tmp603_ = tuba_api_status_get_tagged_collections (_tmp602_);
		_tmp604_ = _tmp603_;
		_tmp605_ = gee_abstract_list_get ((GeeAbstractList*) _tmp604_, 0);
		_tmp606_ = (TubaAPICollection*) _tmp605_;
		_tmp607_ = tuba_widgets_collection_button_new (_tmp606_);
		g_object_ref_sink (_tmp607_);
		_g_object_unref0 (self->priv->collection_card);
		self->priv->collection_card = _tmp607_;
		_g_object_unref0 (_tmp606_);
		_tmp608_ = self->content_box;
		_tmp609_ = self->priv->collection_card;
		gtk_box_append (_tmp608_, (GtkWidget*) _tmp609_);
	} else {
		gboolean _tmp610_ = FALSE;
		gboolean _tmp611_ = FALSE;
		gboolean _tmp612_ = FALSE;
		gboolean _tmp613_ = FALSE;
		TubaSettings* _tmp614_;
		gboolean _tmp615_;
		gboolean _tmp616_;
		_tmp614_ = tuba_settings;
		_tmp615_ = tuba_settings_get_show_preview_cards (_tmp614_);
		_tmp616_ = _tmp615_;
		if (_tmp616_) {
			TubaAPIStatus* _tmp617_;
			TubaAPIStatus* _tmp618_;
			TubaAPIStatus* _tmp619_;
			TubaAPIStatus* _tmp620_;
			gboolean _tmp621_;
			gboolean _tmp622_;
			_tmp617_ = tuba_widgets_status_get_status (self);
			_tmp618_ = _tmp617_;
			_tmp619_ = tuba_api_status_get_formal (_tmp618_);
			_tmp620_ = _tmp619_;
			_tmp621_ = tuba_api_status_get_has_media (_tmp620_);
			_tmp622_ = _tmp621_;
			_tmp613_ = !_tmp622_;
		} else {
			_tmp613_ = FALSE;
		}
		if (_tmp613_) {
			GtkButton* _tmp623_;
			_tmp623_ = self->priv->_quoted_status_btn;
			_tmp612_ = _tmp623_ == NULL;
		} else {
			_tmp612_ = FALSE;
		}
		if (_tmp612_) {
			TubaAPIStatus* _tmp624_;
			TubaAPIStatus* _tmp625_;
			TubaAPIStatus* _tmp626_;
			TubaAPIStatus* _tmp627_;
			TubaAPIPreviewCard* _tmp628_;
			TubaAPIPreviewCard* _tmp629_;
			_tmp624_ = tuba_widgets_status_get_status (self);
			_tmp625_ = _tmp624_;
			_tmp626_ = tuba_api_status_get_formal (_tmp625_);
			_tmp627_ = _tmp626_;
			_tmp628_ = tuba_api_status_get_card (_tmp627_);
			_tmp629_ = _tmp628_;
			_tmp611_ = _tmp629_ != NULL;
		} else {
			_tmp611_ = FALSE;
		}
		if (_tmp611_) {
			TubaAPIStatus* _tmp630_;
			TubaAPIStatus* _tmp631_;
			TubaAPIStatus* _tmp632_;
			TubaAPIStatus* _tmp633_;
			TubaAPIPreviewCard* _tmp634_;
			TubaAPIPreviewCard* _tmp635_;
			const gchar* _tmp636_;
			const gchar* _tmp637_;
			_tmp630_ = tuba_widgets_status_get_status (self);
			_tmp631_ = _tmp630_;
			_tmp632_ = tuba_api_status_get_formal (_tmp631_);
			_tmp633_ = _tmp632_;
			_tmp634_ = tuba_api_status_get_card (_tmp633_);
			_tmp635_ = _tmp634_;
			_tmp636_ = tuba_api_preview_card_get_kind (_tmp635_);
			_tmp637_ = _tmp636_;
			_tmp610_ = _vala_string_array_contains (TUBA_WIDGETS_STATUS_ALLOWED_CARD_TYPES, G_N_ELEMENTS (TUBA_WIDGETS_STATUS_ALLOWED_CARD_TYPES), _tmp637_);
		} else {
			_tmp610_ = FALSE;
		}
		if (_tmp610_) {
			TubaAPIStatus* _tmp638_;
			TubaAPIStatus* _tmp639_;
			TubaAPIStatus* _tmp640_;
			TubaAPIStatus* _tmp641_;
			TubaAPIPreviewCard* _tmp642_;
			TubaAPIPreviewCard* _tmp643_;
			GtkWidget* _tmp644_;
			TubaWidgetsPreviewCard* _tmp645_;
			GtkButton* _tmp646_;
			GtkBox* _tmp647_;
			TubaWidgetsPreviewCard* _tmp648_;
			_tmp638_ = tuba_widgets_status_get_status (self);
			_tmp639_ = _tmp638_;
			_tmp640_ = tuba_api_status_get_formal (_tmp639_);
			_tmp641_ = _tmp640_;
			_tmp642_ = tuba_api_status_get_card (_tmp641_);
			_tmp643_ = _tmp642_;
			_tmp644_ = tuba_widgetizable_to_widget ((TubaWidgetizable*) _tmp643_);
			_g_object_unref0 (self->prev_card);
			self->prev_card = G_TYPE_CHECK_INSTANCE_CAST (_tmp644_, TUBA_WIDGETS_TYPE_PREVIEW_CARD, TubaWidgetsPreviewCard);
			_tmp645_ = self->prev_card;
			_tmp646_ = _tmp645_->button;
			g_signal_connect_object (_tmp646_, "clicked", (GCallback) _tuba_widgets_status_open_card_url_gtk_button_clicked, self, 0);
			_tmp647_ = self->content_box;
			_tmp648_ = self->prev_card;
			gtk_box_append (_tmp647_, (GtkWidget*) _tmp648_);
		}
	}
	_tmp649_ = self->priv->hashtag_bar;
	if (_tmp649_ != NULL) {
		GtkBox* _tmp650_;
		TubaWidgetsHashtagBar* _tmp651_;
		_tmp650_ = self->content_box;
		_tmp651_ = self->priv->hashtag_bar;
		gtk_box_remove (_tmp650_, (GtkWidget*) _tmp651_);
	}
	_tmp653_ = self->content;
	_tmp655_ = tuba_widgets_markup_view_get_extracted_tags (_tmp653_, &_tmp654_);
	_tmp656_ = _tmp655_;
	_tmp656__length1 = _tmp654_;
	_tmp657_ = _tmp656_ != NULL;
	_tmp656_ = (_vala_TubaUtilsTagExtractorTag_array_free (_tmp656_, _tmp656__length1), NULL);
	if (_tmp657_) {
		TubaWidgetsMarkupView* _tmp658_;
		gint _tmp659_ = 0;
		TubaUtilsTagExtractorTag* _tmp660_;
		TubaUtilsTagExtractorTag* _tmp661_;
		gint _tmp661__length1;
		_tmp658_ = self->content;
		_tmp660_ = tuba_widgets_markup_view_get_extracted_tags (_tmp658_, &_tmp659_);
		_tmp661_ = _tmp660_;
		_tmp661__length1 = _tmp659_;
		_tmp652_ = _tmp659_ > 0;
		_tmp661_ = (_vala_TubaUtilsTagExtractorTag_array_free (_tmp661_, _tmp661__length1), NULL);
	} else {
		_tmp652_ = FALSE;
	}
	if (_tmp652_) {
		TubaWidgetsMarkupView* _tmp662_;
		gint _tmp663_ = 0;
		TubaUtilsTagExtractorTag* _tmp664_;
		TubaUtilsTagExtractorTag* _tmp665_;
		gint _tmp665__length1;
		TubaWidgetsHashtagBar* _tmp666_;
		GtkBox* _tmp667_;
		TubaWidgetsHashtagBar* _tmp668_;
		_tmp662_ = self->content;
		_tmp664_ = tuba_widgets_markup_view_get_extracted_tags (_tmp662_, &_tmp663_);
		_tmp665_ = _tmp664_;
		_tmp665__length1 = _tmp663_;
		_tmp666_ = tuba_widgets_hashtag_bar_new (_tmp665_, _tmp663_);
		g_object_ref_sink (_tmp666_);
		_g_object_unref0 (self->priv->hashtag_bar);
		self->priv->hashtag_bar = _tmp666_;
		_tmp665_ = (_vala_TubaUtilsTagExtractorTag_array_free (_tmp665_, _tmp665__length1), NULL);
		_tmp667_ = self->content_box;
		_tmp668_ = self->priv->hashtag_bar;
		gtk_box_append (_tmp667_, (GtkWidget*) _tmp668_);
	}
	tuba_widgets_status_show_view_stats_action (self);
	_tmp669_ = tuba_widgets_status_get_status (self);
	_tmp670_ = _tmp669_;
	_tmp671_ = tuba_api_status_get_formal (_tmp670_);
	_tmp672_ = _tmp671_;
	_tmp673_ = g_signal_connect_object ((GObject*) _tmp672_, "notify::reblogs-count", (GCallback) _tuba_widgets_status_show_view_stats_action_g_object_notify, self, 0);
	_vala_array_add150 (&self->priv->formal_handler_ids, &self->priv->formal_handler_ids_length1, &self->priv->_formal_handler_ids_size_, _tmp673_);
	_tmp674_ = tuba_widgets_status_get_status (self);
	_tmp675_ = _tmp674_;
	_tmp676_ = tuba_api_status_get_formal (_tmp675_);
	_tmp677_ = _tmp676_;
	_tmp678_ = g_signal_connect_object ((GObject*) _tmp677_, "notify::favourites-count", (GCallback) _tuba_widgets_status_show_view_stats_action_g_object_notify, self, 0);
	_vala_array_add151 (&self->priv->formal_handler_ids, &self->priv->formal_handler_ids_length1, &self->priv->_formal_handler_ids_size_, _tmp678_);
	_tmp679_ = tuba_widgets_status_get_status (self);
	_tmp680_ = _tmp679_;
	_tmp681_ = tuba_api_status_get_formal (_tmp680_);
	_tmp682_ = _tmp681_;
	_tmp683_ = g_signal_connect_object ((GObject*) _tmp682_, "notify::tuba-thread-role", (GCallback) _tuba_widgets_status_install_thread_line_g_object_notify, self, 0);
	_vala_array_add152 (&self->priv->formal_handler_ids, &self->priv->formal_handler_ids_length1, &self->priv->_formal_handler_ids_size_, _tmp683_);
	_tmp684_ = tuba_widgets_status_get_status (self);
	_tmp685_ = _tmp684_;
	_tmp686_ = tuba_api_status_get_formal (_tmp685_);
	_tmp687_ = _tmp686_;
	_tmp688_ = g_signal_connect_object ((GObject*) _tmp687_, "notify::tuba-spoiler-revealed", (GCallback) _tuba_widgets_status_update_spoiler_status_g_object_notify, self, 0);
	_vala_array_add153 (&self->priv->formal_handler_ids, &self->priv->formal_handler_ids_length1, &self->priv->_formal_handler_ids_size_, _tmp688_);
	tuba_widgets_status_aria_describe_status (self);
	tuba_widgets_status_update_mute_conversation_actions_enabled_status (self);
}

void
tuba_widgets_status_bind (TubaWidgetsStatus* self)
{
	TubaWidgetsStatusClass* _klass_;
	g_return_if_fail (self != NULL);
	_klass_ = TUBA_WIDGETS_STATUS_GET_CLASS (self);
	if (_klass_->bind) {
		_klass_->bind (self);
	}
}

void
tuba_widgets_status_soft_unbind (TubaWidgetsStatus* self)
{
	GtkStack* _tmp0_;
	gulong* _tmp1_;
	gint _tmp1__length1;
	gulong* _tmp6_;
	gulong* _tmp7_;
	gint _tmp7__length1;
	gulong* _tmp8_;
	GBinding** _tmp9_;
	gint _tmp9__length1;
	GBinding** _tmp13_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->filter_stack;
	gtk_stack_set_visible_child_name (_tmp0_, "status");
	_tmp1_ = self->priv->formal_handler_ids;
	_tmp1__length1 = self->priv->formal_handler_ids_length1;
	{
		gulong* handler_id_collection = NULL;
		gint handler_id_collection_length1 = 0;
		gint _handler_id_collection_size_ = 0;
		gint handler_id_it = 0;
		handler_id_collection = _tmp1_;
		handler_id_collection_length1 = _tmp1__length1;
		for (handler_id_it = 0; handler_id_it < handler_id_collection_length1; handler_id_it = handler_id_it + 1) {
			gulong handler_id = 0UL;
			handler_id = handler_id_collection[handler_id_it];
			{
				TubaAPIStatus* _tmp2_;
				TubaAPIStatus* _tmp3_;
				TubaAPIStatus* _tmp4_;
				TubaAPIStatus* _tmp5_;
				_tmp2_ = tuba_widgets_status_get_status (self);
				_tmp3_ = _tmp2_;
				_tmp4_ = tuba_api_status_get_formal (_tmp3_);
				_tmp5_ = _tmp4_;
				g_signal_handler_disconnect ((GObject*) _tmp5_, handler_id);
			}
		}
	}
	_tmp6_ = g_new0 (gulong, 0);
	self->priv->formal_handler_ids = (g_free (self->priv->formal_handler_ids), NULL);
	self->priv->formal_handler_ids = _tmp6_;
	self->priv->formal_handler_ids_length1 = 0;
	self->priv->_formal_handler_ids_size_ = self->priv->formal_handler_ids_length1;
	_tmp7_ = self->priv->this_handler_ids;
	_tmp7__length1 = self->priv->this_handler_ids_length1;
	{
		gulong* handler_id_collection = NULL;
		gint handler_id_collection_length1 = 0;
		gint _handler_id_collection_size_ = 0;
		gint handler_id_it = 0;
		handler_id_collection = _tmp7_;
		handler_id_collection_length1 = _tmp7__length1;
		for (handler_id_it = 0; handler_id_it < handler_id_collection_length1; handler_id_it = handler_id_it + 1) {
			gulong handler_id = 0UL;
			handler_id = handler_id_collection[handler_id_it];
			{
				g_signal_handler_disconnect ((GObject*) self, handler_id);
			}
		}
	}
	_tmp8_ = g_new0 (gulong, 0);
	self->priv->this_handler_ids = (g_free (self->priv->this_handler_ids), NULL);
	self->priv->this_handler_ids = _tmp8_;
	self->priv->this_handler_ids_length1 = 0;
	self->priv->_this_handler_ids_size_ = self->priv->this_handler_ids_length1;
	_tmp9_ = self->priv->bindings;
	_tmp9__length1 = self->priv->bindings_length1;
	{
		GBinding** binding_collection = NULL;
		gint binding_collection_length1 = 0;
		gint _binding_collection_size_ = 0;
		gint binding_it = 0;
		binding_collection = _tmp9_;
		binding_collection_length1 = _tmp9__length1;
		for (binding_it = 0; binding_it < binding_collection_length1; binding_it = binding_it + 1) {
			GBinding* _tmp10_;
			GBinding* binding = NULL;
			_tmp10_ = _g_object_ref0 (binding_collection[binding_it]);
			binding = _tmp10_;
			{
				GBinding* _tmp11_;
				GBinding* _tmp12_;
				_tmp11_ = binding;
				_tmp12_ = _g_object_ref0 (_tmp11_);
				g_binding_unbind (_tmp12_);
				_g_object_unref0 (binding);
			}
		}
	}
	_tmp13_ = g_new0 (GBinding*, 0 + 1);
	self->priv->bindings = (_vala_array_free (self->priv->bindings, self->priv->bindings_length1, (GDestroyNotify) g_object_unref), NULL);
	self->priv->bindings = _tmp13_;
	self->priv->bindings_length1 = 0;
	self->priv->_bindings_size_ = self->priv->bindings_length1;
}

static void
tuba_widgets_status_open_card_url (TubaWidgetsStatus* self)
{
	TubaAPIStatus* _tmp0_;
	TubaAPIStatus* _tmp1_;
	TubaAPIStatus* _tmp2_;
	TubaAPIStatus* _tmp3_;
	TubaAPIPreviewCard* _tmp4_;
	TubaAPIPreviewCard* _tmp5_;
	g_return_if_fail (self != NULL);
	_tmp0_ = tuba_widgets_status_get_status (self);
	_tmp1_ = _tmp0_;
	_tmp2_ = tuba_api_status_get_formal (_tmp1_);
	_tmp3_ = _tmp2_;
	_tmp4_ = tuba_api_status_get_card (_tmp3_);
	_tmp5_ = _tmp4_;
	tuba_api_preview_card_open_special_card (_tmp5_);
}

static void
tuba_widgets_status_on_reply (TubaWidgetsStatus* self,
                              TubaAPIStatus* x)
{
	TubaDialogsComposerDialogSuccessCallback _tmp0_;
	gpointer _tmp0__target;
	g_return_if_fail (self != NULL);
	if (x == NULL) {
		return;
	}
	_tmp0_ = self->reply_cb;
	_tmp0__target = self->reply_cb_target;
	if (_tmp0_ != NULL) {
		TubaDialogsComposerDialogSuccessCallback _tmp1_;
		gpointer _tmp1__target;
		_tmp1_ = self->reply_cb;
		_tmp1__target = self->reply_cb_target;
		_tmp1_ (x, _tmp1__target);
	}
}

static void
_tuba_widgets_status_on_reply_tuba_dialogs_composer_dialog_success_callback (TubaAPIStatus* cb_status,
                                                                             gpointer self)
{
	tuba_widgets_status_on_reply ((TubaWidgetsStatus*) self, cb_status);
}

static void
tuba_widgets_status_on_reply_button_clicked (TubaWidgetsStatus* self)
{
	TubaAPIStatus* _tmp0_;
	TubaAPIStatus* _tmp1_;
	TubaAPIStatus* _tmp2_;
	TubaAPIStatus* _tmp3_;
	TubaDialogsComposerDialog* _tmp4_;
	TubaDialogsComposerDialog* _tmp5_;
	g_return_if_fail (self != NULL);
	_tmp0_ = tuba_widgets_status_get_status (self);
	_tmp1_ = _tmp0_;
	_tmp2_ = tuba_api_status_get_formal (_tmp1_);
	_tmp3_ = _tmp2_;
	_tmp4_ = tuba_dialogs_composer_dialog_new_reply (_tmp3_, _tuba_widgets_status_on_reply_tuba_dialogs_composer_dialog_success_callback, g_object_ref (self), g_object_unref);
	g_object_ref_sink (_tmp4_);
	_tmp5_ = _tmp4_;
	_g_object_unref0 (_tmp5_);
}

void
tuba_widgets_status_on_fade_reveal (TubaWidgetsStatus* self)
{
	TubaWidgetsFadeBin* _tmp0_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->fade_bin;
	tuba_widgets_fade_bin_reveal_animated (_tmp0_);
}

static void
_tuba_widgets_status_on_fade_reveal_gtk_button_clicked (GtkButton* _sender,
                                                        gpointer self)
{
	tuba_widgets_status_on_fade_reveal ((TubaWidgetsStatus*) self);
}

void
tuba_widgets_status_toggle_spoiler (TubaWidgetsStatus* self)
{
	TubaAPIStatus* _tmp0_;
	TubaAPIStatus* _tmp1_;
	TubaAPIStatus* _tmp2_;
	TubaAPIStatus* _tmp3_;
	TubaAPIStatus* _tmp4_;
	TubaAPIStatus* _tmp5_;
	TubaAPIStatus* _tmp6_;
	TubaAPIStatus* _tmp7_;
	gboolean _tmp8_;
	gboolean _tmp9_;
	TubaAPIStatus* _tmp10_;
	TubaAPIStatus* _tmp11_;
	TubaAPIStatus* _tmp12_;
	TubaAPIStatus* _tmp13_;
	gboolean _tmp14_;
	gboolean _tmp15_;
	g_return_if_fail (self != NULL);
	_tmp0_ = tuba_widgets_status_get_status (self);
	_tmp1_ = _tmp0_;
	_tmp2_ = tuba_api_status_get_formal (_tmp1_);
	_tmp3_ = _tmp2_;
	_tmp4_ = tuba_widgets_status_get_status (self);
	_tmp5_ = _tmp4_;
	_tmp6_ = tuba_api_status_get_formal (_tmp5_);
	_tmp7_ = _tmp6_;
	_tmp8_ = tuba_api_status_get_tuba_spoiler_revealed (_tmp7_);
	_tmp9_ = _tmp8_;
	tuba_api_status_set_tuba_spoiler_revealed (_tmp3_, !_tmp9_);
	_tmp10_ = tuba_widgets_status_get_status (self);
	_tmp11_ = _tmp10_;
	_tmp12_ = tuba_api_status_get_formal (_tmp11_);
	_tmp13_ = _tmp12_;
	_tmp14_ = tuba_api_status_get_tuba_spoiler_revealed (_tmp13_);
	_tmp15_ = _tmp14_;
	if (_tmp15_) {
		TubaWidgetsMarkupView* _tmp16_;
		_tmp16_ = self->content;
		gtk_widget_grab_focus ((GtkWidget*) _tmp16_);
	} else {
		GtkButton* _tmp17_;
		_tmp17_ = self->spoiler_button;
		gtk_widget_grab_focus ((GtkWidget*) _tmp17_);
	}
}

static void
_tuba_widgets_status_toggle_spoiler_gtk_button_clicked (GtkButton* _sender,
                                                        gpointer self)
{
	tuba_widgets_status_toggle_spoiler ((TubaWidgetsStatus*) self);
}

void
tuba_widgets_status_toggle_filter (TubaWidgetsStatus* self)
{
	gboolean _tmp0_ = FALSE;
	TubaAPIStatus* _tmp1_;
	TubaAPIStatus* _tmp2_;
	TubaAPIStatus* _tmp3_;
	TubaAPIStatus* _tmp4_;
	GeeArrayList* _tmp5_;
	GeeArrayList* _tmp6_;
	g_return_if_fail (self != NULL);
	_tmp1_ = tuba_widgets_status_get_status (self);
	_tmp2_ = _tmp1_;
	_tmp3_ = tuba_api_status_get_formal (_tmp2_);
	_tmp4_ = _tmp3_;
	_tmp5_ = tuba_api_status_get_filtered (_tmp4_);
	_tmp6_ = _tmp5_;
	if (_tmp6_ != NULL) {
		TubaAPIStatus* _tmp7_;
		TubaAPIStatus* _tmp8_;
		TubaAPIStatus* _tmp9_;
		TubaAPIStatus* _tmp10_;
		GeeArrayList* _tmp11_;
		GeeArrayList* _tmp12_;
		gint _tmp13_;
		gint _tmp14_;
		_tmp7_ = tuba_widgets_status_get_status (self);
		_tmp8_ = _tmp7_;
		_tmp9_ = tuba_api_status_get_formal (_tmp8_);
		_tmp10_ = _tmp9_;
		_tmp11_ = tuba_api_status_get_filtered (_tmp10_);
		_tmp12_ = _tmp11_;
		_tmp13_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp12_);
		_tmp14_ = _tmp13_;
		_tmp0_ = _tmp14_ > 0;
	} else {
		_tmp0_ = FALSE;
	}
	if (_tmp0_) {
		const gchar* _tmp15_ = NULL;
		GtkStack* _tmp16_;
		const gchar* _tmp17_;
		const gchar* _tmp18_;
		GtkStack* _tmp19_;
		_tmp16_ = self->filter_stack;
		_tmp17_ = gtk_stack_get_visible_child_name (_tmp16_);
		_tmp18_ = _tmp17_;
		if (g_strcmp0 (_tmp18_, "filter") == 0) {
			_tmp15_ = "status";
		} else {
			_tmp15_ = "filter";
		}
		_tmp19_ = self->filter_stack;
		gtk_stack_set_visible_child_name (_tmp19_, _tmp15_);
		tuba_widgets_status_aria_describe_status (self);
	}
}

static void
_tuba_widgets_status_toggle_filter_gtk_button_clicked (GtkButton* _sender,
                                                       gpointer self)
{
	tuba_widgets_status_toggle_filter ((TubaWidgetsStatus*) self);
}

void
tuba_widgets_status_on_avatar_clicked (TubaWidgetsStatus* self)
{
	TubaAPIStatus* _tmp0_;
	TubaAPIStatus* _tmp1_;
	TubaAPIStatus* _tmp2_;
	TubaAPIStatus* _tmp3_;
	TubaAPIAccount* _tmp4_;
	TubaAPIAccount* _tmp5_;
	g_return_if_fail (self != NULL);
	_tmp0_ = tuba_widgets_status_get_status (self);
	_tmp1_ = _tmp0_;
	_tmp2_ = tuba_api_status_get_formal (_tmp1_);
	_tmp3_ = _tmp2_;
	_tmp4_ = tuba_api_status_get_account (_tmp3_);
	_tmp5_ = _tmp4_;
	tuba_widgetizable_open ((TubaWidgetizable*) _tmp5_);
}

static void
_tuba_widgets_status_on_avatar_clicked_tuba_widgets_avatar_mini_clicked (TubaWidgetsAvatar* _sender,
                                                                         TubaAPIAccount* acc,
                                                                         gpointer self)
{
	tuba_widgets_status_on_avatar_clicked ((TubaWidgetsStatus*) self);
}

void
tuba_widgets_status_to_display_only (TubaWidgetsStatus* self)
{
	TubaWidgetsVoteBox* _tmp0_;
	TubaWidgetsHashtagBar* _tmp5_;
	TubaWidgetsAttachmentBox* _tmp7_;
	AdwBin* _tmp9_;
	GtkMenuButton* _tmp11_;
	TubaWidgetsAvatar* _tmp12_;
	TubaWidgetsAvatar* _tmp13_;
	TubaWidgetsAvatar* _tmp14_;
	TubaWidgetsAvatar* _tmp15_;
	GtkButton* _tmp16_;
	GtkButton* _tmp17_;
	GtkButton* _tmp18_;
	TubaWidgetsMarkupView* _tmp19_;
	TubaWidgetsMarkupView* _tmp20_;
	GtkButton* _tmp21_;
	TubaWidgetsPreviewCard* _tmp25_;
	TubaWidgetsCollectionButton* _tmp27_;
	TubaWidgetsAvatar* _tmp29_;
	GtkLabel* _tmp30_;
	GtkButton* _tmp31_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->poll;
	if (_tmp0_ != NULL) {
		TubaWidgetsVoteBox* _tmp1_;
		TubaWidgetsVoteBox* _tmp2_;
		TubaWidgetsVoteBox* _tmp3_;
		TubaWidgetsVoteBox* _tmp4_;
		_tmp1_ = self->poll;
		tuba_widgets_vote_box_set_usable (_tmp1_, FALSE);
		_tmp2_ = self->poll;
		gtk_widget_set_can_target ((GtkWidget*) _tmp2_, FALSE);
		_tmp3_ = self->poll;
		gtk_widget_set_focusable ((GtkWidget*) _tmp3_, FALSE);
		_tmp4_ = self->poll;
		gtk_widget_set_can_focus ((GtkWidget*) _tmp4_, FALSE);
	}
	_tmp5_ = self->priv->hashtag_bar;
	if (_tmp5_ != NULL) {
		TubaWidgetsHashtagBar* _tmp6_;
		_tmp6_ = self->priv->hashtag_bar;
		tuba_widgets_hashtag_bar_to_display_only (_tmp6_);
	}
	_tmp7_ = self->priv->attachments;
	if (_tmp7_ != NULL) {
		TubaWidgetsAttachmentBox* _tmp8_;
		_tmp8_ = self->priv->attachments;
		tuba_widgets_attachment_box_set_usable (_tmp8_, FALSE);
	}
	_tmp9_ = self->priv->_emoji_reactions;
	if (_tmp9_ != NULL) {
		AdwBin* _tmp10_;
		_tmp10_ = self->priv->_emoji_reactions;
		gtk_widget_set_visible ((GtkWidget*) _tmp10_, FALSE);
	}
	tuba_widgets_status_set_can_be_opened (self, FALSE);
	tuba_widgets_status_toggle_actions_visibility (self, FALSE);
	_tmp11_ = self->menu_button;
	gtk_widget_set_visible ((GtkWidget*) _tmp11_, FALSE);
	gtk_list_box_row_set_activatable ((GtkListBoxRow*) self, FALSE);
	_tmp12_ = self->avatar;
	tuba_widgets_avatar_set_allow_mini_profile (_tmp12_, FALSE);
	_tmp13_ = self->avatar;
	gtk_widget_set_can_target ((GtkWidget*) _tmp13_, FALSE);
	_tmp14_ = self->avatar;
	gtk_widget_set_focusable ((GtkWidget*) _tmp14_, FALSE);
	_tmp15_ = self->avatar;
	gtk_widget_set_can_focus ((GtkWidget*) _tmp15_, FALSE);
	_tmp16_ = self->name_button;
	gtk_widget_set_can_target ((GtkWidget*) _tmp16_, FALSE);
	_tmp17_ = self->name_button;
	gtk_widget_set_can_focus ((GtkWidget*) _tmp17_, FALSE);
	_tmp18_ = self->name_button;
	gtk_widget_set_focusable ((GtkWidget*) _tmp18_, FALSE);
	_tmp19_ = self->content;
	tuba_widgets_markup_view_set_selectable (_tmp19_, TRUE);
	_tmp20_ = self->content;
	tuba_widgets_markup_view_set_can_open (_tmp20_, FALSE);
	_tmp21_ = self->priv->_quoted_status_btn;
	if (_tmp21_ != NULL) {
		GtkButton* _tmp22_;
		GtkButton* _tmp23_;
		GtkButton* _tmp24_;
		_tmp22_ = self->priv->_quoted_status_btn;
		gtk_widget_set_can_target ((GtkWidget*) _tmp22_, FALSE);
		_tmp23_ = self->priv->_quoted_status_btn;
		gtk_widget_set_can_focus ((GtkWidget*) _tmp23_, FALSE);
		_tmp24_ = self->priv->_quoted_status_btn;
		gtk_widget_set_focusable ((GtkWidget*) _tmp24_, FALSE);
	}
	_tmp25_ = self->prev_card;
	if (_tmp25_ != NULL) {
		TubaWidgetsPreviewCard* _tmp26_;
		_tmp26_ = self->prev_card;
		gtk_widget_set_visible ((GtkWidget*) _tmp26_, FALSE);
	}
	_tmp27_ = self->priv->collection_card;
	if (_tmp27_ != NULL) {
		TubaWidgetsCollectionButton* _tmp28_;
		_tmp28_ = self->priv->collection_card;
		gtk_widget_set_visible ((GtkWidget*) _tmp28_, FALSE);
	}
	_tmp29_ = self->avatar;
	g_object_set ((GtkAccessible*) _tmp29_, "accessible-role", GTK_ACCESSIBLE_ROLE_PRESENTATION, NULL);
	_tmp30_ = self->date_label;
	g_object_set ((GtkAccessible*) _tmp30_, "accessible-role", GTK_ACCESSIBLE_ROLE_PRESENTATION, NULL);
	_tmp31_ = self->name_button;
	g_object_set ((GtkAccessible*) _tmp31_, "accessible-role", GTK_ACCESSIBLE_ROLE_PRESENTATION, NULL);
	gtk_accessible_reset_relation ((GtkAccessible*) self, GTK_ACCESSIBLE_RELATION_DESCRIBED_BY);
	gtk_accessible_reset_property ((GtkAccessible*) self, GTK_ACCESSIBLE_PROPERTY_LABEL);
	gtk_accessible_reset_property ((GtkAccessible*) self, GTK_ACCESSIBLE_PROPERTY_DESCRIPTION);
}

void
tuba_widgets_status_expand_root (TubaWidgetsStatus* self)
{
	TubaWidgetsMarkupView* _tmp0_;
	TubaWidgetsMarkupView* _tmp1_;
	GtkStack* _tmp2_;
	GtkBox* _tmp3_;
	GtkBox* _tmp4_;
	GtkBox* _tmp5_;
	GtkBox* _tmp6_;
	GtkBox* _tmp7_;
	AdwWrapBox* _tmp8_;
	GtkBox* _tmp9_;
	GtkBox* _tmp10_;
	GtkLabel* _tmp11_;
	TubaAPIStatus* _tmp12_;
	TubaAPIStatus* _tmp13_;
	TubaAPIStatus* _tmp14_;
	TubaAPIStatus* _tmp15_;
	gboolean _tmp16_;
	gboolean _tmp17_;
	GtkBox* _tmp20_;
	GtkImage* _tmp21_;
	GtkImage* _tmp22_;
	GtkLabel* _tmp24_;
	gchar* _tmp25_;
	gchar* _tmp26_;
	gchar* _tmp27_;
	GtkLabel* _tmp28_;
	GtkLabel* _tmp29_;
	AdwWrapBox* bottom_info = NULL;
	AdwWrapBox* _tmp30_ = NULL;
	GtkBox* _tmp31_;
	AdwWrapBox* _tmp32_;
	GtkStack* _tmp33_;
	AdwWrapBox* _tmp34_;
	GtkLabel* _tmp35_;
	TubaAPIStatus* _tmp36_;
	TubaAPIStatus* _tmp37_;
	TubaAPIStatus* _tmp38_;
	TubaAPIStatus* _tmp39_;
	gboolean _tmp40_;
	gboolean _tmp41_;
	AdwWrapBox* _tmp44_;
	GtkImage* _tmp45_;
	GtkImage* _tmp46_;
	GtkImage* _tmp47_;
	TubaAPIStatus* _tmp48_;
	TubaAPIStatus* _tmp49_;
	TubaAPIStatus* _tmp50_;
	TubaAPIStatus* _tmp51_;
	TubaAPIStatusApplication* _tmp52_;
	TubaAPIStatusApplication* _tmp53_;
	g_return_if_fail (self != NULL);
	if (self->priv->expanded) {
		return;
	}
	self->priv->expanded = TRUE;
	_tmp0_ = self->content;
	tuba_widgets_markup_view_set_selectable (_tmp0_, TRUE);
	_tmp1_ = self->content;
	gtk_widget_add_css_class ((GtkWidget*) _tmp1_, "ttl-large-body");
	_tmp2_ = self->filter_stack;
	gtk_stack_set_visible_child_name (_tmp2_, "status");
	_tmp3_ = self->status_box;
	_tmp4_ = self->avatar_side;
	gtk_box_remove (_tmp3_, (GtkWidget*) _tmp4_);
	_tmp5_ = self->title_box;
	_tmp6_ = self->avatar_side;
	gtk_box_prepend (_tmp5_, (GtkWidget*) _tmp6_);
	_tmp7_ = self->title_box;
	gtk_box_set_spacing (_tmp7_, 14);
	_tmp8_ = self->name_wrapbox;
	adw_wrap_box_set_child_spacing (_tmp8_, 600);
	_tmp9_ = self->content_side;
	gtk_box_set_spacing (_tmp9_, 10);
	_tmp10_ = self->indicators;
	_tmp11_ = self->date_label;
	gtk_box_remove (_tmp10_, (GtkWidget*) _tmp11_);
	_tmp12_ = tuba_widgets_status_get_status (self);
	_tmp13_ = _tmp12_;
	_tmp14_ = tuba_api_status_get_formal (_tmp13_);
	_tmp15_ = _tmp14_;
	_tmp16_ = tuba_api_status_get_is_edited (_tmp15_);
	_tmp17_ = _tmp16_;
	if (_tmp17_) {
		GtkBox* _tmp18_;
		GtkImage* _tmp19_;
		_tmp18_ = self->indicators;
		_tmp19_ = self->edited_indicator;
		gtk_box_remove (_tmp18_, (GtkWidget*) _tmp19_);
	}
	_tmp20_ = self->indicators;
	_tmp21_ = self->visibility_indicator;
	gtk_box_remove (_tmp20_, (GtkWidget*) _tmp21_);
	_tmp22_ = self->priv->local_only_indicator;
	if (_tmp22_ != NULL) {
		GtkImage* _tmp23_;
		_tmp23_ = self->priv->local_only_indicator;
		gtk_widget_set_visible ((GtkWidget*) _tmp23_, FALSE);
	}
	_tmp24_ = self->date_label;
	_tmp25_ = tuba_widgets_status_get_date (self);
	_tmp26_ = _tmp25_;
	_tmp27_ = _tmp26_;
	gtk_label_set_label (_tmp24_, _tmp27_);
	_g_free0 (_tmp27_);
	_tmp28_ = self->date_label;
	gtk_label_set_wrap (_tmp28_, TRUE);
	_tmp29_ = self->date_label;
	gtk_widget_set_tooltip_text ((GtkWidget*) _tmp29_, NULL);
	_tmp30_ = (AdwWrapBox*) adw_wrap_box_new ();
	gtk_widget_set_margin_top ((GtkWidget*) _tmp30_, 6);
	g_object_ref_sink (_tmp30_);
	bottom_info = _tmp30_;
	_tmp31_ = self->content_column;
	_tmp32_ = bottom_info;
	_tmp33_ = self->spoiler_stack;
	gtk_box_insert_child_after (_tmp31_, (GtkWidget*) _tmp32_, (GtkWidget*) _tmp33_);
	_tmp34_ = bottom_info;
	_tmp35_ = self->date_label;
	adw_wrap_box_append (_tmp34_, (GtkWidget*) _tmp35_);
	_tmp36_ = tuba_widgets_status_get_status (self);
	_tmp37_ = _tmp36_;
	_tmp38_ = tuba_api_status_get_formal (_tmp37_);
	_tmp39_ = _tmp38_;
	_tmp40_ = tuba_api_status_get_is_edited (_tmp39_);
	_tmp41_ = _tmp40_;
	if (_tmp41_) {
		AdwWrapBox* _tmp42_;
		GtkImage* _tmp43_;
		_tmp42_ = bottom_info;
		_tmp43_ = self->edited_indicator;
		tuba_widgets_status_append_to_bottom_bar (self, _tmp42_, (GtkWidget*) _tmp43_, TUBA_WIDGETS_STATUS_EXPANDED_SEPARATOR);
	}
	_tmp44_ = bottom_info;
	_tmp45_ = self->visibility_indicator;
	tuba_widgets_status_append_to_bottom_bar (self, _tmp44_, (GtkWidget*) _tmp45_, TUBA_WIDGETS_STATUS_EXPANDED_SEPARATOR);
	_tmp46_ = self->edited_indicator;
	gtk_widget_set_valign ((GtkWidget*) _tmp46_, GTK_ALIGN_CENTER);
	_tmp47_ = self->visibility_indicator;
	gtk_widget_set_valign ((GtkWidget*) _tmp47_, GTK_ALIGN_CENTER);
	_tmp48_ = tuba_widgets_status_get_status (self);
	_tmp49_ = _tmp48_;
	_tmp50_ = tuba_api_status_get_formal (_tmp49_);
	_tmp51_ = _tmp50_;
	_tmp52_ = tuba_api_status_get_application (_tmp51_);
	_tmp53_ = _tmp52_;
	if (_tmp53_ != NULL) {
		gboolean has_link = FALSE;
		TubaAPIStatus* _tmp54_;
		TubaAPIStatus* _tmp55_;
		TubaAPIStatus* _tmp56_;
		TubaAPIStatus* _tmp57_;
		TubaAPIStatusApplication* _tmp58_;
		TubaAPIStatusApplication* _tmp59_;
		const gchar* _tmp60_;
		const gchar* _tmp61_;
		gchar* _tmp62_ = NULL;
		gchar* application_link = NULL;
		gchar* _tmp91_;
		GtkLabel* application_label = NULL;
		const gchar* _tmp92_;
		gchar* _tmp93_;
		gchar** _tmp94_;
		GtkLabel* _tmp95_ = NULL;
		AdwWrapBox* _tmp97_;
		GtkLabel* _tmp98_;
		_tmp54_ = tuba_widgets_status_get_status (self);
		_tmp55_ = _tmp54_;
		_tmp56_ = tuba_api_status_get_formal (_tmp55_);
		_tmp57_ = _tmp56_;
		_tmp58_ = tuba_api_status_get_application (_tmp57_);
		_tmp59_ = _tmp58_;
		_tmp60_ = tuba_api_status_application_get_website (_tmp59_);
		_tmp61_ = _tmp60_;
		has_link = _tmp61_ != NULL;
		if (has_link) {
			TubaAPIStatus* _tmp63_;
			TubaAPIStatus* _tmp64_;
			TubaAPIStatus* _tmp65_;
			TubaAPIStatus* _tmp66_;
			TubaAPIStatusApplication* _tmp67_;
			TubaAPIStatusApplication* _tmp68_;
			const gchar* _tmp69_;
			const gchar* _tmp70_;
			const gchar* _tmp71_;
			TubaAPIStatus* _tmp72_;
			TubaAPIStatus* _tmp73_;
			TubaAPIStatus* _tmp74_;
			TubaAPIStatus* _tmp75_;
			TubaAPIStatusApplication* _tmp76_;
			TubaAPIStatusApplication* _tmp77_;
			const gchar* _tmp78_;
			const gchar* _tmp79_;
			const gchar* _tmp80_;
			gchar* _tmp81_;
			_tmp63_ = tuba_widgets_status_get_status (self);
			_tmp64_ = _tmp63_;
			_tmp65_ = tuba_api_status_get_formal (_tmp64_);
			_tmp66_ = _tmp65_;
			_tmp67_ = tuba_api_status_get_application (_tmp66_);
			_tmp68_ = _tmp67_;
			_tmp69_ = tuba_api_status_application_get_website (_tmp68_);
			_tmp70_ = _tmp69_;
			_tmp71_ = string_to_string (_tmp70_);
			_tmp72_ = tuba_widgets_status_get_status (self);
			_tmp73_ = _tmp72_;
			_tmp74_ = tuba_api_status_get_formal (_tmp73_);
			_tmp75_ = _tmp74_;
			_tmp76_ = tuba_api_status_get_application (_tmp75_);
			_tmp77_ = _tmp76_;
			_tmp78_ = tuba_api_status_application_get_name (_tmp77_);
			_tmp79_ = _tmp78_;
			_tmp80_ = string_to_string (_tmp79_);
			_tmp81_ = g_strconcat ("<a href=\"", _tmp71_, "\">", _tmp80_, "</a>", NULL);
			_g_free0 (_tmp62_);
			_tmp62_ = _tmp81_;
		} else {
			TubaAPIStatus* _tmp82_;
			TubaAPIStatus* _tmp83_;
			TubaAPIStatus* _tmp84_;
			TubaAPIStatus* _tmp85_;
			TubaAPIStatusApplication* _tmp86_;
			TubaAPIStatusApplication* _tmp87_;
			const gchar* _tmp88_;
			const gchar* _tmp89_;
			gchar* _tmp90_;
			_tmp82_ = tuba_widgets_status_get_status (self);
			_tmp83_ = _tmp82_;
			_tmp84_ = tuba_api_status_get_formal (_tmp83_);
			_tmp85_ = _tmp84_;
			_tmp86_ = tuba_api_status_get_application (_tmp85_);
			_tmp87_ = _tmp86_;
			_tmp88_ = tuba_api_status_application_get_name (_tmp87_);
			_tmp89_ = _tmp88_;
			_tmp90_ = g_strdup (_tmp89_);
			_g_free0 (_tmp62_);
			_tmp62_ = _tmp90_;
		}
		_tmp91_ = _tmp62_;
		_tmp62_ = NULL;
		application_link = _tmp91_;
		_tmp92_ = application_link;
		_tmp93_ = g_strdup ("body");
		_tmp94_ = g_new0 (gchar*, 1 + 1);
		_tmp94_[0] = _tmp93_;
		_tmp95_ = (GtkLabel*) gtk_label_new (_tmp92_);
		gtk_label_set_wrap (_tmp95_, TRUE);
		gtk_label_set_use_markup (_tmp95_, has_link);
		gtk_widget_set_halign ((GtkWidget*) _tmp95_, GTK_ALIGN_START);
		gtk_widget_set_css_classes ((GtkWidget*) _tmp95_, _tmp94_);
		_tmp94_ = (_vala_array_free (_tmp94_, 1, (GDestroyNotify) g_free), NULL);
		g_object_ref_sink (_tmp95_);
		application_label = _tmp95_;
		if (!has_link) {
			GtkLabel* _tmp96_;
			_tmp96_ = application_label;
			gtk_widget_add_css_class ((GtkWidget*) _tmp96_, "dim-label");
		}
		_tmp97_ = bottom_info;
		_tmp98_ = application_label;
		tuba_widgets_status_append_to_bottom_bar (self, _tmp97_, (GtkWidget*) _tmp98_, TUBA_WIDGETS_STATUS_EXPANDED_SEPARATOR);
		_g_object_unref0 (application_label);
		_g_free0 (application_link);
		_g_free0 (_tmp62_);
	}
	_g_object_unref0 (bottom_info);
}

static void
tuba_widgets_status_append_to_bottom_bar (TubaWidgetsStatus* self,
                                          AdwWrapBox* wrap_box,
                                          GtkWidget* child,
                                          const gchar* separator)
{
	gchar* _tmp0_;
	gchar** _tmp1_;
	GtkLabel* _tmp2_ = NULL;
	GtkLabel* _tmp3_;
	g_return_if_fail (self != NULL);
	g_return_if_fail (wrap_box != NULL);
	g_return_if_fail (child != NULL);
	g_return_if_fail (separator != NULL);
	_tmp0_ = g_strdup ("dim-label");
	_tmp1_ = g_new0 (gchar*, 1 + 1);
	_tmp1_[0] = _tmp0_;
	_tmp2_ = (GtkLabel*) gtk_label_new (separator);
	gtk_widget_set_css_classes ((GtkWidget*) _tmp2_, _tmp1_);
	_tmp1_ = (_vala_array_free (_tmp1_, 1, (GDestroyNotify) g_free), NULL);
	gtk_widget_set_halign ((GtkWidget*) _tmp2_, GTK_ALIGN_START);
	g_object_ref_sink (_tmp2_);
	_tmp3_ = _tmp2_;
	adw_wrap_box_append (wrap_box, (GtkWidget*) _tmp3_);
	_g_object_unref0 (_tmp3_);
	adw_wrap_box_append (wrap_box, child);
}

void
tuba_widgets_status_patch_stats (TubaWidgetsStatus* self,
                                 TubaAPIStatus* x)
{
	TubaAPIStatus* _tmp0_;
	TubaAPIStatus* _tmp1_;
	TubaAPIStatus* _tmp2_;
	TubaAPIStatus* _tmp3_;
	gint64 _tmp4_;
	gint64 _tmp5_;
	TubaAPIStatus* _tmp6_;
	TubaAPIStatus* _tmp7_;
	gint64 _tmp8_;
	gint64 _tmp9_;
	TubaAPIStatus* _tmp18_;
	TubaAPIStatus* _tmp19_;
	TubaAPIStatus* _tmp20_;
	TubaAPIStatus* _tmp21_;
	gint64 _tmp22_;
	gint64 _tmp23_;
	TubaAPIStatus* _tmp24_;
	TubaAPIStatus* _tmp25_;
	gint64 _tmp26_;
	gint64 _tmp27_;
	TubaAPIStatus* _tmp36_;
	TubaAPIStatus* _tmp37_;
	TubaAPIStatus* _tmp38_;
	TubaAPIStatus* _tmp39_;
	gint64 _tmp40_;
	gint64 _tmp41_;
	TubaAPIStatus* _tmp42_;
	TubaAPIStatus* _tmp43_;
	gint64 _tmp44_;
	gint64 _tmp45_;
	TubaAPIStatus* _tmp54_;
	TubaAPIStatus* _tmp55_;
	TubaAPIStatus* _tmp56_;
	TubaAPIStatus* _tmp57_;
	gint64 _tmp58_;
	gint64 _tmp59_;
	TubaAPIStatus* _tmp60_;
	TubaAPIStatus* _tmp61_;
	gint64 _tmp62_;
	gint64 _tmp63_;
	g_return_if_fail (self != NULL);
	g_return_if_fail (x != NULL);
	_tmp0_ = tuba_widgets_status_get_status (self);
	_tmp1_ = _tmp0_;
	_tmp2_ = tuba_api_status_get_formal (_tmp1_);
	_tmp3_ = _tmp2_;
	_tmp4_ = tuba_api_status_get_favourites_count (_tmp3_);
	_tmp5_ = _tmp4_;
	_tmp6_ = tuba_api_status_get_formal (x);
	_tmp7_ = _tmp6_;
	_tmp8_ = tuba_api_status_get_favourites_count (_tmp7_);
	_tmp9_ = _tmp8_;
	if (_tmp5_ != _tmp9_) {
		TubaAPIStatus* _tmp10_;
		TubaAPIStatus* _tmp11_;
		TubaAPIStatus* _tmp12_;
		TubaAPIStatus* _tmp13_;
		TubaAPIStatus* _tmp14_;
		TubaAPIStatus* _tmp15_;
		gint64 _tmp16_;
		gint64 _tmp17_;
		_tmp10_ = tuba_widgets_status_get_status (self);
		_tmp11_ = _tmp10_;
		_tmp12_ = tuba_api_status_get_formal (_tmp11_);
		_tmp13_ = _tmp12_;
		_tmp14_ = tuba_api_status_get_formal (x);
		_tmp15_ = _tmp14_;
		_tmp16_ = tuba_api_status_get_favourites_count (_tmp15_);
		_tmp17_ = _tmp16_;
		tuba_api_status_set_favourites_count (_tmp13_, _tmp17_);
	}
	_tmp18_ = tuba_widgets_status_get_status (self);
	_tmp19_ = _tmp18_;
	_tmp20_ = tuba_api_status_get_formal (_tmp19_);
	_tmp21_ = _tmp20_;
	_tmp22_ = tuba_api_status_get_reblogs_count (_tmp21_);
	_tmp23_ = _tmp22_;
	_tmp24_ = tuba_api_status_get_formal (x);
	_tmp25_ = _tmp24_;
	_tmp26_ = tuba_api_status_get_reblogs_count (_tmp25_);
	_tmp27_ = _tmp26_;
	if (_tmp23_ != _tmp27_) {
		TubaAPIStatus* _tmp28_;
		TubaAPIStatus* _tmp29_;
		TubaAPIStatus* _tmp30_;
		TubaAPIStatus* _tmp31_;
		TubaAPIStatus* _tmp32_;
		TubaAPIStatus* _tmp33_;
		gint64 _tmp34_;
		gint64 _tmp35_;
		_tmp28_ = tuba_widgets_status_get_status (self);
		_tmp29_ = _tmp28_;
		_tmp30_ = tuba_api_status_get_formal (_tmp29_);
		_tmp31_ = _tmp30_;
		_tmp32_ = tuba_api_status_get_formal (x);
		_tmp33_ = _tmp32_;
		_tmp34_ = tuba_api_status_get_reblogs_count (_tmp33_);
		_tmp35_ = _tmp34_;
		tuba_api_status_set_reblogs_count (_tmp31_, _tmp35_);
	}
	_tmp36_ = tuba_widgets_status_get_status (self);
	_tmp37_ = _tmp36_;
	_tmp38_ = tuba_api_status_get_formal (_tmp37_);
	_tmp39_ = _tmp38_;
	_tmp40_ = tuba_api_status_get_replies_count (_tmp39_);
	_tmp41_ = _tmp40_;
	_tmp42_ = tuba_api_status_get_formal (x);
	_tmp43_ = _tmp42_;
	_tmp44_ = tuba_api_status_get_replies_count (_tmp43_);
	_tmp45_ = _tmp44_;
	if (_tmp41_ != _tmp45_) {
		TubaAPIStatus* _tmp46_;
		TubaAPIStatus* _tmp47_;
		TubaAPIStatus* _tmp48_;
		TubaAPIStatus* _tmp49_;
		TubaAPIStatus* _tmp50_;
		TubaAPIStatus* _tmp51_;
		gint64 _tmp52_;
		gint64 _tmp53_;
		_tmp46_ = tuba_widgets_status_get_status (self);
		_tmp47_ = _tmp46_;
		_tmp48_ = tuba_api_status_get_formal (_tmp47_);
		_tmp49_ = _tmp48_;
		_tmp50_ = tuba_api_status_get_formal (x);
		_tmp51_ = _tmp50_;
		_tmp52_ = tuba_api_status_get_replies_count (_tmp51_);
		_tmp53_ = _tmp52_;
		tuba_api_status_set_replies_count (_tmp49_, _tmp53_);
	}
	_tmp54_ = tuba_widgets_status_get_status (self);
	_tmp55_ = _tmp54_;
	_tmp56_ = tuba_api_status_get_formal (_tmp55_);
	_tmp57_ = _tmp56_;
	_tmp58_ = tuba_api_status_get_quotes_count (_tmp57_);
	_tmp59_ = _tmp58_;
	_tmp60_ = tuba_api_status_get_formal (x);
	_tmp61_ = _tmp60_;
	_tmp62_ = tuba_api_status_get_quotes_count (_tmp61_);
	_tmp63_ = _tmp62_;
	if (_tmp59_ != _tmp63_) {
		TubaAPIStatus* _tmp64_;
		TubaAPIStatus* _tmp65_;
		TubaAPIStatus* _tmp66_;
		TubaAPIStatus* _tmp67_;
		TubaAPIStatus* _tmp68_;
		TubaAPIStatus* _tmp69_;
		gint64 _tmp70_;
		gint64 _tmp71_;
		_tmp64_ = tuba_widgets_status_get_status (self);
		_tmp65_ = _tmp64_;
		_tmp66_ = tuba_api_status_get_formal (_tmp65_);
		_tmp67_ = _tmp66_;
		_tmp68_ = tuba_api_status_get_formal (x);
		_tmp69_ = _tmp68_;
		_tmp70_ = tuba_api_status_get_quotes_count (_tmp69_);
		_tmp71_ = _tmp70_;
		tuba_api_status_set_quotes_count (_tmp67_, _tmp71_);
	}
}

static void
tuba_widgets_status_real_snapshot (GtkWidget* base,
                                   GtkSnapshot* snapshot)
{
	TubaWidgetsStatus * self;
	gboolean _tmp0_ = FALSE;
	gboolean _tmp1_ = FALSE;
	gboolean _tmp2_ = FALSE;
	self = (TubaWidgetsStatus*) base;
	g_return_if_fail (snapshot != NULL);
	if (!self->priv->expanded) {
		gboolean _tmp3_;
		gboolean _tmp4_;
		_tmp3_ = tuba_widgets_status_get_enable_thread_lines (self);
		_tmp4_ = _tmp3_;
		_tmp2_ = _tmp4_;
	} else {
		_tmp2_ = FALSE;
	}
	if (_tmp2_) {
		TubaAPIStatus* _tmp5_;
		TubaAPIStatus* _tmp6_;
		TubaAPIStatus* _tmp7_;
		TubaAPIStatus* _tmp8_;
		TubaViewsThreadThreadRole _tmp9_;
		TubaViewsThreadThreadRole _tmp10_;
		_tmp5_ = tuba_widgets_status_get_status (self);
		_tmp6_ = _tmp5_;
		_tmp7_ = tuba_api_status_get_formal (_tmp6_);
		_tmp8_ = _tmp7_;
		_tmp9_ = tuba_api_status_get_tuba_thread_role (_tmp8_);
		_tmp10_ = _tmp9_;
		_tmp1_ = _tmp10_ != TUBA_VIEWS_THREAD_THREAD_ROLE_NONE;
	} else {
		_tmp1_ = FALSE;
	}
	if (_tmp1_) {
		GtkStack* _tmp11_;
		const gchar* _tmp12_;
		const gchar* _tmp13_;
		_tmp11_ = self->filter_stack;
		_tmp12_ = gtk_stack_get_visible_child_name (_tmp11_);
		_tmp13_ = _tmp12_;
		_tmp0_ = g_strcmp0 (_tmp13_, "status") == 0;
	} else {
		_tmp0_ = FALSE;
	}
	if (_tmp0_) {
		gfloat y = 0.0F;
		gfloat height = 0.0F;
		graphene_point_t avatar_point = {0};
		TubaWidgetsAvatar* _tmp14_;
		graphene_point_t _tmp15_ = {0};
		graphene_point_t _tmp16_ = {0};
		TubaAPIStatus* _tmp17_;
		TubaAPIStatus* _tmp18_;
		TubaAPIStatus* _tmp19_;
		TubaAPIStatus* _tmp20_;
		TubaViewsThreadThreadRole _tmp21_;
		TubaViewsThreadThreadRole _tmp22_;
		graphene_rect_t line_rect = {0};
		graphene_point_t _tmp27_;
		TubaWidgetsAvatar* _tmp28_;
		graphene_point_t _tmp29_ = {0};
		graphene_size_t _tmp30_ = {0};
		graphene_rect_t _tmp31_ = {0};
		GdkRGBA _tmp32_ = {0};
		graphene_rect_t _tmp33_;
		_tmp14_ = self->avatar;
		memset (&_tmp15_, 0, sizeof (graphene_point_t));
		_tmp15_.x = 0.0f;
		_tmp15_.y = 0.0f;
		gtk_widget_compute_point ((GtkWidget*) _tmp14_, (GtkWidget*) self, &_tmp15_, &_tmp16_);
		avatar_point = _tmp16_;
		_tmp17_ = tuba_widgets_status_get_status (self);
		_tmp18_ = _tmp17_;
		_tmp19_ = tuba_api_status_get_formal (_tmp18_);
		_tmp20_ = _tmp19_;
		_tmp21_ = tuba_api_status_get_tuba_thread_role (_tmp20_);
		_tmp22_ = _tmp21_;
		switch (_tmp22_) {
			case TUBA_VIEWS_THREAD_THREAD_ROLE_START:
			{
				graphene_point_t _tmp23_;
				TubaWidgetsAvatar* _tmp24_;
				_tmp23_ = avatar_point;
				_tmp24_ = self->avatar;
				y = _tmp23_.y + (gtk_widget_get_height ((GtkWidget*) _tmp24_) / 2.f);
				height = (gfloat) gtk_widget_get_height ((GtkWidget*) self);
				break;
			}
			case TUBA_VIEWS_THREAD_THREAD_ROLE_MIDDLE:
			{
				y = -4.f;
				height = gtk_widget_get_height ((GtkWidget*) self) * 1.2f;
				break;
			}
			case TUBA_VIEWS_THREAD_THREAD_ROLE_END:
			{
				graphene_point_t _tmp25_;
				TubaWidgetsAvatar* _tmp26_;
				y = -4.f;
				_tmp25_ = avatar_point;
				_tmp26_ = self->avatar;
				height = (_tmp25_.y + (gtk_widget_get_height ((GtkWidget*) _tmp26_) / 2.f)) + 4.f;
				break;
			}
			default:
			{
				g_assert_not_reached ();
			}
		}
		_tmp27_ = avatar_point;
		_tmp28_ = self->avatar;
		memset (&_tmp29_, 0, sizeof (graphene_point_t));
		_tmp29_.x = (_tmp27_.x + (gtk_widget_get_width ((GtkWidget*) _tmp28_) / 2.f)) - (TUBA_WIDGETS_STATUS_THREAD_WIDTH / 2.f);
		_tmp29_.y = y;
		memset (&_tmp30_, 0, sizeof (graphene_size_t));
		_tmp30_.width = TUBA_WIDGETS_STATUS_THREAD_WIDTH;
		_tmp30_.height = height;
		memset (&_tmp31_, 0, sizeof (graphene_rect_t));
		_tmp31_.origin = _tmp29_;
		_tmp31_.size = _tmp30_;
		line_rect = _tmp31_;
		gtk_snapshot_push_opacity (snapshot, 0.1);
		gtk_widget_get_color ((GtkWidget*) self, &_tmp32_);
		_tmp33_ = line_rect;
		gtk_snapshot_append_color (snapshot, &_tmp32_, &_tmp33_);
		gtk_snapshot_pop (snapshot);
	}
	GTK_WIDGET_CLASS (tuba_widgets_status_parent_class)->snapshot ((GtkWidget*) G_TYPE_CHECK_INSTANCE_CAST (self, gtk_list_box_row_get_type (), GtkListBoxRow), snapshot);
}

void
tuba_widgets_status_install_thread_line (TubaWidgetsStatus* self)
{
	g_return_if_fail (self != NULL);
	gtk_widget_queue_draw ((GtkWidget*) self);
}

TubaAPIStatus*
tuba_widgets_status_get_status (TubaWidgetsStatus* self)
{
	TubaAPIStatus* result;
	TubaAPIStatus* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_bound_status;
	result = _tmp0_;
	return result;
}

void
tuba_widgets_status_set_status (TubaWidgetsStatus* self,
                                TubaAPIStatus* value)
{
	TubaAPIStatus* _tmp0_;
	TubaAPIStatus* _tmp1_;
	TubaAPIStatus* _tmp2_;
	GtkPopoverMenu* _tmp3_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->priv->_bound_status;
	if (_tmp0_ != NULL) {
		g_warning ("Status.vala:13: Trying to rebind a Status widget! This is not supposed" \
" to happen!");
	}
	_tmp1_ = _g_object_ref0 (value);
	_g_object_unref0 (self->priv->_bound_status);
	self->priv->_bound_status = _tmp1_;
	_tmp2_ = self->priv->_bound_status;
	if (_tmp2_ != NULL) {
		tuba_widgets_status_bind (self);
	}
	_tmp3_ = self->priv->_context_menu;
	if (_tmp3_ == NULL) {
		tuba_widgets_status_create_actions (self);
	}
	g_object_notify_by_pspec ((GObject *) self, tuba_widgets_status_properties[TUBA_WIDGETS_STATUS_STATUS_PROPERTY]);
}

TubaAPIAccount*
tuba_widgets_status_get_kind_instigator (TubaWidgetsStatus* self)
{
	TubaAPIAccount* result;
	TubaAPIAccount* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_kind_instigator;
	result = _tmp0_;
	return result;
}

void
tuba_widgets_status_set_kind_instigator (TubaWidgetsStatus* self,
                                         TubaAPIAccount* value)
{
	TubaAPIAccount* old_value;
	g_return_if_fail (self != NULL);
	old_value = tuba_widgets_status_get_kind_instigator (self);
	if (old_value != value) {
		TubaAPIAccount* _tmp0_;
		_tmp0_ = _g_object_ref0 (value);
		_g_object_unref0 (self->priv->_kind_instigator);
		self->priv->_kind_instigator = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, tuba_widgets_status_properties[TUBA_WIDGETS_STATUS_KIND_INSTIGATOR_PROPERTY]);
	}
}

static GtkButton*
tuba_widgets_status_get_quoted_status_btn (TubaWidgetsStatus* self)
{
	GtkButton* result;
	GtkButton* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_quoted_status_btn;
	result = _tmp0_;
	return result;
}

static void
tuba_widgets_status_set_quoted_status_btn (TubaWidgetsStatus* self,
                                           GtkButton* value)
{
	GtkButton* _tmp0_;
	g_return_if_fail (self != NULL);
	_tmp0_ = _g_object_ref0 (value);
	_g_object_unref0 (self->priv->_quoted_status_btn);
	self->priv->_quoted_status_btn = _tmp0_;
}

static GtkLabel*
tuba_widgets_status_get_quote_warning (TubaWidgetsStatus* self)
{
	GtkLabel* result;
	GtkLabel* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_quote_warning;
	result = _tmp0_;
	return result;
}

static void
tuba_widgets_status_set_quote_warning (TubaWidgetsStatus* self,
                                       GtkLabel* value)
{
	GtkLabel* _tmp0_;
	g_return_if_fail (self != NULL);
	_tmp0_ = _g_object_ref0 (value);
	_g_object_unref0 (self->priv->_quote_warning);
	self->priv->_quote_warning = _tmp0_;
}

TubaAPITranslation*
tuba_widgets_status_get_translation (TubaWidgetsStatus* self)
{
	TubaAPITranslation* result;
	TubaAPITranslation* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_translation;
	result = _tmp0_;
	return result;
}

static void
tuba_widgets_status_set_translation (TubaWidgetsStatus* self,
                                     TubaAPITranslation* value)
{
	TubaAPITranslation* old_value;
	g_return_if_fail (self != NULL);
	old_value = tuba_widgets_status_get_translation (self);
	if (old_value != value) {
		TubaAPITranslation* _tmp0_;
		_tmp0_ = _g_object_ref0 (value);
		_g_object_unref0 (self->priv->_translation);
		self->priv->_translation = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, tuba_widgets_status_properties[TUBA_WIDGETS_STATUS_TRANSLATION_PROPERTY]);
	}
}

static AdwBin*
tuba_widgets_status_get_emoji_reactions (TubaWidgetsStatus* self)
{
	AdwBin* result;
	AdwBin* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_emoji_reactions;
	result = _tmp0_;
	return result;
}

static void
tuba_widgets_status_set_emoji_reactions (TubaWidgetsStatus* self,
                                         AdwBin* value)
{
	AdwBin* _tmp0_;
	g_return_if_fail (self != NULL);
	_tmp0_ = _g_object_ref0 (value);
	_g_object_unref0 (self->priv->_emoji_reactions);
	self->priv->_emoji_reactions = _tmp0_;
}

const gchar*
tuba_widgets_status_get_other_data (TubaWidgetsStatus* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_other_data;
	result = _tmp0_;
	return result;
}

void
tuba_widgets_status_set_other_data (TubaWidgetsStatus* self,
                                    const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = tuba_widgets_status_get_other_data (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_other_data);
		self->priv->_other_data = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, tuba_widgets_status_properties[TUBA_WIDGETS_STATUS_OTHER_DATA_PROPERTY]);
	}
}

gboolean
tuba_widgets_status_get_enable_thread_lines (TubaWidgetsStatus* self)
{
	gboolean result;
	g_return_val_if_fail (self != NULL, FALSE);
	result = self->priv->_enable_thread_lines;
	return result;
}

void
tuba_widgets_status_set_enable_thread_lines (TubaWidgetsStatus* self,
                                             gboolean value)
{
	g_return_if_fail (self != NULL);
	if (self->priv->_enable_thread_lines != value) {
		self->priv->_enable_thread_lines = value;
		tuba_widgets_status_update_collapse (self);
	}
	g_object_notify_by_pspec ((GObject *) self, tuba_widgets_status_properties[TUBA_WIDGETS_STATUS_ENABLE_THREAD_LINES_PROPERTY]);
}

gboolean
tuba_widgets_status_get_can_be_opened (TubaWidgetsStatus* self)
{
	gboolean result;
	g_return_val_if_fail (self != NULL, FALSE);
	result = self->priv->_can_be_opened;
	return result;
}

void
tuba_widgets_status_set_can_be_opened (TubaWidgetsStatus* self,
                                       gboolean value)
{
	g_return_if_fail (self != NULL);
	self->priv->_can_be_opened = value;
	if (value) {
		gtk_widget_add_css_class ((GtkWidget*) self, "activatable");
	} else {
		gtk_widget_remove_css_class ((GtkWidget*) self, "activatable");
	}
	g_object_notify_by_pspec ((GObject *) self, tuba_widgets_status_properties[TUBA_WIDGETS_STATUS_CAN_BE_OPENED_PROPERTY]);
}

gboolean
tuba_widgets_status_get_is_quote (TubaWidgetsStatus* self)
{
	gboolean result;
	g_return_val_if_fail (self != NULL, FALSE);
	result = self->priv->_is_quote;
	return result;
}

void
tuba_widgets_status_set_is_quote (TubaWidgetsStatus* self,
                                  gboolean value)
{
	GtkWidget** widgets_to_toggle = NULL;
	GtkMenuButton* _tmp0_;
	GtkWidget* _tmp1_;
	AdwBin* _tmp2_;
	GtkWidget* _tmp3_;
	TubaWidgetsPreviewCard* _tmp4_;
	GtkWidget* _tmp5_;
	TubaWidgetsCollectionButton* _tmp6_;
	GtkWidget* _tmp7_;
	GtkWidget** _tmp8_;
	gint widgets_to_toggle_length1;
	gint _widgets_to_toggle_size_;
	GtkWidget** _tmp9_;
	gint _tmp9__length1;
	g_return_if_fail (self != NULL);
	self->priv->_is_quote = value;
	_tmp0_ = self->menu_button;
	_tmp1_ = _g_object_ref0 ((GtkWidget*) _tmp0_);
	_tmp2_ = self->priv->_emoji_reactions;
	_tmp3_ = _g_object_ref0 ((GtkWidget*) _tmp2_);
	_tmp4_ = self->prev_card;
	_tmp5_ = _g_object_ref0 ((GtkWidget*) _tmp4_);
	_tmp6_ = self->priv->collection_card;
	_tmp7_ = _g_object_ref0 ((GtkWidget*) _tmp6_);
	_tmp8_ = g_new0 (GtkWidget*, 4 + 1);
	_tmp8_[0] = _tmp1_;
	_tmp8_[1] = _tmp3_;
	_tmp8_[2] = _tmp5_;
	_tmp8_[3] = _tmp7_;
	widgets_to_toggle = _tmp8_;
	widgets_to_toggle_length1 = 4;
	_widgets_to_toggle_size_ = widgets_to_toggle_length1;
	_tmp9_ = widgets_to_toggle;
	_tmp9__length1 = widgets_to_toggle_length1;
	{
		GtkWidget** widget_collection = NULL;
		gint widget_collection_length1 = 0;
		gint _widget_collection_size_ = 0;
		gint widget_it = 0;
		widget_collection = _tmp9_;
		widget_collection_length1 = _tmp9__length1;
		for (widget_it = 0; widget_it < widget_collection_length1; widget_it = widget_it + 1) {
			GtkWidget* _tmp10_;
			GtkWidget* widget = NULL;
			_tmp10_ = _g_object_ref0 (widget_collection[widget_it]);
			widget = _tmp10_;
			{
				GtkWidget* _tmp11_;
				_tmp11_ = widget;
				if (_tmp11_ != NULL) {
					GtkWidget* _tmp12_;
					_tmp12_ = widget;
					gtk_widget_set_visible (_tmp12_, !value);
				}
				_g_object_unref0 (widget);
			}
		}
	}
	tuba_widgets_status_toggle_actions_visibility (self, !value);
	widgets_to_toggle = (_vala_array_free (widgets_to_toggle, widgets_to_toggle_length1, (GDestroyNotify) g_object_unref), NULL);
	g_object_notify_by_pspec ((GObject *) self, tuba_widgets_status_properties[TUBA_WIDGETS_STATUS_IS_QUOTE_PROPERTY]);
}

const gchar*
tuba_widgets_status_get_kind (TubaWidgetsStatus* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_kind;
	result = _tmp0_;
	return result;
}

void
tuba_widgets_status_set_kind (TubaWidgetsStatus* self,
                              const gchar* value)
{
	const gchar* _tmp0_;
	g_return_if_fail (self != NULL);
	_tmp0_ = self->priv->_kind;
	if (g_strcmp0 (value, _tmp0_) != 0) {
		gchar* _tmp1_;
		TubaAPIStatus* _tmp2_;
		TubaAPIStatus* _tmp3_;
		_tmp1_ = g_strdup (value);
		_g_free0 (self->priv->_kind);
		self->priv->_kind = _tmp1_;
		tuba_widgets_status_change_kind (self);
		_tmp2_ = tuba_widgets_status_get_status (self);
		_tmp3_ = _tmp2_;
		if (_tmp3_ != NULL) {
			tuba_widgets_status_aria_describe_status (self);
		}
	}
	g_object_notify_by_pspec ((GObject *) self, tuba_widgets_status_properties[TUBA_WIDGETS_STATUS_KIND_PROPERTY]);
}

gboolean
tuba_widgets_status_get_change_background_on_direct (TubaWidgetsStatus* self)
{
	gboolean result;
	g_return_val_if_fail (self != NULL, FALSE);
	result = self->priv->_change_background_on_direct;
	return result;
}

void
tuba_widgets_status_set_change_background_on_direct (TubaWidgetsStatus* self,
                                                     gboolean value)
{
	g_return_if_fail (self != NULL);
	self->priv->_change_background_on_direct = value;
	if (!value) {
		gtk_widget_remove_css_class ((GtkWidget*) self, "direct");
	}
	g_object_notify_by_pspec ((GObject *) self, tuba_widgets_status_properties[TUBA_WIDGETS_STATUS_CHANGE_BACKGROUND_ON_DIRECT_PROPERTY]);
}

static TubaWidgetsActionsRow*
tuba_widgets_status_get_actions (TubaWidgetsStatus* self)
{
	TubaWidgetsActionsRow* result;
	TubaWidgetsActionsRow* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_actions;
	result = _tmp0_;
	return result;
}

static void
tuba_widgets_status_set_actions (TubaWidgetsStatus* self,
                                 TubaWidgetsActionsRow* value)
{
	TubaWidgetsActionsRow* _tmp0_;
	g_return_if_fail (self != NULL);
	_tmp0_ = _g_object_ref0 (value);
	_g_object_unref0 (self->priv->_actions);
	self->priv->_actions = _tmp0_;
}

GtkPopoverMenu*
tuba_widgets_status_get_context_menu (TubaWidgetsStatus* self)
{
	GtkPopoverMenu* result;
	GtkPopoverMenu* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_context_menu;
	result = _tmp0_;
	return result;
}

void
tuba_widgets_status_set_context_menu (TubaWidgetsStatus* self,
                                      GtkPopoverMenu* value)
{
	GtkPopoverMenu* old_value;
	g_return_if_fail (self != NULL);
	old_value = tuba_widgets_status_get_context_menu (self);
	if (old_value != value) {
		GtkPopoverMenu* _tmp0_;
		_tmp0_ = _g_object_ref0 (value);
		_g_object_unref0 (self->priv->_context_menu);
		self->priv->_context_menu = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, tuba_widgets_status_properties[TUBA_WIDGETS_STATUS_CONTEXT_MENU_PROPERTY]);
	}
}

static gboolean
tuba_widgets_status_get_has_stats (TubaWidgetsStatus* self)
{
	gboolean result;
	gboolean _tmp0_ = FALSE;
	gboolean _tmp1_ = FALSE;
	TubaAPIStatus* _tmp2_;
	TubaAPIStatus* _tmp3_;
	TubaAPIStatus* _tmp4_;
	TubaAPIStatus* _tmp5_;
	gint64 _tmp6_;
	gint64 _tmp7_;
	g_return_val_if_fail (self != NULL, FALSE);
	_tmp2_ = tuba_widgets_status_get_status (self);
	_tmp3_ = _tmp2_;
	_tmp4_ = tuba_api_status_get_formal (_tmp3_);
	_tmp5_ = _tmp4_;
	_tmp6_ = tuba_api_status_get_reblogs_count (_tmp5_);
	_tmp7_ = _tmp6_;
	if (_tmp7_ != ((gint64) 0)) {
		_tmp1_ = TRUE;
	} else {
		TubaAPIStatus* _tmp8_;
		TubaAPIStatus* _tmp9_;
		TubaAPIStatus* _tmp10_;
		TubaAPIStatus* _tmp11_;
		gint64 _tmp12_;
		gint64 _tmp13_;
		_tmp8_ = tuba_widgets_status_get_status (self);
		_tmp9_ = _tmp8_;
		_tmp10_ = tuba_api_status_get_formal (_tmp9_);
		_tmp11_ = _tmp10_;
		_tmp12_ = tuba_api_status_get_favourites_count (_tmp11_);
		_tmp13_ = _tmp12_;
		_tmp1_ = _tmp13_ != ((gint64) 0);
	}
	if (_tmp1_) {
		_tmp0_ = TRUE;
	} else {
		TubaAPIStatus* _tmp14_;
		TubaAPIStatus* _tmp15_;
		TubaAPIStatus* _tmp16_;
		TubaAPIStatus* _tmp17_;
		gint64 _tmp18_;
		gint64 _tmp19_;
		_tmp14_ = tuba_widgets_status_get_status (self);
		_tmp15_ = _tmp14_;
		_tmp16_ = tuba_api_status_get_formal (_tmp15_);
		_tmp17_ = _tmp16_;
		_tmp18_ = tuba_api_status_get_quotes_count (_tmp17_);
		_tmp19_ = _tmp18_;
		_tmp0_ = _tmp19_ != ((gint64) 0);
	}
	result = _tmp0_;
	return result;
}

gchar*
tuba_widgets_status_get_spoiler_text (TubaWidgetsStatus* self)
{
	gchar* result;
	gchar* text = NULL;
	TubaAPIStatus* _tmp0_;
	TubaAPIStatus* _tmp1_;
	TubaAPIStatus* _tmp2_;
	TubaAPIStatus* _tmp3_;
	const gchar* _tmp4_;
	const gchar* _tmp5_;
	gchar* _tmp6_;
	gboolean _tmp7_ = FALSE;
	const gchar* _tmp8_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = tuba_widgets_status_get_status (self);
	_tmp1_ = _tmp0_;
	_tmp2_ = tuba_api_status_get_formal (_tmp1_);
	_tmp3_ = _tmp2_;
	_tmp4_ = tuba_api_status_get_spoiler_text (_tmp3_);
	_tmp5_ = _tmp4_;
	_tmp6_ = g_strdup (_tmp5_);
	text = _tmp6_;
	_tmp8_ = text;
	if (_tmp8_ == NULL) {
		_tmp7_ = TRUE;
	} else {
		const gchar* _tmp9_;
		_tmp9_ = text;
		_tmp7_ = g_strcmp0 (_tmp9_, "") == 0;
	}
	if (_tmp7_) {
		gchar* _tmp10_;
		_tmp10_ = g_strdup (_ ("Show More"));
		result = _tmp10_;
		_g_free0 (text);
		return result;
	} else {
		gboolean _tmp11_ = FALSE;
		gboolean _tmp12_ = FALSE;
		TubaAPITranslation* _tmp13_;
		const gchar* _tmp24_;
		_tmp13_ = self->priv->_translation;
		if (_tmp13_ != NULL) {
			TubaAPITranslation* _tmp14_;
			const gchar* _tmp15_;
			const gchar* _tmp16_;
			_tmp14_ = self->priv->_translation;
			_tmp15_ = tuba_api_translation_get_spoiler_text (_tmp14_);
			_tmp16_ = _tmp15_;
			_tmp12_ = _tmp16_ != NULL;
		} else {
			_tmp12_ = FALSE;
		}
		if (_tmp12_) {
			TubaAPITranslation* _tmp17_;
			const gchar* _tmp18_;
			const gchar* _tmp19_;
			_tmp17_ = self->priv->_translation;
			_tmp18_ = tuba_api_translation_get_spoiler_text (_tmp17_);
			_tmp19_ = _tmp18_;
			_tmp11_ = g_strcmp0 (_tmp19_, "") != 0;
		} else {
			_tmp11_ = FALSE;
		}
		if (_tmp11_) {
			TubaAPITranslation* _tmp20_;
			const gchar* _tmp21_;
			const gchar* _tmp22_;
			gchar* _tmp23_;
			_tmp20_ = self->priv->_translation;
			_tmp21_ = tuba_api_translation_get_spoiler_text (_tmp20_);
			_tmp22_ = _tmp21_;
			_tmp23_ = g_strdup (_tmp22_);
			_g_free0 (text);
			text = _tmp23_;
		}
		_tmp24_ = text;
		tuba_widgets_status_set_spoiler_text_revealed (self, _tmp24_);
		result = text;
		return result;
	}
}

const gchar*
tuba_widgets_status_get_spoiler_text_revealed (TubaWidgetsStatus* self)
{
	const gchar* result;
	const gchar* _tmp0_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = self->priv->_spoiler_text_revealed;
	result = _tmp0_;
	return result;
}

void
tuba_widgets_status_set_spoiler_text_revealed (TubaWidgetsStatus* self,
                                               const gchar* value)
{
	gchar* old_value;
	g_return_if_fail (self != NULL);
	old_value = tuba_widgets_status_get_spoiler_text_revealed (self);
	if (g_strcmp0 (value, old_value) != 0) {
		gchar* _tmp0_;
		_tmp0_ = g_strdup (value);
		_g_free0 (self->priv->_spoiler_text_revealed);
		self->priv->_spoiler_text_revealed = _tmp0_;
		g_object_notify_by_pspec ((GObject *) self, tuba_widgets_status_properties[TUBA_WIDGETS_STATUS_SPOILER_TEXT_REVEALED_PROPERTY]);
	}
}

static gchar*
string_replace (const gchar* self,
                const gchar* old,
                const gchar* replacement)
{
	gboolean _tmp0_ = FALSE;
	gboolean _tmp1_ = FALSE;
	GError* _inner_error0_ = NULL;
	gchar* result;
	g_return_val_if_fail (self != NULL, NULL);
	g_return_val_if_fail (old != NULL, NULL);
	g_return_val_if_fail (replacement != NULL, NULL);
	if ((*((gchar*) self)) == '\0') {
		_tmp1_ = TRUE;
	} else {
		_tmp1_ = (*((gchar*) old)) == '\0';
	}
	if (_tmp1_) {
		_tmp0_ = TRUE;
	} else {
		_tmp0_ = g_strcmp0 (old, replacement) == 0;
	}
	if (_tmp0_) {
		gchar* _tmp2_;
		_tmp2_ = g_strdup (self);
		result = _tmp2_;
		return result;
	}
	{
		GRegex* regex = NULL;
		gchar* _tmp3_;
		gchar* _tmp4_;
		GRegex* _tmp5_;
		GRegex* _tmp6_;
		gchar* _tmp7_ = NULL;
		GRegex* _tmp8_;
		gchar* _tmp9_;
		gchar* _tmp10_;
		_tmp3_ = g_regex_escape_string (old, -1);
		_tmp4_ = _tmp3_;
		_tmp5_ = g_regex_new (_tmp4_, 0, 0, &_inner_error0_);
		_tmp6_ = _tmp5_;
		_g_free0 (_tmp4_);
		regex = _tmp6_;
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
			if (_inner_error0_->domain == G_REGEX_ERROR) {
				goto __catch0_g_regex_error;
			}
			g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
			g_clear_error (&_inner_error0_);
			return NULL;
		}
		_tmp8_ = regex;
		_tmp9_ = g_regex_replace_literal (_tmp8_, self, (gssize) -1, 0, replacement, 0, &_inner_error0_);
		_tmp7_ = _tmp9_;
		if (G_UNLIKELY (_inner_error0_ != NULL)) {
			_g_regex_unref0 (regex);
			if (_inner_error0_->domain == G_REGEX_ERROR) {
				goto __catch0_g_regex_error;
			}
			g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
			g_clear_error (&_inner_error0_);
			return NULL;
		}
		_tmp10_ = _tmp7_;
		_tmp7_ = NULL;
		result = _tmp10_;
		_g_free0 (_tmp7_);
		_g_regex_unref0 (regex);
		return result;
	}
	goto __finally0;
	__catch0_g_regex_error:
	{
		g_clear_error (&_inner_error0_);
		g_assert_not_reached ();
	}
	__finally0:
	g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
	g_clear_error (&_inner_error0_);
	return NULL;
}

gchar*
tuba_widgets_status_get_date (TubaWidgetsStatus* self)
{
	gchar* result;
	g_return_val_if_fail (self != NULL, NULL);
	if (self->priv->expanded) {
		gchar* date_local = NULL;
		gchar* _tmp0_;
		GDateTime* date_parsed = NULL;
		const gchar* _tmp1_;
		const gchar* _tmp2_;
		GDateTime* _tmp3_;
		GDateTime* _tmp4_;
		GTimeZone* _tmp5_;
		GTimeZone* _tmp6_;
		GDateTime* _tmp7_;
		GDateTime* _tmp8_;
		const gchar* _tmp9_;
		const gchar* _tmp10_;
		const gchar* _tmp11_;
		gchar* _tmp12_;
		gchar* _tmp13_;
		gchar* _tmp14_;
		gchar* _tmp15_;
		gchar* _tmp16_;
		gchar* _tmp17_;
		_tmp0_ = g_strdup (_ ("%B %e, %Y"));
		date_local = _tmp0_;
		_tmp1_ = tuba_widgets_status_get_full_date (self);
		_tmp2_ = _tmp1_;
		_tmp3_ = g_date_time_new_from_iso8601 (_tmp2_, NULL);
		date_parsed = _tmp3_;
		_tmp4_ = date_parsed;
		_tmp5_ = g_time_zone_new_local ();
		_tmp6_ = _tmp5_;
		_tmp7_ = g_date_time_to_timezone (_tmp4_, _tmp6_);
		_g_date_time_unref0 (date_parsed);
		date_parsed = _tmp7_;
		_g_time_zone_unref0 (_tmp6_);
		_tmp8_ = date_parsed;
		_tmp9_ = date_local;
		_tmp10_ = string_to_string (_tmp9_);
		_tmp11_ = string_to_string (TUBA_WIDGETS_STATUS_EXPANDED_SEPARATOR);
		_tmp12_ = g_strconcat (_tmp10_, " ", _tmp11_, " %H:%M", NULL);
		_tmp13_ = _tmp12_;
		_tmp14_ = g_date_time_format (_tmp8_, _tmp13_);
		_tmp15_ = _tmp14_;
		_tmp16_ = string_replace (_tmp15_, " ", "");
		_tmp17_ = _tmp16_;
		_g_free0 (_tmp15_);
		_g_free0 (_tmp13_);
		result = _tmp17_;
		_g_date_time_unref0 (date_parsed);
		_g_free0 (date_local);
		return result;
	} else {
		const gchar* _tmp18_;
		const gchar* _tmp19_;
		gchar* _tmp20_;
		_tmp18_ = tuba_widgets_status_get_full_date (self);
		_tmp19_ = _tmp18_;
		_tmp20_ = tuba_utils_date_time_humanize (_tmp19_);
		result = _tmp20_;
		return result;
	}
}

const gchar*
tuba_widgets_status_get_full_date (TubaWidgetsStatus* self)
{
	const gchar* result;
	const gchar* _tmp0_ = NULL;
	TubaAPIStatus* _tmp1_;
	TubaAPIStatus* _tmp2_;
	TubaAPIStatus* _tmp3_;
	TubaAPIStatus* _tmp4_;
	const gchar* _tmp5_;
	const gchar* _tmp6_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp1_ = tuba_widgets_status_get_status (self);
	_tmp2_ = _tmp1_;
	_tmp3_ = tuba_api_status_get_formal (_tmp2_);
	_tmp4_ = _tmp3_;
	_tmp5_ = tuba_api_status_get_edited_at (_tmp4_);
	_tmp6_ = _tmp5_;
	_tmp0_ = _tmp6_;
	if (_tmp0_ == NULL) {
		TubaAPIStatus* _tmp7_;
		TubaAPIStatus* _tmp8_;
		TubaAPIStatus* _tmp9_;
		TubaAPIStatus* _tmp10_;
		const gchar* _tmp11_;
		const gchar* _tmp12_;
		_tmp7_ = tuba_widgets_status_get_status (self);
		_tmp8_ = _tmp7_;
		_tmp9_ = tuba_api_status_get_formal (_tmp8_);
		_tmp10_ = _tmp9_;
		_tmp11_ = tuba_api_status_get_created_at (_tmp10_);
		_tmp12_ = _tmp11_;
		_tmp0_ = _tmp12_;
	}
	result = _tmp0_;
	return result;
}

gchar*
tuba_widgets_status_get_title_text (TubaWidgetsStatus* self)
{
	gchar* result;
	TubaAPIStatus* _tmp0_;
	TubaAPIStatus* _tmp1_;
	TubaAPIStatus* _tmp2_;
	TubaAPIStatus* _tmp3_;
	TubaAPIAccount* _tmp4_;
	TubaAPIAccount* _tmp5_;
	const gchar* _tmp6_;
	const gchar* _tmp7_;
	gchar* _tmp8_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = tuba_widgets_status_get_status (self);
	_tmp1_ = _tmp0_;
	_tmp2_ = tuba_api_status_get_formal (_tmp1_);
	_tmp3_ = _tmp2_;
	_tmp4_ = tuba_api_status_get_account (_tmp3_);
	_tmp5_ = _tmp4_;
	_tmp6_ = tuba_api_account_get_display_name (_tmp5_);
	_tmp7_ = _tmp6_;
	_tmp8_ = g_strdup (_tmp7_);
	result = _tmp8_;
	return result;
}

gchar*
tuba_widgets_status_get_subtitle_text (TubaWidgetsStatus* self)
{
	gchar* result;
	TubaAPIStatus* _tmp0_;
	TubaAPIStatus* _tmp1_;
	TubaAPIStatus* _tmp2_;
	TubaAPIStatus* _tmp3_;
	TubaAPIAccount* _tmp4_;
	TubaAPIAccount* _tmp5_;
	gchar* _tmp6_;
	gchar* _tmp7_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = tuba_widgets_status_get_status (self);
	_tmp1_ = _tmp0_;
	_tmp2_ = tuba_api_status_get_formal (_tmp1_);
	_tmp3_ = _tmp2_;
	_tmp4_ = tuba_api_status_get_account (_tmp3_);
	_tmp5_ = _tmp4_;
	_tmp6_ = tuba_api_account_get_handle (_tmp5_);
	_tmp7_ = _tmp6_;
	result = _tmp7_;
	return result;
}

gchar*
tuba_widgets_status_get_avatar_url (TubaWidgetsStatus* self)
{
	gchar* result;
	TubaAPIStatus* _tmp0_;
	TubaAPIStatus* _tmp1_;
	TubaAPIStatus* _tmp2_;
	TubaAPIStatus* _tmp3_;
	TubaAPIAccount* _tmp4_;
	TubaAPIAccount* _tmp5_;
	const gchar* _tmp6_;
	const gchar* _tmp7_;
	gchar* _tmp8_;
	g_return_val_if_fail (self != NULL, NULL);
	_tmp0_ = tuba_widgets_status_get_status (self);
	_tmp1_ = _tmp0_;
	_tmp2_ = tuba_api_status_get_formal (_tmp1_);
	_tmp3_ = _tmp2_;
	_tmp4_ = tuba_api_status_get_account (_tmp3_);
	_tmp5_ = _tmp4_;
	_tmp6_ = tuba_api_account_get_avatar (_tmp5_);
	_tmp7_ = _tmp6_;
	_tmp8_ = g_strdup (_tmp7_);
	result = _tmp8_;
	return result;
}

static void
_tuba_widgets_status_on_open_tuba_widgets_status_open (TubaWidgetsStatus* _sender,
                                                       gpointer self)
{
	tuba_widgets_status_on_open ((TubaWidgetsStatus*) self);
}

static void
_tuba_widgets_status_font_size_updated_g_object_notify (GObject* _sender,
                                                        GParamSpec* pspec,
                                                        gpointer self)
{
	tuba_widgets_status_font_size_updated ((TubaWidgetsStatus*) self);
}

static void
_tuba_widgets_status_settings_updated_g_object_notify (GObject* _sender,
                                                       GParamSpec* pspec,
                                                       gpointer self)
{
	tuba_widgets_status_settings_updated ((TubaWidgetsStatus*) self);
}

static void
_tuba_widgets_status_update_collapse_g_object_notify (GObject* _sender,
                                                      GParamSpec* pspec,
                                                      gpointer self)
{
	tuba_widgets_status_update_collapse ((TubaWidgetsStatus*) self);
}

static void
_tuba_widgets_status_on_mobile_size_g_object_notify (GObject* _sender,
                                                     GParamSpec* pspec,
                                                     gpointer self)
{
	tuba_widgets_status_on_mobile_size ((TubaWidgetsStatus*) self);
}

static void
_tuba_widgets_status_view_edit_history_g_simple_action_activate (GSimpleAction* _sender,
                                                                 GVariant* parameter,
                                                                 gpointer self)
{
	tuba_widgets_status_view_edit_history ((TubaWidgetsStatus*) self);
}

static void
_tuba_widgets_status_view_stats_g_simple_action_activate (GSimpleAction* _sender,
                                                          GVariant* parameter,
                                                          gpointer self)
{
	tuba_widgets_status_view_stats ((TubaWidgetsStatus*) self);
}

static void
_tuba_widgets_status_on_name_button_clicked_gtk_button_clicked (GtkButton* _sender,
                                                                gpointer self)
{
	tuba_widgets_status_on_name_button_clicked ((TubaWidgetsStatus*) self);
}

static GObject *
tuba_widgets_status_constructor (GType type,
                                 guint n_construct_properties,
                                 GObjectConstructParam * construct_properties)
{
	GObject * obj;
	GObjectClass * parent_class;
	TubaWidgetsStatus * self;
	GtkImage* _tmp0_;
	GtkImage* _tmp1_;
	const gchar* _tmp2_;
	const gchar* _tmp3_;
	GtkImage* _tmp4_;
	GtkImage* _tmp5_;
	const gchar* _tmp6_;
	const gchar* _tmp7_;
	TubaWidgetsRichLabel* _tmp8_;
	GtkOverlay* _tmp9_;
	TubaWidgetsAvatar* _tmp10_;
	TubaSettings* _tmp11_;
	gdouble _tmp12_;
	gdouble _tmp13_;
	TubaSettings* _tmp21_;
	gboolean _tmp22_;
	gboolean _tmp23_;
	TubaSettings* _tmp24_;
	gboolean _tmp25_;
	gboolean _tmp26_;
	TubaSettings* _tmp27_;
	TubaSettings* _tmp28_;
	TubaSettings* _tmp29_;
	TubaSettings* _tmp30_;
	TubaApplication* _tmp31_;
	GSimpleAction* _tmp32_;
	GSimpleAction* _tmp33_;
	GSimpleAction* _tmp34_;
	GSimpleAction* _tmp35_;
	GSimpleActionGroup* _tmp36_;
	GSimpleActionGroup* _tmp37_;
	GSimpleActionGroup* _tmp38_;
	GSimpleAction* _tmp39_;
	GSimpleActionGroup* _tmp40_;
	GSimpleAction* _tmp41_;
	GSimpleActionGroup* _tmp42_;
	GSimpleAction* _tmp43_;
	GtkButton* _tmp44_;
	parent_class = G_OBJECT_CLASS (tuba_widgets_status_parent_class);
	obj = parent_class->constructor (type, n_construct_properties, construct_properties);
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, TUBA_WIDGETS_TYPE_STATUS, TubaWidgetsStatus);
	_tmp0_ = self->pin_indicator;
	_tmp1_ = self->pin_indicator;
	_tmp2_ = gtk_widget_get_tooltip_text ((GtkWidget*) _tmp1_);
	_tmp3_ = _tmp2_;
	gtk_accessible_update_property ((GtkAccessible*) _tmp0_, GTK_ACCESSIBLE_PROPERTY_LABEL, _tmp3_, -1, -1);
	_tmp4_ = self->edited_indicator;
	_tmp5_ = self->edited_indicator;
	_tmp6_ = gtk_widget_get_tooltip_text ((GtkWidget*) _tmp5_);
	_tmp7_ = _tmp6_;
	gtk_accessible_update_property ((GtkAccessible*) _tmp4_, GTK_ACCESSIBLE_PROPERTY_LABEL, _tmp7_, -1, -1);
	_tmp8_ = self->name_label;
	tuba_widgets_rich_label_set_use_markup (_tmp8_, FALSE);
	_tmp9_ = self->avatar_overlay;
	_tmp10_ = self->avatar;
	gtk_overlay_set_measure_overlay (_tmp9_, (GtkWidget*) _tmp10_, TRUE);
	g_signal_connect_object (self, "open", (GCallback) _tuba_widgets_status_on_open_tuba_widgets_status_open, self, 0);
	_tmp11_ = tuba_settings;
	_tmp12_ = tuba_settings_get_status_font_size (_tmp11_);
	_tmp13_ = _tmp12_;
	if (_tmp13_ != 1.0) {
		TubaSettings* _tmp14_;
		gdouble _tmp15_;
		gdouble _tmp16_;
		gchar* _tmp17_;
		gchar* _tmp18_;
		gchar* _tmp19_;
		gchar* _tmp20_;
		_tmp14_ = tuba_settings;
		_tmp15_ = tuba_settings_get_status_font_size (_tmp14_);
		_tmp16_ = _tmp15_;
		_tmp17_ = g_strdup_printf ("%i", (gint) (_tmp16_ * 100));
		_tmp18_ = _tmp17_;
		_tmp19_ = g_strconcat ("ttl-status-font-large-", _tmp18_, NULL);
		_tmp20_ = _tmp19_;
		gtk_widget_add_css_class ((GtkWidget*) self, _tmp20_);
		_g_free0 (_tmp20_);
		_g_free0 (_tmp18_);
	}
	_tmp21_ = tuba_settings;
	_tmp22_ = tuba_settings_get_larger_line_height (_tmp21_);
	_tmp23_ = _tmp22_;
	if (_tmp23_) {
		gtk_widget_add_css_class ((GtkWidget*) self, "ttl-status-line-height-large");
	}
	_tmp24_ = tuba_settings;
	_tmp25_ = tuba_settings_get_scale_emoji_hover (_tmp24_);
	_tmp26_ = _tmp25_;
	if (_tmp26_) {
		gtk_widget_add_css_class ((GtkWidget*) self, "lww-scale-emoji-hover");
	}
	_tmp27_ = tuba_settings;
	g_signal_connect_object ((GObject*) _tmp27_, "notify::status-font-size", (GCallback) _tuba_widgets_status_font_size_updated_g_object_notify, self, 0);
	_tmp28_ = tuba_settings;
	g_signal_connect_object ((GObject*) _tmp28_, "notify::larger-line-height", (GCallback) _tuba_widgets_status_settings_updated_g_object_notify, self, 0);
	_tmp29_ = tuba_settings;
	g_signal_connect_object ((GObject*) _tmp29_, "notify::scale-emoji-hover", (GCallback) _tuba_widgets_status_settings_updated_g_object_notify, self, 0);
	_tmp30_ = tuba_settings;
	g_signal_connect_object ((GObject*) _tmp30_, "notify::collapse-long-posts", (GCallback) _tuba_widgets_status_update_collapse_g_object_notify, self, 0);
	_tmp31_ = tuba_app;
	g_signal_connect_object ((GObject*) _tmp31_, "notify::is-mobile", (GCallback) _tuba_widgets_status_on_mobile_size_g_object_notify, self, 0);
	tuba_widgets_status_on_mobile_size (self);
	_tmp32_ = g_simple_action_new ("edit-history", NULL);
	_g_object_unref0 (self->priv->edit_history_simple_action);
	self->priv->edit_history_simple_action = _tmp32_;
	_tmp33_ = self->priv->edit_history_simple_action;
	g_signal_connect_object (_tmp33_, "activate", (GCallback) _tuba_widgets_status_view_edit_history_g_simple_action_activate, self, 0);
	_tmp34_ = g_simple_action_new ("status-stats", NULL);
	_g_object_unref0 (self->priv->stats_simple_action);
	self->priv->stats_simple_action = _tmp34_;
	_tmp35_ = self->priv->stats_simple_action;
	g_signal_connect_object (_tmp35_, "activate", (GCallback) _tuba_widgets_status_view_stats_g_simple_action_activate, self, 0);
	_tmp36_ = g_simple_action_group_new ();
	_g_object_unref0 (self->priv->action_group);
	self->priv->action_group = _tmp36_;
	_tmp37_ = self->priv->action_group;
	g_action_map_add_action_entries ((GActionMap*) _tmp37_, TUBA_WIDGETS_STATUS_ACTION_ENTRIES, (gint) G_N_ELEMENTS (TUBA_WIDGETS_STATUS_ACTION_ENTRIES), self);
	_tmp38_ = self->priv->action_group;
	_tmp39_ = self->priv->stats_simple_action;
	g_action_map_add_action ((GActionMap*) _tmp38_, (GAction*) _tmp39_);
	_tmp40_ = self->priv->action_group;
	_tmp41_ = self->priv->edit_history_simple_action;
	g_action_map_add_action ((GActionMap*) _tmp40_, (GAction*) _tmp41_);
	_tmp42_ = self->priv->action_group;
	gtk_widget_insert_action_group ((GtkWidget*) self, "status", (GActionGroup*) _tmp42_);
	_tmp43_ = self->priv->stats_simple_action;
	g_simple_action_set_enabled (_tmp43_, FALSE);
	_tmp44_ = self->name_button;
	g_signal_connect_object (_tmp44_, "clicked", (GCallback) _tuba_widgets_status_on_name_button_clicked_gtk_button_clicked, self, 0);
	tuba_widgets_status_update_collapse (self);
	return obj;
}

static void
tuba_widgets_status_class_init (TubaWidgetsStatusClass * klass,
                                gpointer klass_data)
{
	tuba_widgets_status_parent_class = g_type_class_peek_parent (klass);
	g_type_class_adjust_private_offset (klass, &TubaWidgetsStatus_private_offset);
	((TubaWidgetsStatusClass *) klass)->on_open = (void (*) (TubaWidgetsStatus*)) tuba_widgets_status_real_on_open;
	((TubaWidgetsStatusClass *) klass)->change_kind = (void (*) (TubaWidgetsStatus*)) tuba_widgets_status_real_change_kind;
	((TubaWidgetsStatusClass *) klass)->bind = (void (*) (TubaWidgetsStatus*)) tuba_widgets_status_real_bind;
	((GtkWidgetClass *) klass)->snapshot = (void (*) (GtkWidget*, GtkSnapshot*)) tuba_widgets_status_real_snapshot;
	G_OBJECT_CLASS (klass)->get_property = _vala_tuba_widgets_status_get_property;
	G_OBJECT_CLASS (klass)->set_property = _vala_tuba_widgets_status_set_property;
	G_OBJECT_CLASS (klass)->constructor = tuba_widgets_status_constructor;
	G_OBJECT_CLASS (klass)->finalize = tuba_widgets_status_finalize;
	g_object_class_install_property (G_OBJECT_CLASS (klass), TUBA_WIDGETS_STATUS_STATUS_PROPERTY, tuba_widgets_status_properties[TUBA_WIDGETS_STATUS_STATUS_PROPERTY] = g_param_spec_object ("status", "status", "status", TUBA_API_TYPE_STATUS, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), TUBA_WIDGETS_STATUS_KIND_INSTIGATOR_PROPERTY, tuba_widgets_status_properties[TUBA_WIDGETS_STATUS_KIND_INSTIGATOR_PROPERTY] = g_param_spec_object ("kind-instigator", "kind-instigator", "kind-instigator", TUBA_API_TYPE_ACCOUNT, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), TUBA_WIDGETS_STATUS_TRANSLATION_PROPERTY, tuba_widgets_status_properties[TUBA_WIDGETS_STATUS_TRANSLATION_PROPERTY] = g_param_spec_object ("translation", "translation", "translation", TUBA_API_TYPE_TRANSLATION, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), TUBA_WIDGETS_STATUS_OTHER_DATA_PROPERTY, tuba_widgets_status_properties[TUBA_WIDGETS_STATUS_OTHER_DATA_PROPERTY] = g_param_spec_string ("other-data", "other-data", "other-data", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), TUBA_WIDGETS_STATUS_ENABLE_THREAD_LINES_PROPERTY, tuba_widgets_status_properties[TUBA_WIDGETS_STATUS_ENABLE_THREAD_LINES_PROPERTY] = g_param_spec_boolean ("enable-thread-lines", "enable-thread-lines", "enable-thread-lines", FALSE, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), TUBA_WIDGETS_STATUS_CAN_BE_OPENED_PROPERTY, tuba_widgets_status_properties[TUBA_WIDGETS_STATUS_CAN_BE_OPENED_PROPERTY] = g_param_spec_boolean ("can-be-opened", "can-be-opened", "can-be-opened", FALSE, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), TUBA_WIDGETS_STATUS_IS_QUOTE_PROPERTY, tuba_widgets_status_properties[TUBA_WIDGETS_STATUS_IS_QUOTE_PROPERTY] = g_param_spec_boolean ("is-quote", "is-quote", "is-quote", FALSE, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), TUBA_WIDGETS_STATUS_KIND_PROPERTY, tuba_widgets_status_properties[TUBA_WIDGETS_STATUS_KIND_PROPERTY] = g_param_spec_string ("kind", "kind", "kind", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), TUBA_WIDGETS_STATUS_CHANGE_BACKGROUND_ON_DIRECT_PROPERTY, tuba_widgets_status_properties[TUBA_WIDGETS_STATUS_CHANGE_BACKGROUND_ON_DIRECT_PROPERTY] = g_param_spec_boolean ("change-background-on-direct", "change-background-on-direct", "change-background-on-direct", FALSE, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), TUBA_WIDGETS_STATUS_CONTEXT_MENU_PROPERTY, tuba_widgets_status_properties[TUBA_WIDGETS_STATUS_CONTEXT_MENU_PROPERTY] = g_param_spec_object ("context-menu", "context-menu", "context-menu", gtk_popover_menu_get_type (), G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), TUBA_WIDGETS_STATUS_SPOILER_TEXT_PROPERTY, tuba_widgets_status_properties[TUBA_WIDGETS_STATUS_SPOILER_TEXT_PROPERTY] = g_param_spec_string ("spoiler-text", "spoiler-text", "spoiler-text", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), TUBA_WIDGETS_STATUS_SPOILER_TEXT_REVEALED_PROPERTY, tuba_widgets_status_properties[TUBA_WIDGETS_STATUS_SPOILER_TEXT_REVEALED_PROPERTY] = g_param_spec_string ("spoiler-text-revealed", "spoiler-text-revealed", "spoiler-text-revealed", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), TUBA_WIDGETS_STATUS_DATE_PROPERTY, tuba_widgets_status_properties[TUBA_WIDGETS_STATUS_DATE_PROPERTY] = g_param_spec_string ("date", "date", "date", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), TUBA_WIDGETS_STATUS_FULL_DATE_PROPERTY, tuba_widgets_status_properties[TUBA_WIDGETS_STATUS_FULL_DATE_PROPERTY] = g_param_spec_string ("full-date", "full-date", "full-date", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), TUBA_WIDGETS_STATUS_TITLE_TEXT_PROPERTY, tuba_widgets_status_properties[TUBA_WIDGETS_STATUS_TITLE_TEXT_PROPERTY] = g_param_spec_string ("title-text", "title-text", "title-text", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), TUBA_WIDGETS_STATUS_SUBTITLE_TEXT_PROPERTY, tuba_widgets_status_properties[TUBA_WIDGETS_STATUS_SUBTITLE_TEXT_PROPERTY] = g_param_spec_string ("subtitle-text", "subtitle-text", "subtitle-text", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	g_object_class_install_property (G_OBJECT_CLASS (klass), TUBA_WIDGETS_STATUS_AVATAR_URL_PROPERTY, tuba_widgets_status_properties[TUBA_WIDGETS_STATUS_AVATAR_URL_PROPERTY] = g_param_spec_string ("avatar-url", "avatar-url", "avatar-url", NULL, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
	gtk_widget_class_set_template_from_resource (GTK_WIDGET_CLASS (klass), "/dev/geopjr/Tuba/ui/widgets/status.ui");
	tuba_widgets_status_signals[TUBA_WIDGETS_STATUS_PIN_CHANGED_SIGNAL] = g_signal_new ("pin-changed", TUBA_WIDGETS_TYPE_STATUS, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
	tuba_widgets_status_signals[TUBA_WIDGETS_STATUS_OPEN_SIGNAL] = g_signal_new ("open", TUBA_WIDGETS_TYPE_STATUS, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "status_box", FALSE, G_STRUCT_OFFSET (TubaWidgetsStatus, status_box));
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "avatar_side", FALSE, G_STRUCT_OFFSET (TubaWidgetsStatus, avatar_side));
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "title_box", FALSE, G_STRUCT_OFFSET (TubaWidgetsStatus, title_box));
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "content_side", FALSE, G_STRUCT_OFFSET (TubaWidgetsStatus, content_side));
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "name_wrapbox", FALSE, G_STRUCT_OFFSET (TubaWidgetsStatus, name_wrapbox));
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "menu_button", FALSE, G_STRUCT_OFFSET (TubaWidgetsStatus, menu_button));
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "header_icon", FALSE, G_STRUCT_OFFSET (TubaWidgetsStatus, header_icon));
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "header_label", FALSE, G_STRUCT_OFFSET (TubaWidgetsStatus, header_label));
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "header_button", FALSE, G_STRUCT_OFFSET (TubaWidgetsStatus, header_button));
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "avatar", FALSE, G_STRUCT_OFFSET (TubaWidgetsStatus, avatar));
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "avatar_overlay", FALSE, G_STRUCT_OFFSET (TubaWidgetsStatus, avatar_overlay));
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "name_button", FALSE, G_STRUCT_OFFSET (TubaWidgetsStatus, name_button));
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "name_label", FALSE, G_STRUCT_OFFSET (TubaWidgetsStatus, name_label));
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "handle_label", FALSE, G_STRUCT_OFFSET (TubaWidgetsStatus, handle_label));
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "indicators", FALSE, G_STRUCT_OFFSET (TubaWidgetsStatus, indicators));
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "date_label", FALSE, G_STRUCT_OFFSET (TubaWidgetsStatus, date_label));
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "pin_indicator", FALSE, G_STRUCT_OFFSET (TubaWidgetsStatus, pin_indicator));
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "edited_indicator", FALSE, G_STRUCT_OFFSET (TubaWidgetsStatus, edited_indicator));
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "visibility_indicator", FALSE, G_STRUCT_OFFSET (TubaWidgetsStatus, visibility_indicator));
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "content_column", FALSE, G_STRUCT_OFFSET (TubaWidgetsStatus, content_column));
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "spoiler_stack", FALSE, G_STRUCT_OFFSET (TubaWidgetsStatus, spoiler_stack));
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "content_box", FALSE, G_STRUCT_OFFSET (TubaWidgetsStatus, content_box));
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "content", FALSE, G_STRUCT_OFFSET (TubaWidgetsStatus, content));
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "spoiler_button", FALSE, G_STRUCT_OFFSET (TubaWidgetsStatus, spoiler_button));
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "spoiler_label", FALSE, G_STRUCT_OFFSET (TubaWidgetsStatus, spoiler_label));
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "spoiler_label_rev", FALSE, G_STRUCT_OFFSET (TubaWidgetsStatus, spoiler_label_rev));
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "spoiler_status_con", FALSE, G_STRUCT_OFFSET (TubaWidgetsStatus, spoiler_status_con));
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "fade_bin", FALSE, G_STRUCT_OFFSET (TubaWidgetsStatus, fade_bin));
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "filter_stack", FALSE, G_STRUCT_OFFSET (TubaWidgetsStatus, filter_stack));
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "filter_label", FALSE, G_STRUCT_OFFSET (TubaWidgetsStatus, filter_label));
	gtk_widget_class_bind_template_child_full (GTK_WIDGET_CLASS (klass), "filter_author_label", FALSE, G_STRUCT_OFFSET (TubaWidgetsStatus, filter_author_label));
	gtk_widget_class_bind_template_callback_full (GTK_WIDGET_CLASS (klass), "on_fade_reveal", G_CALLBACK(_tuba_widgets_status_on_fade_reveal_gtk_button_clicked));
	gtk_widget_class_bind_template_callback_full (GTK_WIDGET_CLASS (klass), "toggle_spoiler", G_CALLBACK(_tuba_widgets_status_toggle_spoiler_gtk_button_clicked));
	gtk_widget_class_bind_template_callback_full (GTK_WIDGET_CLASS (klass), "toggle_filter", G_CALLBACK(_tuba_widgets_status_toggle_filter_gtk_button_clicked));
	gtk_widget_class_bind_template_callback_full (GTK_WIDGET_CLASS (klass), "on_avatar_clicked", G_CALLBACK(_tuba_widgets_status_on_avatar_clicked_tuba_widgets_avatar_mini_clicked));
	g_type_ensure (TUBA_WIDGETS_TYPE_AVATAR);
	g_type_ensure (TUBA_WIDGETS_TYPE_RICH_LABEL);
	g_type_ensure (TUBA_WIDGETS_TYPE_MARKUP_VIEW);
	g_type_ensure (TUBA_WIDGETS_TYPE_FADE_BIN);
}

static void
tuba_widgets_status_instance_init (TubaWidgetsStatus * self,
                                   gpointer klass)
{
	gchar* _tmp0_;
	gulong* _tmp1_;
	gulong* _tmp2_;
	GBinding** _tmp3_;
	self->priv = tuba_widgets_status_get_instance_private (self);
	self->priv->_bound_status = NULL;
	self->priv->_kind_instigator = NULL;
	self->priv->_quoted_status_btn = NULL;
	self->priv->_quote_warning = NULL;
	self->priv->_translation = NULL;
	self->priv->_emoji_reactions = NULL;
	self->priv->_other_data = NULL;
	self->priv->_enable_thread_lines = FALSE;
	self->priv->_can_be_opened = TRUE;
	self->priv->_is_quote = FALSE;
	self->priv->_kind = NULL;
	self->priv->_change_background_on_direct = TRUE;
	self->priv->mute_conversation_action = NULL;
	self->priv->unmute_conversation_action = NULL;
	self->priv->change_quote_policy_action = NULL;
	_tmp0_ = g_strdup (_ ("Sensitive"));
	self->priv->_spoiler_text_revealed = _tmp0_;
	self->priv->actor_avatar = NULL;
	self->priv->header_kind_url = NULL;
	self->poll = NULL;
	self->priv->local_only_indicator = NULL;
	_tmp1_ = g_new0 (gulong, 0);
	self->priv->formal_handler_ids = _tmp1_;
	self->priv->formal_handler_ids_length1 = 0;
	self->priv->_formal_handler_ids_size_ = self->priv->formal_handler_ids_length1;
	_tmp2_ = g_new0 (gulong, 0);
	self->priv->this_handler_ids = _tmp2_;
	self->priv->this_handler_ids_length1 = 0;
	self->priv->_this_handler_ids_size_ = self->priv->this_handler_ids_length1;
	_tmp3_ = g_new0 (GBinding*, 0 + 1);
	self->priv->bindings = _tmp3_;
	self->priv->bindings_length1 = 0;
	self->priv->_bindings_size_ = self->priv->bindings_length1;
	self->priv->expanded = FALSE;
	g_type_ensure (TUBA_WIDGETS_TYPE_RICH_LABEL);
	g_type_ensure (TUBA_WIDGETS_TYPE_AVATAR);
	g_type_ensure (TUBA_WIDGETS_TYPE_RICH_LABEL);
	g_type_ensure (TUBA_WIDGETS_TYPE_MARKUP_VIEW);
	g_type_ensure (TUBA_WIDGETS_TYPE_FADE_BIN);
	gtk_widget_init_template (GTK_WIDGET (self));
}

static void
tuba_widgets_status_finalize (GObject * obj)
{
	TubaWidgetsStatus * self;
	GtkPopoverMenu* _tmp0_;
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, TUBA_WIDGETS_TYPE_STATUS, TubaWidgetsStatus);
	g_debug ("Status.vala:301: Destroying Status widget");
	_tmp0_ = self->priv->_context_menu;
	if (_tmp0_ != NULL) {
		GtkPopoverMenu* _tmp1_;
		GtkPopoverMenu* _tmp2_;
		_tmp1_ = self->priv->_context_menu;
		gtk_popover_menu_set_menu_model (_tmp1_, NULL);
		_tmp2_ = self->priv->_context_menu;
		g_object_run_dispose ((GObject*) _tmp2_);
	}
	_g_object_unref0 (self->priv->_bound_status);
	_g_object_unref0 (self->priv->_kind_instigator);
	_g_object_unref0 (self->priv->_quoted_status_btn);
	_g_object_unref0 (self->priv->_quote_warning);
	_g_object_unref0 (self->priv->_translation);
	_g_object_unref0 (self->priv->_emoji_reactions);
	_g_free0 (self->priv->_other_data);
	_g_free0 (self->priv->_kind);
	(self->reply_cb_target_destroy_notify == NULL) ? NULL : (self->reply_cb_target_destroy_notify (self->reply_cb_target), NULL);
	self->reply_cb = NULL;
	self->reply_cb_target = NULL;
	self->reply_cb_target_destroy_notify = NULL;
	_g_object_unref0 (self->priv->_actions);
	_g_object_unref0 (self->priv->_context_menu);
	_g_object_unref0 (self->priv->action_group);
	_g_object_unref0 (self->priv->edit_history_simple_action);
	_g_object_unref0 (self->priv->stats_simple_action);
	_g_object_unref0 (self->priv->toggle_pinned_simple_action);
	_g_object_unref0 (self->priv->translate_simple_action);
	_g_object_unref0 (self->priv->show_original_simple_action);
	_g_object_unref0 (self->priv->mute_conversation_action);
	_g_object_unref0 (self->priv->unmute_conversation_action);
	_g_object_unref0 (self->priv->change_quote_policy_action);
	_g_object_unref0 (self->priv->pin_menu_item);
	_g_free0 (self->priv->_spoiler_text_revealed);
	_g_free0 (self->priv->forced_kind_instigator_name);
	_g_object_unref0 (self->priv->actor_avatar);
	_g_object_unref0 (self->priv->actor_avatar_binding);
	_g_free0 (self->priv->header_kind_url);
	_g_object_unref0 (self->priv->hashtag_bar);
	_g_object_unref0 (self->prev_card);
	_g_object_unref0 (self->priv->collection_card);
	_g_object_unref0 (self->priv->attachments);
	_g_object_unref0 (self->priv->translation_label);
	_g_object_unref0 (self->poll);
	_g_object_unref0 (self->priv->local_only_indicator);
	self->priv->formal_handler_ids = (g_free (self->priv->formal_handler_ids), NULL);
	self->priv->this_handler_ids = (g_free (self->priv->this_handler_ids), NULL);
	self->priv->bindings = (_vala_array_free (self->priv->bindings, self->priv->bindings_length1, (GDestroyNotify) g_object_unref), NULL);
	G_OBJECT_CLASS (tuba_widgets_status_parent_class)->finalize (obj);
}

 G_GNUC_NO_INLINE static GType
tuba_widgets_status_get_type_once (void)
{
	static const GTypeInfo g_define_type_info = { sizeof (TubaWidgetsStatusClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) tuba_widgets_status_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (TubaWidgetsStatus), 0, (GInstanceInitFunc) tuba_widgets_status_instance_init, NULL };
	GType tuba_widgets_status_type_id;
	tuba_widgets_status_type_id = g_type_register_static (gtk_list_box_row_get_type (), "TubaWidgetsStatus", &g_define_type_info, G_TYPE_FLAG_NONE);
	TubaWidgetsStatus_private_offset = g_type_add_instance_private (tuba_widgets_status_type_id, sizeof (TubaWidgetsStatusPrivate));
	return tuba_widgets_status_type_id;
}

GType
tuba_widgets_status_get_type (void)
{
	static GType tuba_widgets_status_type_id__once = 0;
	if (g_once_init_enter_pointer (&tuba_widgets_status_type_id__once)) {
		GType tuba_widgets_status_type_id;
		tuba_widgets_status_type_id = tuba_widgets_status_get_type_once ();
		g_once_init_leave_pointer (&tuba_widgets_status_type_id__once, tuba_widgets_status_type_id);
	}
	return tuba_widgets_status_type_id__once;
}

static void
_vala_tuba_widgets_status_get_property (GObject * object,
                                        guint property_id,
                                        GValue * value,
                                        GParamSpec * pspec)
{
	TubaWidgetsStatus * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, TUBA_WIDGETS_TYPE_STATUS, TubaWidgetsStatus);
	switch (property_id) {
		case TUBA_WIDGETS_STATUS_STATUS_PROPERTY:
		g_value_set_object (value, tuba_widgets_status_get_status (self));
		break;
		case TUBA_WIDGETS_STATUS_KIND_INSTIGATOR_PROPERTY:
		g_value_set_object (value, tuba_widgets_status_get_kind_instigator (self));
		break;
		case TUBA_WIDGETS_STATUS_TRANSLATION_PROPERTY:
		g_value_set_object (value, tuba_widgets_status_get_translation (self));
		break;
		case TUBA_WIDGETS_STATUS_OTHER_DATA_PROPERTY:
		g_value_set_string (value, tuba_widgets_status_get_other_data (self));
		break;
		case TUBA_WIDGETS_STATUS_ENABLE_THREAD_LINES_PROPERTY:
		g_value_set_boolean (value, tuba_widgets_status_get_enable_thread_lines (self));
		break;
		case TUBA_WIDGETS_STATUS_CAN_BE_OPENED_PROPERTY:
		g_value_set_boolean (value, tuba_widgets_status_get_can_be_opened (self));
		break;
		case TUBA_WIDGETS_STATUS_IS_QUOTE_PROPERTY:
		g_value_set_boolean (value, tuba_widgets_status_get_is_quote (self));
		break;
		case TUBA_WIDGETS_STATUS_KIND_PROPERTY:
		g_value_set_string (value, tuba_widgets_status_get_kind (self));
		break;
		case TUBA_WIDGETS_STATUS_CHANGE_BACKGROUND_ON_DIRECT_PROPERTY:
		g_value_set_boolean (value, tuba_widgets_status_get_change_background_on_direct (self));
		break;
		case TUBA_WIDGETS_STATUS_CONTEXT_MENU_PROPERTY:
		g_value_set_object (value, tuba_widgets_status_get_context_menu (self));
		break;
		case TUBA_WIDGETS_STATUS_SPOILER_TEXT_PROPERTY:
		g_value_take_string (value, tuba_widgets_status_get_spoiler_text (self));
		break;
		case TUBA_WIDGETS_STATUS_SPOILER_TEXT_REVEALED_PROPERTY:
		g_value_set_string (value, tuba_widgets_status_get_spoiler_text_revealed (self));
		break;
		case TUBA_WIDGETS_STATUS_DATE_PROPERTY:
		g_value_take_string (value, tuba_widgets_status_get_date (self));
		break;
		case TUBA_WIDGETS_STATUS_FULL_DATE_PROPERTY:
		g_value_set_string (value, tuba_widgets_status_get_full_date (self));
		break;
		case TUBA_WIDGETS_STATUS_TITLE_TEXT_PROPERTY:
		g_value_take_string (value, tuba_widgets_status_get_title_text (self));
		break;
		case TUBA_WIDGETS_STATUS_SUBTITLE_TEXT_PROPERTY:
		g_value_take_string (value, tuba_widgets_status_get_subtitle_text (self));
		break;
		case TUBA_WIDGETS_STATUS_AVATAR_URL_PROPERTY:
		g_value_take_string (value, tuba_widgets_status_get_avatar_url (self));
		break;
		default:
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
		break;
	}
}

static void
_vala_tuba_widgets_status_set_property (GObject * object,
                                        guint property_id,
                                        const GValue * value,
                                        GParamSpec * pspec)
{
	TubaWidgetsStatus * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, TUBA_WIDGETS_TYPE_STATUS, TubaWidgetsStatus);
	switch (property_id) {
		case TUBA_WIDGETS_STATUS_STATUS_PROPERTY:
		tuba_widgets_status_set_status (self, g_value_get_object (value));
		break;
		case TUBA_WIDGETS_STATUS_KIND_INSTIGATOR_PROPERTY:
		tuba_widgets_status_set_kind_instigator (self, g_value_get_object (value));
		break;
		case TUBA_WIDGETS_STATUS_TRANSLATION_PROPERTY:
		tuba_widgets_status_set_translation (self, g_value_get_object (value));
		break;
		case TUBA_WIDGETS_STATUS_OTHER_DATA_PROPERTY:
		tuba_widgets_status_set_other_data (self, g_value_get_string (value));
		break;
		case TUBA_WIDGETS_STATUS_ENABLE_THREAD_LINES_PROPERTY:
		tuba_widgets_status_set_enable_thread_lines (self, g_value_get_boolean (value));
		break;
		case TUBA_WIDGETS_STATUS_CAN_BE_OPENED_PROPERTY:
		tuba_widgets_status_set_can_be_opened (self, g_value_get_boolean (value));
		break;
		case TUBA_WIDGETS_STATUS_IS_QUOTE_PROPERTY:
		tuba_widgets_status_set_is_quote (self, g_value_get_boolean (value));
		break;
		case TUBA_WIDGETS_STATUS_KIND_PROPERTY:
		tuba_widgets_status_set_kind (self, g_value_get_string (value));
		break;
		case TUBA_WIDGETS_STATUS_CHANGE_BACKGROUND_ON_DIRECT_PROPERTY:
		tuba_widgets_status_set_change_background_on_direct (self, g_value_get_boolean (value));
		break;
		case TUBA_WIDGETS_STATUS_CONTEXT_MENU_PROPERTY:
		tuba_widgets_status_set_context_menu (self, g_value_get_object (value));
		break;
		case TUBA_WIDGETS_STATUS_SPOILER_TEXT_REVEALED_PROPERTY:
		tuba_widgets_status_set_spoiler_text_revealed (self, g_value_get_string (value));
		break;
		default:
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
		break;
	}
}

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

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

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

