/* gitg-diff-view-request-diff.c generated by valac 0.27.1.26-9b1a5-dirty, the Vala compiler
 * generated from gitg-diff-view-request-diff.vala, do not modify */

/*
 * This file is part of gitg
 *
 * Copyright (C) 2012 - Jesse van den Kieboom
 *
 * gitg is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version.
 *
 * gitg is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with gitg. If not, see <http://www.gnu.org/licenses/>.
 */

#include <glib.h>
#include <glib-object.h>
#include <gio/gio.h>
#include <stdlib.h>
#include <string.h>
#include <webkit2/webkit2.h>
#include <libsoup/soup.h>
#include <libgit2-glib/ggit.h>
#include <json-glib/json-glib.h>
#include <float.h>
#include <math.h>
#include <gobject/gvaluecollector.h>


#define GITG_TYPE_DIFF_VIEW_REQUEST (gitg_diff_view_request_get_type ())
#define GITG_DIFF_VIEW_REQUEST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GITG_TYPE_DIFF_VIEW_REQUEST, GitgDiffViewRequest))
#define GITG_DIFF_VIEW_REQUEST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GITG_TYPE_DIFF_VIEW_REQUEST, GitgDiffViewRequestClass))
#define GITG_IS_DIFF_VIEW_REQUEST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GITG_TYPE_DIFF_VIEW_REQUEST))
#define GITG_IS_DIFF_VIEW_REQUEST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GITG_TYPE_DIFF_VIEW_REQUEST))
#define GITG_DIFF_VIEW_REQUEST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GITG_TYPE_DIFF_VIEW_REQUEST, GitgDiffViewRequestClass))

typedef struct _GitgDiffViewRequest GitgDiffViewRequest;
typedef struct _GitgDiffViewRequestClass GitgDiffViewRequestClass;
typedef struct _GitgDiffViewRequestPrivate GitgDiffViewRequestPrivate;

#define GITG_TYPE_DIFF_VIEW (gitg_diff_view_get_type ())
#define GITG_DIFF_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GITG_TYPE_DIFF_VIEW, GitgDiffView))
#define GITG_DIFF_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GITG_TYPE_DIFF_VIEW, GitgDiffViewClass))
#define GITG_IS_DIFF_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GITG_TYPE_DIFF_VIEW))
#define GITG_IS_DIFF_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GITG_TYPE_DIFF_VIEW))
#define GITG_DIFF_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GITG_TYPE_DIFF_VIEW, GitgDiffViewClass))

typedef struct _GitgDiffView GitgDiffView;
typedef struct _GitgDiffViewClass GitgDiffViewClass;

#define GITG_TYPE_DIFF_VIEW_REQUEST_DIFF (gitg_diff_view_request_diff_get_type ())
#define GITG_DIFF_VIEW_REQUEST_DIFF(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GITG_TYPE_DIFF_VIEW_REQUEST_DIFF, GitgDiffViewRequestDiff))
#define GITG_DIFF_VIEW_REQUEST_DIFF_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GITG_TYPE_DIFF_VIEW_REQUEST_DIFF, GitgDiffViewRequestDiffClass))
#define GITG_IS_DIFF_VIEW_REQUEST_DIFF(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GITG_TYPE_DIFF_VIEW_REQUEST_DIFF))
#define GITG_IS_DIFF_VIEW_REQUEST_DIFF_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GITG_TYPE_DIFF_VIEW_REQUEST_DIFF))
#define GITG_DIFF_VIEW_REQUEST_DIFF_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GITG_TYPE_DIFF_VIEW_REQUEST_DIFF, GitgDiffViewRequestDiffClass))

typedef struct _GitgDiffViewRequestDiff GitgDiffViewRequestDiff;
typedef struct _GitgDiffViewRequestDiffClass GitgDiffViewRequestDiffClass;
typedef struct _GitgDiffViewRequestDiffPrivate GitgDiffViewRequestDiffPrivate;

#define GITG_DIFF_VIEW_REQUEST_DIFF_TYPE_DIFF_TYPE (gitg_diff_view_request_diff_diff_type_get_type ())

#define GITG_TYPE_COMMIT (gitg_commit_get_type ())
#define GITG_COMMIT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GITG_TYPE_COMMIT, GitgCommit))
#define GITG_COMMIT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GITG_TYPE_COMMIT, GitgCommitClass))
#define GITG_IS_COMMIT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GITG_TYPE_COMMIT))
#define GITG_IS_COMMIT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GITG_TYPE_COMMIT))
#define GITG_COMMIT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GITG_TYPE_COMMIT, GitgCommitClass))

typedef struct _GitgCommit GitgCommit;
typedef struct _GitgCommitClass GitgCommitClass;
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
#define _g_free0(var) (var = (g_free (var), NULL))

#define GITG_DIFF_VIEW_REQUEST_DIFF_TYPE_DIFF_STATE (gitg_diff_view_request_diff_diff_state_get_type ())
#define GITG_DIFF_VIEW_REQUEST_DIFF_DIFF_STATE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GITG_DIFF_VIEW_REQUEST_DIFF_TYPE_DIFF_STATE, GitgDiffViewRequestDiffDiffState))
#define GITG_DIFF_VIEW_REQUEST_DIFF_DIFF_STATE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GITG_DIFF_VIEW_REQUEST_DIFF_TYPE_DIFF_STATE, GitgDiffViewRequestDiffDiffStateClass))
#define GITG_DIFF_VIEW_REQUEST_DIFF_IS_DIFF_STATE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GITG_DIFF_VIEW_REQUEST_DIFF_TYPE_DIFF_STATE))
#define GITG_DIFF_VIEW_REQUEST_DIFF_IS_DIFF_STATE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GITG_DIFF_VIEW_REQUEST_DIFF_TYPE_DIFF_STATE))
#define GITG_DIFF_VIEW_REQUEST_DIFF_DIFF_STATE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GITG_DIFF_VIEW_REQUEST_DIFF_TYPE_DIFF_STATE, GitgDiffViewRequestDiffDiffStateClass))

typedef struct _GitgDiffViewRequestDiffDiffState GitgDiffViewRequestDiffDiffState;
typedef struct _GitgDiffViewRequestDiffDiffStateClass GitgDiffViewRequestDiffDiffStateClass;
typedef struct _GitgDiffViewRequestDiffDiffStatePrivate GitgDiffViewRequestDiffDiffStatePrivate;
#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 __vala_GgitOId_free0(var) ((var == NULL) ? NULL : (var = (_vala_GgitOId_free (var), NULL)))
#define _ggit_note_unref0(var) ((var == NULL) ? NULL : (var = (ggit_note_unref (var), NULL)))
typedef struct _Block5Data Block5Data;
#define _gitg_diff_view_request_diff_diff_state_unref0(var) ((var == NULL) ? NULL : (var = (gitg_diff_view_request_diff_diff_state_unref (var), NULL)))
#define _gitg_diff_view_request_unref0(var) ((var == NULL) ? NULL : (var = (gitg_diff_view_request_unref (var), NULL)))
typedef struct _GitgDiffViewRequestDiffParamSpecDiffState GitgDiffViewRequestDiffParamSpecDiffState;

struct _GitgDiffViewRequest {
	GTypeInstance parent_instance;
	volatile int ref_count;
	GitgDiffViewRequestPrivate * priv;
	GitgDiffView* d_view;
	SoupURI* d_uri;
	gchar* d_mimetype;
	gint64 d_size;
	WebKitURISchemeRequest* d_request;
	gboolean d_hasView;
};

struct _GitgDiffViewRequestClass {
	GTypeClass parent_class;
	void (*finalize) (GitgDiffViewRequest *self);
	GInputStream* (*run_async) (GitgDiffViewRequest* self, GCancellable* cancellable, GError** error);
	gint64 (*get_content_length) (GitgDiffViewRequest* self);
	gchar* (*get_content_type) (GitgDiffViewRequest* self);
};

struct _GitgDiffViewRequestDiff {
	GitgDiffViewRequest parent_instance;
	GitgDiffViewRequestDiffPrivate * priv;
};

struct _GitgDiffViewRequestDiffClass {
	GitgDiffViewRequestClass parent_class;
};

typedef enum  {
	GITG_DIFF_VIEW_REQUEST_DIFF_DIFF_TYPE_DEFAULT,
	GITG_DIFF_VIEW_REQUEST_DIFF_DIFF_TYPE_DIFF_ONLY,
	GITG_DIFF_VIEW_REQUEST_DIFF_DIFF_TYPE_COMMIT_ONLY
} GitgDiffViewRequestDiffDiffType;

struct _GitgDiffViewRequestDiffPrivate {
	GitgDiffViewRequestDiffDiffType d_diff_type;
	GgitDiff* d_diff;
	GitgCommit* d_commit;
};

struct _GitgDiffViewRequestDiffDiffState {
	GTypeInstance parent_instance;
	volatile int ref_count;
	GitgDiffViewRequestDiffDiffStatePrivate * priv;
	gboolean in_file;
	gboolean in_hunk;
};

struct _GitgDiffViewRequestDiffDiffStateClass {
	GTypeClass parent_class;
	void (*finalize) (GitgDiffViewRequestDiffDiffState *self);
};

struct _Block5Data {
	int _ref_count_;
	GitgDiffViewRequestDiff* self;
	GitgDiffViewRequestDiffDiffState* state;
	gint64 numlines;
	gint64 maxlines;
	JsonBuilder* builder;
	GCancellable* cancellable;
};

struct _GitgDiffViewRequestDiffParamSpecDiffState {
	GParamSpec parent_instance;
};


static gpointer gitg_diff_view_request_diff_parent_class = NULL;
static gpointer gitg_diff_view_request_diff_diff_state_parent_class = NULL;

