Description: <short summary of the patch>
 TODO: Put a short summary on the line above and replace this paragraph
 with a longer explanation of this change. Complete the meta-information
 with other relevant fields (see below for details). To make it easier, the
 information below has been extracted from the changelog. Adjust it or drop
 it.
 .
 moonshot-ui (0.7.1-3) unstable; urgency=medium
 .
   * Depend on libgee-0.8-dev, Closes: #784651
Author: Sam Hartman <hartmans@debian.org>
Bug-Debian: https://bugs.debian.org/784651

---
The information above should follow the Patch Tagging Guidelines, please
checkout http://dep.debian.net/deps/dep3/ to learn about the format. Here
are templates for supplementary fields that you might want to add:

Origin: <vendor|upstream|other>, <url of original patch>
Bug: <url in upstream bugtracker>
Bug-Debian: https://bugs.debian.org/<bugnumber>
Bug-Ubuntu: https://launchpad.net/bugs/<bugnumber>
Forwarded: <no|not-needed|url proving that it has been forwarded>
Reviewed-By: <name and email of someone who approved the patch>
Last-Update: <YYYY-MM-DD>

--- moonshot-ui-0.7.1.orig/Makefile.am
+++ moonshot-ui-0.7.1/Makefile.am
@@ -65,7 +65,7 @@ src_moonshot_webp_SOURCES = \
         src/moonshot-provisioning-common.vala \
         src/moonshot-id.vala
 
-src_moonshot_VALAFLAGS = --pkg gdk-2.0 --pkg gtk+-2.0 --pkg gee-1.0 $(AM_VALAFLAGS)
+src_moonshot_VALAFLAGS = --pkg gdk-2.0 --pkg gtk+-2.0 --pkg gee-0.8 $(AM_VALAFLAGS)
 src_moonshot_CPPFLAGS = $(moonshot_CFLAGS) $(AM_CPPFLAGS)  
 src_moonshot_LDADD = $(moonshot_LIBS) 
 src_moonshot_LDFLAGS = -g -O0
@@ -183,6 +183,9 @@ AM_VALAFLAGS += \
 	--define=IPC_DBUS
 endif
 endif
+if GIO_VAPI_USES_ARRAYS
+AM_VALAFLAGS += --define=GIO_VAPI_USES_ARRAYS
+endif
 
 EXTRA_DIST = webprovisioning/moonshot.xml $(dbusservice_in_files) \
 	webprovisioning/complex-test.msht webprovisioning/sample.msht \