gpointer gitg_diff_view_request_ref (gpointer instance);
void gitg_diff_view_request_unref (gpointer instance);
GParamSpec* gitg_param_spec_diff_view_request (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
void gitg_value_set_diff_view_request (GValue* value, gpointer v_object);
void gitg_value_take_diff_view_request (GValue* value, gpointer v_object);
gpointer gitg_value_get_diff_view_request (const GValue* value);
GType gitg_diff_view_request_get_type (void) G_GNUC_CONST;
GType gitg_diff_view_get_type (void) G_GNUC_CONST;
GType gitg_diff_view_request_diff_get_type (void) G_GNUC_CONST;
static GType gitg_diff_view_request_diff_diff_type_get_type (void) G_GNUC_CONST G_GNUC_UNUSED;
GType gitg_commit_get_type (void) G_GNUC_CONST;
#define GITG_DIFF_VIEW_REQUEST_DIFF_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), GITG_TYPE_DIFF_VIEW_REQUEST_DIFF, GitgDiffViewRequestDiffPrivate))
enum  {
	GITG_DIFF_VIEW_REQUEST_DIFF_DUMMY_PROPERTY
};
GitgDiffViewRequestDiff* gitg_diff_view_request_diff_new (GitgDiffView* view, WebKitURISchemeRequest* request, SoupURI* uri);
GitgDiffViewRequestDiff* gitg_diff_view_request_diff_construct (GType object_type, GitgDiffView* view, WebKitURISchemeRequest* request, SoupURI* uri);
GitgDiffViewRequest* gitg_diff_view_request_new (GitgDiffView* view, WebKitURISchemeRequest* request, SoupURI* uri);
GitgDiffViewRequest* gitg_diff_view_request_construct (GType object_type, GitgDiffView* view, WebKitURISchemeRequest* request, SoupURI* uri);
gboolean gitg_diff_view_request_get_has_view (GitgDiffViewRequest* self);
GitgCommit* gitg_diff_view_get_commit (GitgDiffView* self);
GgitDiff* gitg_diff_view_get_diff (GitgDiffView* self);
gchar* gitg_diff_view_request_parameter (GitgDiffViewRequest* self, const gchar* v);
static void gitg_diff_view_request_diff_file_to_json (GitgDiffViewRequestDiff* self, JsonBuilder* builder, GgitDiffFile* file);
static void gitg_diff_view_request_diff_range_to_json (GitgDiffViewRequestDiff* self, JsonBuilder* builder, gint start, gint lines);
static gpointer gitg_diff_view_request_diff_diff_state_ref (gpointer instance);
static void gitg_diff_view_request_diff_diff_state_unref (gpointer instance);
static GParamSpec* gitg_diff_view_request_diff_param_spec_diff_state (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags) G_GNUC_UNUSED;
static void gitg_diff_view_request_diff_value_set_diff_state (GValue* value, gpointer v_object) G_GNUC_UNUSED;
static void gitg_diff_view_request_diff_value_take_diff_state (GValue* value, gpointer v_object) G_GNUC_UNUSED;
static gpointer gitg_diff_view_request_diff_value_get_diff_state (const GValue* value) G_GNUC_UNUSED;
static GType gitg_diff_view_request_diff_diff_state_get_type (void) G_GNUC_CONST G_GNUC_UNUSED;
static void gitg_diff_view_request_diff_file_cb (GitgDiffViewRequestDiff* self, JsonBuilder* builder, GitgDiffViewRequestDiffDiffState* state, GgitDiffDelta* delta, gfloat progress);
static void gitg_diff_view_request_diff_hunk_cb (GitgDiffViewRequestDiff* self, JsonBuilder* builder, GitgDiffViewRequestDiffDiffState* state, GgitDiffDelta* delta, GgitDiffHunk* hunk, const gchar* header);
static void gitg_diff_view_request_diff_line_cb (GitgDiffViewRequestDiff* self, JsonBuilder* builder, GgitDiffDelta* delta, GgitDiffHunk* hunk, GgitDiffLine* line);
static guint8* _vala_array_dup8 (guint8* self, int length);
static void gitg_diff_view_request_diff_signature_to_json (GitgDiffViewRequestDiff* self, JsonBuilder* builder, GgitSignature* sig);
static void gitg_diff_view_request_diff_commit_to_json (GitgDiffViewRequestDiff* self, JsonBuilder* builder, GitgCommit* commit);
static void _vala_GgitOId_free (GgitOId* self);
GgitNote* gitg_commit_get_note (GitgCommit* self);
static void gitg_diff_view_request_diff_build_diff (GitgDiffViewRequestDiff* self, GgitDiff* diff, JsonBuilder* builder, GCancellable* cancellable, GError** error);
static Block5Data* block5_data_ref (Block5Data* _data5_);
static void block5_data_unref (void * _userdata_);
static GitgDiffViewRequestDiffDiffState* gitg_diff_view_request_diff_diff_state_new (void);
static GitgDiffViewRequestDiffDiffState* gitg_diff_view_request_diff_diff_state_construct (GType object_type);
static gint __lambda50_ (Block5Data* _data5_, GgitDiffDelta* delta, gfloat progress);
static gint ___lambda50__ggit_diff_file_callback (GgitDiffDelta* delta, gfloat progress, gpointer self);
static gint __lambda51_ (Block5Data* _data5_, GgitDiffDelta* delta, GgitDiffHunk* hunk);
static gint ___lambda51__ggit_diff_hunk_callback (GgitDiffDelta* delta, GgitDiffHunk* hunk, gpointer self);
static gint __lambda52_ (Block5Data* _data5_, GgitDiffDelta* delta, GgitDiffHunk* hunk, GgitDiffLine* line);
static gint ___lambda52__ggit_diff_line_callback (GgitDiffDelta* delta, GgitDiffHunk* hunk, GgitDiffLine* line, gpointer self);
static void gitg_diff_view_request_diff_build_commit (GitgDiffViewRequestDiff* self, GgitDiff* diff, JsonBuilder* builder, GCancellable* cancellable);
static GInputStream* gitg_diff_view_request_diff_run_diff (GitgDiffViewRequestDiff* self, GgitDiff* diff, GCancellable* cancellable, GError** error);
GInputStream* gitg_diff_view_request_json_to_stream (GitgDiffViewRequest* self, JsonBuilder* builder, GCancellable* cancellable, gint64* size, GError** error);
static GInputStream* gitg_diff_view_request_diff_real_run_async (GitgDiffViewRequest* base, GCancellable* cancellable, GError** error);
enum  {
	GITG_DIFF_VIEW_REQUEST_DIFF_DIFF_STATE_DUMMY_PROPERTY
};
static void gitg_diff_view_request_diff_diff_state_finalize (GitgDiffViewRequestDiffDiffState* obj);
static void gitg_diff_view_request_diff_finalize (GitgDiffViewRequest* obj);


static GType gitg_diff_view_request_diff_diff_type_get_type (void) {
	static volatile gsize gitg_diff_view_request_diff_diff_type_type_id__volatile = 0;
	if (g_once_init_enter (&gitg_diff_view_request_diff_diff_type_type_id__volatile)) {
		static const GEnumValue values[] = {{GITG_DIFF_VIEW_REQUEST_DIFF_DIFF_TYPE_DEFAULT, "GITG_DIFF_VIEW_REQUEST_DIFF_DIFF_TYPE_DEFAULT", "default"}, {GITG_DIFF_VIEW_REQUEST_DIFF_DIFF_TYPE_DIFF_ONLY, "GITG_DIFF_VIEW_REQUEST_DIFF_DIFF_TYPE_DIFF_ONLY", "diff-only"}, {GITG_DIFF_VIEW_REQUEST_DIFF_DIFF_TYPE_COMMIT_ONLY, "GITG_DIFF_VIEW_REQUEST_DIFF_DIFF_TYPE_COMMIT_ONLY", "commit-only"}, {0, NULL, NULL}};
		GType gitg_diff_view_request_diff_diff_type_type_id;
		gitg_diff_view_request_diff_diff_type_type_id = g_enum_register_static ("GitgDiffViewRequestDiffDiffType", values);
		g_once_init_leave (&gitg_diff_view_request_diff_diff_type_type_id__volatile, gitg_diff_view_request_diff_diff_type_type_id);
	}
	return gitg_diff_view_request_diff_diff_type_type_id__volatile;
}


static gpointer _g_object_ref0 (gpointer self) {
#line 43 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	return self ? g_object_ref (self) : NULL;
#line 252 "gitg-diff-view-request-diff.c"
}


GitgDiffViewRequestDiff* gitg_diff_view_request_diff_construct (GType object_type, GitgDiffView* view, WebKitURISchemeRequest* request, SoupURI* uri) {
	GitgDiffViewRequestDiff* self = NULL;
	GitgDiffView* _tmp0_ = NULL;
	WebKitURISchemeRequest* _tmp1_ = NULL;
	SoupURI* _tmp2_ = NULL;
	gchar* _tmp3_ = NULL;
	gboolean _tmp4_ = FALSE;
	gboolean _tmp5_ = FALSE;
	gchar* format = NULL;
	gchar* _tmp14_ = NULL;
	const gchar* _tmp15_ = NULL;
	const gchar* _tmp16_ = NULL;
	GQuark _tmp18_ = 0U;
#line 49 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	static GQuark _tmp17_label0 = 0;
#line 49 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	static GQuark _tmp17_label1 = 0;
#line 34 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_val_if_fail (request != NULL, NULL);
#line 34 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_val_if_fail (uri != NULL, NULL);
#line 36 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp0_ = view;
#line 36 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp1_ = request;
#line 36 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp2_ = uri;
#line 36 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	self = (GitgDiffViewRequestDiff*) gitg_diff_view_request_construct (object_type, _tmp0_, _tmp1_, _tmp2_);
#line 38 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp3_ = g_strdup ("application/json");
#line 38 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_g_free0 (((GitgDiffViewRequest*) self)->d_mimetype);
#line 38 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	((GitgDiffViewRequest*) self)->d_mimetype = _tmp3_;
#line 39 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	self->priv->d_diff_type = GITG_DIFF_VIEW_REQUEST_DIFF_DIFF_TYPE_DEFAULT;
#line 41 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp4_ = gitg_diff_view_request_get_has_view ((GitgDiffViewRequest*) self);
#line 41 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp5_ = _tmp4_;
#line 41 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (_tmp5_) {
#line 299 "gitg-diff-view-request-diff.c"
		GitgDiffView* _tmp6_ = NULL;
		GitgCommit* _tmp7_ = NULL;
		GitgCommit* _tmp8_ = NULL;
		GitgCommit* _tmp9_ = NULL;
		GitgDiffView* _tmp10_ = NULL;
		GgitDiff* _tmp11_ = NULL;
		GgitDiff* _tmp12_ = NULL;
		GgitDiff* _tmp13_ = NULL;
#line 43 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp6_ = ((GitgDiffViewRequest*) self)->d_view;
#line 43 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp7_ = gitg_diff_view_get_commit (_tmp6_);
#line 43 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp8_ = _tmp7_;
#line 43 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp9_ = _g_object_ref0 (_tmp8_);
#line 43 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_g_object_unref0 (self->priv->d_commit);
#line 43 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		self->priv->d_commit = _tmp9_;
#line 44 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp10_ = ((GitgDiffViewRequest*) self)->d_view;
#line 44 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp11_ = gitg_diff_view_get_diff (_tmp10_);
#line 44 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp12_ = _tmp11_;
#line 44 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp13_ = _g_object_ref0 (_tmp12_);
#line 44 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_g_object_unref0 (self->priv->d_diff);
#line 44 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		self->priv->d_diff = _tmp13_;
#line 332 "gitg-diff-view-request-diff.c"
	}
#line 47 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp14_ = gitg_diff_view_request_parameter ((GitgDiffViewRequest*) self, "format");
#line 47 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	format = _tmp14_;
#line 49 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp15_ = format;
#line 49 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp16_ = _tmp15_;
#line 49 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp18_ = (NULL == _tmp16_) ? 0 : g_quark_from_string (_tmp16_);
#line 49 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (_tmp18_ == ((0 != _tmp17_label0) ? _tmp17_label0 : (_tmp17_label0 = g_quark_from_static_string ("diff_only")))) {
#line 49 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		switch (0) {
#line 348 "gitg-diff-view-request-diff.c"
			default:
			{
#line 52 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
				self->priv->d_diff_type = GITG_DIFF_VIEW_REQUEST_DIFF_DIFF_TYPE_DIFF_ONLY;
#line 53 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
				break;
#line 355 "gitg-diff-view-request-diff.c"
			}
		}
	} else if (_tmp18_ == ((0 != _tmp17_label1) ? _tmp17_label1 : (_tmp17_label1 = g_quark_from_static_string ("commit_only")))) {
#line 49 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		switch (0) {
#line 361 "gitg-diff-view-request-diff.c"
			default:
			{
#line 55 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
				self->priv->d_diff_type = GITG_DIFF_VIEW_REQUEST_DIFF_DIFF_TYPE_COMMIT_ONLY;
#line 56 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
				break;
#line 368 "gitg-diff-view-request-diff.c"
			}
		}
	}
#line 34 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_g_free0 (format);
#line 34 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	return self;
#line 376 "gitg-diff-view-request-diff.c"
}


GitgDiffViewRequestDiff* gitg_diff_view_request_diff_new (GitgDiffView* view, WebKitURISchemeRequest* request, SoupURI* uri) {
#line 34 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	return gitg_diff_view_request_diff_construct (GITG_TYPE_DIFF_VIEW_REQUEST_DIFF, view, request, uri);
#line 383 "gitg-diff-view-request-diff.c"
}


static void gitg_diff_view_request_diff_file_to_json (GitgDiffViewRequestDiff* self, JsonBuilder* builder, GgitDiffFile* file) {
	JsonBuilder* _tmp0_ = NULL;
	JsonBuilder* _tmp17_ = NULL;
#line 60 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (self != NULL);
#line 60 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (builder != NULL);
#line 60 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (file != NULL);
#line 62 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp0_ = builder;
#line 62 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_begin_object (_tmp0_);
#line 400 "gitg-diff-view-request-diff.c"
	{
		JsonBuilder* _tmp1_ = NULL;
		JsonBuilder* _tmp2_ = NULL;
		GgitDiffFile* _tmp3_ = NULL;
		const gchar* _tmp4_ = NULL;
		JsonBuilder* _tmp5_ = NULL;
		JsonBuilder* _tmp6_ = NULL;
		GgitDiffFile* _tmp7_ = NULL;
		guint16 _tmp8_ = 0U;
		JsonBuilder* _tmp9_ = NULL;
		JsonBuilder* _tmp10_ = NULL;
		GgitDiffFile* _tmp11_ = NULL;
		gint64 _tmp12_ = 0LL;
		JsonBuilder* _tmp13_ = NULL;
		JsonBuilder* _tmp14_ = NULL;
		GgitDiffFile* _tmp15_ = NULL;
		GgitDiffFlag _tmp16_ = 0;
#line 64 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp1_ = builder;
#line 64 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp2_ = json_builder_set_member_name (_tmp1_, "path");
#line 64 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp3_ = file;
#line 64 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp4_ = ggit_diff_file_get_path (_tmp3_);
#line 64 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		json_builder_add_string_value (_tmp2_, _tmp4_);
#line 65 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp5_ = builder;
#line 65 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp6_ = json_builder_set_member_name (_tmp5_, "mode");
#line 65 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp7_ = file;
#line 65 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp8_ = ggit_diff_file_get_mode (_tmp7_);
#line 65 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		json_builder_add_int_value (_tmp6_, (gint64) _tmp8_);
#line 66 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp9_ = builder;
#line 66 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp10_ = json_builder_set_member_name (_tmp9_, "size");
#line 66 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp11_ = file;
#line 66 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp12_ = ggit_diff_file_get_size (_tmp11_);
#line 66 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		json_builder_add_int_value (_tmp10_, _tmp12_);
#line 67 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp13_ = builder;
#line 67 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp14_ = json_builder_set_member_name (_tmp13_, "flags");
#line 67 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp15_ = file;
#line 67 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp16_ = ggit_diff_file_get_flags (_tmp15_);
#line 67 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		json_builder_add_int_value (_tmp14_, (gint64) _tmp16_);
#line 458 "gitg-diff-view-request-diff.c"
	}
#line 69 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp17_ = builder;
#line 69 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_end_object (_tmp17_);
#line 464 "gitg-diff-view-request-diff.c"
}


static void gitg_diff_view_request_diff_range_to_json (GitgDiffViewRequestDiff* self, JsonBuilder* builder, gint start, gint lines) {
	JsonBuilder* _tmp0_ = NULL;
	JsonBuilder* _tmp7_ = NULL;
#line 72 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (self != NULL);
#line 72 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (builder != NULL);
#line 74 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp0_ = builder;
#line 74 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_begin_object (_tmp0_);
#line 479 "gitg-diff-view-request-diff.c"
	{
		JsonBuilder* _tmp1_ = NULL;
		JsonBuilder* _tmp2_ = NULL;
		gint _tmp3_ = 0;
		JsonBuilder* _tmp4_ = NULL;
		JsonBuilder* _tmp5_ = NULL;
		gint _tmp6_ = 0;
#line 76 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp1_ = builder;
#line 76 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp2_ = json_builder_set_member_name (_tmp1_, "start");
#line 76 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp3_ = start;
#line 76 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		json_builder_add_int_value (_tmp2_, (gint64) _tmp3_);
#line 77 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp4_ = builder;
#line 77 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp5_ = json_builder_set_member_name (_tmp4_, "lines");
#line 77 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp6_ = lines;
#line 77 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		json_builder_add_int_value (_tmp5_, (gint64) _tmp6_);
#line 503 "gitg-diff-view-request-diff.c"
	}
#line 79 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp7_ = builder;
#line 79 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_end_object (_tmp7_);
#line 509 "gitg-diff-view-request-diff.c"
}


static void gitg_diff_view_request_diff_file_cb (GitgDiffViewRequestDiff* self, JsonBuilder* builder, GitgDiffViewRequestDiffDiffState* state, GgitDiffDelta* delta, gfloat progress) {
	GitgDiffViewRequestDiffDiffState* _tmp0_ = NULL;
	gboolean _tmp1_ = FALSE;
	GitgDiffViewRequestDiffDiffState* _tmp5_ = NULL;
	gboolean _tmp6_ = FALSE;
	JsonBuilder* _tmp10_ = NULL;
	JsonBuilder* _tmp11_ = NULL;
	JsonBuilder* _tmp12_ = NULL;
	JsonBuilder* _tmp21_ = NULL;
	JsonBuilder* _tmp22_ = NULL;
	JsonBuilder* _tmp23_ = NULL;
	GgitDiffDelta* _tmp24_ = NULL;
	GgitDeltaType _tmp25_ = 0;
	JsonBuilder* _tmp26_ = NULL;
	JsonBuilder* _tmp27_ = NULL;
	GgitDiffDelta* _tmp28_ = NULL;
	guint _tmp29_ = 0U;
	JsonBuilder* _tmp30_ = NULL;
	JsonBuilder* _tmp31_ = NULL;
	GgitDiffDelta* _tmp32_ = NULL;
	GgitDiffFlag _tmp33_ = 0;
	JsonBuilder* _tmp34_ = NULL;
	JsonBuilder* _tmp35_ = NULL;
	GitgDiffViewRequestDiffDiffState* _tmp36_ = NULL;
#line 88 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (self != NULL);
#line 88 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (builder != NULL);
#line 88 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (state != NULL);
#line 88 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (delta != NULL);
#line 93 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp0_ = state;
#line 93 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp1_ = _tmp0_->in_hunk;
#line 93 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (_tmp1_) {
#line 551 "gitg-diff-view-request-diff.c"
		JsonBuilder* _tmp2_ = NULL;
		JsonBuilder* _tmp3_ = NULL;
		GitgDiffViewRequestDiffDiffState* _tmp4_ = NULL;
#line 95 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp2_ = builder;
#line 95 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		json_builder_end_array (_tmp2_);
#line 96 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp3_ = builder;
#line 96 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		json_builder_end_object (_tmp3_);
#line 98 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp4_ = state;
#line 98 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp4_->in_hunk = FALSE;
#line 567 "gitg-diff-view-request-diff.c"
	}
#line 101 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp5_ = state;
#line 101 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp6_ = _tmp5_->in_file;
#line 101 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (_tmp6_) {
#line 575 "gitg-diff-view-request-diff.c"
		JsonBuilder* _tmp7_ = NULL;
		JsonBuilder* _tmp8_ = NULL;
		GitgDiffViewRequestDiffDiffState* _tmp9_ = NULL;
#line 103 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp7_ = builder;
#line 103 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		json_builder_end_array (_tmp7_);
#line 104 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp8_ = builder;
#line 104 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		json_builder_end_object (_tmp8_);
#line 106 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp9_ = state;
#line 106 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp9_->in_file = FALSE;
#line 591 "gitg-diff-view-request-diff.c"
	}
#line 109 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp10_ = builder;
#line 109 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_begin_object (_tmp10_);
#line 111 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp11_ = builder;
#line 111 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_set_member_name (_tmp11_, "file");
#line 113 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp12_ = builder;
#line 113 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_begin_object (_tmp12_);
#line 605 "gitg-diff-view-request-diff.c"
	{
		JsonBuilder* _tmp13_ = NULL;
		JsonBuilder* _tmp14_ = NULL;
		GgitDiffDelta* _tmp15_ = NULL;
		GgitDiffFile* _tmp16_ = NULL;
		JsonBuilder* _tmp17_ = NULL;
		JsonBuilder* _tmp18_ = NULL;
		GgitDiffDelta* _tmp19_ = NULL;
		GgitDiffFile* _tmp20_ = NULL;
#line 115 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp13_ = builder;
#line 115 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp14_ = json_builder_set_member_name (_tmp13_, "old");
#line 115 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp15_ = delta;
#line 115 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp16_ = ggit_diff_delta_get_old_file (_tmp15_);
#line 115 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		gitg_diff_view_request_diff_file_to_json (self, _tmp14_, _tmp16_);
#line 116 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp17_ = builder;
#line 116 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp18_ = json_builder_set_member_name (_tmp17_, "new");
#line 116 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp19_ = delta;
#line 116 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp20_ = ggit_diff_delta_get_new_file (_tmp19_);
#line 116 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		gitg_diff_view_request_diff_file_to_json (self, _tmp18_, _tmp20_);
#line 635 "gitg-diff-view-request-diff.c"
	}
#line 118 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp21_ = builder;
#line 118 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_end_object (_tmp21_);
#line 120 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp22_ = builder;
#line 120 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp23_ = json_builder_set_member_name (_tmp22_, "status");
#line 120 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp24_ = delta;
#line 120 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp25_ = ggit_diff_delta_get_status (_tmp24_);
#line 120 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_add_int_value (_tmp23_, (gint64) _tmp25_);
#line 121 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp26_ = builder;
#line 121 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp27_ = json_builder_set_member_name (_tmp26_, "similarity");
#line 121 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp28_ = delta;
#line 121 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp29_ = ggit_diff_delta_get_similarity (_tmp28_);
#line 121 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_add_int_value (_tmp27_, (gint64) _tmp29_);
#line 122 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp30_ = builder;
#line 122 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp31_ = json_builder_set_member_name (_tmp30_, "binary");
#line 122 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp32_ = delta;
#line 122 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp33_ = ggit_diff_delta_get_flags (_tmp32_);
#line 122 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_add_int_value (_tmp31_, (gint64) ((_tmp33_ & GGIT_DIFF_FLAG_BINARY) == 0));
#line 124 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp34_ = builder;
#line 124 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp35_ = json_builder_set_member_name (_tmp34_, "hunks");
#line 124 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_begin_array (_tmp35_);
#line 126 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp36_ = state;
#line 126 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp36_->in_file = TRUE;
#line 681 "gitg-diff-view-request-diff.c"
}


static gint string_last_index_of (const gchar* self, const gchar* needle, gint start_index) {
	gint result = 0;
	gchar* _result_ = NULL;
	gint _tmp0_ = 0;
	const gchar* _tmp1_ = NULL;
	gchar* _tmp2_ = NULL;
	gchar* _tmp3_ = NULL;
#line 910 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	g_return_val_if_fail (self != NULL, 0);
#line 910 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	g_return_val_if_fail (needle != NULL, 0);
#line 911 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp0_ = start_index;
#line 911 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp1_ = needle;
#line 911 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp2_ = g_strrstr (((gchar*) self) + _tmp0_, (gchar*) _tmp1_);
#line 911 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_result_ = _tmp2_;
#line 913 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp3_ = _result_;
#line 913 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	if (_tmp3_ != NULL) {
#line 708 "gitg-diff-view-request-diff.c"
		gchar* _tmp4_ = NULL;
#line 914 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		_tmp4_ = _result_;
#line 914 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		result = (gint) (_tmp4_ - ((gchar*) self));
#line 914 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		return result;
#line 716 "gitg-diff-view-request-diff.c"
	} else {
#line 916 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		result = -1;
#line 916 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		return result;
#line 722 "gitg-diff-view-request-diff.c"
	}
}


static glong string_strnlen (gchar* str, glong maxlen) {
	glong result = 0L;
	gchar* end = NULL;
	gchar* _tmp0_ = NULL;
	glong _tmp1_ = 0L;
	gchar* _tmp2_ = NULL;
	gchar* _tmp3_ = NULL;
#line 1197 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp0_ = str;
#line 1197 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp1_ = maxlen;
#line 1197 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp2_ = memchr (_tmp0_, 0, (gsize) _tmp1_);
#line 1197 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	end = _tmp2_;
#line 1198 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp3_ = end;
#line 1198 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	if (_tmp3_ == NULL) {
#line 746 "gitg-diff-view-request-diff.c"
		glong _tmp4_ = 0L;
#line 1199 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		_tmp4_ = maxlen;
#line 1199 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		result = _tmp4_;
#line 1199 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		return result;
#line 754 "gitg-diff-view-request-diff.c"
	} else {
		gchar* _tmp5_ = NULL;
		gchar* _tmp6_ = NULL;
#line 1201 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		_tmp5_ = end;
#line 1201 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		_tmp6_ = str;
#line 1201 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		result = (glong) (_tmp5_ - _tmp6_);
#line 1201 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		return result;
#line 766 "gitg-diff-view-request-diff.c"
	}
}


static gchar* string_substring (const gchar* self, glong offset, glong len) {
	gchar* result = NULL;
	glong string_length = 0L;
	gboolean _tmp0_ = FALSE;
	glong _tmp1_ = 0L;
	glong _tmp8_ = 0L;
	glong _tmp14_ = 0L;
	glong _tmp17_ = 0L;
	glong _tmp18_ = 0L;
	glong _tmp19_ = 0L;
	glong _tmp20_ = 0L;
	glong _tmp21_ = 0L;
	gchar* _tmp22_ = NULL;
#line 1208 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	g_return_val_if_fail (self != NULL, NULL);
#line 1210 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp1_ = offset;
#line 1210 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	if (_tmp1_ >= ((glong) 0)) {
#line 790 "gitg-diff-view-request-diff.c"
		glong _tmp2_ = 0L;
#line 1210 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		_tmp2_ = len;
#line 1210 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		_tmp0_ = _tmp2_ >= ((glong) 0);
#line 796 "gitg-diff-view-request-diff.c"
	} else {
#line 1210 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		_tmp0_ = FALSE;
#line 800 "gitg-diff-view-request-diff.c"
	}
#line 1210 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	if (_tmp0_) {
#line 804 "gitg-diff-view-request-diff.c"
		glong _tmp3_ = 0L;
		glong _tmp4_ = 0L;
		glong _tmp5_ = 0L;
#line 1212 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		_tmp3_ = offset;
#line 1212 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		_tmp4_ = len;
#line 1212 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		_tmp5_ = string_strnlen ((gchar*) self, _tmp3_ + _tmp4_);
#line 1212 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		string_length = _tmp5_;
#line 816 "gitg-diff-view-request-diff.c"
	} else {
		gint _tmp6_ = 0;
		gint _tmp7_ = 0;
#line 1214 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		_tmp6_ = strlen (self);
#line 1214 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		_tmp7_ = _tmp6_;
#line 1214 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		string_length = (glong) _tmp7_;
#line 826 "gitg-diff-view-request-diff.c"
	}
#line 1217 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp8_ = offset;
#line 1217 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	if (_tmp8_ < ((glong) 0)) {
#line 832 "gitg-diff-view-request-diff.c"
		glong _tmp9_ = 0L;
		glong _tmp10_ = 0L;
		glong _tmp11_ = 0L;
#line 1218 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		_tmp9_ = string_length;
#line 1218 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		_tmp10_ = offset;
#line 1218 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		offset = _tmp9_ + _tmp10_;
#line 1219 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		_tmp11_ = offset;
#line 1219 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		g_return_val_if_fail (_tmp11_ >= ((glong) 0), NULL);
#line 846 "gitg-diff-view-request-diff.c"
	} else {
		glong _tmp12_ = 0L;
		glong _tmp13_ = 0L;
#line 1221 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		_tmp12_ = offset;
#line 1221 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		_tmp13_ = string_length;
#line 1221 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		g_return_val_if_fail (_tmp12_ <= _tmp13_, NULL);
#line 856 "gitg-diff-view-request-diff.c"
	}
#line 1223 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp14_ = len;
#line 1223 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	if (_tmp14_ < ((glong) 0)) {
#line 862 "gitg-diff-view-request-diff.c"
		glong _tmp15_ = 0L;
		glong _tmp16_ = 0L;
#line 1224 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		_tmp15_ = string_length;
#line 1224 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		_tmp16_ = offset;
#line 1224 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		len = _tmp15_ - _tmp16_;
#line 871 "gitg-diff-view-request-diff.c"
	}
#line 1226 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp17_ = offset;
#line 1226 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp18_ = len;
#line 1226 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp19_ = string_length;
#line 1226 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	g_return_val_if_fail ((_tmp17_ + _tmp18_) <= _tmp19_, NULL);
#line 1227 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp20_ = offset;
#line 1227 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp21_ = len;
#line 1227 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp22_ = g_strndup (((gchar*) self) + _tmp20_, (gsize) _tmp21_);
#line 1227 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	result = _tmp22_;
#line 1227 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	return result;
#line 891 "gitg-diff-view-request-diff.c"
}


static gchar* string_chug (const gchar* self) {
	gchar* result = NULL;
	gchar* _result_ = NULL;
	gchar* _tmp0_ = NULL;
	const gchar* _tmp1_ = NULL;
#line 1107 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	g_return_val_if_fail (self != NULL, NULL);
#line 1108 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp0_ = g_strdup (self);
#line 1108 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_result_ = _tmp0_;
#line 1109 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp1_ = _result_;
#line 1109 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	g_strchug (_tmp1_);
#line 1110 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	result = _result_;
#line 1110 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	return result;
#line 914 "gitg-diff-view-request-diff.c"
}