--- moonshot-ui-0.7.1.orig/configure.ac
+++ moonshot-ui-0.7.1/configure.ac
@@ -103,9 +103,14 @@ AM_CONDITIONAL([IPC_DBUS], [test "$SERVE
 AM_CONDITIONAL([IPC_DBUS_GLIB], [test "$SERVER_IPC_MODULE" = "dbus-glib-1"])
 AM_CONDITIONAL([IPC_GDBUS], [test "$SERVER_IPC_MODULE" = "gio-2.0"])
 
+vala_version=`$VALAC --version | sed 's/Vala  *//'`
+AS_VERSION_COMPARE(["$vala_version"], [0.11.1],
+  [gio_vapi_uses_arrays="no"],
+  [gio_vapi_uses_arrays="yes"],
+  [gio_vapi_uses_arrays="yes"])
+AM_CONDITIONAL([GIO_VAPI_USES_ARRAYS], [test "$gio_vapi_uses_arrays" = "yes"])
 if test "$SERVER_IPC_MODULE" = "dbus-glib-1"; then
   AC_MSG_CHECKING([$VALAC is no greater than 0.12.1])
-  vala_version=`$VALAC --version | sed 's/Vala  *//'`
   AS_VERSION_COMPARE([0.12.2], ["$vala_version"],
     [vala_supports_dbus_glib="no"],
     [vala_supports_dbus_glib="no"],
@@ -215,7 +220,7 @@ PKG_CHECK_MODULES(moonshot,[
         glib-2.0 >= 2.22
         gobject-2.0 >= 2.22
         $GTK_VERSION
-        gee-1.0 >= 0.5
+        gee-0.8 >= 0.5
         $SERVER_IPC_MODULE
 		$MAC
 ])
@@ -226,7 +231,7 @@ PKG_CHECK_MODULES(libmoonshot,[
 
 # i18n stuff
 AM_GNU_GETTEXT([external])
-AM_GNU_GETTEXT_VERSION([0.17])
+AM_GNU_GETTEXT_VERSION([0.18.1])
 
 AC_SUBST([GETTEXT_PACKAGE],[PACKAGE_TARNAME])
 AC_DEFINE([GETTEXT_PACKAGE],[PACKAGE_TARNAME],[Define to the gettext package name.])
--- moonshot-ui-0.7.1.orig/flatstore-users
+++ moonshot-ui-0.7.1/flatstore-users
@@ -1,2 +1,5 @@
 root
 gdm
+freerad
+radius
+trustrouter
--- moonshot-ui-0.7.1.orig/moonshot-ui.spec.in
+++ moonshot-ui-0.7.1/moonshot-ui.spec.in
@@ -1,6 +1,6 @@
 Name:           @PACKAGE@
 Version:        @VERSION@
-Release:        1%{?dist}
+Release:        2%{?dist}
 Summary:        Moonshot Federated Identity User Interface
 
 Group:          Security Tools
--- moonshot-ui-0.7.1.orig/src/moonshot-add-dialog.c
+++ moonshot-ui-0.7.1/src/moonshot-add-dialog.c
@@ -1,4 +1,4 @@
-/* moonshot-add-dialog.c generated by valac 0.24.0, the Vala compiler
+/* moonshot-add-dialog.c generated by valac 0.26.1, the Vala compiler
  * generated from moonshot-add-dialog.vala, do not modify */
 
 /*
@@ -124,11 +124,11 @@ static gpointer _g_object_ref0 (gpointer
 
 static const gchar* string_to_string (const gchar* self) {
 	const gchar* result = NULL;
-#line 1310 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 1314 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	g_return_val_if_fail (self != NULL, NULL);
-#line 1311 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 1315 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	result = self;
-#line 1311 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 1315 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	return result;
 #line 134 "moonshot-add-dialog.c"
 }
--- moonshot-ui-0.7.1.orig/src/moonshot-custom-vbox.c
+++ moonshot-ui-0.7.1/src/moonshot-custom-vbox.c
@@ -1,4 +1,4 @@
-/* moonshot-custom-vbox.c generated by valac 0.24.0, the Vala compiler
+/* moonshot-custom-vbox.c generated by valac 0.26.1, the Vala compiler
  * generated from moonshot-custom-vbox.vala, do not modify */
 
 /*
--- moonshot-ui-0.7.1.orig/src/moonshot-id.c
+++ moonshot-ui-0.7.1/src/moonshot-id.c
@@ -1,4 +1,4 @@
-/* moonshot-id.c generated by valac 0.24.0, the Vala compiler
+/* moonshot-id.c generated by valac 0.26.1, the Vala compiler
  * generated from moonshot-id.vala, do not modify */
 
 /*
@@ -196,9 +196,9 @@ void id_card_set_display_name (IdCard* s
 void id_card_set_username (IdCard* self, const gchar* value);
 void id_card_set_issuer (IdCard* self, const gchar* value);
 void id_card_set_rules (IdCard* self, Rule* value, int value_length1);
-static Rule* _vala_array_dup8 (Rule* self, int length);
+static Rule* _vala_array_dup5 (Rule* self, int length);
 void id_card_set_services (IdCard* self, gchar** value, int value_length1);
-static gchar** _vala_array_dup9 (gchar** self, int length);
+static gchar** _vala_array_dup6 (gchar** self, int length);
 gboolean id_card_get_temporary (IdCard* self);
 void id_card_set_temporary (IdCard* self, gboolean value);
 void id_card_set_trust_anchor (IdCard* self, TrustAnchor* value);
@@ -1202,7 +1202,7 @@ Rule* id_card_get_rules (IdCard* self, i
 }
 
 
-static Rule* _vala_array_dup8 (Rule* self, int length) {
+static Rule* _vala_array_dup5 (Rule* self, int length) {
 	Rule* result;
 	int i;
 #line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
@@ -1235,7 +1235,7 @@ void id_card_set_rules (IdCard* self, Ru
 #line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
 	_tmp0__length1 = value_length1;
 #line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
-	_tmp1_ = (_tmp0_ != NULL) ? _vala_array_dup8 (_tmp0_, _tmp0__length1) : ((gpointer) _tmp0_);
+	_tmp1_ = (_tmp0_ != NULL) ? _vala_array_dup5 (_tmp0_, _tmp0__length1) : ((gpointer) _tmp0_);
 #line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
 	_tmp1__length1 = _tmp0__length1;
 #line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
@@ -1280,7 +1280,7 @@ gchar** id_card_get_services (IdCard* se
 }
 
 
-static gchar** _vala_array_dup9 (gchar** self, int length) {
+static gchar** _vala_array_dup6 (gchar** self, int length) {
 	gchar** result;
 	int i;
 #line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
@@ -1313,7 +1313,7 @@ void id_card_set_services (IdCard* self,
 #line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
 	_tmp0__length1 = value_length1;
 #line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
-	_tmp1_ = (_tmp0_ != NULL) ? _vala_array_dup9 (_tmp0_, _tmp0__length1) : ((gpointer) _tmp0_);
+	_tmp1_ = (_tmp0_ != NULL) ? _vala_array_dup6 (_tmp0_, _tmp0__length1) : ((gpointer) _tmp0_);
 #line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
 	_tmp1__length1 = _tmp0__length1;
 #line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
--- moonshot-ui-0.7.1.orig/src/moonshot-idcard-store.c
+++ moonshot-ui-0.7.1/src/moonshot-idcard-store.c
@@ -1,4 +1,4 @@
-/* moonshot-idcard-store.c generated by valac 0.24.0, the Vala compiler
+/* moonshot-idcard-store.c generated by valac 0.26.1, the Vala compiler
  * generated from moonshot-idcard-store.vala, do not modify */
 
 /*
--- moonshot-ui-0.7.1.orig/src/moonshot-idcard-widget.c
+++ moonshot-ui-0.7.1/src/moonshot-idcard-widget.c
@@ -1,4 +1,4 @@
-/* moonshot-idcard-widget.c generated by valac 0.24.0, the Vala compiler
+/* moonshot-idcard-widget.c generated by valac 0.26.1, the Vala compiler
  * generated from moonshot-idcard-widget.vala, do not modify */
 
 /*
--- moonshot-ui-0.7.1.orig/src/moonshot-identities-manager.c
+++ moonshot-ui-0.7.1/src/moonshot-identities-manager.c
@@ -1,4 +1,4 @@
-/* moonshot-identities-manager.c generated by valac 0.24.0, the Vala compiler
+/* moonshot-identities-manager.c generated by valac 0.26.1, the Vala compiler
  * generated from moonshot-identities-manager.vala, do not modify */
 
 /*
@@ -257,9 +257,9 @@ enum  {
 #define IDENTITY_MANAGER_MODEL_FILE_NAME "identities.txt"
 GeeLinkedList* identity_manager_model_get_card_list (IdentityManagerModel* self);
 GeeLinkedList* iidentity_card_store_get_card_list (IIdentityCardStore* self);
-static gint __lambda3_ (gconstpointer a, gconstpointer b);
+static gint __lambda4_ (IdentityManagerModel* self, IdCard* a, IdCard* b);
 gboolean id_card_IsNoIdentity (IdCard* self);
-static gint ___lambda3__gcompare_func (gconstpointer a, gconstpointer b);
+static gint ___lambda4__gcompare_data_func (gconstpointer a, gconstpointer b, gpointer self);
 IdCard* id_card_NewNoIdentity (void);
 gboolean id_card_get_store_password (IdCard* self);
 gboolean identity_manager_model_display_name_is_valid (IdentityManagerModel* self, const gchar* name, gchar** candidate);
@@ -556,7 +556,7 @@ static void password_class_init (Passwor
 #line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	password_parent_class = g_type_class_peek_parent (klass);
 #line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-	PASSWORD_CLASS (klass)->finalize = password_finalize;
+	((PasswordClass *) klass)->finalize = password_finalize;
 #line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	g_type_class_add_private (klass, sizeof (PasswordPrivate));
 #line 563 "moonshot-identities-manager.c"
@@ -576,9 +576,11 @@ static void password_finalize (Password*
 	Password * self;
 #line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_PASSWORD, Password);
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+	g_signal_handlers_destroy (self);
 #line 59 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	password_set_password (self, NULL);
-#line 582 "moonshot-identities-manager.c"
+#line 584 "moonshot-identities-manager.c"
 }
 
 
@@ -603,7 +605,7 @@ gpointer password_ref (gpointer instance
 	g_atomic_int_inc (&self->ref_count);
 #line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	return instance;
-#line 607 "moonshot-identities-manager.c"
+#line 609 "moonshot-identities-manager.c"
 }
 
 
@@ -616,7 +618,7 @@ void password_unref (gpointer instance)
 		PASSWORD_GET_CLASS (self)->finalize (self);
 #line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		g_type_free_instance ((GTypeInstance *) self);
-#line 620 "moonshot-identities-manager.c"
+#line 622 "moonshot-identities-manager.c"
 	}
 }
 
@@ -649,7 +651,7 @@ static gchar* password_hash_table_Comput
 	result = _tmp5_;
 #line 67 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	return result;
-#line 653 "moonshot-identities-manager.c"
+#line 655 "moonshot-identities-manager.c"
 }
 
 
@@ -686,7 +688,7 @@ void password_hash_table_CachePassword (
 	_tmp7_ = password_new (_tmp6_);
 #line 71 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	g_hash_table_replace (_tmp0_, _tmp3_, _tmp7_);
-#line 690 "moonshot-identities-manager.c"
+#line 692 "moonshot-identities-manager.c"
 }
 
 
@@ -716,7 +718,7 @@ void password_hash_table_RemovePassword
 	g_hash_table_remove (_tmp0_, _tmp4_);
 #line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	_g_free0 (_tmp4_);
-#line 720 "moonshot-identities-manager.c"
+#line 722 "moonshot-identities-manager.c"
 }
 
 
@@ -758,7 +760,7 @@ void password_hash_table_RetrievePasswor
 	_tmp7_ = password;
 #line 79 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	if (_tmp7_ != NULL) {
-#line 762 "moonshot-identities-manager.c"
+#line 764 "moonshot-identities-manager.c"
 		IdCard* _tmp8_ = NULL;
 		Password* _tmp9_ = NULL;
 		const gchar* _tmp10_ = NULL;
@@ -773,7 +775,7 @@ void password_hash_table_RetrievePasswor
 		_tmp11_ = _tmp10_;
 #line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		id_card_set_password (_tmp8_, _tmp11_);
-#line 777 "moonshot-identities-manager.c"
+#line 779 "moonshot-identities-manager.c"
 	}
 }
 
@@ -781,14 +783,14 @@ void password_hash_table_RetrievePasswor
 static void _g_free0_ (gpointer var) {
 #line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	var = (g_free (var), NULL);
-#line 785 "moonshot-identities-manager.c"
+#line 787 "moonshot-identities-manager.c"
 }
 
 
 static void _password_unref0_ (gpointer var) {
 #line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	(var == NULL) ? NULL : (var = (password_unref (var), NULL));
-#line 792 "moonshot-identities-manager.c"
+#line 794 "moonshot-identities-manager.c"
 }
 
 
@@ -811,14 +813,14 @@ PasswordHashTable* password_hash_table_c
 	self->priv->password_table = _tmp2_;
 #line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	return self;
-#line 815 "moonshot-identities-manager.c"
+#line 817 "moonshot-identities-manager.c"
 }
 
 
 PasswordHashTable* password_hash_table_new (void) {
 #line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	return password_hash_table_construct (TYPE_PASSWORD_HASH_TABLE);
-#line 822 "moonshot-identities-manager.c"
+#line 824 "moonshot-identities-manager.c"
 }
 
 
@@ -829,14 +831,14 @@ static void password_hash_table_class_in
 	g_type_class_add_private (klass, sizeof (PasswordHashTablePrivate));
 #line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	G_OBJECT_CLASS (klass)->finalize = password_hash_table_finalize;
-#line 833 "moonshot-identities-manager.c"
+#line 835 "moonshot-identities-manager.c"
 }
 
 
 static void password_hash_table_instance_init (PasswordHashTable * self) {
 #line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	self->priv = PASSWORD_HASH_TABLE_GET_PRIVATE (self);
-#line 840 "moonshot-identities-manager.c"
+#line 842 "moonshot-identities-manager.c"
 }
 
 
@@ -848,7 +850,7 @@ static void password_hash_table_finalize
 	_g_hash_table_unref0 (self->priv->password_table);
 #line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	G_OBJECT_CLASS (password_hash_table_parent_class)->finalize (obj);
-#line 852 "moonshot-identities-manager.c"
+#line 854 "moonshot-identities-manager.c"
 }
 
 
@@ -867,17 +869,17 @@ GType password_hash_table_get_type (void
 static gpointer _g_object_ref0 (gpointer self) {
 #line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	return self ? g_object_ref (self) : NULL;
-#line 871 "moonshot-identities-manager.c"
+#line 873 "moonshot-identities-manager.c"
 }
 
 
-static gint __lambda3_ (gconstpointer a, gconstpointer b) {
+static gint __lambda4_ (IdentityManagerModel* self, IdCard* a, IdCard* b) {
 	gint result = 0;
 	IdCard* id_a = NULL;
-	gconstpointer _tmp0_ = NULL;
+	IdCard* _tmp0_ = NULL;
 	IdCard* _tmp1_ = NULL;
 	IdCard* id_b = NULL;
-	gconstpointer _tmp2_ = NULL;
+	IdCard* _tmp2_ = NULL;
 	IdCard* _tmp3_ = NULL;
 	gboolean _tmp4_ = FALSE;
 	IdCard* _tmp5_ = NULL;
@@ -890,6 +892,10 @@ static gint __lambda3_ (gconstpointer a,
 	const gchar* _tmp19_ = NULL;
 	const gchar* _tmp20_ = NULL;
 	gint _tmp21_ = 0;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+	g_return_val_if_fail (a != NULL, 0);
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+	g_return_val_if_fail (b != NULL, 0);
 #line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	_tmp0_ = a;
 #line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
@@ -908,7 +914,7 @@ static gint __lambda3_ (gconstpointer a,
 	_tmp6_ = id_card_IsNoIdentity (_tmp5_);
 #line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	if (_tmp6_) {
-#line 912 "moonshot-identities-manager.c"
+#line 918 "moonshot-identities-manager.c"
 		IdCard* _tmp7_ = NULL;
 		gboolean _tmp8_ = FALSE;
 #line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
@@ -917,11 +923,11 @@ static gint __lambda3_ (gconstpointer a,
 		_tmp8_ = id_card_IsNoIdentity (_tmp7_);
 #line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		_tmp4_ = !_tmp8_;
-#line 921 "moonshot-identities-manager.c"
+#line 927 "moonshot-identities-manager.c"
 	} else {
 #line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		_tmp4_ = FALSE;
-#line 925 "moonshot-identities-manager.c"
+#line 931 "moonshot-identities-manager.c"
 	}
 #line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	if (_tmp4_) {
@@ -933,7 +939,7 @@ static gint __lambda3_ (gconstpointer a,
 		_g_object_unref0 (id_a);
 #line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		return result;
-#line 937 "moonshot-identities-manager.c"
+#line 943 "moonshot-identities-manager.c"
 	} else {
 		gboolean _tmp9_ = FALSE;
 		IdCard* _tmp10_ = NULL;
@@ -944,7 +950,7 @@ static gint __lambda3_ (gconstpointer a,
 		_tmp11_ = id_card_IsNoIdentity (_tmp10_);
 #line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		if (_tmp11_) {
-#line 948 "moonshot-identities-manager.c"
+#line 954 "moonshot-identities-manager.c"
 			IdCard* _tmp12_ = NULL;
 			gboolean _tmp13_ = FALSE;
 #line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
@@ -953,11 +959,11 @@ static gint __lambda3_ (gconstpointer a,
 			_tmp13_ = id_card_IsNoIdentity (_tmp12_);
 #line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 			_tmp9_ = !_tmp13_;
-#line 957 "moonshot-identities-manager.c"
+#line 963 "moonshot-identities-manager.c"
 		} else {
 #line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 			_tmp9_ = FALSE;
-#line 961 "moonshot-identities-manager.c"
+#line 967 "moonshot-identities-manager.c"
 		}
 #line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		if (_tmp9_) {
@@ -969,7 +975,7 @@ static gint __lambda3_ (gconstpointer a,
 			_g_object_unref0 (id_a);
 #line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 			return result;
-#line 973 "moonshot-identities-manager.c"
+#line 979 "moonshot-identities-manager.c"
 		}
 	}
 #line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
@@ -996,16 +1002,16 @@ static gint __lambda3_ (gconstpointer a,
 	_g_object_unref0 (id_a);
 #line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	return result;
-#line 1000 "moonshot-identities-manager.c"
+#line 1006 "moonshot-identities-manager.c"
 }
 
 
-static gint ___lambda3__gcompare_func (gconstpointer a, gconstpointer b) {
+static gint ___lambda4__gcompare_data_func (gconstpointer a, gconstpointer b, gpointer self) {
 	gint result;
-	result = __lambda3_ (a, b);
+	result = __lambda4_ ((IdentityManagerModel*) self, (IdCard*) a, (IdCard*) b);
 #line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	return result;
-#line 1009 "moonshot-identities-manager.c"
+#line 1015 "moonshot-identities-manager.c"
 }
 
 
@@ -1030,18 +1036,18 @@ GeeLinkedList* identity_manager_model_ge
 #line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	_tmp2_ = identities;
 #line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-	gee_list_sort ((GeeList*) _tmp2_, ___lambda3__gcompare_func);
+	gee_list_sort ((GeeList*) _tmp2_, ___lambda4__gcompare_data_func, g_object_ref (self), g_object_unref);
 #line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	_tmp4_ = identities;
 #line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-	_tmp5_ = gee_abstract_collection_get_is_empty ((GeeAbstractCollection*) _tmp4_);
+	_tmp5_ = gee_collection_get_is_empty ((GeeCollection*) _tmp4_);
 #line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	_tmp6_ = _tmp5_;
 #line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	if (_tmp6_) {
 #line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		_tmp3_ = TRUE;
-#line 1045 "moonshot-identities-manager.c"
+#line 1051 "moonshot-identities-manager.c"
 	} else {
 		GeeLinkedList* _tmp7_ = NULL;
 		gpointer _tmp8_ = NULL;
@@ -1059,11 +1065,11 @@ GeeLinkedList* identity_manager_model_ge
 		_tmp3_ = !_tmp10_;
 #line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		_g_object_unref0 (_tmp9_);
-#line 1063 "moonshot-identities-manager.c"
+#line 1069 "moonshot-identities-manager.c"
 	}
 #line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	if (_tmp3_) {
-#line 1067 "moonshot-identities-manager.c"
+#line 1073 "moonshot-identities-manager.c"
 		GeeLinkedList* _tmp11_ = NULL;
 		IdCard* _tmp12_ = NULL;
 		IdCard* _tmp13_ = NULL;
@@ -1077,7 +1083,7 @@ GeeLinkedList* identity_manager_model_ge
 		gee_abstract_list_insert ((GeeAbstractList*) _tmp11_, 0, _tmp13_);
 #line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		_g_object_unref0 (_tmp13_);
-#line 1081 "moonshot-identities-manager.c"
+#line 1087 "moonshot-identities-manager.c"
 	}
 	{
 		GeeLinkedList* _id_card_list = NULL;
@@ -1106,7 +1112,7 @@ GeeLinkedList* identity_manager_model_ge
 		_id_card_index = -1;
 #line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		while (TRUE) {
-#line 1110 "moonshot-identities-manager.c"
+#line 1116 "moonshot-identities-manager.c"
 			gint _tmp19_ = 0;
 			gint _tmp20_ = 0;
 			gint _tmp21_ = 0;
@@ -1129,7 +1135,7 @@ GeeLinkedList* identity_manager_model_ge
 			if (!(_tmp20_ < _tmp21_)) {
 #line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 				break;
-#line 1133 "moonshot-identities-manager.c"
+#line 1139 "moonshot-identities-manager.c"
 			}
 #line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 			_tmp22_ = _id_card_list;
@@ -1147,7 +1153,7 @@ GeeLinkedList* identity_manager_model_ge
 			_tmp27_ = _tmp26_;
 #line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 			if (!_tmp27_) {
-#line 1151 "moonshot-identities-manager.c"
+#line 1157 "moonshot-identities-manager.c"
 				PasswordHashTable* _tmp28_ = NULL;
 				IdCard* _tmp29_ = NULL;
 				IIdentityCardStore* _tmp30_ = NULL;
@@ -1159,21 +1165,21 @@ GeeLinkedList* identity_manager_model_ge
 				_tmp30_ = self->priv->store;
 #line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 				password_hash_table_RetrievePassword (_tmp28_, _tmp29_, _tmp30_);
-#line 1163 "moonshot-identities-manager.c"
+#line 1169 "moonshot-identities-manager.c"
 			}
 #line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 			_g_object_unref0 (id_card);
-#line 1167 "moonshot-identities-manager.c"
+#line 1173 "moonshot-identities-manager.c"
 		}
 #line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		_g_object_unref0 (_id_card_list);
-#line 1171 "moonshot-identities-manager.c"
+#line 1177 "moonshot-identities-manager.c"
 	}
 #line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	result = identities;
 #line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	return result;
-#line 1177 "moonshot-identities-manager.c"
+#line 1183 "moonshot-identities-manager.c"
 }
 
 
@@ -1190,152 +1196,155 @@ gboolean identity_manager_model_display_
 		_g_free0 (_vala_candidate);
 #line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		_vala_candidate = NULL;
-#line 1194 "moonshot-identities-manager.c"
+#line 1200 "moonshot-identities-manager.c"
 	}
 	{
 		GeeLinkedList* _id_card_list = NULL;
-		GeeLinkedList* _tmp0_ = NULL;
-		gint _id_card_size = 0;
+		IIdentityCardStore* _tmp0_ = NULL;
 		GeeLinkedList* _tmp1_ = NULL;
-		gint _tmp2_ = 0;
+		gint _id_card_size = 0;
+		GeeLinkedList* _tmp2_ = NULL;
 		gint _tmp3_ = 0;
+		gint _tmp4_ = 0;
 		gint _id_card_index = 0;
 #line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-		_tmp0_ = identity_manager_model_get_card_list (self);
+		_tmp0_ = self->priv->store;
 #line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-		_id_card_list = _tmp0_;
+		_tmp1_ = iidentity_card_store_get_card_list (_tmp0_);
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+		_id_card_list = _tmp1_;
 #line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-		_tmp1_ = _id_card_list;
+		_tmp2_ = _id_card_list;
 #line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-		_tmp2_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp1_);
+		_tmp3_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp2_);
 #line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-		_tmp3_ = _tmp2_;
+		_tmp4_ = _tmp3_;
 #line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-		_id_card_size = _tmp3_;
+		_id_card_size = _tmp4_;
 #line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		_id_card_index = -1;
 #line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		while (TRUE) {
-#line 1220 "moonshot-identities-manager.c"
-			gint _tmp4_ = 0;
+#line 1229 "moonshot-identities-manager.c"
 			gint _tmp5_ = 0;
 			gint _tmp6_ = 0;
+			gint _tmp7_ = 0;
 			IdCard* id_card = NULL;
-			GeeLinkedList* _tmp7_ = NULL;
-			gint _tmp8_ = 0;
-			gpointer _tmp9_ = NULL;
-			IdCard* _tmp10_ = NULL;
-			const gchar* _tmp11_ = NULL;
+			GeeLinkedList* _tmp8_ = NULL;
+			gint _tmp9_ = 0;
+			gpointer _tmp10_ = NULL;
+			IdCard* _tmp11_ = NULL;
 			const gchar* _tmp12_ = NULL;
 			const gchar* _tmp13_ = NULL;
+			const gchar* _tmp14_ = NULL;
 #line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-			_tmp4_ = _id_card_index;
+			_tmp5_ = _id_card_index;
 #line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-			_id_card_index = _tmp4_ + 1;
+			_id_card_index = _tmp5_ + 1;
 #line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-			_tmp5_ = _id_card_index;
+			_tmp6_ = _id_card_index;
 #line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-			_tmp6_ = _id_card_size;
+			_tmp7_ = _id_card_size;
 #line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-			if (!(_tmp5_ < _tmp6_)) {
+			if (!(_tmp6_ < _tmp7_)) {
 #line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 				break;
-#line 1244 "moonshot-identities-manager.c"
+#line 1253 "moonshot-identities-manager.c"
 			}
 #line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-			_tmp7_ = _id_card_list;
+			_tmp8_ = _id_card_list;
 #line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-			_tmp8_ = _id_card_index;
+			_tmp9_ = _id_card_index;
 #line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-			_tmp9_ = gee_abstract_list_get ((GeeAbstractList*) _tmp7_, _tmp8_);
+			_tmp10_ = gee_abstract_list_get ((GeeAbstractList*) _tmp8_, _tmp9_);
 #line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-			id_card = (IdCard*) _tmp9_;
+			id_card = (IdCard*) _tmp10_;
 #line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-			_tmp10_ = id_card;
+			_tmp11_ = id_card;
 #line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-			_tmp11_ = id_card_get_display_name (_tmp10_);
+			_tmp12_ = id_card_get_display_name (_tmp11_);
 #line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-			_tmp12_ = _tmp11_;
+			_tmp13_ = _tmp12_;
 #line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-			_tmp13_ = name;
+			_tmp14_ = name;
 #line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-			if (g_strcmp0 (_tmp12_, _tmp13_) == 0) {
+			if (g_strcmp0 (_tmp13_, _tmp14_) == 0) {
 #line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 				if ((&_vala_candidate) != NULL) {
-#line 1266 "moonshot-identities-manager.c"
+#line 1275 "moonshot-identities-manager.c"
 					{
 						gint i = 0;
 #line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 						i = 0;
-#line 1271 "moonshot-identities-manager.c"
+#line 1280 "moonshot-identities-manager.c"
 						{
-							gboolean _tmp14_ = FALSE;
+							gboolean _tmp15_ = FALSE;
 #line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-							_tmp14_ = TRUE;
+							_tmp15_ = TRUE;
 #line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 							while (TRUE) {
-#line 1278 "moonshot-identities-manager.c"
-								gint _tmp16_ = 0;
+#line 1287 "moonshot-identities-manager.c"
+								gint _tmp17_ = 0;
 								gchar* tmp = NULL;
-								const gchar* _tmp17_ = NULL;
-								gint _tmp18_ = 0;
-								gchar* _tmp19_ = NULL;
-								const gchar* _tmp20_ = NULL;
-								gboolean _tmp21_ = FALSE;
+								const gchar* _tmp18_ = NULL;
+								gint _tmp19_ = 0;
+								gchar* _tmp20_ = NULL;
+								const gchar* _tmp21_ = NULL;
+								gboolean _tmp22_ = FALSE;
 #line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-								if (!_tmp14_) {
-#line 1288 "moonshot-identities-manager.c"
-									gint _tmp15_ = 0;
+								if (!_tmp15_) {
+#line 1297 "moonshot-identities-manager.c"
+									gint _tmp16_ = 0;
 #line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-									_tmp15_ = i;
+									_tmp16_ = i;
 #line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-									i = _tmp15_ + 1;
-#line 1294 "moonshot-identities-manager.c"
+									i = _tmp16_ + 1;
+#line 1303 "moonshot-identities-manager.c"
 								}
 #line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-								_tmp14_ = FALSE;
+								_tmp15_ = FALSE;
 #line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-								_tmp16_ = i;
+								_tmp17_ = i;
 #line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-								if (!(_tmp16_ < 1000)) {
+								if (!(_tmp17_ < 1000)) {
 #line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 									break;
-#line 1304 "moonshot-identities-manager.c"
+#line 1313 "moonshot-identities-manager.c"
 								}
 #line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-								_tmp17_ = name;
+								_tmp18_ = name;
 #line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-								_tmp18_ = i;
+								_tmp19_ = i;
 #line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-								_tmp19_ = g_strdup_printf ("%s %d", _tmp17_, _tmp18_);
+								_tmp20_ = g_strdup_printf ("%s %d", _tmp18_, _tmp19_);
 #line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-								tmp = _tmp19_;
+								tmp = _tmp20_;
 #line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-								_tmp20_ = tmp;
+								_tmp21_ = tmp;
 #line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-								_tmp21_ = identity_manager_model_display_name_is_valid (self, _tmp20_, NULL);
+								_tmp22_ = identity_manager_model_display_name_is_valid (self, _tmp21_, NULL);
 #line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-								if (_tmp21_) {
-#line 1320 "moonshot-identities-manager.c"
-									const gchar* _tmp22_ = NULL;
-									gchar* _tmp23_ = NULL;
+								if (_tmp22_) {
+#line 1329 "moonshot-identities-manager.c"
+									const gchar* _tmp23_ = NULL;
+									gchar* _tmp24_ = NULL;
 #line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-									_tmp22_ = tmp;
+									_tmp23_ = tmp;
 #line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-									_tmp23_ = g_strdup (_tmp22_);
+									_tmp24_ = g_strdup (_tmp23_);
 #line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 									_g_free0 (_vala_candidate);
 #line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-									_vala_candidate = _tmp23_;
+									_vala_candidate = _tmp24_;
 #line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 									_g_free0 (tmp);
 #line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 									break;
-#line 1335 "moonshot-identities-manager.c"
+#line 1344 "moonshot-identities-manager.c"
 								}
 #line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 								_g_free0 (tmp);
-#line 1339 "moonshot-identities-manager.c"
+#line 1348 "moonshot-identities-manager.c"
 							}
 						}
 					}
@@ -1350,23 +1359,23 @@ gboolean identity_manager_model_display_
 				if (candidate) {
 #line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 					*candidate = _vala_candidate;
-#line 1354 "moonshot-identities-manager.c"
+#line 1363 "moonshot-identities-manager.c"
 				} else {
 #line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 					_g_free0 (_vala_candidate);
-#line 1358 "moonshot-identities-manager.c"
+#line 1367 "moonshot-identities-manager.c"
 				}
 #line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 				return result;
-#line 1362 "moonshot-identities-manager.c"
+#line 1371 "moonshot-identities-manager.c"
 			}
 #line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 			_g_object_unref0 (id_card);
-#line 1366 "moonshot-identities-manager.c"
+#line 1375 "moonshot-identities-manager.c"
 		}
 #line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		_g_object_unref0 (_id_card_list);
-#line 1370 "moonshot-identities-manager.c"
+#line 1379 "moonshot-identities-manager.c"
 	}
 #line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	result = TRUE;
@@ -1374,15 +1383,15 @@ gboolean identity_manager_model_display_
 	if (candidate) {
 #line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		*candidate = _vala_candidate;
-#line 1378 "moonshot-identities-manager.c"
+#line 1387 "moonshot-identities-manager.c"
 	} else {
 #line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		_g_free0 (_vala_candidate);
-#line 1382 "moonshot-identities-manager.c"
+#line 1391 "moonshot-identities-manager.c"
 	}
 #line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	return result;
-#line 1386 "moonshot-identities-manager.c"
+#line 1395 "moonshot-identities-manager.c"
 }
 
 
@@ -1398,19 +1407,20 @@ static gboolean identity_manager_model_r
 	duplicate_found = FALSE;
 #line 146 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	found = FALSE;
-#line 1402 "moonshot-identities-manager.c"
+#line 1411 "moonshot-identities-manager.c"
 	{
 		gboolean _tmp0_ = FALSE;
 #line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		_tmp0_ = TRUE;
 #line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		while (TRUE) {
-#line 1409 "moonshot-identities-manager.c"
+#line 1418 "moonshot-identities-manager.c"
 			GeeLinkedList* cards = NULL;
-			GeeLinkedList* _tmp2_ = NULL;
+			IIdentityCardStore* _tmp2_ = NULL;
+			GeeLinkedList* _tmp3_ = NULL;
 #line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 			if (!_tmp0_) {
-#line 1414 "moonshot-identities-manager.c"
+#line 1424 "moonshot-identities-manager.c"
 				gboolean _tmp1_ = FALSE;
 #line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 				_tmp1_ = found;
@@ -1418,164 +1428,166 @@ static gboolean identity_manager_model_r
 				if (!_tmp1_) {
 #line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 					break;
-#line 1422 "moonshot-identities-manager.c"
+#line 1432 "moonshot-identities-manager.c"
 				}
 			}
 #line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 			_tmp0_ = FALSE;
 #line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-			_tmp2_ = identity_manager_model_get_card_list (self);
+			_tmp2_ = self->priv->store;
 #line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-			cards = _tmp2_;
+			_tmp3_ = iidentity_card_store_get_card_list (_tmp2_);
+#line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+			cards = _tmp3_;
 #line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 			found = FALSE;
-#line 1433 "moonshot-identities-manager.c"
+#line 1445 "moonshot-identities-manager.c"
 			{
 				GeeLinkedList* _id_card_list = NULL;
-				GeeLinkedList* _tmp3_ = NULL;
 				GeeLinkedList* _tmp4_ = NULL;
-				gint _id_card_size = 0;
 				GeeLinkedList* _tmp5_ = NULL;
-				gint _tmp6_ = 0;
+				gint _id_card_size = 0;
+				GeeLinkedList* _tmp6_ = NULL;
 				gint _tmp7_ = 0;
+				gint _tmp8_ = 0;
 				gint _id_card_index = 0;
 #line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-				_tmp3_ = cards;
+				_tmp4_ = cards;
 #line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-				_tmp4_ = _g_object_ref0 (_tmp3_);
+				_tmp5_ = _g_object_ref0 (_tmp4_);
 #line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-				_id_card_list = _tmp4_;
+				_id_card_list = _tmp5_;
 #line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-				_tmp5_ = _id_card_list;
+				_tmp6_ = _id_card_list;
 #line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-				_tmp6_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp5_);
+				_tmp7_ = gee_abstract_collection_get_size ((GeeCollection*) _tmp6_);
 #line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-				_tmp7_ = _tmp6_;
+				_tmp8_ = _tmp7_;
 #line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-				_id_card_size = _tmp7_;
+				_id_card_size = _tmp8_;
 #line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 				_id_card_index = -1;
 #line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 				while (TRUE) {
-#line 1461 "moonshot-identities-manager.c"
-					gint _tmp8_ = 0;
+#line 1473 "moonshot-identities-manager.c"
 					gint _tmp9_ = 0;
 					gint _tmp10_ = 0;
+					gint _tmp11_ = 0;
 					IdCard* id_card = NULL;
-					GeeLinkedList* _tmp11_ = NULL;
-					gint _tmp12_ = 0;
-					gpointer _tmp13_ = NULL;
-					gboolean _tmp14_ = FALSE;
-					IdCard* _tmp15_ = NULL;
+					GeeLinkedList* _tmp12_ = NULL;
+					gint _tmp13_ = 0;
+					gpointer _tmp14_ = NULL;
+					gboolean _tmp15_ = FALSE;
 					IdCard* _tmp16_ = NULL;
+					IdCard* _tmp17_ = NULL;
 #line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-					_tmp8_ = _id_card_index;
+					_tmp9_ = _id_card_index;
 #line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-					_id_card_index = _tmp8_ + 1;
+					_id_card_index = _tmp9_ + 1;
 #line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-					_tmp9_ = _id_card_index;
+					_tmp10_ = _id_card_index;
 #line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-					_tmp10_ = _id_card_size;
+					_tmp11_ = _id_card_size;
 #line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-					if (!(_tmp9_ < _tmp10_)) {
+					if (!(_tmp10_ < _tmp11_)) {
 #line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 						break;
-#line 1484 "moonshot-identities-manager.c"
+#line 1496 "moonshot-identities-manager.c"
 					}
 #line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-					_tmp11_ = _id_card_list;
+					_tmp12_ = _id_card_list;
 #line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-					_tmp12_ = _id_card_index;
+					_tmp13_ = _id_card_index;
 #line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-					_tmp13_ = gee_abstract_list_get ((GeeAbstractList*) _tmp11_, _tmp12_);
+					_tmp14_ = gee_abstract_list_get ((GeeAbstractList*) _tmp12_, _tmp13_);
 #line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-					id_card = (IdCard*) _tmp13_;
+					id_card = (IdCard*) _tmp14_;
 #line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-					_tmp15_ = card;
+					_tmp16_ = card;
 #line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-					_tmp16_ = id_card;
+					_tmp17_ = id_card;
 #line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-					if (_tmp15_ != _tmp16_) {
-#line 1500 "moonshot-identities-manager.c"
-						IdCard* _tmp17_ = NULL;
-						const gchar* _tmp18_ = NULL;
+					if (_tmp16_ != _tmp17_) {
+#line 1512 "moonshot-identities-manager.c"
+						IdCard* _tmp18_ = NULL;
 						const gchar* _tmp19_ = NULL;
-						IdCard* _tmp20_ = NULL;
-						const gchar* _tmp21_ = NULL;
+						const gchar* _tmp20_ = NULL;
+						IdCard* _tmp21_ = NULL;
 						const gchar* _tmp22_ = NULL;
+						const gchar* _tmp23_ = NULL;
 #line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-						_tmp17_ = id_card;
+						_tmp18_ = id_card;
 #line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-						_tmp18_ = id_card_get_nai (_tmp17_);
+						_tmp19_ = id_card_get_nai (_tmp18_);
 #line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-						_tmp19_ = _tmp18_;
+						_tmp20_ = _tmp19_;
 #line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-						_tmp20_ = card;
+						_tmp21_ = card;
 #line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-						_tmp21_ = id_card_get_nai (_tmp20_);
+						_tmp22_ = id_card_get_nai (_tmp21_);
 #line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-						_tmp22_ = _tmp21_;
+						_tmp23_ = _tmp22_;
 #line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-						_tmp14_ = g_strcmp0 (_tmp19_, _tmp22_) == 0;
-#line 1521 "moonshot-identities-manager.c"
+						_tmp15_ = g_strcmp0 (_tmp20_, _tmp23_) == 0;
+#line 1533 "moonshot-identities-manager.c"
 					} else {
 #line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-						_tmp14_ = FALSE;
-#line 1525 "moonshot-identities-manager.c"
+						_tmp15_ = FALSE;
+#line 1537 "moonshot-identities-manager.c"
 					}
 #line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-					if (_tmp14_) {
-#line 1529 "moonshot-identities-manager.c"
-						FILE* _tmp23_ = NULL;
-						IdCard* _tmp24_ = NULL;
-						const gchar* _tmp25_ = NULL;
+					if (_tmp15_) {
+#line 1541 "moonshot-identities-manager.c"
+						FILE* _tmp24_ = NULL;
+						IdCard* _tmp25_ = NULL;
 						const gchar* _tmp26_ = NULL;
-						IdCard* _tmp27_ = NULL;
-						gboolean _tmp28_ = FALSE;
+						const gchar* _tmp27_ = NULL;
+						IdCard* _tmp28_ = NULL;
+						gboolean _tmp29_ = FALSE;
 #line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-						_tmp23_ = stdout;
+						_tmp24_ = stdout;
 #line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-						_tmp24_ = card;
+						_tmp25_ = card;
 #line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-						_tmp25_ = id_card_get_nai (_tmp24_);
+						_tmp26_ = id_card_get_nai (_tmp25_);
 #line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-						_tmp26_ = _tmp25_;
+						_tmp27_ = _tmp26_;
 #line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-						fprintf (_tmp23_, "removing duplicate id for '%s'\n", _tmp26_);
+						fprintf (_tmp24_, "removing duplicate id for '%s'\n", _tmp27_);
 #line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-						_tmp27_ = id_card;
+						_tmp28_ = id_card;
 #line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-						identity_manager_model_remove_card_internal (self, _tmp27_);
+						identity_manager_model_remove_card_internal (self, _tmp28_);
 #line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 						duplicate_found = TRUE;
 #line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-						_tmp28_ = duplicate_found;
+						_tmp29_ = duplicate_found;
 #line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
-						found = _tmp28_;
+						found = _tmp29_;
 #line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 						_g_object_unref0 (id_card);
 #line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 						break;
-#line 1560 "moonshot-identities-manager.c"
+#line 1572 "moonshot-identities-manager.c"
 					}
 #line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 					_g_object_unref0 (id_card);
-#line 1564 "moonshot-identities-manager.c"
+#line 1576 "moonshot-identities-manager.c"
 				}
 #line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 				_g_object_unref0 (_id_card_list);
-#line 1568 "moonshot-identities-manager.c"
+#line 1580 "moonshot-identities-manager.c"
 			}
 #line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 			_g_object_unref0 (cards);
-#line 1572 "moonshot-identities-manager.c"
+#line 1584 "moonshot-identities-manager.c"
 		}
 	}
 #line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	result = duplicate_found;
 #line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	return result;
-#line 1579 "moonshot-identities-manager.c"
+#line 1591 "moonshot-identities-manager.c"
 }
 
 
@@ -1604,7 +1616,7 @@ IdCard* identity_manager_model_find_id_c
 	if (_tmp1_) {
 #line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		identity_manager_model_set_store_type (self, IIDENTITY_CARD_STORE_STORE_TYPE_FLAT_FILE);
-#line 1608 "moonshot-identities-manager.c"
+#line 1620 "moonshot-identities-manager.c"
 	}
 	{
 		GeeLinkedList* _id_list = NULL;
@@ -1630,7 +1642,7 @@ IdCard* identity_manager_model_find_id_c
 		_id_index = -1;
 #line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		while (TRUE) {
-#line 1634 "moonshot-identities-manager.c"
+#line 1646 "moonshot-identities-manager.c"
 			gint _tmp6_ = 0;
 			gint _tmp7_ = 0;
 			gint _tmp8_ = 0;
@@ -1654,7 +1666,7 @@ IdCard* identity_manager_model_find_id_c
 			if (!(_tmp7_ < _tmp8_)) {
 #line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 				break;
-#line 1658 "moonshot-identities-manager.c"
+#line 1670 "moonshot-identities-manager.c"
 			}
 #line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 			_tmp9_ = _id_list;
@@ -1674,7 +1686,7 @@ IdCard* identity_manager_model_find_id_c
 			_tmp15_ = nai;
 #line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 			if (g_strcmp0 (_tmp14_, _tmp15_) == 0) {
-#line 1678 "moonshot-identities-manager.c"
+#line 1690 "moonshot-identities-manager.c"
 				IdCard* _tmp16_ = NULL;
 				IdCard* _tmp17_ = NULL;
 #line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
@@ -1689,15 +1701,15 @@ IdCard* identity_manager_model_find_id_c
 				_g_object_unref0 (id);
 #line 171 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 				break;
-#line 1693 "moonshot-identities-manager.c"
+#line 1705 "moonshot-identities-manager.c"
 			}
 #line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 			_g_object_unref0 (id);
-#line 1697 "moonshot-identities-manager.c"
+#line 1709 "moonshot-identities-manager.c"
 		}
 #line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		_g_object_unref0 (_id_list);
-#line 1701 "moonshot-identities-manager.c"
+#line 1713 "moonshot-identities-manager.c"
 	}
 #line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	_tmp18_ = saved_store_type;
@@ -1707,29 +1719,29 @@ IdCard* identity_manager_model_find_id_c
 	_tmp20_ = force_flat_file_store;
 #line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	if (_tmp20_) {
-#line 1711 "moonshot-identities-manager.c"
+#line 1723 "moonshot-identities-manager.c"
 		IIdentityCardStoreStoreType _tmp21_ = 0;
 #line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		_tmp21_ = saved_store_type;
 #line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		_tmp19_ = _tmp21_ != IIDENTITY_CARD_STORE_STORE_TYPE_FLAT_FILE;
-#line 1717 "moonshot-identities-manager.c"
+#line 1729 "moonshot-identities-manager.c"
 	} else {
 #line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		_tmp19_ = FALSE;
-#line 1721 "moonshot-identities-manager.c"
+#line 1733 "moonshot-identities-manager.c"
 	}
 #line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	if (_tmp19_) {
 #line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		g_signal_emit_by_name (self, "card-list-changed");
-#line 1727 "moonshot-identities-manager.c"
+#line 1739 "moonshot-identities-manager.c"
 	}
 #line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	result = retval;
 #line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	return result;
-#line 1733 "moonshot-identities-manager.c"
+#line 1745 "moonshot-identities-manager.c"
 }
 
 
@@ -1767,7 +1779,7 @@ void identity_manager_model_add_card (Id
 	if (_tmp2_) {
 #line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		return;
-#line 1771 "moonshot-identities-manager.c"
+#line 1783 "moonshot-identities-manager.c"
 	}
 #line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	_tmp3_ = identity_manager_model_get_store_type (self);
@@ -1779,7 +1791,7 @@ void identity_manager_model_add_card (Id
 	if (_tmp4_) {
 #line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		identity_manager_model_set_store_type (self, IIDENTITY_CARD_STORE_STORE_TYPE_FLAT_FILE);
-#line 1783 "moonshot-identities-manager.c"
+#line 1795 "moonshot-identities-manager.c"
 	}
 #line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	_tmp5_ = card;
@@ -1799,7 +1811,7 @@ void identity_manager_model_add_card (Id
 	candidate = _tmp9_;
 #line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	if (!_tmp10_) {
-#line 1803 "moonshot-identities-manager.c"
+#line 1815 "moonshot-identities-manager.c"
 		IdCard* _tmp11_ = NULL;
 		const gchar* _tmp12_ = NULL;
 #line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
@@ -1808,7 +1820,7 @@ void identity_manager_model_add_card (Id
 		_tmp12_ = candidate;
 #line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		id_card_set_display_name (_tmp11_, _tmp12_);
-#line 1812 "moonshot-identities-manager.c"
+#line 1824 "moonshot-identities-manager.c"
 	}
 #line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	_tmp13_ = card;
@@ -1818,7 +1830,7 @@ void identity_manager_model_add_card (Id
 	_tmp15_ = _tmp14_;
 #line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	if (!_tmp15_) {
-#line 1822 "moonshot-identities-manager.c"
+#line 1834 "moonshot-identities-manager.c"
 		PasswordHashTable* _tmp16_ = NULL;
 		IdCard* _tmp17_ = NULL;
 		IIdentityCardStore* _tmp18_ = NULL;
@@ -1830,7 +1842,7 @@ void identity_manager_model_add_card (Id
 		_tmp18_ = self->priv->store;
 #line 199 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		password_hash_table_CachePassword (_tmp16_, _tmp17_, _tmp18_);
-#line 1834 "moonshot-identities-manager.c"
+#line 1846 "moonshot-identities-manager.c"
 	}
 #line 200 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	_tmp19_ = self->priv->store;
@@ -1846,7 +1858,7 @@ void identity_manager_model_add_card (Id
 	g_signal_emit_by_name (self, "card-list-changed");
 #line 181 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	_g_free0 (candidate);
-#line 1850 "moonshot-identities-manager.c"
+#line 1862 "moonshot-identities-manager.c"
 }
 
 
@@ -1874,7 +1886,7 @@ IdCard* identity_manager_model_update_ca
 	_tmp2_ = _tmp1_;
 #line 207 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	if (_tmp2_) {
-#line 1878 "moonshot-identities-manager.c"
+#line 1890 "moonshot-identities-manager.c"
 		IdCard* _tmp3_ = NULL;
 		IdCard* _tmp4_ = NULL;
 #line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
@@ -1889,7 +1901,7 @@ IdCard* identity_manager_model_update_ca
 		result = retval;
 #line 209 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		return result;
-#line 1893 "moonshot-identities-manager.c"
+#line 1905 "moonshot-identities-manager.c"
 	}
 #line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	_tmp5_ = card;
@@ -1899,7 +1911,7 @@ IdCard* identity_manager_model_update_ca
 	_tmp7_ = _tmp6_;
 #line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	if (!_tmp7_) {
-#line 1903 "moonshot-identities-manager.c"
+#line 1915 "moonshot-identities-manager.c"
 		PasswordHashTable* _tmp8_ = NULL;
 		IdCard* _tmp9_ = NULL;
 		IIdentityCardStore* _tmp10_ = NULL;
@@ -1911,7 +1923,7 @@ IdCard* identity_manager_model_update_ca
 		_tmp10_ = self->priv->store;
 #line 213 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		password_hash_table_CachePassword (_tmp8_, _tmp9_, _tmp10_);
-#line 1915 "moonshot-identities-manager.c"
+#line 1927 "moonshot-identities-manager.c"
 	} else {
 		PasswordHashTable* _tmp11_ = NULL;
 		IdCard* _tmp12_ = NULL;
@@ -1924,7 +1936,7 @@ IdCard* identity_manager_model_update_ca
 		_tmp13_ = self->priv->store;
 #line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		password_hash_table_RemovePassword (_tmp11_, _tmp12_, _tmp13_);
-#line 1928 "moonshot-identities-manager.c"
+#line 1940 "moonshot-identities-manager.c"
 	}
 #line 216 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	_tmp14_ = self->priv->store;
@@ -1942,7 +1954,7 @@ IdCard* identity_manager_model_update_ca
 	result = retval;
 #line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	return result;
-#line 1946 "moonshot-identities-manager.c"
+#line 1958 "moonshot-identities-manager.c"
 }
 
 
@@ -1973,7 +1985,7 @@ static gboolean identity_manager_model_r
 		result = FALSE;
 #line 223 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		return result;
-#line 1977 "moonshot-identities-manager.c"
+#line 1989 "moonshot-identities-manager.c"
 	}
 #line 224 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	_tmp3_ = self->priv->password_table;
@@ -1993,7 +2005,7 @@ static gboolean identity_manager_model_r
 	result = _tmp8_;
 #line 225 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	return result;
-#line 1997 "moonshot-identities-manager.c"
+#line 2009 "moonshot-identities-manager.c"
 }
 
 
@@ -2017,13 +2029,13 @@ gboolean identity_manager_model_remove_c
 		result = TRUE;
 #line 231 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		return result;
-#line 2021 "moonshot-identities-manager.c"
+#line 2033 "moonshot-identities-manager.c"
 	}
 #line 233 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	result = FALSE;
 #line 233 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	return result;
-#line 2027 "moonshot-identities-manager.c"
+#line 2039 "moonshot-identities-manager.c"
 }
 
 
@@ -2037,7 +2049,7 @@ void identity_manager_model_set_store_ty
 	_tmp1_ = self->priv->store;
 #line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	if (_tmp1_ != NULL) {
-#line 2041 "moonshot-identities-manager.c"
+#line 2053 "moonshot-identities-manager.c"
 		IIdentityCardStore* _tmp2_ = NULL;
 		IIdentityCardStoreStoreType _tmp3_ = 0;
 		IIdentityCardStoreStoreType _tmp4_ = 0;
@@ -2049,17 +2061,17 @@ void identity_manager_model_set_store_ty
 		_tmp4_ = type;
 #line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		_tmp0_ = _tmp3_ == _tmp4_;
-#line 2053 "moonshot-identities-manager.c"
+#line 2065 "moonshot-identities-manager.c"
 	} else {
 #line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		_tmp0_ = FALSE;
-#line 2057 "moonshot-identities-manager.c"
+#line 2069 "moonshot-identities-manager.c"
 	}
 #line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	if (_tmp0_) {
 #line 238 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		return;
-#line 2063 "moonshot-identities-manager.c"
+#line 2075 "moonshot-identities-manager.c"
 	}
 #line 239 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	_tmp5_ = type;
@@ -2067,7 +2079,7 @@ void identity_manager_model_set_store_ty
 	switch (_tmp5_) {
 #line 239 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		case IIDENTITY_CARD_STORE_STORE_TYPE_KEYRING:
-#line 2071 "moonshot-identities-manager.c"
+#line 2083 "moonshot-identities-manager.c"
 		{
 			KeyringStore* _tmp6_ = NULL;
 #line 242 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
@@ -2078,12 +2090,12 @@ void identity_manager_model_set_store_ty
 			self->priv->store = (IIdentityCardStore*) _tmp6_;
 #line 243 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 			break;
-#line 2082 "moonshot-identities-manager.c"
+#line 2094 "moonshot-identities-manager.c"
 		}
 		default:
 #line 239 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		case IIDENTITY_CARD_STORE_STORE_TYPE_FLAT_FILE:
-#line 2087 "moonshot-identities-manager.c"
+#line 2099 "moonshot-identities-manager.c"
 		{
 			LocalFlatFileStore* _tmp7_ = NULL;
 #line 247 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
@@ -2094,7 +2106,7 @@ void identity_manager_model_set_store_ty
 			self->priv->store = (IIdentityCardStore*) _tmp7_;
 #line 248 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 			break;
-#line 2098 "moonshot-identities-manager.c"
+#line 2110 "moonshot-identities-manager.c"
 		}
 	}
 }
@@ -2114,7 +2126,7 @@ IIdentityCardStoreStoreType identity_man
 	result = _tmp1_;
 #line 253 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	return result;
-#line 2118 "moonshot-identities-manager.c"
+#line 2130 "moonshot-identities-manager.c"
 }
 
 
@@ -2122,7 +2134,7 @@ gboolean identity_manager_model_HasNonTr
 	gboolean result = FALSE;
 #line 256 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	g_return_val_if_fail (self != NULL, FALSE);
-#line 2126 "moonshot-identities-manager.c"
+#line 2138 "moonshot-identities-manager.c"
 	{
 		GeeLinkedList* _card_list = NULL;
 		IIdentityCardStore* _tmp0_ = NULL;
@@ -2150,7 +2162,7 @@ gboolean identity_manager_model_HasNonTr
 		_card_index = -1;
 #line 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		while (TRUE) {
-#line 2154 "moonshot-identities-manager.c"
+#line 2166 "moonshot-identities-manager.c"
 			gint _tmp5_ = 0;
 			gint _tmp6_ = 0;
 			gint _tmp7_ = 0;
@@ -2174,7 +2186,7 @@ gboolean identity_manager_model_HasNonTr
 			if (!(_tmp6_ < _tmp7_)) {
 #line 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 				break;
-#line 2178 "moonshot-identities-manager.c"
+#line 2190 "moonshot-identities-manager.c"
 			}
 #line 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 			_tmp8_ = _card_list;
@@ -2192,7 +2204,7 @@ gboolean identity_manager_model_HasNonTr
 			if (!_tmp14_) {
 #line 260 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 				_tmp12_ = TRUE;
-#line 2196 "moonshot-identities-manager.c"
+#line 2208 "moonshot-identities-manager.c"
 			} else {
 				IdCard* _tmp15_ = NULL;
 				gchar** _tmp16_ = NULL;
@@ -2209,13 +2221,13 @@ gboolean identity_manager_model_HasNonTr
 				_tmp17__length1 = _tmp16__length1;
 #line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 				_tmp12_ = _tmp17__length1 > 0;
-#line 2213 "moonshot-identities-manager.c"
+#line 2225 "moonshot-identities-manager.c"
 			}
 #line 260 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 			if (_tmp12_) {
 #line 260 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 				_tmp11_ = TRUE;
-#line 2219 "moonshot-identities-manager.c"
+#line 2231 "moonshot-identities-manager.c"
 			} else {
 				IdCard* _tmp18_ = NULL;
 				Rule* _tmp19_ = NULL;
@@ -2232,7 +2244,7 @@ gboolean identity_manager_model_HasNonTr
 				_tmp20__length1 = _tmp19__length1;
 #line 262 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 				_tmp11_ = _tmp20__length1 > 0;
-#line 2236 "moonshot-identities-manager.c"
+#line 2248 "moonshot-identities-manager.c"
 			}
 #line 260 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 			if (_tmp11_) {
@@ -2244,28 +2256,28 @@ gboolean identity_manager_model_HasNonTr
 				_g_object_unref0 (_card_list);
 #line 263 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 				return result;
-#line 2248 "moonshot-identities-manager.c"
+#line 2260 "moonshot-identities-manager.c"
 			}
 #line 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 			_g_object_unref0 (card);
-#line 2252 "moonshot-identities-manager.c"
+#line 2264 "moonshot-identities-manager.c"
 		}
 #line 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 		_g_object_unref0 (_card_list);
-#line 2256 "moonshot-identities-manager.c"
+#line 2268 "moonshot-identities-manager.c"
 	}
 #line 266 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	result = FALSE;
 #line 266 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	return result;
-#line 2262 "moonshot-identities-manager.c"
+#line 2274 "moonshot-identities-manager.c"
 }
 
 
 static gpointer _identity_manager_app_ref0 (gpointer self) {
 #line 273 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	return self ? identity_manager_app_ref (self) : NULL;
-#line 2269 "moonshot-identities-manager.c"
+#line 2281 "moonshot-identities-manager.c"
 }
 
 
@@ -2299,14 +2311,14 @@ IdentityManagerModel* identity_manager_m
 	identity_manager_model_set_store_type (self, _tmp3_);
 #line 272 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	return self;
-#line 2303 "moonshot-identities-manager.c"
+#line 2315 "moonshot-identities-manager.c"
 }
 
 
 IdentityManagerModel* identity_manager_model_new (IdentityManagerApp* parent_app, IIdentityCardStoreStoreType store_type) {
 #line 272 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	return identity_manager_model_construct (TYPE_IDENTITY_MANAGER_MODEL, parent_app, store_type);
-#line 2310 "moonshot-identities-manager.c"
+#line 2322 "moonshot-identities-manager.c"
 }
 
 
@@ -2319,14 +2331,14 @@ static void identity_manager_model_class
 	G_OBJECT_CLASS (klass)->finalize = identity_manager_model_finalize;
 #line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	g_signal_new ("card_list_changed", TYPE_IDENTITY_MANAGER_MODEL, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
-#line 2323 "moonshot-identities-manager.c"
+#line 2335 "moonshot-identities-manager.c"
 }
 
 
 static void identity_manager_model_instance_init (IdentityManagerModel * self) {
 #line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	self->priv = IDENTITY_MANAGER_MODEL_GET_PRIVATE (self);
-#line 2330 "moonshot-identities-manager.c"
+#line 2342 "moonshot-identities-manager.c"
 }
 
 
@@ -2342,7 +2354,7 @@ static void identity_manager_model_final
 	_identity_manager_app_unref0 (self->priv->parent);
 #line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
 	G_OBJECT_CLASS (identity_manager_model_parent_class)->finalize (obj);
-#line 2346 "moonshot-identities-manager.c"
+#line 2358 "moonshot-identities-manager.c"
 }
 
 
--- moonshot-ui-0.7.1.orig/src/moonshot-identities-manager.vala
+++ moonshot-ui-0.7.1/src/moonshot-identities-manager.vala
@@ -118,7 +118,7 @@ public class IdentityManagerModel : Obje
     {
         if (&candidate != null)
           candidate = null;
-        foreach (IdCard id_card in this.get_card_list())
+        foreach (IdCard id_card in this.store.get_card_list())
         {
           if (id_card.display_name == name)
           {
@@ -145,7 +145,7 @@ public class IdentityManagerModel : Obje
         bool duplicate_found = false;
         bool found = false;
         do {
-           var cards = get_card_list();
+           var cards = this.store.get_card_list();
            found = false;
            foreach (IdCard id_card in cards) {
                if ((card != id_card) && (id_card.nai == card.nai)) {
--- moonshot-ui-0.7.1.orig/src/moonshot-identity-management-view.c
+++ moonshot-ui-0.7.1/src/moonshot-identity-management-view.c
@@ -1,4 +1,4 @@
-/* moonshot-identity-management-view.c generated by valac 0.24.0, the Vala compiler
+/* moonshot-identity-management-view.c generated by valac 0.26.1, the Vala compiler
  * generated from moonshot-identity-management-view.vala, do not modify */
 
 /*
@@ -269,7 +269,7 @@ GType id_card_get_type (void) G_GNUC_CON
 enum  {
 	IDENTITY_MANAGER_VIEW_DUMMY_PROPERTY
 };
-static GType identity_manager_view_columns_get_type (void) G_GNUC_UNUSED;
+static GType identity_manager_view_columns_get_type (void) G_GNUC_CONST G_GNUC_UNUSED;
 static void _g_object_unref0_ (gpointer var);
 static void _g_queue_free__g_object_unref0_ (GQueue* self);
 #define IDENTITY_MANAGER_VIEW_WINDOW_WIDTH 400
@@ -341,9 +341,9 @@ void custom_vbox_add_id_card_widget (Cus
 static void _identity_manager_view_details_identity_cb_id_card_widget_details_id (IdCardWidget* _sender, gpointer self);
 static void identity_manager_view_remove_identity_cb (IdentityManagerView* self, IdCardWidget* id_card_widget);
 static void _identity_manager_view_remove_identity_cb_id_card_widget_remove_id (IdCardWidget* _sender, gpointer self);
-static void __lambda5_ (IdentityManagerView* self, IdCardWidget* w);
+static void __lambda6_ (IdentityManagerView* self, IdCardWidget* w);
 void identity_manager_view_send_identity_cb (IdentityManagerView* self, IdCard* id);
-static void ___lambda5__id_card_widget_send_id (IdCardWidget* _sender, gpointer self);
+static void ___lambda6__id_card_widget_send_id (IdCardWidget* _sender, gpointer self);
 void custom_vbox_receive_expanded_event (CustomVBox* self, IdCardWidget* id_card_widget);
 static void _custom_vbox_receive_expanded_event_id_card_widget_expanded (IdCardWidget* _sender, gpointer self);
 static void _identity_manager_view_fill_details_id_card_widget_expanded (IdCardWidget* _sender, gpointer self);
@@ -365,9 +365,9 @@ gboolean id_card_IsNoIdentity (IdCard* s
 void identity_request_return_identity (IdentityRequest* self, IdCard* id_card);
 static void identity_manager_view_label_make_bold (IdentityManagerView* self, GtkLabel* label);
 static void _vala_PangoFontDescription_free (PangoFontDescription* self);
-static void ____lambda4_ (IdentityManagerView* self, GtkButton* remove_button);
+static void ____lambda5_ (IdentityManagerView* self, GtkButton* remove_button);
 static void _g_slist_free__g_free0_ (GSList* self);
-static void _____lambda4__gtk_button_clicked (GtkButton* _sender, gpointer self);
+static void _____lambda5__gtk_button_clicked (GtkButton* _sender, gpointer self);
 static void identity_manager_view_on_about_action (IdentityManagerView* self);
 static GtkActionEntry* identity_manager_view_create_actions (IdentityManagerView* self, int* result_length1);
 static void _vala_array_add1 (GtkActionEntry** array, int* length, int* size, const GtkActionEntry* value);
@@ -534,17 +534,17 @@ static gboolean string_contains (const g
 	gboolean result = FALSE;
 	const gchar* _tmp0_ = NULL;
 	gchar* _tmp1_ = NULL;
-#line 1274 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 1278 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	g_return_val_if_fail (self != NULL, FALSE);
-#line 1274 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 1278 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	g_return_val_if_fail (needle != NULL, FALSE);
-#line 1275 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 1279 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	_tmp0_ = needle;
-#line 1275 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 1279 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	_tmp1_ = strstr ((gchar*) self, (gchar*) _tmp0_);
-#line 1275 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 1279 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	result = _tmp1_ != NULL;
-#line 1275 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 1279 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	return result;
 #line 550 "moonshot-identity-management-view.c"
 }
@@ -2052,7 +2052,7 @@ static void _identity_manager_view_remov
 }
 
 
-static void __lambda5_ (IdentityManagerView* self, IdCardWidget* w) {
+static void __lambda6_ (IdentityManagerView* self, IdCardWidget* w) {
 	IdCardWidget* _tmp0_ = NULL;
 	IdCard* _tmp1_ = NULL;
 	IdCard* _tmp2_ = NULL;
@@ -2070,9 +2070,9 @@ static void __lambda5_ (IdentityManagerV
 }
 
 
-static void ___lambda5__id_card_widget_send_id (IdCardWidget* _sender, gpointer self) {
+static void ___lambda6__id_card_widget_send_id (IdCardWidget* _sender, gpointer self) {
 #line 371 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
-	__lambda5_ ((IdentityManagerView*) self, _sender);
+	__lambda6_ ((IdentityManagerView*) self, _sender);
 #line 2077 "moonshot-identity-management-view.c"
 }
 
@@ -2119,7 +2119,7 @@ static IdCardWidget* identity_manager_vi
 #line 370 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
 	g_signal_connect_object (id_card_widget, "remove-id", (GCallback) _identity_manager_view_remove_identity_cb_id_card_widget_remove_id, self, 0);
 #line 371 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
-	g_signal_connect_object (id_card_widget, "send-id", (GCallback) ___lambda5__id_card_widget_send_id, self, 0);
+	g_signal_connect_object (id_card_widget, "send-id", (GCallback) ___lambda6__id_card_widget_send_id, self, 0);
 #line 372 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
 	_tmp3_ = self->priv->custom_vbox;
 #line 372 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
@@ -3244,7 +3244,7 @@ static void _g_slist_free__g_free0_ (GSL
 }
 
 
-static void ____lambda4_ (IdentityManagerView* self, GtkButton* remove_button) {
+static void ____lambda5_ (IdentityManagerView* self, GtkButton* remove_button) {
 	gchar* candidate = NULL;
 	GHashTable* _tmp0_ = NULL;
 	GtkButton* _tmp1_ = NULL;
@@ -3558,9 +3558,9 @@ static void ____lambda4_ (IdentityManage
 }
 
 
-static void _____lambda4__gtk_button_clicked (GtkButton* _sender, gpointer self) {
+static void _____lambda5__gtk_button_clicked (GtkButton* _sender, gpointer self) {
 #line 622 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
-	____lambda4_ ((IdentityManagerView*) self, _sender);
+	____lambda5_ ((IdentityManagerView*) self, _sender);
 #line 3564 "moonshot-identity-management-view.c"
 }
 
@@ -3712,7 +3712,7 @@ static void identity_manager_view_fill_s
 #line 622 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
 				_tmp23_ = remove_button;
 #line 622 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
-				g_signal_connect_object (_tmp23_, "clicked", (GCallback) _____lambda4__gtk_button_clicked, self, 0);
+				g_signal_connect_object (_tmp23_, "clicked", (GCallback) _____lambda5__gtk_button_clicked, self, 0);
 #line 661 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
 				_tmp24_ = services_table;
 #line 661 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
@@ -4168,7 +4168,7 @@ static void identity_manager_view_create
 #line 784 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
 		gtk_ui_manager_add_ui_from_string (_tmp5_, IDENTITY_MANAGER_VIEW_layout, (gssize) (-1), &_inner_error_);
 #line 784 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
-		if (_inner_error_ != NULL) {
+		if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 4131 "moonshot-identity-management-view.c"
 			goto __catch4_g_error;
 		}
@@ -4198,7 +4198,7 @@ static void identity_manager_view_create
 	}
 	__finally4:
 #line 782 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
-	if (_inner_error_ != NULL) {
+	if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 782 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
 		_g_object_unref0 (action_group);
 #line 782 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
--- moonshot-ui-0.7.1.orig/src/moonshot-identity-manager-app.c
+++ moonshot-ui-0.7.1/src/moonshot-identity-manager-app.c
@@ -1,4 +1,4 @@
-/* moonshot-identity-manager-app.c generated by valac 0.24.0, the Vala compiler
+/* moonshot-identity-manager-app.c generated by valac 0.26.1, the Vala compiler
  * generated from moonshot-identity-manager-app.vala, do not modify */
 
 /*
@@ -275,18 +275,18 @@ void id_card_set_issuer (IdCard* self, c
 void id_card_set_password (IdCard* self, const gchar* value);
 void id_card_set_temporary (IdCard* self, gboolean value);
 void identity_manager_view_queue_identity_request (IdentityManagerView* self, IdentityRequest* request);
-static gboolean __lambda6_ (Block1Data* _data1_);
+static gboolean __lambda7_ (Block1Data* _data1_);
 IdCard* identity_manager_view_check_add_password (IdentityManagerView* self, IdCard* identity, IdentityRequest* request, IdentityManagerModel* model);
 void identity_request_return_identity (IdentityRequest* self, IdCard* id_card);
-static gboolean ___lambda6__gsource_func (gpointer self);
+static gboolean ___lambda7__gsource_func (gpointer self);
 static void identity_manager_app_bus_acquired_cb (IdentityManagerApp* self, GDBusConnection* conn);
 MoonshotServer* moonshot_server_new (IdentityManagerApp* app);
 MoonshotServer* moonshot_server_construct (GType object_type, IdentityManagerApp* app);
 static void _identity_manager_app_bus_acquired_cb_gbus_acquired_callback (GDBusConnection* connection, const gchar* name, gpointer self);
-static void __lambda9_ (IdentityManagerApp* self, GDBusConnection* conn, const gchar* name);
-static void ___lambda9__gbus_name_acquired_callback (GDBusConnection* connection, const gchar* name, gpointer self);
 static void __lambda10_ (IdentityManagerApp* self, GDBusConnection* conn, const gchar* name);
-static void ___lambda10__gbus_name_lost_callback (GDBusConnection* connection, const gchar* name, gpointer self);
+static void ___lambda10__gbus_name_acquired_callback (GDBusConnection* connection, const gchar* name, gpointer self);
+static void __lambda11_ (IdentityManagerApp* self, GDBusConnection* conn, const gchar* name);
+static void ___lambda11__gbus_name_lost_callback (GDBusConnection* connection, const gchar* name, gpointer self);
 static void identity_manager_app_finalize (IdentityManagerApp* obj);
 gint _vala_main (gchar** args, int args_length1);
 static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func);
@@ -335,6 +335,7 @@ GType iidentity_manager_get_type (void)
 		g_type_interface_add_prerequisite (iidentity_manager_type_id, G_TYPE_OBJECT);
 		g_type_set_qdata (iidentity_manager_type_id, g_quark_from_static_string ("vala-dbus-proxy-type"), (void*) iidentity_manager_proxy_get_type);
 		g_type_set_qdata (iidentity_manager_type_id, g_quark_from_static_string ("vala-dbus-interface-name"), "org.janet.Moonshot");
+		g_type_set_qdata (iidentity_manager_type_id, g_quark_from_static_string ("vala-dbus-interface-info"), (void*) (&_iidentity_manager_dbus_interface_info));
 		g_type_set_qdata (iidentity_manager_type_id, g_quark_from_static_string ("vala-dbus-register-object"), (void*) iidentity_manager_register_object);
 		g_once_init_leave (&iidentity_manager_type_id__volatile, iidentity_manager_type_id);
 	}
@@ -482,13 +483,13 @@ void identity_manager_app_show (Identity
 	_tmp0_ = self->view;
 #line 70 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	if (_tmp0_ != NULL) {
-#line 485 "moonshot-identity-manager-app.c"
+#line 486 "moonshot-identity-manager-app.c"
 		IdentityManagerView* _tmp1_ = NULL;
 #line 70 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_tmp1_ = self->view;
 #line 70 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		gtk_widget_show ((GtkWidget*) _tmp1_);
-#line 491 "moonshot-identity-manager-app.c"
+#line 492 "moonshot-identity-manager-app.c"
 	}
 }
 
@@ -529,17 +530,17 @@ IdentityManagerApp* identity_manager_app
 	_tmp3_ = use_flat_file_store;
 #line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	if (!_tmp3_) {
-#line 532 "moonshot-identity-manager-app.c"
+#line 533 "moonshot-identity-manager-app.c"
 		gboolean _tmp4_ = FALSE;
 #line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_tmp4_ = gnome_keyring_is_available ();
 #line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_tmp2_ = _tmp4_;
-#line 538 "moonshot-identity-manager-app.c"
+#line 539 "moonshot-identity-manager-app.c"
 	} else {
 #line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_tmp2_ = FALSE;
-#line 542 "moonshot-identity-manager-app.c"
+#line 543 "moonshot-identity-manager-app.c"
 	}
 #line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	keyring_available = _tmp2_;
@@ -549,37 +550,37 @@ IdentityManagerApp* identity_manager_app
 	if (_tmp7_) {
 #line 81 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_tmp6_ = TRUE;
-#line 552 "moonshot-identity-manager-app.c"
+#line 553 "moonshot-identity-manager-app.c"
 	} else {
 		gboolean _tmp8_ = FALSE;
 #line 81 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_tmp8_ = use_flat_file_store;
 #line 81 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_tmp6_ = _tmp8_;
-#line 559 "moonshot-identity-manager-app.c"
+#line 560 "moonshot-identity-manager-app.c"
 	}
 #line 81 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	if (_tmp6_) {
 #line 81 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_tmp5_ = TRUE;
-#line 565 "moonshot-identity-manager-app.c"
+#line 566 "moonshot-identity-manager-app.c"
 	} else {
 		gboolean _tmp9_ = FALSE;
 #line 81 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_tmp9_ = keyring_available;
 #line 81 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_tmp5_ = !_tmp9_;
-#line 572 "moonshot-identity-manager-app.c"
+#line 573 "moonshot-identity-manager-app.c"
 	}
 #line 81 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	if (_tmp5_) {
 #line 82 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		store_type = IIDENTITY_CARD_STORE_STORE_TYPE_FLAT_FILE;
-#line 578 "moonshot-identity-manager-app.c"
+#line 579 "moonshot-identity-manager-app.c"
 	} else {
 #line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		store_type = IIDENTITY_CARD_STORE_STORE_TYPE_KEYRING;
-#line 582 "moonshot-identity-manager-app.c"
+#line 583 "moonshot-identity-manager-app.c"
 	}
 #line 86 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	_tmp10_ = store_type;
@@ -593,35 +594,35 @@ IdentityManagerApp* identity_manager_app
 	_tmp15_ = headless;
 #line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	if (_tmp15_) {
-#line 596 "moonshot-identity-manager-app.c"
+#line 597 "moonshot-identity-manager-app.c"
 		gboolean _tmp16_ = FALSE;
 #line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_tmp16_ = keyring_available;
 #line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_tmp14_ = _tmp16_;
-#line 602 "moonshot-identity-manager-app.c"
+#line 603 "moonshot-identity-manager-app.c"
 	} else {
 #line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_tmp14_ = FALSE;
-#line 606 "moonshot-identity-manager-app.c"
+#line 607 "moonshot-identity-manager-app.c"
 	}
 #line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	if (_tmp14_) {
-#line 610 "moonshot-identity-manager-app.c"
+#line 611 "moonshot-identity-manager-app.c"
 		gboolean _tmp17_ = FALSE;
 #line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_tmp17_ = use_flat_file_store;
 #line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_tmp13_ = !_tmp17_;
-#line 616 "moonshot-identity-manager-app.c"
+#line 617 "moonshot-identity-manager-app.c"
 	} else {
 #line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_tmp13_ = FALSE;
-#line 620 "moonshot-identity-manager-app.c"
+#line 621 "moonshot-identity-manager-app.c"
 	}
 #line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	if (_tmp13_) {
-#line 624 "moonshot-identity-manager-app.c"
+#line 625 "moonshot-identity-manager-app.c"
 		IdentityManagerModel* _tmp18_ = NULL;
 		gboolean _tmp19_ = FALSE;
 #line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
@@ -630,27 +631,27 @@ IdentityManagerApp* identity_manager_app
 		_tmp19_ = identity_manager_model_HasNonTrivialIdentities (_tmp18_);
 #line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_tmp12_ = !_tmp19_;
-#line 633 "moonshot-identity-manager-app.c"
+#line 634 "moonshot-identity-manager-app.c"
 	} else {
 #line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_tmp12_ = FALSE;
-#line 637 "moonshot-identity-manager-app.c"
+#line 638 "moonshot-identity-manager-app.c"
 	}
 #line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	if (_tmp12_) {
-#line 641 "moonshot-identity-manager-app.c"
+#line 642 "moonshot-identity-manager-app.c"
 		IdentityManagerModel* _tmp20_ = NULL;
 #line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_tmp20_ = self->model;
 #line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		identity_manager_model_set_store_type (_tmp20_, IIDENTITY_CARD_STORE_STORE_TYPE_KEYRING);
-#line 647 "moonshot-identity-manager-app.c"
+#line 648 "moonshot-identity-manager-app.c"
 	}
 #line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	_tmp21_ = headless;
 #line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	if (!_tmp21_) {
-#line 653 "moonshot-identity-manager-app.c"
+#line 654 "moonshot-identity-manager-app.c"
 		IdentityManagerView* _tmp22_ = NULL;
 #line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_tmp22_ = identity_manager_view_new (self);
@@ -660,7 +661,7 @@ IdentityManagerApp* identity_manager_app
 		_g_object_unref0 (self->view);
 #line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		self->view = _tmp22_;
-#line 663 "moonshot-identity-manager-app.c"
+#line 664 "moonshot-identity-manager-app.c"
 	}
 #line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	_tmp23_ = self->model;
@@ -676,18 +677,18 @@ IdentityManagerApp* identity_manager_app
 	_tmp27_ = _tmp26_;
 #line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	if (_tmp27_ > 0) {
-#line 679 "moonshot-identity-manager-app.c"
+#line 680 "moonshot-identity-manager-app.c"
 		GeeLinkedList* _tmp28_ = NULL;
 		gpointer _tmp29_ = NULL;
 #line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_tmp28_ = card_list;
 #line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
-		_tmp29_ = gee_abstract_list_last ((GeeAbstractList*) _tmp28_);
+		_tmp29_ = gee_linked_list_last (_tmp28_);
 #line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_g_object_unref0 (self->default_id_card);
 #line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		self->default_id_card = (IdCard*) _tmp29_;
-#line 690 "moonshot-identity-manager-app.c"
+#line 691 "moonshot-identity-manager-app.c"
 	}
 #line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	identity_manager_app_init_ipc_server (self);
@@ -695,14 +696,14 @@ IdentityManagerApp* identity_manager_app
 	_g_object_unref0 (card_list);
 #line 73 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	return self;
-#line 698 "moonshot-identity-manager-app.c"
+#line 699 "moonshot-identity-manager-app.c"
 }
 
 
 IdentityManagerApp* identity_manager_app_new (gboolean headless, gboolean use_flat_file_store) {
 #line 73 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	return identity_manager_app_construct (TYPE_IDENTITY_MANAGER_APP, headless, use_flat_file_store);
-#line 705 "moonshot-identity-manager-app.c"
+#line 706 "moonshot-identity-manager-app.c"
 }
 
 
@@ -720,7 +721,7 @@ gboolean identity_manager_app_add_identi
 	_tmp0_ = self->view;
 #line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	if (_tmp0_ != NULL) {
-#line 723 "moonshot-identity-manager-app.c"
+#line 724 "moonshot-identity-manager-app.c"
 		IdentityManagerView* _tmp1_ = NULL;
 		IdCard* _tmp2_ = NULL;
 		gboolean _tmp3_ = FALSE;
@@ -737,7 +738,7 @@ gboolean identity_manager_app_add_identi
 		result = _tmp4_;
 #line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		return result;
-#line 740 "moonshot-identity-manager-app.c"
+#line 741 "moonshot-identity-manager-app.c"
 	}
 #line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	_tmp5_ = self->model;
@@ -751,14 +752,14 @@ gboolean identity_manager_app_add_identi
 	result = TRUE;
 #line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	return result;
-#line 754 "moonshot-identity-manager-app.c"
+#line 755 "moonshot-identity-manager-app.c"
 }
 
 
 static gpointer _g_object_ref0 (gpointer self) {
 #line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	return self ? g_object_ref (self) : NULL;
-#line 761 "moonshot-identity-manager-app.c"
+#line 762 "moonshot-identity-manager-app.c"
 }
 
 
@@ -767,7 +768,7 @@ static Block1Data* block1_data_ref (Bloc
 	g_atomic_int_inc (&_data1_->_ref_count_);
 #line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	return _data1_;
-#line 770 "moonshot-identity-manager-app.c"
+#line 771 "moonshot-identity-manager-app.c"
 }
 
 
@@ -776,7 +777,7 @@ static void block1_data_unref (void * _u
 	_data1_ = (Block1Data*) _userdata_;
 #line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	if (g_atomic_int_dec_and_test (&_data1_->_ref_count_)) {
-#line 779 "moonshot-identity-manager-app.c"
+#line 780 "moonshot-identity-manager-app.c"
 		IdentityManagerApp* self;
 #line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		self = _data1_->self;
@@ -788,7 +789,7 @@ static void block1_data_unref (void * _u
 		_identity_manager_app_unref0 (self);
 #line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		g_slice_free (Block1Data, _data1_);
-#line 791 "moonshot-identity-manager-app.c"
+#line 792 "moonshot-identity-manager-app.c"
 	}
 }
 
@@ -796,7 +797,7 @@ static void block1_data_unref (void * _u
 static void _g_free0_ (gpointer var) {
 #line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	var = (g_free (var), NULL);
-#line 799 "moonshot-identity-manager-app.c"
+#line 800 "moonshot-identity-manager-app.c"
 }
 
 
@@ -805,11 +806,11 @@ static void _g_slist_free__g_free0_ (GSL
 	g_slist_foreach (self, (GFunc) _g_free0_, NULL);
 #line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	g_slist_free (self);
-#line 808 "moonshot-identity-manager-app.c"
+#line 809 "moonshot-identity-manager-app.c"
 }
 
 
-static gboolean __lambda6_ (Block1Data* _data1_) {
+static gboolean __lambda7_ (Block1Data* _data1_) {
 	IdentityManagerApp* self;
 	gboolean result = FALSE;
 	IdentityManagerView* _tmp0_ = NULL;
@@ -821,7 +822,7 @@ static gboolean __lambda6_ (Block1Data*
 	_tmp0_ = self->view;
 #line 242 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	if (_tmp0_ != NULL) {
-#line 824 "moonshot-identity-manager-app.c"
+#line 825 "moonshot-identity-manager-app.c"
 		IdentityManagerView* _tmp1_ = NULL;
 		IdCard* _tmp2_ = NULL;
 		IdentityRequest* _tmp3_ = NULL;
@@ -841,7 +842,7 @@ static gboolean __lambda6_ (Block1Data*
 		_g_object_unref0 (_data1_->identity);
 #line 243 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_data1_->identity = _tmp5_;
-#line 844 "moonshot-identity-manager-app.c"
+#line 845 "moonshot-identity-manager-app.c"
 	}
 #line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	_tmp6_ = _data1_->request;
@@ -853,16 +854,16 @@ static gboolean __lambda6_ (Block1Data*
 	result = FALSE;
 #line 250 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	return result;
-#line 856 "moonshot-identity-manager-app.c"
+#line 857 "moonshot-identity-manager-app.c"
 }
 
 
-static gboolean ___lambda6__gsource_func (gpointer self) {
+static gboolean ___lambda7__gsource_func (gpointer self) {
 	gboolean result;
-	result = __lambda6_ (self);
+	result = __lambda7_ (self);
 #line 240 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	return result;
-#line 865 "moonshot-identity-manager-app.c"
+#line 866 "moonshot-identity-manager-app.c"
 }
 
 
@@ -899,7 +900,7 @@ void identity_manager_app_select_identit
 	_tmp3_ = _tmp2_->select_default;
 #line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	if (_tmp3_) {
-#line 902 "moonshot-identity-manager-app.c"
+#line 903 "moonshot-identity-manager-app.c"
 		IdCard* _tmp4_ = NULL;
 		IdCard* _tmp5_ = NULL;
 #line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
@@ -910,13 +911,13 @@ void identity_manager_app_select_identit
 		_g_object_unref0 (_data1_->identity);
 #line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_data1_->identity = _tmp5_;
-#line 913 "moonshot-identity-manager-app.c"
+#line 914 "moonshot-identity-manager-app.c"
 	}
 #line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	_tmp6_ = _data1_->identity;
 #line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	if (_tmp6_ == NULL) {
-#line 919 "moonshot-identity-manager-app.c"
+#line 920 "moonshot-identity-manager-app.c"
 		gboolean _tmp7_ = FALSE;
 		IdentityRequest* _tmp8_ = NULL;
 		const gchar* _tmp9_ = NULL;
@@ -942,7 +943,7 @@ void identity_manager_app_select_identit
 		_tmp9_ = _tmp8_->nai;
 #line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		if (_tmp9_ != NULL) {
-#line 945 "moonshot-identity-manager-app.c"
+#line 946 "moonshot-identity-manager-app.c"
 			IdentityRequest* _tmp10_ = NULL;
 			const gchar* _tmp11_ = NULL;
 #line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
@@ -951,11 +952,11 @@ void identity_manager_app_select_identit
 			_tmp11_ = _tmp10_->nai;
 #line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			_tmp7_ = g_strcmp0 (_tmp11_, "") != 0;
-#line 954 "moonshot-identity-manager-app.c"
+#line 955 "moonshot-identity-manager-app.c"
 		} else {
 #line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			_tmp7_ = FALSE;
-#line 958 "moonshot-identity-manager-app.c"
+#line 959 "moonshot-identity-manager-app.c"
 		}
 #line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		has_nai = _tmp7_;
@@ -965,7 +966,7 @@ void identity_manager_app_select_identit
 		_tmp14_ = _tmp13_->service;
 #line 128 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		if (_tmp14_ != NULL) {
-#line 968 "moonshot-identity-manager-app.c"
+#line 969 "moonshot-identity-manager-app.c"
 			IdentityRequest* _tmp15_ = NULL;
 			const gchar* _tmp16_ = NULL;
 #line 128 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
@@ -974,17 +975,17 @@ void identity_manager_app_select_identit
 			_tmp16_ = _tmp15_->service;
 #line 128 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			_tmp12_ = g_strcmp0 (_tmp16_, "") != 0;
-#line 977 "moonshot-identity-manager-app.c"
+#line 978 "moonshot-identity-manager-app.c"
 		} else {
 #line 128 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			_tmp12_ = FALSE;
-#line 981 "moonshot-identity-manager-app.c"
+#line 982 "moonshot-identity-manager-app.c"
 		}
 #line 128 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		has_srv = _tmp12_;
 #line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		confirm = FALSE;
-#line 987 "moonshot-identity-manager-app.c"
+#line 988 "moonshot-identity-manager-app.c"
 		{
 			GeeLinkedList* _id_list = NULL;
 			IdentityManagerModel* _tmp17_ = NULL;
@@ -1012,7 +1013,7 @@ void identity_manager_app_select_identit
 			_id_index = -1;
 #line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			while (TRUE) {
-#line 1015 "moonshot-identity-manager-app.c"
+#line 1016 "moonshot-identity-manager-app.c"
 				gint _tmp22_ = 0;
 				gint _tmp23_ = 0;
 				gint _tmp24_ = 0;
@@ -1035,7 +1036,7 @@ void identity_manager_app_select_identit
 				if (!(_tmp23_ < _tmp24_)) {
 #line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 					break;
-#line 1038 "moonshot-identity-manager-app.c"
+#line 1039 "moonshot-identity-manager-app.c"
 				}
 #line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 				_tmp25_ = _id_list;
@@ -1049,7 +1050,7 @@ void identity_manager_app_select_identit
 				_tmp29_ = has_nai;
 #line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 				if (_tmp29_) {
-#line 1052 "moonshot-identity-manager-app.c"
+#line 1053 "moonshot-identity-manager-app.c"
 					IdentityRequest* _tmp30_ = NULL;
 					const gchar* _tmp31_ = NULL;
 					IdCard* _tmp32_ = NULL;
@@ -1067,15 +1068,15 @@ void identity_manager_app_select_identit
 					_tmp34_ = _tmp33_;
 #line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 					_tmp28_ = g_strcmp0 (_tmp31_, _tmp34_) == 0;
-#line 1070 "moonshot-identity-manager-app.c"
+#line 1071 "moonshot-identity-manager-app.c"
 				} else {
 #line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 					_tmp28_ = FALSE;
-#line 1074 "moonshot-identity-manager-app.c"
+#line 1075 "moonshot-identity-manager-app.c"
 				}
 #line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 				if (_tmp28_) {
-#line 1078 "moonshot-identity-manager-app.c"
+#line 1079 "moonshot-identity-manager-app.c"
 					IdCard* _tmp35_ = NULL;
 					IdCard* _tmp36_ = NULL;
 #line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
@@ -1090,13 +1091,13 @@ void identity_manager_app_select_identit
 					_g_object_unref0 (id);
 #line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 					break;
-#line 1093 "moonshot-identity-manager-app.c"
+#line 1094 "moonshot-identity-manager-app.c"
 				}
 #line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 				_tmp37_ = has_srv;
 #line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 				if (_tmp37_) {
-#line 1099 "moonshot-identity-manager-app.c"
+#line 1100 "moonshot-identity-manager-app.c"
 					IdCard* _tmp38_ = NULL;
 					gchar** _tmp39_ = NULL;
 					gint _tmp39__length1 = 0;
@@ -1110,7 +1111,7 @@ void identity_manager_app_select_identit
 					_tmp40_ = _tmp39_;
 #line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 					_tmp40__length1 = _tmp39__length1;
-#line 1113 "moonshot-identity-manager-app.c"
+#line 1114 "moonshot-identity-manager-app.c"
 					{
 						gchar** srv_collection = NULL;
 						gint srv_collection_length1 = 0;
@@ -1122,14 +1123,14 @@ void identity_manager_app_select_identit
 						srv_collection_length1 = _tmp40__length1;
 #line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 						for (srv_it = 0; srv_it < _tmp40__length1; srv_it = srv_it + 1) {
-#line 1125 "moonshot-identity-manager-app.c"
+#line 1126 "moonshot-identity-manager-app.c"
 							gchar* _tmp41_ = NULL;
 							gchar* srv = NULL;
 #line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 							_tmp41_ = g_strdup (srv_collection[srv_it]);
 #line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 							srv = _tmp41_;
-#line 1132 "moonshot-identity-manager-app.c"
+#line 1133 "moonshot-identity-manager-app.c"
 							{
 								IdentityRequest* _tmp42_ = NULL;
 								const gchar* _tmp43_ = NULL;
@@ -1142,7 +1143,7 @@ void identity_manager_app_select_identit
 								_tmp44_ = srv;
 #line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 								if (g_strcmp0 (_tmp43_, _tmp44_) == 0) {
-#line 1145 "moonshot-identity-manager-app.c"
+#line 1146 "moonshot-identity-manager-app.c"
 									IdentityRequest* _tmp45_ = NULL;
 									IdCard* _tmp46_ = NULL;
 									IdCard* _tmp47_ = NULL;
@@ -1158,42 +1159,42 @@ void identity_manager_app_select_identit
 									_g_free0 (srv);
 #line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 									continue;
-#line 1161 "moonshot-identity-manager-app.c"
+#line 1162 "moonshot-identity-manager-app.c"
 								}
 #line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 								_g_free0 (srv);
-#line 1165 "moonshot-identity-manager-app.c"
+#line 1166 "moonshot-identity-manager-app.c"
 							}
 						}
 					}
 				}
 #line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 				_g_object_unref0 (id);
-#line 1172 "moonshot-identity-manager-app.c"
+#line 1173 "moonshot-identity-manager-app.c"
 			}
 #line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			_g_object_unref0 (_id_list);
-#line 1176 "moonshot-identity-manager-app.c"
+#line 1177 "moonshot-identity-manager-app.c"
 		}
 #line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_tmp50_ = _data1_->identity;
 #line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		if (_tmp50_ == NULL) {
-#line 1182 "moonshot-identity-manager-app.c"
+#line 1183 "moonshot-identity-manager-app.c"
 			gboolean _tmp51_ = FALSE;
 #line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			_tmp51_ = has_srv;
 #line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			_tmp49_ = _tmp51_;
-#line 1188 "moonshot-identity-manager-app.c"
+#line 1189 "moonshot-identity-manager-app.c"
 		} else {
 #line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			_tmp49_ = FALSE;
-#line 1192 "moonshot-identity-manager-app.c"
+#line 1193 "moonshot-identity-manager-app.c"
 		}
 #line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		if (_tmp49_) {
-#line 1196 "moonshot-identity-manager-app.c"
+#line 1197 "moonshot-identity-manager-app.c"
 			IdentityRequest* _tmp52_ = NULL;
 			GSList* _tmp53_ = NULL;
 			guint _tmp54_ = 0U;
@@ -1205,22 +1206,22 @@ void identity_manager_app_select_identit
 			_tmp54_ = g_slist_length (_tmp53_);
 #line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			_tmp48_ = _tmp54_ > ((guint) 1);
-#line 1208 "moonshot-identity-manager-app.c"
+#line 1209 "moonshot-identity-manager-app.c"
 		} else {
 #line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			_tmp48_ = FALSE;
-#line 1212 "moonshot-identity-manager-app.c"
+#line 1213 "moonshot-identity-manager-app.c"
 		}
 #line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		if (_tmp48_) {
-#line 1216 "moonshot-identity-manager-app.c"
+#line 1217 "moonshot-identity-manager-app.c"
 			IdentityRequest* _tmp55_ = NULL;
 			GSList* _tmp56_ = NULL;
 #line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			_tmp55_ = _data1_->request;
 #line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			_tmp56_ = _tmp55_->candidates;
-#line 1223 "moonshot-identity-manager-app.c"
+#line 1224 "moonshot-identity-manager-app.c"
 			{
 				GSList* id_collection = NULL;
 				GSList* id_it = NULL;
@@ -1228,14 +1229,14 @@ void identity_manager_app_select_identit
 				id_collection = _tmp56_;
 #line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 				for (id_it = id_collection; id_it != NULL; id_it = id_it->next) {
-#line 1231 "moonshot-identity-manager-app.c"
+#line 1232 "moonshot-identity-manager-app.c"
 					IdCard* _tmp57_ = NULL;
 					IdCard* id = NULL;
 #line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 					_tmp57_ = _g_object_ref0 ((IdCard*) id_it->data);
 #line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 					id = _tmp57_;
-#line 1238 "moonshot-identity-manager-app.c"
+#line 1239 "moonshot-identity-manager-app.c"
 					{
 						gint i = 0;
 						GSList* services_list = NULL;
@@ -1272,7 +1273,7 @@ void identity_manager_app_select_identit
 						_tmp60_ = _tmp59_;
 #line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 						_tmp60__length1 = _tmp59__length1;
-#line 1275 "moonshot-identity-manager-app.c"
+#line 1276 "moonshot-identity-manager-app.c"
 						{
 							gchar** srv_collection = NULL;
 							gint srv_collection_length1 = 0;
@@ -1284,14 +1285,14 @@ void identity_manager_app_select_identit
 							srv_collection_length1 = _tmp60__length1;
 #line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 							for (srv_it = 0; srv_it < _tmp60__length1; srv_it = srv_it + 1) {
-#line 1287 "moonshot-identity-manager-app.c"
+#line 1288 "moonshot-identity-manager-app.c"
 								gchar* _tmp61_ = NULL;
 								gchar* srv = NULL;
 #line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 								_tmp61_ = g_strdup (srv_collection[srv_it]);
 #line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 								srv = _tmp61_;
-#line 1294 "moonshot-identity-manager-app.c"
+#line 1295 "moonshot-identity-manager-app.c"
 								{
 									const gchar* _tmp62_ = NULL;
 									IdentityRequest* _tmp63_ = NULL;
@@ -1312,7 +1313,7 @@ void identity_manager_app_select_identit
 										_g_free0 (srv);
 #line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 										continue;
-#line 1315 "moonshot-identity-manager-app.c"
+#line 1316 "moonshot-identity-manager-app.c"
 									}
 #line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 									_tmp65_ = srv;
@@ -1322,7 +1323,7 @@ void identity_manager_app_select_identit
 									services_list = g_slist_append (services_list, _tmp66_);
 #line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 									_g_free0 (srv);
-#line 1325 "moonshot-identity-manager-app.c"
+#line 1326 "moonshot-identity-manager-app.c"
 								}
 							}
 						}
@@ -1336,7 +1337,7 @@ void identity_manager_app_select_identit
 							_g_object_unref0 (id);
 #line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 							continue;
-#line 1339 "moonshot-identity-manager-app.c"
+#line 1340 "moonshot-identity-manager-app.c"
 						}
 #line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 						_tmp68_ = services_list;
@@ -1344,7 +1345,7 @@ void identity_manager_app_select_identit
 						_tmp69_ = g_slist_length (_tmp68_);
 #line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 						if (_tmp69_ == ((guint) 0)) {
-#line 1347 "moonshot-identity-manager-app.c"
+#line 1348 "moonshot-identity-manager-app.c"
 							IdCard* _tmp70_ = NULL;
 							gchar** _tmp71_ = NULL;
 							gchar** _tmp72_ = NULL;
@@ -1367,7 +1368,7 @@ void identity_manager_app_select_identit
 							_g_object_unref0 (id);
 #line 179 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 							continue;
-#line 1370 "moonshot-identity-manager-app.c"
+#line 1371 "moonshot-identity-manager-app.c"
 						}
 #line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 						_tmp73_ = services_list;
@@ -1383,7 +1384,7 @@ void identity_manager_app_select_identit
 						_services_size_ = services_length1;
 #line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 						_tmp76_ = services_list;
-#line 1386 "moonshot-identity-manager-app.c"
+#line 1387 "moonshot-identity-manager-app.c"
 						{
 							GSList* srv_collection = NULL;
 							GSList* srv_it = NULL;
@@ -1391,14 +1392,14 @@ void identity_manager_app_select_identit
 							srv_collection = _tmp76_;
 #line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 							for (srv_it = srv_collection; srv_it != NULL; srv_it = srv_it->next) {
-#line 1394 "moonshot-identity-manager-app.c"
+#line 1395 "moonshot-identity-manager-app.c"
 								gchar* _tmp77_ = NULL;
 								gchar* srv = NULL;
 #line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 								_tmp77_ = g_strdup ((const gchar*) srv_it->data);
 #line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 								srv = _tmp77_;
-#line 1401 "moonshot-identity-manager-app.c"
+#line 1402 "moonshot-identity-manager-app.c"
 								{
 									gchar** _tmp78_ = NULL;
 									gint _tmp78__length1 = 0;
@@ -1429,7 +1430,7 @@ void identity_manager_app_select_identit
 									i = _tmp83_ + 1;
 #line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 									_g_free0 (srv);
-#line 1432 "moonshot-identity-manager-app.c"
+#line 1433 "moonshot-identity-manager-app.c"
 								}
 							}
 						}
@@ -1447,7 +1448,7 @@ void identity_manager_app_select_identit
 						__g_slist_free__g_free0_0 (services_list);
 #line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 						_g_object_unref0 (id);
-#line 1450 "moonshot-identity-manager-app.c"
+#line 1451 "moonshot-identity-manager-app.c"
 					}
 				}
 			}
@@ -1456,7 +1457,7 @@ void identity_manager_app_select_identit
 		_tmp87_ = _data1_->identity;
 #line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		if (_tmp87_ == NULL) {
-#line 1459 "moonshot-identity-manager-app.c"
+#line 1460 "moonshot-identity-manager-app.c"
 			IdentityRequest* _tmp88_ = NULL;
 			GSList* _tmp89_ = NULL;
 			guint _tmp90_ = 0U;
@@ -1468,15 +1469,15 @@ void identity_manager_app_select_identit
 			_tmp90_ = g_slist_length (_tmp89_);
 #line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			_tmp86_ = _tmp90_ == ((guint) 0);
-#line 1471 "moonshot-identity-manager-app.c"
+#line 1472 "moonshot-identity-manager-app.c"
 		} else {
 #line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			_tmp86_ = FALSE;
-#line 1475 "moonshot-identity-manager-app.c"
+#line 1476 "moonshot-identity-manager-app.c"
 		}
 #line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		if (_tmp86_) {
-#line 1479 "moonshot-identity-manager-app.c"
+#line 1480 "moonshot-identity-manager-app.c"
 			{
 				GeeLinkedList* _id_list = NULL;
 				IdentityManagerModel* _tmp91_ = NULL;
@@ -1504,7 +1505,7 @@ void identity_manager_app_select_identit
 				_id_index = -1;
 #line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 				while (TRUE) {
-#line 1507 "moonshot-identity-manager-app.c"
+#line 1508 "moonshot-identity-manager-app.c"
 					gint _tmp96_ = 0;
 					gint _tmp97_ = 0;
 					gint _tmp98_ = 0;
@@ -1529,7 +1530,7 @@ void identity_manager_app_select_identit
 					if (!(_tmp97_ < _tmp98_)) {
 #line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 						break;
-#line 1532 "moonshot-identity-manager-app.c"
+#line 1533 "moonshot-identity-manager-app.c"
 					}
 #line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 					_tmp99_ = _id_list;
@@ -1547,7 +1548,7 @@ void identity_manager_app_select_identit
 					_tmp104_ = _tmp103_;
 #line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 					_tmp104__length1 = _tmp103__length1;
-#line 1550 "moonshot-identity-manager-app.c"
+#line 1551 "moonshot-identity-manager-app.c"
 					{
 						Rule* rule_collection = NULL;
 						gint rule_collection_length1 = 0;
@@ -1559,14 +1560,14 @@ void identity_manager_app_select_identit
 						rule_collection_length1 = _tmp104__length1;
 #line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 						for (rule_it = 0; rule_it < _tmp104__length1; rule_it = rule_it + 1) {
-#line 1562 "moonshot-identity-manager-app.c"
+#line 1563 "moonshot-identity-manager-app.c"
 							Rule _tmp105_ = {0};
 							Rule rule = {0};
 #line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 							rule_copy (&rule_collection[rule_it], &_tmp105_);
 #line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 							rule = _tmp105_;
-#line 1569 "moonshot-identity-manager-app.c"
+#line 1570 "moonshot-identity-manager-app.c"
 							{
 								IdentityRequest* _tmp106_ = NULL;
 								const gchar* _tmp107_ = NULL;
@@ -1594,7 +1595,7 @@ void identity_manager_app_select_identit
 									rule_destroy (&rule);
 #line 201 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 									continue;
-#line 1597 "moonshot-identity-manager-app.c"
+#line 1598 "moonshot-identity-manager-app.c"
 								}
 #line 203 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 								_tmp111_ = _data1_->request;
@@ -1612,42 +1613,42 @@ void identity_manager_app_select_identit
 								if (g_strcmp0 (_tmp115_, "true") == 0) {
 #line 206 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 									confirm = TRUE;
-#line 1615 "moonshot-identity-manager-app.c"
+#line 1616 "moonshot-identity-manager-app.c"
 								}
 #line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 								rule_destroy (&rule);
-#line 1619 "moonshot-identity-manager-app.c"
+#line 1620 "moonshot-identity-manager-app.c"
 							}
 						}
 					}
 #line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 					_g_object_unref0 (id);
-#line 1625 "moonshot-identity-manager-app.c"
+#line 1626 "moonshot-identity-manager-app.c"
 				}
 #line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 				_g_object_unref0 (_id_list);
-#line 1629 "moonshot-identity-manager-app.c"
+#line 1630 "moonshot-identity-manager-app.c"
 			}
 		}
 #line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_tmp117_ = _data1_->identity;
 #line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		if (_tmp117_ == NULL) {
-#line 1636 "moonshot-identity-manager-app.c"
+#line 1637 "moonshot-identity-manager-app.c"
 			gboolean _tmp118_ = FALSE;
 #line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			_tmp118_ = has_nai;
 #line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			_tmp116_ = _tmp118_;
-#line 1642 "moonshot-identity-manager-app.c"
+#line 1643 "moonshot-identity-manager-app.c"
 		} else {
 #line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			_tmp116_ = FALSE;
-#line 1646 "moonshot-identity-manager-app.c"
+#line 1647 "moonshot-identity-manager-app.c"
 		}
 #line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		if (_tmp116_) {
-#line 1650 "moonshot-identity-manager-app.c"
+#line 1651 "moonshot-identity-manager-app.c"
 			gchar** components = NULL;
 			IdentityRequest* _tmp119_ = NULL;
 			const gchar* _tmp120_ = NULL;
@@ -1711,7 +1712,7 @@ void identity_manager_app_select_identit
 			_tmp130__length1 = components_length1;
 #line 217 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			if (_tmp130__length1 > 1) {
-#line 1714 "moonshot-identity-manager-app.c"
+#line 1715 "moonshot-identity-manager-app.c"
 				IdCard* _tmp131_ = NULL;
 				gchar** _tmp132_ = NULL;
 				gint _tmp132__length1 = 0;
@@ -1726,7 +1727,7 @@ void identity_manager_app_select_identit
 				_tmp133_ = _tmp132_[1];
 #line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 				id_card_set_issuer (_tmp131_, _tmp133_);
-#line 1729 "moonshot-identity-manager-app.c"
+#line 1730 "moonshot-identity-manager-app.c"
 			}
 #line 219 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			_tmp134_ = _data1_->identity;
@@ -1742,13 +1743,13 @@ void identity_manager_app_select_identit
 			id_card_set_temporary (_tmp137_, TRUE);
 #line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			components = (_vala_array_free (components, components_length1, (GDestroyNotify) g_free), NULL);
-#line 1745 "moonshot-identity-manager-app.c"
+#line 1746 "moonshot-identity-manager-app.c"
 		}
 #line 222 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_tmp138_ = _data1_->identity;
 #line 222 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		if (_tmp138_ == NULL) {
-#line 1751 "moonshot-identity-manager-app.c"
+#line 1752 "moonshot-identity-manager-app.c"
 			IdentityRequest* _tmp139_ = NULL;
 			GSList* _tmp140_ = NULL;
 			guint _tmp141_ = 0U;
@@ -1762,7 +1763,7 @@ void identity_manager_app_select_identit
 			if (_tmp141_ != ((guint) 1)) {
 #line 224 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 				confirm = TRUE;
-#line 1765 "moonshot-identity-manager-app.c"
+#line 1766 "moonshot-identity-manager-app.c"
 			} else {
 				IdentityRequest* _tmp142_ = NULL;
 				GSList* _tmp143_ = NULL;
@@ -1780,28 +1781,28 @@ void identity_manager_app_select_identit
 				_g_object_unref0 (_data1_->identity);
 #line 226 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 				_data1_->identity = _tmp145_;
-#line 1783 "moonshot-identity-manager-app.c"
+#line 1784 "moonshot-identity-manager-app.c"
 			}
 		}
 #line 230 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_tmp147_ = confirm;
 #line 230 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		if (_tmp147_) {
-#line 1790 "moonshot-identity-manager-app.c"
+#line 1791 "moonshot-identity-manager-app.c"
 			IdentityManagerView* _tmp148_ = NULL;
 #line 230 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			_tmp148_ = self->view;
 #line 230 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			_tmp146_ = _tmp148_ != NULL;
-#line 1796 "moonshot-identity-manager-app.c"
+#line 1797 "moonshot-identity-manager-app.c"
 		} else {
 #line 230 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			_tmp146_ = FALSE;
-#line 1800 "moonshot-identity-manager-app.c"
+#line 1801 "moonshot-identity-manager-app.c"
 		}
 #line 230 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		if (_tmp146_) {
-#line 1804 "moonshot-identity-manager-app.c"
+#line 1805 "moonshot-identity-manager-app.c"
 			gboolean _tmp149_ = FALSE;
 			IdentityManagerView* _tmp150_ = NULL;
 			IdentityRequest* _tmp151_ = NULL;
@@ -1811,7 +1812,7 @@ void identity_manager_app_select_identit
 			if (!_tmp149_) {
 #line 233 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 				identity_manager_app_show (self);
-#line 1814 "moonshot-identity-manager-app.c"
+#line 1815 "moonshot-identity-manager-app.c"
 			}
 #line 234 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			_tmp150_ = self->view;
@@ -1825,18 +1826,18 @@ void identity_manager_app_select_identit
 			_data1_ = NULL;
 #line 235 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			return;
-#line 1828 "moonshot-identity-manager-app.c"
+#line 1829 "moonshot-identity-manager-app.c"
 		}
 	}
 #line 240 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
-	g_idle_add_full (G_PRIORITY_DEFAULT_IDLE, ___lambda6__gsource_func, block1_data_ref (_data1_), block1_data_unref);
+	g_idle_add_full (G_PRIORITY_DEFAULT_IDLE, ___lambda7__gsource_func, block1_data_ref (_data1_), block1_data_unref);
 #line 253 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	block1_data_unref (_data1_);
 #line 253 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	_data1_ = NULL;
 #line 253 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	return;
-#line 1839 "moonshot-identity-manager-app.c"
+#line 1840 "moonshot-identity-manager-app.c"
 }
 
 
@@ -1869,7 +1870,7 @@ static gboolean identity_manager_app_mat
 	_g_pattern_spec_free0 (pspec);
 #line 259 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	return result;
-#line 1872 "moonshot-identity-manager-app.c"
+#line 1873 "moonshot-identity-manager-app.c"
 }
 
 
@@ -1879,7 +1880,7 @@ static void identity_manager_app_bus_acq
 	g_return_if_fail (self != NULL);
 #line 309 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	g_return_if_fail (conn != NULL);
-#line 1882 "moonshot-identity-manager-app.c"
+#line 1883 "moonshot-identity-manager-app.c"
 	{
 		GDBusConnection* _tmp0_ = NULL;
 		MoonshotServer* _tmp1_ = NULL;
@@ -1890,8 +1891,8 @@ static void identity_manager_app_bus_acq
 #line 312 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		moonshot_server_register_object (_tmp1_, _tmp0_, "/org/janet/moonshot", &_inner_error_);
 #line 312 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
-		if (_inner_error_ != NULL) {
-#line 1894 "moonshot-identity-manager-app.c"
+		if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 1895 "moonshot-identity-manager-app.c"
 			goto __catch0_g_error;
 		}
 	}
@@ -1916,18 +1917,18 @@ static void identity_manager_app_bus_acq
 		fprintf (_tmp2_, "%s\n", _tmp4_);
 #line 311 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_g_error_free0 (e);
-#line 1919 "moonshot-identity-manager-app.c"
+#line 1920 "moonshot-identity-manager-app.c"
 	}
 	__finally0:
 #line 311 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
-	if (_inner_error_ != NULL) {
+	if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 311 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
 #line 311 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		g_clear_error (&_inner_error_);
 #line 311 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		return;
-#line 1930 "moonshot-identity-manager-app.c"
+#line 1931 "moonshot-identity-manager-app.c"
 	}
 }
 
@@ -1935,27 +1936,27 @@ static void identity_manager_app_bus_acq
 static void _identity_manager_app_bus_acquired_cb_gbus_acquired_callback (GDBusConnection* connection, const gchar* name, gpointer self) {
 #line 323 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	identity_manager_app_bus_acquired_cb ((IdentityManagerApp*) self, connection);
-#line 1938 "moonshot-identity-manager-app.c"
+#line 1939 "moonshot-identity-manager-app.c"
 }
 
 
-static void __lambda9_ (IdentityManagerApp* self, GDBusConnection* conn, const gchar* name) {
+static void __lambda10_ (IdentityManagerApp* self, GDBusConnection* conn, const gchar* name) {
 #line 327 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	g_return_if_fail (conn != NULL);
 #line 327 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	g_return_if_fail (name != NULL);
-#line 1947 "moonshot-identity-manager-app.c"
+#line 1948 "moonshot-identity-manager-app.c"
 }
 
 
-static void ___lambda9__gbus_name_acquired_callback (GDBusConnection* connection, const gchar* name, gpointer self) {
+static void ___lambda10__gbus_name_acquired_callback (GDBusConnection* connection, const gchar* name, gpointer self) {
 #line 323 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
-	__lambda9_ ((IdentityManagerApp*) self, connection, name);
-#line 1954 "moonshot-identity-manager-app.c"
+	__lambda10_ ((IdentityManagerApp*) self, connection, name);
+#line 1955 "moonshot-identity-manager-app.c"
 }
 
 
-static void __lambda10_ (IdentityManagerApp* self, GDBusConnection* conn, const gchar* name) {
+static void __lambda11_ (IdentityManagerApp* self, GDBusConnection* conn, const gchar* name) {
 	gboolean shown = FALSE;
 	gboolean _tmp5_ = FALSE;
 	GError * _inner_error_ = NULL;
@@ -1965,7 +1966,7 @@ static void __lambda10_ (IdentityManager
 	g_return_if_fail (name != NULL);
 #line 329 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	shown = FALSE;
-#line 1968 "moonshot-identity-manager-app.c"
+#line 1969 "moonshot-identity-manager-app.c"
 	{
 		IIdentityManager* manager = NULL;
 		const gchar* _tmp0_ = NULL;
@@ -1976,14 +1977,14 @@ static void __lambda10_ (IdentityManager
 #line 331 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_tmp0_ = name;
 #line 331 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
-		_tmp1_ = g_initable_new (TYPE_IIDENTITY_MANAGER_PROXY, NULL, &_inner_error_, "g-flags", 0, "g-name", _tmp0_, "g-bus-type", G_BUS_TYPE_SESSION, "g-object-path", "/org/janet/moonshot", "g-interface-name", "org.janet.Moonshot", NULL);
+		_tmp1_ = g_initable_new (TYPE_IIDENTITY_MANAGER_PROXY, NULL, &_inner_error_, "g-flags", 0, "g-name", _tmp0_, "g-bus-type", G_BUS_TYPE_SESSION, "g-object-path", "/org/janet/moonshot", "g-interface-name", "org.janet.Moonshot", "g-interface-info", g_type_get_qdata (TYPE_IIDENTITY_MANAGER, g_quark_from_static_string ("vala-dbus-interface-info")), NULL);
 #line 331 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		manager = (IIdentityManager*) _tmp1_;
 #line 331 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
-		if (_inner_error_ != NULL) {
+		if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 331 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			if (_inner_error_->domain == G_IO_ERROR) {
-#line 1986 "moonshot-identity-manager-app.c"
+#line 1987 "moonshot-identity-manager-app.c"
 				goto __catch1_g_io_error;
 			}
 #line 331 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
@@ -1992,7 +1993,7 @@ static void __lambda10_ (IdentityManager
 			g_clear_error (&_inner_error_);
 #line 331 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			return;
-#line 1995 "moonshot-identity-manager-app.c"
+#line 1996 "moonshot-identity-manager-app.c"
 		}
 #line 332 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_tmp3_ = manager;
@@ -2001,12 +2002,12 @@ static void __lambda10_ (IdentityManager
 #line 332 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_tmp2_ = _tmp4_;
 #line 332 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
-		if (_inner_error_ != NULL) {
+		if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 332 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			_g_object_unref0 (manager);
 #line 332 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			if (_inner_error_->domain == G_IO_ERROR) {
-#line 2009 "moonshot-identity-manager-app.c"
+#line 2010 "moonshot-identity-manager-app.c"
 				goto __catch1_g_io_error;
 			}
 #line 332 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
@@ -2017,13 +2018,13 @@ static void __lambda10_ (IdentityManager
 			g_clear_error (&_inner_error_);
 #line 332 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			return;
-#line 2020 "moonshot-identity-manager-app.c"
+#line 2021 "moonshot-identity-manager-app.c"
 		}
 #line 332 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		shown = _tmp2_;
 #line 330 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_g_object_unref0 (manager);
-#line 2026 "moonshot-identity-manager-app.c"
+#line 2027 "moonshot-identity-manager-app.c"
 	}
 	goto __finally1;
 	__catch1_g_io_error:
@@ -2035,31 +2036,31 @@ static void __lambda10_ (IdentityManager
 		_inner_error_ = NULL;
 #line 330 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_g_error_free0 (e);
-#line 2038 "moonshot-identity-manager-app.c"
+#line 2039 "moonshot-identity-manager-app.c"
 	}
 	__finally1:
 #line 330 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
-	if (_inner_error_ != NULL) {
+	if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 330 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
 #line 330 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		g_clear_error (&_inner_error_);
 #line 330 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		return;
-#line 2049 "moonshot-identity-manager-app.c"
+#line 2050 "moonshot-identity-manager-app.c"
 	}
 #line 335 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	_tmp5_ = shown;
 #line 335 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	if (!_tmp5_) {
-#line 2055 "moonshot-identity-manager-app.c"
+#line 2056 "moonshot-identity-manager-app.c"
 		const gchar* _tmp6_ = NULL;
 #line 336 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_tmp6_ = name;
 #line 336 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		g_error ("moonshot-identity-manager-app.vala:336: Couldn't own name %s on dbus o" \
 "r show previously launched identity manager.", _tmp6_);
-#line 2061 "moonshot-identity-manager-app.c"
+#line 2062 "moonshot-identity-manager-app.c"
 	} else {
 		FILE* _tmp7_ = NULL;
 #line 338 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
@@ -2068,15 +2069,15 @@ static void __lambda10_ (IdentityManager
 		fprintf (_tmp7_, "Showed previously launched identity manager.\n");
 #line 339 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		exit (0);
-#line 2070 "moonshot-identity-manager-app.c"
+#line 2071 "moonshot-identity-manager-app.c"
 	}
 }
 
 
-static void ___lambda10__gbus_name_lost_callback (GDBusConnection* connection, const gchar* name, gpointer self) {
+static void ___lambda11__gbus_name_lost_callback (GDBusConnection* connection, const gchar* name, gpointer self) {
 #line 323 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
-	__lambda10_ ((IdentityManagerApp*) self, connection, name);
-#line 2078 "moonshot-identity-manager-app.c"
+	__lambda11_ ((IdentityManagerApp*) self, connection, name);
+#line 2079 "moonshot-identity-manager-app.c"
 }
 
 
@@ -2091,15 +2092,15 @@ static void identity_manager_app_init_ip
 #line 322 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	self->priv->ipc_server = _tmp0_;
 #line 323 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
-	g_bus_own_name_with_closures (G_BUS_TYPE_SESSION, "org.janet.Moonshot", G_BUS_NAME_OWNER_FLAGS_NONE, (GClosure*) ((_identity_manager_app_bus_acquired_cb_gbus_acquired_callback == NULL) ? NULL : g_cclosure_new ((GCallback) _identity_manager_app_bus_acquired_cb_gbus_acquired_callback, identity_manager_app_ref (self), identity_manager_app_unref)), (GClosure*) ((___lambda9__gbus_name_acquired_callback == NULL) ? NULL : g_cclosure_new ((GCallback) ___lambda9__gbus_name_acquired_callback, identity_manager_app_ref (self), identity_manager_app_unref)), (GClosure*) ((___lambda10__gbus_name_lost_callback == NULL) ? NULL : g_cclosure_new ((GCallback) ___lambda10__gbus_name_lost_callback, identity_manager_app_ref (self), identity_manager_app_unref)));
-#line 2094 "moonshot-identity-manager-app.c"
+	g_bus_own_name_with_closures (G_BUS_TYPE_SESSION, "org.janet.Moonshot", G_BUS_NAME_OWNER_FLAGS_NONE, (GClosure*) ((_identity_manager_app_bus_acquired_cb_gbus_acquired_callback == NULL) ? NULL : g_cclosure_new ((GCallback) _identity_manager_app_bus_acquired_cb_gbus_acquired_callback, identity_manager_app_ref (self), identity_manager_app_unref)), (GClosure*) ((___lambda10__gbus_name_acquired_callback == NULL) ? NULL : g_cclosure_new ((GCallback) ___lambda10__gbus_name_acquired_callback, identity_manager_app_ref (self), identity_manager_app_unref)), (GClosure*) ((___lambda11__gbus_name_lost_callback == NULL) ? NULL : g_cclosure_new ((GCallback) ___lambda11__gbus_name_lost_callback, identity_manager_app_ref (self), identity_manager_app_unref)));
+#line 2095 "moonshot-identity-manager-app.c"
 }
 
 
 static void value_identity_manager_app_init (GValue* value) {
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	value->data[0].v_pointer = NULL;
-#line 2101 "moonshot-identity-manager-app.c"
+#line 2102 "moonshot-identity-manager-app.c"
 }
 
 
@@ -2108,7 +2109,7 @@ static void value_identity_manager_app_f
 	if (value->data[0].v_pointer) {
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		identity_manager_app_unref (value->data[0].v_pointer);
-#line 2110 "moonshot-identity-manager-app.c"
+#line 2111 "moonshot-identity-manager-app.c"
 	}
 }
 
@@ -2118,11 +2119,11 @@ static void value_identity_manager_app_c
 	if (src_value->data[0].v_pointer) {
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		dest_value->data[0].v_pointer = identity_manager_app_ref (src_value->data[0].v_pointer);
-#line 2120 "moonshot-identity-manager-app.c"
+#line 2121 "moonshot-identity-manager-app.c"
 	} else {
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		dest_value->data[0].v_pointer = NULL;
-#line 2124 "moonshot-identity-manager-app.c"
+#line 2125 "moonshot-identity-manager-app.c"
 	}
 }
 
@@ -2130,37 +2131,37 @@ static void value_identity_manager_app_c
 static gpointer value_identity_manager_app_peek_pointer (const GValue* value) {
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	return value->data[0].v_pointer;
-#line 2132 "moonshot-identity-manager-app.c"
+#line 2133 "moonshot-identity-manager-app.c"
 }
 
 
 static gchar* value_identity_manager_app_collect_value (GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) {
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	if (collect_values[0].v_pointer) {
-#line 2139 "moonshot-identity-manager-app.c"
+#line 2140 "moonshot-identity-manager-app.c"
 		IdentityManagerApp* object;
 		object = collect_values[0].v_pointer;
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		if (object->parent_instance.g_class == NULL) {
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL);
-#line 2146 "moonshot-identity-manager-app.c"
+#line 2147 "moonshot-identity-manager-app.c"
 		} else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) {
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.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 2150 "moonshot-identity-manager-app.c"
+#line 2151 "moonshot-identity-manager-app.c"
 		}
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		value->data[0].v_pointer = identity_manager_app_ref (object);
-#line 2154 "moonshot-identity-manager-app.c"
+#line 2155 "moonshot-identity-manager-app.c"
 	} else {
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		value->data[0].v_pointer = NULL;
-#line 2158 "moonshot-identity-manager-app.c"
+#line 2159 "moonshot-identity-manager-app.c"
 	}
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	return NULL;
-#line 2162 "moonshot-identity-manager-app.c"
+#line 2163 "moonshot-identity-manager-app.c"
 }
 
 
@@ -2171,25 +2172,25 @@ static gchar* value_identity_manager_app
 	if (!object_p) {
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value));
-#line 2173 "moonshot-identity-manager-app.c"
+#line 2174 "moonshot-identity-manager-app.c"
 	}
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	if (!value->data[0].v_pointer) {
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		*object_p = NULL;
-#line 2179 "moonshot-identity-manager-app.c"
+#line 2180 "moonshot-identity-manager-app.c"
 	} else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) {
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		*object_p = value->data[0].v_pointer;
-#line 2183 "moonshot-identity-manager-app.c"
+#line 2184 "moonshot-identity-manager-app.c"
 	} else {
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		*object_p = identity_manager_app_ref (value->data[0].v_pointer);
-#line 2187 "moonshot-identity-manager-app.c"
+#line 2188 "moonshot-identity-manager-app.c"
 	}
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	return NULL;
-#line 2191 "moonshot-identity-manager-app.c"
+#line 2192 "moonshot-identity-manager-app.c"
 }
 
 
@@ -2203,7 +2204,7 @@ GParamSpec* param_spec_identity_manager_
 	G_PARAM_SPEC (spec)->value_type = object_type;
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	return G_PARAM_SPEC (spec);
-#line 2205 "moonshot-identity-manager-app.c"
+#line 2206 "moonshot-identity-manager-app.c"
 }
 
 
@@ -2212,7 +2213,7 @@ gpointer value_get_identity_manager_app
 	g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_IDENTITY_MANAGER_APP), NULL);
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	return value->data[0].v_pointer;
-#line 2214 "moonshot-identity-manager-app.c"
+#line 2215 "moonshot-identity-manager-app.c"
 }
 
 
@@ -2232,17 +2233,17 @@ void value_set_identity_manager_app (GVa
 		value->data[0].v_pointer = v_object;
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		identity_manager_app_ref (value->data[0].v_pointer);
-#line 2234 "moonshot-identity-manager-app.c"
+#line 2235 "moonshot-identity-manager-app.c"
 	} else {
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		value->data[0].v_pointer = NULL;
-#line 2238 "moonshot-identity-manager-app.c"
+#line 2239 "moonshot-identity-manager-app.c"
 	}
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	if (old) {
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		identity_manager_app_unref (old);
-#line 2244 "moonshot-identity-manager-app.c"
+#line 2245 "moonshot-identity-manager-app.c"
 	}
 }
 
@@ -2261,17 +2262,17 @@ void value_take_identity_manager_app (GV
 		g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		value->data[0].v_pointer = v_object;
-#line 2263 "moonshot-identity-manager-app.c"
+#line 2264 "moonshot-identity-manager-app.c"
 	} else {
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		value->data[0].v_pointer = NULL;
-#line 2267 "moonshot-identity-manager-app.c"
+#line 2268 "moonshot-identity-manager-app.c"
 	}
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	if (old) {
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		identity_manager_app_unref (old);
-#line 2273 "moonshot-identity-manager-app.c"
+#line 2274 "moonshot-identity-manager-app.c"
 	}
 }
 
@@ -2280,10 +2281,10 @@ static void identity_manager_app_class_i
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	identity_manager_app_parent_class = g_type_class_peek_parent (klass);
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
-	IDENTITY_MANAGER_APP_CLASS (klass)->finalize = identity_manager_app_finalize;
+	((IdentityManagerAppClass *) klass)->finalize = identity_manager_app_finalize;
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	g_type_class_add_private (klass, sizeof (IdentityManagerAppPrivate));
-#line 2285 "moonshot-identity-manager-app.c"
+#line 2286 "moonshot-identity-manager-app.c"
 }
 
 
@@ -2292,7 +2293,7 @@ static void identity_manager_app_instanc
 	self->priv = IDENTITY_MANAGER_APP_GET_PRIVATE (self);
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	self->ref_count = 1;
-#line 2294 "moonshot-identity-manager-app.c"
+#line 2295 "moonshot-identity-manager-app.c"
 }
 
 
@@ -2300,6 +2301,8 @@ static void identity_manager_app_finaliz
 	IdentityManagerApp * self;
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_IDENTITY_MANAGER_APP, IdentityManagerApp);
+#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+	g_signal_handlers_destroy (self);
 #line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	_g_object_unref0 (self->model);
 #line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
@@ -2308,7 +2311,7 @@ static void identity_manager_app_finaliz
 	_g_object_unref0 (self->view);
 #line 51 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	_g_object_unref0 (self->priv->ipc_server);
-#line 2310 "moonshot-identity-manager-app.c"
+#line 2313 "moonshot-identity-manager-app.c"
 }
 
 
@@ -2333,7 +2336,7 @@ gpointer identity_manager_app_ref (gpoin
 	g_atomic_int_inc (&self->ref_count);
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	return instance;
-#line 2335 "moonshot-identity-manager-app.c"
+#line 2338 "moonshot-identity-manager-app.c"
 }
 
 
@@ -2346,7 +2349,7 @@ void identity_manager_app_unref (gpointe
 		IDENTITY_MANAGER_APP_GET_CLASS (self)->finalize (self);
 #line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		g_type_free_instance ((GTypeInstance *) self);
-#line 2348 "moonshot-identity-manager-app.c"
+#line 2351 "moonshot-identity-manager-app.c"
 	}
 }
 
@@ -2374,7 +2377,7 @@ gint _vala_main (gchar** args, int args_
 	_tmp1_ = headless;
 #line 364 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	if (_tmp1_) {
-#line 2376 "moonshot-identity-manager-app.c"
+#line 2379 "moonshot-identity-manager-app.c"
 		{
 			GOptionContext* opt_context = NULL;
 			GOptionContext* _tmp2_ = NULL;
@@ -2398,12 +2401,12 @@ gint _vala_main (gchar** args, int args_
 #line 369 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			g_option_context_parse (_tmp5_, &args_length1, &args, &_inner_error_);
 #line 369 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
-			if (_inner_error_ != NULL) {
+			if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 369 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 				_g_option_context_free0 (opt_context);
 #line 369 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 				if (_inner_error_->domain == G_OPTION_ERROR) {
-#line 2405 "moonshot-identity-manager-app.c"
+#line 2408 "moonshot-identity-manager-app.c"
 					goto __catch2_g_option_error;
 				}
 #line 369 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
@@ -2414,11 +2417,11 @@ gint _vala_main (gchar** args, int args_
 				g_clear_error (&_inner_error_);
 #line 369 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 				return 0;
-#line 2416 "moonshot-identity-manager-app.c"
+#line 2419 "moonshot-identity-manager-app.c"
 			}
 #line 365 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			_g_option_context_free0 (opt_context);
-#line 2420 "moonshot-identity-manager-app.c"
+#line 2423 "moonshot-identity-manager-app.c"
 		}
 		goto __finally2;
 		__catch2_g_option_error:
@@ -2465,22 +2468,22 @@ gint _vala_main (gchar** args, int args_
 			_g_error_free0 (e);
 #line 373 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			return result;
-#line 2467 "moonshot-identity-manager-app.c"
+#line 2470 "moonshot-identity-manager-app.c"
 		}
 		__finally2:
 #line 365 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
-		if (_inner_error_ != NULL) {
+		if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 365 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
 #line 365 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			g_clear_error (&_inner_error_);
 #line 365 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			return 0;
-#line 2478 "moonshot-identity-manager-app.c"
+#line 2481 "moonshot-identity-manager-app.c"
 		}
 #line 375 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		explicitly_launched = FALSE;
-#line 2482 "moonshot-identity-manager-app.c"
+#line 2485 "moonshot-identity-manager-app.c"
 	} else {
 		{
 			gboolean _tmp14_ = FALSE;
@@ -2493,13 +2496,13 @@ gint _vala_main (gchar** args, int args_
 #line 378 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			_tmp14_ = _tmp16_;
 #line 378 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
-			if (_inner_error_ != NULL) {
-#line 2496 "moonshot-identity-manager-app.c"
+			if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 2499 "moonshot-identity-manager-app.c"
 				goto __catch3_g_error;
 			}
 #line 378 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			if (!_tmp14_) {
-#line 2501 "moonshot-identity-manager-app.c"
+#line 2504 "moonshot-identity-manager-app.c"
 				FILE* _tmp17_ = NULL;
 				const gchar* _tmp18_ = NULL;
 #line 379 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
@@ -2512,7 +2515,7 @@ gint _vala_main (gchar** args, int args_
 				result = -1;
 #line 380 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 				return result;
-#line 2514 "moonshot-identity-manager-app.c"
+#line 2517 "moonshot-identity-manager-app.c"
 			}
 		}
 		goto __finally3;
@@ -2560,22 +2563,22 @@ gint _vala_main (gchar** args, int args_
 			_g_error_free0 (e);
 #line 385 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			return result;
-#line 2562 "moonshot-identity-manager-app.c"
+#line 2565 "moonshot-identity-manager-app.c"
 		}
 		__finally3:
 #line 377 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
-		if (_inner_error_ != NULL) {
+		if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 377 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
 #line 377 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			g_clear_error (&_inner_error_);
 #line 377 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 			return 0;
-#line 2573 "moonshot-identity-manager-app.c"
+#line 2576 "moonshot-identity-manager-app.c"
 		}
 #line 387 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		gtk_available = TRUE;
-#line 2577 "moonshot-identity-manager-app.c"
+#line 2580 "moonshot-identity-manager-app.c"
 	}
 #line 397 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	bindtextdomain (GETTEXT_PACKAGE, LOCALEDIR);
@@ -2603,19 +2606,19 @@ gint _vala_main (gchar** args, int args_
 	_tmp33_ = _tmp32_->explicitly_launched;
 #line 405 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	if (_tmp33_) {
-#line 2605 "moonshot-identity-manager-app.c"
+#line 2608 "moonshot-identity-manager-app.c"
 		IdentityManagerApp* _tmp34_ = NULL;
 #line 406 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_tmp34_ = app;
 #line 406 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		identity_manager_app_show (_tmp34_);
-#line 2611 "moonshot-identity-manager-app.c"
+#line 2614 "moonshot-identity-manager-app.c"
 	}
 #line 409 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	_tmp35_ = headless;
 #line 409 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	if (_tmp35_) {
-#line 2617 "moonshot-identity-manager-app.c"
+#line 2620 "moonshot-identity-manager-app.c"
 		GMainLoop* loop = NULL;
 		GMainLoop* _tmp36_ = NULL;
 		GMainLoop* _tmp37_ = NULL;
@@ -2629,11 +2632,11 @@ gint _vala_main (gchar** args, int args_
 		g_main_loop_run (_tmp37_);
 #line 409 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		_g_main_loop_unref0 (loop);
-#line 2631 "moonshot-identity-manager-app.c"
+#line 2634 "moonshot-identity-manager-app.c"
 	} else {
 #line 415 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 		gtk_main ();
-#line 2635 "moonshot-identity-manager-app.c"
+#line 2638 "moonshot-identity-manager-app.c"
 	}
 #line 418 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	result = 0;
@@ -2641,7 +2644,7 @@ gint _vala_main (gchar** args, int args_
 	_identity_manager_app_unref0 (app);
 #line 418 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	return result;
-#line 2643 "moonshot-identity-manager-app.c"
+#line 2646 "moonshot-identity-manager-app.c"
 }
 
 
@@ -2651,7 +2654,7 @@ int main (int argc, char ** argv) {
 #endif
 #line 357 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
 	return _vala_main (argv, argc);
-#line 2653 "moonshot-identity-manager-app.c"
+#line 2656 "moonshot-identity-manager-app.c"
 }
 
 
--- moonshot-ui-0.7.1.orig/src/moonshot-identity-request.c
+++ moonshot-ui-0.7.1/src/moonshot-identity-request.c
@@ -1,4 +1,4 @@
-/* moonshot-identity-request.c generated by valac 0.24.0, the Vala compiler
+/* moonshot-identity-request.c generated by valac 0.26.1, the Vala compiler
  * generated from moonshot-identity-request.vala, do not modify */
 
 /*
--- moonshot-ui-0.7.1.orig/src/moonshot-keyring-store.c
+++ moonshot-ui-0.7.1/src/moonshot-keyring-store.c
@@ -1,4 +1,4 @@
-/* moonshot-keyring-store.c generated by valac 0.24.0, the Vala compiler
+/* moonshot-keyring-store.c generated by valac 0.26.1, the Vala compiler
  * generated from moonshot-keyring-store.vala, do not modify */
 
 /*
@@ -171,7 +171,9 @@ void id_card_set_store_password (IdCard*
 gboolean id_card_get_store_password (IdCard* self);
 void id_card_set_password (IdCard* self, const gchar* value);
 Rule* id_card_get_rules (IdCard* self, int* result_length1);
+static Rule* _vala_array_dup3 (Rule* self, int length);
 gchar** id_card_get_services (IdCard* self, int* result_length1);
+static gchar** _vala_array_dup4 (gchar** self, int length);
 const gchar* id_card_get_issuer (IdCard* self);
 const gchar* id_card_get_username (IdCard* self);
 const gchar* trust_anchor_get_ca_cert (TrustAnchor* self);
@@ -203,14 +205,14 @@ static void keyring_store_real_add_card
 	gee_abstract_collection_add ((GeeAbstractCollection*) _tmp0_, _tmp1_);
 #line 43 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 	keyring_store_store_id_cards (self);
-#line 207 "moonshot-keyring-store.c"
+#line 209 "moonshot-keyring-store.c"
 }
 
 
 static gpointer _g_object_ref0 (gpointer self) {
 #line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 	return self ? g_object_ref (self) : NULL;
-#line 214 "moonshot-keyring-store.c"
+#line 216 "moonshot-keyring-store.c"
 }
 
 
@@ -239,7 +241,7 @@ static IdCard* keyring_store_real_update
 	gee_abstract_collection_add ((GeeAbstractCollection*) _tmp2_, _tmp3_);
 #line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 	keyring_store_store_id_cards (self);
-#line 243 "moonshot-keyring-store.c"
+#line 245 "moonshot-keyring-store.c"
 	{
 		GeeLinkedList* _idcard_list = NULL;
 		GeeLinkedList* _tmp4_ = NULL;
@@ -267,7 +269,7 @@ static IdCard* keyring_store_real_update
 		_idcard_index = -1;
 #line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 		while (TRUE) {
-#line 271 "moonshot-keyring-store.c"
+#line 273 "moonshot-keyring-store.c"
 			gint _tmp9_ = 0;
 			gint _tmp10_ = 0;
 			gint _tmp11_ = 0;
@@ -293,7 +295,7 @@ static IdCard* keyring_store_real_update
 			if (!(_tmp10_ < _tmp11_)) {
 #line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 				break;
-#line 297 "moonshot-keyring-store.c"
+#line 299 "moonshot-keyring-store.c"
 			}
 #line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 			_tmp12_ = _idcard_list;
@@ -323,21 +325,21 @@ static IdCard* keyring_store_real_update
 				_g_object_unref0 (_idcard_list);
 #line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 				return result;
-#line 327 "moonshot-keyring-store.c"
+#line 329 "moonshot-keyring-store.c"
 			}
 #line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 			_g_object_unref0 (idcard);
-#line 331 "moonshot-keyring-store.c"
+#line 333 "moonshot-keyring-store.c"
 		}
 #line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 		_g_object_unref0 (_idcard_list);
-#line 335 "moonshot-keyring-store.c"
+#line 337 "moonshot-keyring-store.c"
 	}
 #line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 	result = NULL;
 #line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 	return result;
-#line 341 "moonshot-keyring-store.c"
+#line 343 "moonshot-keyring-store.c"
 }
 
 
@@ -367,13 +369,13 @@ static gboolean keyring_store_real_remov
 	if (_tmp3_) {
 #line 59 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 		keyring_store_store_id_cards (self);
-#line 371 "moonshot-keyring-store.c"
+#line 373 "moonshot-keyring-store.c"
 	}
 #line 60 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 	result = retval;
 #line 60 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 	return result;
-#line 377 "moonshot-keyring-store.c"
+#line 379 "moonshot-keyring-store.c"
 }
 
 
@@ -386,7 +388,7 @@ static IIdentityCardStoreStoreType keyri
 	result = IIDENTITY_CARD_STORE_STORE_TYPE_KEYRING;
 #line 64 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 	return result;
-#line 390 "moonshot-keyring-store.c"
+#line 392 "moonshot-keyring-store.c"
 }
 
 
@@ -405,14 +407,14 @@ static GeeLinkedList* keyring_store_real
 	result = _tmp1_;
 #line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 	return result;
-#line 409 "moonshot-keyring-store.c"
+#line 411 "moonshot-keyring-store.c"
 }
 
 
 static void _gnome_keyring_found_free0_ (gpointer var) {
 #line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 	(var == NULL) ? NULL : (var = (gnome_keyring_found_free (var), NULL));
-#line 416 "moonshot-keyring-store.c"
+#line 418 "moonshot-keyring-store.c"
 }
 
 
@@ -421,7 +423,7 @@ static void _g_list_free__gnome_keyring_
 	g_list_foreach (self, (GFunc) _gnome_keyring_found_free0_, NULL);
 #line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 	g_list_free (self);
-#line 425 "moonshot-keyring-store.c"
+#line 427 "moonshot-keyring-store.c"
 }
 
 
@@ -453,7 +455,7 @@ static void keyring_store_clear_keyring
 	items = _tmp3_;
 #line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 	_tmp4_ = items;
-#line 457 "moonshot-keyring-store.c"
+#line 459 "moonshot-keyring-store.c"
 	{
 		GList* entry_collection = NULL;
 		GList* entry_it = NULL;
@@ -461,11 +463,11 @@ static void keyring_store_clear_keyring
 		entry_collection = _tmp4_;
 #line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 		for (entry_it = entry_collection; entry_it != NULL; entry_it = entry_it->next) {
-#line 465 "moonshot-keyring-store.c"
+#line 467 "moonshot-keyring-store.c"
 			GnomeKeyringFound* entry = NULL;
 #line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 			entry = (GnomeKeyringFound*) entry_it->data;
-#line 469 "moonshot-keyring-store.c"
+#line 471 "moonshot-keyring-store.c"
 			{
 				GnomeKeyringResult _result_ = 0;
 				GnomeKeyringFound* _tmp5_ = NULL;
@@ -484,7 +486,7 @@ static void keyring_store_clear_keyring
 				_tmp8_ = _result_;
 #line 79 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 				if (_tmp8_ != GNOME_KEYRING_RESULT_OK) {
-#line 488 "moonshot-keyring-store.c"
+#line 490 "moonshot-keyring-store.c"
 					FILE* _tmp9_ = NULL;
 					GnomeKeyringResult _tmp10_ = 0;
 #line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
@@ -493,7 +495,7 @@ static void keyring_store_clear_keyring
 					_tmp10_ = _result_;
 #line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 					fprintf (_tmp9_, "GnomeKeyring.item_delete_sync() failed. result: %d", (gint) _tmp10_);
-#line 497 "moonshot-keyring-store.c"
+#line 499 "moonshot-keyring-store.c"
 				}
 			}
 		}
@@ -502,25 +504,48 @@ static void keyring_store_clear_keyring
 	__g_list_free__gnome_keyring_found_free0_0 (items);
 #line 72 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 	_gnome_keyring_attribute_list_free0 (match);
-#line 506 "moonshot-keyring-store.c"
+#line 508 "moonshot-keyring-store.c"
+}
+
+
+static gchar* string_strip (const gchar* self) {
+	gchar* result = NULL;
+	gchar* _result_ = NULL;
+	gchar* _tmp0_ = NULL;
+	const gchar* _tmp1_ = NULL;
+#line 1115 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
+	g_return_val_if_fail (self != NULL, NULL);
+#line 1116 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
+	_tmp0_ = g_strdup (self);
+#line 1116 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
+	_result_ = _tmp0_;
+#line 1117 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
+	_tmp1_ = _result_;
+#line 1117 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
+	g_strstrip (_tmp1_);
+#line 1118 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
+	result = _result_;
+#line 1118 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
+	return result;
+#line 531 "moonshot-keyring-store.c"
 }
 
 
 static void _vala_Rule_array_free (Rule* array, gint array_length) {
 #line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 	if (array != NULL) {
-#line 513 "moonshot-keyring-store.c"
+#line 538 "moonshot-keyring-store.c"
 		int i;
 #line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 		for (i = 0; i < array_length; i = i + 1) {
 #line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 			rule_destroy (&array[i]);
-#line 519 "moonshot-keyring-store.c"
+#line 544 "moonshot-keyring-store.c"
 		}
 	}
 #line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 	g_free (array);
-#line 524 "moonshot-keyring-store.c"
+#line 549 "moonshot-keyring-store.c"
 }
 
 
@@ -557,7 +582,7 @@ static void keyring_store_load_id_cards
 	items = _tmp4_;
 #line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 	_tmp5_ = items;
-#line 561 "moonshot-keyring-store.c"
+#line 586 "moonshot-keyring-store.c"
 	{
 		GList* entry_collection = NULL;
 		GList* entry_it = NULL;
@@ -565,11 +590,11 @@ static void keyring_store_load_id_cards
 		entry_collection = _tmp5_;
 #line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 		for (entry_it = entry_collection; entry_it != NULL; entry_it = entry_it->next) {
-#line 569 "moonshot-keyring-store.c"
+#line 594 "moonshot-keyring-store.c"
 			GnomeKeyringFound* entry = NULL;
 #line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 			entry = (GnomeKeyringFound*) entry_it->data;
-#line 573 "moonshot-keyring-store.c"
+#line 598 "moonshot-keyring-store.c"
 			{
 				IdCard* id_card = NULL;
 				IdCard* _tmp6_ = NULL;
@@ -577,14 +602,14 @@ static void keyring_store_load_id_cards
 				gint rules_patterns_index = 0;
 				gint rules_always_confirm_index = 0;
 				gchar* store_password = NULL;
-				gboolean _tmp74_ = FALSE;
-				gint _tmp75_ = 0;
-				const gchar* _tmp119_ = NULL;
-				IdCard* _tmp128_ = NULL;
-				gboolean _tmp129_ = FALSE;
-				gboolean _tmp130_ = FALSE;
-				GeeLinkedList* _tmp135_ = NULL;
-				IdCard* _tmp136_ = NULL;
+				gboolean _tmp76_ = FALSE;
+				gint _tmp77_ = 0;
+				const gchar* _tmp121_ = NULL;
+				IdCard* _tmp130_ = NULL;
+				gboolean _tmp131_ = FALSE;
+				gboolean _tmp132_ = FALSE;
+				GeeLinkedList* _tmp137_ = NULL;
+				IdCard* _tmp138_ = NULL;
 #line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 				_tmp6_ = id_card_new ();
 #line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
@@ -595,7 +620,7 @@ static void keyring_store_load_id_cards
 				rules_always_confirm_index = -1;
 #line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 				store_password = NULL;
-#line 599 "moonshot-keyring-store.c"
+#line 624 "moonshot-keyring-store.c"
 				{
 					gboolean _tmp7_ = FALSE;
 #line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
@@ -604,7 +629,7 @@ static void keyring_store_load_id_cards
 					_tmp7_ = TRUE;
 #line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 					while (TRUE) {
-#line 608 "moonshot-keyring-store.c"
+#line 633 "moonshot-keyring-store.c"
 						gint _tmp9_ = 0;
 						GnomeKeyringFound* _tmp10_ = NULL;
 						GnomeKeyringAttributeList* _tmp11_ = NULL;
@@ -624,13 +649,13 @@ static void keyring_store_load_id_cards
 						const gchar* _tmp22_ = NULL;
 #line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 						if (!_tmp7_) {
-#line 628 "moonshot-keyring-store.c"
+#line 653 "moonshot-keyring-store.c"
 							gint _tmp8_ = 0;
 #line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 							_tmp8_ = i;
 #line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 							i = _tmp8_ + 1;
-#line 634 "moonshot-keyring-store.c"
+#line 659 "moonshot-keyring-store.c"
 						}
 #line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 						_tmp7_ = FALSE;
@@ -646,7 +671,7 @@ static void keyring_store_load_id_cards
 						if (!(((guint) _tmp9_) < _tmp12_)) {
 #line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 							break;
-#line 650 "moonshot-keyring-store.c"
+#line 675 "moonshot-keyring-store.c"
 						}
 #line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 						_tmp13_ = entry;
@@ -676,7 +701,7 @@ static void keyring_store_load_id_cards
 						_tmp22_ = _tmp21_.name;
 #line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 						if (g_strcmp0 (_tmp22_, "Issuer") == 0) {
-#line 680 "moonshot-keyring-store.c"
+#line 705 "moonshot-keyring-store.c"
 							IdCard* _tmp23_ = NULL;
 							const gchar* _tmp24_ = NULL;
 #line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
@@ -685,7 +710,7 @@ static void keyring_store_load_id_cards
 							_tmp24_ = value;
 #line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 							id_card_set_issuer (_tmp23_, _tmp24_);
-#line 689 "moonshot-keyring-store.c"
+#line 714 "moonshot-keyring-store.c"
 						} else {
 							GnomeKeyringAttribute _tmp25_ = {0};
 							const gchar* _tmp26_ = NULL;
@@ -695,7 +720,7 @@ static void keyring_store_load_id_cards
 							_tmp26_ = _tmp25_.name;
 #line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 							if (g_strcmp0 (_tmp26_, "Username") == 0) {
-#line 699 "moonshot-keyring-store.c"
+#line 724 "moonshot-keyring-store.c"
 								IdCard* _tmp27_ = NULL;
 								const gchar* _tmp28_ = NULL;
 #line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
@@ -704,7 +729,7 @@ static void keyring_store_load_id_cards
 								_tmp28_ = value;
 #line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 								id_card_set_username (_tmp27_, _tmp28_);
-#line 708 "moonshot-keyring-store.c"
+#line 733 "moonshot-keyring-store.c"
 							} else {
 								GnomeKeyringAttribute _tmp29_ = {0};
 								const gchar* _tmp30_ = NULL;
@@ -714,7 +739,7 @@ static void keyring_store_load_id_cards
 								_tmp30_ = _tmp29_.name;
 #line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 								if (g_strcmp0 (_tmp30_, "DisplayName") == 0) {
-#line 718 "moonshot-keyring-store.c"
+#line 743 "moonshot-keyring-store.c"
 									IdCard* _tmp31_ = NULL;
 									const gchar* _tmp32_ = NULL;
 #line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
@@ -723,7 +748,7 @@ static void keyring_store_load_id_cards
 									_tmp32_ = value;
 #line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 									id_card_set_display_name (_tmp31_, _tmp32_);
-#line 727 "moonshot-keyring-store.c"
+#line 752 "moonshot-keyring-store.c"
 								} else {
 									GnomeKeyringAttribute _tmp33_ = {0};
 									const gchar* _tmp34_ = NULL;
@@ -733,7 +758,7 @@ static void keyring_store_load_id_cards
 									_tmp34_ = _tmp33_.name;
 #line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 									if (g_strcmp0 (_tmp34_, "Services") == 0) {
-#line 737 "moonshot-keyring-store.c"
+#line 762 "moonshot-keyring-store.c"
 										IdCard* _tmp35_ = NULL;
 										const gchar* _tmp36_ = NULL;
 										gchar** _tmp37_ = NULL;
@@ -754,7 +779,7 @@ static void keyring_store_load_id_cards
 										id_card_set_services (_tmp35_, _tmp39_, _vala_array_length (_tmp37_));
 #line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 										_tmp39_ = (_vala_array_free (_tmp39_, _tmp39__length1, (GDestroyNotify) g_free), NULL);
-#line 758 "moonshot-keyring-store.c"
+#line 783 "moonshot-keyring-store.c"
 									} else {
 										GnomeKeyringAttribute _tmp40_ = {0};
 										const gchar* _tmp41_ = NULL;
@@ -764,13 +789,13 @@ static void keyring_store_load_id_cards
 										_tmp41_ = _tmp40_.name;
 #line 109 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 										if (g_strcmp0 (_tmp41_, "Rules-Pattern") == 0) {
-#line 768 "moonshot-keyring-store.c"
+#line 793 "moonshot-keyring-store.c"
 											gint _tmp42_ = 0;
 #line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 											_tmp42_ = i;
 #line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 											rules_patterns_index = _tmp42_;
-#line 774 "moonshot-keyring-store.c"
+#line 799 "moonshot-keyring-store.c"
 										} else {
 											GnomeKeyringAttribute _tmp43_ = {0};
 											const gchar* _tmp44_ = NULL;
@@ -780,13 +805,13 @@ static void keyring_store_load_id_cards
 											_tmp44_ = _tmp43_.name;
 #line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 											if (g_strcmp0 (_tmp44_, "Rules-AlwaysConfirm") == 0) {
-#line 784 "moonshot-keyring-store.c"
+#line 809 "moonshot-keyring-store.c"
 												gint _tmp45_ = 0;
 #line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 												_tmp45_ = i;
 #line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 												rules_always_confirm_index = _tmp45_;
-#line 790 "moonshot-keyring-store.c"
+#line 815 "moonshot-keyring-store.c"
 											} else {
 												GnomeKeyringAttribute _tmp46_ = {0};
 												const gchar* _tmp47_ = NULL;
@@ -796,11 +821,13 @@ static void keyring_store_load_id_cards
 												_tmp47_ = _tmp46_.name;
 #line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 												if (g_strcmp0 (_tmp47_, "CA-Cert") == 0) {
-#line 800 "moonshot-keyring-store.c"
+#line 825 "moonshot-keyring-store.c"
 													IdCard* _tmp48_ = NULL;
 													TrustAnchor* _tmp49_ = NULL;
 													TrustAnchor* _tmp50_ = NULL;
 													const gchar* _tmp51_ = NULL;
+													gchar* _tmp52_ = NULL;
+													gchar* _tmp53_ = NULL;
 #line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 													_tmp48_ = id_card;
 #line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
@@ -810,104 +837,110 @@ static void keyring_store_load_id_cards
 #line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 													_tmp51_ = value;
 #line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-													trust_anchor_set_ca_cert (_tmp50_, _tmp51_);
-#line 815 "moonshot-keyring-store.c"
+													_tmp52_ = string_strip (_tmp51_);
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+													_tmp53_ = _tmp52_;
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+													trust_anchor_set_ca_cert (_tmp50_, _tmp53_);
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+													_g_free0 (_tmp53_);
+#line 848 "moonshot-keyring-store.c"
 												} else {
-													GnomeKeyringAttribute _tmp52_ = {0};
-													const gchar* _tmp53_ = NULL;
+													GnomeKeyringAttribute _tmp54_ = {0};
+													const gchar* _tmp55_ = NULL;
 #line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-													_tmp52_ = attribute;
+													_tmp54_ = attribute;
 #line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-													_tmp53_ = _tmp52_.name;
+													_tmp55_ = _tmp54_.name;
 #line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-													if (g_strcmp0 (_tmp53_, "Server-Cert") == 0) {
-#line 825 "moonshot-keyring-store.c"
-														IdCard* _tmp54_ = NULL;
-														TrustAnchor* _tmp55_ = NULL;
-														TrustAnchor* _tmp56_ = NULL;
-														const gchar* _tmp57_ = NULL;
+													if (g_strcmp0 (_tmp55_, "Server-Cert") == 0) {
+#line 858 "moonshot-keyring-store.c"
+														IdCard* _tmp56_ = NULL;
+														TrustAnchor* _tmp57_ = NULL;
+														TrustAnchor* _tmp58_ = NULL;
+														const gchar* _tmp59_ = NULL;
 #line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-														_tmp54_ = id_card;
+														_tmp56_ = id_card;
 #line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-														_tmp55_ = id_card_get_trust_anchor (_tmp54_);
+														_tmp57_ = id_card_get_trust_anchor (_tmp56_);
 #line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-														_tmp56_ = _tmp55_;
+														_tmp58_ = _tmp57_;
 #line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-														_tmp57_ = value;
+														_tmp59_ = value;
 #line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-														trust_anchor_set_server_cert (_tmp56_, _tmp57_);
-#line 840 "moonshot-keyring-store.c"
+														trust_anchor_set_server_cert (_tmp58_, _tmp59_);
+#line 873 "moonshot-keyring-store.c"
 													} else {
-														GnomeKeyringAttribute _tmp58_ = {0};
-														const gchar* _tmp59_ = NULL;
+														GnomeKeyringAttribute _tmp60_ = {0};
+														const gchar* _tmp61_ = NULL;
 #line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-														_tmp58_ = attribute;
+														_tmp60_ = attribute;
 #line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-														_tmp59_ = _tmp58_.name;
+														_tmp61_ = _tmp60_.name;
 #line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-														if (g_strcmp0 (_tmp59_, "Subject") == 0) {
-#line 850 "moonshot-keyring-store.c"
-															IdCard* _tmp60_ = NULL;
-															TrustAnchor* _tmp61_ = NULL;
-															TrustAnchor* _tmp62_ = NULL;
-															const gchar* _tmp63_ = NULL;
+														if (g_strcmp0 (_tmp61_, "Subject") == 0) {
+#line 883 "moonshot-keyring-store.c"
+															IdCard* _tmp62_ = NULL;
+															TrustAnchor* _tmp63_ = NULL;
+															TrustAnchor* _tmp64_ = NULL;
+															const gchar* _tmp65_ = NULL;
 #line 118 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-															_tmp60_ = id_card;
+															_tmp62_ = id_card;
 #line 118 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-															_tmp61_ = id_card_get_trust_anchor (_tmp60_);
+															_tmp63_ = id_card_get_trust_anchor (_tmp62_);
 #line 118 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-															_tmp62_ = _tmp61_;
+															_tmp64_ = _tmp63_;
 #line 118 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-															_tmp63_ = value;
+															_tmp65_ = value;
 #line 118 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-															trust_anchor_set_subject (_tmp62_, _tmp63_);
-#line 865 "moonshot-keyring-store.c"
+															trust_anchor_set_subject (_tmp64_, _tmp65_);
+#line 898 "moonshot-keyring-store.c"
 														} else {
-															GnomeKeyringAttribute _tmp64_ = {0};
-															const gchar* _tmp65_ = NULL;
+															GnomeKeyringAttribute _tmp66_ = {0};
+															const gchar* _tmp67_ = NULL;
 #line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-															_tmp64_ = attribute;
+															_tmp66_ = attribute;
 #line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-															_tmp65_ = _tmp64_.name;
+															_tmp67_ = _tmp66_.name;
 #line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-															if (g_strcmp0 (_tmp65_, "Subject-Alt") == 0) {
-#line 875 "moonshot-keyring-store.c"
-																IdCard* _tmp66_ = NULL;
-																TrustAnchor* _tmp67_ = NULL;
-																TrustAnchor* _tmp68_ = NULL;
-																const gchar* _tmp69_ = NULL;
+															if (g_strcmp0 (_tmp67_, "Subject-Alt") == 0) {
+#line 908 "moonshot-keyring-store.c"
+																IdCard* _tmp68_ = NULL;
+																TrustAnchor* _tmp69_ = NULL;
+																TrustAnchor* _tmp70_ = NULL;
+																const gchar* _tmp71_ = NULL;
 #line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-																_tmp66_ = id_card;
+																_tmp68_ = id_card;
 #line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-																_tmp67_ = id_card_get_trust_anchor (_tmp66_);
+																_tmp69_ = id_card_get_trust_anchor (_tmp68_);
 #line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-																_tmp68_ = _tmp67_;
+																_tmp70_ = _tmp69_;
 #line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-																_tmp69_ = value;
+																_tmp71_ = value;
 #line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-																trust_anchor_set_subject_alt (_tmp68_, _tmp69_);
-#line 890 "moonshot-keyring-store.c"
+																trust_anchor_set_subject_alt (_tmp70_, _tmp71_);
+#line 923 "moonshot-keyring-store.c"
 															} else {
-																GnomeKeyringAttribute _tmp70_ = {0};
-																const gchar* _tmp71_ = NULL;
+																GnomeKeyringAttribute _tmp72_ = {0};
+																const gchar* _tmp73_ = NULL;
 #line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-																_tmp70_ = attribute;
+																_tmp72_ = attribute;
 #line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-																_tmp71_ = _tmp70_.name;
+																_tmp73_ = _tmp72_.name;
 #line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-																if (g_strcmp0 (_tmp71_, "StorePassword") == 0) {
-#line 900 "moonshot-keyring-store.c"
-																	const gchar* _tmp72_ = NULL;
-																	gchar* _tmp73_ = NULL;
+																if (g_strcmp0 (_tmp73_, "StorePassword") == 0) {
+#line 933 "moonshot-keyring-store.c"
+																	const gchar* _tmp74_ = NULL;
+																	gchar* _tmp75_ = NULL;
 #line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-																	_tmp72_ = value;
+																	_tmp74_ = value;
 #line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-																	_tmp73_ = g_strdup (_tmp72_);
+																	_tmp75_ = g_strdup (_tmp74_);
 #line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 																	_g_free0 (store_password);
 #line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-																	store_password = _tmp73_;
-#line 911 "moonshot-keyring-store.c"
+																	store_password = _tmp75_;
+#line 944 "moonshot-keyring-store.c"
 																}
 															}
 														}
@@ -921,261 +954,261 @@ static void keyring_store_load_id_cards
 						}
 #line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 						_g_free0 (value);
-#line 925 "moonshot-keyring-store.c"
+#line 958 "moonshot-keyring-store.c"
 					}
 				}
 #line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-				_tmp75_ = rules_always_confirm_index;
+				_tmp77_ = rules_always_confirm_index;
 #line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-				if (_tmp75_ != (-1)) {
-#line 932 "moonshot-keyring-store.c"
-					gint _tmp76_ = 0;
+				if (_tmp77_ != (-1)) {
+#line 965 "moonshot-keyring-store.c"
+					gint _tmp78_ = 0;
 #line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp76_ = rules_patterns_index;
+					_tmp78_ = rules_patterns_index;
 #line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp74_ = _tmp76_ != (-1);
-#line 938 "moonshot-keyring-store.c"
+					_tmp76_ = _tmp78_ != (-1);
+#line 971 "moonshot-keyring-store.c"
 				} else {
 #line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp74_ = FALSE;
-#line 942 "moonshot-keyring-store.c"
+					_tmp76_ = FALSE;
+#line 975 "moonshot-keyring-store.c"
 				}
 #line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-				if (_tmp74_) {
-#line 946 "moonshot-keyring-store.c"
+				if (_tmp76_) {
+#line 979 "moonshot-keyring-store.c"
 					gchar* rules_patterns_all = NULL;
-					GnomeKeyringFound* _tmp77_ = NULL;
-					GnomeKeyringAttributeList* _tmp78_ = NULL;
-					GnomeKeyringAttribute* _tmp79_ = NULL;
-					gint _tmp79__length1 = 0;
-					gint _tmp80_ = 0;
-					GnomeKeyringAttribute _tmp81_ = {0};
-					const gchar* _tmp82_ = NULL;
-					gchar* _tmp83_ = NULL;
+					GnomeKeyringFound* _tmp79_ = NULL;
+					GnomeKeyringAttributeList* _tmp80_ = NULL;
+					GnomeKeyringAttribute* _tmp81_ = NULL;
+					gint _tmp81__length1 = 0;
+					gint _tmp82_ = 0;
+					GnomeKeyringAttribute _tmp83_ = {0};
+					const gchar* _tmp84_ = NULL;
+					gchar* _tmp85_ = NULL;
 					gchar* rules_always_confirm_all = NULL;
-					GnomeKeyringFound* _tmp84_ = NULL;
-					GnomeKeyringAttributeList* _tmp85_ = NULL;
-					GnomeKeyringAttribute* _tmp86_ = NULL;
-					gint _tmp86__length1 = 0;
-					gint _tmp87_ = 0;
-					GnomeKeyringAttribute _tmp88_ = {0};
-					const gchar* _tmp89_ = NULL;
-					gchar* _tmp90_ = NULL;
-					gchar** rules_always_confirm = NULL;
+					GnomeKeyringFound* _tmp86_ = NULL;
+					GnomeKeyringAttributeList* _tmp87_ = NULL;
+					GnomeKeyringAttribute* _tmp88_ = NULL;
+					gint _tmp88__length1 = 0;
+					gint _tmp89_ = 0;
+					GnomeKeyringAttribute _tmp90_ = {0};
 					const gchar* _tmp91_ = NULL;
-					gchar** _tmp92_ = NULL;
-					gchar** _tmp93_ = NULL;
+					gchar* _tmp92_ = NULL;
+					gchar** rules_always_confirm = NULL;
+					const gchar* _tmp93_ = NULL;
+					gchar** _tmp94_ = NULL;
+					gchar** _tmp95_ = NULL;
 					gint rules_always_confirm_length1 = 0;
 					gint _rules_always_confirm_size_ = 0;
 					gchar** rules_patterns = NULL;
-					const gchar* _tmp94_ = NULL;
-					gchar** _tmp95_ = NULL;
-					gchar** _tmp96_ = NULL;
-					gint rules_patterns_length1 = 0;
-					gint _rules_patterns_size_ = 0;
+					const gchar* _tmp96_ = NULL;
 					gchar** _tmp97_ = NULL;
-					gint _tmp97__length1 = 0;
 					gchar** _tmp98_ = NULL;
-					gint _tmp98__length1 = 0;
+					gint rules_patterns_length1 = 0;
+					gint _rules_patterns_size_ = 0;
+					gchar** _tmp99_ = NULL;
+					gint _tmp99__length1 = 0;
+					gchar** _tmp100_ = NULL;
+					gint _tmp100__length1 = 0;
 #line 126 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp77_ = entry;
+					_tmp79_ = entry;
 #line 126 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp78_ = _tmp77_->attributes;
+					_tmp80_ = _tmp79_->attributes;
 #line 126 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp79_ = _tmp78_->data;
+					_tmp81_ = _tmp80_->data;
 #line 126 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp79__length1 = -1;
+					_tmp81__length1 = -1;
 #line 126 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp80_ = rules_patterns_index;
+					_tmp82_ = rules_patterns_index;
 #line 126 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp81_ = ((GnomeKeyringAttribute*) _tmp79_)[_tmp80_];
+					_tmp83_ = ((GnomeKeyringAttribute*) _tmp81_)[_tmp82_];
 #line 126 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp82_ = _tmp81_.value.string;
+					_tmp84_ = _tmp83_.value.string;
 #line 126 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp83_ = g_strdup (_tmp82_);
+					_tmp85_ = g_strdup (_tmp84_);
 #line 126 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					rules_patterns_all = _tmp83_;
+					rules_patterns_all = _tmp85_;
 #line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp84_ = entry;
+					_tmp86_ = entry;
 #line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp85_ = _tmp84_->attributes;
+					_tmp87_ = _tmp86_->attributes;
 #line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp86_ = _tmp85_->data;
+					_tmp88_ = _tmp87_->data;
 #line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp86__length1 = -1;
+					_tmp88__length1 = -1;
 #line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp87_ = rules_always_confirm_index;
+					_tmp89_ = rules_always_confirm_index;
 #line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp88_ = ((GnomeKeyringAttribute*) _tmp86_)[_tmp87_];
+					_tmp90_ = ((GnomeKeyringAttribute*) _tmp88_)[_tmp89_];
 #line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp89_ = _tmp88_.value.string;
+					_tmp91_ = _tmp90_.value.string;
 #line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp90_ = g_strdup (_tmp89_);
+					_tmp92_ = g_strdup (_tmp91_);
 #line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					rules_always_confirm_all = _tmp90_;
+					rules_always_confirm_all = _tmp92_;
 #line 128 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp91_ = rules_always_confirm_all;
+					_tmp93_ = rules_always_confirm_all;
 #line 128 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp93_ = _tmp92_ = g_strsplit (_tmp91_, ";", 0);
+					_tmp95_ = _tmp94_ = g_strsplit (_tmp93_, ";", 0);
 #line 128 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					rules_always_confirm = _tmp93_;
+					rules_always_confirm = _tmp95_;
 #line 128 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					rules_always_confirm_length1 = _vala_array_length (_tmp92_);
+					rules_always_confirm_length1 = _vala_array_length (_tmp94_);
 #line 128 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 					_rules_always_confirm_size_ = rules_always_confirm_length1;
 #line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp94_ = rules_patterns_all;
+					_tmp96_ = rules_patterns_all;
 #line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp96_ = _tmp95_ = g_strsplit (_tmp94_, ";", 0);
+					_tmp98_ = _tmp97_ = g_strsplit (_tmp96_, ";", 0);
 #line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					rules_patterns = _tmp96_;
+					rules_patterns = _tmp98_;
 #line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					rules_patterns_length1 = _vala_array_length (_tmp95_);
+					rules_patterns_length1 = _vala_array_length (_tmp97_);
 #line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 					_rules_patterns_size_ = rules_patterns_length1;
 #line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp97_ = rules_patterns;
+					_tmp99_ = rules_patterns;
 #line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp97__length1 = rules_patterns_length1;
+					_tmp99__length1 = rules_patterns_length1;
 #line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp98_ = rules_always_confirm;
+					_tmp100_ = rules_always_confirm;
 #line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp98__length1 = rules_always_confirm_length1;
+					_tmp100__length1 = rules_always_confirm_length1;
 #line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					if (_tmp97__length1 == _tmp98__length1) {
-#line 1047 "moonshot-keyring-store.c"
+					if (_tmp99__length1 == _tmp100__length1) {
+#line 1080 "moonshot-keyring-store.c"
 						Rule* rules = NULL;
-						gchar** _tmp99_ = NULL;
-						gint _tmp99__length1 = 0;
-						Rule* _tmp100_ = NULL;
+						gchar** _tmp101_ = NULL;
+						gint _tmp101__length1 = 0;
+						Rule* _tmp102_ = NULL;
 						gint rules_length1 = 0;
 						gint _rules_size_ = 0;
-						IdCard* _tmp117_ = NULL;
-						Rule* _tmp118_ = NULL;
-						gint _tmp118__length1 = 0;
+						IdCard* _tmp119_ = NULL;
+						Rule* _tmp120_ = NULL;
+						gint _tmp120__length1 = 0;
 #line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp99_ = rules_patterns;
+						_tmp101_ = rules_patterns;
 #line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp99__length1 = rules_patterns_length1;
+						_tmp101__length1 = rules_patterns_length1;
 #line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp100_ = g_new0 (Rule, _tmp99__length1);
+						_tmp102_ = g_new0 (Rule, _tmp101__length1);
 #line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						rules = _tmp100_;
+						rules = _tmp102_;
 #line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						rules_length1 = _tmp99__length1;
+						rules_length1 = _tmp101__length1;
 #line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 						_rules_size_ = rules_length1;
-#line 1069 "moonshot-keyring-store.c"
+#line 1102 "moonshot-keyring-store.c"
 						{
 							gint j = 0;
 #line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 							j = 0;
-#line 1074 "moonshot-keyring-store.c"
+#line 1107 "moonshot-keyring-store.c"
 							{
-								gboolean _tmp101_ = FALSE;
+								gboolean _tmp103_ = FALSE;
 #line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-								_tmp101_ = TRUE;
+								_tmp103_ = TRUE;
 #line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 								while (TRUE) {
-#line 1081 "moonshot-keyring-store.c"
-									gint _tmp103_ = 0;
-									gchar** _tmp104_ = NULL;
-									gint _tmp104__length1 = 0;
-									Rule* _tmp105_ = NULL;
-									gint _tmp105__length1 = 0;
-									gint _tmp106_ = 0;
-									gchar** _tmp107_ = NULL;
+#line 1114 "moonshot-keyring-store.c"
+									gint _tmp105_ = 0;
+									gchar** _tmp106_ = NULL;
+									gint _tmp106__length1 = 0;
+									Rule* _tmp107_ = NULL;
 									gint _tmp107__length1 = 0;
 									gint _tmp108_ = 0;
-									const gchar* _tmp109_ = NULL;
-									gchar* _tmp110_ = NULL;
-									Rule* _tmp111_ = NULL;
-									gint _tmp111__length1 = 0;
-									gint _tmp112_ = 0;
-									gchar** _tmp113_ = NULL;
+									gchar** _tmp109_ = NULL;
+									gint _tmp109__length1 = 0;
+									gint _tmp110_ = 0;
+									const gchar* _tmp111_ = NULL;
+									gchar* _tmp112_ = NULL;
+									Rule* _tmp113_ = NULL;
 									gint _tmp113__length1 = 0;
 									gint _tmp114_ = 0;
-									const gchar* _tmp115_ = NULL;
-									gchar* _tmp116_ = NULL;
+									gchar** _tmp115_ = NULL;
+									gint _tmp115__length1 = 0;
+									gint _tmp116_ = 0;
+									const gchar* _tmp117_ = NULL;
+									gchar* _tmp118_ = NULL;
 #line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-									if (!_tmp101_) {
-#line 1103 "moonshot-keyring-store.c"
-										gint _tmp102_ = 0;
+									if (!_tmp103_) {
+#line 1136 "moonshot-keyring-store.c"
+										gint _tmp104_ = 0;
 #line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-										_tmp102_ = j;
+										_tmp104_ = j;
 #line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-										j = _tmp102_ + 1;
-#line 1109 "moonshot-keyring-store.c"
+										j = _tmp104_ + 1;
+#line 1142 "moonshot-keyring-store.c"
 									}
 #line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-									_tmp101_ = FALSE;
+									_tmp103_ = FALSE;
 #line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-									_tmp103_ = j;
+									_tmp105_ = j;
 #line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-									_tmp104_ = rules_patterns;
+									_tmp106_ = rules_patterns;
 #line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-									_tmp104__length1 = rules_patterns_length1;
+									_tmp106__length1 = rules_patterns_length1;
 #line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-									if (!(_tmp103_ < _tmp104__length1)) {
+									if (!(_tmp105_ < _tmp106__length1)) {
 #line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 										break;
-#line 1123 "moonshot-keyring-store.c"
+#line 1156 "moonshot-keyring-store.c"
 									}
 #line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-									_tmp105_ = rules;
+									_tmp107_ = rules;
 #line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-									_tmp105__length1 = rules_length1;
+									_tmp107__length1 = rules_length1;
 #line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-									_tmp106_ = j;
+									_tmp108_ = j;
 #line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-									_tmp107_ = rules_patterns;
+									_tmp109_ = rules_patterns;
 #line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-									_tmp107__length1 = rules_patterns_length1;
+									_tmp109__length1 = rules_patterns_length1;
 #line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-									_tmp108_ = j;
+									_tmp110_ = j;
 #line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-									_tmp109_ = _tmp107_[_tmp108_];
+									_tmp111_ = _tmp109_[_tmp110_];
 #line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-									_tmp110_ = g_strdup (_tmp109_);
+									_tmp112_ = g_strdup (_tmp111_);
 #line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-									_g_free0 (_tmp105_[_tmp106_].pattern);
+									_g_free0 (_tmp107_[_tmp108_].pattern);
 #line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-									_tmp105_[_tmp106_].pattern = _tmp110_;
+									_tmp107_[_tmp108_].pattern = _tmp112_;
 #line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-									_tmp111_ = rules;
+									_tmp113_ = rules;
 #line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-									_tmp111__length1 = rules_length1;
+									_tmp113__length1 = rules_length1;
 #line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-									_tmp112_ = j;
+									_tmp114_ = j;
 #line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-									_tmp113_ = rules_always_confirm;
+									_tmp115_ = rules_always_confirm;
 #line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-									_tmp113__length1 = rules_always_confirm_length1;
+									_tmp115__length1 = rules_always_confirm_length1;
 #line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-									_tmp114_ = j;
+									_tmp116_ = j;
 #line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-									_tmp115_ = _tmp113_[_tmp114_];
+									_tmp117_ = _tmp115_[_tmp116_];
 #line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-									_tmp116_ = g_strdup (_tmp115_);
+									_tmp118_ = g_strdup (_tmp117_);
 #line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-									_g_free0 (_tmp111_[_tmp112_].always_confirm);
+									_g_free0 (_tmp113_[_tmp114_].always_confirm);
 #line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-									_tmp111_[_tmp112_].always_confirm = _tmp116_;
-#line 1165 "moonshot-keyring-store.c"
+									_tmp113_[_tmp114_].always_confirm = _tmp118_;
+#line 1198 "moonshot-keyring-store.c"
 								}
 							}
 						}
 #line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp117_ = id_card;
+						_tmp119_ = id_card;
 #line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp118_ = rules;
+						_tmp120_ = rules;
 #line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp118__length1 = rules_length1;
+						_tmp120__length1 = rules_length1;
 #line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						id_card_set_rules (_tmp117_, _tmp118_, _tmp118__length1);
+						id_card_set_rules (_tmp119_, _tmp120_, _tmp120__length1);
 #line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 						rules = (_vala_Rule_array_free (rules, rules_length1), NULL);
-#line 1179 "moonshot-keyring-store.c"
+#line 1212 "moonshot-keyring-store.c"
 					}
 #line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 					rules_patterns = (_vala_array_free (rules_patterns, rules_patterns_length1, (GDestroyNotify) g_free), NULL);
@@ -1185,94 +1218,94 @@ static void keyring_store_load_id_cards
 					_g_free0 (rules_always_confirm_all);
 #line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 					_g_free0 (rules_patterns_all);
-#line 1189 "moonshot-keyring-store.c"
+#line 1222 "moonshot-keyring-store.c"
 				}
 #line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-				_tmp119_ = store_password;
+				_tmp121_ = store_password;
 #line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-				if (_tmp119_ != NULL) {
-#line 1195 "moonshot-keyring-store.c"
-					IdCard* _tmp120_ = NULL;
-					const gchar* _tmp121_ = NULL;
+				if (_tmp121_ != NULL) {
+#line 1228 "moonshot-keyring-store.c"
+					IdCard* _tmp122_ = NULL;
+					const gchar* _tmp123_ = NULL;
 #line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp120_ = id_card;
+					_tmp122_ = id_card;
 #line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp121_ = store_password;
+					_tmp123_ = store_password;
 #line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					id_card_set_store_password (_tmp120_, g_strcmp0 (_tmp121_, "yes") == 0);
-#line 1204 "moonshot-keyring-store.c"
+					id_card_set_store_password (_tmp122_, g_strcmp0 (_tmp123_, "yes") == 0);
+#line 1237 "moonshot-keyring-store.c"
 				} else {
-					gboolean _tmp122_ = FALSE;
-					GnomeKeyringFound* _tmp123_ = NULL;
-					const gchar* _tmp124_ = NULL;
-					IdCard* _tmp127_ = NULL;
+					gboolean _tmp124_ = FALSE;
+					GnomeKeyringFound* _tmp125_ = NULL;
+					const gchar* _tmp126_ = NULL;
+					IdCard* _tmp129_ = NULL;
 #line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp123_ = entry;
+					_tmp125_ = entry;
 #line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp124_ = _tmp123_->secret;
+					_tmp126_ = _tmp125_->secret;
 #line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					if (_tmp124_ != NULL) {
-#line 1216 "moonshot-keyring-store.c"
-						GnomeKeyringFound* _tmp125_ = NULL;
-						const gchar* _tmp126_ = NULL;
+					if (_tmp126_ != NULL) {
+#line 1249 "moonshot-keyring-store.c"
+						GnomeKeyringFound* _tmp127_ = NULL;
+						const gchar* _tmp128_ = NULL;
 #line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp125_ = entry;
+						_tmp127_ = entry;
 #line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp126_ = _tmp125_->secret;
+						_tmp128_ = _tmp127_->secret;
 #line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp122_ = g_strcmp0 (_tmp126_, "") != 0;
-#line 1225 "moonshot-keyring-store.c"
+						_tmp124_ = g_strcmp0 (_tmp128_, "") != 0;
+#line 1258 "moonshot-keyring-store.c"
 					} else {
 #line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp122_ = FALSE;
-#line 1229 "moonshot-keyring-store.c"
+						_tmp124_ = FALSE;
+#line 1262 "moonshot-keyring-store.c"
 					}
 #line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp127_ = id_card;
+					_tmp129_ = id_card;
 #line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					id_card_set_store_password (_tmp127_, _tmp122_);
-#line 1235 "moonshot-keyring-store.c"
+					id_card_set_store_password (_tmp129_, _tmp124_);
+#line 1268 "moonshot-keyring-store.c"
 				}
 #line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-				_tmp128_ = id_card;
+				_tmp130_ = id_card;
 #line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-				_tmp129_ = id_card_get_store_password (_tmp128_);
+				_tmp131_ = id_card_get_store_password (_tmp130_);
 #line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-				_tmp130_ = _tmp129_;
+				_tmp132_ = _tmp131_;
 #line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-				if (_tmp130_) {
-#line 1245 "moonshot-keyring-store.c"
-					IdCard* _tmp131_ = NULL;
-					GnomeKeyringFound* _tmp132_ = NULL;
-					const gchar* _tmp133_ = NULL;
+				if (_tmp132_) {
+#line 1278 "moonshot-keyring-store.c"
+					IdCard* _tmp133_ = NULL;
+					GnomeKeyringFound* _tmp134_ = NULL;
+					const gchar* _tmp135_ = NULL;
 #line 146 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp131_ = id_card;
+					_tmp133_ = id_card;
 #line 146 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp132_ = entry;
+					_tmp134_ = entry;
 #line 146 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp133_ = _tmp132_->secret;
+					_tmp135_ = _tmp134_->secret;
 #line 146 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					id_card_set_password (_tmp131_, _tmp133_);
-#line 1257 "moonshot-keyring-store.c"
+					id_card_set_password (_tmp133_, _tmp135_);
+#line 1290 "moonshot-keyring-store.c"
 				} else {
-					IdCard* _tmp134_ = NULL;
+					IdCard* _tmp136_ = NULL;
 #line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp134_ = id_card;
+					_tmp136_ = id_card;
 #line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					id_card_set_password (_tmp134_, NULL);
-#line 1264 "moonshot-keyring-store.c"
+					id_card_set_password (_tmp136_, NULL);
+#line 1297 "moonshot-keyring-store.c"
 				}
 #line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-				_tmp135_ = self->priv->id_card_list;
+				_tmp137_ = self->priv->id_card_list;
 #line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-				_tmp136_ = id_card;
+				_tmp138_ = id_card;
 #line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-				gee_abstract_collection_add ((GeeAbstractCollection*) _tmp135_, _tmp136_);
+				gee_abstract_collection_add ((GeeAbstractCollection*) _tmp137_, _tmp138_);
 #line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 				_g_free0 (store_password);
 #line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 				_g_object_unref0 (id_card);
-#line 1276 "moonshot-keyring-store.c"
+#line 1309 "moonshot-keyring-store.c"
 			}
 		}
 	}
@@ -1280,7 +1313,49 @@ static void keyring_store_load_id_cards
 	__g_list_free__gnome_keyring_found_free0_0 (items);
 #line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 	_gnome_keyring_attribute_list_free0 (match);
-#line 1284 "moonshot-keyring-store.c"
+#line 1317 "moonshot-keyring-store.c"
+}
+
+
+static Rule* _vala_array_dup3 (Rule* self, int length) {
+	Rule* result;
+	int i;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+	result = g_new0 (Rule, length);
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+	for (i = 0; i < length; i++) {
+#line 1328 "moonshot-keyring-store.c"
+		Rule _tmp0_ = {0};
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+		rule_copy (&self[i], &_tmp0_);
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+		result[i] = _tmp0_;
+#line 1334 "moonshot-keyring-store.c"
+	}
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+	return result;
+#line 1338 "moonshot-keyring-store.c"
+}
+
+
+static gchar** _vala_array_dup4 (gchar** self, int length) {
+	gchar** result;
+	int i;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+	result = g_new0 (gchar*, length + 1);
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+	for (i = 0; i < length; i++) {
+#line 1349 "moonshot-keyring-store.c"
+		gchar* _tmp0_ = NULL;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+		_tmp0_ = g_strdup (self[i]);
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+		result[i] = _tmp0_;
+#line 1355 "moonshot-keyring-store.c"
+	}
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+	return result;
+#line 1359 "moonshot-keyring-store.c"
 }
 
 
@@ -1291,74 +1366,74 @@ static gchar* _vala_g_strjoinv (const gc
 	gboolean _tmp2_ = FALSE;
 	gchar** _tmp3_ = NULL;
 	gint _tmp3__length1 = 0;
-#line 964 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 964 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	_tmp0_ = separator;
-#line 964 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 964 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	if (_tmp0_ == NULL) {
-#line 965 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 965 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		separator = "";
-#line 1301 "moonshot-keyring-store.c"
+#line 1376 "moonshot-keyring-store.c"
 	}
-#line 967 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 967 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	_tmp3_ = str_array;
-#line 967 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 967 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	_tmp3__length1 = str_array_length1;
-#line 967 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 967 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	if (_tmp3_ != NULL) {
-#line 967 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 967 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp2_ = TRUE;
-#line 1311 "moonshot-keyring-store.c"
+#line 1386 "moonshot-keyring-store.c"
 	} else {
 		gchar** _tmp4_ = NULL;
 		gint _tmp4__length1 = 0;
-#line 967 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 967 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp4_ = str_array;
-#line 967 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 967 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp4__length1 = str_array_length1;
-#line 967 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 967 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp2_ = _tmp4__length1 > 0;
-#line 1321 "moonshot-keyring-store.c"
+#line 1396 "moonshot-keyring-store.c"
 	}
-#line 967 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 967 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	if (_tmp2_) {
-#line 967 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 967 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp1_ = TRUE;
-#line 1327 "moonshot-keyring-store.c"
+#line 1402 "moonshot-keyring-store.c"
 	} else {
 		gboolean _tmp5_ = FALSE;
 		gchar** _tmp6_ = NULL;
 		gint _tmp6__length1 = 0;
-#line 967 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 967 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp6_ = str_array;
-#line 967 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 967 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp6__length1 = str_array_length1;
-#line 967 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 967 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		if (_tmp6__length1 == (-1)) {
-#line 1338 "moonshot-keyring-store.c"
+#line 1413 "moonshot-keyring-store.c"
 			gchar** _tmp7_ = NULL;
 			gint _tmp7__length1 = 0;
 			const gchar* _tmp8_ = NULL;
-#line 967 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 967 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 			_tmp7_ = str_array;
-#line 967 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 967 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 			_tmp7__length1 = str_array_length1;
-#line 967 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 967 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 			_tmp8_ = _tmp7_[0];
-#line 967 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 967 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 			_tmp5_ = _tmp8_ != NULL;
-#line 1350 "moonshot-keyring-store.c"
+#line 1425 "moonshot-keyring-store.c"
 		} else {
-#line 967 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 967 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 			_tmp5_ = FALSE;
-#line 1354 "moonshot-keyring-store.c"
+#line 1429 "moonshot-keyring-store.c"
 		}
-#line 967 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 967 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp1_ = _tmp5_;
-#line 1358 "moonshot-keyring-store.c"
+#line 1433 "moonshot-keyring-store.c"
 	}
-#line 967 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 967 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	if (_tmp1_) {
-#line 1362 "moonshot-keyring-store.c"
+#line 1437 "moonshot-keyring-store.c"
 		gint i = 0;
 		gsize len = 0UL;
 		gint _tmp31_ = 0;
@@ -1379,18 +1454,18 @@ static gchar* _vala_g_strjoinv (const gc
 		const gchar* _tmp44_ = NULL;
 		void* _tmp45_ = NULL;
 		const gchar* _tmp62_ = NULL;
-#line 969 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 969 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		len = (gsize) 1;
-#line 1385 "moonshot-keyring-store.c"
+#line 1460 "moonshot-keyring-store.c"
 		{
 			gboolean _tmp9_ = FALSE;
-#line 970 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 970 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 			i = 0;
-#line 970 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 970 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 			_tmp9_ = TRUE;
-#line 970 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 970 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 			while (TRUE) {
-#line 1394 "moonshot-keyring-store.c"
+#line 1469 "moonshot-keyring-store.c"
 				gboolean _tmp11_ = FALSE;
 				gboolean _tmp12_ = FALSE;
 				gchar** _tmp13_ = NULL;
@@ -1401,192 +1476,192 @@ static gchar* _vala_g_strjoinv (const gc
 				gint _tmp23_ = 0;
 				const gchar* _tmp24_ = NULL;
 				gsize _tmp30_ = 0UL;
-#line 970 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 970 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				if (!_tmp9_) {
-#line 1407 "moonshot-keyring-store.c"
+#line 1482 "moonshot-keyring-store.c"
 					gint _tmp10_ = 0;
-#line 970 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 970 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 					_tmp10_ = i;
-#line 970 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 970 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 					i = _tmp10_ + 1;
-#line 1413 "moonshot-keyring-store.c"
+#line 1488 "moonshot-keyring-store.c"
 				}
-#line 970 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 970 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				_tmp9_ = FALSE;
-#line 970 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 970 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				_tmp13_ = str_array;
-#line 970 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 970 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				_tmp13__length1 = str_array_length1;
-#line 970 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 970 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				if (_tmp13__length1 != (-1)) {
-#line 1423 "moonshot-keyring-store.c"
+#line 1498 "moonshot-keyring-store.c"
 					gint _tmp14_ = 0;
 					gchar** _tmp15_ = NULL;
 					gint _tmp15__length1 = 0;
-#line 970 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 970 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 					_tmp14_ = i;
-#line 970 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 970 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 					_tmp15_ = str_array;
-#line 970 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 970 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 					_tmp15__length1 = str_array_length1;
-#line 970 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 970 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 					_tmp12_ = _tmp14_ < _tmp15__length1;
-#line 1435 "moonshot-keyring-store.c"
+#line 1510 "moonshot-keyring-store.c"
 				} else {
-#line 970 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 970 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 					_tmp12_ = FALSE;
-#line 1439 "moonshot-keyring-store.c"
+#line 1514 "moonshot-keyring-store.c"
 				}
-#line 970 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 970 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				if (_tmp12_) {
-#line 970 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 970 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 					_tmp11_ = TRUE;
-#line 1445 "moonshot-keyring-store.c"
+#line 1520 "moonshot-keyring-store.c"
 				} else {
 					gboolean _tmp16_ = FALSE;
 					gchar** _tmp17_ = NULL;
 					gint _tmp17__length1 = 0;
-#line 970 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 970 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 					_tmp17_ = str_array;
-#line 970 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 970 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 					_tmp17__length1 = str_array_length1;
-#line 970 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 970 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 					if (_tmp17__length1 == (-1)) {
-#line 1456 "moonshot-keyring-store.c"
+#line 1531 "moonshot-keyring-store.c"
 						gchar** _tmp18_ = NULL;
 						gint _tmp18__length1 = 0;
 						gint _tmp19_ = 0;
 						const gchar* _tmp20_ = NULL;
-#line 970 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 970 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 						_tmp18_ = str_array;
-#line 970 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 970 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 						_tmp18__length1 = str_array_length1;
-#line 970 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 970 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 						_tmp19_ = i;
-#line 970 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 970 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 						_tmp20_ = _tmp18_[_tmp19_];
-#line 970 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 970 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 						_tmp16_ = _tmp20_ != NULL;
-#line 1471 "moonshot-keyring-store.c"
+#line 1546 "moonshot-keyring-store.c"
 					} else {
-#line 970 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 970 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 						_tmp16_ = FALSE;
-#line 1475 "moonshot-keyring-store.c"
+#line 1550 "moonshot-keyring-store.c"
 					}
-#line 970 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 970 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 					_tmp11_ = _tmp16_;
-#line 1479 "moonshot-keyring-store.c"
+#line 1554 "moonshot-keyring-store.c"
 				}
-#line 970 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 970 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				if (!_tmp11_) {
-#line 970 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 970 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 					break;
-#line 1485 "moonshot-keyring-store.c"
+#line 1560 "moonshot-keyring-store.c"
 				}
-#line 971 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 971 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				_tmp22_ = str_array;
-#line 971 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 971 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				_tmp22__length1 = str_array_length1;
-#line 971 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 971 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				_tmp23_ = i;
-#line 971 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 971 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				_tmp24_ = _tmp22_[_tmp23_];
-#line 971 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 971 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				if (_tmp24_ != NULL) {
-#line 1497 "moonshot-keyring-store.c"
+#line 1572 "moonshot-keyring-store.c"
 					gchar** _tmp25_ = NULL;
 					gint _tmp25__length1 = 0;
 					gint _tmp26_ = 0;
 					const gchar* _tmp27_ = NULL;
 					gint _tmp28_ = 0;
 					gint _tmp29_ = 0;
-#line 971 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 971 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 					_tmp25_ = str_array;
-#line 971 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 971 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 					_tmp25__length1 = str_array_length1;
-#line 971 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 971 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 					_tmp26_ = i;
-#line 971 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 971 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 					_tmp27_ = _tmp25_[_tmp26_];
-#line 971 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 971 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 					_tmp28_ = strlen ((const gchar*) _tmp27_);
-#line 971 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 971 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 					_tmp29_ = _tmp28_;
-#line 971 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 971 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 					_tmp21_ = _tmp29_;
-#line 1518 "moonshot-keyring-store.c"
+#line 1593 "moonshot-keyring-store.c"
 				} else {
-#line 971 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 971 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 					_tmp21_ = 0;
-#line 1522 "moonshot-keyring-store.c"
+#line 1597 "moonshot-keyring-store.c"
 				}
-#line 971 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 971 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				_tmp30_ = len;
-#line 971 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 971 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				len = _tmp30_ + _tmp21_;
-#line 1528 "moonshot-keyring-store.c"
+#line 1603 "moonshot-keyring-store.c"
 			}
 		}
-#line 973 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 973 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp31_ = i;
-#line 973 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 973 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		if (_tmp31_ == 0) {
-#line 1535 "moonshot-keyring-store.c"
+#line 1610 "moonshot-keyring-store.c"
 			gchar* _tmp32_ = NULL;
-#line 974 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 974 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 			_tmp32_ = g_strdup ("");
-#line 974 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 974 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 			result = _tmp32_;
-#line 974 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 974 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 			return result;
-#line 1543 "moonshot-keyring-store.c"
+#line 1618 "moonshot-keyring-store.c"
 		}
-#line 976 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 976 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp33_ = i;
-#line 976 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 976 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		str_array_length1 = _tmp33_;
-#line 976 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 976 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp34_ = str_array_length1;
-#line 977 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 977 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp35_ = len;
-#line 977 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 977 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp36_ = separator;
-#line 977 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 977 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp37_ = strlen ((const gchar*) _tmp36_);
-#line 977 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 977 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp38_ = _tmp37_;
-#line 977 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 977 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp39_ = i;
-#line 977 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 977 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		len = _tmp35_ + (_tmp38_ * (_tmp39_ - 1));
-#line 979 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 979 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp40_ = len;
-#line 979 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 979 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp41_ = g_malloc (_tmp40_);
-#line 979 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 979 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		res = _tmp41_;
-#line 980 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 980 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp42_ = res;
-#line 980 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 980 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp43_ = str_array;
-#line 980 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 980 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp43__length1 = str_array_length1;
-#line 980 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 980 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp44_ = _tmp43_[0];
-#line 980 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 980 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp45_ = g_stpcpy ((void*) _tmp42_, (const gchar*) _tmp44_);
-#line 980 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 980 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		ptr = _tmp45_;
-#line 1581 "moonshot-keyring-store.c"
+#line 1656 "moonshot-keyring-store.c"
 		{
 			gboolean _tmp46_ = FALSE;
-#line 981 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 981 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 			i = 1;
-#line 981 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 981 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 			_tmp46_ = TRUE;
-#line 981 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 981 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 			while (TRUE) {
-#line 1590 "moonshot-keyring-store.c"
+#line 1665 "moonshot-keyring-store.c"
 				gint _tmp48_ = 0;
 				gchar** _tmp49_ = NULL;
 				gint _tmp49__length1 = 0;
@@ -1600,96 +1675,96 @@ static gchar* _vala_g_strjoinv (const gc
 				const gchar* _tmp56_ = NULL;
 				void* _tmp60_ = NULL;
 				void* _tmp61_ = NULL;
-#line 981 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 981 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				if (!_tmp46_) {
-#line 1606 "moonshot-keyring-store.c"
+#line 1681 "moonshot-keyring-store.c"
 					gint _tmp47_ = 0;
-#line 981 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 981 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 					_tmp47_ = i;
-#line 981 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 981 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 					i = _tmp47_ + 1;
-#line 1612 "moonshot-keyring-store.c"
+#line 1687 "moonshot-keyring-store.c"
 				}
-#line 981 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 981 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				_tmp46_ = FALSE;
-#line 981 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 981 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				_tmp48_ = i;
-#line 981 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 981 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				_tmp49_ = str_array;
-#line 981 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 981 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				_tmp49__length1 = str_array_length1;
-#line 981 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 981 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				if (!(_tmp48_ < _tmp49__length1)) {
-#line 981 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 981 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 					break;
-#line 1626 "moonshot-keyring-store.c"
+#line 1701 "moonshot-keyring-store.c"
 				}
-#line 982 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 982 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				_tmp50_ = ptr;
-#line 982 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 982 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				_tmp51_ = separator;
-#line 982 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 982 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				_tmp52_ = g_stpcpy (_tmp50_, (const gchar*) _tmp51_);
-#line 982 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 982 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				ptr = _tmp52_;
-#line 983 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 983 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				_tmp54_ = str_array;
-#line 983 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 983 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				_tmp54__length1 = str_array_length1;
-#line 983 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 983 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				_tmp55_ = i;
-#line 983 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 983 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				_tmp56_ = _tmp54_[_tmp55_];
-#line 983 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 983 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				if (_tmp56_ != NULL) {
-#line 1646 "moonshot-keyring-store.c"
+#line 1721 "moonshot-keyring-store.c"
 					gchar** _tmp57_ = NULL;
 					gint _tmp57__length1 = 0;
 					gint _tmp58_ = 0;
 					const gchar* _tmp59_ = NULL;
-#line 983 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 983 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 					_tmp57_ = str_array;
-#line 983 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 983 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 					_tmp57__length1 = str_array_length1;
-#line 983 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 983 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 					_tmp58_ = i;
-#line 983 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 983 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 					_tmp59_ = _tmp57_[_tmp58_];
-#line 983 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 983 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 					_tmp53_ = (const gchar*) _tmp59_;
-#line 1661 "moonshot-keyring-store.c"
+#line 1736 "moonshot-keyring-store.c"
 				} else {
-#line 983 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 983 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 					_tmp53_ = "";
-#line 1665 "moonshot-keyring-store.c"
+#line 1740 "moonshot-keyring-store.c"
 				}
-#line 983 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 983 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				_tmp60_ = ptr;
-#line 983 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 983 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				_tmp61_ = g_stpcpy (_tmp60_, _tmp53_);
-#line 983 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 983 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 				ptr = _tmp61_;
-#line 1673 "moonshot-keyring-store.c"
+#line 1748 "moonshot-keyring-store.c"
 			}
 		}
-#line 986 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 986 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp62_ = res;
-#line 986 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 986 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		res = NULL;
-#line 986 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 986 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		result = (gchar*) _tmp62_;
-#line 986 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 986 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		return result;
-#line 1684 "moonshot-keyring-store.c"
+#line 1759 "moonshot-keyring-store.c"
 	} else {
 		gchar* _tmp63_ = NULL;
-#line 988 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 988 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp63_ = g_strdup ("");
-#line 988 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 988 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		result = _tmp63_;
-#line 988 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 988 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		return result;
-#line 1693 "moonshot-keyring-store.c"
+#line 1768 "moonshot-keyring-store.c"
 	}
 }
 
@@ -1699,7 +1774,7 @@ void keyring_store_store_id_cards (Keyri
 	g_return_if_fail (self != NULL);
 #line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 	keyring_store_clear_keyring (self);
-#line 1703 "moonshot-keyring-store.c"
+#line 1778 "moonshot-keyring-store.c"
 	{
 		GeeLinkedList* _id_card_list = NULL;
 		GeeLinkedList* _tmp0_ = NULL;
@@ -1727,7 +1802,7 @@ void keyring_store_store_id_cards (Keyri
 		_id_card_index = -1;
 #line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 		while (TRUE) {
-#line 1731 "moonshot-keyring-store.c"
+#line 1806 "moonshot-keyring-store.c"
 			gint _tmp5_ = 0;
 			gint _tmp6_ = 0;
 			gint _tmp7_ = 0;
@@ -1735,43 +1810,58 @@ void keyring_store_store_id_cards (Keyri
 			GeeLinkedList* _tmp8_ = NULL;
 			gint _tmp9_ = 0;
 			gpointer _tmp10_ = NULL;
-			gchar** rules_patterns = NULL;
+			Rule* rules = NULL;
 			IdCard* _tmp11_ = NULL;
 			Rule* _tmp12_ = NULL;
 			gint _tmp12__length1 = 0;
 			Rule* _tmp13_ = NULL;
 			gint _tmp13__length1 = 0;
-			gchar** _tmp14_ = NULL;
-			gint rules_patterns_length1 = 0;
-			gint _rules_patterns_size_ = 0;
-			gchar** rules_always_conf = NULL;
+			Rule* _tmp14_ = NULL;
+			gint _tmp14__length1 = 0;
+			gint rules_length1 = 0;
+			gint _rules_size_ = 0;
+			gchar** services_array = NULL;
 			IdCard* _tmp15_ = NULL;
-			Rule* _tmp16_ = NULL;
+			gchar** _tmp16_ = NULL;
 			gint _tmp16__length1 = 0;
-			Rule* _tmp17_ = NULL;
+			gchar** _tmp17_ = NULL;
 			gint _tmp17__length1 = 0;
 			gchar** _tmp18_ = NULL;
+			gint _tmp18__length1 = 0;
+			gint services_array_length1 = 0;
+			gint _services_array_size_ = 0;
+			gchar** rules_patterns = NULL;
+			Rule* _tmp19_ = NULL;
+			gint _tmp19__length1 = 0;
+			gchar** _tmp20_ = NULL;
+			gint rules_patterns_length1 = 0;
+			gint _rules_patterns_size_ = 0;
+			gchar** rules_always_conf = NULL;
+			Rule* _tmp21_ = NULL;
+			gint _tmp21__length1 = 0;
+			gchar** _tmp22_ = NULL;
 			gint rules_always_conf_length1 = 0;
 			gint _rules_always_conf_size_ = 0;
 			gchar* patterns = NULL;
+			gchar** _tmp43_ = NULL;
+			gint _tmp43__length1 = 0;
+			gchar* _tmp44_ = NULL;
+			gchar* always_conf = NULL;
 			gchar** _tmp45_ = NULL;
 			gint _tmp45__length1 = 0;
 			gchar* _tmp46_ = NULL;
-			gchar* always_conf = NULL;
+			gchar* services = NULL;
 			gchar** _tmp47_ = NULL;
 			gint _tmp47__length1 = 0;
 			gchar* _tmp48_ = NULL;
-			gchar* services = NULL;
-			IdCard* _tmp49_ = NULL;
-			gchar** _tmp50_ = NULL;
-			gint _tmp50__length1 = 0;
-			gchar** _tmp51_ = NULL;
-			gint _tmp51__length1 = 0;
-			gchar* _tmp52_ = NULL;
 			GnomeKeyringAttributeList* attributes = NULL;
-			GnomeKeyringAttributeList* _tmp53_ = NULL;
+			GnomeKeyringAttributeList* _tmp49_ = NULL;
 			guint32 item_id = 0U;
-			GnomeKeyringAttributeList* _tmp54_ = NULL;
+			GnomeKeyringAttributeList* _tmp50_ = NULL;
+			GnomeKeyringAttributeList* _tmp51_ = NULL;
+			IdCard* _tmp52_ = NULL;
+			const gchar* _tmp53_ = NULL;
+			const gchar* _tmp54_ = NULL;
 			GnomeKeyringAttributeList* _tmp55_ = NULL;
 			IdCard* _tmp56_ = NULL;
 			const gchar* _tmp57_ = NULL;
@@ -1781,56 +1871,52 @@ void keyring_store_store_id_cards (Keyri
 			const gchar* _tmp61_ = NULL;
 			const gchar* _tmp62_ = NULL;
 			GnomeKeyringAttributeList* _tmp63_ = NULL;
-			IdCard* _tmp64_ = NULL;
-			const gchar* _tmp65_ = NULL;
+			const gchar* _tmp64_ = NULL;
+			GnomeKeyringAttributeList* _tmp65_ = NULL;
 			const gchar* _tmp66_ = NULL;
 			GnomeKeyringAttributeList* _tmp67_ = NULL;
 			const gchar* _tmp68_ = NULL;
 			GnomeKeyringAttributeList* _tmp69_ = NULL;
-			const gchar* _tmp70_ = NULL;
-			GnomeKeyringAttributeList* _tmp71_ = NULL;
-			const gchar* _tmp72_ = NULL;
-			GnomeKeyringAttributeList* _tmp73_ = NULL;
-			IdCard* _tmp74_ = NULL;
-			TrustAnchor* _tmp75_ = NULL;
-			TrustAnchor* _tmp76_ = NULL;
-			const gchar* _tmp77_ = NULL;
-			const gchar* _tmp78_ = NULL;
-			GnomeKeyringAttributeList* _tmp79_ = NULL;
-			IdCard* _tmp80_ = NULL;
-			TrustAnchor* _tmp81_ = NULL;
-			TrustAnchor* _tmp82_ = NULL;
-			const gchar* _tmp83_ = NULL;
-			const gchar* _tmp84_ = NULL;
-			GnomeKeyringAttributeList* _tmp85_ = NULL;
-			IdCard* _tmp86_ = NULL;
-			TrustAnchor* _tmp87_ = NULL;
-			TrustAnchor* _tmp88_ = NULL;
-			const gchar* _tmp89_ = NULL;
-			const gchar* _tmp90_ = NULL;
-			GnomeKeyringAttributeList* _tmp91_ = NULL;
-			IdCard* _tmp92_ = NULL;
-			TrustAnchor* _tmp93_ = NULL;
-			TrustAnchor* _tmp94_ = NULL;
-			const gchar* _tmp95_ = NULL;
-			const gchar* _tmp96_ = NULL;
-			const gchar* _tmp97_ = NULL;
-			IdCard* _tmp98_ = NULL;
-			gboolean _tmp99_ = FALSE;
+			IdCard* _tmp70_ = NULL;
+			TrustAnchor* _tmp71_ = NULL;
+			TrustAnchor* _tmp72_ = NULL;
+			const gchar* _tmp73_ = NULL;
+			const gchar* _tmp74_ = NULL;
+			GnomeKeyringAttributeList* _tmp75_ = NULL;
+			IdCard* _tmp76_ = NULL;
+			TrustAnchor* _tmp77_ = NULL;
+			TrustAnchor* _tmp78_ = NULL;
+			const gchar* _tmp79_ = NULL;
+			const gchar* _tmp80_ = NULL;
+			GnomeKeyringAttributeList* _tmp81_ = NULL;
+			IdCard* _tmp82_ = NULL;
+			TrustAnchor* _tmp83_ = NULL;
+			TrustAnchor* _tmp84_ = NULL;
+			const gchar* _tmp85_ = NULL;
+			const gchar* _tmp86_ = NULL;
+			GnomeKeyringAttributeList* _tmp87_ = NULL;
+			IdCard* _tmp88_ = NULL;
+			TrustAnchor* _tmp89_ = NULL;
+			TrustAnchor* _tmp90_ = NULL;
+			const gchar* _tmp91_ = NULL;
+			const gchar* _tmp92_ = NULL;
+			const gchar* _tmp93_ = NULL;
+			IdCard* _tmp94_ = NULL;
+			gboolean _tmp95_ = FALSE;
+			gboolean _tmp96_ = FALSE;
+			GnomeKeyringAttributeList* _tmp97_ = NULL;
+			const gchar* _tmp98_ = NULL;
+			IdCard* _tmp99_ = NULL;
 			gboolean _tmp100_ = FALSE;
-			GnomeKeyringAttributeList* _tmp101_ = NULL;
-			const gchar* _tmp102_ = NULL;
-			IdCard* _tmp103_ = NULL;
-			gboolean _tmp104_ = FALSE;
-			gboolean _tmp105_ = FALSE;
+			gboolean _tmp101_ = FALSE;
 			GnomeKeyringResult _result_ = 0;
-			IdCard* _tmp109_ = NULL;
-			const gchar* _tmp110_ = NULL;
-			const gchar* _tmp111_ = NULL;
-			GnomeKeyringAttributeList* _tmp112_ = NULL;
-			guint32 _tmp113_ = 0U;
-			GnomeKeyringResult _tmp114_ = 0;
-			GnomeKeyringResult _tmp115_ = 0;
+			IdCard* _tmp105_ = NULL;
+			const gchar* _tmp106_ = NULL;
+			const gchar* _tmp107_ = NULL;
+			GnomeKeyringAttributeList* _tmp108_ = NULL;
+			guint32 _tmp109_ = 0U;
+			GnomeKeyringResult _tmp110_ = 0;
+			GnomeKeyringResult _tmp111_ = 0;
 #line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 			_tmp5_ = _id_card_index;
 #line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
@@ -1843,7 +1929,7 @@ void keyring_store_store_id_cards (Keyri
 			if (!(_tmp6_ < _tmp7_)) {
 #line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 				break;
-#line 1847 "moonshot-keyring-store.c"
+#line 1933 "moonshot-keyring-store.c"
 			}
 #line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 			_tmp8_ = _id_card_list;
@@ -1853,63 +1939,85 @@ void keyring_store_store_id_cards (Keyri
 			_tmp10_ = gee_abstract_list_get ((GeeAbstractList*) _tmp8_, _tmp9_);
 #line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 			id_card = (IdCard*) _tmp10_;
-#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 			_tmp11_ = id_card;
-#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp12_ = id_card_get_rules (_tmp11_, &_tmp12__length1);
-#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp13_ = _tmp12_;
-#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp13__length1 = _tmp12__length1;
-#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp14_ = g_new0 (gchar*, _tmp13__length1 + 1);
-#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			rules_patterns = _tmp14_;
-#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			rules_patterns_length1 = _tmp13__length1;
-#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_rules_patterns_size_ = rules_patterns_length1;
 #line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp15_ = id_card;
+			_tmp12_ = id_card_get_rules (_tmp11_, &_tmp12__length1);
 #line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp16_ = id_card_get_rules (_tmp15_, &_tmp16__length1);
+			_tmp13_ = _tmp12_;
 #line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp17_ = _tmp16_;
+			_tmp13__length1 = _tmp12__length1;
 #line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp17__length1 = _tmp16__length1;
+			_tmp14_ = (_tmp13_ != NULL) ? _vala_array_dup3 (_tmp13_, _tmp13__length1) : ((gpointer) _tmp13_);
 #line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp18_ = g_new0 (gchar*, _tmp17__length1 + 1);
+			_tmp14__length1 = _tmp13__length1;
 #line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			rules_always_conf = _tmp18_;
+			rules = _tmp14_;
 #line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			rules_always_conf_length1 = _tmp17__length1;
+			rules_length1 = _tmp14__length1;
 #line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_rules_size_ = rules_length1;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp15_ = id_card;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp16_ = id_card_get_services (_tmp15_, &_tmp16__length1);
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp17_ = _tmp16_;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp17__length1 = _tmp16__length1;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp18_ = (_tmp17_ != NULL) ? _vala_array_dup4 (_tmp17_, _tmp17__length1) : ((gpointer) _tmp17_);
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp18__length1 = _tmp17__length1;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			services_array = _tmp18_;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			services_array_length1 = _tmp18__length1;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_services_array_size_ = services_array_length1;
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp19_ = rules;
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp19__length1 = rules_length1;
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp20_ = g_new0 (gchar*, _tmp19__length1 + 1);
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			rules_patterns = _tmp20_;
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			rules_patterns_length1 = _tmp19__length1;
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_rules_patterns_size_ = rules_patterns_length1;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp21_ = rules;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp21__length1 = rules_length1;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp22_ = g_new0 (gchar*, _tmp21__length1 + 1);
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			rules_always_conf = _tmp22_;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			rules_always_conf_length1 = _tmp21__length1;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 			_rules_always_conf_size_ = rules_always_conf_length1;
-#line 1889 "moonshot-keyring-store.c"
+#line 2003 "moonshot-keyring-store.c"
 			{
 				gint i = 0;
-#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 				i = 0;
-#line 1894 "moonshot-keyring-store.c"
+#line 2008 "moonshot-keyring-store.c"
 				{
-					gboolean _tmp19_ = FALSE;
-#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-					_tmp19_ = TRUE;
-#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+					gboolean _tmp23_ = FALSE;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+					_tmp23_ = TRUE;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 					while (TRUE) {
-#line 1901 "moonshot-keyring-store.c"
-						gint _tmp21_ = 0;
-						IdCard* _tmp22_ = NULL;
-						Rule* _tmp23_ = NULL;
-						gint _tmp23__length1 = 0;
-						Rule* _tmp24_ = NULL;
-						gint _tmp24__length1 = 0;
-						gchar** _tmp25_ = NULL;
-						gint _tmp25__length1 = 0;
-						gint _tmp26_ = 0;
-						IdCard* _tmp27_ = NULL;
-						Rule* _tmp28_ = NULL;
-						gint _tmp28__length1 = 0;
+#line 2015 "moonshot-keyring-store.c"
+						gint _tmp25_ = 0;
+						Rule* _tmp26_ = NULL;
+						gint _tmp26__length1 = 0;
+						gchar** _tmp27_ = NULL;
+						gint _tmp27__length1 = 0;
+						gint _tmp28_ = 0;
 						Rule* _tmp29_ = NULL;
 						gint _tmp29__length1 = 0;
 						gint _tmp30_ = 0;
@@ -1920,318 +2028,299 @@ void keyring_store_store_id_cards (Keyri
 						gchar** _tmp35_ = NULL;
 						gint _tmp35__length1 = 0;
 						gint _tmp36_ = 0;
-						IdCard* _tmp37_ = NULL;
-						Rule* _tmp38_ = NULL;
-						gint _tmp38__length1 = 0;
-						Rule* _tmp39_ = NULL;
-						gint _tmp39__length1 = 0;
-						gint _tmp40_ = 0;
-						Rule _tmp41_ = {0};
-						const gchar* _tmp42_ = NULL;
-						gchar* _tmp43_ = NULL;
-						gchar* _tmp44_ = NULL;
-#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						if (!_tmp19_) {
-#line 1936 "moonshot-keyring-store.c"
-							gint _tmp20_ = 0;
-#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-							_tmp20_ = i;
-#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-							i = _tmp20_ + 1;
-#line 1942 "moonshot-keyring-store.c"
+						Rule* _tmp37_ = NULL;
+						gint _tmp37__length1 = 0;
+						gint _tmp38_ = 0;
+						Rule _tmp39_ = {0};
+						const gchar* _tmp40_ = NULL;
+						gchar* _tmp41_ = NULL;
+						gchar* _tmp42_ = NULL;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+						if (!_tmp23_) {
+#line 2041 "moonshot-keyring-store.c"
+							gint _tmp24_ = 0;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+							_tmp24_ = i;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+							i = _tmp24_ + 1;
+#line 2047 "moonshot-keyring-store.c"
 						}
-#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp19_ = FALSE;
-#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp21_ = i;
-#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp22_ = id_card;
-#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp23_ = id_card_get_rules (_tmp22_, &_tmp23__length1);
-#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp24_ = _tmp23_;
-#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp24__length1 = _tmp23__length1;
-#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						if (!(_tmp21_ < _tmp24__length1)) {
-#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+						_tmp23_ = FALSE;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+						_tmp25_ = i;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+						_tmp26_ = rules;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+						_tmp26__length1 = rules_length1;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+						if (!(_tmp25_ < _tmp26__length1)) {
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 							break;
-#line 1960 "moonshot-keyring-store.c"
+#line 2061 "moonshot-keyring-store.c"
 						}
-#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp25_ = rules_patterns;
-#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp25__length1 = rules_patterns_length1;
-#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp26_ = i;
-#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp27_ = id_card;
-#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp28_ = id_card_get_rules (_tmp27_, &_tmp28__length1);
-#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp29_ = _tmp28_;
-#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp29__length1 = _tmp28__length1;
-#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+						_tmp27_ = rules_patterns;
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+						_tmp27__length1 = rules_patterns_length1;
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+						_tmp28_ = i;
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+						_tmp29_ = rules;
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+						_tmp29__length1 = rules_length1;
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 						_tmp30_ = i;
-#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 						_tmp31_ = _tmp29_[_tmp30_];
-#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 						_tmp32_ = _tmp31_.pattern;
-#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp33_ = g_strdup (_tmp32_);
-#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_g_free0 (_tmp25_[_tmp26_]);
-#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp25_[_tmp26_] = _tmp33_;
-#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp34_ = _tmp25_[_tmp26_];
-#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp35_ = rules_always_conf;
-#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp35__length1 = rules_always_conf_length1;
-#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp36_ = i;
-#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp37_ = id_card;
-#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp38_ = id_card_get_rules (_tmp37_, &_tmp38__length1);
-#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp39_ = _tmp38_;
-#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp39__length1 = _tmp38__length1;
-#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp40_ = i;
-#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp41_ = _tmp39_[_tmp40_];
-#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp42_ = _tmp41_.always_confirm;
-#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp43_ = g_strdup (_tmp42_);
-#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_g_free0 (_tmp35_[_tmp36_]);
-#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp35_[_tmp36_] = _tmp43_;
-#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-						_tmp44_ = _tmp35_[_tmp36_];
-#line 2018 "moonshot-keyring-store.c"
-					}
-				}
-			}
 #line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp45_ = rules_patterns;
+						_tmp33_ = g_strdup (_tmp32_);
 #line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp45__length1 = rules_patterns_length1;
+						_g_free0 (_tmp27_[_tmp28_]);
 #line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp46_ = _vala_g_strjoinv (";", _tmp45_, _tmp45__length1);
+						_tmp27_[_tmp28_] = _tmp33_;
 #line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			patterns = _tmp46_;
+						_tmp34_ = _tmp27_[_tmp28_];
 #line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp47_ = rules_always_conf;
+						_tmp35_ = rules_always_conf;
 #line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp47__length1 = rules_always_conf_length1;
+						_tmp35__length1 = rules_always_conf_length1;
 #line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp48_ = _vala_g_strjoinv (";", _tmp47_, _tmp47__length1);
+						_tmp36_ = i;
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+						_tmp37_ = rules;
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+						_tmp37__length1 = rules_length1;
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+						_tmp38_ = i;
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+						_tmp39_ = _tmp37_[_tmp38_];
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+						_tmp40_ = _tmp39_.always_confirm;
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+						_tmp41_ = g_strdup (_tmp40_);
 #line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			always_conf = _tmp48_;
-#line 165 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp49_ = id_card;
-#line 165 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp50_ = id_card_get_services (_tmp49_, &_tmp50__length1);
-#line 165 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp51_ = _tmp50_;
-#line 165 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp51__length1 = _tmp50__length1;
-#line 165 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp52_ = _vala_g_strjoinv (";", _tmp51_, _tmp51__length1);
-#line 165 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			services = _tmp52_;
+						_g_free0 (_tmp35_[_tmp36_]);
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+						_tmp35_[_tmp36_] = _tmp41_;
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+						_tmp42_ = _tmp35_[_tmp36_];
+#line 2111 "moonshot-keyring-store.c"
+					}
+				}
+			}
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp43_ = rules_patterns;
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp43__length1 = rules_patterns_length1;
 #line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp53_ = gnome_keyring_attribute_list_new ();
+			_tmp44_ = _vala_g_strjoinv (";", _tmp43_, _tmp43__length1);
 #line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			attributes = _tmp53_;
+			patterns = _tmp44_;
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp45_ = rules_always_conf;
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp45__length1 = rules_always_conf_length1;
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp46_ = _vala_g_strjoinv (";", _tmp45_, _tmp45__length1);
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			always_conf = _tmp46_;
 #line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp54_ = attributes;
+			_tmp47_ = services_array;
 #line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			gnome_keyring_attribute_list_append_string (_tmp54_, KEYRING_STORE_keyring_store_attribute, KEYRING_STORE_keyring_store_version);
-#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp55_ = attributes;
-#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp56_ = id_card;
-#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp57_ = id_card_get_issuer (_tmp56_);
+			_tmp47__length1 = services_array_length1;
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp48_ = _vala_g_strjoinv (";", _tmp47_, _tmp47__length1);
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			services = _tmp48_;
 #line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp58_ = _tmp57_;
+			_tmp49_ = gnome_keyring_attribute_list_new ();
 #line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			gnome_keyring_attribute_list_append_string (_tmp55_, "Issuer", _tmp58_);
-#line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp59_ = attributes;
-#line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp60_ = id_card;
-#line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp61_ = id_card_get_username (_tmp60_);
-#line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp62_ = _tmp61_;
-#line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			gnome_keyring_attribute_list_append_string (_tmp59_, "Username", _tmp62_);
-#line 171 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp63_ = attributes;
-#line 171 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp64_ = id_card;
+			attributes = _tmp49_;
 #line 171 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp65_ = id_card_get_display_name (_tmp64_);
+			_tmp50_ = attributes;
 #line 171 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp66_ = _tmp65_;
-#line 171 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			gnome_keyring_attribute_list_append_string (_tmp63_, "DisplayName", _tmp66_);
+			gnome_keyring_attribute_list_append_string (_tmp50_, KEYRING_STORE_keyring_store_attribute, KEYRING_STORE_keyring_store_version);
 #line 172 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp67_ = attributes;
+			_tmp51_ = attributes;
 #line 172 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp68_ = services;
+			_tmp52_ = id_card;
 #line 172 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			gnome_keyring_attribute_list_append_string (_tmp67_, "Services", _tmp68_);
+			_tmp53_ = id_card_get_issuer (_tmp52_);
+#line 172 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp54_ = _tmp53_;
+#line 172 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			gnome_keyring_attribute_list_append_string (_tmp51_, "Issuer", _tmp54_);
 #line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp69_ = attributes;
+			_tmp55_ = attributes;
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp56_ = id_card;
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp57_ = id_card_get_username (_tmp56_);
 #line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp70_ = patterns;
+			_tmp58_ = _tmp57_;
 #line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			gnome_keyring_attribute_list_append_string (_tmp69_, "Rules-Pattern", _tmp70_);
+			gnome_keyring_attribute_list_append_string (_tmp55_, "Username", _tmp58_);
 #line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp71_ = attributes;
+			_tmp59_ = attributes;
 #line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp72_ = always_conf;
+			_tmp60_ = id_card;
 #line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			gnome_keyring_attribute_list_append_string (_tmp71_, "Rules-AlwaysConfirm", _tmp72_);
-#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp73_ = attributes;
-#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp74_ = id_card;
-#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp75_ = id_card_get_trust_anchor (_tmp74_);
+			_tmp61_ = id_card_get_display_name (_tmp60_);
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp62_ = _tmp61_;
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			gnome_keyring_attribute_list_append_string (_tmp59_, "DisplayName", _tmp62_);
 #line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp76_ = _tmp75_;
+			_tmp63_ = attributes;
 #line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp77_ = trust_anchor_get_ca_cert (_tmp76_);
+			_tmp64_ = services;
 #line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp78_ = _tmp77_;
-#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			gnome_keyring_attribute_list_append_string (_tmp73_, "CA-Cert", _tmp78_);
-#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp79_ = attributes;
-#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp80_ = id_card;
-#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp81_ = id_card_get_trust_anchor (_tmp80_);
+			gnome_keyring_attribute_list_append_string (_tmp63_, "Services", _tmp64_);
 #line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp82_ = _tmp81_;
+			_tmp65_ = attributes;
 #line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp83_ = trust_anchor_get_server_cert (_tmp82_);
+			_tmp66_ = patterns;
 #line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp84_ = _tmp83_;
-#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			gnome_keyring_attribute_list_append_string (_tmp79_, "Server-Cert", _tmp84_);
-#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp85_ = attributes;
+			gnome_keyring_attribute_list_append_string (_tmp65_, "Rules-Pattern", _tmp66_);
 #line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp86_ = id_card;
-#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp87_ = id_card_get_trust_anchor (_tmp86_);
-#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp88_ = _tmp87_;
+			_tmp67_ = attributes;
 #line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp89_ = trust_anchor_get_subject (_tmp88_);
+			_tmp68_ = always_conf;
 #line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp90_ = _tmp89_;
-#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			gnome_keyring_attribute_list_append_string (_tmp85_, "Subject", _tmp90_);
+			gnome_keyring_attribute_list_append_string (_tmp67_, "Rules-AlwaysConfirm", _tmp68_);
 #line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp91_ = attributes;
+			_tmp69_ = attributes;
 #line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp92_ = id_card;
+			_tmp70_ = id_card;
 #line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp93_ = id_card_get_trust_anchor (_tmp92_);
+			_tmp71_ = id_card_get_trust_anchor (_tmp70_);
 #line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp94_ = _tmp93_;
+			_tmp72_ = _tmp71_;
 #line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp95_ = trust_anchor_get_subject_alt (_tmp94_);
+			_tmp73_ = trust_anchor_get_ca_cert (_tmp72_);
 #line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp96_ = _tmp95_;
+			_tmp74_ = _tmp73_;
 #line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			gnome_keyring_attribute_list_append_string (_tmp91_, "Subject-Alt", _tmp96_);
+			gnome_keyring_attribute_list_append_string (_tmp69_, "CA-Cert", _tmp74_);
 #line 179 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp98_ = id_card;
+			_tmp75_ = attributes;
 #line 179 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp99_ = id_card_get_store_password (_tmp98_);
+			_tmp76_ = id_card;
 #line 179 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp100_ = _tmp99_;
+			_tmp77_ = id_card_get_trust_anchor (_tmp76_);
 #line 179 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			if (_tmp100_) {
-#line 179 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-				_tmp97_ = "yes";
-#line 2172 "moonshot-keyring-store.c"
-			} else {
+			_tmp78_ = _tmp77_;
 #line 179 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-				_tmp97_ = "no";
-#line 2176 "moonshot-keyring-store.c"
-			}
+			_tmp79_ = trust_anchor_get_server_cert (_tmp78_);
 #line 179 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp101_ = attributes;
+			_tmp80_ = _tmp79_;
 #line 179 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			gnome_keyring_attribute_list_append_string (_tmp101_, "StorePassword", _tmp97_);
-#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp103_ = id_card;
-#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp104_ = id_card_get_store_password (_tmp103_);
-#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp105_ = _tmp104_;
-#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			if (_tmp105_) {
-#line 2190 "moonshot-keyring-store.c"
-				IdCard* _tmp106_ = NULL;
-				const gchar* _tmp107_ = NULL;
-				const gchar* _tmp108_ = NULL;
-#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-				_tmp106_ = id_card;
-#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-				_tmp107_ = id_card_get_password (_tmp106_);
-#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-				_tmp108_ = _tmp107_;
-#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-				_tmp102_ = _tmp108_;
-#line 2202 "moonshot-keyring-store.c"
-			} else {
-#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-				_tmp102_ = "";
-#line 2206 "moonshot-keyring-store.c"
-			}
+			gnome_keyring_attribute_list_append_string (_tmp75_, "Server-Cert", _tmp80_);
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp81_ = attributes;
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp82_ = id_card;
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp83_ = id_card_get_trust_anchor (_tmp82_);
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp84_ = _tmp83_;
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp85_ = trust_anchor_get_subject (_tmp84_);
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp86_ = _tmp85_;
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			gnome_keyring_attribute_list_append_string (_tmp81_, "Subject", _tmp86_);
 #line 181 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp109_ = id_card;
+			_tmp87_ = attributes;
 #line 181 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp110_ = id_card_get_display_name (_tmp109_);
+			_tmp88_ = id_card;
 #line 181 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp111_ = _tmp110_;
+			_tmp89_ = id_card_get_trust_anchor (_tmp88_);
 #line 181 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp112_ = attributes;
+			_tmp90_ = _tmp89_;
 #line 181 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp114_ = gnome_keyring_item_create_sync (NULL, KEYRING_STORE_item_type, _tmp111_, _tmp112_, _tmp102_, TRUE, &_tmp113_);
+			_tmp91_ = trust_anchor_get_subject_alt (_tmp90_);
 #line 181 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			item_id = _tmp113_;
+			_tmp92_ = _tmp91_;
 #line 181 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_result_ = _tmp114_;
-#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			_tmp115_ = _result_;
-#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-			if (_tmp115_ != GNOME_KEYRING_RESULT_OK) {
-#line 2226 "moonshot-keyring-store.c"
-				FILE* _tmp116_ = NULL;
-				GnomeKeyringResult _tmp117_ = 0;
+			gnome_keyring_attribute_list_append_string (_tmp87_, "Subject-Alt", _tmp92_);
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp94_ = id_card;
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp95_ = id_card_get_store_password (_tmp94_);
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp96_ = _tmp95_;
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			if (_tmp96_) {
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+				_tmp93_ = "yes";
+#line 2261 "moonshot-keyring-store.c"
+			} else {
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+				_tmp93_ = "no";
+#line 2265 "moonshot-keyring-store.c"
+			}
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp97_ = attributes;
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			gnome_keyring_attribute_list_append_string (_tmp97_, "StorePassword", _tmp93_);
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp99_ = id_card;
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp100_ = id_card_get_store_password (_tmp99_);
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp101_ = _tmp100_;
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			if (_tmp101_) {
+#line 2279 "moonshot-keyring-store.c"
+				IdCard* _tmp102_ = NULL;
+				const gchar* _tmp103_ = NULL;
+				const gchar* _tmp104_ = NULL;
 #line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-				_tmp116_ = stdout;
+				_tmp102_ = id_card;
 #line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-				_tmp117_ = _result_;
+				_tmp103_ = id_card_get_password (_tmp102_);
 #line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-				fprintf (_tmp116_, "GnomeKeyring.item_create_sync() failed. result: %d", (gint) _tmp117_);
-#line 2235 "moonshot-keyring-store.c"
+				_tmp104_ = _tmp103_;
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+				_tmp98_ = _tmp104_;
+#line 2291 "moonshot-keyring-store.c"
+			} else {
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+				_tmp98_ = "";
+#line 2295 "moonshot-keyring-store.c"
+			}
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp105_ = id_card;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp106_ = id_card_get_display_name (_tmp105_);
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp107_ = _tmp106_;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp108_ = attributes;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp110_ = gnome_keyring_item_create_sync (NULL, KEYRING_STORE_item_type, _tmp107_, _tmp108_, _tmp98_, TRUE, &_tmp109_);
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			item_id = _tmp109_;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_result_ = _tmp110_;
+#line 188 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			_tmp111_ = _result_;
+#line 188 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			if (_tmp111_ != GNOME_KEYRING_RESULT_OK) {
+#line 2315 "moonshot-keyring-store.c"
+				FILE* _tmp112_ = NULL;
+				GnomeKeyringResult _tmp113_ = 0;
+#line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+				_tmp112_ = stdout;
+#line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+				_tmp113_ = _result_;
+#line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+				fprintf (_tmp112_, "GnomeKeyring.item_create_sync() failed. result: %d", (gint) _tmp113_);
+#line 2324 "moonshot-keyring-store.c"
 			}
 #line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 			_gnome_keyring_attribute_list_free0 (attributes);
@@ -2246,42 +2335,46 @@ void keyring_store_store_id_cards (Keyri
 #line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 			rules_patterns = (_vala_array_free (rules_patterns, rules_patterns_length1, (GDestroyNotify) g_free), NULL);
 #line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			services_array = (_vala_array_free (services_array, services_array_length1, (GDestroyNotify) g_free), NULL);
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+			rules = (_vala_Rule_array_free (rules, rules_length1), NULL);
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 			_g_object_unref0 (id_card);
-#line 2251 "moonshot-keyring-store.c"
+#line 2344 "moonshot-keyring-store.c"
 		}
 #line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 		_g_object_unref0 (_id_card_list);
-#line 2255 "moonshot-keyring-store.c"
+#line 2348 "moonshot-keyring-store.c"
 	}
-#line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 	keyring_store_load_id_cards (self);
-#line 2259 "moonshot-keyring-store.c"
+#line 2352 "moonshot-keyring-store.c"
 }
 
 
 KeyringStore* keyring_store_construct (GType object_type) {
 	KeyringStore * self = NULL;
 	GeeLinkedList* _tmp0_ = NULL;
-#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 	self = (KeyringStore*) g_object_new (object_type, NULL);
-#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
-	_tmp0_ = gee_linked_list_new (TYPE_ID_CARD, (GBoxedCopyFunc) g_object_ref, g_object_unref, NULL);
-#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+#line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+	_tmp0_ = gee_linked_list_new (TYPE_ID_CARD, (GBoxedCopyFunc) g_object_ref, g_object_unref, NULL, NULL, NULL);
+#line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 	_g_object_unref0 (self->priv->id_card_list);
-#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+#line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 	self->priv->id_card_list = _tmp0_;
-#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 	keyring_store_load_id_cards (self);
-#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 	return self;
-#line 2278 "moonshot-keyring-store.c"
+#line 2371 "moonshot-keyring-store.c"
 }
 
 
 KeyringStore* keyring_store_new (void) {
-#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 	return keyring_store_construct (TYPE_KEYRING_STORE);
-#line 2285 "moonshot-keyring-store.c"
+#line 2378 "moonshot-keyring-store.c"
 }
 
 
@@ -2292,7 +2385,7 @@ static void keyring_store_class_init (Ke
 	g_type_class_add_private (klass, sizeof (KeyringStorePrivate));
 #line 35 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 	G_OBJECT_CLASS (klass)->finalize = keyring_store_finalize;
-#line 2296 "moonshot-keyring-store.c"
+#line 2389 "moonshot-keyring-store.c"
 }
 
 
@@ -2309,14 +2402,14 @@ static void keyring_store_iidentity_card
 	iface->get_store_type = (IIdentityCardStoreStoreType (*)(IIdentityCardStore*)) keyring_store_real_get_store_type;
 #line 35 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 	iface->get_card_list = (GeeLinkedList* (*)(IIdentityCardStore*)) keyring_store_real_get_card_list;
-#line 2313 "moonshot-keyring-store.c"
+#line 2406 "moonshot-keyring-store.c"
 }
 
 
 static void keyring_store_instance_init (KeyringStore * self) {
 #line 35 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 	self->priv = KEYRING_STORE_GET_PRIVATE (self);
-#line 2320 "moonshot-keyring-store.c"
+#line 2413 "moonshot-keyring-store.c"
 }
 
 
@@ -2328,7 +2421,7 @@ static void keyring_store_finalize (GObj
 	_g_object_unref0 (self->priv->id_card_list);
 #line 35 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
 	G_OBJECT_CLASS (keyring_store_parent_class)->finalize (obj);
-#line 2332 "moonshot-keyring-store.c"
+#line 2425 "moonshot-keyring-store.c"
 }
 
 
--- moonshot-ui-0.7.1.orig/src/moonshot-keyring-store.vala
+++ moonshot-ui-0.7.1/src/moonshot-keyring-store.vala
@@ -111,7 +111,7 @@ public class KeyringStore : Object, IIde
                 } else if (attribute.name == "Rules-AlwaysConfirm") {
                     rules_always_confirm_index = i;
                 } else if (attribute.name == "CA-Cert") {
-                    id_card.trust_anchor.ca_cert = value;
+                    id_card.trust_anchor.ca_cert = value.strip();
                 } else if (attribute.name == "Server-Cert") {
                     id_card.trust_anchor.server_cert = value;
                 } else if (attribute.name == "Subject") {
@@ -153,16 +153,19 @@ public class KeyringStore : Object, IIde
     public void store_id_cards () {
         clear_keyring();
         foreach (IdCard id_card in this.id_card_list) {
-            string[] rules_patterns = new string[id_card.rules.length];
-            string[] rules_always_conf = new string[id_card.rules.length];
+            /* workaround for Centos vala array property bug: use temp array */
+            var rules = id_card.rules;
+            var services_array = id_card.services;
+            string[] rules_patterns = new string[rules.length];
+            string[] rules_always_conf = new string[rules.length];
             
-            for (int i=0; i<id_card.rules.length; i++) {
-                rules_patterns[i] = id_card.rules[i].pattern;
-                rules_always_conf[i] = id_card.rules[i].always_confirm;
+            for (int i=0; i<rules.length; i++) {
+                rules_patterns[i] = rules[i].pattern;
+                rules_always_conf[i] = rules[i].always_confirm;
             }
             string patterns = string.joinv(";", rules_patterns);
             string always_conf = string.joinv(";", rules_always_conf);
-            string services = string.joinv(";", id_card.services);
+            string services = string.joinv(";", services_array);
             GnomeKeyring.AttributeList attributes = new GnomeKeyring.AttributeList();
             uint32 item_id;
             attributes.append_string(keyring_store_attribute, keyring_store_version);
--- moonshot-ui-0.7.1.orig/src/moonshot-local-flat-file-store.c
+++ moonshot-ui-0.7.1/src/moonshot-local-flat-file-store.c
@@ -1,4 +1,4 @@
-/* moonshot-local-flat-file-store.c generated by valac 0.24.0, the Vala compiler
+/* moonshot-local-flat-file-store.c generated by valac 0.26.1, the Vala compiler
  * generated from moonshot-local-flat-file-store.vala, do not modify */
 
 /*
@@ -424,6 +424,29 @@ static void _vala_Rule_array_free (Rule*
 }
 
 
+static gchar* string_strip (const gchar* self) {
+	gchar* result = NULL;
+	gchar* _result_ = NULL;
+	gchar* _tmp0_ = NULL;
+	const gchar* _tmp1_ = NULL;
+#line 1115 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
+	g_return_val_if_fail (self != NULL, NULL);
+#line 1116 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
+	_tmp0_ = g_strdup (self);
+#line 1116 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
+	_result_ = _tmp0_;
+#line 1117 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
+	_tmp1_ = _result_;
+#line 1117 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
+	g_strstrip (_tmp1_);
+#line 1118 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
+	result = _result_;
+#line 1118 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
+	return result;
+#line 447 "moonshot-local-flat-file-store.c"
+}
+
+
 static void local_flat_file_store_load_id_cards (LocalFlatFileStore* self) {
 	GeeLinkedList* _tmp0_ = NULL;
 	GKeyFile* key_file = NULL;
@@ -462,7 +485,7 @@ static void local_flat_file_store_load_i
 	_tmp4_ = g_build_filename (_tmp3_, LOCAL_FLAT_FILE_STORE_FILE_NAME, NULL);
 #line 73 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 	filename = _tmp4_;
-#line 466 "moonshot-local-flat-file-store.c"
+#line 489 "moonshot-local-flat-file-store.c"
 	{
 		GKeyFile* _tmp5_ = NULL;
 		const gchar* _tmp6_ = NULL;
@@ -473,8 +496,8 @@ static void local_flat_file_store_load_i
 #line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 		g_key_file_load_from_file (_tmp5_, _tmp6_, G_KEY_FILE_NONE, &_inner_error_);
 #line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-		if (_inner_error_ != NULL) {
-#line 478 "moonshot-local-flat-file-store.c"
+		if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 501 "moonshot-local-flat-file-store.c"
 			goto __catch5_g_error;
 		}
 	}
@@ -507,11 +530,11 @@ static void local_flat_file_store_load_i
 		_g_key_file_free0 (key_file);
 #line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 		return;
-#line 511 "moonshot-local-flat-file-store.c"
+#line 534 "moonshot-local-flat-file-store.c"
 	}
 	__finally5:
 #line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-	if (_inner_error_ != NULL) {
+	if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 		_g_free0 (filename);
 #line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
@@ -524,7 +547,7 @@ static void local_flat_file_store_load_i
 		g_clear_error (&_inner_error_);
 #line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 		return;
-#line 528 "moonshot-local-flat-file-store.c"
+#line 551 "moonshot-local-flat-file-store.c"
 	}
 #line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 	_tmp10_ = key_file;
@@ -540,7 +563,7 @@ static void local_flat_file_store_load_i
 	_tmp13_ = identities_uris;
 #line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 	_tmp13__length1 = identities_uris_length1;
-#line 544 "moonshot-local-flat-file-store.c"
+#line 567 "moonshot-local-flat-file-store.c"
 	{
 		gchar** identity_collection = NULL;
 		gint identity_collection_length1 = 0;
@@ -552,14 +575,14 @@ static void local_flat_file_store_load_i
 		identity_collection_length1 = _tmp13__length1;
 #line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 		for (identity_it = 0; identity_it < _tmp13__length1; identity_it = identity_it + 1) {
-#line 556 "moonshot-local-flat-file-store.c"
+#line 579 "moonshot-local-flat-file-store.c"
 			gchar* _tmp14_ = NULL;
 			gchar* identity = NULL;
 #line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 			_tmp14_ = g_strdup (identity_collection[identity_it]);
 #line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 			identity = _tmp14_;
-#line 563 "moonshot-local-flat-file-store.c"
+#line 586 "moonshot-local-flat-file-store.c"
 			{
 				{
 					IdCard* id_card = NULL;
@@ -609,28 +632,32 @@ static void local_flat_file_store_load_i
 					TrustAnchor* _tmp105_ = NULL;
 					TrustAnchor* _tmp106_ = NULL;
 					gchar* _tmp107_ = NULL;
-					GKeyFile* _tmp108_ = NULL;
-					const gchar* _tmp109_ = NULL;
+					gchar* _tmp108_ = NULL;
+					gchar* _tmp109_ = NULL;
 					gchar* _tmp110_ = NULL;
-					IdCard* _tmp111_ = NULL;
-					TrustAnchor* _tmp112_ = NULL;
-					TrustAnchor* _tmp113_ = NULL;
+					gchar* _tmp111_ = NULL;
+					GKeyFile* _tmp112_ = NULL;
+					const gchar* _tmp113_ = NULL;
 					gchar* _tmp114_ = NULL;
-					GKeyFile* _tmp115_ = NULL;
-					const gchar* _tmp116_ = NULL;
-					gchar* _tmp117_ = NULL;
-					IdCard* _tmp118_ = NULL;
-					TrustAnchor* _tmp119_ = NULL;
-					TrustAnchor* _tmp120_ = NULL;
+					IdCard* _tmp115_ = NULL;
+					TrustAnchor* _tmp116_ = NULL;
+					TrustAnchor* _tmp117_ = NULL;
+					gchar* _tmp118_ = NULL;
+					GKeyFile* _tmp119_ = NULL;
+					const gchar* _tmp120_ = NULL;
 					gchar* _tmp121_ = NULL;
-					GKeyFile* _tmp122_ = NULL;
-					const gchar* _tmp123_ = NULL;
-					gchar* _tmp124_ = NULL;
-					IdCard* _tmp125_ = NULL;
-					TrustAnchor* _tmp126_ = NULL;
-					TrustAnchor* _tmp127_ = NULL;
-					GeeLinkedList* _tmp128_ = NULL;
+					IdCard* _tmp122_ = NULL;
+					TrustAnchor* _tmp123_ = NULL;
+					TrustAnchor* _tmp124_ = NULL;
+					gchar* _tmp125_ = NULL;
+					GKeyFile* _tmp126_ = NULL;
+					const gchar* _tmp127_ = NULL;
+					gchar* _tmp128_ = NULL;
 					IdCard* _tmp129_ = NULL;
+					TrustAnchor* _tmp130_ = NULL;
+					TrustAnchor* _tmp131_ = NULL;
+					GeeLinkedList* _tmp132_ = NULL;
+					IdCard* _tmp133_ = NULL;
 #line 86 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 					_tmp15_ = id_card_new ();
 #line 86 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
@@ -644,10 +671,10 @@ static void local_flat_file_store_load_i
 #line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 					_tmp16_ = _tmp19_;
 #line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					if (_inner_error_ != NULL) {
+					if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_g_object_unref0 (id_card);
-#line 651 "moonshot-local-flat-file-store.c"
+#line 678 "moonshot-local-flat-file-store.c"
 						goto __catch6_g_error;
 					}
 #line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
@@ -663,12 +690,12 @@ static void local_flat_file_store_load_i
 #line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 					_tmp21_ = _tmp24_;
 #line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					if (_inner_error_ != NULL) {
+					if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_g_free0 (_tmp16_);
 #line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_g_object_unref0 (id_card);
-#line 672 "moonshot-local-flat-file-store.c"
+#line 699 "moonshot-local-flat-file-store.c"
 						goto __catch6_g_error;
 					}
 #line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
@@ -684,14 +711,14 @@ static void local_flat_file_store_load_i
 #line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 					_tmp26_ = _tmp29_;
 #line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					if (_inner_error_ != NULL) {
+					if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_g_free0 (_tmp21_);
 #line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_g_free0 (_tmp16_);
 #line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_g_object_unref0 (id_card);
-#line 695 "moonshot-local-flat-file-store.c"
+#line 722 "moonshot-local-flat-file-store.c"
 						goto __catch6_g_error;
 					}
 #line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
@@ -711,7 +738,7 @@ static void local_flat_file_store_load_i
 #line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 					__tmp31__size_ = _tmp31__length1;
 #line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					if (_inner_error_ != NULL) {
+					if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_g_free0 (_tmp26_);
 #line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
@@ -720,7 +747,7 @@ static void local_flat_file_store_load_i
 						_g_free0 (_tmp16_);
 #line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_g_object_unref0 (id_card);
-#line 724 "moonshot-local-flat-file-store.c"
+#line 751 "moonshot-local-flat-file-store.c"
 						goto __catch6_g_error;
 					}
 #line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
@@ -736,7 +763,7 @@ static void local_flat_file_store_load_i
 #line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 					_tmp37_ = _tmp40_;
 #line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					if (_inner_error_ != NULL) {
+					if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_tmp31_ = (_vala_array_free (_tmp31_, _tmp31__length1, (GDestroyNotify) g_free), NULL);
 #line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
@@ -747,7 +774,7 @@ static void local_flat_file_store_load_i
 						_g_free0 (_tmp16_);
 #line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_g_object_unref0 (id_card);
-#line 751 "moonshot-local-flat-file-store.c"
+#line 778 "moonshot-local-flat-file-store.c"
 						goto __catch6_g_error;
 					}
 #line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
@@ -763,7 +790,7 @@ static void local_flat_file_store_load_i
 #line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 					_tmp42_ = _tmp45_;
 #line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					if (_inner_error_ != NULL) {
+					if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_g_free0 (_tmp37_);
 #line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
@@ -776,12 +803,12 @@ static void local_flat_file_store_load_i
 						_g_free0 (_tmp16_);
 #line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_g_object_unref0 (id_card);
-#line 780 "moonshot-local-flat-file-store.c"
+#line 807 "moonshot-local-flat-file-store.c"
 						goto __catch6_g_error;
 					}
 #line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 					if (_tmp42_) {
-#line 785 "moonshot-local-flat-file-store.c"
+#line 812 "moonshot-local-flat-file-store.c"
 						gchar* _tmp46_ = NULL;
 						GKeyFile* _tmp47_ = NULL;
 						const gchar* _tmp48_ = NULL;
@@ -798,7 +825,7 @@ static void local_flat_file_store_load_i
 #line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_tmp46_ = _tmp49_;
 #line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-						if (_inner_error_ != NULL) {
+						if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 							_g_free0 (_tmp37_);
 #line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
@@ -811,7 +838,7 @@ static void local_flat_file_store_load_i
 							_g_free0 (_tmp16_);
 #line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 							_g_object_unref0 (id_card);
-#line 815 "moonshot-local-flat-file-store.c"
+#line 842 "moonshot-local-flat-file-store.c"
 							goto __catch6_g_error;
 						}
 #line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
@@ -828,7 +855,7 @@ static void local_flat_file_store_load_i
 						_g_free0 (_tmp52_);
 #line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_g_free0 (_tmp46_);
-#line 832 "moonshot-local-flat-file-store.c"
+#line 859 "moonshot-local-flat-file-store.c"
 					} else {
 						gboolean _tmp53_ = FALSE;
 						IdCard* _tmp54_ = NULL;
@@ -843,7 +870,7 @@ static void local_flat_file_store_load_i
 						_tmp56_ = _tmp55_;
 #line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						if (_tmp56_ != NULL) {
-#line 847 "moonshot-local-flat-file-store.c"
+#line 874 "moonshot-local-flat-file-store.c"
 							IdCard* _tmp57_ = NULL;
 							const gchar* _tmp58_ = NULL;
 							const gchar* _tmp59_ = NULL;
@@ -855,17 +882,17 @@ static void local_flat_file_store_load_i
 							_tmp59_ = _tmp58_;
 #line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 							_tmp53_ = g_strcmp0 (_tmp59_, "") != 0;
-#line 859 "moonshot-local-flat-file-store.c"
+#line 886 "moonshot-local-flat-file-store.c"
 						} else {
 #line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 							_tmp53_ = FALSE;
-#line 863 "moonshot-local-flat-file-store.c"
+#line 890 "moonshot-local-flat-file-store.c"
 						}
 #line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_tmp60_ = id_card;
 #line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						id_card_set_store_password (_tmp60_, _tmp53_);
-#line 869 "moonshot-local-flat-file-store.c"
+#line 896 "moonshot-local-flat-file-store.c"
 					}
 #line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 					_tmp63_ = key_file;
@@ -876,7 +903,7 @@ static void local_flat_file_store_load_i
 #line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 					_tmp62_ = _tmp65_;
 #line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					if (_inner_error_ != NULL) {
+					if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_g_free0 (_tmp37_);
 #line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
@@ -889,12 +916,12 @@ static void local_flat_file_store_load_i
 						_g_free0 (_tmp16_);
 #line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_g_object_unref0 (id_card);
-#line 893 "moonshot-local-flat-file-store.c"
+#line 920 "moonshot-local-flat-file-store.c"
 						goto __catch6_g_error;
 					}
 #line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 					if (_tmp62_) {
-#line 898 "moonshot-local-flat-file-store.c"
+#line 925 "moonshot-local-flat-file-store.c"
 						gboolean _tmp66_ = FALSE;
 						GKeyFile* _tmp67_ = NULL;
 						const gchar* _tmp68_ = NULL;
@@ -908,7 +935,7 @@ static void local_flat_file_store_load_i
 #line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_tmp66_ = _tmp69_;
 #line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-						if (_inner_error_ != NULL) {
+						if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 							_g_free0 (_tmp37_);
 #line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
@@ -921,20 +948,20 @@ static void local_flat_file_store_load_i
 							_g_free0 (_tmp16_);
 #line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 							_g_object_unref0 (id_card);
-#line 925 "moonshot-local-flat-file-store.c"
+#line 952 "moonshot-local-flat-file-store.c"
 							goto __catch6_g_error;
 						}
 #line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_tmp61_ = _tmp66_;
-#line 930 "moonshot-local-flat-file-store.c"
+#line 957 "moonshot-local-flat-file-store.c"
 					} else {
 #line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_tmp61_ = FALSE;
-#line 934 "moonshot-local-flat-file-store.c"
+#line 961 "moonshot-local-flat-file-store.c"
 					}
 #line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 					if (_tmp61_) {
-#line 938 "moonshot-local-flat-file-store.c"
+#line 965 "moonshot-local-flat-file-store.c"
 						gchar** rules_patterns = NULL;
 						GKeyFile* _tmp70_ = NULL;
 						const gchar* _tmp71_ = NULL;
@@ -966,7 +993,7 @@ static void local_flat_file_store_load_i
 #line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_rules_patterns_size_ = rules_patterns_length1;
 #line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-						if (_inner_error_ != NULL) {
+						if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 							_g_free0 (_tmp37_);
 #line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
@@ -979,7 +1006,7 @@ static void local_flat_file_store_load_i
 							_g_free0 (_tmp16_);
 #line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 							_g_object_unref0 (id_card);
-#line 983 "moonshot-local-flat-file-store.c"
+#line 1010 "moonshot-local-flat-file-store.c"
 							goto __catch6_g_error;
 						}
 #line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
@@ -995,7 +1022,7 @@ static void local_flat_file_store_load_i
 #line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_rules_always_conf_size_ = rules_always_conf_length1;
 #line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-						if (_inner_error_ != NULL) {
+						if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 							rules_patterns = (_vala_array_free (rules_patterns, rules_patterns_length1, (GDestroyNotify) g_free), NULL);
 #line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
@@ -1010,7 +1037,7 @@ static void local_flat_file_store_load_i
 							_g_free0 (_tmp16_);
 #line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 							_g_object_unref0 (id_card);
-#line 1014 "moonshot-local-flat-file-store.c"
+#line 1041 "moonshot-local-flat-file-store.c"
 							goto __catch6_g_error;
 						}
 #line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
@@ -1023,7 +1050,7 @@ static void local_flat_file_store_load_i
 						_tmp79__length1 = rules_always_conf_length1;
 #line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						if (_tmp78__length1 == _tmp79__length1) {
-#line 1027 "moonshot-local-flat-file-store.c"
+#line 1054 "moonshot-local-flat-file-store.c"
 							Rule* rules = NULL;
 							gchar** _tmp80_ = NULL;
 							gint _tmp80__length1 = 0;
@@ -1045,19 +1072,19 @@ static void local_flat_file_store_load_i
 							rules_length1 = _tmp80__length1;
 #line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 							_rules_size_ = rules_length1;
-#line 1049 "moonshot-local-flat-file-store.c"
+#line 1076 "moonshot-local-flat-file-store.c"
 							{
 								gint i = 0;
 #line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 								i = 0;
-#line 1054 "moonshot-local-flat-file-store.c"
+#line 1081 "moonshot-local-flat-file-store.c"
 								{
 									gboolean _tmp82_ = FALSE;
 #line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 									_tmp82_ = TRUE;
 #line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 									while (TRUE) {
-#line 1061 "moonshot-local-flat-file-store.c"
+#line 1088 "moonshot-local-flat-file-store.c"
 										gint _tmp84_ = 0;
 										gchar** _tmp85_ = NULL;
 										gint _tmp85__length1 = 0;
@@ -1078,13 +1105,13 @@ static void local_flat_file_store_load_i
 										Rule _tmp97_ = {0};
 #line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 										if (!_tmp82_) {
-#line 1082 "moonshot-local-flat-file-store.c"
+#line 1109 "moonshot-local-flat-file-store.c"
 											gint _tmp83_ = 0;
 #line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 											_tmp83_ = i;
 #line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 											i = _tmp83_ + 1;
-#line 1088 "moonshot-local-flat-file-store.c"
+#line 1115 "moonshot-local-flat-file-store.c"
 										}
 #line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 										_tmp82_ = FALSE;
@@ -1098,7 +1125,7 @@ static void local_flat_file_store_load_i
 										if (!(_tmp84_ < _tmp85__length1)) {
 #line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 											break;
-#line 1102 "moonshot-local-flat-file-store.c"
+#line 1129 "moonshot-local-flat-file-store.c"
 										}
 #line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 										_tmp86_ = rules;
@@ -1140,7 +1167,7 @@ static void local_flat_file_store_load_i
 										_tmp86_[_tmp87_] = _tmp96_;
 #line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 										_tmp97_ = _tmp86_[_tmp87_];
-#line 1144 "moonshot-local-flat-file-store.c"
+#line 1171 "moonshot-local-flat-file-store.c"
 									}
 								}
 							}
@@ -1154,13 +1181,13 @@ static void local_flat_file_store_load_i
 							id_card_set_rules (_tmp98_, _tmp99_, _tmp99__length1);
 #line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 							rules = (_vala_Rule_array_free (rules, rules_length1), NULL);
-#line 1158 "moonshot-local-flat-file-store.c"
+#line 1185 "moonshot-local-flat-file-store.c"
 						}
 #line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						rules_always_conf = (_vala_array_free (rules_always_conf, rules_always_conf_length1, (GDestroyNotify) g_free), NULL);
 #line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						rules_patterns = (_vala_array_free (rules_patterns, rules_patterns_length1, (GDestroyNotify) g_free), NULL);
-#line 1164 "moonshot-local-flat-file-store.c"
+#line 1191 "moonshot-local-flat-file-store.c"
 					}
 #line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 					_tmp101_ = key_file;
@@ -1171,7 +1198,7 @@ static void local_flat_file_store_load_i
 #line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 					_tmp100_ = _tmp103_;
 #line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					if (_inner_error_ != NULL) {
+					if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_g_free0 (_tmp37_);
 #line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
@@ -1184,7 +1211,7 @@ static void local_flat_file_store_load_i
 						_g_free0 (_tmp16_);
 #line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_g_object_unref0 (id_card);
-#line 1188 "moonshot-local-flat-file-store.c"
+#line 1215 "moonshot-local-flat-file-store.c"
 						goto __catch6_g_error;
 					}
 #line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
@@ -1194,17 +1221,31 @@ static void local_flat_file_store_load_i
 #line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 					_tmp106_ = _tmp105_;
 #line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					trust_anchor_set_ca_cert (_tmp106_, _tmp100_);
+					_tmp107_ = _tmp100_;
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+					_tmp100_ = NULL;
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+					_tmp108_ = _tmp107_;
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+					_tmp109_ = string_strip (_tmp108_);
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+					_tmp110_ = _tmp109_;
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+					trust_anchor_set_ca_cert (_tmp106_, _tmp110_);
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+					_g_free0 (_tmp110_);
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+					_g_free0 (_tmp108_);
 #line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					_tmp108_ = key_file;
+					_tmp112_ = key_file;
 #line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					_tmp109_ = identity;
+					_tmp113_ = identity;
 #line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					_tmp110_ = g_key_file_get_string (_tmp108_, _tmp109_, "Subject", &_inner_error_);
+					_tmp114_ = g_key_file_get_string (_tmp112_, _tmp113_, "Subject", &_inner_error_);
 #line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					_tmp107_ = _tmp110_;
+					_tmp111_ = _tmp114_;
 #line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					if (_inner_error_ != NULL) {
+					if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_g_free0 (_tmp100_);
 #line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
@@ -1219,29 +1260,29 @@ static void local_flat_file_store_load_i
 						_g_free0 (_tmp16_);
 #line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_g_object_unref0 (id_card);
-#line 1223 "moonshot-local-flat-file-store.c"
+#line 1264 "moonshot-local-flat-file-store.c"
 						goto __catch6_g_error;
 					}
 #line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					_tmp111_ = id_card;
+					_tmp115_ = id_card;
 #line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					_tmp112_ = id_card_get_trust_anchor (_tmp111_);
+					_tmp116_ = id_card_get_trust_anchor (_tmp115_);
 #line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					_tmp113_ = _tmp112_;
+					_tmp117_ = _tmp116_;
 #line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					trust_anchor_set_subject (_tmp113_, _tmp107_);
+					trust_anchor_set_subject (_tmp117_, _tmp111_);
 #line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					_tmp115_ = key_file;
+					_tmp119_ = key_file;
 #line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					_tmp116_ = identity;
+					_tmp120_ = identity;
 #line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					_tmp117_ = g_key_file_get_string (_tmp115_, _tmp116_, "SubjectAlt", &_inner_error_);
+					_tmp121_ = g_key_file_get_string (_tmp119_, _tmp120_, "SubjectAlt", &_inner_error_);
 #line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					_tmp114_ = _tmp117_;
+					_tmp118_ = _tmp121_;
 #line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					if (_inner_error_ != NULL) {
+					if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-						_g_free0 (_tmp107_);
+						_g_free0 (_tmp111_);
 #line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_g_free0 (_tmp100_);
 #line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
@@ -1256,31 +1297,31 @@ static void local_flat_file_store_load_i
 						_g_free0 (_tmp16_);
 #line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_g_object_unref0 (id_card);
-#line 1260 "moonshot-local-flat-file-store.c"
+#line 1301 "moonshot-local-flat-file-store.c"
 						goto __catch6_g_error;
 					}
 #line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					_tmp118_ = id_card;
+					_tmp122_ = id_card;
 #line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					_tmp119_ = id_card_get_trust_anchor (_tmp118_);
+					_tmp123_ = id_card_get_trust_anchor (_tmp122_);
 #line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					_tmp120_ = _tmp119_;
+					_tmp124_ = _tmp123_;
 #line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					trust_anchor_set_subject_alt (_tmp120_, _tmp114_);
+					trust_anchor_set_subject_alt (_tmp124_, _tmp118_);
 #line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					_tmp122_ = key_file;
+					_tmp126_ = key_file;
 #line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					_tmp123_ = identity;
+					_tmp127_ = identity;
 #line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					_tmp124_ = g_key_file_get_string (_tmp122_, _tmp123_, "ServerCert", &_inner_error_);
+					_tmp128_ = g_key_file_get_string (_tmp126_, _tmp127_, "ServerCert", &_inner_error_);
 #line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					_tmp121_ = _tmp124_;
+					_tmp125_ = _tmp128_;
 #line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					if (_inner_error_ != NULL) {
+					if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-						_g_free0 (_tmp114_);
+						_g_free0 (_tmp118_);
 #line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-						_g_free0 (_tmp107_);
+						_g_free0 (_tmp111_);
 #line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_g_free0 (_tmp100_);
 #line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
@@ -1295,29 +1336,29 @@ static void local_flat_file_store_load_i
 						_g_free0 (_tmp16_);
 #line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_g_object_unref0 (id_card);
-#line 1299 "moonshot-local-flat-file-store.c"
+#line 1340 "moonshot-local-flat-file-store.c"
 						goto __catch6_g_error;
 					}
 #line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					_tmp125_ = id_card;
+					_tmp129_ = id_card;
 #line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					_tmp126_ = id_card_get_trust_anchor (_tmp125_);
+					_tmp130_ = id_card_get_trust_anchor (_tmp129_);
 #line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					_tmp127_ = _tmp126_;
+					_tmp131_ = _tmp130_;
 #line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					trust_anchor_set_server_cert (_tmp127_, _tmp121_);
+					trust_anchor_set_server_cert (_tmp131_, _tmp125_);
 #line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					_tmp128_ = self->priv->id_card_list;
+					_tmp132_ = self->priv->id_card_list;
 #line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					_tmp129_ = id_card;
+					_tmp133_ = id_card;
 #line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					gee_abstract_collection_add ((GeeAbstractCollection*) _tmp128_, _tmp129_);
+					gee_abstract_collection_add ((GeeAbstractCollection*) _tmp132_, _tmp133_);
 #line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					_g_free0 (_tmp121_);
+					_g_free0 (_tmp125_);
 #line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					_g_free0 (_tmp114_);
+					_g_free0 (_tmp118_);
 #line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					_g_free0 (_tmp107_);
+					_g_free0 (_tmp111_);
 #line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 					_g_free0 (_tmp100_);
 #line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
@@ -1332,34 +1373,34 @@ static void local_flat_file_store_load_i
 					_g_free0 (_tmp16_);
 #line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 					_g_object_unref0 (id_card);
-#line 1336 "moonshot-local-flat-file-store.c"
+#line 1377 "moonshot-local-flat-file-store.c"
 				}
 				goto __finally6;
 				__catch6_g_error:
 				{
 					GError* e = NULL;
-					FILE* _tmp130_ = NULL;
-					GError* _tmp131_ = NULL;
-					const gchar* _tmp132_ = NULL;
+					FILE* _tmp134_ = NULL;
+					GError* _tmp135_ = NULL;
+					const gchar* _tmp136_ = NULL;
 #line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 					e = _inner_error_;
 #line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 					_inner_error_ = NULL;
 #line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					_tmp130_ = stdout;
+					_tmp134_ = stdout;
 #line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					_tmp131_ = e;
+					_tmp135_ = e;
 #line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					_tmp132_ = _tmp131_->message;
+					_tmp136_ = _tmp135_->message;
 #line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-					fprintf (_tmp130_, "Error:  %s\n", _tmp132_);
+					fprintf (_tmp134_, "Error:  %s\n", _tmp136_);
 #line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 					_g_error_free0 (e);
-#line 1359 "moonshot-local-flat-file-store.c"
+#line 1400 "moonshot-local-flat-file-store.c"
 				}
 				__finally6:
 #line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-				if (_inner_error_ != NULL) {
+				if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 					_g_free0 (identity);
 #line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
@@ -1376,11 +1417,11 @@ static void local_flat_file_store_load_i
 					g_clear_error (&_inner_error_);
 #line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 					return;
-#line 1380 "moonshot-local-flat-file-store.c"
+#line 1421 "moonshot-local-flat-file-store.c"
 				}
 #line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 				_g_free0 (identity);
-#line 1384 "moonshot-local-flat-file-store.c"
+#line 1425 "moonshot-local-flat-file-store.c"
 			}
 		}
 	}
@@ -1392,7 +1433,7 @@ static void local_flat_file_store_load_i
 	_g_free0 (path);
 #line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 	_g_key_file_free0 (key_file);
-#line 1396 "moonshot-local-flat-file-store.c"
+#line 1437 "moonshot-local-flat-file-store.c"
 }
 
 
@@ -1419,19 +1460,19 @@ static gchar* local_flat_file_store_get_
 	_tmp3_ = g_file_test (_tmp2_, G_FILE_TEST_EXISTS);
 #line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 	if (!_tmp3_) {
-#line 1423 "moonshot-local-flat-file-store.c"
+#line 1464 "moonshot-local-flat-file-store.c"
 		const gchar* _tmp4_ = NULL;
 #line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 		_tmp4_ = path;
 #line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 		g_mkdir_with_parents (_tmp4_, 0700);
-#line 1429 "moonshot-local-flat-file-store.c"
+#line 1470 "moonshot-local-flat-file-store.c"
 	}
 #line 135 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 	result = path;
 #line 135 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 	return result;
-#line 1435 "moonshot-local-flat-file-store.c"
+#line 1476 "moonshot-local-flat-file-store.c"
 }
 
 
@@ -1442,17 +1483,17 @@ static Rule* _vala_array_dup1 (Rule* sel
 	result = g_new0 (Rule, length);
 #line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 	for (i = 0; i < length; i++) {
-#line 1446 "moonshot-local-flat-file-store.c"
+#line 1487 "moonshot-local-flat-file-store.c"
 		Rule _tmp0_ = {0};
 #line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 		rule_copy (&self[i], &_tmp0_);
 #line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 		result[i] = _tmp0_;
-#line 1452 "moonshot-local-flat-file-store.c"
+#line 1493 "moonshot-local-flat-file-store.c"
 	}
 #line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 	return result;
-#line 1456 "moonshot-local-flat-file-store.c"
+#line 1497 "moonshot-local-flat-file-store.c"
 }
 
 
@@ -1463,17 +1504,17 @@ static gchar** _vala_array_dup2 (gchar**
 	result = g_new0 (gchar*, length + 1);
 #line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 	for (i = 0; i < length; i++) {
-#line 1467 "moonshot-local-flat-file-store.c"
+#line 1508 "moonshot-local-flat-file-store.c"
 		gchar* _tmp0_ = NULL;
 #line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 		_tmp0_ = g_strdup (self[i]);
 #line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 		result[i] = _tmp0_;
-#line 1473 "moonshot-local-flat-file-store.c"
+#line 1514 "moonshot-local-flat-file-store.c"
 	}
 #line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 	return result;
-#line 1477 "moonshot-local-flat-file-store.c"
+#line 1518 "moonshot-local-flat-file-store.c"
 }
 
 
@@ -1489,41 +1530,41 @@ static guint8* string_get_data (const gc
 	gint _tmp3__length1 = 0;
 	guint8* _tmp4_ = NULL;
 	gint _tmp4__length1 = 0;
-#line 1296 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 1300 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	g_return_val_if_fail (self != NULL, NULL);
-#line 1297 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 1301 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	res = (guint8*) self;
-#line 1297 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 1301 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	res_length1 = -1;
-#line 1297 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 1301 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	_res_size_ = res_length1;
-#line 1298 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 1302 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	_tmp0_ = strlen (self);
-#line 1298 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 1302 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	_tmp1_ = _tmp0_;
-#line 1298 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 1302 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	res_length1 = (gint) _tmp1_;
-#line 1298 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 1302 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	_tmp2_ = res_length1;
-#line 1299 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 1303 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	_tmp3_ = res;
-#line 1299 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 1303 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	_tmp3__length1 = res_length1;
-#line 1299 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 1303 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	_tmp4_ = _tmp3_;
-#line 1299 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 1303 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	_tmp4__length1 = _tmp3__length1;
-#line 1299 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 1303 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	if (result_length1) {
-#line 1299 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 1303 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		*result_length1 = _tmp4__length1;
-#line 1521 "moonshot-local-flat-file-store.c"
+#line 1562 "moonshot-local-flat-file-store.c"
 	}
-#line 1299 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 1303 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	result = _tmp4_;
-#line 1299 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 1303 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	return result;
-#line 1527 "moonshot-local-flat-file-store.c"
+#line 1568 "moonshot-local-flat-file-store.c"
 }
 
 
@@ -1540,7 +1581,7 @@ void local_flat_file_store_store_id_card
 	_tmp0_ = g_key_file_new ();
 #line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 	key_file = _tmp0_;
-#line 1544 "moonshot-local-flat-file-store.c"
+#line 1585 "moonshot-local-flat-file-store.c"
 	{
 		GeeLinkedList* _id_card_list = NULL;
 		GeeLinkedList* _tmp1_ = NULL;
@@ -1568,7 +1609,7 @@ void local_flat_file_store_store_id_card
 		_id_card_index = -1;
 #line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 		while (TRUE) {
-#line 1572 "moonshot-local-flat-file-store.c"
+#line 1613 "moonshot-local-flat-file-store.c"
 			gint _tmp6_ = 0;
 			gint _tmp7_ = 0;
 			gint _tmp8_ = 0;
@@ -1711,7 +1752,7 @@ void local_flat_file_store_store_id_card
 			if (!(_tmp7_ < _tmp8_)) {
 #line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 				break;
-#line 1715 "moonshot-local-flat-file-store.c"
+#line 1756 "moonshot-local-flat-file-store.c"
 			}
 #line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 			_tmp9_ = _id_card_list;
@@ -1789,19 +1830,19 @@ void local_flat_file_store_store_id_card
 			rules_always_conf_length1 = _tmp23__length1;
 #line 146 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 			_rules_always_conf_size_ = rules_always_conf_length1;
-#line 1793 "moonshot-local-flat-file-store.c"
+#line 1834 "moonshot-local-flat-file-store.c"
 			{
 				gint i = 0;
 #line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 				i = 0;
-#line 1798 "moonshot-local-flat-file-store.c"
+#line 1839 "moonshot-local-flat-file-store.c"
 				{
 					gboolean _tmp25_ = FALSE;
 #line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 					_tmp25_ = TRUE;
 #line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 					while (TRUE) {
-#line 1805 "moonshot-local-flat-file-store.c"
+#line 1846 "moonshot-local-flat-file-store.c"
 						gint _tmp27_ = 0;
 						Rule* _tmp28_ = NULL;
 						gint _tmp28__length1 = 0;
@@ -1827,13 +1868,13 @@ void local_flat_file_store_store_id_card
 						gchar* _tmp44_ = NULL;
 #line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						if (!_tmp25_) {
-#line 1831 "moonshot-local-flat-file-store.c"
+#line 1872 "moonshot-local-flat-file-store.c"
 							gint _tmp26_ = 0;
 #line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 							_tmp26_ = i;
 #line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 							i = _tmp26_ + 1;
-#line 1837 "moonshot-local-flat-file-store.c"
+#line 1878 "moonshot-local-flat-file-store.c"
 						}
 #line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_tmp25_ = FALSE;
@@ -1847,7 +1888,7 @@ void local_flat_file_store_store_id_card
 						if (!(_tmp27_ < _tmp28__length1)) {
 #line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 							break;
-#line 1851 "moonshot-local-flat-file-store.c"
+#line 1892 "moonshot-local-flat-file-store.c"
 						}
 #line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_tmp29_ = rules_patterns;
@@ -1897,7 +1938,7 @@ void local_flat_file_store_store_id_card
 						_tmp37_[_tmp38_] = _tmp43_;
 #line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 						_tmp44_ = _tmp37_[_tmp38_];
-#line 1901 "moonshot-local-flat-file-store.c"
+#line 1942 "moonshot-local-flat-file-store.c"
 					}
 				}
 			}
@@ -1913,7 +1954,7 @@ void local_flat_file_store_store_id_card
 			if (_tmp45_ == NULL) {
 #line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 				_tmp45_ = "";
-#line 1917 "moonshot-local-flat-file-store.c"
+#line 1958 "moonshot-local-flat-file-store.c"
 			}
 #line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 			_tmp49_ = key_file;
@@ -1937,7 +1978,7 @@ void local_flat_file_store_store_id_card
 			if (_tmp53_ == NULL) {
 #line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 				_tmp53_ = "";
-#line 1941 "moonshot-local-flat-file-store.c"
+#line 1982 "moonshot-local-flat-file-store.c"
 			}
 #line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 			_tmp57_ = key_file;
@@ -1961,7 +2002,7 @@ void local_flat_file_store_store_id_card
 			if (_tmp61_ == NULL) {
 #line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 				_tmp61_ = "";
-#line 1965 "moonshot-local-flat-file-store.c"
+#line 2006 "moonshot-local-flat-file-store.c"
 			}
 #line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 			_tmp65_ = key_file;
@@ -1981,7 +2022,7 @@ void local_flat_file_store_store_id_card
 			_tmp72_ = _tmp71_;
 #line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 			if (_tmp72_) {
-#line 1985 "moonshot-local-flat-file-store.c"
+#line 2026 "moonshot-local-flat-file-store.c"
 				IdCard* _tmp73_ = NULL;
 				const gchar* _tmp74_ = NULL;
 				const gchar* _tmp75_ = NULL;
@@ -1993,15 +2034,15 @@ void local_flat_file_store_store_id_card
 				_tmp75_ = _tmp74_;
 #line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 				_tmp69_ = _tmp75_ != NULL;
-#line 1997 "moonshot-local-flat-file-store.c"
+#line 2038 "moonshot-local-flat-file-store.c"
 			} else {
 #line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 				_tmp69_ = FALSE;
-#line 2001 "moonshot-local-flat-file-store.c"
+#line 2042 "moonshot-local-flat-file-store.c"
 			}
 #line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 			if (_tmp69_) {
-#line 2005 "moonshot-local-flat-file-store.c"
+#line 2046 "moonshot-local-flat-file-store.c"
 				GKeyFile* _tmp76_ = NULL;
 				IdCard* _tmp77_ = NULL;
 				const gchar* _tmp78_ = NULL;
@@ -2025,7 +2066,7 @@ void local_flat_file_store_store_id_card
 				_tmp82_ = _tmp81_;
 #line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 				g_key_file_set_string (_tmp76_, _tmp79_, "Password", _tmp82_);
-#line 2029 "moonshot-local-flat-file-store.c"
+#line 2070 "moonshot-local-flat-file-store.c"
 			} else {
 				GKeyFile* _tmp83_ = NULL;
 				IdCard* _tmp84_ = NULL;
@@ -2041,7 +2082,7 @@ void local_flat_file_store_store_id_card
 				_tmp86_ = _tmp85_;
 #line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 				g_key_file_set_string (_tmp83_, _tmp86_, "Password", "");
-#line 2045 "moonshot-local-flat-file-store.c"
+#line 2086 "moonshot-local-flat-file-store.c"
 			}
 #line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 			_tmp88_ = services;
@@ -2055,7 +2096,7 @@ void local_flat_file_store_store_id_card
 			__tmp87__size_ = _tmp87__length1;
 #line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 			if (_tmp87_ == NULL) {
-#line 2059 "moonshot-local-flat-file-store.c"
+#line 2100 "moonshot-local-flat-file-store.c"
 				gchar** _tmp89_ = NULL;
 				gint _tmp89__length1 = 0;
 #line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
@@ -2068,7 +2109,7 @@ void local_flat_file_store_store_id_card
 				_tmp87__length1 = _tmp89__length1;
 #line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 				__tmp87__size_ = _tmp87__length1;
-#line 2072 "moonshot-local-flat-file-store.c"
+#line 2113 "moonshot-local-flat-file-store.c"
 			}
 #line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 			_tmp90_ = key_file;
@@ -2086,7 +2127,7 @@ void local_flat_file_store_store_id_card
 			_tmp94__length1 = rules_length1;
 #line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 			if (_tmp94__length1 > 0) {
-#line 2090 "moonshot-local-flat-file-store.c"
+#line 2131 "moonshot-local-flat-file-store.c"
 				GKeyFile* _tmp95_ = NULL;
 				IdCard* _tmp96_ = NULL;
 				const gchar* _tmp97_ = NULL;
@@ -2127,7 +2168,7 @@ void local_flat_file_store_store_id_card
 				_tmp104__length1 = rules_always_conf_length1;
 #line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 				g_key_file_set_string_list (_tmp100_, _tmp103_, "Rules-AlwaysConfirm", (const gchar* const*) _tmp104_, _tmp104__length1);
-#line 2131 "moonshot-local-flat-file-store.c"
+#line 2172 "moonshot-local-flat-file-store.c"
 			}
 #line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 			_tmp106_ = id_card;
@@ -2139,11 +2180,11 @@ void local_flat_file_store_store_id_card
 			if (_tmp108_) {
 #line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 				_tmp105_ = "yes";
-#line 2143 "moonshot-local-flat-file-store.c"
+#line 2184 "moonshot-local-flat-file-store.c"
 			} else {
 #line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 				_tmp105_ = "no";
-#line 2147 "moonshot-local-flat-file-store.c"
+#line 2188 "moonshot-local-flat-file-store.c"
 			}
 #line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 			_tmp109_ = key_file;
@@ -2171,7 +2212,7 @@ void local_flat_file_store_store_id_card
 			if (_tmp113_ == NULL) {
 #line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 				_tmp113_ = "";
-#line 2175 "moonshot-local-flat-file-store.c"
+#line 2216 "moonshot-local-flat-file-store.c"
 			}
 #line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 			_tmp119_ = key_file;
@@ -2199,7 +2240,7 @@ void local_flat_file_store_store_id_card
 			if (_tmp123_ == NULL) {
 #line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 				_tmp123_ = "";
-#line 2203 "moonshot-local-flat-file-store.c"
+#line 2244 "moonshot-local-flat-file-store.c"
 			}
 #line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 			_tmp129_ = key_file;
@@ -2227,7 +2268,7 @@ void local_flat_file_store_store_id_card
 			if (_tmp133_ == NULL) {
 #line 171 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 				_tmp133_ = "";
-#line 2231 "moonshot-local-flat-file-store.c"
+#line 2272 "moonshot-local-flat-file-store.c"
 			}
 #line 171 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 			_tmp139_ = key_file;
@@ -2255,7 +2296,7 @@ void local_flat_file_store_store_id_card
 			if (_tmp143_ == NULL) {
 #line 172 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 				_tmp143_ = "";
-#line 2259 "moonshot-local-flat-file-store.c"
+#line 2300 "moonshot-local-flat-file-store.c"
 			}
 #line 172 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 			_tmp149_ = key_file;
@@ -2279,11 +2320,11 @@ void local_flat_file_store_store_id_card
 			rules = (_vala_Rule_array_free (rules, rules_length1), NULL);
 #line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 			_g_object_unref0 (id_card);
-#line 2283 "moonshot-local-flat-file-store.c"
+#line 2324 "moonshot-local-flat-file-store.c"
 		}
 #line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 		_g_object_unref0 (_id_card_list);
-#line 2287 "moonshot-local-flat-file-store.c"
+#line 2328 "moonshot-local-flat-file-store.c"
 	}
 #line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 	_tmp153_ = key_file;
@@ -2291,7 +2332,7 @@ void local_flat_file_store_store_id_card
 	_tmp154_ = g_key_file_to_data (_tmp153_, NULL, NULL);
 #line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 	text = _tmp154_;
-#line 2295 "moonshot-local-flat-file-store.c"
+#line 2336 "moonshot-local-flat-file-store.c"
 	{
 		gchar* path = NULL;
 		gchar* _tmp155_ = NULL;
@@ -2333,39 +2374,39 @@ void local_flat_file_store_store_id_card
 #line 181 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 		stream = _tmp161_;
 #line 181 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-		if (_inner_error_ != NULL) {
+		if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 181 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 			_g_object_unref0 (file);
 #line 181 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 			_g_free0 (filename);
 #line 181 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 			_g_free0 (path);
-#line 2344 "moonshot-local-flat-file-store.c"
+#line 2385 "moonshot-local-flat-file-store.c"
 			goto __catch7_g_error;
 		}
-#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 		_tmp162_ = stream;
-#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 		_tmp163_ = text;
-#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 		_tmp164_ = string_get_data (_tmp163_, &_tmp164__length1);
-#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 		_tmp165_ = _tmp164_;
-#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 		_tmp165__length1 = _tmp164__length1;
-#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 		g_output_stream_write ((GOutputStream*) _tmp162_, _tmp165_, (gsize) _tmp165__length1, NULL, &_inner_error_);
-#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-		if (_inner_error_ != NULL) {
-#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+		if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 			_g_object_unref0 (stream);
-#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 			_g_object_unref0 (file);
-#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 			_g_free0 (filename);
-#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 			_g_free0 (path);
-#line 2369 "moonshot-local-flat-file-store.c"
+#line 2410 "moonshot-local-flat-file-store.c"
 			goto __catch7_g_error;
 		}
 #line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
@@ -2376,7 +2417,7 @@ void local_flat_file_store_store_id_card
 		_g_free0 (filename);
 #line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 		_g_free0 (path);
-#line 2380 "moonshot-local-flat-file-store.c"
+#line 2421 "moonshot-local-flat-file-store.c"
 	}
 	goto __finally7;
 	__catch7_g_error:
@@ -2399,11 +2440,11 @@ void local_flat_file_store_store_id_card
 		fprintf (_tmp166_, "Error:  %s\n", _tmp168_);
 #line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 		_g_error_free0 (e);
-#line 2403 "moonshot-local-flat-file-store.c"
+#line 2444 "moonshot-local-flat-file-store.c"
 	}
 	__finally7:
 #line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-	if (_inner_error_ != NULL) {
+	if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 		_g_free0 (text);
 #line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
@@ -2414,7 +2455,7 @@ void local_flat_file_store_store_id_card
 		g_clear_error (&_inner_error_);
 #line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 		return;
-#line 2418 "moonshot-local-flat-file-store.c"
+#line 2459 "moonshot-local-flat-file-store.c"
 	}
 #line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 	local_flat_file_store_load_id_cards (self);
@@ -2422,7 +2463,7 @@ void local_flat_file_store_store_id_card
 	_g_free0 (text);
 #line 138 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 	_g_key_file_free0 (key_file);
-#line 2426 "moonshot-local-flat-file-store.c"
+#line 2467 "moonshot-local-flat-file-store.c"
 }
 
 
@@ -2432,7 +2473,7 @@ LocalFlatFileStore* local_flat_file_stor
 #line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 	self = (LocalFlatFileStore*) g_object_new (object_type, NULL);
 #line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
-	_tmp0_ = gee_linked_list_new (TYPE_ID_CARD, (GBoxedCopyFunc) g_object_ref, g_object_unref, NULL);
+	_tmp0_ = gee_linked_list_new (TYPE_ID_CARD, (GBoxedCopyFunc) g_object_ref, g_object_unref, NULL, NULL, NULL);
 #line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 	_g_object_unref0 (self->priv->id_card_list);
 #line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
@@ -2441,14 +2482,14 @@ LocalFlatFileStore* local_flat_file_stor
 	local_flat_file_store_load_id_cards (self);
 #line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 	return self;
-#line 2445 "moonshot-local-flat-file-store.c"
+#line 2486 "moonshot-local-flat-file-store.c"
 }
 
 
 LocalFlatFileStore* local_flat_file_store_new (void) {
 #line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 	return local_flat_file_store_construct (TYPE_LOCAL_FLAT_FILE_STORE);
-#line 2452 "moonshot-local-flat-file-store.c"
+#line 2493 "moonshot-local-flat-file-store.c"
 }
 
 
@@ -2459,7 +2500,7 @@ static void local_flat_file_store_class_
 	g_type_class_add_private (klass, sizeof (LocalFlatFileStorePrivate));
 #line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 	G_OBJECT_CLASS (klass)->finalize = local_flat_file_store_finalize;
-#line 2463 "moonshot-local-flat-file-store.c"
+#line 2504 "moonshot-local-flat-file-store.c"
 }
 
 
@@ -2476,14 +2517,14 @@ static void local_flat_file_store_iident
 	iface->get_card_list = (GeeLinkedList* (*)(IIdentityCardStore*)) local_flat_file_store_real_get_card_list;
 #line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 	iface->get_store_type = (IIdentityCardStoreStoreType (*)(IIdentityCardStore*)) local_flat_file_store_real_get_store_type;
-#line 2480 "moonshot-local-flat-file-store.c"
+#line 2521 "moonshot-local-flat-file-store.c"
 }
 
 
 static void local_flat_file_store_instance_init (LocalFlatFileStore * self) {
 #line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 	self->priv = LOCAL_FLAT_FILE_STORE_GET_PRIVATE (self);
-#line 2487 "moonshot-local-flat-file-store.c"
+#line 2528 "moonshot-local-flat-file-store.c"
 }
 
 
@@ -2495,7 +2536,7 @@ static void local_flat_file_store_finali
 	_g_object_unref0 (self->priv->id_card_list);
 #line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
 	G_OBJECT_CLASS (local_flat_file_store_parent_class)->finalize (obj);
-#line 2499 "moonshot-local-flat-file-store.c"
+#line 2540 "moonshot-local-flat-file-store.c"
 }
 
 
--- moonshot-ui-0.7.1.orig/src/moonshot-local-flat-file-store.vala
+++ moonshot-ui-0.7.1/src/moonshot-local-flat-file-store.vala
@@ -111,7 +111,7 @@ public class LocalFlatFileStore : Object
                 }
                 
                 // Trust anchor 
-                id_card.trust_anchor.ca_cert = key_file.get_string (identity, "CA-Cert");
+                id_card.trust_anchor.ca_cert = key_file.get_string (identity, "CA-Cert").strip();
                 id_card.trust_anchor.subject = key_file.get_string (identity, "Subject");
                 id_card.trust_anchor.subject_alt = key_file.get_string (identity, "SubjectAlt");
                 id_card.trust_anchor.server_cert = key_file.get_string (identity, "ServerCert");
@@ -179,11 +179,11 @@ public class LocalFlatFileStore : Object
             var filename = Path.build_filename (path, FILE_NAME);
             var file  = File.new_for_path(filename);
             var stream = file.replace(null, false, FileCreateFlags.PRIVATE);
-#if IPC_DBUS_GLIB
+#if GIO_VAPI_USES_ARRAYS
+            stream.write(text.data);
+#else
             var bits = text.data;
             stream.write(&bits[0], bits.length);
-#else
-            stream.write(text.data);
 #endif
         }
         catch (Error e) {
--- moonshot-ui-0.7.1.orig/src/moonshot-password-dialog.c
+++ moonshot-ui-0.7.1/src/moonshot-password-dialog.c
@@ -1,4 +1,4 @@
-/* moonshot-password-dialog.c generated by valac 0.24.0, the Vala compiler
+/* moonshot-password-dialog.c generated by valac 0.26.1, the Vala compiler
  * generated from moonshot-password-dialog.vala, do not modify */
 
 /*
--- moonshot-ui-0.7.1.orig/src/moonshot-provisioning-common.c
+++ moonshot-ui-0.7.1/src/moonshot-provisioning-common.c
@@ -1,4 +1,4 @@
-/* moonshot-provisioning-common.c generated by valac 0.24.0, the Vala compiler
+/* moonshot-provisioning-common.c generated by valac 0.26.1, the Vala compiler
  * generated from moonshot-provisioning-common.vala, do not modify */
 
 /*
@@ -129,7 +129,7 @@ gboolean web_provisioning_password_handl
 gboolean web_provisioning_user_handler (GSList* stack);
 gboolean web_provisioning_display_name_handler (GSList* stack);
 void web_provisioning_start_element_func (GMarkupParseContext* context, const gchar* element_name, gchar** attribute_names, int attribute_names_length1, gchar** attribute_values, int attribute_values_length1, GError** error);
-static IdCard** _vala_array_dup3 (IdCard** self, int length);
+static IdCard** _vala_array_dup7 (IdCard** self, int length);
 IdCard* id_card_new (void);
 IdCard* id_card_construct (GType object_type);
 GType rule_get_type (void) G_GNUC_CONST;
@@ -138,7 +138,7 @@ void rule_free (Rule* self);
 void rule_copy (const Rule* self, Rule* dest);
 void rule_destroy (Rule* self);
 Rule* id_card_get_rules (IdCard* self, int* result_length1);
-static Rule* _vala_array_dup4 (Rule* self, int length);
+static Rule* _vala_array_dup8 (Rule* self, int length);
 void id_card_set_rules (IdCard* self, Rule* value, int value_length1);
 static void _vala_Rule_array_free (Rule* array, gint array_length);
 void web_provisioning_text_element_func (GMarkupParseContext* context, const gchar* text, gsize text_len, GError** error);
@@ -147,10 +147,10 @@ void id_card_set_username (IdCard* self,
 void id_card_set_password (IdCard* self, const gchar* value);
 void id_card_set_issuer (IdCard* self, const gchar* value);
 gchar** id_card_get_services (IdCard* self, int* result_length1);
-static gchar** _vala_array_dup5 (gchar** self, int length);
+static gchar** _vala_array_dup9 (gchar** self, int length);
 void id_card_set_services (IdCard* self, gchar** value, int value_length1);
-static Rule* _vala_array_dup6 (Rule* self, int length);
-static Rule* _vala_array_dup7 (Rule* self, int length);
+static Rule* _vala_array_dup10 (Rule* self, int length);
+static Rule* _vala_array_dup11 (Rule* self, int length);
 GType trust_anchor_get_type (void) G_GNUC_CONST;
 TrustAnchor* id_card_get_trust_anchor (IdCard* self);
 void trust_anchor_set_ca_cert (TrustAnchor* self, const gchar* value);
@@ -777,7 +777,7 @@ static gpointer _g_object_ref0 (gpointer
 }
 
 
-static IdCard** _vala_array_dup3 (IdCard** self, int length) {
+static IdCard** _vala_array_dup7 (IdCard** self, int length) {
 	IdCard** result;
 	int i;
 #line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
@@ -798,7 +798,7 @@ static IdCard** _vala_array_dup3 (IdCard
 }
 
 
-static Rule* _vala_array_dup4 (Rule* self, int length) {
+static Rule* _vala_array_dup8 (Rule* self, int length) {
 	Rule* result;
 	int i;
 #line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
@@ -871,7 +871,7 @@ void web_provisioning_start_element_func
 #line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
 		_tmp1__length1 = web_provisioning_cards_length1;
 #line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
-		_tmp2_ = (_tmp1_ != NULL) ? _vala_array_dup3 (_tmp1_, _tmp1__length1) : ((gpointer) _tmp1_);
+		_tmp2_ = (_tmp1_ != NULL) ? _vala_array_dup7 (_tmp1_, _tmp1__length1) : ((gpointer) _tmp1_);
 #line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
 		_tmp2__length1 = _tmp1__length1;
 #line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
@@ -1037,7 +1037,7 @@ void web_provisioning_start_element_func
 #line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
 			_tmp25__length1 = _tmp24__length1;
 #line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
-			_tmp26_ = (_tmp25_ != NULL) ? _vala_array_dup4 (_tmp25_, _tmp25__length1) : ((gpointer) _tmp25_);
+			_tmp26_ = (_tmp25_ != NULL) ? _vala_array_dup8 (_tmp25_, _tmp25__length1) : ((gpointer) _tmp25_);
 #line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
 			_tmp26__length1 = _tmp25__length1;
 #line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
@@ -1172,7 +1172,7 @@ void web_provisioning_start_element_func
 }
 
 
-static gchar** _vala_array_dup5 (gchar** self, int length) {
+static gchar** _vala_array_dup9 (gchar** self, int length) {
 	gchar** result;
 	int i;
 #line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
@@ -1193,7 +1193,7 @@ static gchar** _vala_array_dup5 (gchar**
 }
 
 
-static Rule* _vala_array_dup6 (Rule* self, int length) {
+static Rule* _vala_array_dup10 (Rule* self, int length) {
 	Rule* result;
 	int i;
 #line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
@@ -1214,7 +1214,7 @@ static Rule* _vala_array_dup6 (Rule* sel
 }
 
 
-static Rule* _vala_array_dup7 (Rule* self, int length) {
+static Rule* _vala_array_dup11 (Rule* self, int length) {
 	Rule* result;
 	int i;
 #line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
@@ -1450,7 +1450,7 @@ void web_provisioning_text_element_func
 #line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
 						_tmp35__length1 = _tmp34__length1;
 #line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
-						_tmp36_ = (_tmp35_ != NULL) ? _vala_array_dup5 (_tmp35_, _tmp35__length1) : ((gpointer) _tmp35_);
+						_tmp36_ = (_tmp35_ != NULL) ? _vala_array_dup9 (_tmp35_, _tmp35__length1) : ((gpointer) _tmp35_);
 #line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
 						_tmp36__length1 = _tmp35__length1;
 #line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
@@ -1638,7 +1638,7 @@ void web_provisioning_text_element_func
 #line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
 							_tmp68__length1 = _tmp67__length1;
 #line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
-							_tmp69_ = (_tmp68_ != NULL) ? _vala_array_dup6 (_tmp68_, _tmp68__length1) : ((gpointer) _tmp68_);
+							_tmp69_ = (_tmp68_ != NULL) ? _vala_array_dup10 (_tmp68_, _tmp68__length1) : ((gpointer) _tmp68_);
 #line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
 							_tmp69__length1 = _tmp68__length1;
 #line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
@@ -1746,7 +1746,7 @@ void web_provisioning_text_element_func
 #line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
 									_tmp86__length1 = _tmp85__length1;
 #line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
-									_tmp87_ = (_tmp86_ != NULL) ? _vala_array_dup7 (_tmp86_, _tmp86__length1) : ((gpointer) _tmp86_);
+									_tmp87_ = (_tmp86_ != NULL) ? _vala_array_dup11 (_tmp86_, _tmp86__length1) : ((gpointer) _tmp86_);
 #line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
 									_tmp87__length1 = _tmp86__length1;
 #line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
@@ -2028,9 +2028,9 @@ WebProvisioningParser* web_provisioning_
 #line 248 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
 		_tmp5_ = _tmp7_;
 #line 248 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
-		if (_inner_error_ != NULL) {
+		if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 2033 "moonshot-provisioning-common.c"
-			goto __catch0_g_error;
+			goto __catch8_g_error;
 		}
 #line 248 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
 		_tmp8_ = g_data_input_stream_new ((GInputStream*) _tmp5_);
@@ -2054,7 +2054,7 @@ WebProvisioningParser* web_provisioning_
 #line 250 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
 			_tmp9_ = _tmp11_;
 #line 250 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
-			if (_inner_error_ != NULL) {
+			if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 250 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
 				_g_free0 (line);
 #line 250 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
@@ -2062,7 +2062,7 @@ WebProvisioningParser* web_provisioning_
 #line 250 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
 				_g_object_unref0 (_tmp5_);
 #line 2065 "moonshot-provisioning-common.c"
-				goto __catch0_g_error;
+				goto __catch8_g_error;
 			}
 #line 250 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
 			_tmp12_ = _tmp9_;
@@ -2104,8 +2104,8 @@ WebProvisioningParser* web_provisioning_
 		_g_object_unref0 (_tmp5_);
 #line 2106 "moonshot-provisioning-common.c"
 	}
-	goto __finally0;
-	__catch0_g_error:
+	goto __finally8;
+	__catch8_g_error:
 	{
 		GError* e = NULL;
 #line 246 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
@@ -2118,9 +2118,9 @@ WebProvisioningParser* web_provisioning_
 		_g_error_free0 (e);
 #line 2120 "moonshot-provisioning-common.c"
 	}
-	__finally0:
+	__finally8:
 #line 246 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
-	if (_inner_error_ != NULL) {
+	if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 246 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
 		_g_object_unref0 (file);
 #line 246 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
@@ -2188,13 +2188,13 @@ void web_provisioning_parser_parse (WebP
 #line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
 		g_markup_parse_context_parse (ctx, _tmp2_, (gssize) _tmp5_, &_inner_error_);
 #line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
-		if (_inner_error_ != NULL) {
+		if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 2193 "moonshot-provisioning-common.c"
-			goto __catch1_g_error;
+			goto __catch9_g_error;
 		}
 	}
-	goto __finally1;
-	__catch1_g_error:
+	goto __finally9;
+	__catch9_g_error:
 	{
 		GError* e = NULL;
 		const gchar* _tmp6_ = NULL;
@@ -2211,9 +2211,9 @@ void web_provisioning_parser_parse (WebP
 		_g_error_free0 (e);
 #line 2212 "moonshot-provisioning-common.c"
 	}
-	__finally1:
+	__finally9:
 #line 266 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
-	if (_inner_error_ != NULL) {
+	if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 266 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
 		_g_markup_parse_context_free0 (ctx);
 #line 266 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
@@ -2414,7 +2414,7 @@ static void web_provisioning_parser_clas
 #line 234 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
 	web_provisioning_parser_parent_class = g_type_class_peek_parent (klass);
 #line 234 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
-	WEB_PROVISIONING_PARSER_CLASS (klass)->finalize = web_provisioning_parser_finalize;
+	((WebProvisioningParserClass *) klass)->finalize = web_provisioning_parser_finalize;
 #line 234 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
 	g_type_class_add_private (klass, sizeof (WebProvisioningParserPrivate));
 #line 2420 "moonshot-provisioning-common.c"
@@ -2434,11 +2434,13 @@ static void web_provisioning_parser_fina
 	WebProvisioningParser * self;
 #line 234 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
 	self = G_TYPE_CHECK_INSTANCE_CAST (obj, WEB_PROVISIONING_TYPE_PARSER, WebProvisioningParser);
+#line 234 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+	g_signal_handlers_destroy (self);
 #line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
 	_g_free0 (self->priv->text);
 #line 238 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
 	_g_free0 (self->priv->path);
-#line 2441 "moonshot-provisioning-common.c"
+#line 2443 "moonshot-provisioning-common.c"
 }
 
 
@@ -2463,7 +2465,7 @@ gpointer web_provisioning_parser_ref (gp
 	g_atomic_int_inc (&self->ref_count);
 #line 234 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
 	return instance;
-#line 2466 "moonshot-provisioning-common.c"
+#line 2468 "moonshot-provisioning-common.c"
 }
 
 
@@ -2476,7 +2478,7 @@ void web_provisioning_parser_unref (gpoi
 		WEB_PROVISIONING_PARSER_GET_CLASS (self)->finalize (self);
 #line 234 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
 		g_type_free_instance ((GTypeInstance *) self);
-#line 2479 "moonshot-provisioning-common.c"
+#line 2481 "moonshot-provisioning-common.c"
 	}
 }
 
--- moonshot-ui-0.7.1.orig/src/moonshot-server.c
+++ moonshot-ui-0.7.1/src/moonshot-server.c
@@ -1,4 +1,4 @@
-/* moonshot-server.c generated by valac 0.24.0, the Vala compiler
+/* moonshot-server.c generated by valac 0.26.1, the Vala compiler
  * generated from moonshot-server.vala, do not modify */
 
 /*
@@ -405,8 +405,8 @@ GType identity_request_get_type (void) G
 IdentityRequest* identity_request_new (IdentityManagerApp* app, const gchar* nai, const gchar* password, const gchar* service);
 IdentityRequest* identity_request_construct (GType object_type, IdentityManagerApp* app, const gchar* nai, const gchar* password, const gchar* service);
 void identity_request_set_callback (IdentityRequest* self, ReturnIdentityCallback cb, void* cb_target, GDestroyNotify cb_target_destroy_notify);
-static void __lambda7_ (Block2Data* _data2_, IdentityRequest* IdentityRequest);
-static void ___lambda7__return_identity_callback (IdentityRequest* request, gpointer self);
+static void __lambda8_ (Block2Data* _data2_, IdentityRequest* IdentityRequest);
+static void ___lambda8__return_identity_callback (IdentityRequest* request, gpointer self);
 gboolean identity_request_execute (IdentityRequest* self);
 const gchar* id_card_get_display_name (IdCard* self);
 #define ID_CARD_NO_IDENTITY "No Identity"
@@ -426,8 +426,8 @@ static Block3Data* block3_data_ref (Bloc
 static void block3_data_unref (void * _userdata_);
 IdentityRequest* identity_request_new_default (IdentityManagerApp* app);
 IdentityRequest* identity_request_construct_default (GType object_type, IdentityManagerApp* app);
-static void __lambda8_ (Block3Data* _data3_, IdentityRequest* IdentityRequest);
-static void ___lambda8__return_identity_callback (IdentityRequest* request, gpointer self);
+static void __lambda9_ (Block3Data* _data3_, IdentityRequest* IdentityRequest);
+static void ___lambda9__return_identity_callback (IdentityRequest* request, gpointer self);
 gboolean moonshot_server_install_id_card (MoonshotServer* self, const gchar* display_name, const gchar* user_name, const gchar* password, const gchar* realm, gchar** rules_patterns, int rules_patterns_length1, gchar** rules_always_confirm, int rules_always_confirm_length1, gchar** services, int services_length1, const gchar* ca_cert, const gchar* subject, const gchar* subject_alt, const gchar* server_cert, gint force_flat_file_store);
 IdCard* id_card_new (void);
 IdCard* id_card_construct (GType object_type);
@@ -790,7 +790,7 @@ static void block2_data_unref (void * _u
 }
 
 
-static void __lambda7_ (Block2Data* _data2_, IdentityRequest* IdentityRequest) {
+static void __lambda8_ (Block2Data* _data2_, IdentityRequest* IdentityRequest) {
 	MoonshotServer* self;
 #line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server.vala"
 	self = _data2_->self;
@@ -802,9 +802,9 @@ static void __lambda7_ (Block2Data* _dat
 }
 
 
-static void ___lambda7__return_identity_callback (IdentityRequest* request, gpointer self) {
+static void ___lambda8__return_identity_callback (IdentityRequest* request, gpointer self) {
 #line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server.vala"
-	__lambda7_ (self, request);
+	__lambda8_ (self, request);
 #line 809 "moonshot-server.c"
 }
 
@@ -861,7 +861,7 @@ static gboolean moonshot_server_get_iden
 #line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server.vala"
 	_data_->_tmp5_ = _data_->request;
 #line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server.vala"
-	identity_request_set_callback (_data_->_tmp5_, ___lambda7__return_identity_callback, block2_data_ref (_data_->_data2_), block2_data_unref);
+	identity_request_set_callback (_data_->_tmp5_, ___lambda8__return_identity_callback, block2_data_ref (_data_->_data2_), block2_data_unref);
 #line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server.vala"
 	_data_->_tmp6_ = NULL;
 #line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server.vala"
@@ -1479,7 +1479,7 @@ static void block3_data_unref (void * _u
 }
 
 
-static void __lambda8_ (Block3Data* _data3_, IdentityRequest* IdentityRequest) {
+static void __lambda9_ (Block3Data* _data3_, IdentityRequest* IdentityRequest) {
 	MoonshotServer* self;
 #line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server.vala"
 	self = _data3_->self;
@@ -1491,9 +1491,9 @@ static void __lambda8_ (Block3Data* _dat
 }
 
 
-static void ___lambda8__return_identity_callback (IdentityRequest* request, gpointer self) {
+static void ___lambda9__return_identity_callback (IdentityRequest* request, gpointer self) {
 #line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server.vala"
-	__lambda8_ (self, request);
+	__lambda9_ (self, request);
 #line 1498 "moonshot-server.c"
 }
 
@@ -1538,7 +1538,7 @@ static gboolean moonshot_server_get_defa
 #line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server.vala"
 	_data_->_tmp2_ = _data_->request;
 #line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server.vala"
-	identity_request_set_callback (_data_->_tmp2_, ___lambda8__return_identity_callback, block3_data_ref (_data_->_data3_), block3_data_unref);
+	identity_request_set_callback (_data_->_tmp2_, ___lambda9__return_identity_callback, block3_data_ref (_data_->_data3_), block3_data_unref);
 #line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server.vala"
 	_data_->_tmp3_ = NULL;
 #line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server.vala"
--- moonshot-ui-0.7.1.orig/src/moonshot-utils.c
+++ moonshot-ui-0.7.1/src/moonshot-utils.c
@@ -1,4 +1,4 @@
-/* moonshot-utils.c generated by valac 0.24.0, the Vala compiler
+/* moonshot-utils.c generated by valac 0.26.1, the Vala compiler
  * generated from moonshot-utils.vala, do not modify */
 
 /*
@@ -167,7 +167,7 @@ GdkPixbuf* find_icon (const gchar* name,
 #line 74 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
 		_tmp3_ = _tmp7_;
 #line 74 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
-		if (_inner_error_ != NULL) {
+		if (G_UNLIKELY (_inner_error_ != NULL)) {
 #line 74 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
 			_g_object_unref0 (icon_theme);
 #line 174 "moonshot-utils.c"
@@ -233,11 +233,11 @@ static gchar* g_file_stream_read_line (F
 	gint c = 0;
 	GString* ret = NULL;
 	GString* _tmp7_ = NULL;
-#line 3148 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 3159 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	g_return_val_if_fail (self != NULL, NULL);
-#line 3150 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 3161 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	ret = NULL;
-#line 3151 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 3162 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	while (TRUE) {
 #line 243 "moonshot-utils.c"
 		gint _tmp0_ = 0;
@@ -246,78 +246,78 @@ static gchar* g_file_stream_read_line (F
 		gint _tmp4_ = 0;
 		GString* _tmp5_ = NULL;
 		gint _tmp6_ = 0;
-#line 3151 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 3162 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp0_ = fgetc (self);
-#line 3151 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 3162 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		c = _tmp0_;
-#line 3151 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 3162 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp1_ = c;
-#line 3151 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 3162 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		if (!(_tmp1_ != EOF)) {
-#line 3151 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 3162 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 			break;
 #line 260 "moonshot-utils.c"
 		}
-#line 3152 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 3163 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp2_ = ret;
-#line 3152 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 3163 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		if (_tmp2_ == NULL) {
 #line 266 "moonshot-utils.c"
 			GString* _tmp3_ = NULL;
-#line 3153 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 3164 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 			_tmp3_ = g_string_new ("");
-#line 3153 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 3164 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 			_g_string_free0 (ret);
-#line 3153 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 3164 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 			ret = _tmp3_;
 #line 274 "moonshot-utils.c"
 		}
-#line 3155 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 3166 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp4_ = c;
-#line 3155 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 3166 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		if (_tmp4_ == ((gint) '\n')) {
-#line 3156 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 3167 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 			break;
 #line 282 "moonshot-utils.c"
 		}
-#line 3158 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 3169 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp5_ = ret;
-#line 3158 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 3169 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp6_ = c;
-#line 3158 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 3169 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		g_string_append_c ((GString*) _tmp5_, (gchar) _tmp6_);
 #line 290 "moonshot-utils.c"
 	}
-#line 3160 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 3171 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	_tmp7_ = ret;
-#line 3160 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 3171 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	if (_tmp7_ == NULL) {
-#line 3161 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 3172 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		result = NULL;
-#line 3161 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 3172 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_g_string_free0 (ret);
-#line 3161 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 3172 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		return result;
 #line 302 "moonshot-utils.c"
 	} else {
 		GString* _tmp8_ = NULL;
 		const gchar* _tmp9_ = NULL;
 		gchar* _tmp10_ = NULL;
-#line 3163 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 3174 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp8_ = ret;
-#line 3163 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 3174 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp9_ = ((GString*) _tmp8_)->str;
-#line 3163 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 3174 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_tmp10_ = g_strdup (_tmp9_);
-#line 3163 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 3174 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		result = _tmp10_;
-#line 3163 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 3174 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		_g_string_free0 (ret);
-#line 3163 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 3174 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 		return result;
 #line 319 "moonshot-utils.c"
 	}
-#line 3148 "/usr/share/vala-0.24/vapi/glib-2.0.vapi"
+#line 3159 "/usr/share/vala-0.26/vapi/glib-2.0.vapi"
 	_g_string_free0 (ret);
 #line 323 "moonshot-utils.c"
 }