static void gitg_diff_view_request_diff_hunk_cb (GitgDiffViewRequestDiff* self, JsonBuilder* builder, GitgDiffViewRequestDiffDiffState* state, GgitDiffDelta* delta, GgitDiffHunk* hunk, const gchar* header) {
	GitgDiffViewRequestDiffDiffState* _tmp0_ = NULL;
	gboolean _tmp1_ = FALSE;
	JsonBuilder* _tmp5_ = NULL;
	JsonBuilder* _tmp6_ = NULL;
	JsonBuilder* _tmp7_ = NULL;
	JsonBuilder* _tmp20_ = NULL;
	gchar* h = NULL;
	GgitDiffHunk* _tmp21_ = NULL;
	const gchar* _tmp22_ = NULL;
	gchar* _tmp23_ = NULL;
	gint pos = 0;
	const gchar* _tmp24_ = NULL;
	gint _tmp25_ = 0;
	gint _tmp26_ = 0;
	JsonBuilder* _tmp32_ = NULL;
	JsonBuilder* _tmp33_ = NULL;
	const gchar* _tmp34_ = NULL;
	JsonBuilder* _tmp35_ = NULL;
	JsonBuilder* _tmp36_ = NULL;
	GitgDiffViewRequestDiffDiffState* _tmp37_ = NULL;
#line 129 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (self != NULL);
#line 129 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (builder != NULL);
#line 129 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (state != NULL);
#line 129 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (delta != NULL);
#line 129 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (hunk != NULL);
#line 129 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (header != NULL);
#line 135 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp0_ = state;
#line 135 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp1_ = _tmp0_->in_hunk;
#line 135 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (_tmp1_) {
#line 957 "gitg-diff-view-request-diff.c"
		JsonBuilder* _tmp2_ = NULL;
		JsonBuilder* _tmp3_ = NULL;
		GitgDiffViewRequestDiffDiffState* _tmp4_ = NULL;
#line 137 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp2_ = builder;
#line 137 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		json_builder_end_array (_tmp2_);
#line 138 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp3_ = builder;
#line 138 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		json_builder_end_object (_tmp3_);
#line 140 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp4_ = state;
#line 140 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp4_->in_hunk = FALSE;
#line 973 "gitg-diff-view-request-diff.c"
	}
#line 143 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp5_ = builder;
#line 143 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_begin_object (_tmp5_);
#line 145 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp6_ = builder;
#line 145 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_set_member_name (_tmp6_, "range");
#line 147 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp7_ = builder;
#line 147 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_begin_object (_tmp7_);
#line 987 "gitg-diff-view-request-diff.c"
	{
		JsonBuilder* _tmp8_ = NULL;
		JsonBuilder* _tmp9_ = NULL;
		GgitDiffHunk* _tmp10_ = NULL;
		gint _tmp11_ = 0;
		GgitDiffHunk* _tmp12_ = NULL;
		gint _tmp13_ = 0;
		JsonBuilder* _tmp14_ = NULL;
		JsonBuilder* _tmp15_ = NULL;
		GgitDiffHunk* _tmp16_ = NULL;
		gint _tmp17_ = 0;
		GgitDiffHunk* _tmp18_ = NULL;
		gint _tmp19_ = 0;
#line 149 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp8_ = builder;
#line 149 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp9_ = json_builder_set_member_name (_tmp8_, "old");
#line 149 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp10_ = hunk;
#line 149 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp11_ = ggit_diff_hunk_get_old_start (_tmp10_);
#line 149 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp12_ = hunk;
#line 149 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp13_ = ggit_diff_hunk_get_old_lines (_tmp12_);
#line 149 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		gitg_diff_view_request_diff_range_to_json (self, _tmp9_, _tmp11_, _tmp13_);
#line 153 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp14_ = builder;
#line 153 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp15_ = json_builder_set_member_name (_tmp14_, "new");
#line 153 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp16_ = hunk;
#line 153 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp17_ = ggit_diff_hunk_get_new_start (_tmp16_);
#line 153 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp18_ = hunk;
#line 153 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp19_ = ggit_diff_hunk_get_new_lines (_tmp18_);
#line 153 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		gitg_diff_view_request_diff_range_to_json (self, _tmp15_, _tmp17_, _tmp19_);
#line 1029 "gitg-diff-view-request-diff.c"
	}
#line 157 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp20_ = builder;
#line 157 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_end_object (_tmp20_);
#line 159 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp21_ = hunk;
#line 159 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp22_ = ggit_diff_hunk_get_header (_tmp21_);
#line 159 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp23_ = g_strdup (_tmp22_);
#line 159 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	h = _tmp23_;
#line 160 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp24_ = h;
#line 160 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp25_ = string_last_index_of (_tmp24_, "@@", 0);
#line 160 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	pos = _tmp25_;
#line 162 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp26_ = pos;
#line 162 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (_tmp26_ >= 0) {
#line 1053 "gitg-diff-view-request-diff.c"
		const gchar* _tmp27_ = NULL;
		gint _tmp28_ = 0;
		gchar* _tmp29_ = NULL;
		gchar* _tmp30_ = NULL;
		gchar* _tmp31_ = NULL;
#line 164 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp27_ = h;
#line 164 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp28_ = pos;
#line 164 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp29_ = string_substring (_tmp27_, (glong) (_tmp28_ + 2), (glong) (-1));
#line 164 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp30_ = _tmp29_;
#line 164 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp31_ = string_chug (_tmp30_);
#line 164 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_g_free0 (h);
#line 164 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		h = _tmp31_;
#line 164 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_g_free0 (_tmp30_);
#line 1075 "gitg-diff-view-request-diff.c"
	}
#line 167 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp32_ = builder;
#line 167 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp33_ = json_builder_set_member_name (_tmp32_, "header");
#line 167 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp34_ = h;
#line 167 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_add_string_value (_tmp33_, _tmp34_);
#line 168 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp35_ = builder;
#line 168 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_set_member_name (_tmp35_, "lines");
#line 170 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp36_ = builder;
#line 170 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_begin_array (_tmp36_);
#line 172 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp37_ = state;
#line 172 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp37_->in_hunk = TRUE;
#line 129 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_g_free0 (h);
#line 1099 "gitg-diff-view-request-diff.c"
}


static guint8* _vala_array_dup8 (guint8* self, int length) {
#line 182 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	return g_memdup (self, length * sizeof (guint8));
#line 1106 "gitg-diff-view-request-diff.c"
}


static gchar* string_chomp (const gchar* self) {
	gchar* result = NULL;
	gchar* _result_ = NULL;
	gchar* _tmp0_ = NULL;
	const gchar* _tmp1_ = NULL;
#line 1099 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	g_return_val_if_fail (self != NULL, NULL);
#line 1100 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp0_ = g_strdup (self);
#line 1100 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_result_ = _tmp0_;
#line 1101 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp1_ = _result_;
#line 1101 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	g_strchomp (_tmp1_);
#line 1102 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	result = _result_;
#line 1102 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	return result;
#line 1129 "gitg-diff-view-request-diff.c"
}


static gchar string_get (const gchar* self, glong index) {
	gchar result = '\0';
	glong _tmp0_ = 0L;
	gchar _tmp1_ = '\0';
#line 996 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	g_return_val_if_fail (self != NULL, '\0');
#line 997 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp0_ = index;
#line 997 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp1_ = ((gchar*) self)[_tmp0_];
#line 997 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	result = _tmp1_;
#line 997 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	return result;
#line 1147 "gitg-diff-view-request-diff.c"
}


static gchar* string_slice (const gchar* self, glong start, glong end) {
	gchar* result = NULL;
	glong string_length = 0L;
	gint _tmp0_ = 0;
	gint _tmp1_ = 0;
	glong _tmp2_ = 0L;
	glong _tmp5_ = 0L;
	gboolean _tmp8_ = FALSE;
	glong _tmp9_ = 0L;
	gboolean _tmp12_ = FALSE;
	glong _tmp13_ = 0L;
	glong _tmp16_ = 0L;
	glong _tmp17_ = 0L;
	glong _tmp18_ = 0L;
	glong _tmp19_ = 0L;
	glong _tmp20_ = 0L;
	gchar* _tmp21_ = NULL;
#line 1230 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	g_return_val_if_fail (self != NULL, NULL);
#line 1231 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp0_ = strlen (self);
#line 1231 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp1_ = _tmp0_;
#line 1231 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	string_length = (glong) _tmp1_;
#line 1232 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp2_ = start;
#line 1232 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	if (_tmp2_ < ((glong) 0)) {
#line 1180 "gitg-diff-view-request-diff.c"
		glong _tmp3_ = 0L;
		glong _tmp4_ = 0L;
#line 1233 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		_tmp3_ = string_length;
#line 1233 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		_tmp4_ = start;
#line 1233 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		start = _tmp3_ + _tmp4_;
#line 1189 "gitg-diff-view-request-diff.c"
	}
#line 1235 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp5_ = end;
#line 1235 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	if (_tmp5_ < ((glong) 0)) {
#line 1195 "gitg-diff-view-request-diff.c"
		glong _tmp6_ = 0L;
		glong _tmp7_ = 0L;
#line 1236 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		_tmp6_ = string_length;
#line 1236 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		_tmp7_ = end;
#line 1236 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		end = _tmp6_ + _tmp7_;
#line 1204 "gitg-diff-view-request-diff.c"
	}
#line 1238 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp9_ = start;
#line 1238 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	if (_tmp9_ >= ((glong) 0)) {
#line 1210 "gitg-diff-view-request-diff.c"
		glong _tmp10_ = 0L;
		glong _tmp11_ = 0L;
#line 1238 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		_tmp10_ = start;
#line 1238 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		_tmp11_ = string_length;
#line 1238 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		_tmp8_ = _tmp10_ <= _tmp11_;
#line 1219 "gitg-diff-view-request-diff.c"
	} else {
#line 1238 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		_tmp8_ = FALSE;
#line 1223 "gitg-diff-view-request-diff.c"
	}
#line 1238 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	g_return_val_if_fail (_tmp8_, NULL);
#line 1239 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp13_ = end;
#line 1239 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	if (_tmp13_ >= ((glong) 0)) {
#line 1231 "gitg-diff-view-request-diff.c"
		glong _tmp14_ = 0L;
		glong _tmp15_ = 0L;
#line 1239 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		_tmp14_ = end;
#line 1239 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		_tmp15_ = string_length;
#line 1239 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		_tmp12_ = _tmp14_ <= _tmp15_;
#line 1240 "gitg-diff-view-request-diff.c"
	} else {
#line 1239 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
		_tmp12_ = FALSE;
#line 1244 "gitg-diff-view-request-diff.c"
	}
#line 1239 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	g_return_val_if_fail (_tmp12_, NULL);
#line 1240 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp16_ = start;
#line 1240 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp17_ = end;
#line 1240 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	g_return_val_if_fail (_tmp16_ <= _tmp17_, NULL);
#line 1241 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp18_ = start;
#line 1241 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp19_ = end;
#line 1241 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp20_ = start;
#line 1241 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	_tmp21_ = g_strndup (((gchar*) self) + _tmp18_, (gsize) (_tmp19_ - _tmp20_));
#line 1241 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	result = _tmp21_;
#line 1241 "/opt/gnome/share/vala-0.28/vapi/glib-2.0.vapi"
	return result;
#line 1266 "gitg-diff-view-request-diff.c"
}


static void gitg_diff_view_request_diff_line_cb (GitgDiffViewRequestDiff* self, JsonBuilder* builder, GgitDiffDelta* delta, GgitDiffHunk* hunk, GgitDiffLine* line) {
	JsonBuilder* _tmp0_ = NULL;
	JsonBuilder* _tmp41_ = NULL;
#line 175 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (self != NULL);
#line 175 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (builder != NULL);
#line 175 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (delta != NULL);
#line 175 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (hunk != NULL);
#line 175 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (line != NULL);
#line 180 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp0_ = builder;
#line 180 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_begin_object (_tmp0_);
#line 1287 "gitg-diff-view-request-diff.c"
	{
		guint8* content = NULL;
		GgitDiffLine* _tmp1_ = NULL;
		gsize _tmp2_;
		guint8* _tmp3_ = NULL;
		guint8* _tmp4_ = NULL;
		gint _tmp4__length1 = 0;
		gint content_length1 = 0;
		gint _content_size_ = 0;
		gchar* text = NULL;
		GgitDiffLine* _tmp5_ = NULL;
		const gchar* _tmp6_ = NULL;
		gchar* _tmp7_ = NULL;
		gchar* chomped = NULL;
		const gchar* _tmp8_ = NULL;
		gchar* _tmp9_ = NULL;
		gint l = 0;
		const gchar* _tmp10_ = NULL;
		gint _tmp11_ = 0;
		gint _tmp12_ = 0;
		gboolean _tmp13_ = FALSE;
		gint _tmp14_ = 0;
		gchar* ws = NULL;
		const gchar* _tmp19_ = NULL;
		const gchar* _tmp20_ = NULL;
		gint _tmp21_ = 0;
		gint _tmp22_ = 0;
		gint _tmp23_ = 0;
		gchar* _tmp24_ = NULL;
		JsonBuilder* _tmp25_ = NULL;
		JsonBuilder* _tmp26_ = NULL;
		GgitDiffLine* _tmp27_ = NULL;
		GgitDiffLineType _tmp28_ = 0;
		JsonBuilder* _tmp29_ = NULL;
		JsonBuilder* _tmp30_ = NULL;
		const gchar* _tmp31_ = NULL;
		JsonBuilder* _tmp32_ = NULL;
		JsonBuilder* _tmp33_ = NULL;
		JsonBuilder* _tmp34_ = NULL;
		JsonBuilder* _tmp35_ = NULL;
		GgitDiffLine* _tmp36_ = NULL;
		gint64 _tmp37_ = 0LL;
		JsonBuilder* _tmp38_ = NULL;
		JsonBuilder* _tmp39_ = NULL;
		guint8* _tmp40_ = NULL;
		gint _tmp40__length1 = 0;
#line 182 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp1_ = line;
#line 182 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp3_ = ggit_diff_line_get_content (_tmp1_, &_tmp2_);
#line 182 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp4_ = (_tmp3_ != NULL) ? _vala_array_dup8 (_tmp3_, _tmp2_) : ((gpointer) _tmp3_);
#line 182 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp4__length1 = _tmp2_;
#line 182 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		content = _tmp4_;
#line 182 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		content_length1 = _tmp4__length1;
#line 182 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_content_size_ = content_length1;
#line 183 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp5_ = line;
#line 183 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp6_ = ggit_diff_line_get_text (_tmp5_);
#line 183 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp7_ = g_strdup (_tmp6_);
#line 183 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		text = _tmp7_;
#line 186 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp8_ = text;
#line 186 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp9_ = string_chomp (_tmp8_);
#line 186 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		chomped = _tmp9_;
#line 188 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp10_ = text;
#line 188 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp11_ = strlen (_tmp10_);
#line 188 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp12_ = _tmp11_;
#line 188 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		l = _tmp12_;
#line 190 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp14_ = l;
#line 190 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		if (_tmp14_ > 0) {
#line 1374 "gitg-diff-view-request-diff.c"
			const gchar* _tmp15_ = NULL;
			gint _tmp16_ = 0;
			gchar _tmp17_ = '\0';
#line 190 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			_tmp15_ = text;
#line 190 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			_tmp16_ = l;
#line 190 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			_tmp17_ = string_get (_tmp15_, (glong) (_tmp16_ - 1));
#line 190 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			_tmp13_ = _tmp17_ == '\n';
#line 1386 "gitg-diff-view-request-diff.c"
		} else {
#line 190 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			_tmp13_ = FALSE;
#line 1390 "gitg-diff-view-request-diff.c"
		}
#line 190 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		if (_tmp13_) {
#line 1394 "gitg-diff-view-request-diff.c"
			gint _tmp18_ = 0;
#line 192 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			_tmp18_ = l;
#line 192 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			l = _tmp18_ - 1;
#line 1400 "gitg-diff-view-request-diff.c"
		}
#line 195 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp19_ = text;
#line 195 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp20_ = chomped;
#line 195 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp21_ = strlen (_tmp20_);
#line 195 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp22_ = _tmp21_;
#line 195 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp23_ = l;
#line 195 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp24_ = string_slice (_tmp19_, (glong) _tmp22_, (glong) _tmp23_);
#line 195 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		ws = _tmp24_;
#line 197 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp25_ = builder;
#line 197 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp26_ = json_builder_set_member_name (_tmp25_, "type");
#line 197 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp27_ = line;
#line 197 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp28_ = ggit_diff_line_get_origin (_tmp27_);
#line 197 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		json_builder_add_int_value (_tmp26_, (gint64) _tmp28_);
#line 198 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp29_ = builder;
#line 198 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp30_ = json_builder_set_member_name (_tmp29_, "content");
#line 198 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp31_ = chomped;
#line 198 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		json_builder_add_string_value (_tmp30_, _tmp31_);
#line 199 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp32_ = builder;
#line 199 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp33_ = json_builder_set_member_name (_tmp32_, "trailing_whitespace");
#line 199 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		json_builder_add_string_value (_tmp33_, ws);
#line 200 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp34_ = builder;
#line 200 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp35_ = json_builder_set_member_name (_tmp34_, "offset");
#line 200 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp36_ = line;
#line 200 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp37_ = ggit_diff_line_get_content_offset (_tmp36_);
#line 200 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		json_builder_add_int_value (_tmp35_, (gint64) _tmp37_);
#line 201 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp38_ = builder;
#line 201 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp39_ = json_builder_set_member_name (_tmp38_, "length");
#line 201 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp40_ = content;
#line 201 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp40__length1 = content_length1;
#line 201 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		json_builder_add_int_value (_tmp39_, (gint64) _tmp40__length1);
#line 181 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_g_free0 (ws);
#line 181 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_g_free0 (chomped);
#line 181 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_g_free0 (text);
#line 181 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		content = (g_free (content), NULL);
#line 1468 "gitg-diff-view-request-diff.c"
	}
#line 203 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp41_ = builder;
#line 203 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_end_object (_tmp41_);
#line 1474 "gitg-diff-view-request-diff.c"
}


static void gitg_diff_view_request_diff_signature_to_json (GitgDiffViewRequestDiff* self, JsonBuilder* builder, GgitSignature* sig) {
	JsonBuilder* _tmp0_ = NULL;
	JsonBuilder* _tmp1_ = NULL;
	JsonBuilder* _tmp2_ = NULL;
	GgitSignature* _tmp3_ = NULL;
	const gchar* _tmp4_ = NULL;
	JsonBuilder* _tmp5_ = NULL;
	JsonBuilder* _tmp6_ = NULL;
	GgitSignature* _tmp7_ = NULL;
	const gchar* _tmp8_ = NULL;
	JsonBuilder* _tmp9_ = NULL;
	JsonBuilder* _tmp10_ = NULL;
	GgitSignature* _tmp11_ = NULL;
	const gchar* _tmp12_ = NULL;
	gchar* _tmp13_ = NULL;
	gchar* _tmp14_ = NULL;
	gchar* _tmp15_ = NULL;
	gchar* _tmp16_ = NULL;
	JsonBuilder* _tmp17_ = NULL;
	JsonBuilder* _tmp18_ = NULL;
	GgitSignature* _tmp19_ = NULL;
	GDateTime* _tmp20_ = NULL;
	GDateTime* _tmp21_ = NULL;
	GgitSignature* _tmp22_ = NULL;
	GTimeZone* _tmp23_ = NULL;
	GTimeZone* _tmp24_ = NULL;
	GDateTime* _tmp25_ = NULL;
	GDateTime* _tmp26_ = NULL;
	gchar* _tmp27_ = NULL;
	gchar* _tmp28_ = NULL;
	JsonBuilder* _tmp29_ = NULL;
#line 206 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (self != NULL);
#line 206 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (builder != NULL);
#line 206 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (sig != NULL);
#line 208 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp0_ = builder;
#line 208 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_begin_object (_tmp0_);
#line 210 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp1_ = builder;
#line 210 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_set_member_name (_tmp1_, "name");
#line 211 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp2_ = builder;
#line 211 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp3_ = sig;
#line 211 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp4_ = ggit_signature_get_name (_tmp3_);
#line 211 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_add_string_value (_tmp2_, _tmp4_);
#line 213 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp5_ = builder;
#line 213 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_set_member_name (_tmp5_, "email");
#line 214 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp6_ = builder;
#line 214 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp7_ = sig;
#line 214 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp8_ = ggit_signature_get_email (_tmp7_);
#line 214 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_add_string_value (_tmp6_, _tmp8_);
#line 216 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp9_ = builder;
#line 216 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_set_member_name (_tmp9_, "email_md5");
#line 217 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp10_ = builder;
#line 217 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp11_ = sig;
#line 217 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp12_ = ggit_signature_get_email (_tmp11_);
#line 217 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp13_ = g_utf8_strdown (_tmp12_, (gssize) (-1));
#line 217 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp14_ = _tmp13_;
#line 217 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp15_ = g_compute_checksum_for_string (G_CHECKSUM_MD5, _tmp14_, (gsize) (-1));
#line 217 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp16_ = _tmp15_;
#line 217 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_add_string_value (_tmp10_, _tmp16_);
#line 217 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_g_free0 (_tmp16_);
#line 217 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_g_free0 (_tmp14_);
#line 219 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp17_ = builder;
#line 219 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_set_member_name (_tmp17_, "time");
#line 220 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp18_ = builder;
#line 220 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp19_ = sig;
#line 220 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp20_ = ggit_signature_get_time (_tmp19_);
#line 220 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp21_ = _tmp20_;
#line 220 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp22_ = sig;
#line 220 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp23_ = ggit_signature_get_time_zone (_tmp22_);
#line 220 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp24_ = _tmp23_;
#line 220 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp25_ = g_date_time_to_timezone (_tmp21_, _tmp24_);
#line 220 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp26_ = _tmp25_;
#line 220 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp27_ = g_date_time_format (_tmp26_, "%x %X %z");
#line 220 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp28_ = _tmp27_;
#line 220 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_add_string_value (_tmp18_, _tmp28_);
#line 220 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_g_free0 (_tmp28_);
#line 220 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_g_date_time_unref0 (_tmp26_);
#line 220 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_g_time_zone_unref0 (_tmp24_);
#line 220 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_g_date_time_unref0 (_tmp21_);
#line 222 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp29_ = builder;
#line 222 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_end_object (_tmp29_);
#line 1607 "gitg-diff-view-request-diff.c"
}


static void _vala_GgitOId_free (GgitOId* self) {
#line 230 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_boxed_free (ggit_oid_get_type (), self);
#line 1614 "gitg-diff-view-request-diff.c"
}


static void gitg_diff_view_request_diff_commit_to_json (GitgDiffViewRequestDiff* self, JsonBuilder* builder, GitgCommit* commit) {
	JsonBuilder* _tmp0_ = NULL;
	JsonBuilder* _tmp1_ = NULL;
	JsonBuilder* _tmp2_ = NULL;
	GitgCommit* _tmp3_ = NULL;
	GgitOId* _tmp4_ = NULL;
	GgitOId* _tmp5_ = NULL;
	gchar* _tmp6_ = NULL;
	gchar* _tmp7_ = NULL;
	JsonBuilder* _tmp8_ = NULL;
	JsonBuilder* _tmp9_ = NULL;
	GitgCommit* _tmp10_ = NULL;
	const gchar* _tmp11_ = NULL;
	JsonBuilder* _tmp12_ = NULL;
	JsonBuilder* _tmp13_ = NULL;
	GitgCommit* _tmp14_ = NULL;
	const gchar* _tmp15_ = NULL;
	JsonBuilder* _tmp16_ = NULL;
	JsonBuilder* _tmp17_ = NULL;
	GitgCommit* _tmp18_ = NULL;
	GgitSignature* _tmp19_ = NULL;
	GgitSignature* _tmp20_ = NULL;
	JsonBuilder* _tmp21_ = NULL;
	JsonBuilder* _tmp22_ = NULL;
	GitgCommit* _tmp23_ = NULL;
	GgitSignature* _tmp24_ = NULL;
	GgitSignature* _tmp25_ = NULL;
	GgitNote* note = NULL;
	GitgCommit* _tmp26_ = NULL;
	GgitNote* _tmp27_ = NULL;
	GgitNote* _tmp28_ = NULL;
	JsonBuilder* _tmp33_ = NULL;
	JsonBuilder* _tmp34_ = NULL;
	JsonBuilder* _tmp59_ = NULL;
	JsonBuilder* _tmp60_ = NULL;
#line 225 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (self != NULL);
#line 225 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (builder != NULL);
#line 225 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (commit != NULL);
#line 227 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp0_ = builder;
#line 227 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_begin_object (_tmp0_);
#line 229 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp1_ = builder;
#line 229 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_set_member_name (_tmp1_, "id");
#line 230 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp2_ = builder;
#line 230 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp3_ = commit;
#line 230 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp4_ = ggit_object_get_id ((GgitObject*) _tmp3_);
#line 230 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp5_ = _tmp4_;
#line 230 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp6_ = ggit_oid_to_string (_tmp5_);
#line 230 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp7_ = _tmp6_;
#line 230 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_add_string_value (_tmp2_, _tmp7_);
#line 230 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_g_free0 (_tmp7_);
#line 230 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	__vala_GgitOId_free0 (_tmp5_);
#line 232 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp8_ = builder;
#line 232 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_set_member_name (_tmp8_, "subject");
#line 233 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp9_ = builder;
#line 233 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp10_ = commit;
#line 233 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp11_ = ggit_commit_get_subject ((GgitCommit*) _tmp10_);
#line 233 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_add_string_value (_tmp9_, _tmp11_);
#line 235 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp12_ = builder;
#line 235 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_set_member_name (_tmp12_, "message");
#line 236 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp13_ = builder;
#line 236 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp14_ = commit;
#line 236 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp15_ = ggit_commit_get_message ((GgitCommit*) _tmp14_);
#line 236 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_add_string_value (_tmp13_, _tmp15_);
#line 238 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp16_ = builder;
#line 238 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_set_member_name (_tmp16_, "committer");
#line 239 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp17_ = builder;
#line 239 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp18_ = commit;
#line 239 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp19_ = ggit_commit_get_committer ((GgitCommit*) _tmp18_);
#line 239 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp20_ = _tmp19_;
#line 239 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	gitg_diff_view_request_diff_signature_to_json (self, _tmp17_, _tmp20_);
#line 239 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_g_object_unref0 (_tmp20_);
#line 241 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp21_ = builder;
#line 241 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_set_member_name (_tmp21_, "author");
#line 242 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp22_ = builder;
#line 242 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp23_ = commit;
#line 242 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp24_ = ggit_commit_get_author ((GgitCommit*) _tmp23_);
#line 242 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp25_ = _tmp24_;
#line 242 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	gitg_diff_view_request_diff_signature_to_json (self, _tmp22_, _tmp25_);
#line 242 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_g_object_unref0 (_tmp25_);
#line 244 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp26_ = commit;
#line 244 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp27_ = gitg_commit_get_note (_tmp26_);
#line 244 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	note = _tmp27_;
#line 245 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp28_ = note;
#line 245 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (_tmp28_ != NULL) {
#line 1751 "gitg-diff-view-request-diff.c"
		JsonBuilder* _tmp29_ = NULL;
		JsonBuilder* _tmp30_ = NULL;
		GgitNote* _tmp31_ = NULL;
		const gchar* _tmp32_ = NULL;
#line 247 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp29_ = builder;
#line 247 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		json_builder_set_member_name (_tmp29_, "note");
#line 248 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp30_ = builder;
#line 248 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp31_ = note;
#line 248 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp32_ = ggit_note_get_message (_tmp31_);
#line 248 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		json_builder_add_string_value (_tmp30_, _tmp32_);
#line 1768 "gitg-diff-view-request-diff.c"
	}
#line 251 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp33_ = builder;
#line 251 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_set_member_name (_tmp33_, "parents");
#line 252 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp34_ = builder;
#line 252 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_begin_array (_tmp34_);
#line 1778 "gitg-diff-view-request-diff.c"
	{
		GgitCommitParents* _parent_list = NULL;
		GitgCommit* _tmp35_ = NULL;
		GgitCommitParents* _tmp36_ = NULL;
		guint _parent_size = 0U;
		GgitCommitParents* _tmp37_ = NULL;
		guint _tmp38_ = 0U;
		guint _tmp39_ = 0U;
		gint _parent_index = 0;
#line 254 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp35_ = commit;
#line 254 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp36_ = ggit_commit_get_parents ((GgitCommit*) _tmp35_);
#line 254 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_parent_list = _tmp36_;
#line 254 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp37_ = _parent_list;
#line 254 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp38_ = ggit_commit_parents_get_size (_tmp37_);
#line 254 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp39_ = _tmp38_;
#line 254 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_parent_size = _tmp39_;
#line 254 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_parent_index = -1;
#line 254 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		while (TRUE) {
#line 1806 "gitg-diff-view-request-diff.c"
			gint _tmp40_ = 0;
			gint _tmp41_ = 0;
			guint _tmp42_ = 0U;
			GgitCommit* parent = NULL;
			GgitCommitParents* _tmp43_ = NULL;
			gint _tmp44_ = 0;
			GgitCommit* _tmp45_ = NULL;
			JsonBuilder* _tmp46_ = NULL;
			JsonBuilder* _tmp47_ = NULL;
			JsonBuilder* _tmp48_ = NULL;
			GgitCommit* _tmp49_ = NULL;
			GgitOId* _tmp50_ = NULL;
			GgitOId* _tmp51_ = NULL;
			gchar* _tmp52_ = NULL;
			gchar* _tmp53_ = NULL;
			JsonBuilder* _tmp54_ = NULL;
			JsonBuilder* _tmp55_ = NULL;
			GgitCommit* _tmp56_ = NULL;
			const gchar* _tmp57_ = NULL;
			JsonBuilder* _tmp58_ = NULL;
#line 254 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			_tmp40_ = _parent_index;
#line 254 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			_parent_index = _tmp40_ + 1;
#line 254 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			_tmp41_ = _parent_index;
#line 254 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			_tmp42_ = _parent_size;
#line 254 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			if (!(((guint) _tmp41_) < _tmp42_)) {
#line 254 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
				break;
#line 1839 "gitg-diff-view-request-diff.c"
			}
#line 254 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			_tmp43_ = _parent_list;
#line 254 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			_tmp44_ = _parent_index;
#line 254 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			_tmp45_ = ggit_commit_parents_get (_tmp43_, (guint) _tmp44_);
#line 254 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			parent = _tmp45_;
#line 256 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			_tmp46_ = builder;
#line 256 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			json_builder_begin_object (_tmp46_);
#line 258 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			_tmp47_ = builder;
#line 258 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			json_builder_set_member_name (_tmp47_, "id");
#line 259 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			_tmp48_ = builder;
#line 259 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			_tmp49_ = parent;
#line 259 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			_tmp50_ = ggit_object_get_id ((GgitObject*) _tmp49_);
#line 259 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			_tmp51_ = _tmp50_;
#line 259 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			_tmp52_ = ggit_oid_to_string (_tmp51_);
#line 259 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			_tmp53_ = _tmp52_;
#line 259 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			json_builder_add_string_value (_tmp48_, _tmp53_);
#line 259 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			_g_free0 (_tmp53_);
#line 259 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			__vala_GgitOId_free0 (_tmp51_);
#line 261 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			_tmp54_ = builder;
#line 261 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			json_builder_set_member_name (_tmp54_, "subject");
#line 262 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			_tmp55_ = builder;
#line 262 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			_tmp56_ = parent;
#line 262 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			_tmp57_ = ggit_commit_get_subject (_tmp56_);
#line 262 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			json_builder_add_string_value (_tmp55_, _tmp57_);
#line 264 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			_tmp58_ = builder;
#line 264 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			json_builder_end_object (_tmp58_);
#line 254 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			_g_object_unref0 (parent);
#line 1893 "gitg-diff-view-request-diff.c"
		}
#line 254 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_g_object_unref0 (_parent_list);
#line 1897 "gitg-diff-view-request-diff.c"
	}
#line 267 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp59_ = builder;
#line 267 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_end_array (_tmp59_);
#line 269 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp60_ = builder;
#line 269 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_end_object (_tmp60_);
#line 225 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_ggit_note_unref0 (note);
#line 1909 "gitg-diff-view-request-diff.c"
}


static Block5Data* block5_data_ref (Block5Data* _data5_) {
#line 272 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_atomic_int_inc (&_data5_->_ref_count_);
#line 272 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	return _data5_;
#line 1918 "gitg-diff-view-request-diff.c"
}


static void block5_data_unref (void * _userdata_) {
	Block5Data* _data5_;
	_data5_ = (Block5Data*) _userdata_;
#line 272 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (g_atomic_int_dec_and_test (&_data5_->_ref_count_)) {
#line 1927 "gitg-diff-view-request-diff.c"
		GitgDiffViewRequestDiff* self;
#line 272 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		self = _data5_->self;
#line 272 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_gitg_diff_view_request_diff_diff_state_unref0 (_data5_->state);
#line 272 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_g_object_unref0 (_data5_->builder);
#line 272 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_g_object_unref0 (_data5_->cancellable);
#line 272 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_gitg_diff_view_request_unref0 (self);
#line 272 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		g_slice_free (Block5Data, _data5_);
#line 1941 "gitg-diff-view-request-diff.c"
	}
}


static gint __lambda50_ (Block5Data* _data5_, GgitDiffDelta* delta, gfloat progress) {
	GitgDiffViewRequestDiff* self;
	gint result = 0;
	gboolean _tmp0_ = FALSE;
	GCancellable* _tmp1_ = NULL;
	JsonBuilder* _tmp4_ = NULL;
	GitgDiffViewRequestDiffDiffState* _tmp5_ = NULL;
	GgitDiffDelta* _tmp6_ = NULL;
	gfloat _tmp7_ = 0.0F;
#line 282 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	self = _data5_->self;
#line 282 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_val_if_fail (delta != NULL, 0);
#line 283 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp1_ = _data5_->cancellable;
#line 283 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (_tmp1_ != NULL) {
#line 1963 "gitg-diff-view-request-diff.c"
		GCancellable* _tmp2_ = NULL;
		gboolean _tmp3_ = FALSE;
#line 283 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp2_ = _data5_->cancellable;
#line 283 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp3_ = g_cancellable_is_cancelled (_tmp2_);
#line 283 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp0_ = _tmp3_;
#line 1972 "gitg-diff-view-request-diff.c"
	} else {
#line 283 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp0_ = FALSE;
#line 1976 "gitg-diff-view-request-diff.c"
	}
#line 283 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (_tmp0_) {
#line 285 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		result = 1;
#line 285 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		return result;
#line 1984 "gitg-diff-view-request-diff.c"
	}
#line 288 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp4_ = _data5_->builder;
#line 288 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp5_ = _data5_->state;
#line 288 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp6_ = delta;
#line 288 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp7_ = progress;
#line 288 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	gitg_diff_view_request_diff_file_cb (self, _tmp4_, _tmp5_, _tmp6_, _tmp7_);
#line 289 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	result = 0;
#line 289 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	return result;
#line 2000 "gitg-diff-view-request-diff.c"
}


static gint ___lambda50__ggit_diff_file_callback (GgitDiffDelta* delta, gfloat progress, gpointer self) {
	gint result;
	result = __lambda50_ (self, delta, progress);
#line 281 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	return result;
#line 2009 "gitg-diff-view-request-diff.c"
}


static gint __lambda51_ (Block5Data* _data5_, GgitDiffDelta* delta, GgitDiffHunk* hunk) {
	GitgDiffViewRequestDiff* self;
	gint result = 0;
	gboolean _tmp0_ = FALSE;
	GCancellable* _tmp1_ = NULL;
	gint maxold = 0;
	GgitDiffHunk* _tmp4_ = NULL;
	gint _tmp5_ = 0;
	GgitDiffHunk* _tmp6_ = NULL;
	gint _tmp7_ = 0;
	gint maxnew = 0;
	GgitDiffHunk* _tmp8_ = NULL;
	gint _tmp9_ = 0;
	GgitDiffHunk* _tmp10_ = NULL;
	gint _tmp11_ = 0;
	gint64 ml = 0LL;
	gint _tmp12_ = 0;
	gint _tmp13_ = 0;
	gint64 _tmp14_ = 0LL;
	gint64 _tmp15_ = 0LL;
	gint64 _tmp16_ = 0LL;
	gchar* header = NULL;
	GgitDiffHunk* _tmp18_ = NULL;
	const gchar* _tmp19_ = NULL;
	gchar* _tmp20_ = NULL;
	JsonBuilder* _tmp21_ = NULL;
	GitgDiffViewRequestDiffDiffState* _tmp22_ = NULL;
	GgitDiffDelta* _tmp23_ = NULL;
	GgitDiffHunk* _tmp24_ = NULL;
	const gchar* _tmp25_ = NULL;
#line 292 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	self = _data5_->self;
#line 292 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_val_if_fail (delta != NULL, 0);
#line 292 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_val_if_fail (hunk != NULL, 0);
#line 293 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp1_ = _data5_->cancellable;
#line 293 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (_tmp1_ != NULL) {
#line 2053 "gitg-diff-view-request-diff.c"
		GCancellable* _tmp2_ = NULL;
		gboolean _tmp3_ = FALSE;
#line 293 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp2_ = _data5_->cancellable;
#line 293 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp3_ = g_cancellable_is_cancelled (_tmp2_);
#line 293 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp0_ = _tmp3_;
#line 2062 "gitg-diff-view-request-diff.c"
	} else {
#line 293 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp0_ = FALSE;
#line 2066 "gitg-diff-view-request-diff.c"
	}
#line 293 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (_tmp0_) {
#line 295 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		result = 1;
#line 295 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		return result;
#line 2074 "gitg-diff-view-request-diff.c"
	}
#line 298 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp4_ = hunk;
#line 298 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp5_ = ggit_diff_hunk_get_old_start (_tmp4_);
#line 298 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp6_ = hunk;
#line 298 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp7_ = ggit_diff_hunk_get_old_lines (_tmp6_);
#line 298 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	maxold = _tmp5_ + _tmp7_;
#line 299 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp8_ = hunk;
#line 299 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp9_ = ggit_diff_hunk_get_new_start (_tmp8_);
#line 299 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp10_ = hunk;
#line 299 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp11_ = ggit_diff_hunk_get_new_lines (_tmp10_);
#line 299 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	maxnew = _tmp9_ + _tmp11_;
#line 301 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp12_ = maxold;
#line 301 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp13_ = maxnew;
#line 301 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp14_ = MAX ((gint64) _tmp12_, (gint64) _tmp13_);
#line 301 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	ml = _tmp14_;
#line 303 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp15_ = ml;
#line 303 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp16_ = _data5_->maxlines;
#line 303 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (_tmp15_ > _tmp16_) {
#line 2110 "gitg-diff-view-request-diff.c"
		gint64 _tmp17_ = 0LL;
#line 305 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp17_ = ml;
#line 305 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_data5_->maxlines = _tmp17_;
#line 2116 "gitg-diff-view-request-diff.c"
	}
#line 308 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp18_ = hunk;
#line 308 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp19_ = ggit_diff_hunk_get_header (_tmp18_);
#line 308 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp20_ = g_strdup (_tmp19_);
#line 308 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	header = _tmp20_;
#line 310 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp21_ = _data5_->builder;
#line 310 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp22_ = _data5_->state;
#line 310 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp23_ = delta;
#line 310 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp24_ = hunk;
#line 310 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp25_ = header;
#line 310 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	gitg_diff_view_request_diff_hunk_cb (self, _tmp21_, _tmp22_, _tmp23_, _tmp24_, _tmp25_);
#line 311 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	result = 0;
#line 311 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_g_free0 (header);
#line 311 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	return result;
#line 2144 "gitg-diff-view-request-diff.c"
}


static gint ___lambda51__ggit_diff_hunk_callback (GgitDiffDelta* delta, GgitDiffHunk* hunk, gpointer self) {
	gint result;
	result = __lambda51_ (self, delta, hunk);
#line 281 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	return result;
#line 2153 "gitg-diff-view-request-diff.c"
}


static gint __lambda52_ (Block5Data* _data5_, GgitDiffDelta* delta, GgitDiffHunk* hunk, GgitDiffLine* line) {
	GitgDiffViewRequestDiff* self;
	gint result = 0;
	gboolean _tmp0_ = FALSE;
	GCancellable* _tmp1_ = NULL;
	GgitDiffDelta* _tmp4_ = NULL;
	GgitDiffFlag _tmp5_ = 0;
#line 314 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	self = _data5_->self;
#line 314 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_val_if_fail (delta != NULL, 0);
#line 314 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_val_if_fail (hunk != NULL, 0);
#line 314 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_val_if_fail (line != NULL, 0);
#line 315 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp1_ = _data5_->cancellable;
#line 315 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (_tmp1_ != NULL) {
#line 2176 "gitg-diff-view-request-diff.c"
		GCancellable* _tmp2_ = NULL;
		gboolean _tmp3_ = FALSE;
#line 315 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp2_ = _data5_->cancellable;
#line 315 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp3_ = g_cancellable_is_cancelled (_tmp2_);
#line 315 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp0_ = _tmp3_;
#line 2185 "gitg-diff-view-request-diff.c"
	} else {
#line 315 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp0_ = FALSE;
#line 2189 "gitg-diff-view-request-diff.c"
	}
#line 315 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (_tmp0_) {
#line 317 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		result = 1;
#line 317 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		return result;
#line 2197 "gitg-diff-view-request-diff.c"
	}
#line 320 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp4_ = delta;
#line 320 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp5_ = ggit_diff_delta_get_flags (_tmp4_);
#line 320 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if ((_tmp5_ & GGIT_DIFF_FLAG_BINARY) == 0) {
#line 2205 "gitg-diff-view-request-diff.c"
		gint64 _tmp6_ = 0LL;
		JsonBuilder* _tmp7_ = NULL;
		GgitDiffDelta* _tmp8_ = NULL;
		GgitDiffHunk* _tmp9_ = NULL;
		GgitDiffLine* _tmp10_ = NULL;
#line 322 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp6_ = _data5_->numlines;
#line 322 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_data5_->numlines = _tmp6_ + 1;
#line 324 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp7_ = _data5_->builder;
#line 324 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp8_ = delta;
#line 324 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp9_ = hunk;
#line 324 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp10_ = line;
#line 324 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		gitg_diff_view_request_diff_line_cb (self, _tmp7_, _tmp8_, _tmp9_, _tmp10_);
#line 2225 "gitg-diff-view-request-diff.c"
	}
#line 327 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	result = 0;
#line 327 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	return result;
#line 2231 "gitg-diff-view-request-diff.c"
}


static gint ___lambda52__ggit_diff_line_callback (GgitDiffDelta* delta, GgitDiffHunk* hunk, GgitDiffLine* line, gpointer self) {
	gint result;
	result = __lambda52_ (self, delta, hunk, line);
#line 281 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	return result;
#line 2240 "gitg-diff-view-request-diff.c"
}


static void gitg_diff_view_request_diff_build_diff (GitgDiffViewRequestDiff* self, GgitDiff* diff, JsonBuilder* builder, GCancellable* cancellable, GError** error) {
	Block5Data* _data5_;
	JsonBuilder* _tmp0_ = NULL;
	JsonBuilder* _tmp1_ = NULL;
	GCancellable* _tmp2_ = NULL;
	GCancellable* _tmp3_ = NULL;
	GitgDiffViewRequestDiffDiffState* _tmp4_ = NULL;
	JsonBuilder* _tmp5_ = NULL;
	JsonBuilder* _tmp6_ = NULL;
	GgitDiff* _tmp7_ = NULL;
	gboolean _tmp8_ = FALSE;
	GCancellable* _tmp9_ = NULL;
	GitgDiffViewRequestDiffDiffState* _tmp13_ = NULL;
	gboolean _tmp14_ = FALSE;
	GitgDiffViewRequestDiffDiffState* _tmp17_ = NULL;
	gboolean _tmp18_ = FALSE;
	JsonBuilder* _tmp21_ = NULL;
	JsonBuilder* _tmp22_ = NULL;
	JsonBuilder* _tmp23_ = NULL;
	gint64 _tmp24_ = 0LL;
	JsonBuilder* _tmp25_ = NULL;
	JsonBuilder* _tmp26_ = NULL;
	gint64 _tmp27_ = 0LL;
	GError * _inner_error_ = NULL;
#line 272 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (self != NULL);
#line 272 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (builder != NULL);
#line 272 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_data5_ = g_slice_new0 (Block5Data);
#line 272 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_data5_->_ref_count_ = 1;
#line 272 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_data5_->self = gitg_diff_view_request_ref (self);
#line 272 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp0_ = builder;
#line 272 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp1_ = _g_object_ref0 (_tmp0_);
#line 272 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_g_object_unref0 (_data5_->builder);
#line 272 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_data5_->builder = _tmp1_;
#line 272 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp2_ = cancellable;
#line 272 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp3_ = _g_object_ref0 (_tmp2_);
#line 272 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_g_object_unref0 (_data5_->cancellable);
#line 272 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_data5_->cancellable = _tmp3_;
#line 274 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp4_ = gitg_diff_view_request_diff_diff_state_new ();
#line 274 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_data5_->state = _tmp4_;
#line 276 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp5_ = _data5_->builder;
#line 276 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp6_ = json_builder_set_member_name (_tmp5_, "diff");
#line 276 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_begin_array (_tmp6_);
#line 278 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_data5_->numlines = (gint64) 0;
#line 279 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_data5_->maxlines = (gint64) 0;
#line 281 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp7_ = diff;
#line 281 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	ggit_diff_foreach (_tmp7_, ___lambda50__ggit_diff_file_callback, ___lambda51__ggit_diff_hunk_callback, ___lambda52__ggit_diff_line_callback, _data5_, &_inner_error_);
#line 281 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 281 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		g_propagate_error (error, _inner_error_);
#line 281 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		block5_data_unref (_data5_);
#line 281 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_data5_ = NULL;
#line 281 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		return;
#line 2322 "gitg-diff-view-request-diff.c"
	}
#line 331 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp9_ = _data5_->cancellable;
#line 331 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (_tmp9_ != NULL) {
#line 2328 "gitg-diff-view-request-diff.c"
		GCancellable* _tmp10_ = NULL;
		gboolean _tmp11_ = FALSE;
#line 331 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp10_ = _data5_->cancellable;
#line 331 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp11_ = g_cancellable_is_cancelled (_tmp10_);
#line 331 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp8_ = _tmp11_;
#line 2337 "gitg-diff-view-request-diff.c"
	} else {
#line 331 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp8_ = FALSE;
#line 2341 "gitg-diff-view-request-diff.c"
	}
#line 331 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (_tmp8_) {
#line 2345 "gitg-diff-view-request-diff.c"
		GError* _tmp12_ = NULL;
#line 333 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp12_ = g_error_new_literal (G_IO_ERROR, G_IO_ERROR_CANCELLED, "Cancelled");
#line 333 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_inner_error_ = _tmp12_;
#line 333 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		g_propagate_error (error, _inner_error_);
#line 333 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		block5_data_unref (_data5_);
#line 333 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_data5_ = NULL;
#line 333 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		return;
#line 2359 "gitg-diff-view-request-diff.c"
	}
#line 336 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp13_ = _data5_->state;
#line 336 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp14_ = _tmp13_->in_hunk;
#line 336 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (_tmp14_) {
#line 2367 "gitg-diff-view-request-diff.c"
		JsonBuilder* _tmp15_ = NULL;
		JsonBuilder* _tmp16_ = NULL;
#line 338 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp15_ = _data5_->builder;
#line 338 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		json_builder_end_array (_tmp15_);
#line 339 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp16_ = _data5_->builder;
#line 339 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		json_builder_end_object (_tmp16_);
#line 2378 "gitg-diff-view-request-diff.c"
	}
#line 342 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp17_ = _data5_->state;
#line 342 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp18_ = _tmp17_->in_file;
#line 342 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (_tmp18_) {
#line 2386 "gitg-diff-view-request-diff.c"
		JsonBuilder* _tmp19_ = NULL;
		JsonBuilder* _tmp20_ = NULL;
#line 344 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp19_ = _data5_->builder;
#line 344 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		json_builder_end_array (_tmp19_);
#line 345 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp20_ = _data5_->builder;
#line 345 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		json_builder_end_object (_tmp20_);
#line 2397 "gitg-diff-view-request-diff.c"
	}
#line 348 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp21_ = _data5_->builder;
#line 348 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_end_array (_tmp21_);
#line 349 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp22_ = _data5_->builder;
#line 349 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp23_ = json_builder_set_member_name (_tmp22_, "lines");
#line 349 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp24_ = _data5_->numlines;
#line 349 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_add_int_value (_tmp23_, _tmp24_);
#line 350 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp25_ = _data5_->builder;
#line 350 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp26_ = json_builder_set_member_name (_tmp25_, "maxlines");
#line 350 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp27_ = _data5_->maxlines;
#line 350 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_add_int_value (_tmp26_, _tmp27_);
#line 272 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	block5_data_unref (_data5_);
#line 272 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_data5_ = NULL;
#line 2423 "gitg-diff-view-request-diff.c"
}


static void gitg_diff_view_request_diff_build_commit (GitgDiffViewRequestDiff* self, GgitDiff* diff, JsonBuilder* builder, GCancellable* cancellable) {
	JsonBuilder* _tmp0_ = NULL;
	JsonBuilder* _tmp1_ = NULL;
	GitgCommit* _tmp2_ = NULL;
#line 353 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (self != NULL);
#line 353 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (builder != NULL);
#line 355 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp0_ = builder;
#line 355 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_set_member_name (_tmp0_, "commit");
#line 356 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp1_ = builder;
#line 356 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp2_ = self->priv->d_commit;
#line 356 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	gitg_diff_view_request_diff_commit_to_json (self, _tmp1_, _tmp2_);
#line 2445 "gitg-diff-view-request-diff.c"
}


static GInputStream* gitg_diff_view_request_diff_run_diff (GitgDiffViewRequestDiff* self, GgitDiff* diff, GCancellable* cancellable, GError** error) {
	GInputStream* result = NULL;
	GgitDiff* _tmp0_ = NULL;
	JsonBuilder* builder = NULL;
	JsonBuilder* _tmp1_ = NULL;
	JsonBuilder* _tmp2_ = NULL;
	gboolean _tmp3_ = FALSE;
	GitgCommit* _tmp4_ = NULL;
	GitgDiffViewRequestDiffDiffType _tmp9_ = 0;
	JsonBuilder* _tmp13_ = NULL;
	GInputStream* _tmp14_ = NULL;
	JsonBuilder* _tmp15_ = NULL;
	GCancellable* _tmp16_ = NULL;
	gint64 _tmp17_ = 0LL;
	GInputStream* _tmp18_ = NULL;
	GInputStream* _tmp19_ = NULL;
	GError * _inner_error_ = NULL;
#line 359 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 361 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp0_ = diff;
#line 361 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (_tmp0_ == NULL) {
#line 363 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		result = NULL;
#line 363 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		return result;
#line 2476 "gitg-diff-view-request-diff.c"
	}
#line 367 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp1_ = json_builder_new ();
#line 367 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	builder = _tmp1_;
#line 369 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp2_ = builder;
#line 369 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_begin_object (_tmp2_);
#line 371 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp4_ = self->priv->d_commit;
#line 371 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (_tmp4_ != NULL) {
#line 2490 "gitg-diff-view-request-diff.c"
		GitgDiffViewRequestDiffDiffType _tmp5_ = 0;
#line 371 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp5_ = self->priv->d_diff_type;
#line 371 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp3_ = _tmp5_ != GITG_DIFF_VIEW_REQUEST_DIFF_DIFF_TYPE_DIFF_ONLY;
#line 2496 "gitg-diff-view-request-diff.c"
	} else {
#line 371 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp3_ = FALSE;
#line 2500 "gitg-diff-view-request-diff.c"
	}
#line 371 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (_tmp3_) {
#line 2504 "gitg-diff-view-request-diff.c"
		GgitDiff* _tmp6_ = NULL;
		JsonBuilder* _tmp7_ = NULL;
		GCancellable* _tmp8_ = NULL;
#line 373 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp6_ = diff;
#line 373 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp7_ = builder;
#line 373 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp8_ = cancellable;
#line 373 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		gitg_diff_view_request_diff_build_commit (self, _tmp6_, _tmp7_, _tmp8_);
#line 2516 "gitg-diff-view-request-diff.c"
	}
#line 376 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp9_ = self->priv->d_diff_type;
#line 376 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (_tmp9_ != GITG_DIFF_VIEW_REQUEST_DIFF_DIFF_TYPE_COMMIT_ONLY) {
#line 2522 "gitg-diff-view-request-diff.c"
		GgitDiff* _tmp10_ = NULL;
		JsonBuilder* _tmp11_ = NULL;
		GCancellable* _tmp12_ = NULL;
#line 378 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp10_ = diff;
#line 378 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp11_ = builder;
#line 378 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp12_ = cancellable;
#line 378 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		gitg_diff_view_request_diff_build_diff (self, _tmp10_, _tmp11_, _tmp12_, &_inner_error_);
#line 378 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 378 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			g_propagate_error (error, _inner_error_);
#line 378 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			_g_object_unref0 (builder);
#line 378 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			return NULL;
#line 2542 "gitg-diff-view-request-diff.c"
		}
	}
#line 381 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp13_ = builder;
#line 381 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	json_builder_end_object (_tmp13_);
#line 383 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp15_ = builder;
#line 383 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp16_ = cancellable;
#line 383 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp18_ = gitg_diff_view_request_json_to_stream ((GitgDiffViewRequest*) self, _tmp15_, _tmp16_, &_tmp17_, &_inner_error_);
#line 383 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	((GitgDiffViewRequest*) self)->d_size = _tmp17_;
#line 383 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp14_ = _tmp18_;
#line 383 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 383 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		g_propagate_error (error, _inner_error_);
#line 383 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_g_object_unref0 (builder);
#line 383 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		return NULL;
#line 2567 "gitg-diff-view-request-diff.c"
	}
#line 383 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp19_ = _tmp14_;
#line 383 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp14_ = NULL;
#line 383 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	result = _tmp19_;
#line 383 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_g_object_unref0 (_tmp14_);
#line 383 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_g_object_unref0 (builder);
#line 383 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	return result;
#line 2581 "gitg-diff-view-request-diff.c"
}


static GInputStream* gitg_diff_view_request_diff_real_run_async (GitgDiffViewRequest* base, GCancellable* cancellable, GError** error) {
	GitgDiffViewRequestDiff * self;
	GInputStream* result = NULL;
	gboolean _tmp0_ = FALSE;
	gboolean _tmp1_ = FALSE;
	GInputStream* _tmp3_ = NULL;
	GgitDiff* _tmp4_ = NULL;
	GCancellable* _tmp5_ = NULL;
	GInputStream* _tmp6_ = NULL;
	GInputStream* _tmp7_ = NULL;
	GError * _inner_error_ = NULL;
#line 386 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	self = (GitgDiffViewRequestDiff*) base;
#line 388 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp0_ = gitg_diff_view_request_get_has_view ((GitgDiffViewRequest*) self);
#line 388 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp1_ = _tmp0_;
#line 388 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (!_tmp1_) {
#line 2604 "gitg-diff-view-request-diff.c"
		GError* _tmp2_ = NULL;
#line 390 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_tmp2_ = g_error_new_literal (G_IO_ERROR, G_IO_ERROR_NOT_FOUND, "Could not find diff view with corresponding id");
#line 390 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		_inner_error_ = _tmp2_;
#line 390 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		g_propagate_error (error, _inner_error_);
#line 390 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		return NULL;
#line 2614 "gitg-diff-view-request-diff.c"
	}
#line 393 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp4_ = self->priv->d_diff;
#line 393 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp5_ = cancellable;
#line 393 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp6_ = gitg_diff_view_request_diff_run_diff (self, _tmp4_, _tmp5_, &_inner_error_);
#line 393 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp3_ = _tmp6_;
#line 393 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 393 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		g_propagate_error (error, _inner_error_);
#line 393 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		return NULL;
#line 2630 "gitg-diff-view-request-diff.c"
	}
#line 393 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp7_ = _tmp3_;
#line 393 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_tmp3_ = NULL;
#line 393 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	result = _tmp7_;
#line 393 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_g_object_unref0 (_tmp3_);
#line 393 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	return result;
#line 2642 "gitg-diff-view-request-diff.c"
}


static GitgDiffViewRequestDiffDiffState* gitg_diff_view_request_diff_diff_state_construct (GType object_type) {
	GitgDiffViewRequestDiffDiffState* self = NULL;
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	self = (GitgDiffViewRequestDiffDiffState*) g_type_create_instance (object_type);
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	return self;
#line 2652 "gitg-diff-view-request-diff.c"
}


static GitgDiffViewRequestDiffDiffState* gitg_diff_view_request_diff_diff_state_new (void) {
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	return gitg_diff_view_request_diff_diff_state_construct (GITG_DIFF_VIEW_REQUEST_DIFF_TYPE_DIFF_STATE);
#line 2659 "gitg-diff-view-request-diff.c"
}


static void gitg_diff_view_request_diff_value_diff_state_init (GValue* value) {
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	value->data[0].v_pointer = NULL;
#line 2666 "gitg-diff-view-request-diff.c"
}


static void gitg_diff_view_request_diff_value_diff_state_free_value (GValue* value) {
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (value->data[0].v_pointer) {
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		gitg_diff_view_request_diff_diff_state_unref (value->data[0].v_pointer);
#line 2675 "gitg-diff-view-request-diff.c"
	}
}


static void gitg_diff_view_request_diff_value_diff_state_copy_value (const GValue* src_value, GValue* dest_value) {
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (src_value->data[0].v_pointer) {
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		dest_value->data[0].v_pointer = gitg_diff_view_request_diff_diff_state_ref (src_value->data[0].v_pointer);
#line 2685 "gitg-diff-view-request-diff.c"
	} else {
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		dest_value->data[0].v_pointer = NULL;
#line 2689 "gitg-diff-view-request-diff.c"
	}
}


static gpointer gitg_diff_view_request_diff_value_diff_state_peek_pointer (const GValue* value) {
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	return value->data[0].v_pointer;
#line 2697 "gitg-diff-view-request-diff.c"
}


static gchar* gitg_diff_view_request_diff_value_diff_state_collect_value (GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) {
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (collect_values[0].v_pointer) {
#line 2704 "gitg-diff-view-request-diff.c"
		GitgDiffViewRequestDiffDiffState* object;
		object = collect_values[0].v_pointer;
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		if (object->parent_instance.g_class == NULL) {
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL);
#line 2711 "gitg-diff-view-request-diff.c"
		} else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) {
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
			return g_strconcat ("invalid object type `", g_type_name (G_TYPE_FROM_INSTANCE (object)), "' for value type `", G_VALUE_TYPE_NAME (value), "'", NULL);
#line 2715 "gitg-diff-view-request-diff.c"
		}
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		value->data[0].v_pointer = gitg_diff_view_request_diff_diff_state_ref (object);
#line 2719 "gitg-diff-view-request-diff.c"
	} else {
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		value->data[0].v_pointer = NULL;
#line 2723 "gitg-diff-view-request-diff.c"
	}
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	return NULL;
#line 2727 "gitg-diff-view-request-diff.c"
}


static gchar* gitg_diff_view_request_diff_value_diff_state_lcopy_value (const GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) {
	GitgDiffViewRequestDiffDiffState** object_p;
	object_p = collect_values[0].v_pointer;
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (!object_p) {
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value));
#line 2738 "gitg-diff-view-request-diff.c"
	}
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (!value->data[0].v_pointer) {
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		*object_p = NULL;
#line 2744 "gitg-diff-view-request-diff.c"
	} else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) {
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		*object_p = value->data[0].v_pointer;
#line 2748 "gitg-diff-view-request-diff.c"
	} else {
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		*object_p = gitg_diff_view_request_diff_diff_state_ref (value->data[0].v_pointer);
#line 2752 "gitg-diff-view-request-diff.c"
	}
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	return NULL;
#line 2756 "gitg-diff-view-request-diff.c"
}


static GParamSpec* gitg_diff_view_request_diff_param_spec_diff_state (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags) {
	GitgDiffViewRequestDiffParamSpecDiffState* spec;
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_val_if_fail (g_type_is_a (object_type, GITG_DIFF_VIEW_REQUEST_DIFF_TYPE_DIFF_STATE), NULL);
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags);
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	G_PARAM_SPEC (spec)->value_type = object_type;
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	return G_PARAM_SPEC (spec);
#line 2770 "gitg-diff-view-request-diff.c"
}


static gpointer gitg_diff_view_request_diff_value_get_diff_state (const GValue* value) {
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, GITG_DIFF_VIEW_REQUEST_DIFF_TYPE_DIFF_STATE), NULL);
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	return value->data[0].v_pointer;
#line 2779 "gitg-diff-view-request-diff.c"
}


static void gitg_diff_view_request_diff_value_set_diff_state (GValue* value, gpointer v_object) {
	GitgDiffViewRequestDiffDiffState* old;
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, GITG_DIFF_VIEW_REQUEST_DIFF_TYPE_DIFF_STATE));
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	old = value->data[0].v_pointer;
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (v_object) {
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, GITG_DIFF_VIEW_REQUEST_DIFF_TYPE_DIFF_STATE));
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		value->data[0].v_pointer = v_object;
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		gitg_diff_view_request_diff_diff_state_ref (value->data[0].v_pointer);
#line 2799 "gitg-diff-view-request-diff.c"
	} else {
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		value->data[0].v_pointer = NULL;
#line 2803 "gitg-diff-view-request-diff.c"
	}
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (old) {
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		gitg_diff_view_request_diff_diff_state_unref (old);
#line 2809 "gitg-diff-view-request-diff.c"
	}
}


static void gitg_diff_view_request_diff_value_take_diff_state (GValue* value, gpointer v_object) {
	GitgDiffViewRequestDiffDiffState* old;
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, GITG_DIFF_VIEW_REQUEST_DIFF_TYPE_DIFF_STATE));
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	old = value->data[0].v_pointer;
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (v_object) {
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, GITG_DIFF_VIEW_REQUEST_DIFF_TYPE_DIFF_STATE));
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		value->data[0].v_pointer = v_object;
#line 2828 "gitg-diff-view-request-diff.c"
	} else {
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		value->data[0].v_pointer = NULL;
#line 2832 "gitg-diff-view-request-diff.c"
	}
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (old) {
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		gitg_diff_view_request_diff_diff_state_unref (old);
#line 2838 "gitg-diff-view-request-diff.c"
	}
}


static void gitg_diff_view_request_diff_diff_state_class_init (GitgDiffViewRequestDiffDiffStateClass * klass) {
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	gitg_diff_view_request_diff_diff_state_parent_class = g_type_class_peek_parent (klass);
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	((GitgDiffViewRequestDiffDiffStateClass *) klass)->finalize = gitg_diff_view_request_diff_diff_state_finalize;
#line 2848 "gitg-diff-view-request-diff.c"
}


static void gitg_diff_view_request_diff_diff_state_instance_init (GitgDiffViewRequestDiffDiffState * self) {
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	self->ref_count = 1;
#line 2855 "gitg-diff-view-request-diff.c"
}


static void gitg_diff_view_request_diff_diff_state_finalize (GitgDiffViewRequestDiffDiffState* obj) {
	GitgDiffViewRequestDiffDiffState * self;
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, GITG_DIFF_VIEW_REQUEST_DIFF_TYPE_DIFF_STATE, GitgDiffViewRequestDiffDiffState);
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_signal_handlers_destroy (self);
#line 2865 "gitg-diff-view-request-diff.c"
}


static GType gitg_diff_view_request_diff_diff_state_get_type (void) {
	static volatile gsize gitg_diff_view_request_diff_diff_state_type_id__volatile = 0;
	if (g_once_init_enter (&gitg_diff_view_request_diff_diff_state_type_id__volatile)) {
		static const GTypeValueTable g_define_type_value_table = { gitg_diff_view_request_diff_value_diff_state_init, gitg_diff_view_request_diff_value_diff_state_free_value, gitg_diff_view_request_diff_value_diff_state_copy_value, gitg_diff_view_request_diff_value_diff_state_peek_pointer, "p", gitg_diff_view_request_diff_value_diff_state_collect_value, "p", gitg_diff_view_request_diff_value_diff_state_lcopy_value };
		static const GTypeInfo g_define_type_info = { sizeof (GitgDiffViewRequestDiffDiffStateClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) gitg_diff_view_request_diff_diff_state_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (GitgDiffViewRequestDiffDiffState), 0, (GInstanceInitFunc) gitg_diff_view_request_diff_diff_state_instance_init, &g_define_type_value_table };
		static const GTypeFundamentalInfo g_define_type_fundamental_info = { (G_TYPE_FLAG_CLASSED | G_TYPE_FLAG_INSTANTIATABLE | G_TYPE_FLAG_DERIVABLE | G_TYPE_FLAG_DEEP_DERIVABLE) };
		GType gitg_diff_view_request_diff_diff_state_type_id;
		gitg_diff_view_request_diff_diff_state_type_id = g_type_register_fundamental (g_type_fundamental_next (), "GitgDiffViewRequestDiffDiffState", &g_define_type_info, &g_define_type_fundamental_info, 0);
		g_once_init_leave (&gitg_diff_view_request_diff_diff_state_type_id__volatile, gitg_diff_view_request_diff_diff_state_type_id);
	}
	return gitg_diff_view_request_diff_diff_state_type_id__volatile;
}


static gpointer gitg_diff_view_request_diff_diff_state_ref (gpointer instance) {
	GitgDiffViewRequestDiffDiffState* self;
	self = instance;
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_atomic_int_inc (&self->ref_count);
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	return instance;
#line 2890 "gitg-diff-view-request-diff.c"
}


static void gitg_diff_view_request_diff_diff_state_unref (gpointer instance) {
	GitgDiffViewRequestDiffDiffState* self;
	self = instance;
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	if (g_atomic_int_dec_and_test (&self->ref_count)) {
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		GITG_DIFF_VIEW_REQUEST_DIFF_DIFF_STATE_GET_CLASS (self)->finalize (self);
#line 82 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
		g_type_free_instance ((GTypeInstance *) self);
#line 2903 "gitg-diff-view-request-diff.c"
	}
}


static void gitg_diff_view_request_diff_class_init (GitgDiffViewRequestDiffClass * klass) {
#line 21 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	gitg_diff_view_request_diff_parent_class = g_type_class_peek_parent (klass);
#line 21 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	((GitgDiffViewRequestClass *) klass)->finalize = gitg_diff_view_request_diff_finalize;
#line 21 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	g_type_class_add_private (klass, sizeof (GitgDiffViewRequestDiffPrivate));
#line 21 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	((GitgDiffViewRequestClass *) klass)->run_async = gitg_diff_view_request_diff_real_run_async;
#line 2917 "gitg-diff-view-request-diff.c"
}


static void gitg_diff_view_request_diff_instance_init (GitgDiffViewRequestDiff * self) {
#line 21 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	self->priv = GITG_DIFF_VIEW_REQUEST_DIFF_GET_PRIVATE (self);
#line 2924 "gitg-diff-view-request-diff.c"
}


static void gitg_diff_view_request_diff_finalize (GitgDiffViewRequest* obj) {
	GitgDiffViewRequestDiff * self;
#line 21 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, GITG_TYPE_DIFF_VIEW_REQUEST_DIFF, GitgDiffViewRequestDiff);
#line 31 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_g_object_unref0 (self->priv->d_diff);
#line 32 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	_g_object_unref0 (self->priv->d_commit);
#line 21 "/home/garrett/hacking/gnome/gitg/libgitg/gitg-diff-view-request-diff.vala"
	GITG_DIFF_VIEW_REQUEST_CLASS (gitg_diff_view_request_diff_parent_class)->finalize (obj);
#line 2938 "gitg-diff-view-request-diff.c"
}


GType gitg_diff_view_request_diff_get_type (void) {
	static volatile gsize gitg_diff_view_request_diff_type_id__volatile = 0;
	if (g_once_init_enter (&gitg_diff_view_request_diff_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (GitgDiffViewRequestDiffClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) gitg_diff_view_request_diff_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (GitgDiffViewRequestDiff), 0, (GInstanceInitFunc) gitg_diff_view_request_diff_instance_init, NULL };
		GType gitg_diff_view_request_diff_type_id;
		gitg_diff_view_request_diff_type_id = g_type_register_static (GITG_TYPE_DIFF_VIEW_REQUEST, "GitgDiffViewRequestDiff", &g_define_type_info, 0);
		g_once_init_leave (&gitg_diff_view_request_diff_type_id__volatile, gitg_diff_view_request_diff_type_id);
	}
	return gitg_diff_view_request_diff_type_id__volatile;
}



