Merge branch 'upstream' into debian
authorSam Hartman <hartmans@debian.org>
Sun, 9 Jul 2017 20:16:47 +0000 (16:16 -0400)
committerSam Hartman <hartmans@debian.org>
Sun, 9 Jul 2017 20:16:47 +0000 (16:16 -0400)
Merge in version 1.0.3

Restore the *.c files because a 3.0(quilt) package will expect to find
them if they are in the pristine-tar, and make dist does include them
in the pristine-tar.

Some files don't appear to be distributed by make dist such as libmoonshot.def.
If they are intended to be distributed, Makefile.am should be updated.

34 files changed:
Makefile.in
aclocal.m4
build-aux/ltmain.sh
config.h.in
configure
libmoonshot/libmoonshot.def [deleted file]
m4/libtool.m4
m4/ltoptions.m4
m4/ltversion.m4
moonshot-ui.spec
po/moonshot-ui.pot
src/moonshot-custom-vbox.c [new file with mode: 0644]
src/moonshot-id.c [new file with mode: 0644]
src/moonshot-idcard-store.c [new file with mode: 0644]
src/moonshot-idcard-widget.c [new file with mode: 0644]
src/moonshot-identities-manager.c [new file with mode: 0644]
src/moonshot-identity-dialog.c [new file with mode: 0644]
src/moonshot-identity-management-view.c [new file with mode: 0644]
src/moonshot-identity-manager-app.c [new file with mode: 0644]
src/moonshot-identity-request.c [new file with mode: 0644]
src/moonshot-keyring-store.c [new file with mode: 0644]
src/moonshot-local-flat-file-store.c [new file with mode: 0644]
src/moonshot-logger.c [new file with mode: 0644]
src/moonshot-password-dialog.c [new file with mode: 0644]
src/moonshot-provisioning-common.c [new file with mode: 0644]
src/moonshot-server-linux.c [new file with mode: 0644]
src/moonshot-server-msrpc.vala [deleted file]
src/moonshot-settings.c [new file with mode: 0644]
src/moonshot-trust-anchor-dialog.c [new file with mode: 0644]
src/moonshot-utils.c [new file with mode: 0644]
src/moonshot-warning-dialog.c [new file with mode: 0644]
src/moonshot-webp-parser.c [new file with mode: 0644]
webprovisioning/blank-test.msht [deleted file]
webprovisioning/cert-test.msht [deleted file]

index a8430bf..c4603f5 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.14.1 from Makefile.am.
+# Makefile.in generated by automake 1.15.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2013 Free Software Foundation, Inc.
+# Copyright (C) 1994-2017 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 
 
 VPATH = @srcdir@
-am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__is_gnu_make = { \
+  if test -z '$(MAKELEVEL)'; then \
+    false; \
+  elif test -n '$(MAKE_HOST)'; then \
+    true; \
+  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
+    true; \
+  else \
+    false; \
+  fi; \
+}
 am__make_running_with_option = \
   case $${target_option-} in \
       ?) ;; \
@@ -91,8 +101,8 @@ bin_PROGRAMS = src/moonshot$(EXEEXT) src/moonshot-webp$(EXEEXT)
 @OS_MACOS_TRUE@am__append_6 = $(MAC_LIBS)
 @OS_LINUX_TRUE@am__append_7 = -I/usr/include/gnome-keyring-1
 @OS_LINUX_TRUE@am__append_8 = --pkg moonshot-gnome-keyring --define=GNOME_KEYRING
-@OS_LINUX_TRUE@am__append_9 = -lgnome-keyring
-@OS_LINUX_TRUE@am__append_10 = -lgnome-keyring
+@OS_LINUX_TRUE@am__append_9 = -lgnome-keyring -lcrypto
+@OS_LINUX_TRUE@am__append_10 = -lgnome-keyring -lcrypto
 @IPC_MSRPC_TRUE@am__append_11 = -Isrc
 @IPC_MSRPC_TRUE@am__append_12 = \
 @IPC_MSRPC_TRUE@       --pkg moonshot-msrpc --pkg msrpc-1.0 \
@@ -114,40 +124,9 @@ bin_PROGRAMS = src/moonshot$(EXEEXT) src/moonshot-webp$(EXEEXT)
 @IPC_DBUS_GLIB_FALSE@@IPC_DBUS_TRUE@   --define=IPC_DBUS
 
 @GIO_VAPI_USES_ARRAYS_TRUE@am__append_18 = --define=GIO_VAPI_USES_ARRAYS
-@GEE_0_8_TRUE@am__append_19 = --pkg gee-0.8
-@GEE_0_8_FALSE@am__append_20 = --pkg gee-1.0
 noinst_PROGRAMS = examples/client$(EXEEXT) \
        examples/service-selection$(EXEEXT) tests/basic$(EXEEXT)
 subdir = .
-DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
-       $(top_srcdir)/configure $(am__configure_deps) \
-       $(srcdir)/config.h.in $(srcdir)/moonshot.desktop.in \
-       $(srcdir)/moonshot-webp.desktop.in \
-       $(srcdir)/moonshot-ui.spec.in \
-       src/moonshot-identity-manager-app.c \
-       src/moonshot-identity-management-view.c \
-       src/moonshot-local-flat-file-store.c \
-       src/moonshot-keyring-store.c src/moonshot-idcard-store.c \
-       src/moonshot-id.c src/moonshot-add-dialog.c \
-       src/moonshot-idcard-widget.c src/moonshot-custom-vbox.c \
-       src/moonshot-identities-manager.c \
-       src/moonshot-identity-request.c src/moonshot-server.c \
-       src/moonshot-password-dialog.c \
-       src/moonshot-provisioning-common.c src/moonshot-utils.c \
-       src/moonshot-webp-parser.c $(top_srcdir)/build-aux/depcomp \
-       $(srcdir)/config.vapi $(srcdir)/src_moonshot_webp_vala.stamp \
-       $(srcdir)/src_moonshot_vala.stamp $(dist_moonshotsysconf_DATA) \
-       $(dist_pkgdata_DATA) $(include_HEADERS) $(noinst_HEADERS) \
-       ABOUT-NLS INSTALL build-aux/compile build-aux/config.guess \
-       build-aux/config.rpath build-aux/config.sub build-aux/depcomp \
-       build-aux/install-sh build-aux/missing build-aux/ltmain.sh \
-       $(top_srcdir)/build-aux/compile \
-       $(top_srcdir)/build-aux/config.guess \
-       $(top_srcdir)/build-aux/config.rpath \
-       $(top_srcdir)/build-aux/config.sub \
-       $(top_srcdir)/build-aux/install-sh \
-       $(top_srcdir)/build-aux/ltmain.sh \
-       $(top_srcdir)/build-aux/missing
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
        $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
@@ -160,6 +139,10 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
        $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
+DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \
+       $(am__configure_deps) $(dist_moonshotsysconf_DATA) \
+       $(dist_pkgdata_DATA) $(include_HEADERS) $(noinst_HEADERS) \
+       $(am__DIST_COMMON)
 am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
  configure.lineno config.status.lineno
 mkinstalldirs = $(install_sh) -d
@@ -201,8 +184,7 @@ am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(bindir)" \
        "$(DESTDIR)$(includedir)"
 LTLIBRARIES = $(lib_LTLIBRARIES)
 am__DEPENDENCIES_1 =
-libmoonshot_libmoonshot_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \
-       $(am__DEPENDENCIES_1)
+libmoonshot_libmoonshot_la_DEPENDENCIES = $(am__DEPENDENCIES_1)
 am__libmoonshot_libmoonshot_la_SOURCES_DIST =  \
        libmoonshot/libmoonshot-common.c \
        libmoonshot/libmoonshot-msrpc.c libmoonshot/libmoonshot-dbus.c
@@ -237,7 +219,7 @@ examples_service_selection_OBJECTS =  \
 am__DEPENDENCIES_3 = $(am__DEPENDENCIES_2)
 examples_service_selection_DEPENDENCIES =  \
        ${top_builddir}/libmoonshot/libmoonshot.la \
-       $(am__DEPENDENCIES_3) $(am__DEPENDENCIES_1)
+       $(am__DEPENDENCIES_3)
 am_src_moonshot_OBJECTS =  \
        src/src_moonshot-moonshot-identity-manager-app.$(OBJEXT) \
        src/src_moonshot-moonshot-identity-management-view.$(OBJEXT) \
@@ -245,32 +227,38 @@ am_src_moonshot_OBJECTS =  \
        src/src_moonshot-moonshot-keyring-store.$(OBJEXT) \
        src/src_moonshot-moonshot-idcard-store.$(OBJEXT) \
        src/src_moonshot-moonshot-id.$(OBJEXT) \
-       src/src_moonshot-moonshot-add-dialog.$(OBJEXT) \
+       src/src_moonshot-moonshot-identity-dialog.$(OBJEXT) \
        src/src_moonshot-moonshot-idcard-widget.$(OBJEXT) \
        src/src_moonshot-moonshot-custom-vbox.$(OBJEXT) \
        src/src_moonshot-moonshot-identities-manager.$(OBJEXT) \
        src/src_moonshot-moonshot-identity-request.$(OBJEXT) \
-       src/src_moonshot-moonshot-server.$(OBJEXT) \
+       src/src_moonshot-moonshot-server-linux.$(OBJEXT) \
+       src/src_moonshot-moonshot-settings.$(OBJEXT) \
        src/src_moonshot-moonshot-password-dialog.$(OBJEXT) \
        src/src_moonshot-moonshot-provisioning-common.$(OBJEXT) \
+       src/src_moonshot-moonshot-trust-anchor-dialog.$(OBJEXT) \
        src/src_moonshot-moonshot-utils.$(OBJEXT) \
-       src/src_moonshot-moonshot-futils.$(OBJEXT)
+       src/src_moonshot-moonshot-futils.$(OBJEXT) \
+       src/src_moonshot-moonshot-crypto-utils.$(OBJEXT) \
+       src/src_moonshot-moonshot-logger.$(OBJEXT) \
+       src/src_moonshot-moonshot-warning-dialog.$(OBJEXT)
 @IPC_MSRPC_TRUE@nodist_src_moonshot_OBJECTS = libmoonshot/src_moonshot-moonshot-msrpc_s.$(OBJEXT)
 src_moonshot_OBJECTS = $(am_src_moonshot_OBJECTS) \
        $(nodist_src_moonshot_OBJECTS)
 src_moonshot_DEPENDENCIES = $(am__DEPENDENCIES_3) \
-       $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_2)
+       $(am__DEPENDENCIES_2)
 src_moonshot_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
        $(LIBTOOLFLAGS) --mode=link $(CCLD) $(src_moonshot_CFLAGS) \
        $(CFLAGS) $(src_moonshot_LDFLAGS) $(LDFLAGS) -o $@
 am_src_moonshot_webp_OBJECTS =  \
+       src/src_moonshot_webp-moonshot-crypto-utils.$(OBJEXT) \
        src/src_moonshot_webp-moonshot-webp-parser.$(OBJEXT) \
        src/src_moonshot_webp-moonshot-provisioning-common.$(OBJEXT) \
-       src/src_moonshot_webp-moonshot-id.$(OBJEXT)
+       src/src_moonshot_webp-moonshot-id.$(OBJEXT) \
+       src/src_moonshot_webp-moonshot-logger.$(OBJEXT)
 src_moonshot_webp_OBJECTS = $(am_src_moonshot_webp_OBJECTS)
 src_moonshot_webp_DEPENDENCIES = $(am__DEPENDENCIES_3) \
-       ${top_builddir}/libmoonshot/libmoonshot.la \
-       $(am__DEPENDENCIES_1)
+       ${top_builddir}/libmoonshot/libmoonshot.la
 src_moonshot_webp_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
        $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
        $(src_moonshot_webp_CFLAGS) $(CFLAGS) \
@@ -379,6 +367,36 @@ ETAGS = etags
 CTAGS = ctags
 CSCOPE = cscope
 DIST_SUBDIRS = $(SUBDIRS)
+am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in \
+       $(srcdir)/config.vapi $(srcdir)/moonshot-ui.spec.in \
+       $(srcdir)/moonshot-webp.desktop.in \
+       $(srcdir)/moonshot.desktop.in \
+       $(srcdir)/src_moonshot_vala.stamp \
+       $(srcdir)/src_moonshot_webp_vala.stamp \
+       $(top_srcdir)/build-aux/compile \
+       $(top_srcdir)/build-aux/config.guess \
+       $(top_srcdir)/build-aux/config.rpath \
+       $(top_srcdir)/build-aux/config.sub \
+       $(top_srcdir)/build-aux/depcomp \
+       $(top_srcdir)/build-aux/install-sh \
+       $(top_srcdir)/build-aux/ltmain.sh \
+       $(top_srcdir)/build-aux/missing ABOUT-NLS INSTALL \
+       build-aux/compile build-aux/config.guess \
+       build-aux/config.rpath build-aux/config.sub build-aux/depcomp \
+       build-aux/install-sh build-aux/ltmain.sh build-aux/missing \
+       src/moonshot-custom-vbox.c src/moonshot-id.c \
+       src/moonshot-idcard-store.c src/moonshot-idcard-widget.c \
+       src/moonshot-identities-manager.c \
+       src/moonshot-identity-dialog.c \
+       src/moonshot-identity-management-view.c \
+       src/moonshot-identity-manager-app.c \
+       src/moonshot-identity-request.c src/moonshot-keyring-store.c \
+       src/moonshot-local-flat-file-store.c src/moonshot-logger.c \
+       src/moonshot-password-dialog.c \
+       src/moonshot-provisioning-common.c src/moonshot-server-linux.c \
+       src/moonshot-settings.c src/moonshot-trust-anchor-dialog.c \
+       src/moonshot-utils.c src/moonshot-warning-dialog.c \
+       src/moonshot-webp-parser.c
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 distdir = $(PACKAGE)-$(VERSION)
 top_distdir = $(distdir)
@@ -449,8 +467,7 @@ EXEEXT = @EXEEXT@
 FGREP = @FGREP@
 GDBUS_CFLAGS = @GDBUS_CFLAGS@
 GDBUS_LIBS = @GDBUS_LIBS@
-GEE_CFLAGS = @GEE_CFLAGS@
-GEE_LIBS = @GEE_LIBS@
+GEE_VERSION = @GEE_VERSION@
 GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
 GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
 GMSGFMT = @GMSGFMT@
@@ -458,6 +475,7 @@ GMSGFMT_015 = @GMSGFMT_015@
 GREP = @GREP@
 GTK_CFLAGS = @GTK_CFLAGS@
 GTK_LIBS = @GTK_LIBS@
+GTK_VERSION = @GTK_VERSION@
 IMAGEMAGICK_CONVERT = @IMAGEMAGICK_CONVERT@
 INSTALL = @INSTALL@
 INSTALL_DATA = @INSTALL_DATA@
@@ -473,11 +491,17 @@ LIBINTL = @LIBINTL@
 LIBOBJS = @LIBOBJS@
 LIBS = @LIBS@
 LIBTOOL = @LIBTOOL@
+LIB_GEE_CFLAGS = @LIB_GEE_CFLAGS@
+LIB_GEE_LIBS = @LIB_GEE_LIBS@
 LIPO = @LIPO@
 LN_S = @LN_S@
+LOG4VALA_CFLAGS = @LOG4VALA_CFLAGS@
+LOG4VALA_LIBS = @LOG4VALA_LIBS@
+LOG4VALA_VERSION = @LOG4VALA_VERSION@
 LTLIBICONV = @LTLIBICONV@
 LTLIBINTL = @LTLIBINTL@
 LTLIBOBJS = @LTLIBOBJS@
+LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
 MAC_CFLAGS = @MAC_CFLAGS@
 MAC_LIBS = @MAC_LIBS@
 MAINT = @MAINT@
@@ -575,6 +599,7 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -597,17 +622,21 @@ AM_CPPFLAGS = -include config.h -DLOCALEDIR=\""$(localedir)"\" \
        -I$(top_srcdir)/libmoonshot -I$(top_builddir)/libmoonshot \
        $(am__append_1) $(am__append_3) $(am__append_7) \
        $(am__append_11) $(am__append_16)
+@LOG4VALA_FALSE@MOONSHOT_LOG_PKG = 
+@LOG4VALA_TRUE@MOONSHOT_LOG_PKG = --pkg $(LOG4VALA_VERSION) -X -l$(LOG4VALA_VERSION) --define=USE_LOG4VALA
+@LOG4VALA_FALSE@MOONSHOT_LOG_LIBS = 
+@LOG4VALA_TRUE@MOONSHOT_LOG_LIBS = -l$(LOG4VALA_VERSION)
 AM_VALAFLAGS = -g config.vapi --vapidir=$(top_srcdir)/vapi --pkg \
-       gio-2.0 $(am__append_2) $(am__append_4) $(am__append_8) \
-       $(am__append_12) $(am__append_15) $(am__append_17) \
-       $(am__append_18) $(am__append_19) $(am__append_20)
+       gio-2.0 $(MOONSHOT_LOG_PKG) $(am__append_2) $(am__append_4) \
+       $(am__append_8) $(am__append_12) $(am__append_15) \
+       $(am__append_17) $(am__append_18)
 libmoonshot_libmoonshot_la_CPPFLAGS = \
         $(libmoonshot_CFLAGS) \
-        $(AM_CPPFLAGS)  $(GEE_CFLAGS)
+        $(AM_CPPFLAGS) 
 
 libmoonshot_libmoonshot_la_SOURCES = libmoonshot/libmoonshot-common.c \
        $(am__append_13) $(am__append_14)
-libmoonshot_libmoonshot_la_LIBADD = $(libmoonshot_LIBS) $(GEE_LIBS)
+libmoonshot_libmoonshot_la_LIBADD = $(libmoonshot_LIBS)
 libmoonshot_libmoonshot_la_LDFLAGS = -no-undefined -version-info 1:0:0
 include_HEADERS = libmoonshot/libmoonshot.h
 noinst_HEADERS = libmoonshot/libmoonshot-common.h
@@ -618,30 +647,37 @@ src_moonshot_SOURCES = \
         src/moonshot-keyring-store.vala \
         src/moonshot-idcard-store.vala \
         src/moonshot-id.vala \
-        src/moonshot-add-dialog.vala \
+        src/moonshot-identity-dialog.vala \
         src/moonshot-idcard-widget.vala \
         src/moonshot-custom-vbox.vala \
         src/moonshot-identities-manager.vala \
         src/moonshot-identity-request.vala \
-        src/moonshot-server.vala \
+        src/moonshot-server-linux.vala \
+        src/moonshot-settings.vala \
         src/moonshot-password-dialog.vala \
         src/moonshot-provisioning-common.vala \
+        src/moonshot-trust-anchor-dialog.vala \
         src/moonshot-utils.vala \
-        src/moonshot-futils.c
+        src/moonshot-futils.c \
+        src/moonshot-crypto-utils.c \
+        src/moonshot-logger.vala \
+        src/moonshot-warning-dialog.vala
 
 src_moonshot_webp_SOURCES = \
+        src/moonshot-crypto-utils.c \
         src/moonshot-webp-parser.vala \
         src/moonshot-provisioning-common.vala \
-        src/moonshot-id.vala
-
-src_moonshot_VALAFLAGS = --pkg gdk-2.0 --pkg gtk+-2.0 $(AM_VALAFLAGS)
-src_moonshot_CPPFLAGS = $(moonshot_CFLAGS) $(AM_CPPFLAGS)   $(GEE_CFLAGS)
-src_moonshot_LDADD = $(moonshot_LIBS) $(GEE_LIBS) $(am__append_6)
-src_moonshot_LDFLAGS = -g -O0 $(am__append_9)
-src_moonshot_webp_VALAFLAGS = --vapidir=$(top_srcdir)/libmoonshot  --pkg gtk+-2.0 --pkg gdk-2.0 --pkg libmoonshot $(AM_VALAFLAGS)
-src_moonshot_webp_CPPFLAGS = $(moonshot_CFLAGS) $(AM_CPPFLAGS) $(GEE_CFLAGS)
-src_moonshot_webp_LDADD = $(moonshot_LIBS) ${top_builddir}/libmoonshot/libmoonshot.la $(GEE_LIBS)
-src_moonshot_webp_LDFLAGS = $(am__append_10)
+        src/moonshot-id.vala \
+        src/moonshot-logger.vala
+
+src_moonshot_VALAFLAGS = --pkg $(GTK_VERSION) --pkg $(GEE_VERSION)   $(AM_VALAFLAGS)
+src_moonshot_CPPFLAGS = $(moonshot_CFLAGS) $(AM_CPPFLAGS)  
+src_moonshot_LDADD = $(moonshot_LIBS) $(am__append_6)
+src_moonshot_LDFLAGS = -g -O0 $(MOONSHOT_LOG_LIBS) $(am__append_9)
+src_moonshot_webp_VALAFLAGS = --vapidir=$(top_srcdir)/libmoonshot  --pkg $(GEE_VERSION) --pkg libmoonshot $(AM_VALAFLAGS)
+src_moonshot_webp_CPPFLAGS = $(moonshot_CFLAGS) $(AM_CPPFLAGS)
+src_moonshot_webp_LDADD = $(moonshot_LIBS) ${top_builddir}/libmoonshot/libmoonshot.la
+src_moonshot_webp_LDFLAGS = $(MOONSHOT_LOG_LIBS) $(am__append_10)
 @OS_WIN32_TRUE@src_moonshot_CFLAGS = -mwindows
 @OS_WIN32_TRUE@src_moonshot_webp_CFLAGS = -mconsole
 @OS_WIN32_TRUE@noinst_DATA = libmoonshot/libmoonshot.lib
@@ -667,7 +703,7 @@ src_moonshot_webp_LDFLAGS = $(am__append_10)
 @IPC_DBUS_TRUE@@OS_MACOS_TRUE@dbusservice_in_files = org.janet.Moonshot.service.mac
 @IPC_DBUS_TRUE@@OS_MACOS_FALSE@dbusservice_DATA = $(dbusservice_in_files:.service.in=.service)
 @IPC_DBUS_TRUE@@OS_MACOS_TRUE@dbusservice_DATA = $(dbusservice_in_files:.service.mac=.service)
-@IPC_DBUS_TRUE@CLEANFILES = $(dbusservice_DATA)
+@IPC_DBUS_TRUE@CLEANFILES = $(dbusservice_DATA)  src_moonshot_vala.stamp src_moonshot_vala.stamp-t
 EXTRA_DIST = webprovisioning/moonshot.xml $(dbusservice_in_files) \
        webprovisioning/complex-test.msht webprovisioning/sample.msht \
        README.webprovisioning README.windows \
@@ -676,10 +712,10 @@ EXTRA_DIST = webprovisioning/moonshot.xml $(dbusservice_in_files) \
        vapi/moonshot-gnome-keyring.vapi libmoonshot/libmoonshot.vapi
 
 examples_service_selection_SOURCES = examples/service-selection.c
-examples_service_selection_CPPFLAGS = $(moonshot_CFLAGS) $(AM_CPPFLAGS) $(GEE_CFLAGS)
-examples_service_selection_LDADD = ${top_builddir}/libmoonshot/libmoonshot.la $(moonshot_LIBS) $(GEE_LIBS)
+examples_service_selection_CPPFLAGS = $(moonshot_CFLAGS) $(AM_CPPFLAGS)
+examples_service_selection_LDADD = ${top_builddir}/libmoonshot/libmoonshot.la $(moonshot_LIBS)
 examples_client_SOURCES = examples/client.c
-examples_client_CPPFLAGS = $(libmoonshot_CFLAGS) $(AM_CPPFLAGS) $(GEE_CFLAGS)
+examples_client_CPPFLAGS = $(libmoonshot_CFLAGS) $(AM_CPPFLAGS)
 examples_client_LDADD = ${top_builddir}/libmoonshot/libmoonshot.la
 tests_basic_SOURCES = tests/basic.c
 tests_basic_CPPFLAGS = $(moonshot_CFLAGS) $(AM_CPPFLAGS)
@@ -705,7 +741,6 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__confi
        echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \
        $(am__cd) $(top_srcdir) && \
          $(AUTOMAKE) --foreign Makefile
-.PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
          *config.status*) \
@@ -895,8 +930,8 @@ src/src_moonshot-moonshot-idcard-store.$(OBJEXT): src/$(am__dirstamp) \
        src/$(DEPDIR)/$(am__dirstamp)
 src/src_moonshot-moonshot-id.$(OBJEXT): src/$(am__dirstamp) \
        src/$(DEPDIR)/$(am__dirstamp)
-src/src_moonshot-moonshot-add-dialog.$(OBJEXT): src/$(am__dirstamp) \
-       src/$(DEPDIR)/$(am__dirstamp)
+src/src_moonshot-moonshot-identity-dialog.$(OBJEXT):  \
+       src/$(am__dirstamp) src/$(DEPDIR)/$(am__dirstamp)
 src/src_moonshot-moonshot-idcard-widget.$(OBJEXT):  \
        src/$(am__dirstamp) src/$(DEPDIR)/$(am__dirstamp)
 src/src_moonshot-moonshot-custom-vbox.$(OBJEXT): src/$(am__dirstamp) \
@@ -905,16 +940,26 @@ src/src_moonshot-moonshot-identities-manager.$(OBJEXT):  \
        src/$(am__dirstamp) src/$(DEPDIR)/$(am__dirstamp)
 src/src_moonshot-moonshot-identity-request.$(OBJEXT):  \
        src/$(am__dirstamp) src/$(DEPDIR)/$(am__dirstamp)
-src/src_moonshot-moonshot-server.$(OBJEXT): src/$(am__dirstamp) \
+src/src_moonshot-moonshot-server-linux.$(OBJEXT): src/$(am__dirstamp) \
+       src/$(DEPDIR)/$(am__dirstamp)
+src/src_moonshot-moonshot-settings.$(OBJEXT): src/$(am__dirstamp) \
        src/$(DEPDIR)/$(am__dirstamp)
 src/src_moonshot-moonshot-password-dialog.$(OBJEXT):  \
        src/$(am__dirstamp) src/$(DEPDIR)/$(am__dirstamp)
 src/src_moonshot-moonshot-provisioning-common.$(OBJEXT):  \
        src/$(am__dirstamp) src/$(DEPDIR)/$(am__dirstamp)
+src/src_moonshot-moonshot-trust-anchor-dialog.$(OBJEXT):  \
+       src/$(am__dirstamp) src/$(DEPDIR)/$(am__dirstamp)
 src/src_moonshot-moonshot-utils.$(OBJEXT): src/$(am__dirstamp) \
        src/$(DEPDIR)/$(am__dirstamp)
 src/src_moonshot-moonshot-futils.$(OBJEXT): src/$(am__dirstamp) \
        src/$(DEPDIR)/$(am__dirstamp)
+src/src_moonshot-moonshot-crypto-utils.$(OBJEXT): src/$(am__dirstamp) \
+       src/$(DEPDIR)/$(am__dirstamp)
+src/src_moonshot-moonshot-logger.$(OBJEXT): src/$(am__dirstamp) \
+       src/$(DEPDIR)/$(am__dirstamp)
+src/src_moonshot-moonshot-warning-dialog.$(OBJEXT):  \
+       src/$(am__dirstamp) src/$(DEPDIR)/$(am__dirstamp)
 libmoonshot/src_moonshot-moonshot-msrpc_s.$(OBJEXT):  \
        libmoonshot/$(am__dirstamp) \
        libmoonshot/$(DEPDIR)/$(am__dirstamp)
@@ -922,12 +967,16 @@ libmoonshot/src_moonshot-moonshot-msrpc_s.$(OBJEXT):  \
 src/moonshot$(EXEEXT): $(src_moonshot_OBJECTS) $(src_moonshot_DEPENDENCIES) $(EXTRA_src_moonshot_DEPENDENCIES) src/$(am__dirstamp)
        @rm -f src/moonshot$(EXEEXT)
        $(AM_V_CCLD)$(src_moonshot_LINK) $(src_moonshot_OBJECTS) $(src_moonshot_LDADD) $(LIBS)
+src/src_moonshot_webp-moonshot-crypto-utils.$(OBJEXT):  \
+       src/$(am__dirstamp) src/$(DEPDIR)/$(am__dirstamp)
 src/src_moonshot_webp-moonshot-webp-parser.$(OBJEXT):  \
        src/$(am__dirstamp) src/$(DEPDIR)/$(am__dirstamp)
 src/src_moonshot_webp-moonshot-provisioning-common.$(OBJEXT):  \
        src/$(am__dirstamp) src/$(DEPDIR)/$(am__dirstamp)
 src/src_moonshot_webp-moonshot-id.$(OBJEXT): src/$(am__dirstamp) \
        src/$(DEPDIR)/$(am__dirstamp)
+src/src_moonshot_webp-moonshot-logger.$(OBJEXT): src/$(am__dirstamp) \
+       src/$(DEPDIR)/$(am__dirstamp)
 
 src/moonshot-webp$(EXEEXT): $(src_moonshot_webp_OBJECTS) $(src_moonshot_webp_DEPENDENCIES) $(EXTRA_src_moonshot_webp_DEPENDENCIES) src/$(am__dirstamp)
        @rm -f src/moonshot-webp$(EXEEXT)
@@ -998,23 +1047,30 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@libmoonshot/$(DEPDIR)/libmoonshot_libmoonshot_la-libmoonshot-msrpc.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@libmoonshot/$(DEPDIR)/libmoonshot_libmoonshot_la-moonshot-msrpc_c.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@libmoonshot/$(DEPDIR)/src_moonshot-moonshot-msrpc_s.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_moonshot-moonshot-add-dialog.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_moonshot-moonshot-crypto-utils.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_moonshot-moonshot-custom-vbox.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_moonshot-moonshot-futils.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_moonshot-moonshot-id.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_moonshot-moonshot-idcard-store.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_moonshot-moonshot-idcard-widget.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_moonshot-moonshot-identities-manager.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_moonshot-moonshot-identity-dialog.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_moonshot-moonshot-identity-management-view.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_moonshot-moonshot-identity-manager-app.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_moonshot-moonshot-identity-request.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_moonshot-moonshot-keyring-store.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_moonshot-moonshot-local-flat-file-store.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_moonshot-moonshot-logger.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_moonshot-moonshot-password-dialog.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_moonshot-moonshot-provisioning-common.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_moonshot-moonshot-server.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_moonshot-moonshot-server-linux.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_moonshot-moonshot-settings.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_moonshot-moonshot-trust-anchor-dialog.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_moonshot-moonshot-utils.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_moonshot-moonshot-warning-dialog.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_moonshot_webp-moonshot-crypto-utils.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_moonshot_webp-moonshot-id.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_moonshot_webp-moonshot-logger.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_moonshot_webp-moonshot-provisioning-common.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/src_moonshot_webp-moonshot-webp-parser.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/tests_basic-basic.Po@am__quote@
@@ -1183,19 +1239,19 @@ src/src_moonshot-moonshot-id.obj: src/moonshot-id.c
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -c -o src/src_moonshot-moonshot-id.obj `if test -f 'src/moonshot-id.c'; then $(CYGPATH_W) 'src/moonshot-id.c'; else $(CYGPATH_W) '$(srcdir)/src/moonshot-id.c'; fi`
 
-src/src_moonshot-moonshot-add-dialog.o: src/moonshot-add-dialog.c
-@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -MT src/src_moonshot-moonshot-add-dialog.o -MD -MP -MF src/$(DEPDIR)/src_moonshot-moonshot-add-dialog.Tpo -c -o src/src_moonshot-moonshot-add-dialog.o `test -f 'src/moonshot-add-dialog.c' || echo '$(srcdir)/'`src/moonshot-add-dialog.c
-@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/$(DEPDIR)/src_moonshot-moonshot-add-dialog.Tpo src/$(DEPDIR)/src_moonshot-moonshot-add-dialog.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/moonshot-add-dialog.c' object='src/src_moonshot-moonshot-add-dialog.o' libtool=no @AMDEPBACKSLASH@
+src/src_moonshot-moonshot-identity-dialog.o: src/moonshot-identity-dialog.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -MT src/src_moonshot-moonshot-identity-dialog.o -MD -MP -MF src/$(DEPDIR)/src_moonshot-moonshot-identity-dialog.Tpo -c -o src/src_moonshot-moonshot-identity-dialog.o `test -f 'src/moonshot-identity-dialog.c' || echo '$(srcdir)/'`src/moonshot-identity-dialog.c
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/$(DEPDIR)/src_moonshot-moonshot-identity-dialog.Tpo src/$(DEPDIR)/src_moonshot-moonshot-identity-dialog.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/moonshot-identity-dialog.c' object='src/src_moonshot-moonshot-identity-dialog.o' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -c -o src/src_moonshot-moonshot-add-dialog.o `test -f 'src/moonshot-add-dialog.c' || echo '$(srcdir)/'`src/moonshot-add-dialog.c
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -c -o src/src_moonshot-moonshot-identity-dialog.o `test -f 'src/moonshot-identity-dialog.c' || echo '$(srcdir)/'`src/moonshot-identity-dialog.c
 
-src/src_moonshot-moonshot-add-dialog.obj: src/moonshot-add-dialog.c
-@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -MT src/src_moonshot-moonshot-add-dialog.obj -MD -MP -MF src/$(DEPDIR)/src_moonshot-moonshot-add-dialog.Tpo -c -o src/src_moonshot-moonshot-add-dialog.obj `if test -f 'src/moonshot-add-dialog.c'; then $(CYGPATH_W) 'src/moonshot-add-dialog.c'; else $(CYGPATH_W) '$(srcdir)/src/moonshot-add-dialog.c'; fi`
-@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/$(DEPDIR)/src_moonshot-moonshot-add-dialog.Tpo src/$(DEPDIR)/src_moonshot-moonshot-add-dialog.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/moonshot-add-dialog.c' object='src/src_moonshot-moonshot-add-dialog.obj' libtool=no @AMDEPBACKSLASH@
+src/src_moonshot-moonshot-identity-dialog.obj: src/moonshot-identity-dialog.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -MT src/src_moonshot-moonshot-identity-dialog.obj -MD -MP -MF src/$(DEPDIR)/src_moonshot-moonshot-identity-dialog.Tpo -c -o src/src_moonshot-moonshot-identity-dialog.obj `if test -f 'src/moonshot-identity-dialog.c'; then $(CYGPATH_W) 'src/moonshot-identity-dialog.c'; else $(CYGPATH_W) '$(srcdir)/src/moonshot-identity-dialog.c'; fi`
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/$(DEPDIR)/src_moonshot-moonshot-identity-dialog.Tpo src/$(DEPDIR)/src_moonshot-moonshot-identity-dialog.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/moonshot-identity-dialog.c' object='src/src_moonshot-moonshot-identity-dialog.obj' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -c -o src/src_moonshot-moonshot-add-dialog.obj `if test -f 'src/moonshot-add-dialog.c'; then $(CYGPATH_W) 'src/moonshot-add-dialog.c'; else $(CYGPATH_W) '$(srcdir)/src/moonshot-add-dialog.c'; fi`
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -c -o src/src_moonshot-moonshot-identity-dialog.obj `if test -f 'src/moonshot-identity-dialog.c'; then $(CYGPATH_W) 'src/moonshot-identity-dialog.c'; else $(CYGPATH_W) '$(srcdir)/src/moonshot-identity-dialog.c'; fi`
 
 src/src_moonshot-moonshot-idcard-widget.o: src/moonshot-idcard-widget.c
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -MT src/src_moonshot-moonshot-idcard-widget.o -MD -MP -MF src/$(DEPDIR)/src_moonshot-moonshot-idcard-widget.Tpo -c -o src/src_moonshot-moonshot-idcard-widget.o `test -f 'src/moonshot-idcard-widget.c' || echo '$(srcdir)/'`src/moonshot-idcard-widget.c
@@ -1253,19 +1309,33 @@ src/src_moonshot-moonshot-identity-request.obj: src/moonshot-identity-request.c
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -c -o src/src_moonshot-moonshot-identity-request.obj `if test -f 'src/moonshot-identity-request.c'; then $(CYGPATH_W) 'src/moonshot-identity-request.c'; else $(CYGPATH_W) '$(srcdir)/src/moonshot-identity-request.c'; fi`
 
-src/src_moonshot-moonshot-server.o: src/moonshot-server.c
-@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -MT src/src_moonshot-moonshot-server.o -MD -MP -MF src/$(DEPDIR)/src_moonshot-moonshot-server.Tpo -c -o src/src_moonshot-moonshot-server.o `test -f 'src/moonshot-server.c' || echo '$(srcdir)/'`src/moonshot-server.c
-@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/$(DEPDIR)/src_moonshot-moonshot-server.Tpo src/$(DEPDIR)/src_moonshot-moonshot-server.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/moonshot-server.c' object='src/src_moonshot-moonshot-server.o' libtool=no @AMDEPBACKSLASH@
+src/src_moonshot-moonshot-server-linux.o: src/moonshot-server-linux.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -MT src/src_moonshot-moonshot-server-linux.o -MD -MP -MF src/$(DEPDIR)/src_moonshot-moonshot-server-linux.Tpo -c -o src/src_moonshot-moonshot-server-linux.o `test -f 'src/moonshot-server-linux.c' || echo '$(srcdir)/'`src/moonshot-server-linux.c
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/$(DEPDIR)/src_moonshot-moonshot-server-linux.Tpo src/$(DEPDIR)/src_moonshot-moonshot-server-linux.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/moonshot-server-linux.c' object='src/src_moonshot-moonshot-server-linux.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -c -o src/src_moonshot-moonshot-server-linux.o `test -f 'src/moonshot-server-linux.c' || echo '$(srcdir)/'`src/moonshot-server-linux.c
+
+src/src_moonshot-moonshot-server-linux.obj: src/moonshot-server-linux.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -MT src/src_moonshot-moonshot-server-linux.obj -MD -MP -MF src/$(DEPDIR)/src_moonshot-moonshot-server-linux.Tpo -c -o src/src_moonshot-moonshot-server-linux.obj `if test -f 'src/moonshot-server-linux.c'; then $(CYGPATH_W) 'src/moonshot-server-linux.c'; else $(CYGPATH_W) '$(srcdir)/src/moonshot-server-linux.c'; fi`
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/$(DEPDIR)/src_moonshot-moonshot-server-linux.Tpo src/$(DEPDIR)/src_moonshot-moonshot-server-linux.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/moonshot-server-linux.c' object='src/src_moonshot-moonshot-server-linux.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -c -o src/src_moonshot-moonshot-server-linux.obj `if test -f 'src/moonshot-server-linux.c'; then $(CYGPATH_W) 'src/moonshot-server-linux.c'; else $(CYGPATH_W) '$(srcdir)/src/moonshot-server-linux.c'; fi`
+
+src/src_moonshot-moonshot-settings.o: src/moonshot-settings.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -MT src/src_moonshot-moonshot-settings.o -MD -MP -MF src/$(DEPDIR)/src_moonshot-moonshot-settings.Tpo -c -o src/src_moonshot-moonshot-settings.o `test -f 'src/moonshot-settings.c' || echo '$(srcdir)/'`src/moonshot-settings.c
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/$(DEPDIR)/src_moonshot-moonshot-settings.Tpo src/$(DEPDIR)/src_moonshot-moonshot-settings.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/moonshot-settings.c' object='src/src_moonshot-moonshot-settings.o' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -c -o src/src_moonshot-moonshot-server.o `test -f 'src/moonshot-server.c' || echo '$(srcdir)/'`src/moonshot-server.c
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -c -o src/src_moonshot-moonshot-settings.o `test -f 'src/moonshot-settings.c' || echo '$(srcdir)/'`src/moonshot-settings.c
 
-src/src_moonshot-moonshot-server.obj: src/moonshot-server.c
-@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -MT src/src_moonshot-moonshot-server.obj -MD -MP -MF src/$(DEPDIR)/src_moonshot-moonshot-server.Tpo -c -o src/src_moonshot-moonshot-server.obj `if test -f 'src/moonshot-server.c'; then $(CYGPATH_W) 'src/moonshot-server.c'; else $(CYGPATH_W) '$(srcdir)/src/moonshot-server.c'; fi`
-@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/$(DEPDIR)/src_moonshot-moonshot-server.Tpo src/$(DEPDIR)/src_moonshot-moonshot-server.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/moonshot-server.c' object='src/src_moonshot-moonshot-server.obj' libtool=no @AMDEPBACKSLASH@
+src/src_moonshot-moonshot-settings.obj: src/moonshot-settings.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -MT src/src_moonshot-moonshot-settings.obj -MD -MP -MF src/$(DEPDIR)/src_moonshot-moonshot-settings.Tpo -c -o src/src_moonshot-moonshot-settings.obj `if test -f 'src/moonshot-settings.c'; then $(CYGPATH_W) 'src/moonshot-settings.c'; else $(CYGPATH_W) '$(srcdir)/src/moonshot-settings.c'; fi`
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/$(DEPDIR)/src_moonshot-moonshot-settings.Tpo src/$(DEPDIR)/src_moonshot-moonshot-settings.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/moonshot-settings.c' object='src/src_moonshot-moonshot-settings.obj' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -c -o src/src_moonshot-moonshot-server.obj `if test -f 'src/moonshot-server.c'; then $(CYGPATH_W) 'src/moonshot-server.c'; else $(CYGPATH_W) '$(srcdir)/src/moonshot-server.c'; fi`
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -c -o src/src_moonshot-moonshot-settings.obj `if test -f 'src/moonshot-settings.c'; then $(CYGPATH_W) 'src/moonshot-settings.c'; else $(CYGPATH_W) '$(srcdir)/src/moonshot-settings.c'; fi`
 
 src/src_moonshot-moonshot-password-dialog.o: src/moonshot-password-dialog.c
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -MT src/src_moonshot-moonshot-password-dialog.o -MD -MP -MF src/$(DEPDIR)/src_moonshot-moonshot-password-dialog.Tpo -c -o src/src_moonshot-moonshot-password-dialog.o `test -f 'src/moonshot-password-dialog.c' || echo '$(srcdir)/'`src/moonshot-password-dialog.c
@@ -1295,6 +1365,20 @@ src/src_moonshot-moonshot-provisioning-common.obj: src/moonshot-provisioning-com
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -c -o src/src_moonshot-moonshot-provisioning-common.obj `if test -f 'src/moonshot-provisioning-common.c'; then $(CYGPATH_W) 'src/moonshot-provisioning-common.c'; else $(CYGPATH_W) '$(srcdir)/src/moonshot-provisioning-common.c'; fi`
 
+src/src_moonshot-moonshot-trust-anchor-dialog.o: src/moonshot-trust-anchor-dialog.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -MT src/src_moonshot-moonshot-trust-anchor-dialog.o -MD -MP -MF src/$(DEPDIR)/src_moonshot-moonshot-trust-anchor-dialog.Tpo -c -o src/src_moonshot-moonshot-trust-anchor-dialog.o `test -f 'src/moonshot-trust-anchor-dialog.c' || echo '$(srcdir)/'`src/moonshot-trust-anchor-dialog.c
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/$(DEPDIR)/src_moonshot-moonshot-trust-anchor-dialog.Tpo src/$(DEPDIR)/src_moonshot-moonshot-trust-anchor-dialog.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/moonshot-trust-anchor-dialog.c' object='src/src_moonshot-moonshot-trust-anchor-dialog.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -c -o src/src_moonshot-moonshot-trust-anchor-dialog.o `test -f 'src/moonshot-trust-anchor-dialog.c' || echo '$(srcdir)/'`src/moonshot-trust-anchor-dialog.c
+
+src/src_moonshot-moonshot-trust-anchor-dialog.obj: src/moonshot-trust-anchor-dialog.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -MT src/src_moonshot-moonshot-trust-anchor-dialog.obj -MD -MP -MF src/$(DEPDIR)/src_moonshot-moonshot-trust-anchor-dialog.Tpo -c -o src/src_moonshot-moonshot-trust-anchor-dialog.obj `if test -f 'src/moonshot-trust-anchor-dialog.c'; then $(CYGPATH_W) 'src/moonshot-trust-anchor-dialog.c'; else $(CYGPATH_W) '$(srcdir)/src/moonshot-trust-anchor-dialog.c'; fi`
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/$(DEPDIR)/src_moonshot-moonshot-trust-anchor-dialog.Tpo src/$(DEPDIR)/src_moonshot-moonshot-trust-anchor-dialog.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/moonshot-trust-anchor-dialog.c' object='src/src_moonshot-moonshot-trust-anchor-dialog.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -c -o src/src_moonshot-moonshot-trust-anchor-dialog.obj `if test -f 'src/moonshot-trust-anchor-dialog.c'; then $(CYGPATH_W) 'src/moonshot-trust-anchor-dialog.c'; else $(CYGPATH_W) '$(srcdir)/src/moonshot-trust-anchor-dialog.c'; fi`
+
 src/src_moonshot-moonshot-utils.o: src/moonshot-utils.c
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -MT src/src_moonshot-moonshot-utils.o -MD -MP -MF src/$(DEPDIR)/src_moonshot-moonshot-utils.Tpo -c -o src/src_moonshot-moonshot-utils.o `test -f 'src/moonshot-utils.c' || echo '$(srcdir)/'`src/moonshot-utils.c
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/$(DEPDIR)/src_moonshot-moonshot-utils.Tpo src/$(DEPDIR)/src_moonshot-moonshot-utils.Po
@@ -1323,6 +1407,48 @@ src/src_moonshot-moonshot-futils.obj: src/moonshot-futils.c
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -c -o src/src_moonshot-moonshot-futils.obj `if test -f 'src/moonshot-futils.c'; then $(CYGPATH_W) 'src/moonshot-futils.c'; else $(CYGPATH_W) '$(srcdir)/src/moonshot-futils.c'; fi`
 
+src/src_moonshot-moonshot-crypto-utils.o: src/moonshot-crypto-utils.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -MT src/src_moonshot-moonshot-crypto-utils.o -MD -MP -MF src/$(DEPDIR)/src_moonshot-moonshot-crypto-utils.Tpo -c -o src/src_moonshot-moonshot-crypto-utils.o `test -f 'src/moonshot-crypto-utils.c' || echo '$(srcdir)/'`src/moonshot-crypto-utils.c
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/$(DEPDIR)/src_moonshot-moonshot-crypto-utils.Tpo src/$(DEPDIR)/src_moonshot-moonshot-crypto-utils.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/moonshot-crypto-utils.c' object='src/src_moonshot-moonshot-crypto-utils.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -c -o src/src_moonshot-moonshot-crypto-utils.o `test -f 'src/moonshot-crypto-utils.c' || echo '$(srcdir)/'`src/moonshot-crypto-utils.c
+
+src/src_moonshot-moonshot-crypto-utils.obj: src/moonshot-crypto-utils.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -MT src/src_moonshot-moonshot-crypto-utils.obj -MD -MP -MF src/$(DEPDIR)/src_moonshot-moonshot-crypto-utils.Tpo -c -o src/src_moonshot-moonshot-crypto-utils.obj `if test -f 'src/moonshot-crypto-utils.c'; then $(CYGPATH_W) 'src/moonshot-crypto-utils.c'; else $(CYGPATH_W) '$(srcdir)/src/moonshot-crypto-utils.c'; fi`
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/$(DEPDIR)/src_moonshot-moonshot-crypto-utils.Tpo src/$(DEPDIR)/src_moonshot-moonshot-crypto-utils.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/moonshot-crypto-utils.c' object='src/src_moonshot-moonshot-crypto-utils.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -c -o src/src_moonshot-moonshot-crypto-utils.obj `if test -f 'src/moonshot-crypto-utils.c'; then $(CYGPATH_W) 'src/moonshot-crypto-utils.c'; else $(CYGPATH_W) '$(srcdir)/src/moonshot-crypto-utils.c'; fi`
+
+src/src_moonshot-moonshot-logger.o: src/moonshot-logger.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -MT src/src_moonshot-moonshot-logger.o -MD -MP -MF src/$(DEPDIR)/src_moonshot-moonshot-logger.Tpo -c -o src/src_moonshot-moonshot-logger.o `test -f 'src/moonshot-logger.c' || echo '$(srcdir)/'`src/moonshot-logger.c
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/$(DEPDIR)/src_moonshot-moonshot-logger.Tpo src/$(DEPDIR)/src_moonshot-moonshot-logger.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/moonshot-logger.c' object='src/src_moonshot-moonshot-logger.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -c -o src/src_moonshot-moonshot-logger.o `test -f 'src/moonshot-logger.c' || echo '$(srcdir)/'`src/moonshot-logger.c
+
+src/src_moonshot-moonshot-logger.obj: src/moonshot-logger.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -MT src/src_moonshot-moonshot-logger.obj -MD -MP -MF src/$(DEPDIR)/src_moonshot-moonshot-logger.Tpo -c -o src/src_moonshot-moonshot-logger.obj `if test -f 'src/moonshot-logger.c'; then $(CYGPATH_W) 'src/moonshot-logger.c'; else $(CYGPATH_W) '$(srcdir)/src/moonshot-logger.c'; fi`
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/$(DEPDIR)/src_moonshot-moonshot-logger.Tpo src/$(DEPDIR)/src_moonshot-moonshot-logger.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/moonshot-logger.c' object='src/src_moonshot-moonshot-logger.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -c -o src/src_moonshot-moonshot-logger.obj `if test -f 'src/moonshot-logger.c'; then $(CYGPATH_W) 'src/moonshot-logger.c'; else $(CYGPATH_W) '$(srcdir)/src/moonshot-logger.c'; fi`
+
+src/src_moonshot-moonshot-warning-dialog.o: src/moonshot-warning-dialog.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -MT src/src_moonshot-moonshot-warning-dialog.o -MD -MP -MF src/$(DEPDIR)/src_moonshot-moonshot-warning-dialog.Tpo -c -o src/src_moonshot-moonshot-warning-dialog.o `test -f 'src/moonshot-warning-dialog.c' || echo '$(srcdir)/'`src/moonshot-warning-dialog.c
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/$(DEPDIR)/src_moonshot-moonshot-warning-dialog.Tpo src/$(DEPDIR)/src_moonshot-moonshot-warning-dialog.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/moonshot-warning-dialog.c' object='src/src_moonshot-moonshot-warning-dialog.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -c -o src/src_moonshot-moonshot-warning-dialog.o `test -f 'src/moonshot-warning-dialog.c' || echo '$(srcdir)/'`src/moonshot-warning-dialog.c
+
+src/src_moonshot-moonshot-warning-dialog.obj: src/moonshot-warning-dialog.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -MT src/src_moonshot-moonshot-warning-dialog.obj -MD -MP -MF src/$(DEPDIR)/src_moonshot-moonshot-warning-dialog.Tpo -c -o src/src_moonshot-moonshot-warning-dialog.obj `if test -f 'src/moonshot-warning-dialog.c'; then $(CYGPATH_W) 'src/moonshot-warning-dialog.c'; else $(CYGPATH_W) '$(srcdir)/src/moonshot-warning-dialog.c'; fi`
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/$(DEPDIR)/src_moonshot-moonshot-warning-dialog.Tpo src/$(DEPDIR)/src_moonshot-moonshot-warning-dialog.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/moonshot-warning-dialog.c' object='src/src_moonshot-moonshot-warning-dialog.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -c -o src/src_moonshot-moonshot-warning-dialog.obj `if test -f 'src/moonshot-warning-dialog.c'; then $(CYGPATH_W) 'src/moonshot-warning-dialog.c'; else $(CYGPATH_W) '$(srcdir)/src/moonshot-warning-dialog.c'; fi`
+
 libmoonshot/src_moonshot-moonshot-msrpc_s.o: libmoonshot/moonshot-msrpc_s.c
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -MT libmoonshot/src_moonshot-moonshot-msrpc_s.o -MD -MP -MF libmoonshot/$(DEPDIR)/src_moonshot-moonshot-msrpc_s.Tpo -c -o libmoonshot/src_moonshot-moonshot-msrpc_s.o `test -f 'libmoonshot/moonshot-msrpc_s.c' || echo '$(srcdir)/'`libmoonshot/moonshot-msrpc_s.c
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) libmoonshot/$(DEPDIR)/src_moonshot-moonshot-msrpc_s.Tpo libmoonshot/$(DEPDIR)/src_moonshot-moonshot-msrpc_s.Po
@@ -1337,6 +1463,20 @@ libmoonshot/src_moonshot-moonshot-msrpc_s.obj: libmoonshot/moonshot-msrpc_s.c
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_CFLAGS) $(CFLAGS) -c -o libmoonshot/src_moonshot-moonshot-msrpc_s.obj `if test -f 'libmoonshot/moonshot-msrpc_s.c'; then $(CYGPATH_W) 'libmoonshot/moonshot-msrpc_s.c'; else $(CYGPATH_W) '$(srcdir)/libmoonshot/moonshot-msrpc_s.c'; fi`
 
+src/src_moonshot_webp-moonshot-crypto-utils.o: src/moonshot-crypto-utils.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_webp_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_webp_CFLAGS) $(CFLAGS) -MT src/src_moonshot_webp-moonshot-crypto-utils.o -MD -MP -MF src/$(DEPDIR)/src_moonshot_webp-moonshot-crypto-utils.Tpo -c -o src/src_moonshot_webp-moonshot-crypto-utils.o `test -f 'src/moonshot-crypto-utils.c' || echo '$(srcdir)/'`src/moonshot-crypto-utils.c
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/$(DEPDIR)/src_moonshot_webp-moonshot-crypto-utils.Tpo src/$(DEPDIR)/src_moonshot_webp-moonshot-crypto-utils.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/moonshot-crypto-utils.c' object='src/src_moonshot_webp-moonshot-crypto-utils.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_webp_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_webp_CFLAGS) $(CFLAGS) -c -o src/src_moonshot_webp-moonshot-crypto-utils.o `test -f 'src/moonshot-crypto-utils.c' || echo '$(srcdir)/'`src/moonshot-crypto-utils.c
+
+src/src_moonshot_webp-moonshot-crypto-utils.obj: src/moonshot-crypto-utils.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_webp_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_webp_CFLAGS) $(CFLAGS) -MT src/src_moonshot_webp-moonshot-crypto-utils.obj -MD -MP -MF src/$(DEPDIR)/src_moonshot_webp-moonshot-crypto-utils.Tpo -c -o src/src_moonshot_webp-moonshot-crypto-utils.obj `if test -f 'src/moonshot-crypto-utils.c'; then $(CYGPATH_W) 'src/moonshot-crypto-utils.c'; else $(CYGPATH_W) '$(srcdir)/src/moonshot-crypto-utils.c'; fi`
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/$(DEPDIR)/src_moonshot_webp-moonshot-crypto-utils.Tpo src/$(DEPDIR)/src_moonshot_webp-moonshot-crypto-utils.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/moonshot-crypto-utils.c' object='src/src_moonshot_webp-moonshot-crypto-utils.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_webp_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_webp_CFLAGS) $(CFLAGS) -c -o src/src_moonshot_webp-moonshot-crypto-utils.obj `if test -f 'src/moonshot-crypto-utils.c'; then $(CYGPATH_W) 'src/moonshot-crypto-utils.c'; else $(CYGPATH_W) '$(srcdir)/src/moonshot-crypto-utils.c'; fi`
+
 src/src_moonshot_webp-moonshot-webp-parser.o: src/moonshot-webp-parser.c
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_webp_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_webp_CFLAGS) $(CFLAGS) -MT src/src_moonshot_webp-moonshot-webp-parser.o -MD -MP -MF src/$(DEPDIR)/src_moonshot_webp-moonshot-webp-parser.Tpo -c -o src/src_moonshot_webp-moonshot-webp-parser.o `test -f 'src/moonshot-webp-parser.c' || echo '$(srcdir)/'`src/moonshot-webp-parser.c
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/$(DEPDIR)/src_moonshot_webp-moonshot-webp-parser.Tpo src/$(DEPDIR)/src_moonshot_webp-moonshot-webp-parser.Po
@@ -1379,6 +1519,20 @@ src/src_moonshot_webp-moonshot-id.obj: src/moonshot-id.c
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_webp_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_webp_CFLAGS) $(CFLAGS) -c -o src/src_moonshot_webp-moonshot-id.obj `if test -f 'src/moonshot-id.c'; then $(CYGPATH_W) 'src/moonshot-id.c'; else $(CYGPATH_W) '$(srcdir)/src/moonshot-id.c'; fi`
 
+src/src_moonshot_webp-moonshot-logger.o: src/moonshot-logger.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_webp_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_webp_CFLAGS) $(CFLAGS) -MT src/src_moonshot_webp-moonshot-logger.o -MD -MP -MF src/$(DEPDIR)/src_moonshot_webp-moonshot-logger.Tpo -c -o src/src_moonshot_webp-moonshot-logger.o `test -f 'src/moonshot-logger.c' || echo '$(srcdir)/'`src/moonshot-logger.c
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/$(DEPDIR)/src_moonshot_webp-moonshot-logger.Tpo src/$(DEPDIR)/src_moonshot_webp-moonshot-logger.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/moonshot-logger.c' object='src/src_moonshot_webp-moonshot-logger.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_webp_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_webp_CFLAGS) $(CFLAGS) -c -o src/src_moonshot_webp-moonshot-logger.o `test -f 'src/moonshot-logger.c' || echo '$(srcdir)/'`src/moonshot-logger.c
+
+src/src_moonshot_webp-moonshot-logger.obj: src/moonshot-logger.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_webp_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_webp_CFLAGS) $(CFLAGS) -MT src/src_moonshot_webp-moonshot-logger.obj -MD -MP -MF src/$(DEPDIR)/src_moonshot_webp-moonshot-logger.Tpo -c -o src/src_moonshot_webp-moonshot-logger.obj `if test -f 'src/moonshot-logger.c'; then $(CYGPATH_W) 'src/moonshot-logger.c'; else $(CYGPATH_W) '$(srcdir)/src/moonshot-logger.c'; fi`
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) src/$(DEPDIR)/src_moonshot_webp-moonshot-logger.Tpo src/$(DEPDIR)/src_moonshot_webp-moonshot-logger.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='src/moonshot-logger.c' object='src/src_moonshot_webp-moonshot-logger.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(src_moonshot_webp_CPPFLAGS) $(CPPFLAGS) $(src_moonshot_webp_CFLAGS) $(CFLAGS) -c -o src/src_moonshot_webp-moonshot-logger.obj `if test -f 'src/moonshot-logger.c'; then $(CYGPATH_W) 'src/moonshot-logger.c'; else $(CYGPATH_W) '$(srcdir)/src/moonshot-logger.c'; fi`
+
 tests/tests_basic-basic.o: tests/basic.c
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tests_basic_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT tests/tests_basic-basic.o -MD -MP -MF tests/$(DEPDIR)/tests_basic-basic.Tpo -c -o tests/tests_basic-basic.o `test -f 'tests/basic.c' || echo '$(srcdir)/'`tests/basic.c
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) tests/$(DEPDIR)/tests_basic-basic.Tpo tests/$(DEPDIR)/tests_basic-basic.Po
@@ -1392,30 +1546,6 @@ tests/tests_basic-basic.obj: tests/basic.c
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='tests/basic.c' object='tests/tests_basic-basic.obj' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(tests_basic_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o tests/tests_basic-basic.obj `if test -f 'tests/basic.c'; then $(CYGPATH_W) 'tests/basic.c'; else $(CYGPATH_W) '$(srcdir)/tests/basic.c'; fi`
-$(srcdir)/src/moonshot-webp-parser.c: $(srcdir)/src_moonshot_webp_vala.stamp
-       @if test -f $@; then :; else rm -f $(srcdir)/src_moonshot_webp_vala.stamp; fi
-       @if test -f $@; then :; else \
-         $(MAKE) $(AM_MAKEFLAGS) $(srcdir)/src_moonshot_webp_vala.stamp; \
-       fi
-$(srcdir)/src/moonshot-provisioning-common.c: $(srcdir)/src_moonshot_webp_vala.stamp
-       @if test -f $@; then :; else rm -f $(srcdir)/src_moonshot_webp_vala.stamp; fi
-       @if test -f $@; then :; else \
-         $(MAKE) $(AM_MAKEFLAGS) $(srcdir)/src_moonshot_webp_vala.stamp; \
-       fi
-$(srcdir)/src/moonshot-id.c: $(srcdir)/src_moonshot_webp_vala.stamp
-       @if test -f $@; then :; else rm -f $(srcdir)/src_moonshot_webp_vala.stamp; fi
-       @if test -f $@; then :; else \
-         $(MAKE) $(AM_MAKEFLAGS) $(srcdir)/src_moonshot_webp_vala.stamp; \
-       fi
-$(srcdir)/config.vapi: $(srcdir)/src_moonshot_webp_vala.stamp
-       @if test -f $@; then :; else rm -f $(srcdir)/src_moonshot_webp_vala.stamp; fi
-       @if test -f $@; then :; else \
-         $(MAKE) $(AM_MAKEFLAGS) $(srcdir)/src_moonshot_webp_vala.stamp; \
-       fi
-$(srcdir)/src_moonshot_webp_vala.stamp: src/moonshot-webp-parser.vala src/moonshot-provisioning-common.vala src/moonshot-id.vala
-       $(AM_V_at)rm -f $@ && echo stamp > $@-t
-       $(AM_V_VALAC)$(am__cd) $(srcdir) && $(VALAC) $(src_moonshot_webp_VALAFLAGS) $(VALAFLAGS) -C src/moonshot-webp-parser.vala src/moonshot-provisioning-common.vala src/moonshot-id.vala
-       $(AM_V_at)mv -f $@-t $@
 $(srcdir)/src/moonshot-identity-manager-app.c: $(srcdir)/src_moonshot_vala.stamp
        @if test -f $@; then :; else rm -f $(srcdir)/src_moonshot_vala.stamp; fi
        @if test -f $@; then :; else \
@@ -1446,7 +1576,7 @@ $(srcdir)/src/moonshot-id.c: $(srcdir)/src_moonshot_vala.stamp
        @if test -f $@; then :; else \
          $(MAKE) $(AM_MAKEFLAGS) $(srcdir)/src_moonshot_vala.stamp; \
        fi
-$(srcdir)/src/moonshot-add-dialog.c: $(srcdir)/src_moonshot_vala.stamp
+$(srcdir)/src/moonshot-identity-dialog.c: $(srcdir)/src_moonshot_vala.stamp
        @if test -f $@; then :; else rm -f $(srcdir)/src_moonshot_vala.stamp; fi
        @if test -f $@; then :; else \
          $(MAKE) $(AM_MAKEFLAGS) $(srcdir)/src_moonshot_vala.stamp; \
@@ -1471,7 +1601,12 @@ $(srcdir)/src/moonshot-identity-request.c: $(srcdir)/src_moonshot_vala.stamp
        @if test -f $@; then :; else \
          $(MAKE) $(AM_MAKEFLAGS) $(srcdir)/src_moonshot_vala.stamp; \
        fi
-$(srcdir)/src/moonshot-server.c: $(srcdir)/src_moonshot_vala.stamp
+$(srcdir)/src/moonshot-server-linux.c: $(srcdir)/src_moonshot_vala.stamp
+       @if test -f $@; then :; else rm -f $(srcdir)/src_moonshot_vala.stamp; fi
+       @if test -f $@; then :; else \
+         $(MAKE) $(AM_MAKEFLAGS) $(srcdir)/src_moonshot_vala.stamp; \
+       fi
+$(srcdir)/src/moonshot-settings.c: $(srcdir)/src_moonshot_vala.stamp
        @if test -f $@; then :; else rm -f $(srcdir)/src_moonshot_vala.stamp; fi
        @if test -f $@; then :; else \
          $(MAKE) $(AM_MAKEFLAGS) $(srcdir)/src_moonshot_vala.stamp; \
@@ -1486,19 +1621,63 @@ $(srcdir)/src/moonshot-provisioning-common.c: $(srcdir)/src_moonshot_vala.stamp
        @if test -f $@; then :; else \
          $(MAKE) $(AM_MAKEFLAGS) $(srcdir)/src_moonshot_vala.stamp; \
        fi
+$(srcdir)/src/moonshot-trust-anchor-dialog.c: $(srcdir)/src_moonshot_vala.stamp
+       @if test -f $@; then :; else rm -f $(srcdir)/src_moonshot_vala.stamp; fi
+       @if test -f $@; then :; else \
+         $(MAKE) $(AM_MAKEFLAGS) $(srcdir)/src_moonshot_vala.stamp; \
+       fi
 $(srcdir)/src/moonshot-utils.c: $(srcdir)/src_moonshot_vala.stamp
        @if test -f $@; then :; else rm -f $(srcdir)/src_moonshot_vala.stamp; fi
        @if test -f $@; then :; else \
          $(MAKE) $(AM_MAKEFLAGS) $(srcdir)/src_moonshot_vala.stamp; \
        fi
+$(srcdir)/src/moonshot-logger.c: $(srcdir)/src_moonshot_vala.stamp
+       @if test -f $@; then :; else rm -f $(srcdir)/src_moonshot_vala.stamp; fi
+       @if test -f $@; then :; else \
+         $(MAKE) $(AM_MAKEFLAGS) $(srcdir)/src_moonshot_vala.stamp; \
+       fi
+$(srcdir)/src/moonshot-warning-dialog.c: $(srcdir)/src_moonshot_vala.stamp
+       @if test -f $@; then :; else rm -f $(srcdir)/src_moonshot_vala.stamp; fi
+       @if test -f $@; then :; else \
+         $(MAKE) $(AM_MAKEFLAGS) $(srcdir)/src_moonshot_vala.stamp; \
+       fi
 $(srcdir)/config.vapi: $(srcdir)/src_moonshot_vala.stamp
        @if test -f $@; then :; else rm -f $(srcdir)/src_moonshot_vala.stamp; fi
        @if test -f $@; then :; else \
          $(MAKE) $(AM_MAKEFLAGS) $(srcdir)/src_moonshot_vala.stamp; \
        fi
-$(srcdir)/src_moonshot_vala.stamp: src/moonshot-identity-manager-app.vala src/moonshot-identity-management-view.vala src/moonshot-local-flat-file-store.vala src/moonshot-keyring-store.vala src/moonshot-idcard-store.vala src/moonshot-id.vala src/moonshot-add-dialog.vala src/moonshot-idcard-widget.vala src/moonshot-custom-vbox.vala src/moonshot-identities-manager.vala src/moonshot-identity-request.vala src/moonshot-server.vala src/moonshot-password-dialog.vala src/moonshot-provisioning-common.vala src/moonshot-utils.vala
+$(srcdir)/src_moonshot_vala.stamp: src/moonshot-identity-manager-app.vala src/moonshot-identity-management-view.vala src/moonshot-local-flat-file-store.vala src/moonshot-keyring-store.vala src/moonshot-idcard-store.vala src/moonshot-id.vala src/moonshot-identity-dialog.vala src/moonshot-idcard-widget.vala src/moonshot-custom-vbox.vala src/moonshot-identities-manager.vala src/moonshot-identity-request.vala src/moonshot-server-linux.vala src/moonshot-settings.vala src/moonshot-password-dialog.vala src/moonshot-provisioning-common.vala src/moonshot-trust-anchor-dialog.vala src/moonshot-utils.vala src/moonshot-logger.vala src/moonshot-warning-dialog.vala
        $(AM_V_at)rm -f $@ && echo stamp > $@-t
-       $(AM_V_VALAC)$(am__cd) $(srcdir) && $(VALAC) $(src_moonshot_VALAFLAGS) $(VALAFLAGS) -C src/moonshot-identity-manager-app.vala src/moonshot-identity-management-view.vala src/moonshot-local-flat-file-store.vala src/moonshot-keyring-store.vala src/moonshot-idcard-store.vala src/moonshot-id.vala src/moonshot-add-dialog.vala src/moonshot-idcard-widget.vala src/moonshot-custom-vbox.vala src/moonshot-identities-manager.vala src/moonshot-identity-request.vala src/moonshot-server.vala src/moonshot-password-dialog.vala src/moonshot-provisioning-common.vala src/moonshot-utils.vala
+       $(AM_V_VALAC)$(am__cd) $(srcdir) && $(VALAC) $(src_moonshot_VALAFLAGS) $(VALAFLAGS) -C src/moonshot-identity-manager-app.vala src/moonshot-identity-management-view.vala src/moonshot-local-flat-file-store.vala src/moonshot-keyring-store.vala src/moonshot-idcard-store.vala src/moonshot-id.vala src/moonshot-identity-dialog.vala src/moonshot-idcard-widget.vala src/moonshot-custom-vbox.vala src/moonshot-identities-manager.vala src/moonshot-identity-request.vala src/moonshot-server-linux.vala src/moonshot-settings.vala src/moonshot-password-dialog.vala src/moonshot-provisioning-common.vala src/moonshot-trust-anchor-dialog.vala src/moonshot-utils.vala src/moonshot-logger.vala src/moonshot-warning-dialog.vala
+       $(AM_V_at)mv -f $@-t $@
+$(srcdir)/src/moonshot-webp-parser.c: $(srcdir)/src_moonshot_webp_vala.stamp
+       @if test -f $@; then :; else rm -f $(srcdir)/src_moonshot_webp_vala.stamp; fi
+       @if test -f $@; then :; else \
+         $(MAKE) $(AM_MAKEFLAGS) $(srcdir)/src_moonshot_webp_vala.stamp; \
+       fi
+$(srcdir)/src/moonshot-provisioning-common.c: $(srcdir)/src_moonshot_webp_vala.stamp
+       @if test -f $@; then :; else rm -f $(srcdir)/src_moonshot_webp_vala.stamp; fi
+       @if test -f $@; then :; else \
+         $(MAKE) $(AM_MAKEFLAGS) $(srcdir)/src_moonshot_webp_vala.stamp; \
+       fi
+$(srcdir)/src/moonshot-id.c: $(srcdir)/src_moonshot_webp_vala.stamp
+       @if test -f $@; then :; else rm -f $(srcdir)/src_moonshot_webp_vala.stamp; fi
+       @if test -f $@; then :; else \
+         $(MAKE) $(AM_MAKEFLAGS) $(srcdir)/src_moonshot_webp_vala.stamp; \
+       fi
+$(srcdir)/src/moonshot-logger.c: $(srcdir)/src_moonshot_webp_vala.stamp
+       @if test -f $@; then :; else rm -f $(srcdir)/src_moonshot_webp_vala.stamp; fi
+       @if test -f $@; then :; else \
+         $(MAKE) $(AM_MAKEFLAGS) $(srcdir)/src_moonshot_webp_vala.stamp; \
+       fi
+$(srcdir)/config.vapi: $(srcdir)/src_moonshot_webp_vala.stamp
+       @if test -f $@; then :; else rm -f $(srcdir)/src_moonshot_webp_vala.stamp; fi
+       @if test -f $@; then :; else \
+         $(MAKE) $(AM_MAKEFLAGS) $(srcdir)/src_moonshot_webp_vala.stamp; \
+       fi
+$(srcdir)/src_moonshot_webp_vala.stamp: src/moonshot-webp-parser.vala src/moonshot-provisioning-common.vala src/moonshot-id.vala src/moonshot-logger.vala
+       $(AM_V_at)rm -f $@ && echo stamp > $@-t
+       $(AM_V_VALAC)$(am__cd) $(srcdir) && $(VALAC) $(src_moonshot_webp_VALAFLAGS) $(VALAFLAGS) -C src/moonshot-webp-parser.vala src/moonshot-provisioning-common.vala src/moonshot-id.vala src/moonshot-logger.vala
        $(AM_V_at)mv -f $@-t $@
 
 mostlyclean-libtool:
@@ -1811,7 +1990,7 @@ distdir: $(DISTFILES)
          ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
        || chmod -R a+r "$(distdir)"
 dist-gzip: distdir
-       tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
+       tardir=$(distdir) && $(am__tar) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).tar.gz
        $(am__post_remove_distdir)
 
 dist-bzip2: distdir
@@ -1826,17 +2005,17 @@ dist-xz: distdir
        $(am__post_remove_distdir)
 
 dist-tarZ: distdir
-       @echo WARNING: "Support for shar distribution archives is" \
-                      "deprecated." >&2
+       @echo WARNING: "Support for distribution archives compressed with" \
+                      "legacy program 'compress' is deprecated." >&2
        @echo WARNING: "It will be removed altogether in Automake 2.0" >&2
        tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
        $(am__post_remove_distdir)
 
 dist-shar: distdir
-       @echo WARNING: "Support for distribution archives compressed with" \
-                      "legacy program 'compress' is deprecated." >&2
+       @echo WARNING: "Support for shar distribution archives is" \
+                      "deprecated." >&2
        @echo WARNING: "It will be removed altogether in Automake 2.0" >&2
-       shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
+       shar $(distdir) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).shar.gz
        $(am__post_remove_distdir)
 
 dist-zip: distdir
@@ -1854,7 +2033,7 @@ dist dist-all:
 distcheck: dist
        case '$(DIST_ARCHIVES)' in \
        *.tar.gz*) \
-         GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
+         eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).tar.gz | $(am__untar) ;;\
        *.tar.bz2*) \
          bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
        *.tar.lz*) \
@@ -1864,23 +2043,23 @@ distcheck: dist
        *.tar.Z*) \
          uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
        *.shar.gz*) \
-         GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\
+         eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\
        *.zip*) \
          unzip $(distdir).zip ;;\
        esac
        chmod -R a-w $(distdir)
        chmod u+w $(distdir)
-       mkdir $(distdir)/_build $(distdir)/_inst
+       mkdir $(distdir)/_build $(distdir)/_build/sub $(distdir)/_inst
        chmod a-w $(distdir)
        test -d $(distdir)/_build || exit 0; \
        dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
          && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
          && am__cwd=`pwd` \
-         && $(am__cd) $(distdir)/_build \
-         && ../configure \
+         && $(am__cd) $(distdir)/_build/sub \
+         && ../../configure \
            $(AM_DISTCHECK_CONFIGURE_FLAGS) \
            $(DISTCHECK_CONFIGURE_FLAGS) \
-           --srcdir=.. --prefix="$$dc_install_base" \
+           --srcdir=../.. --prefix="$$dc_install_base" \
          && $(MAKE) $(AM_MAKEFLAGS) \
          && $(MAKE) $(AM_MAKEFLAGS) dvi \
          && $(MAKE) $(AM_MAKEFLAGS) check \
@@ -1987,39 +2166,47 @@ maintainer-clean-generic:
        @echo "This command is intended for maintainers to use"
        @echo "it deletes files that may require special tools to rebuild."
        -rm -f $(srcdir)/config.vapi
-       -rm -f $(srcdir)/src/moonshot-add-dialog.c
        -rm -f $(srcdir)/src/moonshot-custom-vbox.c
        -rm -f $(srcdir)/src/moonshot-id.c
        -rm -f $(srcdir)/src/moonshot-idcard-store.c
        -rm -f $(srcdir)/src/moonshot-idcard-widget.c
        -rm -f $(srcdir)/src/moonshot-identities-manager.c
+       -rm -f $(srcdir)/src/moonshot-identity-dialog.c
        -rm -f $(srcdir)/src/moonshot-identity-management-view.c
        -rm -f $(srcdir)/src/moonshot-identity-manager-app.c
        -rm -f $(srcdir)/src/moonshot-identity-request.c
        -rm -f $(srcdir)/src/moonshot-keyring-store.c
        -rm -f $(srcdir)/src/moonshot-local-flat-file-store.c
+       -rm -f $(srcdir)/src/moonshot-logger.c
        -rm -f $(srcdir)/src/moonshot-password-dialog.c
        -rm -f $(srcdir)/src/moonshot-provisioning-common.c
-       -rm -f $(srcdir)/src/moonshot-server.c
+       -rm -f $(srcdir)/src/moonshot-server-linux.c
+       -rm -f $(srcdir)/src/moonshot-settings.c
+       -rm -f $(srcdir)/src/moonshot-trust-anchor-dialog.c
        -rm -f $(srcdir)/src/moonshot-utils.c
+       -rm -f $(srcdir)/src/moonshot-warning-dialog.c
        -rm -f $(srcdir)/src/moonshot-webp-parser.c
        -rm -f $(srcdir)/src_moonshot_vala.stamp
        -rm -f $(srcdir)/src_moonshot_webp_vala.stamp
-       -rm -f src/moonshot-add-dialog.c
        -rm -f src/moonshot-custom-vbox.c
        -rm -f src/moonshot-id.c
        -rm -f src/moonshot-idcard-store.c
        -rm -f src/moonshot-idcard-widget.c
        -rm -f src/moonshot-identities-manager.c
+       -rm -f src/moonshot-identity-dialog.c
        -rm -f src/moonshot-identity-management-view.c
        -rm -f src/moonshot-identity-manager-app.c
        -rm -f src/moonshot-identity-request.c
        -rm -f src/moonshot-keyring-store.c
        -rm -f src/moonshot-local-flat-file-store.c
+       -rm -f src/moonshot-logger.c
        -rm -f src/moonshot-password-dialog.c
        -rm -f src/moonshot-provisioning-common.c
-       -rm -f src/moonshot-server.c
+       -rm -f src/moonshot-server-linux.c
+       -rm -f src/moonshot-settings.c
+       -rm -f src/moonshot-trust-anchor-dialog.c
        -rm -f src/moonshot-utils.c
+       -rm -f src/moonshot-warning-dialog.c
        -rm -f src/moonshot-webp-parser.c
        -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
 clean: clean-recursive
@@ -2133,6 +2320,8 @@ uninstall-am: uninstall-binPROGRAMS uninstall-dbusserviceDATA \
        uninstall-libLTLIBRARIES uninstall-mimeDATA \
        uninstall-pkglibexecSCRIPTS
 
+.PRECIOUS: Makefile
+
 
 # Build the MSVC lib. The sed hack fixes execution in the case that
 # the MSVC toolchain isn't in the PATH.
index 1b6aaac..075c676 100644 (file)
@@ -1,6 +1,6 @@
-# generated automatically by aclocal 1.14.1 -*- Autoconf -*-
+# generated automatically by aclocal 1.15.1 -*- Autoconf -*-
 
-# Copyright (C) 1996-2013 Free Software Foundation, Inc.
+# Copyright (C) 1996-2017 Free Software Foundation, Inc.
 
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -20,32 +20,63 @@ You have another version of autoconf.  It may work, but is not guaranteed to.
 If you have problems, you may need to regenerate the build system entirely.
 To do so, use the procedure documented by the package, typically 'autoreconf'.])])
 
-# pkg.m4 - Macros to locate and utilise pkg-config.            -*- Autoconf -*-
-# serial 1 (pkg-config-0.24)
-# 
-# Copyright Â© 2004 Scott James Remnant <scott@netsplit.com>.
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-# PKG_PROG_PKG_CONFIG([MIN-VERSION])
-# ----------------------------------
+dnl pkg.m4 - Macros to locate and utilise pkg-config.   -*- Autoconf -*-
+dnl serial 11 (pkg-config-0.29)
+dnl
+dnl Copyright Â© 2004 Scott James Remnant <scott@netsplit.com>.
+dnl Copyright Â© 2012-2015 Dan Nicholson <dbn.lists@gmail.com>
+dnl
+dnl This program is free software; you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation; either version 2 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful, but
+dnl WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+dnl General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program; if not, write to the Free Software
+dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+dnl 02111-1307, USA.
+dnl
+dnl As a special exception to the GNU General Public License, if you
+dnl distribute this file as part of a program that contains a
+dnl configuration script generated by Autoconf, you may include it under
+dnl the same distribution terms that you use for the rest of that
+dnl program.
+
+dnl PKG_PREREQ(MIN-VERSION)
+dnl -----------------------
+dnl Since: 0.29
+dnl
+dnl Verify that the version of the pkg-config macros are at least
+dnl MIN-VERSION. Unlike PKG_PROG_PKG_CONFIG, which checks the user's
+dnl installed version of pkg-config, this checks the developer's version
+dnl of pkg.m4 when generating configure.
+dnl
+dnl To ensure that this macro is defined, also add:
+dnl m4_ifndef([PKG_PREREQ],
+dnl     [m4_fatal([must install pkg-config 0.29 or later before running autoconf/autogen])])
+dnl
+dnl See the "Since" comment for each macro you use to see what version
+dnl of the macros you require.
+m4_defun([PKG_PREREQ],
+[m4_define([PKG_MACROS_VERSION], [0.29])
+m4_if(m4_version_compare(PKG_MACROS_VERSION, [$1]), -1,
+    [m4_fatal([pkg.m4 version $1 or higher is required but ]PKG_MACROS_VERSION[ found])])
+])dnl PKG_PREREQ
+
+dnl PKG_PROG_PKG_CONFIG([MIN-VERSION])
+dnl ----------------------------------
+dnl Since: 0.16
+dnl
+dnl Search for the pkg-config tool and set the PKG_CONFIG variable to
+dnl first found in the path. Checks that the version of pkg-config found
+dnl is at least MIN-VERSION. If MIN-VERSION is not specified, 0.9.0 is
+dnl used since that's the first version where most current features of
+dnl pkg-config existed.
 AC_DEFUN([PKG_PROG_PKG_CONFIG],
 [m4_pattern_forbid([^_?PKG_[A-Z_]+$])
 m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])
@@ -67,18 +98,19 @@ if test -n "$PKG_CONFIG"; then
                PKG_CONFIG=""
        fi
 fi[]dnl
-])# PKG_PROG_PKG_CONFIG
+])dnl PKG_PROG_PKG_CONFIG
 
-# PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
-#
-# Check to see whether a particular set of modules exists.  Similar
-# to PKG_CHECK_MODULES(), but does not set variables or print errors.
-#
-# Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
-# only at the first occurence in configure.ac, so if the first place
-# it's called might be skipped (such as if it is within an "if", you
-# have to call PKG_CHECK_EXISTS manually
-# --------------------------------------------------------------
+dnl PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
+dnl -------------------------------------------------------------------
+dnl Since: 0.18
+dnl
+dnl Check to see whether a particular set of modules exists. Similar to
+dnl PKG_CHECK_MODULES(), but does not set variables or print errors.
+dnl
+dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
+dnl only at the first occurence in configure.ac, so if the first place
+dnl it's called might be skipped (such as if it is within an "if", you
+dnl have to call PKG_CHECK_EXISTS manually
 AC_DEFUN([PKG_CHECK_EXISTS],
 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
 if test -n "$PKG_CONFIG" && \
@@ -88,8 +120,10 @@ m4_ifvaln([$3], [else
   $3])dnl
 fi])
 
-# _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
-# ---------------------------------------------
+dnl _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
+dnl ---------------------------------------------
+dnl Internal wrapper calling pkg-config via PKG_CONFIG and setting
+dnl pkg_failed based on the result.
 m4_define([_PKG_CONFIG],
 [if test -n "$$1"; then
     pkg_cv_[]$1="$$1"
@@ -101,10 +135,11 @@ m4_define([_PKG_CONFIG],
  else
     pkg_failed=untried
 fi[]dnl
-])# _PKG_CONFIG
+])dnl _PKG_CONFIG
 
-# _PKG_SHORT_ERRORS_SUPPORTED
-# -----------------------------
+dnl _PKG_SHORT_ERRORS_SUPPORTED
+dnl ---------------------------
+dnl Internal check to see if pkg-config supports short errors.
 AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
@@ -112,19 +147,17 @@ if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
 else
         _pkg_short_errors_supported=no
 fi[]dnl
-])# _PKG_SHORT_ERRORS_SUPPORTED
+])dnl _PKG_SHORT_ERRORS_SUPPORTED
 
 
-# PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
-# [ACTION-IF-NOT-FOUND])
-#
-#
-# Note that if there is a possibility the first call to
-# PKG_CHECK_MODULES might not happen, you should be sure to include an
-# explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
-#
-#
-# --------------------------------------------------------------
+dnl PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
+dnl   [ACTION-IF-NOT-FOUND])
+dnl --------------------------------------------------------------
+dnl Since: 0.4.0
+dnl
+dnl Note that if there is a possibility the first call to
+dnl PKG_CHECK_MODULES might not happen, you should be sure to include an
+dnl explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
 AC_DEFUN([PKG_CHECK_MODULES],
 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
 AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
@@ -178,16 +211,40 @@ else
         AC_MSG_RESULT([yes])
        $3
 fi[]dnl
-])# PKG_CHECK_MODULES
+])dnl PKG_CHECK_MODULES
 
 
-# PKG_INSTALLDIR(DIRECTORY)
-# -------------------------
-# Substitutes the variable pkgconfigdir as the location where a module
-# should install pkg-config .pc files. By default the directory is
-# $libdir/pkgconfig, but the default can be changed by passing
-# DIRECTORY. The user can override through the --with-pkgconfigdir
-# parameter.
+dnl PKG_CHECK_MODULES_STATIC(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
+dnl   [ACTION-IF-NOT-FOUND])
+dnl ---------------------------------------------------------------------
+dnl Since: 0.29
+dnl
+dnl Checks for existence of MODULES and gathers its build flags with
+dnl static libraries enabled. Sets VARIABLE-PREFIX_CFLAGS from --cflags
+dnl and VARIABLE-PREFIX_LIBS from --libs.
+dnl
+dnl Note that if there is a possibility the first call to
+dnl PKG_CHECK_MODULES_STATIC might not happen, you should be sure to
+dnl include an explicit call to PKG_PROG_PKG_CONFIG in your
+dnl configure.ac.
+AC_DEFUN([PKG_CHECK_MODULES_STATIC],
+[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
+_save_PKG_CONFIG=$PKG_CONFIG
+PKG_CONFIG="$PKG_CONFIG --static"
+PKG_CHECK_MODULES($@)
+PKG_CONFIG=$_save_PKG_CONFIG[]dnl
+])dnl PKG_CHECK_MODULES_STATIC
+
+
+dnl PKG_INSTALLDIR([DIRECTORY])
+dnl -------------------------
+dnl Since: 0.27
+dnl
+dnl Substitutes the variable pkgconfigdir as the location where a module
+dnl should install pkg-config .pc files. By default the directory is
+dnl $libdir/pkgconfig, but the default can be changed by passing
+dnl DIRECTORY. The user can override through the --with-pkgconfigdir
+dnl parameter.
 AC_DEFUN([PKG_INSTALLDIR],
 [m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])])
 m4_pushdef([pkg_description],
@@ -198,16 +255,18 @@ AC_ARG_WITH([pkgconfigdir],
 AC_SUBST([pkgconfigdir], [$with_pkgconfigdir])
 m4_popdef([pkg_default])
 m4_popdef([pkg_description])
-]) dnl PKG_INSTALLDIR
+])dnl PKG_INSTALLDIR
 
 
-# PKG_NOARCH_INSTALLDIR(DIRECTORY)
-# -------------------------
-# Substitutes the variable noarch_pkgconfigdir as the location where a
-# module should install arch-independent pkg-config .pc files. By
-# default the directory is $datadir/pkgconfig, but the default can be
-# changed by passing DIRECTORY. The user can override through the
-# --with-noarch-pkgconfigdir parameter.
+dnl PKG_NOARCH_INSTALLDIR([DIRECTORY])
+dnl --------------------------------
+dnl Since: 0.27
+dnl
+dnl Substitutes the variable noarch_pkgconfigdir as the location where a
+dnl module should install arch-independent pkg-config .pc files. By
+dnl default the directory is $datadir/pkgconfig, but the default can be
+dnl changed by passing DIRECTORY. The user can override through the
+dnl --with-noarch-pkgconfigdir parameter.
 AC_DEFUN([PKG_NOARCH_INSTALLDIR],
 [m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])])
 m4_pushdef([pkg_description],
@@ -218,13 +277,15 @@ AC_ARG_WITH([noarch-pkgconfigdir],
 AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir])
 m4_popdef([pkg_default])
 m4_popdef([pkg_description])
-]) dnl PKG_NOARCH_INSTALLDIR
+])dnl PKG_NOARCH_INSTALLDIR
 
 
-# PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE,
-# [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
-# -------------------------------------------
-# Retrieves the value of the pkg-config variable for the given module.
+dnl PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE,
+dnl [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
+dnl -------------------------------------------
+dnl Since: 0.28
+dnl
+dnl Retrieves the value of the pkg-config variable for the given module.
 AC_DEFUN([PKG_CHECK_VAR],
 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
 AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl
@@ -233,9 +294,9 @@ _PKG_CONFIG([$1], [variable="][$3]["], [$2])
 AS_VAR_COPY([$1], [pkg_cv_][$1])
 
 AS_VAR_IF([$1], [""], [$5], [$4])dnl
-])# PKG_CHECK_VAR
+])dnl PKG_CHECK_VAR
 
-# Copyright (C) 2002-2013 Free Software Foundation, Inc.
+# Copyright (C) 2002-2017 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -247,10 +308,10 @@ AS_VAR_IF([$1], [""], [$5], [$4])dnl
 # generated from the m4 files accompanying Automake X.Y.
 # (This private macro should not be called outside this file.)
 AC_DEFUN([AM_AUTOMAKE_VERSION],
-[am__api_version='1.14'
+[am__api_version='1.15'
 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
 dnl require some minimum version.  Point them to the right macro.
-m4_if([$1], [1.14.1], [],
+m4_if([$1], [1.15.1], [],
       [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
 ])
 
@@ -266,14 +327,14 @@ m4_define([_AM_AUTOCONF_VERSION], [])
 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.14.1])dnl
+[AM_AUTOMAKE_VERSION([1.15.1])dnl
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
 _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
 
 # AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
 
-# Copyright (C) 2001-2013 Free Software Foundation, Inc.
+# Copyright (C) 2001-2017 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -318,15 +379,14 @@ _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
 # configured tree to be moved without reconfiguration.
 
 AC_DEFUN([AM_AUX_DIR_EXPAND],
-[dnl Rely on autoconf to set up CDPATH properly.
-AC_PREREQ([2.50])dnl
-# expand $ac_aux_dir to an absolute path
-am_aux_dir=`cd $ac_aux_dir && pwd`
+[AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
+# Expand $ac_aux_dir to an absolute path.
+am_aux_dir=`cd "$ac_aux_dir" && pwd`
 ])
 
 # AM_CONDITIONAL                                            -*- Autoconf -*-
 
-# Copyright (C) 1997-2013 Free Software Foundation, Inc.
+# Copyright (C) 1997-2017 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -357,7 +417,7 @@ AC_CONFIG_COMMANDS_PRE(
 Usually this means the macro was only invoked conditionally.]])
 fi])])
 
-# Copyright (C) 1999-2013 Free Software Foundation, Inc.
+# Copyright (C) 1999-2017 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -548,7 +608,7 @@ _AM_SUBST_NOTMAKE([am__nodep])dnl
 
 # Generate code to set up dependency tracking.              -*- Autoconf -*-
 
-# Copyright (C) 1999-2013 Free Software Foundation, Inc.
+# Copyright (C) 1999-2017 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -624,7 +684,7 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
 
 # Do all the work for Automake.                             -*- Autoconf -*-
 
-# Copyright (C) 1996-2013 Free Software Foundation, Inc.
+# Copyright (C) 1996-2017 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -714,8 +774,8 @@ AC_REQUIRE([AC_PROG_MKDIR_P])dnl
 # <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
 # <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
 AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
-# We need awk for the "check" target.  The system "awk" is bad on
-# some platforms.
+# We need awk for the "check" target (and possibly the TAP driver).  The
+# system "awk" is bad on some platforms.
 AC_REQUIRE([AC_PROG_AWK])dnl
 AC_REQUIRE([AC_PROG_MAKE_SET])dnl
 AC_REQUIRE([AM_SET_LEADING_DOT])dnl
@@ -789,6 +849,9 @@ END
     AC_MSG_ERROR([Your 'rm' program is bad, sorry.])
   fi
 fi
+dnl The trailing newline in this macro's definition is deliberate, for
+dnl backward compatibility and to allow trailing 'dnl'-style comments
+dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841.
 ])
 
 dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion.  Do not
@@ -818,7 +881,7 @@ for _am_header in $config_headers :; do
 done
 echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
 
-# Copyright (C) 2001-2013 Free Software Foundation, Inc.
+# Copyright (C) 2001-2017 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -829,7 +892,7 @@ echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_co
 # Define $install_sh.
 AC_DEFUN([AM_PROG_INSTALL_SH],
 [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-if test x"${install_sh}" != xset; then
+if test x"${install_sh+set}" != xset; then
   case $am_aux_dir in
   *\ * | *\    *)
     install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
@@ -839,7 +902,7 @@ if test x"${install_sh}" != xset; then
 fi
 AC_SUBST([install_sh])])
 
-# Copyright (C) 2003-2013 Free Software Foundation, Inc.
+# Copyright (C) 2003-2017 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -861,7 +924,7 @@ AC_SUBST([am__leading_dot])])
 # Add --enable-maintainer-mode option to configure.         -*- Autoconf -*-
 # From Jim Meyering
 
-# Copyright (C) 1996-2013 Free Software Foundation, Inc.
+# Copyright (C) 1996-2017 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -896,7 +959,7 @@ AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
 
 # Check to see how 'make' treats includes.                 -*- Autoconf -*-
 
-# Copyright (C) 2001-2013 Free Software Foundation, Inc.
+# Copyright (C) 2001-2017 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -946,7 +1009,7 @@ rm -f confinc confmf
 
 # Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
 
-# Copyright (C) 1997-2013 Free Software Foundation, Inc.
+# Copyright (C) 1997-2017 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -983,7 +1046,7 @@ else
 fi
 ])
 
-# Copyright (C) 2003-2013 Free Software Foundation, Inc.
+# Copyright (C) 2003-2017 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1017,7 +1080,7 @@ esac
 
 # Helper functions for option handling.                     -*- Autoconf -*-
 
-# Copyright (C) 2001-2013 Free Software Foundation, Inc.
+# Copyright (C) 2001-2017 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1046,7 +1109,7 @@ AC_DEFUN([_AM_SET_OPTIONS],
 AC_DEFUN([_AM_IF_OPTION],
 [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
 
-# Copyright (C) 1999-2013 Free Software Foundation, Inc.
+# Copyright (C) 1999-2017 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1093,7 +1156,7 @@ AC_LANG_POP([C])])
 # For backward compatibility.
 AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
 
-# Copyright (C) 2001-2013 Free Software Foundation, Inc.
+# Copyright (C) 2001-2017 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1112,7 +1175,7 @@ AC_DEFUN([AM_RUN_LOG],
 
 # Check to make sure that the build environment is sane.    -*- Autoconf -*-
 
-# Copyright (C) 1996-2013 Free Software Foundation, Inc.
+# Copyright (C) 1996-2017 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1193,7 +1256,7 @@ AC_CONFIG_COMMANDS_PRE(
 rm -f conftest.file
 ])
 
-# Copyright (C) 2009-2013 Free Software Foundation, Inc.
+# Copyright (C) 2009-2017 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1253,7 +1316,7 @@ AC_SUBST([AM_BACKSLASH])dnl
 _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
 ])
 
-# Copyright (C) 2001-2013 Free Software Foundation, Inc.
+# Copyright (C) 2001-2017 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1281,7 +1344,7 @@ fi
 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 AC_SUBST([INSTALL_STRIP_PROGRAM])])
 
-# Copyright (C) 2006-2013 Free Software Foundation, Inc.
+# Copyright (C) 2006-2017 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1300,7 +1363,7 @@ AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
 
 # Check how to create a tarball.                            -*- Autoconf -*-
 
-# Copyright (C) 2004-2013 Free Software Foundation, Inc.
+# Copyright (C) 2004-2017 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1433,7 +1496,7 @@ AC_SUBST([am__untar])
 
 # Autoconf support for the Vala compiler
 
-# Copyright (C) 2008-2013 Free Software Foundation, Inc.
+# Copyright (C) 2008-2017 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
index 3fd54df..a736cf9 100644 (file)
@@ -1,9 +1,12 @@
+#! /bin/sh
+## DO NOT EDIT - This file generated from ./build-aux/ltmain.in
+##               by inline-source v2014-01-03.01
 
-# libtool (GNU libtool) 2.4.2
+# libtool (GNU libtool) 2.4.6
+# Provide generalized library-building support services.
 # Written by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
 
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006,
-# 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
+# Copyright (C) 1996-2015 Free Software Foundation, Inc.
 # This is free software; see the source for copying conditions.  There is NO
 # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 
 # General Public License for more details.
 #
 # You should have received a copy of the GNU General Public License
-# along with GNU Libtool; see the file COPYING.  If not, a copy
-# can be downloaded from http://www.gnu.org/licenses/gpl.html,
-# or obtained by writing to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-# Usage: $progname [OPTION]... [MODE-ARG]...
-#
-# Provide generalized library-building support services.
-#
-#       --config             show all configuration variables
-#       --debug              enable verbose shell tracing
-#   -n, --dry-run            display commands without modifying any files
-#       --features           display basic configuration information and exit
-#       --mode=MODE          use operation mode MODE
-#       --preserve-dup-deps  don't remove duplicate dependency libraries
-#       --quiet, --silent    don't print informational messages
-#       --no-quiet, --no-silent
-#                            print informational messages (default)
-#       --no-warn            don't display warning messages
-#       --tag=TAG            use configuration variables from tag TAG
-#   -v, --verbose            print more informational messages than default
-#       --no-verbose         don't print the extra informational messages
-#       --version            print version information
-#   -h, --help, --help-all   print short, long, or detailed help message
-#
-# MODE must be one of the following:
-#
-#         clean              remove files from the build directory
-#         compile            compile a source file into a libtool object
-#         execute            automatically set library path, then run a program
-#         finish             complete the installation of libtool libraries
-#         install            install libraries or executables
-#         link               create a library or an executable
-#         uninstall          remove libraries from an installed directory
-#
-# MODE-ARGS vary depending on the MODE.  When passed as first option,
-# `--mode=MODE' may be abbreviated as `MODE' or a unique abbreviation of that.
-# Try `$progname --help --mode=MODE' for a more detailed description of MODE.
-#
-# When reporting a bug, please describe a test case to reproduce it and
-# include the following information:
-#
-#         host-triplet:        $host
-#         shell:               $SHELL
-#         compiler:            $LTCC
-#         compiler flags:              $LTCFLAGS
-#         linker:              $LD (gnu? $with_gnu_ld)
-#         $progname:   (GNU libtool) 2.4.2 Debian-2.4.2-1.10
-#         automake:    $automake_version
-#         autoconf:    $autoconf_version
-#
-# Report bugs to <bug-libtool@gnu.org>.
-# GNU libtool home page: <http://www.gnu.org/software/libtool/>.
-# General help using GNU software: <http://www.gnu.org/gethelp/>.
 
 PROGRAM=libtool
 PACKAGE=libtool
-VERSION="2.4.2 Debian-2.4.2-1.10"
-TIMESTAMP=""
-package_revision=1.3337
+VERSION="2.4.6 Debian-2.4.6-2"
+package_revision=2.4.6
 
-# Be Bourne compatible
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+
+## ------ ##
+## Usage. ##
+## ------ ##
+
+# Run './libtool --help' for help with using this script from the
+# command line.
+
+
+## ------------------------------- ##
+## User overridable command paths. ##
+## ------------------------------- ##
+
+# After configure completes, it has a better idea of some of the
+# shell tools we need than the defaults used by the functions shared
+# with bootstrap, so set those here where they can still be over-
+# ridden by the user, but otherwise take precedence.
+
+: ${AUTOCONF="autoconf"}
+: ${AUTOMAKE="automake"}
+
+
+## -------------------------- ##
+## Source external libraries. ##
+## -------------------------- ##
+
+# Much of our low-level functionality needs to be sourced from external
+# libraries, which are installed to $pkgauxdir.
+
+# Set a version string for this script.
+scriptversion=2015-01-20.17; # UTC
+
+# General shell script boiler plate, and helper functions.
+# Written by Gary V. Vaughan, 2004
+
+# Copyright (C) 2004-2015 Free Software Foundation, Inc.
+# This is free software; see the source for copying conditions.  There is NO
+# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+
+# As a special exception to the GNU General Public License, if you distribute
+# this file as part of a program or library that is built using GNU Libtool,
+# you may include this file under the same distribution terms that you use
+# for the rest of that program.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNES FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+# Please report bugs or propose patches to gary@gnu.org.
+
+
+## ------ ##
+## Usage. ##
+## ------ ##
+
+# Evaluate this file near the top of your script to gain access to
+# the functions and variables defined here:
+#
+#   . `echo "$0" | ${SED-sed} 's|[^/]*$||'`/build-aux/funclib.sh
+#
+# If you need to override any of the default environment variable
+# settings, do that before evaluating this file.
+
+
+## -------------------- ##
+## Shell normalisation. ##
+## -------------------- ##
+
+# Some shells need a little help to be as Bourne compatible as possible.
+# Before doing anything else, make sure all that help has been provided!
+
+DUALCASE=1; export DUALCASE # for MKS sh
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
   emulate sh
   NULLCMD=:
-  # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+  # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
   # is contrary to our usage.  Disable this feature.
   alias -g '${1+"$@"}'='"$@"'
   setopt NO_GLOB_SUBST
 else
-  case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac
+  case `(set -o) 2>/dev/null` in *posix*) set -o posix ;; esac
 fi
-BIN_SH=xpg4; export BIN_SH # for Tru64
-DUALCASE=1; export DUALCASE # for MKS sh
-
-# A function that is used when there is no print builtin or printf.
-func_fallback_echo ()
-{
-  eval 'cat <<_LTECHO_EOF
-$1
-_LTECHO_EOF'
-}
 
-# NLS nuisances: We save the old values to restore during execute mode.
-lt_user_locale=
-lt_safe_locale=
-for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
+# NLS nuisances: We save the old values in case they are required later.
+_G_user_locale=
+_G_safe_locale=
+for _G_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
 do
-  eval "if test \"\${$lt_var+set}\" = set; then
-          save_$lt_var=\$$lt_var
-          $lt_var=C
-         export $lt_var
-         lt_user_locale=\"$lt_var=\\\$save_\$lt_var; \$lt_user_locale\"
-         lt_safe_locale=\"$lt_var=C; \$lt_safe_locale\"
+  eval "if test set = \"\${$_G_var+set}\"; then
+          save_$_G_var=\$$_G_var
+          $_G_var=C
+         export $_G_var
+         _G_user_locale=\"$_G_var=\\\$save_\$_G_var; \$_G_user_locale\"
+         _G_safe_locale=\"$_G_var=C; \$_G_safe_locale\"
        fi"
 done
-LC_ALL=C
-LANGUAGE=C
-export LANGUAGE LC_ALL
 
-$lt_unset CDPATH
+# CDPATH.
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
 
+# Make sure IFS has a sensible default
+sp=' '
+nl='
+'
+IFS="$sp       $nl"
+
+# There are apparently some retarded systems that use ';' as a PATH separator!
+if test "${PATH_SEPARATOR+set}" != set; then
+  PATH_SEPARATOR=:
+  (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
+    (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
+      PATH_SEPARATOR=';'
+  }
+fi
 
-# Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh
-# is ksh but when the shell is invoked as "sh" and the current value of
-# the _XPG environment variable is not equal to 1 (one), the special
-# positional parameter $0, within a function call, is the name of the
-# function.
-progpath="$0"
 
 
+## ------------------------- ##
+## Locate command utilities. ##
+## ------------------------- ##
+
+
+# func_executable_p FILE
+# ----------------------
+# Check that FILE is an executable regular file.
+func_executable_p ()
+{
+    test -f "$1" && test -x "$1"
+}
+
+
+# func_path_progs PROGS_LIST CHECK_FUNC [PATH]
+# --------------------------------------------
+# Search for either a program that responds to --version with output
+# containing "GNU", or else returned by CHECK_FUNC otherwise, by
+# trying all the directories in PATH with each of the elements of
+# PROGS_LIST.
+#
+# CHECK_FUNC should accept the path to a candidate program, and
+# set $func_check_prog_result if it truncates its output less than
+# $_G_path_prog_max characters.
+func_path_progs ()
+{
+    _G_progs_list=$1
+    _G_check_func=$2
+    _G_PATH=${3-"$PATH"}
+
+    _G_path_prog_max=0
+    _G_path_prog_found=false
+    _G_save_IFS=$IFS; IFS=${PATH_SEPARATOR-:}
+    for _G_dir in $_G_PATH; do
+      IFS=$_G_save_IFS
+      test -z "$_G_dir" && _G_dir=.
+      for _G_prog_name in $_G_progs_list; do
+        for _exeext in '' .EXE; do
+          _G_path_prog=$_G_dir/$_G_prog_name$_exeext
+          func_executable_p "$_G_path_prog" || continue
+          case `"$_G_path_prog" --version 2>&1` in
+            *GNU*) func_path_progs_result=$_G_path_prog _G_path_prog_found=: ;;
+            *)     $_G_check_func $_G_path_prog
+                  func_path_progs_result=$func_check_prog_result
+                  ;;
+          esac
+          $_G_path_prog_found && break 3
+        done
+      done
+    done
+    IFS=$_G_save_IFS
+    test -z "$func_path_progs_result" && {
+      echo "no acceptable sed could be found in \$PATH" >&2
+      exit 1
+    }
+}
+
+
+# We want to be able to use the functions in this file before configure
+# has figured out where the best binaries are kept, which means we have
+# to search for them ourselves - except when the results are already set
+# where we skip the searches.
+
+# Unless the user overrides by setting SED, search the path for either GNU
+# sed, or the sed that truncates its output the least.
+test -z "$SED" && {
+  _G_sed_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/
+  for _G_i in 1 2 3 4 5 6 7; do
+    _G_sed_script=$_G_sed_script$nl$_G_sed_script
+  done
+  echo "$_G_sed_script" 2>/dev/null | sed 99q >conftest.sed
+  _G_sed_script=
+
+  func_check_prog_sed ()
+  {
+    _G_path_prog=$1
+
+    _G_count=0
+    printf 0123456789 >conftest.in
+    while :
+    do
+      cat conftest.in conftest.in >conftest.tmp
+      mv conftest.tmp conftest.in
+      cp conftest.in conftest.nl
+      echo '' >> conftest.nl
+      "$_G_path_prog" -f conftest.sed <conftest.nl >conftest.out 2>/dev/null || break
+      diff conftest.out conftest.nl >/dev/null 2>&1 || break
+      _G_count=`expr $_G_count + 1`
+      if test "$_G_count" -gt "$_G_path_prog_max"; then
+        # Best one so far, save it but keep looking for a better one
+        func_check_prog_result=$_G_path_prog
+        _G_path_prog_max=$_G_count
+      fi
+      # 10*(2^10) chars as input seems more than enough
+      test 10 -lt "$_G_count" && break
+    done
+    rm -f conftest.in conftest.tmp conftest.nl conftest.out
+  }
+
+  func_path_progs "sed gsed" func_check_prog_sed $PATH:/usr/xpg4/bin
+  rm -f conftest.sed
+  SED=$func_path_progs_result
+}
+
+
+# Unless the user overrides by setting GREP, search the path for either GNU
+# grep, or the grep that truncates its output the least.
+test -z "$GREP" && {
+  func_check_prog_grep ()
+  {
+    _G_path_prog=$1
+
+    _G_count=0
+    _G_path_prog_max=0
+    printf 0123456789 >conftest.in
+    while :
+    do
+      cat conftest.in conftest.in >conftest.tmp
+      mv conftest.tmp conftest.in
+      cp conftest.in conftest.nl
+      echo 'GREP' >> conftest.nl
+      "$_G_path_prog" -e 'GREP$' -e '-(cannot match)-' <conftest.nl >conftest.out 2>/dev/null || break
+      diff conftest.out conftest.nl >/dev/null 2>&1 || break
+      _G_count=`expr $_G_count + 1`
+      if test "$_G_count" -gt "$_G_path_prog_max"; then
+        # Best one so far, save it but keep looking for a better one
+        func_check_prog_result=$_G_path_prog
+        _G_path_prog_max=$_G_count
+      fi
+      # 10*(2^10) chars as input seems more than enough
+      test 10 -lt "$_G_count" && break
+    done
+    rm -f conftest.in conftest.tmp conftest.nl conftest.out
+  }
+
+  func_path_progs "grep ggrep" func_check_prog_grep $PATH:/usr/xpg4/bin
+  GREP=$func_path_progs_result
+}
+
+
+## ------------------------------- ##
+## User overridable command paths. ##
+## ------------------------------- ##
+
+# All uppercase variable names are used for environment variables.  These
+# variables can be overridden by the user before calling a script that
+# uses them if a suitable command of that name is not already available
+# in the command search PATH.
 
 : ${CP="cp -f"}
-test "${ECHO+set}" = set || ECHO=${as_echo-'printf %s\n'}
+: ${ECHO="printf %s\n"}
+: ${EGREP="$GREP -E"}
+: ${FGREP="$GREP -F"}
+: ${LN_S="ln -s"}
 : ${MAKE="make"}
 : ${MKDIR="mkdir"}
 : ${MV="mv -f"}
 : ${RM="rm -f"}
 : ${SHELL="${CONFIG_SHELL-/bin/sh}"}
-: ${Xsed="$SED -e 1s/^X//"}
-
-# Global variables:
-EXIT_SUCCESS=0
-EXIT_FAILURE=1
-EXIT_MISMATCH=63  # $? = 63 is used to indicate version mismatch to missing.
-EXIT_SKIP=77     # $? = 77 is used to indicate a skipped test to automake.
-
-exit_status=$EXIT_SUCCESS
-
-# Make sure IFS has a sensible default
-lt_nl='
-'
-IFS="  $lt_nl"
 
-dirname="s,/[^/]*$,,"
-basename="s,^.*/,,"
 
-# func_dirname file append nondir_replacement
-# Compute the dirname of FILE.  If nonempty, add APPEND to the result,
-# otherwise set result to NONDIR_REPLACEMENT.
-func_dirname ()
-{
-    func_dirname_result=`$ECHO "${1}" | $SED "$dirname"`
-    if test "X$func_dirname_result" = "X${1}"; then
-      func_dirname_result="${3}"
-    else
-      func_dirname_result="$func_dirname_result${2}"
-    fi
-} # func_dirname may be replaced by extended shell implementation
+## -------------------- ##
+## Useful sed snippets. ##
+## -------------------- ##
 
+sed_dirname='s|/[^/]*$||'
+sed_basename='s|^.*/||'
 
-# func_basename file
-func_basename ()
-{
-    func_basename_result=`$ECHO "${1}" | $SED "$basename"`
-} # func_basename may be replaced by extended shell implementation
+# Sed substitution that helps us do robust quoting.  It backslashifies
+# metacharacters that are still active within double-quoted strings.
+sed_quote_subst='s|\([`"$\\]\)|\\\1|g'
 
+# Same as above, but do not quote variable references.
+sed_double_quote_subst='s/\(["`\\]\)/\\\1/g'
 
-# func_dirname_and_basename file append nondir_replacement
-# perform func_basename and func_dirname in a single function
-# call:
-#   dirname:  Compute the dirname of FILE.  If nonempty,
-#             add APPEND to the result, otherwise set result
-#             to NONDIR_REPLACEMENT.
-#             value returned in "$func_dirname_result"
-#   basename: Compute filename of FILE.
-#             value retuned in "$func_basename_result"
-# Implementation must be kept synchronized with func_dirname
-# and func_basename. For efficiency, we do not delegate to
-# those functions but instead duplicate the functionality here.
-func_dirname_and_basename ()
-{
-    # Extract subdirectory from the argument.
-    func_dirname_result=`$ECHO "${1}" | $SED -e "$dirname"`
-    if test "X$func_dirname_result" = "X${1}"; then
-      func_dirname_result="${3}"
-    else
-      func_dirname_result="$func_dirname_result${2}"
-    fi
-    func_basename_result=`$ECHO "${1}" | $SED -e "$basename"`
-} # func_dirname_and_basename may be replaced by extended shell implementation
+# Sed substitution that turns a string into a regex matching for the
+# string literally.
+sed_make_literal_regex='s|[].[^$\\*\/]|\\&|g'
 
+# Sed substitution that converts a w32 file name or path
+# that contains forward slashes, into one that contains
+# (escaped) backslashes.  A very naive implementation.
+sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g'
+
+# Re-'\' parameter expansions in output of sed_double_quote_subst that
+# were '\'-ed in input to the same.  If an odd number of '\' preceded a
+# '$' in input to sed_double_quote_subst, that '$' was protected from
+# expansion.  Since each input '\' is now two '\'s, look for any number
+# of runs of four '\'s followed by two '\'s and then a '$'.  '\' that '$'.
+_G_bs='\\'
+_G_bs2='\\\\'
+_G_bs4='\\\\\\\\'
+_G_dollar='\$'
+sed_double_backslash="\
+  s/$_G_bs4/&\\
+/g
+  s/^$_G_bs2$_G_dollar/$_G_bs&/
+  s/\\([^$_G_bs]\\)$_G_bs2$_G_dollar/\\1$_G_bs2$_G_bs$_G_dollar/g
+  s/\n//g"
 
-# func_stripname prefix suffix name
-# strip PREFIX and SUFFIX off of NAME.
-# PREFIX and SUFFIX must not contain globbing or regex special
-# characters, hashes, percent signs, but SUFFIX may contain a leading
-# dot (in which case that matches only a dot).
-# func_strip_suffix prefix name
-func_stripname ()
-{
-    case ${2} in
-      .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;;
-      *)  func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;;
-    esac
-} # func_stripname may be replaced by extended shell implementation
 
+## ----------------- ##
+## Global variables. ##
+## ----------------- ##
 
-# These SED scripts presuppose an absolute path with a trailing slash.
-pathcar='s,^/\([^/]*\).*$,\1,'
-pathcdr='s,^/[^/]*,,'
-removedotparts=':dotsl
-               s@/\./@/@g
-               t dotsl
-               s,/\.$,/,'
-collapseslashes='s@/\{1,\}@/@g'
-finalslash='s,/*$,/,'
+# Except for the global variables explicitly listed below, the following
+# functions in the '^func_' namespace, and the '^require_' namespace
+# variables initialised in the 'Resource management' section, sourcing
+# this file will not pollute your global namespace with anything
+# else. There's no portable way to scope variables in Bourne shell
+# though, so actually running these functions will sometimes place
+# results into a variable named after the function, and often use
+# temporary variables in the '^_G_' namespace. If you are careful to
+# avoid using those namespaces casually in your sourcing script, things
+# should continue to work as you expect. And, of course, you can freely
+# overwrite any of the functions or variables defined here before
+# calling anything to customize them.
 
-# func_normal_abspath PATH
-# Remove doubled-up and trailing slashes, "." path components,
-# and cancel out any ".." path components in PATH after making
-# it an absolute path.
-#             value returned in "$func_normal_abspath_result"
-func_normal_abspath ()
-{
-  # Start from root dir and reassemble the path.
-  func_normal_abspath_result=
-  func_normal_abspath_tpath=$1
-  func_normal_abspath_altnamespace=
-  case $func_normal_abspath_tpath in
-    "")
-      # Empty path, that just means $cwd.
-      func_stripname '' '/' "`pwd`"
-      func_normal_abspath_result=$func_stripname_result
-      return
-    ;;
-    # The next three entries are used to spot a run of precisely
-    # two leading slashes without using negated character classes;
-    # we take advantage of case's first-match behaviour.
-    ///*)
-      # Unusual form of absolute path, do nothing.
-    ;;
-    //*)
-      # Not necessarily an ordinary path; POSIX reserves leading '//'
-      # and for example Cygwin uses it to access remote file shares
-      # over CIFS/SMB, so we conserve a leading double slash if found.
-      func_normal_abspath_altnamespace=/
-    ;;
-    /*)
-      # Absolute path, do nothing.
-    ;;
-    *)
-      # Relative path, prepend $cwd.
-      func_normal_abspath_tpath=`pwd`/$func_normal_abspath_tpath
-    ;;
-  esac
-  # Cancel out all the simple stuff to save iterations.  We also want
-  # the path to end with a slash for ease of parsing, so make sure
-  # there is one (and only one) here.
-  func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \
-        -e "$removedotparts" -e "$collapseslashes" -e "$finalslash"`
-  while :; do
-    # Processed it all yet?
-    if test "$func_normal_abspath_tpath" = / ; then
-      # If we ascended to the root using ".." the result may be empty now.
-      if test -z "$func_normal_abspath_result" ; then
-        func_normal_abspath_result=/
-      fi
-      break
-    fi
-    func_normal_abspath_tcomponent=`$ECHO "$func_normal_abspath_tpath" | $SED \
-        -e "$pathcar"`
-    func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \
-        -e "$pathcdr"`
-    # Figure out what to do with it
-    case $func_normal_abspath_tcomponent in
-      "")
-        # Trailing empty path component, ignore it.
-      ;;
-      ..)
-        # Parent dir; strip last assembled component from result.
-        func_dirname "$func_normal_abspath_result"
-        func_normal_abspath_result=$func_dirname_result
-      ;;
-      *)
-        # Actual path component, append it.
-        func_normal_abspath_result=$func_normal_abspath_result/$func_normal_abspath_tcomponent
-      ;;
-    esac
-  done
-  # Restore leading double-slash if one was found on entry.
-  func_normal_abspath_result=$func_normal_abspath_altnamespace$func_normal_abspath_result
-}
+EXIT_SUCCESS=0
+EXIT_FAILURE=1
+EXIT_MISMATCH=63  # $? = 63 is used to indicate version mismatch to missing.
+EXIT_SKIP=77     # $? = 77 is used to indicate a skipped test to automake.
 
-# func_relative_path SRCDIR DSTDIR
-# generates a relative path from SRCDIR to DSTDIR, with a trailing
-# slash if non-empty, suitable for immediately appending a filename
-# without needing to append a separator.
-#             value returned in "$func_relative_path_result"
-func_relative_path ()
-{
-  func_relative_path_result=
-  func_normal_abspath "$1"
-  func_relative_path_tlibdir=$func_normal_abspath_result
-  func_normal_abspath "$2"
-  func_relative_path_tbindir=$func_normal_abspath_result
-
-  # Ascend the tree starting from libdir
-  while :; do
-    # check if we have found a prefix of bindir
-    case $func_relative_path_tbindir in
-      $func_relative_path_tlibdir)
-        # found an exact match
-        func_relative_path_tcancelled=
-        break
-        ;;
-      $func_relative_path_tlibdir*)
-        # found a matching prefix
-        func_stripname "$func_relative_path_tlibdir" '' "$func_relative_path_tbindir"
-        func_relative_path_tcancelled=$func_stripname_result
-        if test -z "$func_relative_path_result"; then
-          func_relative_path_result=.
-        fi
-        break
-        ;;
-      *)
-        func_dirname $func_relative_path_tlibdir
-        func_relative_path_tlibdir=${func_dirname_result}
-        if test "x$func_relative_path_tlibdir" = x ; then
-          # Have to descend all the way to the root!
-          func_relative_path_result=../$func_relative_path_result
-          func_relative_path_tcancelled=$func_relative_path_tbindir
-          break
-        fi
-        func_relative_path_result=../$func_relative_path_result
-        ;;
-    esac
-  done
+# Allow overriding, eg assuming that you follow the convention of
+# putting '$debug_cmd' at the start of all your functions, you can get
+# bash to show function call trace with:
+#
+#    debug_cmd='eval echo "${FUNCNAME[0]} $*" >&2' bash your-script-name
+debug_cmd=${debug_cmd-":"}
+exit_cmd=:
 
-  # Now calculate path; take care to avoid doubling-up slashes.
-  func_stripname '' '/' "$func_relative_path_result"
-  func_relative_path_result=$func_stripname_result
-  func_stripname '/' '/' "$func_relative_path_tcancelled"
-  if test "x$func_stripname_result" != x ; then
-    func_relative_path_result=${func_relative_path_result}/${func_stripname_result}
-  fi
+# By convention, finish your script with:
+#
+#    exit $exit_status
+#
+# so that you can set exit_status to non-zero if you want to indicate
+# something went wrong during execution without actually bailing out at
+# the point of failure.
+exit_status=$EXIT_SUCCESS
 
-  # Normalisation. If bindir is libdir, return empty string,
-  # else relative path ending with a slash; either way, target
-  # file name can be directly appended.
-  if test ! -z "$func_relative_path_result"; then
-    func_stripname './' '' "$func_relative_path_result/"
-    func_relative_path_result=$func_stripname_result
-  fi
-}
+# Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh
+# is ksh but when the shell is invoked as "sh" and the current value of
+# the _XPG environment variable is not equal to 1 (one), the special
+# positional parameter $0, within a function call, is the name of the
+# function.
+progpath=$0
 
-# The name of this program:
-func_dirname_and_basename "$progpath"
-progname=$func_basename_result
+# The name of this program.
+progname=`$ECHO "$progpath" |$SED "$sed_basename"`
 
-# Make sure we have an absolute path for reexecution:
+# Make sure we have an absolute progpath for reexecution:
 case $progpath in
   [\\/]*|[A-Za-z]:\\*) ;;
   *[\\/]*)
-     progdir=$func_dirname_result
+     progdir=`$ECHO "$progpath" |$SED "$sed_dirname"`
      progdir=`cd "$progdir" && pwd`
-     progpath="$progdir/$progname"
+     progpath=$progdir/$progname
      ;;
   *)
-     save_IFS="$IFS"
+     _G_IFS=$IFS
      IFS=${PATH_SEPARATOR-:}
      for progdir in $PATH; do
-       IFS="$save_IFS"
+       IFS=$_G_IFS
        test -x "$progdir/$progname" && break
      done
-     IFS="$save_IFS"
+     IFS=$_G_IFS
      test -n "$progdir" || progdir=`pwd`
-     progpath="$progdir/$progname"
+     progpath=$progdir/$progname
      ;;
 esac
 
-# Sed substitution that helps us do robust quoting.  It backslashifies
-# metacharacters that are still active within double-quoted strings.
-Xsed="${SED}"' -e 1s/^X//'
-sed_quote_subst='s/\([`"$\\]\)/\\\1/g'
-
-# Same as above, but do not quote variable references.
-double_quote_subst='s/\(["`\\]\)/\\\1/g'
 
-# Sed substitution that turns a string into a regex matching for the
-# string literally.
-sed_make_literal_regex='s,[].[^$\\*\/],\\&,g'
+## ----------------- ##
+## Standard options. ##
+## ----------------- ##
 
-# Sed substitution that converts a w32 file name or path
-# which contains forward slashes, into one that contains
-# (escaped) backslashes.  A very naive implementation.
-lt_sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g'
-
-# Re-`\' parameter expansions in output of double_quote_subst that were
-# `\'-ed in input to the same.  If an odd number of `\' preceded a '$'
-# in input to double_quote_subst, that '$' was protected from expansion.
-# Since each input `\' is now two `\'s, look for any number of runs of
-# four `\'s followed by two `\'s and then a '$'.  `\' that '$'.
-bs='\\'
-bs2='\\\\'
-bs4='\\\\\\\\'
-dollar='\$'
-sed_double_backslash="\
-  s/$bs4/&\\
-/g
-  s/^$bs2$dollar/$bs&/
-  s/\\([^$bs]\\)$bs2$dollar/\\1$bs2$bs$dollar/g
-  s/\n//g"
+# The following options affect the operation of the functions defined
+# below, and should be set appropriately depending on run-time para-
+# meters passed on the command line.
 
-# Standard options:
 opt_dry_run=false
-opt_help=false
 opt_quiet=false
 opt_verbose=false
-opt_warning=:
 
-# func_echo arg...
-# Echo program name prefixed message, along with the current mode
-# name if it has been set yet.
-func_echo ()
-{
-    $ECHO "$progname: ${opt_mode+$opt_mode: }$*"
-}
+# Categories 'all' and 'none' are always available.  Append any others
+# you will pass as the first argument to func_warning from your own
+# code.
+warning_categories=
 
-# func_verbose arg...
-# Echo program name prefixed message in verbose mode only.
-func_verbose ()
-{
-    $opt_verbose && func_echo ${1+"$@"}
+# By default, display warnings according to 'opt_warning_types'.  Set
+# 'warning_func'  to ':' to elide all warnings, or func_fatal_error to
+# treat the next displayed warning as a fatal error.
+warning_func=func_warn_and_continue
 
-    # A bug in bash halts the script if the last line of a function
-    # fails when set -e is in force, so we need another command to
-    # work around that:
-    :
-}
+# Set to 'all' to display all warnings, 'none' to suppress all
+# warnings, or a space delimited list of some subset of
+# 'warning_categories' to display only the listed warnings.
+opt_warning_types=all
 
-# func_echo_all arg...
-# Invoke $ECHO with all args, space-separated.
-func_echo_all ()
-{
-    $ECHO "$*"
-}
 
-# func_error arg...
-# Echo program name prefixed message to standard error.
-func_error ()
-{
-    $ECHO "$progname: ${opt_mode+$opt_mode: }"${1+"$@"} 1>&2
-}
+## -------------------- ##
+## Resource management. ##
+## -------------------- ##
 
-# func_warning arg...
-# Echo program name prefixed warning message to standard error.
-func_warning ()
-{
-    $opt_warning && $ECHO "$progname: ${opt_mode+$opt_mode: }warning: "${1+"$@"} 1>&2
+# This section contains definitions for functions that each ensure a
+# particular resource (a file, or a non-empty configuration variable for
+# example) is available, and if appropriate to extract default values
+# from pertinent package files. Call them using their associated
+# 'require_*' variable to ensure that they are executed, at most, once.
+#
+# It's entirely deliberate that calling these functions can set
+# variables that don't obey the namespace limitations obeyed by the rest
+# of this file, in order that that they be as useful as possible to
+# callers.
 
-    # bash bug again:
-    :
-}
 
-# func_fatal_error arg...
-# Echo program name prefixed message to standard error, and exit.
-func_fatal_error ()
+# require_term_colors
+# -------------------
+# Allow display of bold text on terminals that support it.
+require_term_colors=func_require_term_colors
+func_require_term_colors ()
 {
-    func_error ${1+"$@"}
-    exit $EXIT_FAILURE
-}
+    $debug_cmd
+
+    test -t 1 && {
+      # COLORTERM and USE_ANSI_COLORS environment variables take
+      # precedence, because most terminfo databases neglect to describe
+      # whether color sequences are supported.
+      test -n "${COLORTERM+set}" && : ${USE_ANSI_COLORS="1"}
+
+      if test 1 = "$USE_ANSI_COLORS"; then
+        # Standard ANSI escape sequences
+        tc_reset='\e[0m'
+        tc_bold='\e[1m';   tc_standout='\e[7m'
+        tc_red='\e[31m';   tc_green='\e[32m'
+        tc_blue='\e[34m';  tc_cyan='\e[36m'
+      else
+        # Otherwise trust the terminfo database after all.
+        test -n "`tput sgr0 2>/dev/null`" && {
+          tc_reset=`tput sgr0`
+          test -n "`tput bold 2>/dev/null`" && tc_bold=`tput bold`
+          tc_standout=$tc_bold
+          test -n "`tput smso 2>/dev/null`" && tc_standout=`tput smso`
+          test -n "`tput setaf 1 2>/dev/null`" && tc_red=`tput setaf 1`
+          test -n "`tput setaf 2 2>/dev/null`" && tc_green=`tput setaf 2`
+          test -n "`tput setaf 4 2>/dev/null`" && tc_blue=`tput setaf 4`
+          test -n "`tput setaf 5 2>/dev/null`" && tc_cyan=`tput setaf 5`
+        }
+      fi
+    }
 
-# func_fatal_help arg...
-# Echo program name prefixed message to standard error, followed by
-# a help hint, and exit.
-func_fatal_help ()
-{
-    func_error ${1+"$@"}
-    func_fatal_error "$help"
+    require_term_colors=:
 }
-help="Try \`$progname --help' for more information."  ## default
 
 
-# func_grep expression filename
+## ----------------- ##
+## Function library. ##
+## ----------------- ##
+
+# This section contains a variety of useful functions to call in your
+# scripts. Take note of the portable wrappers for features provided by
+# some modern shells, which will fall back to slower equivalents on
+# less featureful shells.
+
+
+# func_append VAR VALUE
+# ---------------------
+# Append VALUE onto the existing contents of VAR.
+
+  # We should try to minimise forks, especially on Windows where they are
+  # unreasonably slow, so skip the feature probes when bash or zsh are
+  # being used:
+  if test set = "${BASH_VERSION+set}${ZSH_VERSION+set}"; then
+    : ${_G_HAVE_ARITH_OP="yes"}
+    : ${_G_HAVE_XSI_OPS="yes"}
+    # The += operator was introduced in bash 3.1
+    case $BASH_VERSION in
+      [12].* | 3.0 | 3.0*) ;;
+      *)
+        : ${_G_HAVE_PLUSEQ_OP="yes"}
+        ;;
+    esac
+  fi
+
+  # _G_HAVE_PLUSEQ_OP
+  # Can be empty, in which case the shell is probed, "yes" if += is
+  # useable or anything else if it does not work.
+  test -z "$_G_HAVE_PLUSEQ_OP" \
+    && (eval 'x=a; x+=" b"; test "a b" = "$x"') 2>/dev/null \
+    && _G_HAVE_PLUSEQ_OP=yes
+
+if test yes = "$_G_HAVE_PLUSEQ_OP"
+then
+  # This is an XSI compatible shell, allowing a faster implementation...
+  eval 'func_append ()
+  {
+    $debug_cmd
+
+    eval "$1+=\$2"
+  }'
+else
+  # ...otherwise fall back to using expr, which is often a shell builtin.
+  func_append ()
+  {
+    $debug_cmd
+
+    eval "$1=\$$1\$2"
+  }
+fi
+
+
+# func_append_quoted VAR VALUE
+# ----------------------------
+# Quote VALUE and append to the end of shell variable VAR, separated
+# by a space.
+if test yes = "$_G_HAVE_PLUSEQ_OP"; then
+  eval 'func_append_quoted ()
+  {
+    $debug_cmd
+
+    func_quote_for_eval "$2"
+    eval "$1+=\\ \$func_quote_for_eval_result"
+  }'
+else
+  func_append_quoted ()
+  {
+    $debug_cmd
+
+    func_quote_for_eval "$2"
+    eval "$1=\$$1\\ \$func_quote_for_eval_result"
+  }
+fi
+
+
+# func_append_uniq VAR VALUE
+# --------------------------
+# Append unique VALUE onto the existing contents of VAR, assuming
+# entries are delimited by the first character of VALUE.  For example:
+#
+#   func_append_uniq options " --another-option option-argument"
+#
+# will only append to $options if " --another-option option-argument "
+# is not already present somewhere in $options already (note spaces at
+# each end implied by leading space in second argument).
+func_append_uniq ()
+{
+    $debug_cmd
+
+    eval _G_current_value='`$ECHO $'$1'`'
+    _G_delim=`expr "$2" : '\(.\)'`
+
+    case $_G_delim$_G_current_value$_G_delim in
+      *"$2$_G_delim"*) ;;
+      *) func_append "$@" ;;
+    esac
+}
+
+
+# func_arith TERM...
+# ------------------
+# Set func_arith_result to the result of evaluating TERMs.
+  test -z "$_G_HAVE_ARITH_OP" \
+    && (eval 'test 2 = $(( 1 + 1 ))') 2>/dev/null \
+    && _G_HAVE_ARITH_OP=yes
+
+if test yes = "$_G_HAVE_ARITH_OP"; then
+  eval 'func_arith ()
+  {
+    $debug_cmd
+
+    func_arith_result=$(( $* ))
+  }'
+else
+  func_arith ()
+  {
+    $debug_cmd
+
+    func_arith_result=`expr "$@"`
+  }
+fi
+
+
+# func_basename FILE
+# ------------------
+# Set func_basename_result to FILE with everything up to and including
+# the last / stripped.
+if test yes = "$_G_HAVE_XSI_OPS"; then
+  # If this shell supports suffix pattern removal, then use it to avoid
+  # forking. Hide the definitions single quotes in case the shell chokes
+  # on unsupported syntax...
+  _b='func_basename_result=${1##*/}'
+  _d='case $1 in
+        */*) func_dirname_result=${1%/*}$2 ;;
+        *  ) func_dirname_result=$3        ;;
+      esac'
+
+else
+  # ...otherwise fall back to using sed.
+  _b='func_basename_result=`$ECHO "$1" |$SED "$sed_basename"`'
+  _d='func_dirname_result=`$ECHO "$1"  |$SED "$sed_dirname"`
+      if test "X$func_dirname_result" = "X$1"; then
+        func_dirname_result=$3
+      else
+        func_append func_dirname_result "$2"
+      fi'
+fi
+
+eval 'func_basename ()
+{
+    $debug_cmd
+
+    '"$_b"'
+}'
+
+
+# func_dirname FILE APPEND NONDIR_REPLACEMENT
+# -------------------------------------------
+# Compute the dirname of FILE.  If nonempty, add APPEND to the result,
+# otherwise set result to NONDIR_REPLACEMENT.
+eval 'func_dirname ()
+{
+    $debug_cmd
+
+    '"$_d"'
+}'
+
+
+# func_dirname_and_basename FILE APPEND NONDIR_REPLACEMENT
+# --------------------------------------------------------
+# Perform func_basename and func_dirname in a single function
+# call:
+#   dirname:  Compute the dirname of FILE.  If nonempty,
+#             add APPEND to the result, otherwise set result
+#             to NONDIR_REPLACEMENT.
+#             value returned in "$func_dirname_result"
+#   basename: Compute filename of FILE.
+#             value retuned in "$func_basename_result"
+# For efficiency, we do not delegate to the functions above but instead
+# duplicate the functionality here.
+eval 'func_dirname_and_basename ()
+{
+    $debug_cmd
+
+    '"$_b"'
+    '"$_d"'
+}'
+
+
+# func_echo ARG...
+# ----------------
+# Echo program name prefixed message.
+func_echo ()
+{
+    $debug_cmd
+
+    _G_message=$*
+
+    func_echo_IFS=$IFS
+    IFS=$nl
+    for _G_line in $_G_message; do
+      IFS=$func_echo_IFS
+      $ECHO "$progname: $_G_line"
+    done
+    IFS=$func_echo_IFS
+}
+
+
+# func_echo_all ARG...
+# --------------------
+# Invoke $ECHO with all args, space-separated.
+func_echo_all ()
+{
+    $ECHO "$*"
+}
+
+
+# func_echo_infix_1 INFIX ARG...
+# ------------------------------
+# Echo program name, followed by INFIX on the first line, with any
+# additional lines not showing INFIX.
+func_echo_infix_1 ()
+{
+    $debug_cmd
+
+    $require_term_colors
+
+    _G_infix=$1; shift
+    _G_indent=$_G_infix
+    _G_prefix="$progname: $_G_infix: "
+    _G_message=$*
+
+    # Strip color escape sequences before counting printable length
+    for _G_tc in "$tc_reset" "$tc_bold" "$tc_standout" "$tc_red" "$tc_green" "$tc_blue" "$tc_cyan"
+    do
+      test -n "$_G_tc" && {
+        _G_esc_tc=`$ECHO "$_G_tc" | $SED "$sed_make_literal_regex"`
+        _G_indent=`$ECHO "$_G_indent" | $SED "s|$_G_esc_tc||g"`
+      }
+    done
+    _G_indent="$progname: "`echo "$_G_indent" | $SED 's|.| |g'`"  " ## exclude from sc_prohibit_nested_quotes
+
+    func_echo_infix_1_IFS=$IFS
+    IFS=$nl
+    for _G_line in $_G_message; do
+      IFS=$func_echo_infix_1_IFS
+      $ECHO "$_G_prefix$tc_bold$_G_line$tc_reset" >&2
+      _G_prefix=$_G_indent
+    done
+    IFS=$func_echo_infix_1_IFS
+}
+
+
+# func_error ARG...
+# -----------------
+# Echo program name prefixed message to standard error.
+func_error ()
+{
+    $debug_cmd
+
+    $require_term_colors
+
+    func_echo_infix_1 "  $tc_standout${tc_red}error$tc_reset" "$*" >&2
+}
+
+
+# func_fatal_error ARG...
+# -----------------------
+# Echo program name prefixed message to standard error, and exit.
+func_fatal_error ()
+{
+    $debug_cmd
+
+    func_error "$*"
+    exit $EXIT_FAILURE
+}
+
+
+# func_grep EXPRESSION FILENAME
+# -----------------------------
 # Check whether EXPRESSION matches any line of FILENAME, without output.
 func_grep ()
 {
+    $debug_cmd
+
     $GREP "$1" "$2" >/dev/null 2>&1
 }
 
 
-# func_mkdir_p directory-path
+# func_len STRING
+# ---------------
+# Set func_len_result to the length of STRING. STRING may not
+# start with a hyphen.
+  test -z "$_G_HAVE_XSI_OPS" \
+    && (eval 'x=a/b/c;
+      test 5aa/bb/cc = "${#x}${x%%/*}${x%/*}${x#*/}${x##*/}"') 2>/dev/null \
+    && _G_HAVE_XSI_OPS=yes
+
+if test yes = "$_G_HAVE_XSI_OPS"; then
+  eval 'func_len ()
+  {
+    $debug_cmd
+
+    func_len_result=${#1}
+  }'
+else
+  func_len ()
+  {
+    $debug_cmd
+
+    func_len_result=`expr "$1" : ".*" 2>/dev/null || echo $max_cmd_len`
+  }
+fi
+
+
+# func_mkdir_p DIRECTORY-PATH
+# ---------------------------
 # Make sure the entire path to DIRECTORY-PATH is available.
 func_mkdir_p ()
 {
-    my_directory_path="$1"
-    my_dir_list=
+    $debug_cmd
 
-    if test -n "$my_directory_path" && test "$opt_dry_run" != ":"; then
+    _G_directory_path=$1
+    _G_dir_list=
 
-      # Protect directory names starting with `-'
-      case $my_directory_path in
-        -*) my_directory_path="./$my_directory_path" ;;
+    if test -n "$_G_directory_path" && test : != "$opt_dry_run"; then
+
+      # Protect directory names starting with '-'
+      case $_G_directory_path in
+        -*) _G_directory_path=./$_G_directory_path ;;
       esac
 
       # While some portion of DIR does not yet exist...
-      while test ! -d "$my_directory_path"; do
+      while test ! -d "$_G_directory_path"; do
         # ...make a list in topmost first order.  Use a colon delimited
        # list incase some portion of path contains whitespace.
-        my_dir_list="$my_directory_path:$my_dir_list"
+        _G_dir_list=$_G_directory_path:$_G_dir_list
 
         # If the last portion added has no slash in it, the list is done
-        case $my_directory_path in */*) ;; *) break ;; esac
+        case $_G_directory_path in */*) ;; *) break ;; esac
 
         # ...otherwise throw away the child directory and loop
-        my_directory_path=`$ECHO "$my_directory_path" | $SED -e "$dirname"`
+        _G_directory_path=`$ECHO "$_G_directory_path" | $SED -e "$sed_dirname"`
       done
-      my_dir_list=`$ECHO "$my_dir_list" | $SED 's,:*$,,'`
+      _G_dir_list=`$ECHO "$_G_dir_list" | $SED 's|:*$||'`
 
-      save_mkdir_p_IFS="$IFS"; IFS=':'
-      for my_dir in $my_dir_list; do
-       IFS="$save_mkdir_p_IFS"
-        # mkdir can fail with a `File exist' error if two processes
+      func_mkdir_p_IFS=$IFS; IFS=:
+      for _G_dir in $_G_dir_list; do
+       IFS=$func_mkdir_p_IFS
+        # mkdir can fail with a 'File exist' error if two processes
         # try to create one of the directories concurrently.  Don't
         # stop in that case!
-        $MKDIR "$my_dir" 2>/dev/null || :
+        $MKDIR "$_G_dir" 2>/dev/null || :
       done
-      IFS="$save_mkdir_p_IFS"
+      IFS=$func_mkdir_p_IFS
 
       # Bail out if we (or some other process) failed to create a directory.
-      test -d "$my_directory_path" || \
-        func_fatal_error "Failed to create \`$1'"
+      test -d "$_G_directory_path" || \
+        func_fatal_error "Failed to create '$1'"
     fi
 }
 
 
-# func_mktempdir [string]
+# func_mktempdir [BASENAME]
+# -------------------------
 # Make a temporary directory that won't clash with other running
 # libtool processes, and avoids race conditions if possible.  If
-# given, STRING is the basename for that directory.
+# given, BASENAME is the basename for that directory.
 func_mktempdir ()
 {
-    my_template="${TMPDIR-/tmp}/${1-$progname}"
+    $debug_cmd
+
+    _G_template=${TMPDIR-/tmp}/${1-$progname}
 
-    if test "$opt_dry_run" = ":"; then
+    if test : = "$opt_dry_run"; then
       # Return a directory name, but don't create it in dry-run mode
-      my_tmpdir="${my_template}-$$"
+      _G_tmpdir=$_G_template-$$
     else
 
       # If mktemp works, use that first and foremost
-      my_tmpdir=`mktemp -d "${my_template}-XXXXXXXX" 2>/dev/null`
+      _G_tmpdir=`mktemp -d "$_G_template-XXXXXXXX" 2>/dev/null`
 
-      if test ! -d "$my_tmpdir"; then
+      if test ! -d "$_G_tmpdir"; then
         # Failing that, at least try and use $RANDOM to avoid a race
-        my_tmpdir="${my_template}-${RANDOM-0}$$"
+        _G_tmpdir=$_G_template-${RANDOM-0}$$
 
-        save_mktempdir_umask=`umask`
+        func_mktempdir_umask=`umask`
         umask 0077
-        $MKDIR "$my_tmpdir"
-        umask $save_mktempdir_umask
+        $MKDIR "$_G_tmpdir"
+        umask $func_mktempdir_umask
       fi
 
       # If we're not in dry-run mode, bomb out on failure
-      test -d "$my_tmpdir" || \
-        func_fatal_error "cannot create temporary directory \`$my_tmpdir'"
+      test -d "$_G_tmpdir" || \
+        func_fatal_error "cannot create temporary directory '$_G_tmpdir'"
+    fi
+
+    $ECHO "$_G_tmpdir"
+}
+
+
+# func_normal_abspath PATH
+# ------------------------
+# Remove doubled-up and trailing slashes, "." path components,
+# and cancel out any ".." path components in PATH after making
+# it an absolute path.
+func_normal_abspath ()
+{
+    $debug_cmd
+
+    # These SED scripts presuppose an absolute path with a trailing slash.
+    _G_pathcar='s|^/\([^/]*\).*$|\1|'
+    _G_pathcdr='s|^/[^/]*||'
+    _G_removedotparts=':dotsl
+               s|/\./|/|g
+               t dotsl
+               s|/\.$|/|'
+    _G_collapseslashes='s|/\{1,\}|/|g'
+    _G_finalslash='s|/*$|/|'
+
+    # Start from root dir and reassemble the path.
+    func_normal_abspath_result=
+    func_normal_abspath_tpath=$1
+    func_normal_abspath_altnamespace=
+    case $func_normal_abspath_tpath in
+      "")
+        # Empty path, that just means $cwd.
+        func_stripname '' '/' "`pwd`"
+        func_normal_abspath_result=$func_stripname_result
+        return
+        ;;
+      # The next three entries are used to spot a run of precisely
+      # two leading slashes without using negated character classes;
+      # we take advantage of case's first-match behaviour.
+      ///*)
+        # Unusual form of absolute path, do nothing.
+        ;;
+      //*)
+        # Not necessarily an ordinary path; POSIX reserves leading '//'
+        # and for example Cygwin uses it to access remote file shares
+        # over CIFS/SMB, so we conserve a leading double slash if found.
+        func_normal_abspath_altnamespace=/
+        ;;
+      /*)
+        # Absolute path, do nothing.
+        ;;
+      *)
+        # Relative path, prepend $cwd.
+        func_normal_abspath_tpath=`pwd`/$func_normal_abspath_tpath
+        ;;
+    esac
+
+    # Cancel out all the simple stuff to save iterations.  We also want
+    # the path to end with a slash for ease of parsing, so make sure
+    # there is one (and only one) here.
+    func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \
+          -e "$_G_removedotparts" -e "$_G_collapseslashes" -e "$_G_finalslash"`
+    while :; do
+      # Processed it all yet?
+      if test / = "$func_normal_abspath_tpath"; then
+        # If we ascended to the root using ".." the result may be empty now.
+        if test -z "$func_normal_abspath_result"; then
+          func_normal_abspath_result=/
+        fi
+        break
+      fi
+      func_normal_abspath_tcomponent=`$ECHO "$func_normal_abspath_tpath" | $SED \
+          -e "$_G_pathcar"`
+      func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \
+          -e "$_G_pathcdr"`
+      # Figure out what to do with it
+      case $func_normal_abspath_tcomponent in
+        "")
+          # Trailing empty path component, ignore it.
+          ;;
+        ..)
+          # Parent dir; strip last assembled component from result.
+          func_dirname "$func_normal_abspath_result"
+          func_normal_abspath_result=$func_dirname_result
+          ;;
+        *)
+          # Actual path component, append it.
+          func_append func_normal_abspath_result "/$func_normal_abspath_tcomponent"
+          ;;
+      esac
+    done
+    # Restore leading double-slash if one was found on entry.
+    func_normal_abspath_result=$func_normal_abspath_altnamespace$func_normal_abspath_result
+}
+
+
+# func_notquiet ARG...
+# --------------------
+# Echo program name prefixed message only when not in quiet mode.
+func_notquiet ()
+{
+    $debug_cmd
+
+    $opt_quiet || func_echo ${1+"$@"}
+
+    # A bug in bash halts the script if the last line of a function
+    # fails when set -e is in force, so we need another command to
+    # work around that:
+    :
+}
+
+
+# func_relative_path SRCDIR DSTDIR
+# --------------------------------
+# Set func_relative_path_result to the relative path from SRCDIR to DSTDIR.
+func_relative_path ()
+{
+    $debug_cmd
+
+    func_relative_path_result=
+    func_normal_abspath "$1"
+    func_relative_path_tlibdir=$func_normal_abspath_result
+    func_normal_abspath "$2"
+    func_relative_path_tbindir=$func_normal_abspath_result
+
+    # Ascend the tree starting from libdir
+    while :; do
+      # check if we have found a prefix of bindir
+      case $func_relative_path_tbindir in
+        $func_relative_path_tlibdir)
+          # found an exact match
+          func_relative_path_tcancelled=
+          break
+          ;;
+        $func_relative_path_tlibdir*)
+          # found a matching prefix
+          func_stripname "$func_relative_path_tlibdir" '' "$func_relative_path_tbindir"
+          func_relative_path_tcancelled=$func_stripname_result
+          if test -z "$func_relative_path_result"; then
+            func_relative_path_result=.
+          fi
+          break
+          ;;
+        *)
+          func_dirname $func_relative_path_tlibdir
+          func_relative_path_tlibdir=$func_dirname_result
+          if test -z "$func_relative_path_tlibdir"; then
+            # Have to descend all the way to the root!
+            func_relative_path_result=../$func_relative_path_result
+            func_relative_path_tcancelled=$func_relative_path_tbindir
+            break
+          fi
+          func_relative_path_result=../$func_relative_path_result
+          ;;
+      esac
+    done
+
+    # Now calculate path; take care to avoid doubling-up slashes.
+    func_stripname '' '/' "$func_relative_path_result"
+    func_relative_path_result=$func_stripname_result
+    func_stripname '/' '/' "$func_relative_path_tcancelled"
+    if test -n "$func_stripname_result"; then
+      func_append func_relative_path_result "/$func_stripname_result"
+    fi
+
+    # Normalisation. If bindir is libdir, return '.' else relative path.
+    if test -n "$func_relative_path_result"; then
+      func_stripname './' '' "$func_relative_path_result"
+      func_relative_path_result=$func_stripname_result
     fi
 
-    $ECHO "$my_tmpdir"
+    test -n "$func_relative_path_result" || func_relative_path_result=.
+
+    :
+}
+
+
+# func_quote_for_eval ARG...
+# --------------------------
+# Aesthetically quote ARGs to be evaled later.
+# This function returns two values:
+#   i) func_quote_for_eval_result
+#      double-quoted, suitable for a subsequent eval
+#  ii) func_quote_for_eval_unquoted_result
+#      has all characters that are still active within double
+#      quotes backslashified.
+func_quote_for_eval ()
+{
+    $debug_cmd
+
+    func_quote_for_eval_unquoted_result=
+    func_quote_for_eval_result=
+    while test 0 -lt $#; do
+      case $1 in
+        *[\\\`\"\$]*)
+         _G_unquoted_arg=`printf '%s\n' "$1" |$SED "$sed_quote_subst"` ;;
+        *)
+          _G_unquoted_arg=$1 ;;
+      esac
+      if test -n "$func_quote_for_eval_unquoted_result"; then
+       func_append func_quote_for_eval_unquoted_result " $_G_unquoted_arg"
+      else
+        func_append func_quote_for_eval_unquoted_result "$_G_unquoted_arg"
+      fi
+
+      case $_G_unquoted_arg in
+        # Double-quote args containing shell metacharacters to delay
+        # word splitting, command substitution and variable expansion
+        # for a subsequent eval.
+        # Many Bourne shells cannot handle close brackets correctly
+        # in scan sets, so we specify it separately.
+        *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \  ]*|*]*|"")
+          _G_quoted_arg=\"$_G_unquoted_arg\"
+          ;;
+        *)
+          _G_quoted_arg=$_G_unquoted_arg
+         ;;
+      esac
+
+      if test -n "$func_quote_for_eval_result"; then
+       func_append func_quote_for_eval_result " $_G_quoted_arg"
+      else
+        func_append func_quote_for_eval_result "$_G_quoted_arg"
+      fi
+      shift
+    done
+}
+
+
+# func_quote_for_expand ARG
+# -------------------------
+# Aesthetically quote ARG to be evaled later; same as above,
+# but do not quote variable references.
+func_quote_for_expand ()
+{
+    $debug_cmd
+
+    case $1 in
+      *[\\\`\"]*)
+       _G_arg=`$ECHO "$1" | $SED \
+           -e "$sed_double_quote_subst" -e "$sed_double_backslash"` ;;
+      *)
+        _G_arg=$1 ;;
+    esac
+
+    case $_G_arg in
+      # Double-quote args containing shell metacharacters to delay
+      # word splitting and command substitution for a subsequent eval.
+      # Many Bourne shells cannot handle close brackets correctly
+      # in scan sets, so we specify it separately.
+      *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \    ]*|*]*|"")
+        _G_arg=\"$_G_arg\"
+        ;;
+    esac
+
+    func_quote_for_expand_result=$_G_arg
+}
+
+
+# func_stripname PREFIX SUFFIX NAME
+# ---------------------------------
+# strip PREFIX and SUFFIX from NAME, and store in func_stripname_result.
+# PREFIX and SUFFIX must not contain globbing or regex special
+# characters, hashes, percent signs, but SUFFIX may contain a leading
+# dot (in which case that matches only a dot).
+if test yes = "$_G_HAVE_XSI_OPS"; then
+  eval 'func_stripname ()
+  {
+    $debug_cmd
+
+    # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
+    # positional parameters, so assign one to ordinary variable first.
+    func_stripname_result=$3
+    func_stripname_result=${func_stripname_result#"$1"}
+    func_stripname_result=${func_stripname_result%"$2"}
+  }'
+else
+  func_stripname ()
+  {
+    $debug_cmd
+
+    case $2 in
+      .*) func_stripname_result=`$ECHO "$3" | $SED -e "s%^$1%%" -e "s%\\\\$2\$%%"`;;
+      *)  func_stripname_result=`$ECHO "$3" | $SED -e "s%^$1%%" -e "s%$2\$%%"`;;
+    esac
+  }
+fi
+
+
+# func_show_eval CMD [FAIL_EXP]
+# -----------------------------
+# Unless opt_quiet is true, then output CMD.  Then, if opt_dryrun is
+# not true, evaluate CMD.  If the evaluation of CMD fails, and FAIL_EXP
+# is given, then evaluate it.
+func_show_eval ()
+{
+    $debug_cmd
+
+    _G_cmd=$1
+    _G_fail_exp=${2-':'}
+
+    func_quote_for_expand "$_G_cmd"
+    eval "func_notquiet $func_quote_for_expand_result"
+
+    $opt_dry_run || {
+      eval "$_G_cmd"
+      _G_status=$?
+      if test 0 -ne "$_G_status"; then
+       eval "(exit $_G_status); $_G_fail_exp"
+      fi
+    }
+}
+
+
+# func_show_eval_locale CMD [FAIL_EXP]
+# ------------------------------------
+# Unless opt_quiet is true, then output CMD.  Then, if opt_dryrun is
+# not true, evaluate CMD.  If the evaluation of CMD fails, and FAIL_EXP
+# is given, then evaluate it.  Use the saved locale for evaluation.
+func_show_eval_locale ()
+{
+    $debug_cmd
+
+    _G_cmd=$1
+    _G_fail_exp=${2-':'}
+
+    $opt_quiet || {
+      func_quote_for_expand "$_G_cmd"
+      eval "func_echo $func_quote_for_expand_result"
+    }
+
+    $opt_dry_run || {
+      eval "$_G_user_locale
+           $_G_cmd"
+      _G_status=$?
+      eval "$_G_safe_locale"
+      if test 0 -ne "$_G_status"; then
+       eval "(exit $_G_status); $_G_fail_exp"
+      fi
+    }
+}
+
+
+# func_tr_sh
+# ----------
+# Turn $1 into a string suitable for a shell variable name.
+# Result is stored in $func_tr_sh_result.  All characters
+# not in the set a-zA-Z0-9_ are replaced with '_'. Further,
+# if $1 begins with a digit, a '_' is prepended as well.
+func_tr_sh ()
+{
+    $debug_cmd
+
+    case $1 in
+    [0-9]* | *[!a-zA-Z0-9_]*)
+      func_tr_sh_result=`$ECHO "$1" | $SED -e 's/^\([0-9]\)/_\1/' -e 's/[^a-zA-Z0-9_]/_/g'`
+      ;;
+    * )
+      func_tr_sh_result=$1
+      ;;
+    esac
+}
+
+
+# func_verbose ARG...
+# -------------------
+# Echo program name prefixed message in verbose mode only.
+func_verbose ()
+{
+    $debug_cmd
+
+    $opt_verbose && func_echo "$*"
+
+    :
+}
+
+
+# func_warn_and_continue ARG...
+# -----------------------------
+# Echo program name prefixed warning message to standard error.
+func_warn_and_continue ()
+{
+    $debug_cmd
+
+    $require_term_colors
+
+    func_echo_infix_1 "${tc_red}warning$tc_reset" "$*" >&2
+}
+
+
+# func_warning CATEGORY ARG...
+# ----------------------------
+# Echo program name prefixed warning message to standard error. Warning
+# messages can be filtered according to CATEGORY, where this function
+# elides messages where CATEGORY is not listed in the global variable
+# 'opt_warning_types'.
+func_warning ()
+{
+    $debug_cmd
+
+    # CATEGORY must be in the warning_categories list!
+    case " $warning_categories " in
+      *" $1 "*) ;;
+      *) func_internal_error "invalid warning category '$1'" ;;
+    esac
+
+    _G_category=$1
+    shift
+
+    case " $opt_warning_types " in
+      *" $_G_category "*) $warning_func ${1+"$@"} ;;
+    esac
+}
+
+
+# func_sort_ver VER1 VER2
+# -----------------------
+# 'sort -V' is not generally available.
+# Note this deviates from the version comparison in automake
+# in that it treats 1.5 < 1.5.0, and treats 1.4.4a < 1.4-p3a
+# but this should suffice as we won't be specifying old
+# version formats or redundant trailing .0 in bootstrap.conf.
+# If we did want full compatibility then we should probably
+# use m4_version_compare from autoconf.
+func_sort_ver ()
+{
+    $debug_cmd
+
+    printf '%s\n%s\n' "$1" "$2" \
+      | sort -t. -k 1,1n -k 2,2n -k 3,3n -k 4,4n -k 5,5n -k 6,6n -k 7,7n -k 8,8n -k 9,9n
+}
+
+# func_lt_ver PREV CURR
+# ---------------------
+# Return true if PREV and CURR are in the correct order according to
+# func_sort_ver, otherwise false.  Use it like this:
+#
+#  func_lt_ver "$prev_ver" "$proposed_ver" || func_fatal_error "..."
+func_lt_ver ()
+{
+    $debug_cmd
+
+    test "x$1" = x`func_sort_ver "$1" "$2" | $SED 1q`
+}
+
+
+# Local variables:
+# mode: shell-script
+# sh-indentation: 2
+# eval: (add-hook 'before-save-hook 'time-stamp)
+# time-stamp-pattern: "10/scriptversion=%:y-%02m-%02d.%02H; # UTC"
+# time-stamp-time-zone: "UTC"
+# End:
+#! /bin/sh
+
+# Set a version string for this script.
+scriptversion=2014-01-07.03; # UTC
+
+# A portable, pluggable option parser for Bourne shell.
+# Written by Gary V. Vaughan, 2010
+
+# Copyright (C) 2010-2015 Free Software Foundation, Inc.
+# This is free software; see the source for copying conditions.  There is NO
+# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+# Please report bugs or propose patches to gary@gnu.org.
+
+
+## ------ ##
+## Usage. ##
+## ------ ##
+
+# This file is a library for parsing options in your shell scripts along
+# with assorted other useful supporting features that you can make use
+# of too.
+#
+# For the simplest scripts you might need only:
+#
+#   #!/bin/sh
+#   . relative/path/to/funclib.sh
+#   . relative/path/to/options-parser
+#   scriptversion=1.0
+#   func_options ${1+"$@"}
+#   eval set dummy "$func_options_result"; shift
+#   ...rest of your script...
+#
+# In order for the '--version' option to work, you will need to have a
+# suitably formatted comment like the one at the top of this file
+# starting with '# Written by ' and ending with '# warranty; '.
+#
+# For '-h' and '--help' to work, you will also need a one line
+# description of your script's purpose in a comment directly above the
+# '# Written by ' line, like the one at the top of this file.
+#
+# The default options also support '--debug', which will turn on shell
+# execution tracing (see the comment above debug_cmd below for another
+# use), and '--verbose' and the func_verbose function to allow your script
+# to display verbose messages only when your user has specified
+# '--verbose'.
+#
+# After sourcing this file, you can plug processing for additional
+# options by amending the variables from the 'Configuration' section
+# below, and following the instructions in the 'Option parsing'
+# section further down.
+
+## -------------- ##
+## Configuration. ##
+## -------------- ##
+
+# You should override these variables in your script after sourcing this
+# file so that they reflect the customisations you have added to the
+# option parser.
+
+# The usage line for option parsing errors and the start of '-h' and
+# '--help' output messages. You can embed shell variables for delayed
+# expansion at the time the message is displayed, but you will need to
+# quote other shell meta-characters carefully to prevent them being
+# expanded when the contents are evaled.
+usage='$progpath [OPTION]...'
+
+# Short help message in response to '-h' and '--help'.  Add to this or
+# override it after sourcing this library to reflect the full set of
+# options your script accepts.
+usage_message="\
+       --debug        enable verbose shell tracing
+   -W, --warnings=CATEGORY
+                      report the warnings falling in CATEGORY [all]
+   -v, --verbose      verbosely report processing
+       --version      print version information and exit
+   -h, --help         print short or long help message and exit
+"
+
+# Additional text appended to 'usage_message' in response to '--help'.
+long_help_message="
+Warning categories include:
+       'all'          show all warnings
+       'none'         turn off all the warnings
+       'error'        warnings are treated as fatal errors"
+
+# Help message printed before fatal option parsing errors.
+fatal_help="Try '\$progname --help' for more information."
+
+
+
+## ------------------------- ##
+## Hook function management. ##
+## ------------------------- ##
+
+# This section contains functions for adding, removing, and running hooks
+# to the main code.  A hook is just a named list of of function, that can
+# be run in order later on.
+
+# func_hookable FUNC_NAME
+# -----------------------
+# Declare that FUNC_NAME will run hooks added with
+# 'func_add_hook FUNC_NAME ...'.
+func_hookable ()
+{
+    $debug_cmd
+
+    func_append hookable_fns " $1"
+}
+
+
+# func_add_hook FUNC_NAME HOOK_FUNC
+# ---------------------------------
+# Request that FUNC_NAME call HOOK_FUNC before it returns.  FUNC_NAME must
+# first have been declared "hookable" by a call to 'func_hookable'.
+func_add_hook ()
+{
+    $debug_cmd
+
+    case " $hookable_fns " in
+      *" $1 "*) ;;
+      *) func_fatal_error "'$1' does not accept hook functions." ;;
+    esac
+
+    eval func_append ${1}_hooks '" $2"'
+}
+
+
+# func_remove_hook FUNC_NAME HOOK_FUNC
+# ------------------------------------
+# Remove HOOK_FUNC from the list of functions called by FUNC_NAME.
+func_remove_hook ()
+{
+    $debug_cmd
+
+    eval ${1}_hooks='`$ECHO "\$'$1'_hooks" |$SED "s| '$2'||"`'
+}
+
+
+# func_run_hooks FUNC_NAME [ARG]...
+# ---------------------------------
+# Run all hook functions registered to FUNC_NAME.
+# It is assumed that the list of hook functions contains nothing more
+# than a whitespace-delimited list of legal shell function names, and
+# no effort is wasted trying to catch shell meta-characters or preserve
+# whitespace.
+func_run_hooks ()
+{
+    $debug_cmd
+
+    case " $hookable_fns " in
+      *" $1 "*) ;;
+      *) func_fatal_error "'$1' does not support hook funcions.n" ;;
+    esac
+
+    eval _G_hook_fns=\$$1_hooks; shift
+
+    for _G_hook in $_G_hook_fns; do
+      eval $_G_hook '"$@"'
+
+      # store returned options list back into positional
+      # parameters for next 'cmd' execution.
+      eval _G_hook_result=\$${_G_hook}_result
+      eval set dummy "$_G_hook_result"; shift
+    done
+
+    func_quote_for_eval ${1+"$@"}
+    func_run_hooks_result=$func_quote_for_eval_result
+}
+
+
+
+## --------------- ##
+## Option parsing. ##
+## --------------- ##
+
+# In order to add your own option parsing hooks, you must accept the
+# full positional parameter list in your hook function, remove any
+# options that you action, and then pass back the remaining unprocessed
+# options in '<hooked_function_name>_result', escaped suitably for
+# 'eval'.  Like this:
+#
+#    my_options_prep ()
+#    {
+#        $debug_cmd
+#
+#        # Extend the existing usage message.
+#        usage_message=$usage_message'
+#      -s, --silent       don'\''t print informational messages
+#    '
+#
+#        func_quote_for_eval ${1+"$@"}
+#        my_options_prep_result=$func_quote_for_eval_result
+#    }
+#    func_add_hook func_options_prep my_options_prep
+#
+#
+#    my_silent_option ()
+#    {
+#        $debug_cmd
+#
+#        # Note that for efficiency, we parse as many options as we can
+#        # recognise in a loop before passing the remainder back to the
+#        # caller on the first unrecognised argument we encounter.
+#        while test $# -gt 0; do
+#          opt=$1; shift
+#          case $opt in
+#            --silent|-s) opt_silent=: ;;
+#            # Separate non-argument short options:
+#            -s*)         func_split_short_opt "$_G_opt"
+#                         set dummy "$func_split_short_opt_name" \
+#                             "-$func_split_short_opt_arg" ${1+"$@"}
+#                         shift
+#                         ;;
+#            *)            set dummy "$_G_opt" "$*"; shift; break ;;
+#          esac
+#        done
+#
+#        func_quote_for_eval ${1+"$@"}
+#        my_silent_option_result=$func_quote_for_eval_result
+#    }
+#    func_add_hook func_parse_options my_silent_option
+#
+#
+#    my_option_validation ()
+#    {
+#        $debug_cmd
+#
+#        $opt_silent && $opt_verbose && func_fatal_help "\
+#    '--silent' and '--verbose' options are mutually exclusive."
+#
+#        func_quote_for_eval ${1+"$@"}
+#        my_option_validation_result=$func_quote_for_eval_result
+#    }
+#    func_add_hook func_validate_options my_option_validation
+#
+# You'll alse need to manually amend $usage_message to reflect the extra
+# options you parse.  It's preferable to append if you can, so that
+# multiple option parsing hooks can be added safely.
+
+
+# func_options [ARG]...
+# ---------------------
+# All the functions called inside func_options are hookable. See the
+# individual implementations for details.
+func_hookable func_options
+func_options ()
+{
+    $debug_cmd
+
+    func_options_prep ${1+"$@"}
+    eval func_parse_options \
+        ${func_options_prep_result+"$func_options_prep_result"}
+    eval func_validate_options \
+        ${func_parse_options_result+"$func_parse_options_result"}
+
+    eval func_run_hooks func_options \
+        ${func_validate_options_result+"$func_validate_options_result"}
+
+    # save modified positional parameters for caller
+    func_options_result=$func_run_hooks_result
 }
 
 
-# func_quote_for_eval arg
-# Aesthetically quote ARG to be evaled later.
-# This function returns two values: FUNC_QUOTE_FOR_EVAL_RESULT
-# is double-quoted, suitable for a subsequent eval, whereas
-# FUNC_QUOTE_FOR_EVAL_UNQUOTED_RESULT has merely all characters
-# which are still active within double quotes backslashified.
-func_quote_for_eval ()
+# func_options_prep [ARG]...
+# --------------------------
+# All initialisations required before starting the option parse loop.
+# Note that when calling hook functions, we pass through the list of
+# positional parameters.  If a hook function modifies that list, and
+# needs to propogate that back to rest of this script, then the complete
+# modified list must be put in 'func_run_hooks_result' before
+# returning.
+func_hookable func_options_prep
+func_options_prep ()
 {
-    case $1 in
-      *[\\\`\"\$]*)
-       func_quote_for_eval_unquoted_result=`$ECHO "$1" | $SED "$sed_quote_subst"` ;;
-      *)
-        func_quote_for_eval_unquoted_result="$1" ;;
-    esac
+    $debug_cmd
 
-    case $func_quote_for_eval_unquoted_result in
-      # Double-quote args containing shell metacharacters to delay
-      # word splitting, command substitution and and variable
-      # expansion for a subsequent eval.
-      # Many Bourne shells cannot handle close brackets correctly
-      # in scan sets, so we specify it separately.
-      *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \    ]*|*]*|"")
-        func_quote_for_eval_result="\"$func_quote_for_eval_unquoted_result\""
-        ;;
-      *)
-        func_quote_for_eval_result="$func_quote_for_eval_unquoted_result"
-    esac
+    # Option defaults:
+    opt_verbose=false
+    opt_warning_types=
+
+    func_run_hooks func_options_prep ${1+"$@"}
+
+    # save modified positional parameters for caller
+    func_options_prep_result=$func_run_hooks_result
 }
 
 
-# func_quote_for_expand arg
-# Aesthetically quote ARG to be evaled later; same as above,
-# but do not quote variable references.
-func_quote_for_expand ()
+# func_parse_options [ARG]...
+# ---------------------------
+# The main option parsing loop.
+func_hookable func_parse_options
+func_parse_options ()
 {
-    case $1 in
-      *[\\\`\"]*)
-       my_arg=`$ECHO "$1" | $SED \
-           -e "$double_quote_subst" -e "$sed_double_backslash"` ;;
-      *)
-        my_arg="$1" ;;
-    esac
+    $debug_cmd
 
-    case $my_arg in
-      # Double-quote args containing shell metacharacters to delay
-      # word splitting and command substitution for a subsequent eval.
-      # Many Bourne shells cannot handle close brackets correctly
-      # in scan sets, so we specify it separately.
-      *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \    ]*|*]*|"")
-        my_arg="\"$my_arg\""
-        ;;
-    esac
+    func_parse_options_result=
 
-    func_quote_for_expand_result="$my_arg"
-}
+    # this just eases exit handling
+    while test $# -gt 0; do
+      # Defer to hook functions for initial option parsing, so they
+      # get priority in the event of reusing an option name.
+      func_run_hooks func_parse_options ${1+"$@"}
 
+      # Adjust func_parse_options positional parameters to match
+      eval set dummy "$func_run_hooks_result"; shift
 
-# func_show_eval cmd [fail_exp]
-# Unless opt_silent is true, then output CMD.  Then, if opt_dryrun is
-# not true, evaluate CMD.  If the evaluation of CMD fails, and FAIL_EXP
-# is given, then evaluate it.
-func_show_eval ()
-{
-    my_cmd="$1"
-    my_fail_exp="${2-:}"
+      # Break out of the loop if we already parsed every option.
+      test $# -gt 0 || break
 
-    ${opt_silent-false} || {
-      func_quote_for_expand "$my_cmd"
-      eval "func_echo $func_quote_for_expand_result"
-    }
+      _G_opt=$1
+      shift
+      case $_G_opt in
+        --debug|-x)   debug_cmd='set -x'
+                      func_echo "enabling shell trace mode"
+                      $debug_cmd
+                      ;;
+
+        --no-warnings|--no-warning|--no-warn)
+                      set dummy --warnings none ${1+"$@"}
+                      shift
+                     ;;
 
-    if ${opt_dry_run-false}; then :; else
-      eval "$my_cmd"
-      my_status=$?
-      if test "$my_status" -eq 0; then :; else
-       eval "(exit $my_status); $my_fail_exp"
-      fi
-    fi
+        --warnings|--warning|-W)
+                      test $# = 0 && func_missing_arg $_G_opt && break
+                      case " $warning_categories $1" in
+                        *" $1 "*)
+                          # trailing space prevents matching last $1 above
+                          func_append_uniq opt_warning_types " $1"
+                          ;;
+                        *all)
+                          opt_warning_types=$warning_categories
+                          ;;
+                        *none)
+                          opt_warning_types=none
+                          warning_func=:
+                          ;;
+                        *error)
+                          opt_warning_types=$warning_categories
+                          warning_func=func_fatal_error
+                          ;;
+                        *)
+                          func_fatal_error \
+                             "unsupported warning category: '$1'"
+                          ;;
+                      esac
+                      shift
+                      ;;
+
+        --verbose|-v) opt_verbose=: ;;
+        --version)    func_version ;;
+        -\?|-h)       func_usage ;;
+        --help)       func_help ;;
+
+       # Separate optargs to long options (plugins may need this):
+       --*=*)        func_split_equals "$_G_opt"
+                     set dummy "$func_split_equals_lhs" \
+                          "$func_split_equals_rhs" ${1+"$@"}
+                      shift
+                      ;;
+
+       # Separate optargs to short options:
+        -W*)
+                      func_split_short_opt "$_G_opt"
+                      set dummy "$func_split_short_opt_name" \
+                          "$func_split_short_opt_arg" ${1+"$@"}
+                      shift
+                      ;;
+
+        # Separate non-argument short options:
+        -\?*|-h*|-v*|-x*)
+                      func_split_short_opt "$_G_opt"
+                      set dummy "$func_split_short_opt_name" \
+                          "-$func_split_short_opt_arg" ${1+"$@"}
+                      shift
+                      ;;
+
+        --)           break ;;
+        -*)           func_fatal_help "unrecognised option: '$_G_opt'" ;;
+        *)            set dummy "$_G_opt" ${1+"$@"}; shift; break ;;
+      esac
+    done
+
+    # save modified positional parameters for caller
+    func_quote_for_eval ${1+"$@"}
+    func_parse_options_result=$func_quote_for_eval_result
 }
 
 
-# func_show_eval_locale cmd [fail_exp]
-# Unless opt_silent is true, then output CMD.  Then, if opt_dryrun is
-# not true, evaluate CMD.  If the evaluation of CMD fails, and FAIL_EXP
-# is given, then evaluate it.  Use the saved locale for evaluation.
-func_show_eval_locale ()
+# func_validate_options [ARG]...
+# ------------------------------
+# Perform any sanity checks on option settings and/or unconsumed
+# arguments.
+func_hookable func_validate_options
+func_validate_options ()
 {
-    my_cmd="$1"
-    my_fail_exp="${2-:}"
+    $debug_cmd
 
-    ${opt_silent-false} || {
-      func_quote_for_expand "$my_cmd"
-      eval "func_echo $func_quote_for_expand_result"
-    }
+    # Display all warnings if -W was not given.
+    test -n "$opt_warning_types" || opt_warning_types=" $warning_categories"
 
-    if ${opt_dry_run-false}; then :; else
-      eval "$lt_user_locale
-           $my_cmd"
-      my_status=$?
-      eval "$lt_safe_locale"
-      if test "$my_status" -eq 0; then :; else
-       eval "(exit $my_status); $my_fail_exp"
-      fi
-    fi
-}
+    func_run_hooks func_validate_options ${1+"$@"}
 
-# func_tr_sh
-# Turn $1 into a string suitable for a shell variable name.
-# Result is stored in $func_tr_sh_result.  All characters
-# not in the set a-zA-Z0-9_ are replaced with '_'. Further,
-# if $1 begins with a digit, a '_' is prepended as well.
-func_tr_sh ()
-{
-  case $1 in
-  [0-9]* | *[!a-zA-Z0-9_]*)
-    func_tr_sh_result=`$ECHO "$1" | $SED 's/^\([0-9]\)/_\1/; s/[^a-zA-Z0-9_]/_/g'`
-    ;;
-  * )
-    func_tr_sh_result=$1
-    ;;
-  esac
+    # Bail if the options were screwed!
+    $exit_cmd $EXIT_FAILURE
+
+    # save modified positional parameters for caller
+    func_validate_options_result=$func_run_hooks_result
 }
 
 
-# func_version
-# Echo version message to standard output and exit.
-func_version ()
-{
-    $opt_debug
 
-    $SED -n '/(C)/!b go
-       :more
-       /\./!{
-         N
-         s/\n# / /
-         b more
-       }
-       :go
-       /^# '$PROGRAM' (GNU /,/# warranty; / {
-        s/^# //
-       s/^# *$//
-        s/\((C)\)[ 0-9,-]*\( [1-9][0-9]*\)/\1\2/
-        p
-     }' < "$progpath"
-     exit $?
-}
+## ----------------- ##
+## Helper functions. ##
+## ----------------- ##
 
-# func_usage
-# Echo short help message to standard output and exit.
-func_usage ()
+# This section contains the helper functions used by the rest of the
+# hookable option parser framework in ascii-betical order.
+
+
+# func_fatal_help ARG...
+# ----------------------
+# Echo program name prefixed message to standard error, followed by
+# a help hint, and exit.
+func_fatal_help ()
 {
-    $opt_debug
+    $debug_cmd
 
-    $SED -n '/^# Usage:/,/^#  *.*--help/ {
-        s/^# //
-       s/^# *$//
-       s/\$progname/'$progname'/
-       p
-    }' < "$progpath"
-    echo
-    $ECHO "run \`$progname --help | more' for full usage"
-    exit $?
+    eval \$ECHO \""Usage: $usage"\"
+    eval \$ECHO \""$fatal_help"\"
+    func_error ${1+"$@"}
+    exit $EXIT_FAILURE
 }
 
-# func_help [NOEXIT]
-# Echo long help message to standard output and exit,
-# unless 'noexit' is passed as argument.
+
+# func_help
+# ---------
+# Echo long help message to standard output and exit.
 func_help ()
 {
-    $opt_debug
-
-    $SED -n '/^# Usage:/,/# Report bugs to/ {
-       :print
-        s/^# //
-       s/^# *$//
-       s*\$progname*'$progname'*
-       s*\$host*'"$host"'*
-       s*\$SHELL*'"$SHELL"'*
-       s*\$LTCC*'"$LTCC"'*
-       s*\$LTCFLAGS*'"$LTCFLAGS"'*
-       s*\$LD*'"$LD"'*
-       s/\$with_gnu_ld/'"$with_gnu_ld"'/
-       s/\$automake_version/'"`(${AUTOMAKE-automake} --version) 2>/dev/null |$SED 1q`"'/
-       s/\$autoconf_version/'"`(${AUTOCONF-autoconf} --version) 2>/dev/null |$SED 1q`"'/
-       p
-       d
-     }
-     /^# .* home page:/b print
-     /^# General help using/b print
-     ' < "$progpath"
-    ret=$?
-    if test -z "$1"; then
-      exit $ret
-    fi
+    $debug_cmd
+
+    func_usage_message
+    $ECHO "$long_help_message"
+    exit 0
 }
 
-# func_missing_arg argname
+
+# func_missing_arg ARGNAME
+# ------------------------
 # Echo program name prefixed message to standard error and set global
 # exit_cmd.
 func_missing_arg ()
 {
-    $opt_debug
+    $debug_cmd
 
-    func_error "missing argument for $1."
+    func_error "Missing argument for '$1'."
     exit_cmd=exit
 }
 
 
-# func_split_short_opt shortopt
+# func_split_equals STRING
+# ------------------------
+# Set func_split_equals_lhs and func_split_equals_rhs shell variables after
+# splitting STRING at the '=' sign.
+test -z "$_G_HAVE_XSI_OPS" \
+    && (eval 'x=a/b/c;
+      test 5aa/bb/cc = "${#x}${x%%/*}${x%/*}${x#*/}${x##*/}"') 2>/dev/null \
+    && _G_HAVE_XSI_OPS=yes
+
+if test yes = "$_G_HAVE_XSI_OPS"
+then
+  # This is an XSI compatible shell, allowing a faster implementation...
+  eval 'func_split_equals ()
+  {
+      $debug_cmd
+
+      func_split_equals_lhs=${1%%=*}
+      func_split_equals_rhs=${1#*=}
+      test "x$func_split_equals_lhs" = "x$1" \
+        && func_split_equals_rhs=
+  }'
+else
+  # ...otherwise fall back to using expr, which is often a shell builtin.
+  func_split_equals ()
+  {
+      $debug_cmd
+
+      func_split_equals_lhs=`expr "x$1" : 'x\([^=]*\)'`
+      func_split_equals_rhs=
+      test "x$func_split_equals_lhs" = "x$1" \
+        || func_split_equals_rhs=`expr "x$1" : 'x[^=]*=\(.*\)$'`
+  }
+fi #func_split_equals
+
+
+# func_split_short_opt SHORTOPT
+# -----------------------------
 # Set func_split_short_opt_name and func_split_short_opt_arg shell
 # variables after splitting SHORTOPT after the 2nd character.
-func_split_short_opt ()
+if test yes = "$_G_HAVE_XSI_OPS"
+then
+  # This is an XSI compatible shell, allowing a faster implementation...
+  eval 'func_split_short_opt ()
+  {
+      $debug_cmd
+
+      func_split_short_opt_arg=${1#??}
+      func_split_short_opt_name=${1%"$func_split_short_opt_arg"}
+  }'
+else
+  # ...otherwise fall back to using expr, which is often a shell builtin.
+  func_split_short_opt ()
+  {
+      $debug_cmd
+
+      func_split_short_opt_name=`expr "x$1" : 'x-\(.\)'`
+      func_split_short_opt_arg=`expr "x$1" : 'x-.\(.*\)$'`
+  }
+fi #func_split_short_opt
+
+
+# func_usage
+# ----------
+# Echo short help message to standard output and exit.
+func_usage ()
 {
-    my_sed_short_opt='1s/^\(..\).*$/\1/;q'
-    my_sed_short_rest='1s/^..\(.*\)$/\1/;q'
+    $debug_cmd
 
-    func_split_short_opt_name=`$ECHO "$1" | $SED "$my_sed_short_opt"`
-    func_split_short_opt_arg=`$ECHO "$1" | $SED "$my_sed_short_rest"`
-} # func_split_short_opt may be replaced by extended shell implementation
+    func_usage_message
+    $ECHO "Run '$progname --help |${PAGER-more}' for full usage"
+    exit 0
+}
 
 
-# func_split_long_opt longopt
-# Set func_split_long_opt_name and func_split_long_opt_arg shell
-# variables after splitting LONGOPT at the `=' sign.
-func_split_long_opt ()
+# func_usage_message
+# ------------------
+# Echo short help message to standard output.
+func_usage_message ()
 {
-    my_sed_long_opt='1s/^\(--[^=]*\)=.*/\1/;q'
-    my_sed_long_arg='1s/^--[^=]*=//'
+    $debug_cmd
 
-    func_split_long_opt_name=`$ECHO "$1" | $SED "$my_sed_long_opt"`
-    func_split_long_opt_arg=`$ECHO "$1" | $SED "$my_sed_long_arg"`
-} # func_split_long_opt may be replaced by extended shell implementation
+    eval \$ECHO \""Usage: $usage"\"
+    echo
+    $SED -n 's|^# ||
+        /^Written by/{
+          x;p;x
+        }
+       h
+       /^Written by/q' < "$progpath"
+    echo
+    eval \$ECHO \""$usage_message"\"
+}
 
-exit_cmd=:
 
+# func_version
+# ------------
+# Echo version message to standard output and exit.
+func_version ()
+{
+    $debug_cmd
 
+    printf '%s\n' "$progname $scriptversion"
+    $SED -n '
+        /(C)/!b go
+        :more
+        /\./!{
+          N
+          s|\n# | |
+          b more
+        }
+        :go
+        /^# Written by /,/# warranty; / {
+          s|^# ||
+          s|^# *$||
+          s|\((C)\)[ 0-9,-]*[ ,-]\([1-9][0-9]* \)|\1 \2|
+          p
+        }
+        /^# Written by / {
+          s|^# ||
+          p
+        }
+        /^warranty; /q' < "$progpath"
 
+    exit $?
+}
 
 
-magic="%%%MAGIC variable%%%"
-magic_exe="%%%MAGIC EXE variable%%%"
+# Local variables:
+# mode: shell-script
+# sh-indentation: 2
+# eval: (add-hook 'before-save-hook 'time-stamp)
+# time-stamp-pattern: "10/scriptversion=%:y-%02m-%02d.%02H; # UTC"
+# time-stamp-time-zone: "UTC"
+# End:
 
-# Global variables.
-nonopt=
-preserve_args=
-lo2o="s/\\.lo\$/.${objext}/"
-o2lo="s/\\.${objext}\$/.lo/"
-extracted_archives=
-extracted_serial=0
+# Set a version string.
+scriptversion='(GNU libtool) 2.4.6'
 
-# If this variable is set in any of the actions, the command in it
-# will be execed at the end.  This prevents here-documents from being
-# left over by shells.
-exec_cmd=
 
-# func_append var value
-# Append VALUE to the end of shell variable VAR.
-func_append ()
+# func_echo ARG...
+# ----------------
+# Libtool also displays the current mode in messages, so override
+# funclib.sh func_echo with this custom definition.
+func_echo ()
 {
-    eval "${1}=\$${1}\${2}"
-} # func_append may be replaced by extended shell implementation
+    $debug_cmd
 
-# func_append_quoted var value
-# Quote VALUE and append to the end of shell variable VAR, separated
-# by a space.
-func_append_quoted ()
-{
-    func_quote_for_eval "${2}"
-    eval "${1}=\$${1}\\ \$func_quote_for_eval_result"
-} # func_append_quoted may be replaced by extended shell implementation
+    _G_message=$*
 
+    func_echo_IFS=$IFS
+    IFS=$nl
+    for _G_line in $_G_message; do
+      IFS=$func_echo_IFS
+      $ECHO "$progname${opt_mode+: $opt_mode}: $_G_line"
+    done
+    IFS=$func_echo_IFS
+}
 
-# func_arith arithmetic-term...
-func_arith ()
+
+# func_warning ARG...
+# -------------------
+# Libtool warnings are not categorized, so override funclib.sh
+# func_warning with this simpler definition.
+func_warning ()
 {
-    func_arith_result=`expr "${@}"`
-} # func_arith may be replaced by extended shell implementation
+    $debug_cmd
 
+    $warning_func ${1+"$@"}
+}
 
-# func_len string
-# STRING may not start with a hyphen.
-func_len ()
-{
-    func_len_result=`expr "${1}" : ".*" 2>/dev/null || echo $max_cmd_len`
-} # func_len may be replaced by extended shell implementation
 
+## ---------------- ##
+## Options parsing. ##
+## ---------------- ##
+
+# Hook in the functions to make sure our own options are parsed during
+# the option parsing loop.
+
+usage='$progpath [OPTION]... [MODE-ARG]...'
+
+# Short help message in response to '-h'.
+usage_message="Options:
+       --config             show all configuration variables
+       --debug              enable verbose shell tracing
+   -n, --dry-run            display commands without modifying any files
+       --features           display basic configuration information and exit
+       --mode=MODE          use operation mode MODE
+       --no-warnings        equivalent to '-Wnone'
+       --preserve-dup-deps  don't remove duplicate dependency libraries
+       --quiet, --silent    don't print informational messages
+       --tag=TAG            use configuration variables from tag TAG
+   -v, --verbose            print more informational messages than default
+       --version            print version information
+   -W, --warnings=CATEGORY  report the warnings falling in CATEGORY [all]
+   -h, --help, --help-all   print short, long, or detailed help message
+"
 
-# func_lo2o object
-func_lo2o ()
+# Additional text appended to 'usage_message' in response to '--help'.
+func_help ()
 {
-    func_lo2o_result=`$ECHO "${1}" | $SED "$lo2o"`
-} # func_lo2o may be replaced by extended shell implementation
+    $debug_cmd
+
+    func_usage_message
+    $ECHO "$long_help_message
+
+MODE must be one of the following:
+
+       clean           remove files from the build directory
+       compile         compile a source file into a libtool object
+       execute         automatically set library path, then run a program
+       finish          complete the installation of libtool libraries
+       install         install libraries or executables
+       link            create a library or an executable
+       uninstall       remove libraries from an installed directory
+
+MODE-ARGS vary depending on the MODE.  When passed as first option,
+'--mode=MODE' may be abbreviated as 'MODE' or a unique abbreviation of that.
+Try '$progname --help --mode=MODE' for a more detailed description of MODE.
+
+When reporting a bug, please describe a test case to reproduce it and
+include the following information:
+
+       host-triplet:   $host
+       shell:          $SHELL
+       compiler:       $LTCC
+       compiler flags: $LTCFLAGS
+       linker:         $LD (gnu? $with_gnu_ld)
+       version:        $progname $scriptversion Debian-2.4.6-2
+       automake:       `($AUTOMAKE --version) 2>/dev/null |$SED 1q`
+       autoconf:       `($AUTOCONF --version) 2>/dev/null |$SED 1q`
+
+Report bugs to <bug-libtool@gnu.org>.
+GNU libtool home page: <http://www.gnu.org/s/libtool/>.
+General help using GNU software: <http://www.gnu.org/gethelp/>."
+    exit 0
+}
 
 
-# func_xform libobj-or-source
-func_xform ()
-{
-    func_xform_result=`$ECHO "${1}" | $SED 's/\.[^.]*$/.lo/'`
-} # func_xform may be replaced by extended shell implementation
+# func_lo2o OBJECT-NAME
+# ---------------------
+# Transform OBJECT-NAME from a '.lo' suffix to the platform specific
+# object suffix.
+
+lo2o=s/\\.lo\$/.$objext/
+o2lo=s/\\.$objext\$/.lo/
+
+if test yes = "$_G_HAVE_XSI_OPS"; then
+  eval 'func_lo2o ()
+  {
+    case $1 in
+      *.lo) func_lo2o_result=${1%.lo}.$objext ;;
+      *   ) func_lo2o_result=$1               ;;
+    esac
+  }'
+
+  # func_xform LIBOBJ-OR-SOURCE
+  # ---------------------------
+  # Transform LIBOBJ-OR-SOURCE from a '.o' or '.c' (or otherwise)
+  # suffix to a '.lo' libtool-object suffix.
+  eval 'func_xform ()
+  {
+    func_xform_result=${1%.*}.lo
+  }'
+else
+  # ...otherwise fall back to using sed.
+  func_lo2o ()
+  {
+    func_lo2o_result=`$ECHO "$1" | $SED "$lo2o"`
+  }
+
+  func_xform ()
+  {
+    func_xform_result=`$ECHO "$1" | $SED 's|\.[^.]*$|.lo|'`
+  }
+fi
 
 
-# func_fatal_configuration arg...
+# func_fatal_configuration ARG...
+# -------------------------------
 # Echo program name prefixed message to standard error, followed by
 # a configuration failure hint, and exit.
 func_fatal_configuration ()
 {
-    func_error ${1+"$@"}
-    func_error "See the $PACKAGE documentation for more information."
-    func_fatal_error "Fatal configuration error."
+    func__fatal_error ${1+"$@"} \
+      "See the $PACKAGE documentation for more information." \
+      "Fatal configuration error."
 }
 
 
 # func_config
+# -----------
 # Display the configuration for all the tags in this script.
 func_config ()
 {
@@ -915,17 +2149,19 @@ func_config ()
     exit $?
 }
 
+
 # func_features
+# -------------
 # Display the features supported by this script.
 func_features ()
 {
     echo "host: $host"
-    if test "$build_libtool_libs" = yes; then
+    if test yes = "$build_libtool_libs"; then
       echo "enable shared libraries"
     else
       echo "disable shared libraries"
     fi
-    if test "$build_old_libs" = yes; then
+    if test yes = "$build_old_libs"; then
       echo "enable static libraries"
     else
       echo "disable static libraries"
@@ -934,314 +2170,350 @@ func_features ()
     exit $?
 }
 
-# func_enable_tag tagname
+
+# func_enable_tag TAGNAME
+# -----------------------
 # Verify that TAGNAME is valid, and either flag an error and exit, or
 # enable the TAGNAME tag.  We also add TAGNAME to the global $taglist
 # variable here.
 func_enable_tag ()
 {
-  # Global variable:
-  tagname="$1"
+    # Global variable:
+    tagname=$1
 
-  re_begincf="^# ### BEGIN LIBTOOL TAG CONFIG: $tagname\$"
-  re_endcf="^# ### END LIBTOOL TAG CONFIG: $tagname\$"
-  sed_extractcf="/$re_begincf/,/$re_endcf/p"
+    re_begincf="^# ### BEGIN LIBTOOL TAG CONFIG: $tagname\$"
+    re_endcf="^# ### END LIBTOOL TAG CONFIG: $tagname\$"
+    sed_extractcf=/$re_begincf/,/$re_endcf/p
 
-  # Validate tagname.
-  case $tagname in
-    *[!-_A-Za-z0-9,/]*)
-      func_fatal_error "invalid tag name: $tagname"
-      ;;
-  esac
+    # Validate tagname.
+    case $tagname in
+      *[!-_A-Za-z0-9,/]*)
+        func_fatal_error "invalid tag name: $tagname"
+        ;;
+    esac
 
-  # Don't test for the "default" C tag, as we know it's
-  # there but not specially marked.
-  case $tagname in
-    CC) ;;
+    # Don't test for the "default" C tag, as we know it's
+    # there but not specially marked.
+    case $tagname in
+        CC) ;;
     *)
-      if $GREP "$re_begincf" "$progpath" >/dev/null 2>&1; then
-       taglist="$taglist $tagname"
-
-       # Evaluate the configuration.  Be careful to quote the path
-       # and the sed script, to avoid splitting on whitespace, but
-       # also don't use non-portable quotes within backquotes within
-       # quotes we have to do it in 2 steps:
-       extractedcf=`$SED -n -e "$sed_extractcf" < "$progpath"`
-       eval "$extractedcf"
-      else
-       func_error "ignoring unknown tag $tagname"
-      fi
-      ;;
-  esac
+        if $GREP "$re_begincf" "$progpath" >/dev/null 2>&1; then
+         taglist="$taglist $tagname"
+
+         # Evaluate the configuration.  Be careful to quote the path
+         # and the sed script, to avoid splitting on whitespace, but
+         # also don't use non-portable quotes within backquotes within
+         # quotes we have to do it in 2 steps:
+         extractedcf=`$SED -n -e "$sed_extractcf" < "$progpath"`
+         eval "$extractedcf"
+        else
+         func_error "ignoring unknown tag $tagname"
+        fi
+        ;;
+    esac
 }
 
+
 # func_check_version_match
+# ------------------------
 # Ensure that we are using m4 macros, and libtool script from the same
 # release of libtool.
 func_check_version_match ()
 {
-  if test "$package_revision" != "$macro_revision"; then
-    if test "$VERSION" != "$macro_version"; then
-      if test -z "$macro_version"; then
-        cat >&2 <<_LT_EOF
+    if test "$package_revision" != "$macro_revision"; then
+      if test "$VERSION" != "$macro_version"; then
+        if test -z "$macro_version"; then
+          cat >&2 <<_LT_EOF
 $progname: Version mismatch error.  This is $PACKAGE $VERSION, but the
 $progname: definition of this LT_INIT comes from an older release.
 $progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION
 $progname: and run autoconf again.
 _LT_EOF
-      else
-        cat >&2 <<_LT_EOF
+        else
+          cat >&2 <<_LT_EOF
 $progname: Version mismatch error.  This is $PACKAGE $VERSION, but the
 $progname: definition of this LT_INIT comes from $PACKAGE $macro_version.
 $progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION
 $progname: and run autoconf again.
 _LT_EOF
-      fi
-    else
-      cat >&2 <<_LT_EOF
+        fi
+      else
+        cat >&2 <<_LT_EOF
 $progname: Version mismatch error.  This is $PACKAGE $VERSION, revision $package_revision,
 $progname: but the definition of this LT_INIT comes from revision $macro_revision.
 $progname: You should recreate aclocal.m4 with macros from revision $package_revision
 $progname: of $PACKAGE $VERSION and run autoconf again.
 _LT_EOF
-    fi
+      fi
 
-    exit $EXIT_MISMATCH
-  fi
+      exit $EXIT_MISMATCH
+    fi
 }
 
 
-# Shorthand for --mode=foo, only valid as the first argument
-case $1 in
-clean|clea|cle|cl)
-  shift; set dummy --mode clean ${1+"$@"}; shift
-  ;;
-compile|compil|compi|comp|com|co|c)
-  shift; set dummy --mode compile ${1+"$@"}; shift
-  ;;
-execute|execut|execu|exec|exe|ex|e)
-  shift; set dummy --mode execute ${1+"$@"}; shift
-  ;;
-finish|finis|fini|fin|fi|f)
-  shift; set dummy --mode finish ${1+"$@"}; shift
-  ;;
-install|instal|insta|inst|ins|in|i)
-  shift; set dummy --mode install ${1+"$@"}; shift
-  ;;
-link|lin|li|l)
-  shift; set dummy --mode link ${1+"$@"}; shift
-  ;;
-uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u)
-  shift; set dummy --mode uninstall ${1+"$@"}; shift
-  ;;
-esac
+# libtool_options_prep [ARG]...
+# -----------------------------
+# Preparation for options parsed by libtool.
+libtool_options_prep ()
+{
+    $debug_mode
 
+    # Option defaults:
+    opt_config=false
+    opt_dlopen=
+    opt_dry_run=false
+    opt_help=false
+    opt_mode=
+    opt_preserve_dup_deps=false
+    opt_quiet=false
 
+    nonopt=
+    preserve_args=
 
-# Option defaults:
-opt_debug=:
-opt_dry_run=false
-opt_config=false
-opt_preserve_dup_deps=false
-opt_features=false
-opt_finish=false
-opt_help=false
-opt_help_all=false
-opt_silent=:
-opt_warning=:
-opt_verbose=:
-opt_silent=false
-opt_verbose=false
+    # Shorthand for --mode=foo, only valid as the first argument
+    case $1 in
+    clean|clea|cle|cl)
+      shift; set dummy --mode clean ${1+"$@"}; shift
+      ;;
+    compile|compil|compi|comp|com|co|c)
+      shift; set dummy --mode compile ${1+"$@"}; shift
+      ;;
+    execute|execut|execu|exec|exe|ex|e)
+      shift; set dummy --mode execute ${1+"$@"}; shift
+      ;;
+    finish|finis|fini|fin|fi|f)
+      shift; set dummy --mode finish ${1+"$@"}; shift
+      ;;
+    install|instal|insta|inst|ins|in|i)
+      shift; set dummy --mode install ${1+"$@"}; shift
+      ;;
+    link|lin|li|l)
+      shift; set dummy --mode link ${1+"$@"}; shift
+      ;;
+    uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u)
+      shift; set dummy --mode uninstall ${1+"$@"}; shift
+      ;;
+    esac
+
+    # Pass back the list of options.
+    func_quote_for_eval ${1+"$@"}
+    libtool_options_prep_result=$func_quote_for_eval_result
+}
+func_add_hook func_options_prep libtool_options_prep
 
 
-# Parse options once, thoroughly.  This comes as soon as possible in the
-# script to make things like `--version' happen as quickly as we can.
+# libtool_parse_options [ARG]...
+# ---------------------------------
+# Provide handling for libtool specific options.
+libtool_parse_options ()
 {
-  # this just eases exit handling
-  while test $# -gt 0; do
-    opt="$1"
-    shift
-    case $opt in
-      --debug|-x)      opt_debug='set -x'
-                       func_echo "enabling shell trace mode"
-                       $opt_debug
-                       ;;
-      --dry-run|--dryrun|-n)
-                       opt_dry_run=:
-                       ;;
-      --config)
-                       opt_config=:
-func_config
-                       ;;
-      --dlopen|-dlopen)
-                       optarg="$1"
-                       opt_dlopen="${opt_dlopen+$opt_dlopen
-}$optarg"
-                       shift
-                       ;;
-      --preserve-dup-deps)
-                       opt_preserve_dup_deps=:
-                       ;;
-      --features)
-                       opt_features=:
-func_features
-                       ;;
-      --finish)
-                       opt_finish=:
-set dummy --mode finish ${1+"$@"}; shift
-                       ;;
-      --help)
-                       opt_help=:
-                       ;;
-      --help-all)
-                       opt_help_all=:
-opt_help=': help-all'
-                       ;;
-      --mode)
-                       test $# = 0 && func_missing_arg $opt && break
-                       optarg="$1"
-                       opt_mode="$optarg"
-case $optarg in
-  # Valid mode arguments:
-  clean|compile|execute|finish|install|link|relink|uninstall) ;;
-
-  # Catch anything else as an error
-  *) func_error "invalid argument for $opt"
-     exit_cmd=exit
-     break
-     ;;
-esac
-                       shift
-                       ;;
-      --no-silent|--no-quiet)
-                       opt_silent=false
-func_append preserve_args " $opt"
-                       ;;
-      --no-warning|--no-warn)
-                       opt_warning=false
-func_append preserve_args " $opt"
-                       ;;
-      --no-verbose)
-                       opt_verbose=false
-func_append preserve_args " $opt"
-                       ;;
-      --silent|--quiet)
-                       opt_silent=:
-func_append preserve_args " $opt"
-        opt_verbose=false
-                       ;;
-      --verbose|-v)
-                       opt_verbose=:
-func_append preserve_args " $opt"
-opt_silent=false
-                       ;;
-      --tag)
-                       test $# = 0 && func_missing_arg $opt && break
-                       optarg="$1"
-                       opt_tag="$optarg"
-func_append preserve_args " $opt $optarg"
-func_enable_tag "$optarg"
-                       shift
-                       ;;
-
-      -\?|-h)          func_usage                              ;;
-      --help)          func_help                               ;;
-      --version)       func_version                            ;;
-
-      # Separate optargs to long options:
-      --*=*)
-                       func_split_long_opt "$opt"
-                       set dummy "$func_split_long_opt_name" "$func_split_long_opt_arg" ${1+"$@"}
-                       shift
-                       ;;
-
-      # Separate non-argument short options:
-      -\?*|-h*|-n*|-v*)
-                       func_split_short_opt "$opt"
-                       set dummy "$func_split_short_opt_name" "-$func_split_short_opt_arg" ${1+"$@"}
-                       shift
-                       ;;
-
-      --)              break                                   ;;
-      -*)              func_fatal_help "unrecognized option \`$opt'" ;;
-      *)               set dummy "$opt" ${1+"$@"};     shift; break  ;;
-    esac
-  done
+    $debug_cmd
 
-  # Validate options:
+    # Perform our own loop to consume as many options as possible in
+    # each iteration.
+    while test $# -gt 0; do
+      _G_opt=$1
+      shift
+      case $_G_opt in
+        --dry-run|--dryrun|-n)
+                        opt_dry_run=:
+                        ;;
+
+        --config)       func_config ;;
+
+        --dlopen|-dlopen)
+                        opt_dlopen="${opt_dlopen+$opt_dlopen
+}$1"
+                        shift
+                        ;;
+
+        --preserve-dup-deps)
+                        opt_preserve_dup_deps=: ;;
+
+        --features)     func_features ;;
+
+        --finish)       set dummy --mode finish ${1+"$@"}; shift ;;
+
+        --help)         opt_help=: ;;
+
+        --help-all)     opt_help=': help-all' ;;
+
+        --mode)         test $# = 0 && func_missing_arg $_G_opt && break
+                        opt_mode=$1
+                        case $1 in
+                          # Valid mode arguments:
+                          clean|compile|execute|finish|install|link|relink|uninstall) ;;
+
+                          # Catch anything else as an error
+                          *) func_error "invalid argument for $_G_opt"
+                             exit_cmd=exit
+                             break
+                             ;;
+                        esac
+                        shift
+                        ;;
+
+        --no-silent|--no-quiet)
+                        opt_quiet=false
+                        func_append preserve_args " $_G_opt"
+                        ;;
+
+        --no-warnings|--no-warning|--no-warn)
+                        opt_warning=false
+                        func_append preserve_args " $_G_opt"
+                        ;;
+
+        --no-verbose)
+                        opt_verbose=false
+                        func_append preserve_args " $_G_opt"
+                        ;;
+
+        --silent|--quiet)
+                        opt_quiet=:
+                        opt_verbose=false
+                        func_append preserve_args " $_G_opt"
+                        ;;
+
+        --tag)          test $# = 0 && func_missing_arg $_G_opt && break
+                        opt_tag=$1
+                        func_append preserve_args " $_G_opt $1"
+                        func_enable_tag "$1"
+                        shift
+                        ;;
+
+        --verbose|-v)   opt_quiet=false
+                        opt_verbose=:
+                        func_append preserve_args " $_G_opt"
+                        ;;
+
+       # An option not handled by this hook function:
+        *)             set dummy "$_G_opt" ${1+"$@"};  shift; break  ;;
+      esac
+    done
 
-  # save first non-option argument
-  if test "$#" -gt 0; then
-    nonopt="$opt"
-    shift
-  fi
 
-  # preserve --debug
-  test "$opt_debug" = : || func_append preserve_args " --debug"
+    # save modified positional parameters for caller
+    func_quote_for_eval ${1+"$@"}
+    libtool_parse_options_result=$func_quote_for_eval_result
+}
+func_add_hook func_parse_options libtool_parse_options
 
-  case $host in
-    *cygwin* | *mingw* | *pw32* | *cegcc*)
-      # don't eliminate duplications in $postdeps and $predeps
-      opt_duplicate_compiler_generated_deps=:
-      ;;
-    *)
-      opt_duplicate_compiler_generated_deps=$opt_preserve_dup_deps
-      ;;
-  esac
 
-  $opt_help || {
-    # Sanity checks first:
-    func_check_version_match
 
-    if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then
-      func_fatal_configuration "not configured to build any kind of library"
+# libtool_validate_options [ARG]...
+# ---------------------------------
+# Perform any sanity checks on option settings and/or unconsumed
+# arguments.
+libtool_validate_options ()
+{
+    # save first non-option argument
+    if test 0 -lt $#; then
+      nonopt=$1
+      shift
     fi
 
-    # Darwin sucks
-    eval std_shrext=\"$shrext_cmds\"
+    # preserve --debug
+    test : = "$debug_cmd" || func_append preserve_args " --debug"
 
-    # Only execute mode is allowed to have -dlopen flags.
-    if test -n "$opt_dlopen" && test "$opt_mode" != execute; then
-      func_error "unrecognized option \`-dlopen'"
-      $ECHO "$help" 1>&2
-      exit $EXIT_FAILURE
-    fi
+    case $host in
+      # Solaris2 added to fix http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16452
+      # see also: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59788
+      *cygwin* | *mingw* | *pw32* | *cegcc* | *solaris2* | *os2*)
+        # don't eliminate duplications in $postdeps and $predeps
+        opt_duplicate_compiler_generated_deps=:
+        ;;
+      *)
+        opt_duplicate_compiler_generated_deps=$opt_preserve_dup_deps
+        ;;
+    esac
 
-    # Change the help message to a mode-specific one.
-    generic_help="$help"
-    help="Try \`$progname --help --mode=$opt_mode' for more information."
-  }
+    $opt_help || {
+      # Sanity checks first:
+      func_check_version_match
+
+      test yes != "$build_libtool_libs" \
+        && test yes != "$build_old_libs" \
+        && func_fatal_configuration "not configured to build any kind of library"
+
+      # Darwin sucks
+      eval std_shrext=\"$shrext_cmds\"
+
+      # Only execute mode is allowed to have -dlopen flags.
+      if test -n "$opt_dlopen" && test execute != "$opt_mode"; then
+        func_error "unrecognized option '-dlopen'"
+        $ECHO "$help" 1>&2
+        exit $EXIT_FAILURE
+      fi
 
+      # Change the help message to a mode-specific one.
+      generic_help=$help
+      help="Try '$progname --help --mode=$opt_mode' for more information."
+    }
 
-  # Bail if the options were screwed
-  $exit_cmd $EXIT_FAILURE
+    # Pass back the unparsed argument list
+    func_quote_for_eval ${1+"$@"}
+    libtool_validate_options_result=$func_quote_for_eval_result
 }
+func_add_hook func_validate_options libtool_validate_options
 
 
+# Process options as early as possible so that --help and --version
+# can return quickly.
+func_options ${1+"$@"}
+eval set dummy "$func_options_result"; shift
+
 
 
 ## ----------- ##
 ##    Main.    ##
 ## ----------- ##
 
+magic='%%%MAGIC variable%%%'
+magic_exe='%%%MAGIC EXE variable%%%'
+
+# Global variables.
+extracted_archives=
+extracted_serial=0
+
+# If this variable is set in any of the actions, the command in it
+# will be execed at the end.  This prevents here-documents from being
+# left over by shells.
+exec_cmd=
+
+
+# A function that is used when there is no print builtin or printf.
+func_fallback_echo ()
+{
+  eval 'cat <<_LTECHO_EOF
+$1
+_LTECHO_EOF'
+}
+
+# func_generated_by_libtool
+# True iff stdin has been generated by Libtool. This function is only
+# a basic sanity check; it will hardly flush out determined imposters.
+func_generated_by_libtool_p ()
+{
+  $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1
+}
+
 # func_lalib_p file
-# True iff FILE is a libtool `.la' library or `.lo' object file.
+# True iff FILE is a libtool '.la' library or '.lo' object file.
 # This function is only a basic sanity check; it will hardly flush out
 # determined imposters.
 func_lalib_p ()
 {
     test -f "$1" &&
-      $SED -e 4q "$1" 2>/dev/null \
-        | $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1
+      $SED -e 4q "$1" 2>/dev/null | func_generated_by_libtool_p
 }
 
 # func_lalib_unsafe_p file
-# True iff FILE is a libtool `.la' library or `.lo' object file.
+# True iff FILE is a libtool '.la' library or '.lo' object file.
 # This function implements the same check as func_lalib_p without
 # resorting to external programs.  To this end, it redirects stdin and
 # closes it afterwards, without saving the original file descriptor.
 # As a safety measure, use it only where a negative result would be
-# fatal anyway.  Works if `file' does not exist.
+# fatal anyway.  Works if 'file' does not exist.
 func_lalib_unsafe_p ()
 {
     lalib_p=no
@@ -1249,13 +2521,13 @@ func_lalib_unsafe_p ()
        for lalib_p_l in 1 2 3 4
        do
            read lalib_p_line
-           case "$lalib_p_line" in
+           case $lalib_p_line in
                \#\ Generated\ by\ *$PACKAGE* ) lalib_p=yes; break;;
            esac
        done
        exec 0<&5 5<&-
     fi
-    test "$lalib_p" = yes
+    test yes = "$lalib_p"
 }
 
 # func_ltwrapper_script_p file
@@ -1264,7 +2536,8 @@ func_lalib_unsafe_p ()
 # determined imposters.
 func_ltwrapper_script_p ()
 {
-    func_lalib_p "$1"
+    test -f "$1" &&
+      $lt_truncate_bin < "$1" 2>/dev/null | func_generated_by_libtool_p
 }
 
 # func_ltwrapper_executable_p file
@@ -1289,7 +2562,7 @@ func_ltwrapper_scriptname ()
 {
     func_dirname_and_basename "$1" "" "."
     func_stripname '' '.exe' "$func_basename_result"
-    func_ltwrapper_scriptname_result="$func_dirname_result/$objdir/${func_stripname_result}_ltshwrapper"
+    func_ltwrapper_scriptname_result=$func_dirname_result/$objdir/${func_stripname_result}_ltshwrapper
 }
 
 # func_ltwrapper_p file
@@ -1308,11 +2581,13 @@ func_ltwrapper_p ()
 # FAIL_CMD may read-access the current command in variable CMD!
 func_execute_cmds ()
 {
-    $opt_debug
+    $debug_cmd
+
     save_ifs=$IFS; IFS='~'
     for cmd in $1; do
-      IFS=$save_ifs
+      IFS=$sp$nl
       eval cmd=\"$cmd\"
+      IFS=$save_ifs
       func_show_eval "$cmd" "${2-:}"
     done
     IFS=$save_ifs
@@ -1324,10 +2599,11 @@ func_execute_cmds ()
 # Note that it is not necessary on cygwin/mingw to append a dot to
 # FILE even if both FILE and FILE.exe exist: automatic-append-.exe
 # behavior happens only for exec(3), not for open(2)!  Also, sourcing
-# `FILE.' does not work on cygwin managed mounts.
+# 'FILE.' does not work on cygwin managed mounts.
 func_source ()
 {
-    $opt_debug
+    $debug_cmd
+
     case $1 in
     */* | *\\*)        . "$1" ;;
     *)         . "./$1" ;;
@@ -1354,10 +2630,10 @@ func_resolve_sysroot ()
 # store the result into func_replace_sysroot_result.
 func_replace_sysroot ()
 {
-  case "$lt_sysroot:$1" in
+  case $lt_sysroot:$1 in
   ?*:"$lt_sysroot"*)
     func_stripname "$lt_sysroot" '' "$1"
-    func_replace_sysroot_result="=$func_stripname_result"
+    func_replace_sysroot_result='='$func_stripname_result
     ;;
   *)
     # Including no sysroot.
@@ -1374,7 +2650,8 @@ func_replace_sysroot ()
 # arg is usually of the form 'gcc ...'
 func_infer_tag ()
 {
-    $opt_debug
+    $debug_cmd
+
     if test -n "$available_tags" && test -z "$tagname"; then
       CC_quoted=
       for arg in $CC; do
@@ -1393,7 +2670,7 @@ func_infer_tag ()
        for z in $available_tags; do
          if $GREP "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /dev/null; then
            # Evaluate the configuration.
-           eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`"
+           eval "`$SED -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`"
            CC_quoted=
            for arg in $CC; do
              # Double-quote args containing other shell metacharacters.
@@ -1418,7 +2695,7 @@ func_infer_tag ()
        # line option must be used.
        if test -z "$tagname"; then
          func_echo "unable to infer tagged configuration"
-         func_fatal_error "specify a tag with \`--tag'"
+         func_fatal_error "specify a tag with '--tag'"
 #      else
 #        func_verbose "using $tagname tagged configuration"
        fi
@@ -1434,15 +2711,15 @@ func_infer_tag ()
 # but don't create it if we're doing a dry run.
 func_write_libtool_object ()
 {
-    write_libobj=${1}
-    if test "$build_libtool_libs" = yes; then
-      write_lobj=\'${2}\'
+    write_libobj=$1
+    if test yes = "$build_libtool_libs"; then
+      write_lobj=\'$2\'
     else
       write_lobj=none
     fi
 
-    if test "$build_old_libs" = yes; then
-      write_oldobj=\'${3}\'
+    if test yes = "$build_old_libs"; then
+      write_oldobj=\'$3\'
     else
       write_oldobj=none
     fi
@@ -1450,7 +2727,7 @@ func_write_libtool_object ()
     $opt_dry_run || {
       cat >${write_libobj}T <<EOF
 # $write_libobj - a libtool object file
-# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
+# Generated by $PROGRAM (GNU $PACKAGE) $VERSION
 #
 # Please DO NOT delete this file!
 # It is necessary for linking the library.
@@ -1462,7 +2739,7 @@ pic_object=$write_lobj
 non_pic_object=$write_oldobj
 
 EOF
-      $MV "${write_libobj}T" "${write_libobj}"
+      $MV "${write_libobj}T" "$write_libobj"
     }
 }
 
@@ -1482,8 +2759,9 @@ EOF
 # be empty on error (or when ARG is empty)
 func_convert_core_file_wine_to_w32 ()
 {
-  $opt_debug
-  func_convert_core_file_wine_to_w32_result="$1"
+  $debug_cmd
+
+  func_convert_core_file_wine_to_w32_result=$1
   if test -n "$1"; then
     # Unfortunately, winepath does not exit with a non-zero error code, so we
     # are forced to check the contents of stdout. On the other hand, if the
@@ -1491,9 +2769,9 @@ func_convert_core_file_wine_to_w32 ()
     # *an error message* to stdout. So we must check for both error code of
     # zero AND non-empty stdout, which explains the odd construction:
     func_convert_core_file_wine_to_w32_tmp=`winepath -w "$1" 2>/dev/null`
-    if test "$?" -eq 0 && test -n "${func_convert_core_file_wine_to_w32_tmp}"; then
+    if test "$?" -eq 0 && test -n "$func_convert_core_file_wine_to_w32_tmp"; then
       func_convert_core_file_wine_to_w32_result=`$ECHO "$func_convert_core_file_wine_to_w32_tmp" |
-        $SED -e "$lt_sed_naive_backslashify"`
+        $SED -e "$sed_naive_backslashify"`
     else
       func_convert_core_file_wine_to_w32_result=
     fi
@@ -1514,18 +2792,19 @@ func_convert_core_file_wine_to_w32 ()
 # are convertible, then the result may be empty.
 func_convert_core_path_wine_to_w32 ()
 {
-  $opt_debug
+  $debug_cmd
+
   # unfortunately, winepath doesn't convert paths, only file names
-  func_convert_core_path_wine_to_w32_result=""
+  func_convert_core_path_wine_to_w32_result=
   if test -n "$1"; then
     oldIFS=$IFS
     IFS=:
     for func_convert_core_path_wine_to_w32_f in $1; do
       IFS=$oldIFS
       func_convert_core_file_wine_to_w32 "$func_convert_core_path_wine_to_w32_f"
-      if test -n "$func_convert_core_file_wine_to_w32_result" ; then
+      if test -n "$func_convert_core_file_wine_to_w32_result"; then
         if test -z "$func_convert_core_path_wine_to_w32_result"; then
-          func_convert_core_path_wine_to_w32_result="$func_convert_core_file_wine_to_w32_result"
+          func_convert_core_path_wine_to_w32_result=$func_convert_core_file_wine_to_w32_result
         else
           func_append func_convert_core_path_wine_to_w32_result ";$func_convert_core_file_wine_to_w32_result"
         fi
@@ -1554,7 +2833,8 @@ func_convert_core_path_wine_to_w32 ()
 # environment variable; do not put it in $PATH.
 func_cygpath ()
 {
-  $opt_debug
+  $debug_cmd
+
   if test -n "$LT_CYGPATH" && test -f "$LT_CYGPATH"; then
     func_cygpath_result=`$LT_CYGPATH "$@" 2>/dev/null`
     if test "$?" -ne 0; then
@@ -1563,7 +2843,7 @@ func_cygpath ()
     fi
   else
     func_cygpath_result=
-    func_error "LT_CYGPATH is empty or specifies non-existent file: \`$LT_CYGPATH'"
+    func_error "LT_CYGPATH is empty or specifies non-existent file: '$LT_CYGPATH'"
   fi
 }
 #end: func_cygpath
@@ -1574,10 +2854,11 @@ func_cygpath ()
 # result in func_convert_core_msys_to_w32_result.
 func_convert_core_msys_to_w32 ()
 {
-  $opt_debug
+  $debug_cmd
+
   # awkward: cmd appends spaces to result
   func_convert_core_msys_to_w32_result=`( cmd //c echo "$1" ) 2>/dev/null |
-    $SED -e 's/[ ]*$//' -e "$lt_sed_naive_backslashify"`
+    $SED -e 's/[ ]*$//' -e "$sed_naive_backslashify"`
 }
 #end: func_convert_core_msys_to_w32
 
@@ -1588,13 +2869,14 @@ func_convert_core_msys_to_w32 ()
 # func_to_host_file_result to ARG1).
 func_convert_file_check ()
 {
-  $opt_debug
-  if test -z "$2" && test -n "$1" ; then
+  $debug_cmd
+
+  if test -z "$2" && test -n "$1"; then
     func_error "Could not determine host file name corresponding to"
-    func_error "  \`$1'"
+    func_error "  '$1'"
     func_error "Continuing, but uninstalled executables may not work."
     # Fallback:
-    func_to_host_file_result="$1"
+    func_to_host_file_result=$1
   fi
 }
 # end func_convert_file_check
@@ -1606,10 +2888,11 @@ func_convert_file_check ()
 # func_to_host_file_result to a simplistic fallback value (see below).
 func_convert_path_check ()
 {
-  $opt_debug
+  $debug_cmd
+
   if test -z "$4" && test -n "$3"; then
     func_error "Could not determine the host path corresponding to"
-    func_error "  \`$3'"
+    func_error "  '$3'"
     func_error "Continuing, but uninstalled executables may not work."
     # Fallback.  This is a deliberately simplistic "conversion" and
     # should not be "improved".  See libtool.info.
@@ -1618,7 +2901,7 @@ func_convert_path_check ()
       func_to_host_path_result=`echo "$3" |
         $SED -e "$lt_replace_pathsep_chars"`
     else
-      func_to_host_path_result="$3"
+      func_to_host_path_result=$3
     fi
   fi
 }
@@ -1630,9 +2913,10 @@ func_convert_path_check ()
 # and appending REPL if ORIG matches BACKPAT.
 func_convert_path_front_back_pathsep ()
 {
-  $opt_debug
+  $debug_cmd
+
   case $4 in
-  $1 ) func_to_host_path_result="$3$func_to_host_path_result"
+  $1 ) func_to_host_path_result=$3$func_to_host_path_result
     ;;
   esac
   case $4 in
@@ -1646,7 +2930,7 @@ func_convert_path_front_back_pathsep ()
 ##################################################
 # $build to $host FILE NAME CONVERSION FUNCTIONS #
 ##################################################
-# invoked via `$to_host_file_cmd ARG'
+# invoked via '$to_host_file_cmd ARG'
 #
 # In each case, ARG is the path to be converted from $build to $host format.
 # Result will be available in $func_to_host_file_result.
@@ -1657,7 +2941,8 @@ func_convert_path_front_back_pathsep ()
 # in func_to_host_file_result.
 func_to_host_file ()
 {
-  $opt_debug
+  $debug_cmd
+
   $to_host_file_cmd "$1"
 }
 # end func_to_host_file
@@ -1669,7 +2954,8 @@ func_to_host_file ()
 # in (the comma separated) LAZY, no conversion takes place.
 func_to_tool_file ()
 {
-  $opt_debug
+  $debug_cmd
+
   case ,$2, in
     *,"$to_tool_file_cmd",*)
       func_to_tool_file_result=$1
@@ -1687,7 +2973,7 @@ func_to_tool_file ()
 # Copy ARG to func_to_host_file_result.
 func_convert_file_noop ()
 {
-  func_to_host_file_result="$1"
+  func_to_host_file_result=$1
 }
 # end func_convert_file_noop
 
@@ -1698,11 +2984,12 @@ func_convert_file_noop ()
 # func_to_host_file_result.
 func_convert_file_msys_to_w32 ()
 {
-  $opt_debug
-  func_to_host_file_result="$1"
+  $debug_cmd
+
+  func_to_host_file_result=$1
   if test -n "$1"; then
     func_convert_core_msys_to_w32 "$1"
-    func_to_host_file_result="$func_convert_core_msys_to_w32_result"
+    func_to_host_file_result=$func_convert_core_msys_to_w32_result
   fi
   func_convert_file_check "$1" "$func_to_host_file_result"
 }
@@ -1714,8 +3001,9 @@ func_convert_file_msys_to_w32 ()
 # func_to_host_file_result.
 func_convert_file_cygwin_to_w32 ()
 {
-  $opt_debug
-  func_to_host_file_result="$1"
+  $debug_cmd
+
+  func_to_host_file_result=$1
   if test -n "$1"; then
     # because $build is cygwin, we call "the" cygpath in $PATH; no need to use
     # LT_CYGPATH in this case.
@@ -1731,11 +3019,12 @@ func_convert_file_cygwin_to_w32 ()
 # and a working winepath. Returns result in func_to_host_file_result.
 func_convert_file_nix_to_w32 ()
 {
-  $opt_debug
-  func_to_host_file_result="$1"
+  $debug_cmd
+
+  func_to_host_file_result=$1
   if test -n "$1"; then
     func_convert_core_file_wine_to_w32 "$1"
-    func_to_host_file_result="$func_convert_core_file_wine_to_w32_result"
+    func_to_host_file_result=$func_convert_core_file_wine_to_w32_result
   fi
   func_convert_file_check "$1" "$func_to_host_file_result"
 }
@@ -1747,12 +3036,13 @@ func_convert_file_nix_to_w32 ()
 # Returns result in func_to_host_file_result.
 func_convert_file_msys_to_cygwin ()
 {
-  $opt_debug
-  func_to_host_file_result="$1"
+  $debug_cmd
+
+  func_to_host_file_result=$1
   if test -n "$1"; then
     func_convert_core_msys_to_w32 "$1"
     func_cygpath -u "$func_convert_core_msys_to_w32_result"
-    func_to_host_file_result="$func_cygpath_result"
+    func_to_host_file_result=$func_cygpath_result
   fi
   func_convert_file_check "$1" "$func_to_host_file_result"
 }
@@ -1765,13 +3055,14 @@ func_convert_file_msys_to_cygwin ()
 # in func_to_host_file_result.
 func_convert_file_nix_to_cygwin ()
 {
-  $opt_debug
-  func_to_host_file_result="$1"
+  $debug_cmd
+
+  func_to_host_file_result=$1
   if test -n "$1"; then
     # convert from *nix to w32, then use cygpath to convert from w32 to cygwin.
     func_convert_core_file_wine_to_w32 "$1"
     func_cygpath -u "$func_convert_core_file_wine_to_w32_result"
-    func_to_host_file_result="$func_cygpath_result"
+    func_to_host_file_result=$func_cygpath_result
   fi
   func_convert_file_check "$1" "$func_to_host_file_result"
 }
@@ -1781,7 +3072,7 @@ func_convert_file_nix_to_cygwin ()
 #############################################
 # $build to $host PATH CONVERSION FUNCTIONS #
 #############################################
-# invoked via `$to_host_path_cmd ARG'
+# invoked via '$to_host_path_cmd ARG'
 #
 # In each case, ARG is the path to be converted from $build to $host format.
 # The result will be available in $func_to_host_path_result.
@@ -1805,10 +3096,11 @@ func_convert_file_nix_to_cygwin ()
 to_host_path_cmd=
 func_init_to_host_path_cmd ()
 {
-  $opt_debug
+  $debug_cmd
+
   if test -z "$to_host_path_cmd"; then
     func_stripname 'func_convert_file_' '' "$to_host_file_cmd"
-    to_host_path_cmd="func_convert_path_${func_stripname_result}"
+    to_host_path_cmd=func_convert_path_$func_stripname_result
   fi
 }
 
@@ -1818,7 +3110,8 @@ func_init_to_host_path_cmd ()
 # in func_to_host_path_result.
 func_to_host_path ()
 {
-  $opt_debug
+  $debug_cmd
+
   func_init_to_host_path_cmd
   $to_host_path_cmd "$1"
 }
@@ -1829,7 +3122,7 @@ func_to_host_path ()
 # Copy ARG to func_to_host_path_result.
 func_convert_path_noop ()
 {
-  func_to_host_path_result="$1"
+  func_to_host_path_result=$1
 }
 # end func_convert_path_noop
 
@@ -1840,8 +3133,9 @@ func_convert_path_noop ()
 # func_to_host_path_result.
 func_convert_path_msys_to_w32 ()
 {
-  $opt_debug
-  func_to_host_path_result="$1"
+  $debug_cmd
+
+  func_to_host_path_result=$1
   if test -n "$1"; then
     # Remove leading and trailing path separator characters from ARG.  MSYS
     # behavior is inconsistent here; cygpath turns them into '.;' and ';.';
@@ -1849,7 +3143,7 @@ func_convert_path_msys_to_w32 ()
     func_stripname : : "$1"
     func_to_host_path_tmp1=$func_stripname_result
     func_convert_core_msys_to_w32 "$func_to_host_path_tmp1"
-    func_to_host_path_result="$func_convert_core_msys_to_w32_result"
+    func_to_host_path_result=$func_convert_core_msys_to_w32_result
     func_convert_path_check : ";" \
       "$func_to_host_path_tmp1" "$func_to_host_path_result"
     func_convert_path_front_back_pathsep ":*" "*:" ";" "$1"
@@ -1863,8 +3157,9 @@ func_convert_path_msys_to_w32 ()
 # func_to_host_file_result.
 func_convert_path_cygwin_to_w32 ()
 {
-  $opt_debug
-  func_to_host_path_result="$1"
+  $debug_cmd
+
+  func_to_host_path_result=$1
   if test -n "$1"; then
     # See func_convert_path_msys_to_w32:
     func_stripname : : "$1"
@@ -1883,14 +3178,15 @@ func_convert_path_cygwin_to_w32 ()
 # a working winepath.  Returns result in func_to_host_file_result.
 func_convert_path_nix_to_w32 ()
 {
-  $opt_debug
-  func_to_host_path_result="$1"
+  $debug_cmd
+
+  func_to_host_path_result=$1
   if test -n "$1"; then
     # See func_convert_path_msys_to_w32:
     func_stripname : : "$1"
     func_to_host_path_tmp1=$func_stripname_result
     func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1"
-    func_to_host_path_result="$func_convert_core_path_wine_to_w32_result"
+    func_to_host_path_result=$func_convert_core_path_wine_to_w32_result
     func_convert_path_check : ";" \
       "$func_to_host_path_tmp1" "$func_to_host_path_result"
     func_convert_path_front_back_pathsep ":*" "*:" ";" "$1"
@@ -1904,15 +3200,16 @@ func_convert_path_nix_to_w32 ()
 # Returns result in func_to_host_file_result.
 func_convert_path_msys_to_cygwin ()
 {
-  $opt_debug
-  func_to_host_path_result="$1"
+  $debug_cmd
+
+  func_to_host_path_result=$1
   if test -n "$1"; then
     # See func_convert_path_msys_to_w32:
     func_stripname : : "$1"
     func_to_host_path_tmp1=$func_stripname_result
     func_convert_core_msys_to_w32 "$func_to_host_path_tmp1"
     func_cygpath -u -p "$func_convert_core_msys_to_w32_result"
-    func_to_host_path_result="$func_cygpath_result"
+    func_to_host_path_result=$func_cygpath_result
     func_convert_path_check : : \
       "$func_to_host_path_tmp1" "$func_to_host_path_result"
     func_convert_path_front_back_pathsep ":*" "*:" : "$1"
@@ -1927,8 +3224,9 @@ func_convert_path_msys_to_cygwin ()
 # func_to_host_file_result.
 func_convert_path_nix_to_cygwin ()
 {
-  $opt_debug
-  func_to_host_path_result="$1"
+  $debug_cmd
+
+  func_to_host_path_result=$1
   if test -n "$1"; then
     # Remove leading and trailing path separator characters from
     # ARG. msys behavior is inconsistent here, cygpath turns them
@@ -1937,7 +3235,7 @@ func_convert_path_nix_to_cygwin ()
     func_to_host_path_tmp1=$func_stripname_result
     func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1"
     func_cygpath -u -p "$func_convert_core_path_wine_to_w32_result"
-    func_to_host_path_result="$func_cygpath_result"
+    func_to_host_path_result=$func_cygpath_result
     func_convert_path_check : : \
       "$func_to_host_path_tmp1" "$func_to_host_path_result"
     func_convert_path_front_back_pathsep ":*" "*:" : "$1"
@@ -1946,13 +3244,31 @@ func_convert_path_nix_to_cygwin ()
 # end func_convert_path_nix_to_cygwin
 
 
+# func_dll_def_p FILE
+# True iff FILE is a Windows DLL '.def' file.
+# Keep in sync with _LT_DLL_DEF_P in libtool.m4
+func_dll_def_p ()
+{
+  $debug_cmd
+
+  func_dll_def_p_tmp=`$SED -n \
+    -e 's/^[    ]*//' \
+    -e '/^\(;.*\)*$/d' \
+    -e 's/^\(EXPORTS\|LIBRARY\)\([      ].*\)*$/DEF/p' \
+    -e q \
+    "$1"`
+  test DEF = "$func_dll_def_p_tmp"
+}
+
+
 # func_mode_compile arg...
 func_mode_compile ()
 {
-    $opt_debug
+    $debug_cmd
+
     # Get the compilation command and the source file.
     base_compile=
-    srcfile="$nonopt"  #  always keep a non-empty value in "srcfile"
+    srcfile=$nonopt  #  always keep a non-empty value in "srcfile"
     suppress_opt=yes
     suppress_output=
     arg_mode=normal
@@ -1965,12 +3281,12 @@ func_mode_compile ()
       case $arg_mode in
       arg  )
        # do not "continue".  Instead, add this to base_compile
-       lastarg="$arg"
+       lastarg=$arg
        arg_mode=normal
        ;;
 
       target )
-       libobj="$arg"
+       libobj=$arg
        arg_mode=normal
        continue
        ;;
@@ -1980,7 +3296,7 @@ func_mode_compile ()
        case $arg in
        -o)
          test -n "$libobj" && \
-           func_fatal_error "you cannot specify \`-o' more than once"
+           func_fatal_error "you cannot specify '-o' more than once"
          arg_mode=target
          continue
          ;;
@@ -2009,12 +3325,12 @@ func_mode_compile ()
          func_stripname '-Wc,' '' "$arg"
          args=$func_stripname_result
          lastarg=
-         save_ifs="$IFS"; IFS=','
+         save_ifs=$IFS; IFS=,
          for arg in $args; do
-           IFS="$save_ifs"
+           IFS=$save_ifs
            func_append_quoted lastarg "$arg"
          done
-         IFS="$save_ifs"
+         IFS=$save_ifs
          func_stripname ' ' '' "$lastarg"
          lastarg=$func_stripname_result
 
@@ -2027,8 +3343,8 @@ func_mode_compile ()
          # Accept the current argument as the source file.
          # The previous "srcfile" becomes the current argument.
          #
-         lastarg="$srcfile"
-         srcfile="$arg"
+         lastarg=$srcfile
+         srcfile=$arg
          ;;
        esac  #  case $arg
        ;;
@@ -2043,13 +3359,13 @@ func_mode_compile ()
       func_fatal_error "you must specify an argument for -Xcompile"
       ;;
     target)
-      func_fatal_error "you must specify a target with \`-o'"
+      func_fatal_error "you must specify a target with '-o'"
       ;;
     *)
       # Get the name of the library object.
       test -z "$libobj" && {
        func_basename "$srcfile"
-       libobj="$func_basename_result"
+       libobj=$func_basename_result
       }
       ;;
     esac
@@ -2069,7 +3385,7 @@ func_mode_compile ()
     case $libobj in
     *.lo) func_lo2o "$libobj"; obj=$func_lo2o_result ;;
     *)
-      func_fatal_error "cannot determine name of library object from \`$libobj'"
+      func_fatal_error "cannot determine name of library object from '$libobj'"
       ;;
     esac
 
@@ -2078,8 +3394,8 @@ func_mode_compile ()
     for arg in $later; do
       case $arg in
       -shared)
-       test "$build_libtool_libs" != yes && \
-         func_fatal_configuration "can not build a shared library"
+       test yes = "$build_libtool_libs" \
+         || func_fatal_configuration "cannot build a shared library"
        build_old_libs=no
        continue
        ;;
@@ -2105,17 +3421,17 @@ func_mode_compile ()
     func_quote_for_eval "$libobj"
     test "X$libobj" != "X$func_quote_for_eval_result" \
       && $ECHO "X$libobj" | $GREP '[]~#^*{};<>?"'"'"'   &()|`$[]' \
-      && func_warning "libobj name \`$libobj' may not contain shell special characters."
+      && func_warning "libobj name '$libobj' may not contain shell special characters."
     func_dirname_and_basename "$obj" "/" ""
-    objname="$func_basename_result"
-    xdir="$func_dirname_result"
-    lobj=${xdir}$objdir/$objname
+    objname=$func_basename_result
+    xdir=$func_dirname_result
+    lobj=$xdir$objdir/$objname
 
     test -z "$base_compile" && \
       func_fatal_help "you must specify a compilation command"
 
     # Delete any leftover library objects.
-    if test "$build_old_libs" = yes; then
+    if test yes = "$build_old_libs"; then
       removelist="$obj $lobj $libobj ${libobj}T"
     else
       removelist="$lobj $libobj ${libobj}T"
@@ -2127,16 +3443,16 @@ func_mode_compile ()
       pic_mode=default
       ;;
     esac
-    if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then
+    if test no = "$pic_mode" && test pass_all != "$deplibs_check_method"; then
       # non-PIC code in shared libraries is not supported
       pic_mode=default
     fi
 
     # Calculate the filename of the output object if compiler does
     # not support -o with -c
-    if test "$compiler_c_o" = no; then
-      output_obj=`$ECHO "$srcfile" | $SED 's%^.*/%%; s%\.[^.]*$%%'`.${objext}
-      lockfile="$output_obj.lock"
+    if test no = "$compiler_c_o"; then
+      output_obj=`$ECHO "$srcfile" | $SED 's%^.*/%%; s%\.[^.]*$%%'`.$objext
+      lockfile=$output_obj.lock
     else
       output_obj=
       need_locks=no
@@ -2145,12 +3461,12 @@ func_mode_compile ()
 
     # Lock this critical section if it is needed
     # We use this script file to make the link, it avoids creating a new file
-    if test "$need_locks" = yes; then
+    if test yes = "$need_locks"; then
       until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do
        func_echo "Waiting for $lockfile to be removed"
        sleep 2
       done
-    elif test "$need_locks" = warn; then
+    elif test warn = "$need_locks"; then
       if test -f "$lockfile"; then
        $ECHO "\
 *** ERROR, $lockfile exists and contains:
@@ -2158,7 +3474,7 @@ func_mode_compile ()
 
 This indicates that another process is trying to use the same
 temporary object file, and libtool could not work around it because
-your compiler does not support \`-c' and \`-o' together.  If you
+your compiler does not support '-c' and '-o' together.  If you
 repeat this compilation, it may succeed, by chance, but you had better
 avoid parallel builds (make -j) in this platform, or get a better
 compiler."
@@ -2180,11 +3496,11 @@ compiler."
     qsrcfile=$func_quote_for_eval_result
 
     # Only build a PIC object if we are building libtool libraries.
-    if test "$build_libtool_libs" = yes; then
+    if test yes = "$build_libtool_libs"; then
       # Without this assignment, base_compile gets emptied.
       fbsd_hideous_sh_bug=$base_compile
 
-      if test "$pic_mode" != no; then
+      if test no != "$pic_mode"; then
        command="$base_compile $qsrcfile $pic_flag"
       else
        # Don't build PIC code
@@ -2201,7 +3517,7 @@ compiler."
       func_show_eval_locale "$command" \
           'test -n "$output_obj" && $RM $removelist; exit $EXIT_FAILURE'
 
-      if test "$need_locks" = warn &&
+      if test warn = "$need_locks" &&
         test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then
        $ECHO "\
 *** ERROR, $lockfile contains:
@@ -2212,7 +3528,7 @@ $srcfile
 
 This indicates that another process is trying to use the same
 temporary object file, and libtool could not work around it because
-your compiler does not support \`-c' and \`-o' together.  If you
+your compiler does not support '-c' and '-o' together.  If you
 repeat this compilation, it may succeed, by chance, but you had better
 avoid parallel builds (make -j) in this platform, or get a better
 compiler."
@@ -2228,20 +3544,20 @@ compiler."
       fi
 
       # Allow error messages only from the first compilation.
-      if test "$suppress_opt" = yes; then
+      if test yes = "$suppress_opt"; then
        suppress_output=' >/dev/null 2>&1'
       fi
     fi
 
     # Only build a position-dependent object if we build old libraries.
-    if test "$build_old_libs" = yes; then
-      if test "$pic_mode" != yes; then
+    if test yes = "$build_old_libs"; then
+      if test yes != "$pic_mode"; then
        # Don't build PIC code
        command="$base_compile $qsrcfile$pie_flag"
       else
        command="$base_compile $qsrcfile $pic_flag"
       fi
-      if test "$compiler_c_o" = yes; then
+      if test yes = "$compiler_c_o"; then
        func_append command " -o $obj"
       fi
 
@@ -2250,7 +3566,7 @@ compiler."
       func_show_eval_locale "$command" \
         '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE'
 
-      if test "$need_locks" = warn &&
+      if test warn = "$need_locks" &&
         test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then
        $ECHO "\
 *** ERROR, $lockfile contains:
@@ -2261,7 +3577,7 @@ $srcfile
 
 This indicates that another process is trying to use the same
 temporary object file, and libtool could not work around it because
-your compiler does not support \`-c' and \`-o' together.  If you
+your compiler does not support '-c' and '-o' together.  If you
 repeat this compilation, it may succeed, by chance, but you had better
 avoid parallel builds (make -j) in this platform, or get a better
 compiler."
@@ -2281,7 +3597,7 @@ compiler."
       func_write_libtool_object "$libobj" "$objdir/$objname" "$objname"
 
       # Unlock the critical section if it was locked
-      if test "$need_locks" != no; then
+      if test no != "$need_locks"; then
        removelist=$lockfile
         $RM "$lockfile"
       fi
@@ -2291,7 +3607,7 @@ compiler."
 }
 
 $opt_help || {
-  test "$opt_mode" = compile && func_mode_compile ${1+"$@"}
+  test compile = "$opt_mode" && func_mode_compile ${1+"$@"}
 }
 
 func_mode_help ()
@@ -2311,7 +3627,7 @@ func_mode_help ()
 Remove files from the build directory.
 
 RM is the name of the program to use to delete files associated with each FILE
-(typically \`/bin/rm').  RM-OPTIONS are options (such as \`-f') to be passed
+(typically '/bin/rm').  RM-OPTIONS are options (such as '-f') to be passed
 to RM.
 
 If FILE is a libtool library, object or program, all the files associated
@@ -2330,16 +3646,16 @@ This mode accepts the following additional options:
   -no-suppress      do not suppress compiler output for multiple passes
   -prefer-pic       try to build PIC objects only
   -prefer-non-pic   try to build non-PIC objects only
-  -shared           do not build a \`.o' file suitable for static linking
-  -static           only build a \`.o' file suitable for static linking
+  -shared           do not build a '.o' file suitable for static linking
+  -static           only build a '.o' file suitable for static linking
   -Wc,FLAG          pass FLAG directly to the compiler
 
-COMPILE-COMMAND is a command to be used in creating a \`standard' object file
+COMPILE-COMMAND is a command to be used in creating a 'standard' object file
 from the given SOURCEFILE.
 
 The output file name is determined by removing the directory component from
-SOURCEFILE, then substituting the C source code suffix \`.c' with the
-library object suffix, \`.lo'."
+SOURCEFILE, then substituting the C source code suffix '.c' with the
+library object suffix, '.lo'."
         ;;
 
       execute)
@@ -2352,7 +3668,7 @@ This mode accepts the following additional options:
 
   -dlopen FILE      add the directory containing FILE to the library path
 
-This mode sets the library path environment variable according to \`-dlopen'
+This mode sets the library path environment variable according to '-dlopen'
 flags.
 
 If any of the ARGS are libtool executable wrappers, then they are translated
@@ -2371,7 +3687,7 @@ Complete the installation of libtool libraries.
 Each LIBDIR is a directory that contains libtool libraries.
 
 The commands that this mode executes may require superuser privileges.  Use
-the \`--dry-run' option if you just want to see what would be executed."
+the '--dry-run' option if you just want to see what would be executed."
         ;;
 
       install)
@@ -2381,7 +3697,7 @@ the \`--dry-run' option if you just want to see what would be executed."
 Install executables or libraries.
 
 INSTALL-COMMAND is the installation command.  The first component should be
-either the \`install' or \`cp' program.
+either the 'install' or 'cp' program.
 
 The following components of INSTALL-COMMAND are treated specially:
 
@@ -2407,7 +3723,7 @@ The following components of LINK-COMMAND are treated specially:
   -avoid-version    do not add a version suffix if possible
   -bindir BINDIR    specify path to binaries directory (for systems where
                     libraries must be found in the PATH setting at runtime)
-  -dlopen FILE      \`-dlpreopen' FILE if it cannot be dlopened at runtime
+  -dlopen FILE      '-dlpreopen' FILE if it cannot be dlopened at runtime
   -dlpreopen FILE   link in FILE and add its symbols to lt_preloaded_symbols
   -export-dynamic   allow symbols from OUTPUT-FILE to be resolved with dlsym(3)
   -export-symbols SYMFILE
@@ -2421,7 +3737,8 @@ The following components of LINK-COMMAND are treated specially:
   -no-install       link a not-installable executable
   -no-undefined     declare that a library does not refer to external symbols
   -o OUTPUT-FILE    create OUTPUT-FILE from the specified objects
-  -objectlist FILE  Use a list of object files found in FILE to specify objects
+  -objectlist FILE  use a list of object files found in FILE to specify objects
+  -os2dllname NAME  force a short DLL name on OS/2 (no effect on other OSes)
   -precious-files-regex REGEX
                     don't remove output files matching REGEX
   -release RELEASE  specify package release information
@@ -2441,20 +3758,20 @@ The following components of LINK-COMMAND are treated specially:
   -Xlinker FLAG     pass linker-specific FLAG directly to the linker
   -XCClinker FLAG   pass link-specific FLAG to the compiler driver (CC)
 
-All other options (arguments beginning with \`-') are ignored.
+All other options (arguments beginning with '-') are ignored.
 
-Every other argument is treated as a filename.  Files ending in \`.la' are
+Every other argument is treated as a filename.  Files ending in '.la' are
 treated as uninstalled libtool libraries, other files are standard or library
 object files.
 
-If the OUTPUT-FILE ends in \`.la', then a libtool library is created,
-only library objects (\`.lo' files) may be specified, and \`-rpath' is
+If the OUTPUT-FILE ends in '.la', then a libtool library is created,
+only library objects ('.lo' files) may be specified, and '-rpath' is
 required, except when creating a convenience library.
 
-If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created
-using \`ar' and \`ranlib', or on Windows using \`lib'.
+If OUTPUT-FILE ends in '.a' or '.lib', then a standard library is created
+using 'ar' and 'ranlib', or on Windows using 'lib'.
 
-If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file
+If OUTPUT-FILE ends in '.lo' or '.$objext', then a reloadable object file
 is created, otherwise an executable program is created."
         ;;
 
@@ -2465,7 +3782,7 @@ is created, otherwise an executable program is created."
 Remove libraries from an installation directory.
 
 RM is the name of the program to use to delete files associated with each FILE
-(typically \`/bin/rm').  RM-OPTIONS are options (such as \`-f') to be passed
+(typically '/bin/rm').  RM-OPTIONS are options (such as '-f') to be passed
 to RM.
 
 If FILE is a libtool library, all the files associated with it are deleted.
@@ -2473,17 +3790,17 @@ Otherwise, only FILE itself is deleted using RM."
         ;;
 
       *)
-        func_fatal_help "invalid operation mode \`$opt_mode'"
+        func_fatal_help "invalid operation mode '$opt_mode'"
         ;;
     esac
 
     echo
-    $ECHO "Try \`$progname --help' for more information about other modes."
+    $ECHO "Try '$progname --help' for more information about other modes."
 }
 
 # Now that we've collected a possible --mode arg, show help if necessary
 if $opt_help; then
-  if test "$opt_help" = :; then
+  if test : = "$opt_help"; then
     func_mode_help
   else
     {
@@ -2491,7 +3808,7 @@ if $opt_help; then
       for opt_mode in compile link execute install finish uninstall clean; do
        func_mode_help
       done
-    } | sed -n '1p; 2,$s/^Usage:/  or: /p'
+    } | $SED -n '1p; 2,$s/^Usage:/  or: /p'
     {
       func_help noexit
       for opt_mode in compile link execute install finish uninstall clean; do
@@ -2499,7 +3816,7 @@ if $opt_help; then
        func_mode_help
       done
     } |
-    sed '1d
+    $SED '1d
       /^When reporting/,/^Report/{
        H
        d
@@ -2516,16 +3833,17 @@ fi
 # func_mode_execute arg...
 func_mode_execute ()
 {
-    $opt_debug
+    $debug_cmd
+
     # The first argument is the command name.
-    cmd="$nonopt"
+    cmd=$nonopt
     test -z "$cmd" && \
       func_fatal_help "you must specify a COMMAND"
 
     # Handle -dlopen flags immediately.
     for file in $opt_dlopen; do
       test -f "$file" \
-       || func_fatal_help "\`$file' is not a file"
+       || func_fatal_help "'$file' is not a file"
 
       dir=
       case $file in
@@ -2535,7 +3853,7 @@ func_mode_execute ()
 
        # Check to see that this really is a libtool archive.
        func_lalib_unsafe_p "$file" \
-         || func_fatal_help "\`$lib' is not a valid libtool archive"
+         || func_fatal_help "'$lib' is not a valid libtool archive"
 
        # Read the libtool library.
        dlname=
@@ -2546,18 +3864,18 @@ func_mode_execute ()
        if test -z "$dlname"; then
          # Warn if it was a shared library.
          test -n "$library_names" && \
-           func_warning "\`$file' was not linked with \`-export-dynamic'"
+           func_warning "'$file' was not linked with '-export-dynamic'"
          continue
        fi
 
        func_dirname "$file" "" "."
-       dir="$func_dirname_result"
+       dir=$func_dirname_result
 
        if test -f "$dir/$objdir/$dlname"; then
          func_append dir "/$objdir"
        else
          if test ! -f "$dir/$dlname"; then
-           func_fatal_error "cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'"
+           func_fatal_error "cannot find '$dlname' in '$dir' or '$dir/$objdir'"
          fi
        fi
        ;;
@@ -2565,18 +3883,18 @@ func_mode_execute ()
       *.lo)
        # Just add the directory containing the .lo file.
        func_dirname "$file" "" "."
-       dir="$func_dirname_result"
+       dir=$func_dirname_result
        ;;
 
       *)
-       func_warning "\`-dlopen' is ignored for non-libtool libraries and objects"
+       func_warning "'-dlopen' is ignored for non-libtool libraries and objects"
        continue
        ;;
       esac
 
       # Get the absolute pathname.
       absdir=`cd "$dir" && pwd`
-      test -n "$absdir" && dir="$absdir"
+      test -n "$absdir" && dir=$absdir
 
       # Now add the directory to shlibpath_var.
       if eval "test -z \"\$$shlibpath_var\""; then
@@ -2588,7 +3906,7 @@ func_mode_execute ()
 
     # This variable tells wrapper scripts just to set shlibpath_var
     # rather than running their programs.
-    libtool_execute_magic="$magic"
+    libtool_execute_magic=$magic
 
     # Check if any of the arguments is a wrapper script.
     args=
@@ -2601,12 +3919,12 @@ func_mode_execute ()
        if func_ltwrapper_script_p "$file"; then
          func_source "$file"
          # Transform arg to wrapped name.
-         file="$progdir/$program"
+         file=$progdir/$program
        elif func_ltwrapper_executable_p "$file"; then
          func_ltwrapper_scriptname "$file"
          func_source "$func_ltwrapper_scriptname_result"
          # Transform arg to wrapped name.
-         file="$progdir/$program"
+         file=$progdir/$program
        fi
        ;;
       esac
@@ -2614,7 +3932,15 @@ func_mode_execute ()
       func_append_quoted args "$file"
     done
 
-    if test "X$opt_dry_run" = Xfalse; then
+    if $opt_dry_run; then
+      # Display what would be done.
+      if test -n "$shlibpath_var"; then
+       eval "\$ECHO \"\$shlibpath_var=\$$shlibpath_var\""
+       echo "export $shlibpath_var"
+      fi
+      $ECHO "$cmd$args"
+      exit $EXIT_SUCCESS
+    else
       if test -n "$shlibpath_var"; then
        # Export the shlibpath_var.
        eval "export $shlibpath_var"
@@ -2631,25 +3957,18 @@ func_mode_execute ()
       done
 
       # Now prepare to actually exec the command.
-      exec_cmd="\$cmd$args"
-    else
-      # Display what would be done.
-      if test -n "$shlibpath_var"; then
-       eval "\$ECHO \"\$shlibpath_var=\$$shlibpath_var\""
-       echo "export $shlibpath_var"
-      fi
-      $ECHO "$cmd$args"
-      exit $EXIT_SUCCESS
+      exec_cmd=\$cmd$args
     fi
 }
 
-test "$opt_mode" = execute && func_mode_execute ${1+"$@"}
+test execute = "$opt_mode" && func_mode_execute ${1+"$@"}
 
 
 # func_mode_finish arg...
 func_mode_finish ()
 {
-    $opt_debug
+    $debug_cmd
+
     libs=
     libdirs=
     admincmds=
@@ -2663,11 +3982,11 @@ func_mode_finish ()
        if func_lalib_unsafe_p "$opt"; then
          func_append libs " $opt"
        else
-         func_warning "\`$opt' is not a valid libtool archive"
+         func_warning "'$opt' is not a valid libtool archive"
        fi
 
       else
-       func_fatal_error "invalid argument \`$opt'"
+       func_fatal_error "invalid argument '$opt'"
       fi
     done
 
@@ -2682,12 +4001,12 @@ func_mode_finish ()
       # Remove sysroot references
       if $opt_dry_run; then
         for lib in $libs; do
-          echo "removing references to $lt_sysroot and \`=' prefixes from $lib"
+          echo "removing references to $lt_sysroot and '=' prefixes from $lib"
         done
       else
         tmpdir=`func_mktempdir`
         for lib in $libs; do
-         sed -e "${sysroot_cmd} s/\([ ']-[LR]\)=/\1/g; s/\([ ']\)=/\1/g" $lib \
+         $SED -e "$sysroot_cmd s/\([ ']-[LR]\)=/\1/g; s/\([ ']\)=/\1/g" $lib \
            > $tmpdir/tmp-la
          mv -f $tmpdir/tmp-la $lib
        done
@@ -2712,7 +4031,7 @@ func_mode_finish ()
     fi
 
     # Exit here if they wanted silent mode.
-    $opt_silent && exit $EXIT_SUCCESS
+    $opt_quiet && exit $EXIT_SUCCESS
 
     if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then
       echo "----------------------------------------------------------------------"
@@ -2723,27 +4042,27 @@ func_mode_finish ()
       echo
       echo "If you ever happen to want to link against installed libraries"
       echo "in a given directory, LIBDIR, you must either use libtool, and"
-      echo "specify the full pathname of the library, or use the \`-LLIBDIR'"
+      echo "specify the full pathname of the library, or use the '-LLIBDIR'"
       echo "flag during linking and do at least one of the following:"
       if test -n "$shlibpath_var"; then
-       echo "   - add LIBDIR to the \`$shlibpath_var' environment variable"
+       echo "   - add LIBDIR to the '$shlibpath_var' environment variable"
        echo "     during execution"
       fi
       if test -n "$runpath_var"; then
-       echo "   - add LIBDIR to the \`$runpath_var' environment variable"
+       echo "   - add LIBDIR to the '$runpath_var' environment variable"
        echo "     during linking"
       fi
       if test -n "$hardcode_libdir_flag_spec"; then
        libdir=LIBDIR
        eval flag=\"$hardcode_libdir_flag_spec\"
 
-       $ECHO "   - use the \`$flag' linker flag"
+       $ECHO "   - use the '$flag' linker flag"
       fi
       if test -n "$admincmds"; then
        $ECHO "   - have your system administrator run these commands:$admincmds"
       fi
       if test -f /etc/ld.so.conf; then
-       echo "   - have your system administrator add LIBDIR to \`/etc/ld.so.conf'"
+       echo "   - have your system administrator add LIBDIR to '/etc/ld.so.conf'"
       fi
       echo
 
@@ -2762,18 +4081,20 @@ func_mode_finish ()
     exit $EXIT_SUCCESS
 }
 
-test "$opt_mode" = finish && func_mode_finish ${1+"$@"}
+test finish = "$opt_mode" && func_mode_finish ${1+"$@"}
 
 
 # func_mode_install arg...
 func_mode_install ()
 {
-    $opt_debug
+    $debug_cmd
+
     # There may be an optional sh(1) argument at the beginning of
     # install_prog (especially on Windows NT).
-    if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh ||
+    if test "$SHELL" = "$nonopt" || test /bin/sh = "$nonopt" ||
        # Allow the use of GNU shtool's install command.
-       case $nonopt in *shtool*) :;; *) false;; esac; then
+       case $nonopt in *shtool*) :;; *) false;; esac
+    then
       # Aesthetically quote it.
       func_quote_for_eval "$nonopt"
       install_prog="$func_quote_for_eval_result "
@@ -2800,7 +4121,7 @@ func_mode_install ()
     opts=
     prev=
     install_type=
-    isdir=no
+    isdir=false
     stripme=
     no_mode=:
     for arg
@@ -2813,7 +4134,7 @@ func_mode_install ()
       fi
 
       case $arg in
-      -d) isdir=yes ;;
+      -d) isdir=: ;;
       -f)
        if $install_cp; then :; else
          prev=$arg
@@ -2831,7 +4152,7 @@ func_mode_install ()
       *)
        # If the previous option needed an argument, then skip it.
        if test -n "$prev"; then
-         if test "x$prev" = x-m && test -n "$install_override_mode"; then
+         if test X-m = "X$prev" && test -n "$install_override_mode"; then
            arg2=$install_override_mode
            no_mode=false
          fi
@@ -2856,7 +4177,7 @@ func_mode_install ()
       func_fatal_help "you must specify an install program"
 
     test -n "$prev" && \
-      func_fatal_help "the \`$prev' option requires an argument"
+      func_fatal_help "the '$prev' option requires an argument"
 
     if test -n "$install_override_mode" && $no_mode; then
       if $install_cp; then :; else
@@ -2878,19 +4199,19 @@ func_mode_install ()
     dest=$func_stripname_result
 
     # Check to see that the destination is a directory.
-    test -d "$dest" && isdir=yes
-    if test "$isdir" = yes; then
-      destdir="$dest"
+    test -d "$dest" && isdir=:
+    if $isdir; then
+      destdir=$dest
       destname=
     else
       func_dirname_and_basename "$dest" "" "."
-      destdir="$func_dirname_result"
-      destname="$func_basename_result"
+      destdir=$func_dirname_result
+      destname=$func_basename_result
 
       # Not a directory, so check to see that there is only one file specified.
       set dummy $files; shift
       test "$#" -gt 1 && \
-       func_fatal_help "\`$dest' is not a directory"
+       func_fatal_help "'$dest' is not a directory"
     fi
     case $destdir in
     [\\/]* | [A-Za-z]:[\\/]*) ;;
@@ -2899,7 +4220,7 @@ func_mode_install ()
        case $file in
        *.lo) ;;
        *)
-         func_fatal_help "\`$destdir' must be an absolute directory name"
+         func_fatal_help "'$destdir' must be an absolute directory name"
          ;;
        esac
       done
@@ -2908,7 +4229,7 @@ func_mode_install ()
 
     # This variable tells wrapper scripts just to set variables rather
     # than running their programs.
-    libtool_install_magic="$magic"
+    libtool_install_magic=$magic
 
     staticlibs=
     future_libdirs=
@@ -2928,7 +4249,7 @@ func_mode_install ()
 
        # Check to see that this really is a libtool archive.
        func_lalib_unsafe_p "$file" \
-         || func_fatal_help "\`$file' is not a valid libtool archive"
+         || func_fatal_help "'$file' is not a valid libtool archive"
 
        library_names=
        old_library=
@@ -2950,7 +4271,7 @@ func_mode_install ()
        fi
 
        func_dirname "$file" "/" ""
-       dir="$func_dirname_result"
+       dir=$func_dirname_result
        func_append dir "$objdir"
 
        if test -n "$relink_command"; then
@@ -2964,7 +4285,7 @@ func_mode_install ()
          # are installed into $libdir/../bin (currently, that works fine)
          # but it's something to keep an eye on.
          test "$inst_prefix_dir" = "$destdir" && \
-           func_fatal_error "error: cannot install \`$file' to a directory not ending in $libdir"
+           func_fatal_error "error: cannot install '$file' to a directory not ending in $libdir"
 
          if test -n "$inst_prefix_dir"; then
            # Stick the inst_prefix_dir data into the link command.
@@ -2973,29 +4294,36 @@ func_mode_install ()
            relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%%"`
          fi
 
-         func_warning "relinking \`$file'"
+         func_warning "relinking '$file'"
          func_show_eval "$relink_command" \
-           'func_fatal_error "error: relink \`$file'\'' with the above command before installing it"'
+           'func_fatal_error "error: relink '\''$file'\'' with the above command before installing it"'
        fi
 
        # See the names of the shared library.
        set dummy $library_names; shift
        if test -n "$1"; then
-         realname="$1"
+         realname=$1
          shift
 
-         srcname="$realname"
-         test -n "$relink_command" && srcname="$realname"T
+         srcname=$realname
+         test -n "$relink_command" && srcname=${realname}T
 
          # Install the shared library and build the symlinks.
          func_show_eval "$install_shared_prog $dir/$srcname $destdir/$realname" \
              'exit $?'
-         tstripme="$stripme"
+         tstripme=$stripme
          case $host_os in
          cygwin* | mingw* | pw32* | cegcc*)
            case $realname in
            *.dll.a)
-             tstripme=""
+             tstripme=
+             ;;
+           esac
+           ;;
+         os2*)
+           case $realname in
+           *_dll.a)
+             tstripme=
              ;;
            esac
            ;;
@@ -3006,7 +4334,7 @@ func_mode_install ()
 
          if test "$#" -gt 0; then
            # Delete the old symlinks, and create new ones.
-           # Try `ln -sf' first, because the `ln' binary might depend on
+           # Try 'ln -sf' first, because the 'ln' binary might depend on
            # the symlink we replace!  Solaris /bin/ln does not understand -f,
            # so we also need to try rm && ln -s.
            for linkname
@@ -3017,14 +4345,14 @@ func_mode_install ()
          fi
 
          # Do each command in the postinstall commands.
-         lib="$destdir/$realname"
+         lib=$destdir/$realname
          func_execute_cmds "$postinstall_cmds" 'exit $?'
        fi
 
        # Install the pseudo-library for information purposes.
        func_basename "$file"
-       name="$func_basename_result"
-       instname="$dir/$name"i
+       name=$func_basename_result
+       instname=$dir/${name}i
        func_show_eval "$install_prog $instname $destdir/$name" 'exit $?'
 
        # Maybe install the static library, too.
@@ -3036,11 +4364,11 @@ func_mode_install ()
 
        # Figure out destination file name, if it wasn't already specified.
        if test -n "$destname"; then
-         destfile="$destdir/$destname"
+         destfile=$destdir/$destname
        else
          func_basename "$file"
-         destfile="$func_basename_result"
-         destfile="$destdir/$destfile"
+         destfile=$func_basename_result
+         destfile=$destdir/$destfile
        fi
 
        # Deduce the name of the destination old-style object file.
@@ -3050,11 +4378,11 @@ func_mode_install ()
          staticdest=$func_lo2o_result
          ;;
        *.$objext)
-         staticdest="$destfile"
+         staticdest=$destfile
          destfile=
          ;;
        *)
-         func_fatal_help "cannot copy a libtool object to \`$destfile'"
+         func_fatal_help "cannot copy a libtool object to '$destfile'"
          ;;
        esac
 
@@ -3063,7 +4391,7 @@ func_mode_install ()
          func_show_eval "$install_prog $file $destfile" 'exit $?'
 
        # Install the old object if enabled.
-       if test "$build_old_libs" = yes; then
+       if test yes = "$build_old_libs"; then
          # Deduce the name of the old-style object file.
          func_lo2o "$file"
          staticobj=$func_lo2o_result
@@ -3075,23 +4403,23 @@ func_mode_install ()
       *)
        # Figure out destination file name, if it wasn't already specified.
        if test -n "$destname"; then
-         destfile="$destdir/$destname"
+         destfile=$destdir/$destname
        else
          func_basename "$file"
-         destfile="$func_basename_result"
-         destfile="$destdir/$destfile"
+         destfile=$func_basename_result
+         destfile=$destdir/$destfile
        fi
 
        # If the file is missing, and there is a .exe on the end, strip it
        # because it is most likely a libtool script we actually want to
        # install
-       stripped_ext=""
+       stripped_ext=
        case $file in
          *.exe)
            if test ! -f "$file"; then
              func_stripname '' '.exe' "$file"
              file=$func_stripname_result
-             stripped_ext=".exe"
+             stripped_ext=.exe
            fi
            ;;
        esac
@@ -3119,19 +4447,19 @@ func_mode_install ()
 
          # Check the variables that should have been set.
          test -z "$generated_by_libtool_version" && \
-           func_fatal_error "invalid libtool wrapper script \`$wrapper'"
+           func_fatal_error "invalid libtool wrapper script '$wrapper'"
 
-         finalize=yes
+         finalize=:
          for lib in $notinst_deplibs; do
            # Check to see that each library is installed.
            libdir=
            if test -f "$lib"; then
              func_source "$lib"
            fi
-           libfile="$libdir/"`$ECHO "$lib" | $SED 's%^.*/%%g'` ### testsuite: skip nested quoting test
+           libfile=$libdir/`$ECHO "$lib" | $SED 's%^.*/%%g'`
            if test -n "$libdir" && test ! -f "$libfile"; then
-             func_warning "\`$lib' has not been installed in \`$libdir'"
-             finalize=no
+             func_warning "'$lib' has not been installed in '$libdir'"
+             finalize=false
            fi
          done
 
@@ -3139,29 +4467,29 @@ func_mode_install ()
          func_source "$wrapper"
 
          outputname=
-         if test "$fast_install" = no && test -n "$relink_command"; then
+         if test no = "$fast_install" && test -n "$relink_command"; then
            $opt_dry_run || {
-             if test "$finalize" = yes; then
+             if $finalize; then
                tmpdir=`func_mktempdir`
                func_basename "$file$stripped_ext"
-               file="$func_basename_result"
-               outputname="$tmpdir/$file"
+               file=$func_basename_result
+               outputname=$tmpdir/$file
                # Replace the output file specification.
                relink_command=`$ECHO "$relink_command" | $SED 's%@OUTPUT@%'"$outputname"'%g'`
 
-               $opt_silent || {
+               $opt_quiet || {
                  func_quote_for_expand "$relink_command"
                  eval "func_echo $func_quote_for_expand_result"
                }
                if eval "$relink_command"; then :
                  else
-                 func_error "error: relink \`$file' with the above command before installing it"
+                 func_error "error: relink '$file' with the above command before installing it"
                  $opt_dry_run || ${RM}r "$tmpdir"
                  continue
                fi
-               file="$outputname"
+               file=$outputname
              else
-               func_warning "cannot relink \`$file'"
+               func_warning "cannot relink '$file'"
              fi
            }
          else
@@ -3198,10 +4526,10 @@ func_mode_install ()
 
     for file in $staticlibs; do
       func_basename "$file"
-      name="$func_basename_result"
+      name=$func_basename_result
 
       # Set up the ranlib parameters.
-      oldlib="$destdir/$name"
+      oldlib=$destdir/$name
       func_to_tool_file "$oldlib" func_convert_file_msys_to_w32
       tool_oldlib=$func_to_tool_file_result
 
@@ -3216,18 +4544,18 @@ func_mode_install ()
     done
 
     test -n "$future_libdirs" && \
-      func_warning "remember to run \`$progname --finish$future_libdirs'"
+      func_warning "remember to run '$progname --finish$future_libdirs'"
 
     if test -n "$current_libdirs"; then
       # Maybe just do a dry run.
       $opt_dry_run && current_libdirs=" -n$current_libdirs"
-      exec_cmd='$SHELL $progpath $preserve_args --finish$current_libdirs'
+      exec_cmd='$SHELL "$progpath" $preserve_args --finish$current_libdirs'
     else
       exit $EXIT_SUCCESS
     fi
 }
 
-test "$opt_mode" = install && func_mode_install ${1+"$@"}
+test install = "$opt_mode" && func_mode_install ${1+"$@"}
 
 
 # func_generate_dlsyms outputname originator pic_p
@@ -3235,16 +4563,17 @@ test "$opt_mode" = install && func_mode_install ${1+"$@"}
 # a dlpreopen symbol table.
 func_generate_dlsyms ()
 {
-    $opt_debug
-    my_outputname="$1"
-    my_originator="$2"
-    my_pic_p="${3-no}"
-    my_prefix=`$ECHO "$my_originator" | sed 's%[^a-zA-Z0-9]%_%g'`
+    $debug_cmd
+
+    my_outputname=$1
+    my_originator=$2
+    my_pic_p=${3-false}
+    my_prefix=`$ECHO "$my_originator" | $SED 's%[^a-zA-Z0-9]%_%g'`
     my_dlsyms=
 
-    if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
+    if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then
       if test -n "$NM" && test -n "$global_symbol_pipe"; then
-       my_dlsyms="${my_outputname}S.c"
+       my_dlsyms=${my_outputname}S.c
       else
        func_error "not configured to extract global symbols from dlpreopened files"
       fi
@@ -3255,7 +4584,7 @@ func_generate_dlsyms ()
       "") ;;
       *.c)
        # Discover the nlist of each of the dlfiles.
-       nlist="$output_objdir/${my_outputname}.nm"
+       nlist=$output_objdir/$my_outputname.nm
 
        func_show_eval "$RM $nlist ${nlist}S ${nlist}T"
 
@@ -3263,34 +4592,36 @@ func_generate_dlsyms ()
        func_verbose "creating $output_objdir/$my_dlsyms"
 
        $opt_dry_run || $ECHO > "$output_objdir/$my_dlsyms" "\
-/* $my_dlsyms - symbol resolution table for \`$my_outputname' dlsym emulation. */
-/* Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION */
+/* $my_dlsyms - symbol resolution table for '$my_outputname' dlsym emulation. */
+/* Generated by $PROGRAM (GNU $PACKAGE) $VERSION */
 
 #ifdef __cplusplus
 extern \"C\" {
 #endif
 
-#if defined(__GNUC__) && (((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4)) || (__GNUC__ > 4))
+#if defined __GNUC__ && (((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4)) || (__GNUC__ > 4))
 #pragma GCC diagnostic ignored \"-Wstrict-prototypes\"
 #endif
 
 /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests.  */
-#if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE)
-/* DATA imports from DLLs on WIN32 con't be const, because runtime
+#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE
+/* DATA imports from DLLs on WIN32 can't be const, because runtime
    relocations are performed -- see ld's documentation on pseudo-relocs.  */
 # define LT_DLSYM_CONST
-#elif defined(__osf__)
+#elif defined __osf__
 /* This system does not cope well with relocations in const data.  */
 # define LT_DLSYM_CONST
 #else
 # define LT_DLSYM_CONST const
 #endif
 
+#define STREQ(s1, s2) (strcmp ((s1), (s2)) == 0)
+
 /* External symbol declarations for the compiler. */\
 "
 
-       if test "$dlself" = yes; then
-         func_verbose "generating symbol list for \`$output'"
+       if test yes = "$dlself"; then
+         func_verbose "generating symbol list for '$output'"
 
          $opt_dry_run || echo ': @PROGRAM@ ' > "$nlist"
 
@@ -3298,7 +4629,7 @@ extern \"C\" {
          progfiles=`$ECHO "$objs$old_deplibs" | $SP2NL | $SED "$lo2o" | $NL2SP`
          for progfile in $progfiles; do
            func_to_tool_file "$progfile" func_convert_file_msys_to_w32
-           func_verbose "extracting global C symbols from \`$func_to_tool_file_result'"
+           func_verbose "extracting global C symbols from '$func_to_tool_file_result'"
            $opt_dry_run || eval "$NM $func_to_tool_file_result | $global_symbol_pipe >> '$nlist'"
          done
 
@@ -3318,10 +4649,10 @@ extern \"C\" {
 
          # Prepare the list of exported symbols
          if test -z "$export_symbols"; then
-           export_symbols="$output_objdir/$outputname.exp"
+           export_symbols=$output_objdir/$outputname.exp
            $opt_dry_run || {
              $RM $export_symbols
-             eval "${SED} -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"'
+             eval "$SED -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"'
              case $host in
              *cygwin* | *mingw* | *cegcc* )
                 eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'
@@ -3331,7 +4662,7 @@ extern \"C\" {
            }
          else
            $opt_dry_run || {
-             eval "${SED} -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"'
+             eval "$SED -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"'
              eval '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T'
              eval '$MV "$nlist"T "$nlist"'
              case $host in
@@ -3345,22 +4676,22 @@ extern \"C\" {
        fi
 
        for dlprefile in $dlprefiles; do
-         func_verbose "extracting global C symbols from \`$dlprefile'"
+         func_verbose "extracting global C symbols from '$dlprefile'"
          func_basename "$dlprefile"
-         name="$func_basename_result"
+         name=$func_basename_result
           case $host in
            *cygwin* | *mingw* | *cegcc* )
              # if an import library, we need to obtain dlname
              if func_win32_import_lib_p "$dlprefile"; then
                func_tr_sh "$dlprefile"
                eval "curr_lafile=\$libfile_$func_tr_sh_result"
-               dlprefile_dlbasename=""
+               dlprefile_dlbasename=
                if test -n "$curr_lafile" && func_lalib_p "$curr_lafile"; then
                  # Use subshell, to avoid clobbering current variable values
                  dlprefile_dlname=`source "$curr_lafile" && echo "$dlname"`
-                 if test -n "$dlprefile_dlname" ; then
+                 if test -n "$dlprefile_dlname"; then
                    func_basename "$dlprefile_dlname"
-                   dlprefile_dlbasename="$func_basename_result"
+                   dlprefile_dlbasename=$func_basename_result
                  else
                    # no lafile. user explicitly requested -dlpreopen <import library>.
                    $sharedlib_from_linklib_cmd "$dlprefile"
@@ -3368,7 +4699,7 @@ extern \"C\" {
                  fi
                fi
                $opt_dry_run || {
-                 if test -n "$dlprefile_dlbasename" ; then
+                 if test -n "$dlprefile_dlbasename"; then
                    eval '$ECHO ": $dlprefile_dlbasename" >> "$nlist"'
                  else
                    func_warning "Could not compute DLL name from $name"
@@ -3424,6 +4755,11 @@ extern \"C\" {
            echo '/* NONE */' >> "$output_objdir/$my_dlsyms"
          fi
 
+         func_show_eval '$RM "${nlist}I"'
+         if test -n "$global_symbol_to_import"; then
+           eval "$global_symbol_to_import"' < "$nlist"S > "$nlist"I'
+         fi
+
          echo >> "$output_objdir/$my_dlsyms" "\
 
 /* The mapping between symbol names and symbols.  */
@@ -3432,11 +4768,30 @@ typedef struct {
   void *address;
 } lt_dlsymlist;
 extern LT_DLSYM_CONST lt_dlsymlist
-lt_${my_prefix}_LTX_preloaded_symbols[];
+lt_${my_prefix}_LTX_preloaded_symbols[];\
+"
+
+         if test -s "$nlist"I; then
+           echo >> "$output_objdir/$my_dlsyms" "\
+static void lt_syminit(void)
+{
+  LT_DLSYM_CONST lt_dlsymlist *symbol = lt_${my_prefix}_LTX_preloaded_symbols;
+  for (; symbol->name; ++symbol)
+    {"
+           $SED 's/.*/      if (STREQ (symbol->name, \"&\")) symbol->address = (void *) \&&;/' < "$nlist"I >> "$output_objdir/$my_dlsyms"
+           echo >> "$output_objdir/$my_dlsyms" "\
+    }
+}"
+         fi
+         echo >> "$output_objdir/$my_dlsyms" "\
 LT_DLSYM_CONST lt_dlsymlist
 lt_${my_prefix}_LTX_preloaded_symbols[] =
-{\
-  { \"$my_originator\", (void *) 0 },"
+{ {\"$my_originator\", (void *) 0},"
+
+         if test -s "$nlist"I; then
+           echo >> "$output_objdir/$my_dlsyms" "\
+  {\"@INIT@\", (void *) &lt_syminit},"
+         fi
 
          case $need_lib_prefix in
          no)
@@ -3478,9 +4833,7 @@ static const void *lt_preloaded_setup() {
          *-*-hpux*)
            pic_flag_for_symtable=" $pic_flag"  ;;
          *)
-           if test "X$my_pic_p" != Xno; then
-             pic_flag_for_symtable=" $pic_flag"
-           fi
+           $my_pic_p && pic_flag_for_symtable=" $pic_flag"
            ;;
          esac
          ;;
@@ -3497,10 +4850,10 @@ static const void *lt_preloaded_setup() {
        func_show_eval '(cd $output_objdir && $LTCC$symtab_cflags -c$no_builtin_flag$pic_flag_for_symtable "$my_dlsyms")' 'exit $?'
 
        # Clean up the generated files.
-       func_show_eval '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T"'
+       func_show_eval '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T" "${nlist}I"'
 
        # Transform the symbol file into the correct name.
-       symfileobj="$output_objdir/${my_outputname}S.$objext"
+       symfileobj=$output_objdir/${my_outputname}S.$objext
        case $host in
        *cygwin* | *mingw* | *cegcc* )
          if test -f "$output_objdir/$my_outputname.def"; then
@@ -3518,7 +4871,7 @@ static const void *lt_preloaded_setup() {
        esac
        ;;
       *)
-       func_fatal_error "unknown suffix for \`$my_dlsyms'"
+       func_fatal_error "unknown suffix for '$my_dlsyms'"
        ;;
       esac
     else
@@ -3532,6 +4885,32 @@ static const void *lt_preloaded_setup() {
     fi
 }
 
+# func_cygming_gnu_implib_p ARG
+# This predicate returns with zero status (TRUE) if
+# ARG is a GNU/binutils-style import library. Returns
+# with nonzero status (FALSE) otherwise.
+func_cygming_gnu_implib_p ()
+{
+  $debug_cmd
+
+  func_to_tool_file "$1" func_convert_file_msys_to_w32
+  func_cygming_gnu_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $EGREP ' (_head_[A-Za-z0-9_]+_[ad]l*|[A-Za-z0-9_]+_[ad]l*_iname)$'`
+  test -n "$func_cygming_gnu_implib_tmp"
+}
+
+# func_cygming_ms_implib_p ARG
+# This predicate returns with zero status (TRUE) if
+# ARG is an MS-style import library. Returns
+# with nonzero status (FALSE) otherwise.
+func_cygming_ms_implib_p ()
+{
+  $debug_cmd
+
+  func_to_tool_file "$1" func_convert_file_msys_to_w32
+  func_cygming_ms_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $GREP '_NULL_IMPORT_DESCRIPTOR'`
+  test -n "$func_cygming_ms_implib_tmp"
+}
+
 # func_win32_libid arg
 # return the library type of file 'arg'
 #
@@ -3541,8 +4920,9 @@ static const void *lt_preloaded_setup() {
 # Despite the name, also deal with 64 bit binaries.
 func_win32_libid ()
 {
-  $opt_debug
-  win32_libid_type="unknown"
+  $debug_cmd
+
+  win32_libid_type=unknown
   win32_fileres=`file -L $1 2>/dev/null`
   case $win32_fileres in
   *ar\ archive\ import\ library*) # definitely import
@@ -3552,16 +4932,29 @@ func_win32_libid ()
     # Keep the egrep pattern in sync with the one in _LT_CHECK_MAGIC_METHOD.
     if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null |
        $EGREP 'file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' >/dev/null; then
-      func_to_tool_file "$1" func_convert_file_msys_to_w32
-      win32_nmres=`eval $NM -f posix -A \"$func_to_tool_file_result\" |
-       $SED -n -e '
+      case $nm_interface in
+      "MS dumpbin")
+       if func_cygming_ms_implib_p "$1" ||
+          func_cygming_gnu_implib_p "$1"
+       then
+         win32_nmres=import
+       else
+         win32_nmres=
+       fi
+       ;;
+      *)
+       func_to_tool_file "$1" func_convert_file_msys_to_w32
+       win32_nmres=`eval $NM -f posix -A \"$func_to_tool_file_result\" |
+         $SED -n -e '
            1,100{
                / I /{
-                   s,.*,import,
+                   s|.*|import|
                    p
                    q
                }
            }'`
+       ;;
+      esac
       case $win32_nmres in
       import*)  win32_libid_type="x86 archive import";;
       *)        win32_libid_type="x86 archive static";;
@@ -3593,7 +4986,8 @@ func_win32_libid ()
 #    $sharedlib_from_linklib_result
 func_cygming_dll_for_implib ()
 {
-  $opt_debug
+  $debug_cmd
+
   sharedlib_from_linklib_result=`$DLLTOOL --identify-strict --identify "$1"`
 }
 
@@ -3610,7 +5004,8 @@ func_cygming_dll_for_implib ()
 # specified import library.
 func_cygming_dll_for_implib_fallback_core ()
 {
-  $opt_debug
+  $debug_cmd
+
   match_literal=`$ECHO "$1" | $SED "$sed_make_literal_regex"`
   $OBJDUMP -s --section "$1" "$2" 2>/dev/null |
     $SED '/^Contents of section '"$match_literal"':/{
@@ -3646,8 +5041,8 @@ func_cygming_dll_for_implib_fallback_core ()
       /./p' |
     # we now have a list, one entry per line, of the stringified
     # contents of the appropriate section of all members of the
-    # archive which possess that section. Heuristic: eliminate
-    # all those which have a first or second character that is
+    # archive that possess that section. Heuristic: eliminate
+    # all those that have a first or second character that is
     # a '.' (that is, objdump's representation of an unprintable
     # character.) This should work for all archives with less than
     # 0x302f exports -- but will fail for DLLs whose name actually
@@ -3658,30 +5053,6 @@ func_cygming_dll_for_implib_fallback_core ()
     $SED -e '/^\./d;/^.\./d;q'
 }
 
-# func_cygming_gnu_implib_p ARG
-# This predicate returns with zero status (TRUE) if
-# ARG is a GNU/binutils-style import library. Returns
-# with nonzero status (FALSE) otherwise.
-func_cygming_gnu_implib_p ()
-{
-  $opt_debug
-  func_to_tool_file "$1" func_convert_file_msys_to_w32
-  func_cygming_gnu_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $EGREP ' (_head_[A-Za-z0-9_]+_[ad]l*|[A-Za-z0-9_]+_[ad]l*_iname)$'`
-  test -n "$func_cygming_gnu_implib_tmp"
-}
-
-# func_cygming_ms_implib_p ARG
-# This predicate returns with zero status (TRUE) if
-# ARG is an MS-style import library. Returns
-# with nonzero status (FALSE) otherwise.
-func_cygming_ms_implib_p ()
-{
-  $opt_debug
-  func_to_tool_file "$1" func_convert_file_msys_to_w32
-  func_cygming_ms_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $GREP '_NULL_IMPORT_DESCRIPTOR'`
-  test -n "$func_cygming_ms_implib_tmp"
-}
-
 # func_cygming_dll_for_implib_fallback ARG
 # Platform-specific function to extract the
 # name of the DLL associated with the specified
@@ -3695,16 +5066,17 @@ func_cygming_ms_implib_p ()
 #    $sharedlib_from_linklib_result
 func_cygming_dll_for_implib_fallback ()
 {
-  $opt_debug
-  if func_cygming_gnu_implib_p "$1" ; then
+  $debug_cmd
+
+  if func_cygming_gnu_implib_p "$1"; then
     # binutils import library
     sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$7' "$1"`
-  elif func_cygming_ms_implib_p "$1" ; then
+  elif func_cygming_ms_implib_p "$1"; then
     # ms-generated import library
     sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$6' "$1"`
   else
     # unknown
-    sharedlib_from_linklib_result=""
+    sharedlib_from_linklib_result=
   fi
 }
 
@@ -3712,10 +5084,11 @@ func_cygming_dll_for_implib_fallback ()
 # func_extract_an_archive dir oldlib
 func_extract_an_archive ()
 {
-    $opt_debug
-    f_ex_an_ar_dir="$1"; shift
-    f_ex_an_ar_oldlib="$1"
-    if test "$lock_old_archive_extraction" = yes; then
+    $debug_cmd
+
+    f_ex_an_ar_dir=$1; shift
+    f_ex_an_ar_oldlib=$1
+    if test yes = "$lock_old_archive_extraction"; then
       lockfile=$f_ex_an_ar_oldlib.lock
       until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do
        func_echo "Waiting for $lockfile to be removed"
@@ -3724,7 +5097,7 @@ func_extract_an_archive ()
     fi
     func_show_eval "(cd \$f_ex_an_ar_dir && $AR x \"\$f_ex_an_ar_oldlib\")" \
                   'stat=$?; rm -f "$lockfile"; exit $stat'
-    if test "$lock_old_archive_extraction" = yes; then
+    if test yes = "$lock_old_archive_extraction"; then
       $opt_dry_run || rm -f "$lockfile"
     fi
     if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then
@@ -3738,22 +5111,23 @@ func_extract_an_archive ()
 # func_extract_archives gentop oldlib ...
 func_extract_archives ()
 {
-    $opt_debug
-    my_gentop="$1"; shift
+    $debug_cmd
+
+    my_gentop=$1; shift
     my_oldlibs=${1+"$@"}
-    my_oldobjs=""
-    my_xlib=""
-    my_xabs=""
-    my_xdir=""
+    my_oldobjs=
+    my_xlib=
+    my_xabs=
+    my_xdir=
 
     for my_xlib in $my_oldlibs; do
       # Extract the objects.
       case $my_xlib in
-       [\\/]* | [A-Za-z]:[\\/]*) my_xabs="$my_xlib" ;;
+       [\\/]* | [A-Za-z]:[\\/]*) my_xabs=$my_xlib ;;
        *) my_xabs=`pwd`"/$my_xlib" ;;
       esac
       func_basename "$my_xlib"
-      my_xlib="$func_basename_result"
+      my_xlib=$func_basename_result
       my_xlib_u=$my_xlib
       while :; do
         case " $extracted_archives " in
@@ -3765,7 +5139,7 @@ func_extract_archives ()
        esac
       done
       extracted_archives="$extracted_archives $my_xlib_u"
-      my_xdir="$my_gentop/$my_xlib_u"
+      my_xdir=$my_gentop/$my_xlib_u
 
       func_mkdir_p "$my_xdir"
 
@@ -3778,22 +5152,23 @@ func_extract_archives ()
          cd $my_xdir || exit $?
          darwin_archive=$my_xabs
          darwin_curdir=`pwd`
-         darwin_base_archive=`basename "$darwin_archive"`
+         func_basename "$darwin_archive"
+         darwin_base_archive=$func_basename_result
          darwin_arches=`$LIPO -info "$darwin_archive" 2>/dev/null | $GREP Architectures 2>/dev/null || true`
          if test -n "$darwin_arches"; then
            darwin_arches=`$ECHO "$darwin_arches" | $SED -e 's/.*are://'`
            darwin_arch=
            func_verbose "$darwin_base_archive has multiple architectures $darwin_arches"
-           for darwin_arch in  $darwin_arches ; do
-             func_mkdir_p "unfat-$$/${darwin_base_archive}-${darwin_arch}"
-             $LIPO -thin $darwin_arch -output "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}" "${darwin_archive}"
-             cd "unfat-$$/${darwin_base_archive}-${darwin_arch}"
-             func_extract_an_archive "`pwd`" "${darwin_base_archive}"
+           for darwin_arch in  $darwin_arches; do
+             func_mkdir_p "unfat-$$/$darwin_base_archive-$darwin_arch"
+             $LIPO -thin $darwin_arch -output "unfat-$$/$darwin_base_archive-$darwin_arch/$darwin_base_archive" "$darwin_archive"
+             cd "unfat-$$/$darwin_base_archive-$darwin_arch"
+             func_extract_an_archive "`pwd`" "$darwin_base_archive"
              cd "$darwin_curdir"
-             $RM "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}"
+             $RM "unfat-$$/$darwin_base_archive-$darwin_arch/$darwin_base_archive"
            done # $darwin_arches
             ## Okay now we've a bunch of thin objects, gotta fatten them up :)
-           darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print | $SED -e "$basename" | sort -u`
+           darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print | $SED -e "$sed_basename" | sort -u`
            darwin_file=
            darwin_files=
            for darwin_file in $darwin_filelist; do
@@ -3815,7 +5190,7 @@ func_extract_archives ()
       my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | sort | $NL2SP`
     done
 
-    func_extract_archives_result="$my_oldobjs"
+    func_extract_archives_result=$my_oldobjs
 }
 
 
@@ -3830,7 +5205,7 @@ func_extract_archives ()
 #
 # ARG is the value that the WRAPPER_SCRIPT_BELONGS_IN_OBJDIR
 # variable will take.  If 'yes', then the emitted script
-# will assume that the directory in which it is stored is
+# will assume that the directory where it is stored is
 # the $objdir directory.  This is a cygwin/mingw-specific
 # behavior.
 func_emit_wrapper ()
@@ -3841,7 +5216,7 @@ func_emit_wrapper ()
 #! $SHELL
 
 # $output - temporary wrapper script for $objdir/$outputname
-# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
+# Generated by $PROGRAM (GNU $PACKAGE) $VERSION
 #
 # The $output program cannot be directly executed until all the libtool
 # libraries that it depends on are installed.
@@ -3898,9 +5273,9 @@ _LTECHO_EOF'
 
 # Very basic option parsing. These options are (a) specific to
 # the libtool wrapper, (b) are identical between the wrapper
-# /script/ and the wrapper /executable/ which is used only on
+# /script/ and the wrapper /executable/ that is used only on
 # windows platforms, and (c) all begin with the string "--lt-"
-# (application programs are unlikely to have options which match
+# (application programs are unlikely to have options that match
 # this pattern).
 #
 # There are only two supported options: --lt-debug and
@@ -3933,7 +5308,7 @@ func_parse_lt_options ()
 
   # Print the debug banner immediately:
   if test -n \"\$lt_option_debug\"; then
-    echo \"${outputname}:${output}:\${LINENO}: libtool wrapper (GNU $PACKAGE$TIMESTAMP) $VERSION\" 1>&2
+    echo \"$outputname:$output:\$LINENO: libtool wrapper (GNU $PACKAGE) $VERSION\" 1>&2
   fi
 }
 
@@ -3944,7 +5319,7 @@ func_lt_dump_args ()
   lt_dump_args_N=1;
   for lt_arg
   do
-    \$ECHO \"${outputname}:${output}:\${LINENO}: newargv[\$lt_dump_args_N]: \$lt_arg\"
+    \$ECHO \"$outputname:$output:\$LINENO: newargv[\$lt_dump_args_N]: \$lt_arg\"
     lt_dump_args_N=\`expr \$lt_dump_args_N + 1\`
   done
 }
@@ -3958,7 +5333,7 @@ func_exec_program_core ()
   *-*-mingw | *-*-os2* | *-cegcc*)
     $ECHO "\
       if test -n \"\$lt_option_debug\"; then
-        \$ECHO \"${outputname}:${output}:\${LINENO}: newargv[0]: \$progdir\\\\\$program\" 1>&2
+        \$ECHO \"$outputname:$output:\$LINENO: newargv[0]: \$progdir\\\\\$program\" 1>&2
         func_lt_dump_args \${1+\"\$@\"} 1>&2
       fi
       exec \"\$progdir\\\\\$program\" \${1+\"\$@\"}
@@ -3968,7 +5343,7 @@ func_exec_program_core ()
   *)
     $ECHO "\
       if test -n \"\$lt_option_debug\"; then
-        \$ECHO \"${outputname}:${output}:\${LINENO}: newargv[0]: \$progdir/\$program\" 1>&2
+        \$ECHO \"$outputname:$output:\$LINENO: newargv[0]: \$progdir/\$program\" 1>&2
         func_lt_dump_args \${1+\"\$@\"} 1>&2
       fi
       exec \"\$progdir/\$program\" \${1+\"\$@\"}
@@ -4043,13 +5418,13 @@ func_exec_program ()
   test -n \"\$absdir\" && thisdir=\"\$absdir\"
 "
 
-       if test "$fast_install" = yes; then
+       if test yes = "$fast_install"; then
          $ECHO "\
   program=lt-'$outputname'$exeext
   progdir=\"\$thisdir/$objdir\"
 
   if test ! -f \"\$progdir/\$program\" ||
-     { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | ${SED} 1q\`; \\
+     { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | $SED 1q\`; \\
        test \"X\$file\" != \"X\$progdir/\$program\"; }; then
 
     file=\"\$\$-\$program\"
@@ -4066,7 +5441,7 @@ func_exec_program ()
     if test -n \"\$relink_command\"; then
       if relink_command_output=\`eval \$relink_command 2>&1\`; then :
       else
-       $ECHO \"\$relink_command_output\" >&2
+       \$ECHO \"\$relink_command_output\" >&2
        $RM \"\$progdir/\$file\"
        exit 1
       fi
@@ -4101,7 +5476,7 @@ func_exec_program ()
        fi
 
        # Export our shlibpath_var if we have one.
-       if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
+       if test yes = "$shlibpath_overrides_runpath" && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
          $ECHO "\
     # Add our own library path to $shlibpath_var
     $shlibpath_var=\"$temp_rpath\$$shlibpath_var\"
@@ -4121,7 +5496,7 @@ func_exec_program ()
     fi
   else
     # The program doesn't exist.
-    \$ECHO \"\$0: error: \\\`\$progdir/\$program' does not exist\" 1>&2
+    \$ECHO \"\$0: error: '\$progdir/\$program' does not exist\" 1>&2
     \$ECHO \"This script is just a wrapper for \$program.\" 1>&2
     \$ECHO \"See the $PACKAGE documentation for more information.\" 1>&2
     exit 1
@@ -4140,7 +5515,7 @@ func_emit_cwrapperexe_src ()
        cat <<EOF
 
 /* $cwrappersource - temporary wrapper executable for $objdir/$outputname
-   Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
+   Generated by $PROGRAM (GNU $PACKAGE) $VERSION
 
    The $output program cannot be directly executed until all the libtool
    libraries that it depends on are installed.
@@ -4175,47 +5550,45 @@ EOF
 #include <fcntl.h>
 #include <sys/stat.h>
 
+#define STREQ(s1, s2) (strcmp ((s1), (s2)) == 0)
+
 /* declarations of non-ANSI functions */
-#if defined(__MINGW32__)
+#if defined __MINGW32__
 # ifdef __STRICT_ANSI__
 int _putenv (const char *);
 # endif
-#elif defined(__CYGWIN__)
+#elif defined __CYGWIN__
 # ifdef __STRICT_ANSI__
 char *realpath (const char *, char *);
 int putenv (char *);
 int setenv (const char *, const char *, int);
 # endif
-/* #elif defined (other platforms) ... */
+/* #elif defined other_platform || defined ... */
 #endif
 
 /* portability defines, excluding path handling macros */
-#if defined(_MSC_VER)
+#if defined _MSC_VER
 # define setmode _setmode
 # define stat    _stat
 # define chmod   _chmod
 # define getcwd  _getcwd
 # define putenv  _putenv
 # define S_IXUSR _S_IEXEC
-# ifndef _INTPTR_T_DEFINED
-#  define _INTPTR_T_DEFINED
-#  define intptr_t int
-# endif
-#elif defined(__MINGW32__)
+#elif defined __MINGW32__
 # define setmode _setmode
 # define stat    _stat
 # define chmod   _chmod
 # define getcwd  _getcwd
 # define putenv  _putenv
-#elif defined(__CYGWIN__)
+#elif defined __CYGWIN__
 # define HAVE_SETENV
 # define FOPEN_WB "wb"
-/* #elif defined (other platforms) ... */
+/* #elif defined other platforms ... */
 #endif
 
-#if defined(PATH_MAX)
+#if defined PATH_MAX
 # define LT_PATHMAX PATH_MAX
-#elif defined(MAXPATHLEN)
+#elif defined MAXPATHLEN
 # define LT_PATHMAX MAXPATHLEN
 #else
 # define LT_PATHMAX 1024
@@ -4234,8 +5607,8 @@ int setenv (const char *, const char *, int);
 # define PATH_SEPARATOR ':'
 #endif
 
-#if defined (_WIN32) || defined (__MSDOS__) || defined (__DJGPP__) || \
-  defined (__OS2__)
+#if defined _WIN32 || defined __MSDOS__ || defined __DJGPP__ || \
+  defined __OS2__
 # define HAVE_DOS_BASED_FILE_SYSTEM
 # define FOPEN_WB "wb"
 # ifndef DIR_SEPARATOR_2
@@ -4268,10 +5641,10 @@ int setenv (const char *, const char *, int);
 
 #define XMALLOC(type, num)      ((type *) xmalloc ((num) * sizeof(type)))
 #define XFREE(stale) do { \
-  if (stale) { free ((void *) stale); stale = 0; } \
+  if (stale) { free (stale); stale = 0; } \
 } while (0)
 
-#if defined(LT_DEBUGWRAPPER)
+#if defined LT_DEBUGWRAPPER
 static int lt_debug = 1;
 #else
 static int lt_debug = 0;
@@ -4300,11 +5673,16 @@ void lt_dump_script (FILE *f);
 EOF
 
            cat <<EOF
-volatile const char * MAGIC_EXE = "$magic_exe";
+#if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5)
+# define externally_visible volatile
+#else
+# define externally_visible __attribute__((externally_visible)) volatile
+#endif
+externally_visible const char * MAGIC_EXE = "$magic_exe";
 const char * LIB_PATH_VARNAME = "$shlibpath_var";
 EOF
 
-           if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
+           if test yes = "$shlibpath_overrides_runpath" && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
               func_to_host_path "$temp_rpath"
              cat <<EOF
 const char * LIB_PATH_VALUE   = "$func_to_host_path_result";
@@ -4328,7 +5706,7 @@ const char * EXE_PATH_VALUE   = "";
 EOF
            fi
 
-           if test "$fast_install" = yes; then
+           if test yes = "$fast_install"; then
              cat <<EOF
 const char * TARGET_PROGRAM_NAME = "lt-$outputname"; /* hopefully, no .exe */
 EOF
@@ -4357,12 +5735,12 @@ main (int argc, char *argv[])
   char *actual_cwrapper_name;
   char *target_name;
   char *lt_argv_zero;
-  intptr_t rval = 127;
+  int rval = 127;
 
   int i;
 
   program_name = (char *) xstrdup (base_name (argv[0]));
-  newargz = XMALLOC (char *, argc + 1);
+  newargz = XMALLOC (char *, (size_t) argc + 1);
 
   /* very simple arg parsing; don't want to rely on getopt
    * also, copy all non cwrapper options to newargz, except
@@ -4371,10 +5749,10 @@ main (int argc, char *argv[])
   newargc=0;
   for (i = 1; i < argc; i++)
     {
-      if (strcmp (argv[i], dumpscript_opt) == 0)
+      if (STREQ (argv[i], dumpscript_opt))
        {
 EOF
-           case "$host" in
+           case $host in
              *mingw* | *cygwin* )
                # make stdout use "unix" line endings
                echo "          setmode(1,_O_BINARY);"
@@ -4385,12 +5763,12 @@ EOF
          lt_dump_script (stdout);
          return 0;
        }
-      if (strcmp (argv[i], debug_opt) == 0)
+      if (STREQ (argv[i], debug_opt))
        {
           lt_debug = 1;
           continue;
        }
-      if (strcmp (argv[i], ltwrapper_option_prefix) == 0)
+      if (STREQ (argv[i], ltwrapper_option_prefix))
         {
           /* however, if there is an option in the LTWRAPPER_OPTION_PREFIX
              namespace, but it is not one of the ones we know about and
@@ -4413,7 +5791,7 @@ EOF
 EOF
            cat <<EOF
   /* The GNU banner must be the first non-error debug message */
-  lt_debugprintf (__FILE__, __LINE__, "libtool wrapper (GNU $PACKAGE$TIMESTAMP) $VERSION\n");
+  lt_debugprintf (__FILE__, __LINE__, "libtool wrapper (GNU $PACKAGE) $VERSION\n");
 EOF
            cat <<"EOF"
   lt_debugprintf (__FILE__, __LINE__, "(main) argv[0]: %s\n", argv[0]);
@@ -4524,7 +5902,7 @@ EOF
                cat <<"EOF"
   /* execv doesn't actually work on mingw as expected on unix */
   newargz = prepare_spawn (newargz);
-  rval = _spawnv (_P_WAIT, lt_argv_zero, (const char * const *) newargz);
+  rval = (int) _spawnv (_P_WAIT, lt_argv_zero, (const char * const *) newargz);
   if (rval == -1)
     {
       /* failed to start process */
@@ -4569,7 +5947,7 @@ base_name (const char *name)
 {
   const char *base;
 
-#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
+#if defined HAVE_DOS_BASED_FILE_SYSTEM
   /* Skip over the disk name in MSDOS pathnames. */
   if (isalpha ((unsigned char) name[0]) && name[1] == ':')
     name += 2;
@@ -4628,7 +6006,7 @@ find_executable (const char *wrapper)
   const char *p_next;
   /* static buffer for getcwd */
   char tmp[LT_PATHMAX + 1];
-  int tmp_len;
+  size_t tmp_len;
   char *concat_name;
 
   lt_debugprintf (__FILE__, __LINE__, "(find_executable): %s\n",
@@ -4638,7 +6016,7 @@ find_executable (const char *wrapper)
     return NULL;
 
   /* Absolute path? */
-#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
+#if defined HAVE_DOS_BASED_FILE_SYSTEM
   if (isalpha ((unsigned char) wrapper[0]) && wrapper[1] == ':')
     {
       concat_name = xstrdup (wrapper);
@@ -4656,7 +6034,7 @@ find_executable (const char *wrapper)
            return concat_name;
          XFREE (concat_name);
        }
-#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
+#if defined HAVE_DOS_BASED_FILE_SYSTEM
     }
 #endif
 
@@ -4679,7 +6057,7 @@ find_executable (const char *wrapper)
              for (q = p; *q; q++)
                if (IS_PATH_SEPARATOR (*q))
                  break;
-             p_len = q - p;
+             p_len = (size_t) (q - p);
              p_next = (*q == '\0' ? q : q + 1);
              if (p_len == 0)
                {
@@ -4798,7 +6176,7 @@ strendzap (char *str, const char *pat)
   if (patlen <= len)
     {
       str += len - patlen;
-      if (strcmp (str, pat) == 0)
+      if (STREQ (str, pat))
        *str = '\0';
     }
   return str;
@@ -4863,7 +6241,7 @@ lt_setenv (const char *name, const char *value)
     char *str = xstrdup (value);
     setenv (name, str, 1);
 #else
-    int len = strlen (name) + 1 + strlen (value) + 1;
+    size_t len = strlen (name) + 1 + strlen (value) + 1;
     char *str = XMALLOC (char, len);
     sprintf (str, "%s=%s", name, value);
     if (putenv (str) != EXIT_SUCCESS)
@@ -4880,8 +6258,8 @@ lt_extend_str (const char *orig_value, const char *add, int to_end)
   char *new_value;
   if (orig_value && *orig_value)
     {
-      int orig_value_len = strlen (orig_value);
-      int add_len = strlen (add);
+      size_t orig_value_len = strlen (orig_value);
+      size_t add_len = strlen (add);
       new_value = XMALLOC (char, add_len + orig_value_len + 1);
       if (to_end)
         {
@@ -4912,10 +6290,10 @@ lt_update_exe_path (const char *name, const char *value)
     {
       char *new_value = lt_extend_str (getenv (name), value, 0);
       /* some systems can't cope with a ':'-terminated path #' */
-      int len = strlen (new_value);
-      while (((len = strlen (new_value)) > 0) && IS_PATH_SEPARATOR (new_value[len-1]))
+      size_t len = strlen (new_value);
+      while ((len > 0) && IS_PATH_SEPARATOR (new_value[len-1]))
         {
-          new_value[len-1] = '\0';
+          new_value[--len] = '\0';
         }
       lt_setenv (name, new_value);
       XFREE (new_value);
@@ -5082,27 +6460,47 @@ EOF
 # True if ARG is an import lib, as indicated by $file_magic_cmd
 func_win32_import_lib_p ()
 {
-    $opt_debug
+    $debug_cmd
+
     case `eval $file_magic_cmd \"\$1\" 2>/dev/null | $SED -e 10q` in
     *import*) : ;;
     *) false ;;
     esac
 }
 
+# func_suncc_cstd_abi
+# !!ONLY CALL THIS FOR SUN CC AFTER $compile_command IS FULLY EXPANDED!!
+# Several compiler flags select an ABI that is incompatible with the
+# Cstd library. Avoid specifying it if any are in CXXFLAGS.
+func_suncc_cstd_abi ()
+{
+    $debug_cmd
+
+    case " $compile_command " in
+    *" -compat=g "*|*\ -std=c++[0-9][0-9]\ *|*" -library=stdcxx4 "*|*" -library=stlport4 "*)
+      suncc_use_cstd_abi=no
+      ;;
+    *)
+      suncc_use_cstd_abi=yes
+      ;;
+    esac
+}
+
 # func_mode_link arg...
 func_mode_link ()
 {
-    $opt_debug
+    $debug_cmd
+
     case $host in
     *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*)
       # It is impossible to link a dll without this setting, and
       # we shouldn't force the makefile maintainer to figure out
-      # which system we are compiling for in order to pass an extra
+      # what system we are compiling for in order to pass an extra
       # flag for every libtool invocation.
       # allow_undefined=no
 
       # FIXME: Unfortunately, there are problems with the above when trying
-      # to make a dll which has undefined symbols, in which case not
+      # to make a dll that has undefined symbols, in which case not
       # even a static library is built.  For now, we need to specify
       # -no-undefined on the libtool link line when we can be certain
       # that all symbols are satisfied, otherwise we get a static library.
@@ -5146,10 +6544,11 @@ func_mode_link ()
     module=no
     no_install=no
     objs=
+    os2dllname=
     non_pic_objects=
     precious_files_regex=
     prefer_static_libs=no
-    preload=no
+    preload=false
     prev=
     prevarg=
     release=
@@ -5161,7 +6560,7 @@ func_mode_link ()
     vinfo=
     vinfo_number=no
     weak_libs=
-    single_module="${wl}-single_module"
+    single_module=$wl-single_module
     func_infer_tag $base_compile
 
     # We need to know -static, to get the right output filenames.
@@ -5169,15 +6568,15 @@ func_mode_link ()
     do
       case $arg in
       -shared)
-       test "$build_libtool_libs" != yes && \
-         func_fatal_configuration "can not build a shared library"
+       test yes != "$build_libtool_libs" \
+         && func_fatal_configuration "cannot build a shared library"
        build_old_libs=no
        break
        ;;
       -all-static | -static | -static-libtool-libs)
        case $arg in
        -all-static)
-         if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then
+         if test yes = "$build_libtool_libs" && test -z "$link_static_flag"; then
            func_warning "complete static linking is impossible in this configuration"
          fi
          if test -n "$link_static_flag"; then
@@ -5210,7 +6609,7 @@ func_mode_link ()
 
     # Go through the arguments, transforming them on the way.
     while test "$#" -gt 0; do
-      arg="$1"
+      arg=$1
       shift
       func_quote_for_eval "$arg"
       qarg=$func_quote_for_eval_unquoted_result
@@ -5227,21 +6626,21 @@ func_mode_link ()
 
        case $prev in
        bindir)
-         bindir="$arg"
+         bindir=$arg
          prev=
          continue
          ;;
        dlfiles|dlprefiles)
-         if test "$preload" = no; then
+         $preload || {
            # Add the symbol object into the linking commands.
            func_append compile_command " @SYMFILE@"
            func_append finalize_command " @SYMFILE@"
-           preload=yes
-         fi
+           preload=:
+         }
          case $arg in
          *.la | *.lo) ;;  # We handle these cases below.
          force)
-           if test "$dlself" = no; then
+           if test no = "$dlself"; then
              dlself=needless
              export_dynamic=yes
            fi
@@ -5249,9 +6648,9 @@ func_mode_link ()
            continue
            ;;
          self)
-           if test "$prev" = dlprefiles; then
+           if test dlprefiles = "$prev"; then
              dlself=yes
-           elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then
+           elif test dlfiles = "$prev" && test yes != "$dlopen_self"; then
              dlself=yes
            else
              dlself=needless
@@ -5261,7 +6660,7 @@ func_mode_link ()
            continue
            ;;
          *)
-           if test "$prev" = dlfiles; then
+           if test dlfiles = "$prev"; then
              func_append dlfiles " $arg"
            else
              func_append dlprefiles " $arg"
@@ -5272,14 +6671,14 @@ func_mode_link ()
          esac
          ;;
        expsyms)
-         export_symbols="$arg"
+         export_symbols=$arg
          test -f "$arg" \
-           || func_fatal_error "symbol file \`$arg' does not exist"
+           || func_fatal_error "symbol file '$arg' does not exist"
          prev=
          continue
          ;;
        expsyms_regex)
-         export_symbols_regex="$arg"
+         export_symbols_regex=$arg
          prev=
          continue
          ;;
@@ -5297,7 +6696,13 @@ func_mode_link ()
          continue
          ;;
        inst_prefix)
-         inst_prefix_dir="$arg"
+         inst_prefix_dir=$arg
+         prev=
+         continue
+         ;;
+       mllvm)
+         # Clang does not use LLVM to link, so we can simply discard any
+         # '-mllvm $arg' options when doing the link step.
          prev=
          continue
          ;;
@@ -5321,21 +6726,21 @@ func_mode_link ()
 
                if test -z "$pic_object" ||
                   test -z "$non_pic_object" ||
-                  test "$pic_object" = none &&
-                  test "$non_pic_object" = none; then
-                 func_fatal_error "cannot find name of object for \`$arg'"
+                  test none = "$pic_object" &&
+                  test none = "$non_pic_object"; then
+                 func_fatal_error "cannot find name of object for '$arg'"
                fi
 
                # Extract subdirectory from the argument.
                func_dirname "$arg" "/" ""
-               xdir="$func_dirname_result"
+               xdir=$func_dirname_result
 
-               if test "$pic_object" != none; then
+               if test none != "$pic_object"; then
                  # Prepend the subdirectory the object is found in.
-                 pic_object="$xdir$pic_object"
+                 pic_object=$xdir$pic_object
 
-                 if test "$prev" = dlfiles; then
-                   if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then
+                 if test dlfiles = "$prev"; then
+                   if test yes = "$build_libtool_libs" && test yes = "$dlopen_support"; then
                      func_append dlfiles " $pic_object"
                      prev=
                      continue
@@ -5346,7 +6751,7 @@ func_mode_link ()
                  fi
 
                  # CHECK ME:  I think I busted this.  -Ossama
-                 if test "$prev" = dlprefiles; then
+                 if test dlprefiles = "$prev"; then
                    # Preload the old-style object.
                    func_append dlprefiles " $pic_object"
                    prev=
@@ -5354,23 +6759,23 @@ func_mode_link ()
 
                  # A PIC object.
                  func_append libobjs " $pic_object"
-                 arg="$pic_object"
+                 arg=$pic_object
                fi
 
                # Non-PIC object.
-               if test "$non_pic_object" != none; then
+               if test none != "$non_pic_object"; then
                  # Prepend the subdirectory the object is found in.
-                 non_pic_object="$xdir$non_pic_object"
+                 non_pic_object=$xdir$non_pic_object
 
                  # A standard non-PIC object
                  func_append non_pic_objects " $non_pic_object"
-                 if test -z "$pic_object" || test "$pic_object" = none ; then
-                   arg="$non_pic_object"
+                 if test -z "$pic_object" || test none = "$pic_object"; then
+                   arg=$non_pic_object
                  fi
                else
                  # If the PIC object exists, use it instead.
                  # $xdir was prepended to $pic_object above.
-                 non_pic_object="$pic_object"
+                 non_pic_object=$pic_object
                  func_append non_pic_objects " $non_pic_object"
                fi
              else
@@ -5378,7 +6783,7 @@ func_mode_link ()
                if $opt_dry_run; then
                  # Extract subdirectory from the argument.
                  func_dirname "$arg" "/" ""
-                 xdir="$func_dirname_result"
+                 xdir=$func_dirname_result
 
                  func_lo2o "$arg"
                  pic_object=$xdir$objdir/$func_lo2o_result
@@ -5386,24 +6791,29 @@ func_mode_link ()
                  func_append libobjs " $pic_object"
                  func_append non_pic_objects " $non_pic_object"
                else
-                 func_fatal_error "\`$arg' is not a valid libtool object"
+                 func_fatal_error "'$arg' is not a valid libtool object"
                fi
              fi
            done
          else
-           func_fatal_error "link input file \`$arg' does not exist"
+           func_fatal_error "link input file '$arg' does not exist"
          fi
          arg=$save_arg
          prev=
          continue
          ;;
+       os2dllname)
+         os2dllname=$arg
+         prev=
+         continue
+         ;;
        precious_regex)
-         precious_files_regex="$arg"
+         precious_files_regex=$arg
          prev=
          continue
          ;;
        release)
-         release="-$arg"
+         release=-$arg
          prev=
          continue
          ;;
@@ -5415,7 +6825,7 @@ func_mode_link ()
            func_fatal_error "only absolute run-paths are allowed"
            ;;
          esac
-         if test "$prev" = rpath; then
+         if test rpath = "$prev"; then
            case "$rpath " in
            *" $arg "*) ;;
            *) func_append rpath " $arg" ;;
@@ -5430,7 +6840,7 @@ func_mode_link ()
          continue
          ;;
        shrext)
-         shrext_cmds="$arg"
+         shrext_cmds=$arg
          prev=
          continue
          ;;
@@ -5470,7 +6880,7 @@ func_mode_link ()
        esac
       fi # test -n "$prev"
 
-      prevarg="$arg"
+      prevarg=$arg
 
       case $arg in
       -all-static)
@@ -5484,7 +6894,7 @@ func_mode_link ()
 
       -allow-undefined)
        # FIXME: remove this flag sometime in the future.
-       func_fatal_error "\`-allow-undefined' must not be used because it is the default"
+       func_fatal_error "'-allow-undefined' must not be used because it is the default"
        ;;
 
       -avoid-version)
@@ -5516,7 +6926,7 @@ func_mode_link ()
        if test -n "$export_symbols" || test -n "$export_symbols_regex"; then
          func_fatal_error "more than one -exported-symbols argument is not allowed"
        fi
-       if test "X$arg" = "X-export-symbols"; then
+       if test X-export-symbols = "X$arg"; then
          prev=expsyms
        else
          prev=expsyms_regex
@@ -5550,9 +6960,9 @@ func_mode_link ()
        func_stripname "-L" '' "$arg"
        if test -z "$func_stripname_result"; then
          if test "$#" -gt 0; then
-           func_fatal_error "require no space between \`-L' and \`$1'"
+           func_fatal_error "require no space between '-L' and '$1'"
          else
-           func_fatal_error "need path for \`-L' option"
+           func_fatal_error "need path for '-L' option"
          fi
        fi
        func_resolve_sysroot "$func_stripname_result"
@@ -5563,8 +6973,8 @@ func_mode_link ()
        *)
          absdir=`cd "$dir" && pwd`
          test -z "$absdir" && \
-           func_fatal_error "cannot determine absolute directory name of \`$dir'"
-         dir="$absdir"
+           func_fatal_error "cannot determine absolute directory name of '$dir'"
+         dir=$absdir
          ;;
        esac
        case "$deplibs " in
@@ -5599,7 +7009,7 @@ func_mode_link ()
        ;;
 
       -l*)
-       if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then
+       if test X-lc = "X$arg" || test X-lm = "X$arg"; then
          case $host in
          *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc* | *-*-haiku*)
            # These systems don't actually have a C or math library (as such)
@@ -5607,11 +7017,11 @@ func_mode_link ()
            ;;
          *-*-os2*)
            # These systems don't actually have a C library (as such)
-           test "X$arg" = "X-lc" && continue
+           test X-lc = "X$arg" && continue
            ;;
-         *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
+         *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig*)
            # Do not include libc due to us having libc/libc_r.
-           test "X$arg" = "X-lc" && continue
+           test X-lc = "X$arg" && continue
            ;;
          *-*-rhapsody* | *-*-darwin1.[012])
            # Rhapsody C and math libraries are in the System framework
@@ -5620,16 +7030,16 @@ func_mode_link ()
            ;;
          *-*-sco3.2v5* | *-*-sco5v6*)
            # Causes problems with __ctype
-           test "X$arg" = "X-lc" && continue
+           test X-lc = "X$arg" && continue
            ;;
          *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*)
            # Compiler inserts libc in the correct place for threads to work
-           test "X$arg" = "X-lc" && continue
+           test X-lc = "X$arg" && continue
            ;;
          esac
-       elif test "X$arg" = "X-lc_r"; then
+       elif test X-lc_r = "X$arg"; then
         case $host in
-        *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
+        *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig*)
           # Do not include libc_r directly, use -pthread flag.
           continue
           ;;
@@ -5639,6 +7049,11 @@ func_mode_link ()
        continue
        ;;
 
+      -mllvm)
+       prev=mllvm
+       continue
+       ;;
+
       -module)
        module=yes
        continue
@@ -5668,7 +7083,7 @@ func_mode_link ()
        ;;
 
       -multi_module)
-       single_module="${wl}-multi_module"
+       single_module=$wl-multi_module
        continue
        ;;
 
@@ -5682,8 +7097,8 @@ func_mode_link ()
        *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin* | *-cegcc*)
          # The PATH hackery in wrapper scripts is required on Windows
          # and Darwin in order for the loader to find any dlls it needs.
-         func_warning "\`-no-install' is ignored for $host"
-         func_warning "assuming \`-no-fast-install' instead"
+         func_warning "'-no-install' is ignored for $host"
+         func_warning "assuming '-no-fast-install' instead"
          fast_install=no
          ;;
        *) no_install=yes ;;
@@ -5701,6 +7116,11 @@ func_mode_link ()
        continue
        ;;
 
+      -os2dllname)
+       prev=os2dllname
+       continue
+       ;;
+
       -o) prev=output ;;
 
       -precious-files-regex)
@@ -5788,14 +7208,14 @@ func_mode_link ()
        func_stripname '-Wc,' '' "$arg"
        args=$func_stripname_result
        arg=
-       save_ifs="$IFS"; IFS=','
+       save_ifs=$IFS; IFS=,
        for flag in $args; do
-         IFS="$save_ifs"
+         IFS=$save_ifs
           func_quote_for_eval "$flag"
          func_append arg " $func_quote_for_eval_result"
          func_append compiler_flags " $func_quote_for_eval_result"
        done
-       IFS="$save_ifs"
+       IFS=$save_ifs
        func_stripname ' ' '' "$arg"
        arg=$func_stripname_result
        ;;
@@ -5804,15 +7224,15 @@ func_mode_link ()
        func_stripname '-Wl,' '' "$arg"
        args=$func_stripname_result
        arg=
-       save_ifs="$IFS"; IFS=','
+       save_ifs=$IFS; IFS=,
        for flag in $args; do
-         IFS="$save_ifs"
+         IFS=$save_ifs
           func_quote_for_eval "$flag"
          func_append arg " $wl$func_quote_for_eval_result"
          func_append compiler_flags " $wl$func_quote_for_eval_result"
          func_append linker_flags " $func_quote_for_eval_result"
        done
-       IFS="$save_ifs"
+       IFS=$save_ifs
        func_stripname ' ' '' "$arg"
        arg=$func_stripname_result
        ;;
@@ -5835,7 +7255,7 @@ func_mode_link ()
       # -msg_* for osf cc
       -msg_*)
        func_quote_for_eval "$arg"
-       arg="$func_quote_for_eval_result"
+       arg=$func_quote_for_eval_result
        ;;
 
       # Flags to be passed through unchanged, with rationale:
@@ -5847,25 +7267,49 @@ func_mode_link ()
       # -m*, -t[45]*, -txscale* architecture-specific flags for GCC
       # -F/path              path to uninstalled frameworks, gcc on darwin
       # -p, -pg, --coverage, -fprofile-*  profiling flags for GCC
+      # -fstack-protector*   stack protector flags for GCC
       # @file                GCC response files
       # -tp=*                Portland pgcc target processor selection
       # --sysroot=*          for sysroot support
-      # -O*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization
+      # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization
+      # -specs=*             GCC specs files
+      # -stdlib=*            select c++ std lib with clang
+      # -fsanitize=*         Clang/GCC memory and address sanitizer
       -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \
       -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \
-      -O*|-flto*|-fwhopr*|-fuse-linker-plugin)
+      -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \
+      -specs=*|-fsanitize=*)
         func_quote_for_eval "$arg"
-       arg="$func_quote_for_eval_result"
+       arg=$func_quote_for_eval_result
         func_append compile_command " $arg"
         func_append finalize_command " $arg"
         func_append compiler_flags " $arg"
         continue
         ;;
 
+      -Z*)
+        if test os2 = "`expr $host : '.*\(os2\)'`"; then
+          # OS/2 uses -Zxxx to specify OS/2-specific options
+         compiler_flags="$compiler_flags $arg"
+         func_append compile_command " $arg"
+         func_append finalize_command " $arg"
+         case $arg in
+         -Zlinker | -Zstack)
+           prev=xcompiler
+           ;;
+         esac
+         continue
+        else
+         # Otherwise treat like 'Some other compiler flag' below
+         func_quote_for_eval "$arg"
+         arg=$func_quote_for_eval_result
+        fi
+       ;;
+
       # Some other compiler flag.
       -* | +*)
         func_quote_for_eval "$arg"
-       arg="$func_quote_for_eval_result"
+       arg=$func_quote_for_eval_result
        ;;
 
       *.$objext)
@@ -5886,21 +7330,21 @@ func_mode_link ()
 
          if test -z "$pic_object" ||
             test -z "$non_pic_object" ||
-            test "$pic_object" = none &&
-            test "$non_pic_object" = none; then
-           func_fatal_error "cannot find name of object for \`$arg'"
+            test none = "$pic_object" &&
+            test none = "$non_pic_object"; then
+           func_fatal_error "cannot find name of object for '$arg'"
          fi
 
          # Extract subdirectory from the argument.
          func_dirname "$arg" "/" ""
-         xdir="$func_dirname_result"
+         xdir=$func_dirname_result
 
-         if test "$pic_object" != none; then
+         test none = "$pic_object" || {
            # Prepend the subdirectory the object is found in.
-           pic_object="$xdir$pic_object"
+           pic_object=$xdir$pic_object
 
-           if test "$prev" = dlfiles; then
-             if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then
+           if test dlfiles = "$prev"; then
+             if test yes = "$build_libtool_libs" && test yes = "$dlopen_support"; then
                func_append dlfiles " $pic_object"
                prev=
                continue
@@ -5911,7 +7355,7 @@ func_mode_link ()
            fi
 
            # CHECK ME:  I think I busted this.  -Ossama
-           if test "$prev" = dlprefiles; then
+           if test dlprefiles = "$prev"; then
              # Preload the old-style object.
              func_append dlprefiles " $pic_object"
              prev=
@@ -5919,23 +7363,23 @@ func_mode_link ()
 
            # A PIC object.
            func_append libobjs " $pic_object"
-           arg="$pic_object"
-         fi
+           arg=$pic_object
+         }
 
          # Non-PIC object.
-         if test "$non_pic_object" != none; then
+         if test none != "$non_pic_object"; then
            # Prepend the subdirectory the object is found in.
-           non_pic_object="$xdir$non_pic_object"
+           non_pic_object=$xdir$non_pic_object
 
            # A standard non-PIC object
            func_append non_pic_objects " $non_pic_object"
-           if test -z "$pic_object" || test "$pic_object" = none ; then
-             arg="$non_pic_object"
+           if test -z "$pic_object" || test none = "$pic_object"; then
+             arg=$non_pic_object
            fi
          else
            # If the PIC object exists, use it instead.
            # $xdir was prepended to $pic_object above.
-           non_pic_object="$pic_object"
+           non_pic_object=$pic_object
            func_append non_pic_objects " $non_pic_object"
          fi
        else
@@ -5943,7 +7387,7 @@ func_mode_link ()
          if $opt_dry_run; then
            # Extract subdirectory from the argument.
            func_dirname "$arg" "/" ""
-           xdir="$func_dirname_result"
+           xdir=$func_dirname_result
 
            func_lo2o "$arg"
            pic_object=$xdir$objdir/$func_lo2o_result
@@ -5951,7 +7395,7 @@ func_mode_link ()
            func_append libobjs " $pic_object"
            func_append non_pic_objects " $non_pic_object"
          else
-           func_fatal_error "\`$arg' is not a valid libtool object"
+           func_fatal_error "'$arg' is not a valid libtool object"
          fi
        fi
        ;;
@@ -5967,11 +7411,11 @@ func_mode_link ()
        # A libtool-controlled library.
 
        func_resolve_sysroot "$arg"
-       if test "$prev" = dlfiles; then
+       if test dlfiles = "$prev"; then
          # This library was specified with -dlopen.
          func_append dlfiles " $func_resolve_sysroot_result"
          prev=
-       elif test "$prev" = dlprefiles; then
+       elif test dlprefiles = "$prev"; then
          # The library was specified with -dlpreopen.
          func_append dlprefiles " $func_resolve_sysroot_result"
          prev=
@@ -5986,7 +7430,7 @@ func_mode_link ()
        # Unknown arguments in both finalize_command and compile_command need
        # to be aesthetically quoted because they are evaled later.
        func_quote_for_eval "$arg"
-       arg="$func_quote_for_eval_result"
+       arg=$func_quote_for_eval_result
        ;;
       esac # arg
 
@@ -5998,9 +7442,9 @@ func_mode_link ()
     done # argument parsing loop
 
     test -n "$prev" && \
-      func_fatal_help "the \`$prevarg' option requires an argument"
+      func_fatal_help "the '$prevarg' option requires an argument"
 
-    if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then
+    if test yes = "$export_dynamic" && test -n "$export_dynamic_flag_spec"; then
       eval arg=\"$export_dynamic_flag_spec\"
       func_append compile_command " $arg"
       func_append finalize_command " $arg"
@@ -6009,20 +7453,23 @@ func_mode_link ()
     oldlibs=
     # calculate the name of the file, without its directory
     func_basename "$output"
-    outputname="$func_basename_result"
-    libobjs_save="$libobjs"
+    outputname=$func_basename_result
+    libobjs_save=$libobjs
 
     if test -n "$shlibpath_var"; then
       # get the directories listed in $shlibpath_var
-      eval shlib_search_path=\`\$ECHO \"\${$shlibpath_var}\" \| \$SED \'s/:/ /g\'\`
+      eval shlib_search_path=\`\$ECHO \"\$$shlibpath_var\" \| \$SED \'s/:/ /g\'\`
     else
       shlib_search_path=
     fi
     eval sys_lib_search_path=\"$sys_lib_search_path_spec\"
     eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\"
 
+    # Definition is injected by LT_CONFIG during libtool generation.
+    func_munge_path_list sys_lib_dlsearch_path "$LT_SYS_LIBRARY_PATH"
+
     func_dirname "$output" "/" ""
-    output_objdir="$func_dirname_result$objdir"
+    output_objdir=$func_dirname_result$objdir
     func_to_tool_file "$output_objdir/"
     tool_output_objdir=$func_to_tool_file_result
     # Create the object directory.
@@ -6045,7 +7492,7 @@ func_mode_link ()
     # Find all interdependent deplibs by searching for libraries
     # that are linked more than once (e.g. -la -lb -la)
     for deplib in $deplibs; do
-      if $opt_preserve_dup_deps ; then
+      if $opt_preserve_dup_deps; then
        case "$libs " in
        *" $deplib "*) func_append specialdeplibs " $deplib" ;;
        esac
@@ -6053,7 +7500,7 @@ func_mode_link ()
       func_append libs " $deplib"
     done
 
-    if test "$linkmode" = lib; then
+    if test lib = "$linkmode"; then
       libs="$predeps $libs $compiler_lib_search_path $postdeps"
 
       # Compute libraries that are listed more than once in $predeps
@@ -6085,7 +7532,7 @@ func_mode_link ()
          case $file in
          *.la) ;;
          *)
-           func_fatal_help "libraries can \`-dlopen' only libtool libraries: $file"
+           func_fatal_help "libraries can '-dlopen' only libtool libraries: $file"
            ;;
          esac
        done
@@ -6093,7 +7540,7 @@ func_mode_link ()
     prog)
        compile_deplibs=
        finalize_deplibs=
-       alldeplibs=no
+       alldeplibs=false
        newdlfiles=
        newdlprefiles=
        passes="conv scan dlopen dlpreopen link"
@@ -6105,32 +7552,32 @@ func_mode_link ()
     for pass in $passes; do
       # The preopen pass in lib mode reverses $deplibs; put it back here
       # so that -L comes before libs that need it for instance...
-      if test "$linkmode,$pass" = "lib,link"; then
+      if test lib,link = "$linkmode,$pass"; then
        ## FIXME: Find the place where the list is rebuilt in the wrong
        ##        order, and fix it there properly
         tmp_deplibs=
        for deplib in $deplibs; do
          tmp_deplibs="$deplib $tmp_deplibs"
        done
-       deplibs="$tmp_deplibs"
+       deplibs=$tmp_deplibs
       fi
 
-      if test "$linkmode,$pass" = "lib,link" ||
-        test "$linkmode,$pass" = "prog,scan"; then
-       libs="$deplibs"
+      if test lib,link = "$linkmode,$pass" ||
+        test prog,scan = "$linkmode,$pass"; then
+       libs=$deplibs
        deplibs=
       fi
-      if test "$linkmode" = prog; then
+      if test prog = "$linkmode"; then
        case $pass in
-       dlopen) libs="$dlfiles" ;;
-       dlpreopen) libs="$dlprefiles" ;;
+       dlopen) libs=$dlfiles ;;
+       dlpreopen) libs=$dlprefiles ;;
        link)
          libs="$deplibs %DEPLIBS%"
          test "X$link_all_deplibs" != Xno && libs="$libs $dependency_libs"
          ;;
        esac
       fi
-      if test "$linkmode,$pass" = "lib,dlpreopen"; then
+      if test lib,dlpreopen = "$linkmode,$pass"; then
        # Collect and forward deplibs of preopened libtool libs
        for lib in $dlprefiles; do
          # Ignore non-libtool-libs
@@ -6151,26 +7598,26 @@ func_mode_link ()
            esac
          done
        done
-       libs="$dlprefiles"
+       libs=$dlprefiles
       fi
-      if test "$pass" = dlopen; then
+      if test dlopen = "$pass"; then
        # Collect dlpreopened libraries
-       save_deplibs="$deplibs"
+       save_deplibs=$deplibs
        deplibs=
       fi
 
       for deplib in $libs; do
        lib=
-       found=no
+       found=false
        case $deplib in
        -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \
         |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*)
-         if test "$linkmode,$pass" = "prog,link"; then
+         if test prog,link = "$linkmode,$pass"; then
            compile_deplibs="$deplib $compile_deplibs"
            finalize_deplibs="$deplib $finalize_deplibs"
          else
            func_append compiler_flags " $deplib"
-           if test "$linkmode" = lib ; then
+           if test lib = "$linkmode"; then
                case "$new_inherited_linker_flags " in
                    *" $deplib "*) ;;
                    * ) func_append new_inherited_linker_flags " $deplib" ;;
@@ -6180,13 +7627,13 @@ func_mode_link ()
          continue
          ;;
        -l*)
-         if test "$linkmode" != lib && test "$linkmode" != prog; then
-           func_warning "\`-l' is ignored for archives/objects"
+         if test lib != "$linkmode" && test prog != "$linkmode"; then
+           func_warning "'-l' is ignored for archives/objects"
            continue
          fi
          func_stripname '-l' '' "$deplib"
          name=$func_stripname_result
-         if test "$linkmode" = lib; then
+         if test lib = "$linkmode"; then
            searchdirs="$newlib_search_path $lib_search_path $compiler_lib_search_dirs $sys_lib_search_path $shlib_search_path"
          else
            searchdirs="$newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path"
@@ -6194,31 +7641,22 @@ func_mode_link ()
          for searchdir in $searchdirs; do
            for search_ext in .la $std_shrext .so .a; do
              # Search the libtool library
-             lib="$searchdir/lib${name}${search_ext}"
+             lib=$searchdir/lib$name$search_ext
              if test -f "$lib"; then
-               if test "$search_ext" = ".la"; then
-                 found=yes
+               if test .la = "$search_ext"; then
+                 found=:
                else
-                 found=no
+                 found=false
                fi
                break 2
              fi
            done
          done
-         if test "$found" != yes; then
-           # deplib doesn't seem to be a libtool library
-           if test "$linkmode,$pass" = "prog,link"; then
-             compile_deplibs="$deplib $compile_deplibs"
-             finalize_deplibs="$deplib $finalize_deplibs"
-           else
-             deplibs="$deplib $deplibs"
-             test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs"
-           fi
-           continue
-         else # deplib is a libtool library
+         if $found; then
+           # deplib is a libtool library
            # If $allow_libtool_libs_with_static_runtimes && $deplib is a stdlib,
            # We need to do some special things here, and not later.
-           if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
+           if test yes = "$allow_libtool_libs_with_static_runtimes"; then
              case " $predeps $postdeps " in
              *" $deplib "*)
                if func_lalib_p "$lib"; then
@@ -6226,19 +7664,19 @@ func_mode_link ()
                  old_library=
                  func_source "$lib"
                  for l in $old_library $library_names; do
-                   ll="$l"
+                   ll=$l
                  done
-                 if test "X$ll" = "X$old_library" ; then # only static version available
-                   found=no
+                 if test "X$ll" = "X$old_library"; then # only static version available
+                   found=false
                    func_dirname "$lib" "" "."
-                   ladir="$func_dirname_result"
+                   ladir=$func_dirname_result
                    lib=$ladir/$old_library
-                   if test "$linkmode,$pass" = "prog,link"; then
+                   if test prog,link = "$linkmode,$pass"; then
                      compile_deplibs="$deplib $compile_deplibs"
                      finalize_deplibs="$deplib $finalize_deplibs"
                    else
                      deplibs="$deplib $deplibs"
-                     test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs"
+                     test lib = "$linkmode" && newdependency_libs="$deplib $newdependency_libs"
                    fi
                    continue
                  fi
@@ -6247,15 +7685,25 @@ func_mode_link ()
              *) ;;
              esac
            fi
+         else
+           # deplib doesn't seem to be a libtool library
+           if test prog,link = "$linkmode,$pass"; then
+             compile_deplibs="$deplib $compile_deplibs"
+             finalize_deplibs="$deplib $finalize_deplibs"
+           else
+             deplibs="$deplib $deplibs"
+             test lib = "$linkmode" && newdependency_libs="$deplib $newdependency_libs"
+           fi
+           continue
          fi
          ;; # -l
        *.ltframework)
-         if test "$linkmode,$pass" = "prog,link"; then
+         if test prog,link = "$linkmode,$pass"; then
            compile_deplibs="$deplib $compile_deplibs"
            finalize_deplibs="$deplib $finalize_deplibs"
          else
            deplibs="$deplib $deplibs"
-           if test "$linkmode" = lib ; then
+           if test lib = "$linkmode"; then
                case "$new_inherited_linker_flags " in
                    *" $deplib "*) ;;
                    * ) func_append new_inherited_linker_flags " $deplib" ;;
@@ -6268,18 +7716,18 @@ func_mode_link ()
          case $linkmode in
          lib)
            deplibs="$deplib $deplibs"
-           test "$pass" = conv && continue
+           test conv = "$pass" && continue
            newdependency_libs="$deplib $newdependency_libs"
            func_stripname '-L' '' "$deplib"
            func_resolve_sysroot "$func_stripname_result"
            func_append newlib_search_path " $func_resolve_sysroot_result"
            ;;
          prog)
-           if test "$pass" = conv; then
+           if test conv = "$pass"; then
              deplibs="$deplib $deplibs"
              continue
            fi
-           if test "$pass" = scan; then
+           if test scan = "$pass"; then
              deplibs="$deplib $deplibs"
            else
              compile_deplibs="$deplib $compile_deplibs"
@@ -6290,13 +7738,13 @@ func_mode_link ()
            func_append newlib_search_path " $func_resolve_sysroot_result"
            ;;
          *)
-           func_warning "\`-L' is ignored for archives/objects"
+           func_warning "'-L' is ignored for archives/objects"
            ;;
          esac # linkmode
          continue
          ;; # -L
        -R*)
-         if test "$pass" = link; then
+         if test link = "$pass"; then
            func_stripname '-R' '' "$deplib"
            func_resolve_sysroot "$func_stripname_result"
            dir=$func_resolve_sysroot_result
@@ -6314,7 +7762,7 @@ func_mode_link ()
          lib=$func_resolve_sysroot_result
          ;;
        *.$libext)
-         if test "$pass" = conv; then
+         if test conv = "$pass"; then
            deplibs="$deplib $deplibs"
            continue
          fi
@@ -6325,21 +7773,26 @@ func_mode_link ()
            case " $dlpreconveniencelibs " in
            *" $deplib "*) ;;
            *)
-             valid_a_lib=no
+             valid_a_lib=false
              case $deplibs_check_method in
                match_pattern*)
                  set dummy $deplibs_check_method; shift
                  match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"`
                  if eval "\$ECHO \"$deplib\"" 2>/dev/null | $SED 10q \
                    | $EGREP "$match_pattern_regex" > /dev/null; then
-                   valid_a_lib=yes
+                   valid_a_lib=:
                  fi
                ;;
                pass_all)
-                 valid_a_lib=yes
+                 valid_a_lib=:
                ;;
              esac
-             if test "$valid_a_lib" != yes; then
+             if $valid_a_lib; then
+               echo
+               $ECHO "*** Warning: Linking the shared library $output against the"
+               $ECHO "*** static library $deplib is not portable!"
+               deplibs="$deplib $deplibs"
+             else
                echo
                $ECHO "*** Warning: Trying to link with static lib archive $deplib."
                echo "*** I have the capability to make that library automatically link in when"
@@ -6347,18 +7800,13 @@ func_mode_link ()
                echo "*** shared version of the library, which you do not appear to have"
                echo "*** because the file extensions .$libext of this argument makes me believe"
                echo "*** that it is just a static archive that I should not use here."
-             else
-               echo
-               $ECHO "*** Warning: Linking the shared library $output against the"
-               $ECHO "*** static library $deplib is not portable!"
-               deplibs="$deplib $deplibs"
              fi
              ;;
            esac
            continue
            ;;
          prog)
-           if test "$pass" != link; then
+           if test link != "$pass"; then
              deplibs="$deplib $deplibs"
            else
              compile_deplibs="$deplib $compile_deplibs"
@@ -6369,10 +7817,10 @@ func_mode_link ()
          esac # linkmode
          ;; # *.$libext
        *.lo | *.$objext)
-         if test "$pass" = conv; then
+         if test conv = "$pass"; then
            deplibs="$deplib $deplibs"
-         elif test "$linkmode" = prog; then
-           if test "$pass" = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then
+         elif test prog = "$linkmode"; then
+           if test dlpreopen = "$pass" || test yes != "$dlopen_support" || test no = "$build_libtool_libs"; then
              # If there is no dlopen support or we're linking statically,
              # we need to preload.
              func_append newdlprefiles " $deplib"
@@ -6385,22 +7833,20 @@ func_mode_link ()
          continue
          ;;
        %DEPLIBS%)
-         alldeplibs=yes
+         alldeplibs=:
          continue
          ;;
        esac # case $deplib
 
-       if test "$found" = yes || test -f "$lib"; then :
-       else
-         func_fatal_error "cannot find the library \`$lib' or unhandled argument \`$deplib'"
-       fi
+       $found || test -f "$lib" \
+         || func_fatal_error "cannot find the library '$lib' or unhandled argument '$deplib'"
 
        # Check to see that this really is a libtool archive.
        func_lalib_unsafe_p "$lib" \
-         || func_fatal_error "\`$lib' is not a valid libtool archive"
+         || func_fatal_error "'$lib' is not a valid libtool archive"
 
        func_dirname "$lib" "" "."
-       ladir="$func_dirname_result"
+       ladir=$func_dirname_result
 
        dlname=
        dlopen=
@@ -6430,19 +7876,19 @@ func_mode_link ()
          done
        fi
        dependency_libs=`$ECHO " $dependency_libs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
-       if test "$linkmode,$pass" = "lib,link" ||
-          test "$linkmode,$pass" = "prog,scan" ||
-          { test "$linkmode" != prog && test "$linkmode" != lib; }; then
+       if test lib,link = "$linkmode,$pass" ||
+          test prog,scan = "$linkmode,$pass" ||
+          { test prog != "$linkmode" && test lib != "$linkmode"; }; then
          test -n "$dlopen" && func_append dlfiles " $dlopen"
          test -n "$dlpreopen" && func_append dlprefiles " $dlpreopen"
        fi
 
-       if test "$pass" = conv; then
+       if test conv = "$pass"; then
          # Only check for convenience libraries
          deplibs="$lib $deplibs"
          if test -z "$libdir"; then
            if test -z "$old_library"; then
-             func_fatal_error "cannot find name of link library for \`$lib'"
+             func_fatal_error "cannot find name of link library for '$lib'"
            fi
            # It is a libtool convenience library, so add in its objects.
            func_append convenience " $ladir/$objdir/$old_library"
@@ -6450,15 +7896,15 @@ func_mode_link ()
            tmp_libs=
            for deplib in $dependency_libs; do
              deplibs="$deplib $deplibs"
-             if $opt_preserve_dup_deps ; then
+             if $opt_preserve_dup_deps; then
                case "$tmp_libs " in
                *" $deplib "*) func_append specialdeplibs " $deplib" ;;
                esac
              fi
              func_append tmp_libs " $deplib"
            done
-         elif test "$linkmode" != prog && test "$linkmode" != lib; then
-           func_fatal_error "\`$lib' is not a convenience library"
+         elif test prog != "$linkmode" && test lib != "$linkmode"; then
+           func_fatal_error "'$lib' is not a convenience library"
          fi
          continue
        fi # $pass = conv
@@ -6467,26 +7913,26 @@ func_mode_link ()
        # Get the name of the library we link against.
        linklib=
        if test -n "$old_library" &&
-          { test "$prefer_static_libs" = yes ||
-            test "$prefer_static_libs,$installed" = "built,no"; }; then
+          { test yes = "$prefer_static_libs" ||
+            test built,no = "$prefer_static_libs,$installed"; }; then
          linklib=$old_library
        else
          for l in $old_library $library_names; do
-           linklib="$l"
+           linklib=$l
          done
        fi
        if test -z "$linklib"; then
-         func_fatal_error "cannot find name of link library for \`$lib'"
+         func_fatal_error "cannot find name of link library for '$lib'"
        fi
 
        # This library was specified with -dlopen.
-       if test "$pass" = dlopen; then
-         if test -z "$libdir"; then
-           func_fatal_error "cannot -dlopen a convenience library: \`$lib'"
-         fi
+       if test dlopen = "$pass"; then
+         test -z "$libdir" \
+           && func_fatal_error "cannot -dlopen a convenience library: '$lib'"
          if test -z "$dlname" ||
-            test "$dlopen_support" != yes ||
-            test "$build_libtool_libs" = no; then
+            test yes != "$dlopen_support" ||
+            test no = "$build_libtool_libs"
+         then
            # If there is no dlname, no dlopen support or we're linking
            # statically, we need to preload.  We also need to preload any
            # dependent libraries so libltdl's deplib preloader doesn't
@@ -6500,40 +7946,40 @@ func_mode_link ()
 
        # We need an absolute path.
        case $ladir in
-       [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;;
+       [\\/]* | [A-Za-z]:[\\/]*) abs_ladir=$ladir ;;
        *)
          abs_ladir=`cd "$ladir" && pwd`
          if test -z "$abs_ladir"; then
-           func_warning "cannot determine absolute directory name of \`$ladir'"
+           func_warning "cannot determine absolute directory name of '$ladir'"
            func_warning "passing it literally to the linker, although it might fail"
-           abs_ladir="$ladir"
+           abs_ladir=$ladir
          fi
          ;;
        esac
        func_basename "$lib"
-       laname="$func_basename_result"
+       laname=$func_basename_result
 
        # Find the relevant object directory and library name.
-       if test "X$installed" = Xyes; then
+       if test yes = "$installed"; then
          if test ! -f "$lt_sysroot$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then
-           func_warning "library \`$lib' was moved."
-           dir="$ladir"
-           absdir="$abs_ladir"
-           libdir="$abs_ladir"
+           func_warning "library '$lib' was moved."
+           dir=$ladir
+           absdir=$abs_ladir
+           libdir=$abs_ladir
          else
-           dir="$lt_sysroot$libdir"
-           absdir="$lt_sysroot$libdir"
+           dir=$lt_sysroot$libdir
+           absdir=$lt_sysroot$libdir
          fi
-         test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes
+         test yes = "$hardcode_automatic" && avoidtemprpath=yes
        else
          if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then
-           dir="$ladir"
-           absdir="$abs_ladir"
+           dir=$ladir
+           absdir=$abs_ladir
            # Remove this search path later
            func_append notinst_path " $abs_ladir"
          else
-           dir="$ladir/$objdir"
-           absdir="$abs_ladir/$objdir"
+           dir=$ladir/$objdir
+           absdir=$abs_ladir/$objdir
            # Remove this search path later
            func_append notinst_path " $abs_ladir"
          fi
@@ -6542,11 +7988,11 @@ func_mode_link ()
        name=$func_stripname_result
 
        # This library was specified with -dlpreopen.
-       if test "$pass" = dlpreopen; then
-         if test -z "$libdir" && test "$linkmode" = prog; then
-           func_fatal_error "only libraries may -dlpreopen a convenience library: \`$lib'"
+       if test dlpreopen = "$pass"; then
+         if test -z "$libdir" && test prog = "$linkmode"; then
+           func_fatal_error "only libraries may -dlpreopen a convenience library: '$lib'"
          fi
-         case "$host" in
+         case $host in
            # special handling for platforms with PE-DLLs.
            *cygwin* | *mingw* | *cegcc* )
              # Linker will automatically link against shared library if both
@@ -6590,9 +8036,9 @@ func_mode_link ()
 
        if test -z "$libdir"; then
          # Link the convenience library
-         if test "$linkmode" = lib; then
+         if test lib = "$linkmode"; then
            deplibs="$dir/$old_library $deplibs"
-         elif test "$linkmode,$pass" = "prog,link"; then
+         elif test prog,link = "$linkmode,$pass"; then
            compile_deplibs="$dir/$old_library $compile_deplibs"
            finalize_deplibs="$dir/$old_library $finalize_deplibs"
          else
@@ -6602,14 +8048,14 @@ func_mode_link ()
        fi
 
 
-       if test "$linkmode" = prog && test "$pass" != link; then
+       if test prog = "$linkmode" && test link != "$pass"; then
          func_append newlib_search_path " $ladir"
          deplibs="$lib $deplibs"
 
-         linkalldeplibs=no
-         if test "$link_all_deplibs" != no || test -z "$library_names" ||
-            test "$build_libtool_libs" = no; then
-           linkalldeplibs=yes
+         linkalldeplibs=false
+         if test no != "$link_all_deplibs" || test -z "$library_names" ||
+            test no = "$build_libtool_libs"; then
+           linkalldeplibs=:
          fi
 
          tmp_libs=
@@ -6621,14 +8067,14 @@ func_mode_link ()
                 ;;
            esac
            # Need to link against all dependency_libs?
-           if test "$linkalldeplibs" = yes; then
+           if $linkalldeplibs; then
              deplibs="$deplib $deplibs"
            else
              # Need to hardcode shared library paths
              # or/and link against static libraries
              newdependency_libs="$deplib $newdependency_libs"
            fi
-           if $opt_preserve_dup_deps ; then
+           if $opt_preserve_dup_deps; then
              case "$tmp_libs " in
              *" $deplib "*) func_append specialdeplibs " $deplib" ;;
              esac
@@ -6638,15 +8084,15 @@ func_mode_link ()
          continue
        fi # $linkmode = prog...
 
-       if test "$linkmode,$pass" = "prog,link"; then
+       if test prog,link = "$linkmode,$pass"; then
          if test -n "$library_names" &&
-            { { test "$prefer_static_libs" = no ||
-                test "$prefer_static_libs,$installed" = "built,yes"; } ||
+            { { test no = "$prefer_static_libs" ||
+                test built,yes = "$prefer_static_libs,$installed"; } ||
               test -z "$old_library"; }; then
            # We need to hardcode the library path
-           if test -n "$shlibpath_var" && test -z "$avoidtemprpath" ; then
+           if test -n "$shlibpath_var" && test -z "$avoidtemprpath"; then
              # Make sure the rpath contains only unique directories.
-             case "$temp_rpath:" in
+             case $temp_rpath: in
              *"$absdir:"*) ;;
              *) func_append temp_rpath "$absdir:" ;;
              esac
@@ -6675,9 +8121,9 @@ func_mode_link ()
            esac
          fi # $linkmode,$pass = prog,link...
 
-         if test "$alldeplibs" = yes &&
-            { test "$deplibs_check_method" = pass_all ||
-              { test "$build_libtool_libs" = yes &&
+         if $alldeplibs &&
+            { test pass_all = "$deplibs_check_method" ||
+              { test yes = "$build_libtool_libs" &&
                 test -n "$library_names"; }; }; then
            # We only need to search for static libraries
            continue
@@ -6686,19 +8132,19 @@ func_mode_link ()
 
        link_static=no # Whether the deplib will be linked statically
        use_static_libs=$prefer_static_libs
-       if test "$use_static_libs" = built && test "$installed" = yes; then
+       if test built = "$use_static_libs" && test yes = "$installed"; then
          use_static_libs=no
        fi
        if test -n "$library_names" &&
-          { test "$use_static_libs" = no || test -z "$old_library"; }; then
+          { test no = "$use_static_libs" || test -z "$old_library"; }; then
          case $host in
-         *cygwin* | *mingw* | *cegcc*)
+         *cygwin* | *mingw* | *cegcc* | *os2*)
              # No point in relinking DLLs because paths are not encoded
              func_append notinst_deplibs " $lib"
              need_relink=no
            ;;
          *)
-           if test "$installed" = no; then
+           if test no = "$installed"; then
              func_append notinst_deplibs " $lib"
              need_relink=yes
            fi
@@ -6708,24 +8154,24 @@ func_mode_link ()
 
          # Warn about portability, can't link against -module's on some
          # systems (darwin).  Don't bleat about dlopened modules though!
-         dlopenmodule=""
+         dlopenmodule=
          for dlpremoduletest in $dlprefiles; do
            if test "X$dlpremoduletest" = "X$lib"; then
-             dlopenmodule="$dlpremoduletest"
+             dlopenmodule=$dlpremoduletest
              break
            fi
          done
-         if test -z "$dlopenmodule" && test "$shouldnotlink" = yes && test "$pass" = link; then
+         if test -z "$dlopenmodule" && test yes = "$shouldnotlink" && test link = "$pass"; then
            echo
-           if test "$linkmode" = prog; then
+           if test prog = "$linkmode"; then
              $ECHO "*** Warning: Linking the executable $output against the loadable module"
            else
              $ECHO "*** Warning: Linking the shared library $output against the loadable module"
            fi
            $ECHO "*** $linklib is not portable!"
          fi
-         if test "$linkmode" = lib &&
-            test "$hardcode_into_libs" = yes; then
+         if test lib = "$linkmode" &&
+            test yes = "$hardcode_into_libs"; then
            # Hardcode the library path.
            # Skip directories that are in the system default run-time
            # search path.
@@ -6753,43 +8199,43 @@ func_mode_link ()
            # figure out the soname
            set dummy $library_names
            shift
-           realname="$1"
+           realname=$1
            shift
            libname=`eval "\\$ECHO \"$libname_spec\""`
            # use dlname if we got it. it's perfectly good, no?
            if test -n "$dlname"; then
-             soname="$dlname"
+             soname=$dlname
            elif test -n "$soname_spec"; then
              # bleh windows
              case $host in
-             *cygwin* | mingw* | *cegcc*)
+             *cygwin* | mingw* | *cegcc* | *os2*)
                func_arith $current - $age
                major=$func_arith_result
-               versuffix="-$major"
+               versuffix=-$major
                ;;
              esac
              eval soname=\"$soname_spec\"
            else
-             soname="$realname"
+             soname=$realname
            fi
 
            # Make a new name for the extract_expsyms_cmds to use
-           soroot="$soname"
+           soroot=$soname
            func_basename "$soroot"
-           soname="$func_basename_result"
+           soname=$func_basename_result
            func_stripname 'lib' '.dll' "$soname"
            newlib=libimp-$func_stripname_result.a
 
            # If the library has no export list, then create one now
            if test -f "$output_objdir/$soname-def"; then :
            else
-             func_verbose "extracting exported symbol list from \`$soname'"
+             func_verbose "extracting exported symbol list from '$soname'"
              func_execute_cmds "$extract_expsyms_cmds" 'exit $?'
            fi
 
            # Create $newlib
            if test -f "$output_objdir/$newlib"; then :; else
-             func_verbose "generating import library for \`$soname'"
+             func_verbose "generating import library for '$soname'"
              func_execute_cmds "$old_archive_from_expsyms_cmds" 'exit $?'
            fi
            # make sure the library variables are pointing to the new library
@@ -6797,58 +8243,58 @@ func_mode_link ()
            linklib=$newlib
          fi # test -n "$old_archive_from_expsyms_cmds"
 
-         if test "$linkmode" = prog || test "$opt_mode" != relink; then
+         if test prog = "$linkmode" || test relink != "$opt_mode"; then
            add_shlibpath=
            add_dir=
            add=
            lib_linked=yes
            case $hardcode_action in
            immediate | unsupported)
-             if test "$hardcode_direct" = no; then
-               add="$dir/$linklib"
+             if test no = "$hardcode_direct"; then
+               add=$dir/$linklib
                case $host in
-                 *-*-sco3.2v5.0.[024]*) add_dir="-L$dir" ;;
-                 *-*-sysv4*uw2*) add_dir="-L$dir" ;;
+                 *-*-sco3.2v5.0.[024]*) add_dir=-L$dir ;;
+                 *-*-sysv4*uw2*) add_dir=-L$dir ;;
                  *-*-sysv5OpenUNIX* | *-*-sysv5UnixWare7.[01].[10]* | \
-                   *-*-unixware7*) add_dir="-L$dir" ;;
+                   *-*-unixware7*) add_dir=-L$dir ;;
                  *-*-darwin* )
-                   # if the lib is a (non-dlopened) module then we can not
+                   # if the lib is a (non-dlopened) module then we cannot
                    # link against it, someone is ignoring the earlier warnings
                    if /usr/bin/file -L $add 2> /dev/null |
-                        $GREP ": [^:]* bundle" >/dev/null ; then
+                        $GREP ": [^:]* bundle" >/dev/null; then
                      if test "X$dlopenmodule" != "X$lib"; then
                        $ECHO "*** Warning: lib $linklib is a module, not a shared library"
-                       if test -z "$old_library" ; then
+                       if test -z "$old_library"; then
                          echo
                          echo "*** And there doesn't seem to be a static archive available"
                          echo "*** The link will probably fail, sorry"
                        else
-                         add="$dir/$old_library"
+                         add=$dir/$old_library
                        fi
                      elif test -n "$old_library"; then
-                       add="$dir/$old_library"
+                       add=$dir/$old_library
                      fi
                    fi
                esac
-             elif test "$hardcode_minus_L" = no; then
+             elif test no = "$hardcode_minus_L"; then
                case $host in
-               *-*-sunos*) add_shlibpath="$dir" ;;
+               *-*-sunos*) add_shlibpath=$dir ;;
                esac
-               add_dir="-L$dir"
-               add="-l$name"
-             elif test "$hardcode_shlibpath_var" = no; then
-               add_shlibpath="$dir"
-               add="-l$name"
+               add_dir=-L$dir
+               add=-l$name
+             elif test no = "$hardcode_shlibpath_var"; then
+               add_shlibpath=$dir
+               add=-l$name
              else
                lib_linked=no
              fi
              ;;
            relink)
-             if test "$hardcode_direct" = yes &&
-                test "$hardcode_direct_absolute" = no; then
-               add="$dir/$linklib"
-             elif test "$hardcode_minus_L" = yes; then
-               add_dir="-L$absdir"
+             if test yes = "$hardcode_direct" &&
+                test no = "$hardcode_direct_absolute"; then
+               add=$dir/$linklib
+             elif test yes = "$hardcode_minus_L"; then
+               add_dir=-L$absdir
                # Try looking first in the location we're being installed to.
                if test -n "$inst_prefix_dir"; then
                  case $libdir in
@@ -6857,10 +8303,10 @@ func_mode_link ()
                      ;;
                  esac
                fi
-               add="-l$name"
-             elif test "$hardcode_shlibpath_var" = yes; then
-               add_shlibpath="$dir"
-               add="-l$name"
+               add=-l$name
+             elif test yes = "$hardcode_shlibpath_var"; then
+               add_shlibpath=$dir
+               add=-l$name
              else
                lib_linked=no
              fi
@@ -6868,7 +8314,7 @@ func_mode_link ()
            *) lib_linked=no ;;
            esac
 
-           if test "$lib_linked" != yes; then
+           if test yes != "$lib_linked"; then
              func_fatal_configuration "unsupported hardcode properties"
            fi
 
@@ -6878,15 +8324,15 @@ func_mode_link ()
              *) func_append compile_shlibpath "$add_shlibpath:" ;;
              esac
            fi
-           if test "$linkmode" = prog; then
+           if test prog = "$linkmode"; then
              test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs"
              test -n "$add" && compile_deplibs="$add $compile_deplibs"
            else
              test -n "$add_dir" && deplibs="$add_dir $deplibs"
              test -n "$add" && deplibs="$add $deplibs"
-             if test "$hardcode_direct" != yes &&
-                test "$hardcode_minus_L" != yes &&
-                test "$hardcode_shlibpath_var" = yes; then
+             if test yes != "$hardcode_direct" &&
+                test yes != "$hardcode_minus_L" &&
+                test yes = "$hardcode_shlibpath_var"; then
                case :$finalize_shlibpath: in
                *":$libdir:"*) ;;
                *) func_append finalize_shlibpath "$libdir:" ;;
@@ -6895,33 +8341,33 @@ func_mode_link ()
            fi
          fi
 
-         if test "$linkmode" = prog || test "$opt_mode" = relink; then
+         if test prog = "$linkmode" || test relink = "$opt_mode"; then
            add_shlibpath=
            add_dir=
            add=
            # Finalize command for both is simple: just hardcode it.
-           if test "$hardcode_direct" = yes &&
-              test "$hardcode_direct_absolute" = no; then
-             add="$libdir/$linklib"
-           elif test "$hardcode_minus_L" = yes; then
-             add_dir="-L$libdir"
-             add="-l$name"
-           elif test "$hardcode_shlibpath_var" = yes; then
+           if test yes = "$hardcode_direct" &&
+              test no = "$hardcode_direct_absolute"; then
+             add=$libdir/$linklib
+           elif test yes = "$hardcode_minus_L"; then
+             add_dir=-L$libdir
+             add=-l$name
+           elif test yes = "$hardcode_shlibpath_var"; then
              case :$finalize_shlibpath: in
              *":$libdir:"*) ;;
              *) func_append finalize_shlibpath "$libdir:" ;;
              esac
-             add="-l$name"
-           elif test "$hardcode_automatic" = yes; then
+             add=-l$name
+           elif test yes = "$hardcode_automatic"; then
              if test -n "$inst_prefix_dir" &&
-                test -f "$inst_prefix_dir$libdir/$linklib" ; then
-               add="$inst_prefix_dir$libdir/$linklib"
+                test -f "$inst_prefix_dir$libdir/$linklib"; then
+               add=$inst_prefix_dir$libdir/$linklib
              else
-               add="$libdir/$linklib"
+               add=$libdir/$linklib
              fi
            else
              # We cannot seem to hardcode it, guess we'll fake it.
-             add_dir="-L$libdir"
+             add_dir=-L$libdir
              # Try looking first in the location we're being installed to.
              if test -n "$inst_prefix_dir"; then
                case $libdir in
@@ -6930,10 +8376,10 @@ func_mode_link ()
                    ;;
                esac
              fi
-             add="-l$name"
+             add=-l$name
            fi
 
-           if test "$linkmode" = prog; then
+           if test prog = "$linkmode"; then
              test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs"
              test -n "$add" && finalize_deplibs="$add $finalize_deplibs"
            else
@@ -6941,43 +8387,43 @@ func_mode_link ()
              test -n "$add" && deplibs="$add $deplibs"
            fi
          fi
-       elif test "$linkmode" = prog; then
+       elif test prog = "$linkmode"; then
          # Here we assume that one of hardcode_direct or hardcode_minus_L
          # is not unsupported.  This is valid on all known static and
          # shared platforms.
-         if test "$hardcode_direct" != unsupported; then
-           test -n "$old_library" && linklib="$old_library"
+         if test unsupported != "$hardcode_direct"; then
+           test -n "$old_library" && linklib=$old_library
            compile_deplibs="$dir/$linklib $compile_deplibs"
            finalize_deplibs="$dir/$linklib $finalize_deplibs"
          else
            compile_deplibs="-l$name -L$dir $compile_deplibs"
            finalize_deplibs="-l$name -L$dir $finalize_deplibs"
          fi
-       elif test "$build_libtool_libs" = yes; then
+       elif test yes = "$build_libtool_libs"; then
          # Not a shared library
-         if test "$deplibs_check_method" != pass_all; then
+         if test pass_all != "$deplibs_check_method"; then
            # We're trying link a shared library against a static one
            # but the system doesn't support it.
 
            # Just print a warning and add the library to dependency_libs so
            # that the program can be linked against the static library.
            echo
-           $ECHO "*** Warning: This system can not link to static lib archive $lib."
+           $ECHO "*** Warning: This system cannot link to static lib archive $lib."
            echo "*** I have the capability to make that library automatically link in when"
            echo "*** you link to this library.  But I can only do this if you have a"
            echo "*** shared version of the library, which you do not appear to have."
-           if test "$module" = yes; then
+           if test yes = "$module"; then
              echo "*** But as you try to build a module library, libtool will still create "
              echo "*** a static module, that should work as long as the dlopening application"
              echo "*** is linked with the -dlopen flag to resolve symbols at runtime."
              if test -z "$global_symbol_pipe"; then
                echo
                echo "*** However, this would only work if libtool was able to extract symbol"
-               echo "*** lists from a program, using \`nm' or equivalent, but libtool could"
+               echo "*** lists from a program, using 'nm' or equivalent, but libtool could"
                echo "*** not find such a program.  So, this module is probably useless."
-               echo "*** \`nm' from GNU binutils and a full rebuild may help."
+               echo "*** 'nm' from GNU binutils and a full rebuild may help."
              fi
-             if test "$build_old_libs" = no; then
+             if test no = "$build_old_libs"; then
                build_libtool_libs=module
                build_old_libs=yes
              else
@@ -6990,11 +8436,11 @@ func_mode_link ()
          fi
        fi # link shared/static library?
 
-       if test "$linkmode" = lib; then
+       if test lib = "$linkmode"; then
          if test -n "$dependency_libs" &&
-            { test "$hardcode_into_libs" != yes ||
-              test "$build_old_libs" = yes ||
-              test "$link_static" = yes; }; then
+            { test yes != "$hardcode_into_libs" ||
+              test yes = "$build_old_libs" ||
+              test yes = "$link_static"; }; then
            # Extract -R from dependency_libs
            temp_deplibs=
            for libdir in $dependency_libs; do
@@ -7008,12 +8454,12 @@ func_mode_link ()
              *) func_append temp_deplibs " $libdir";;
              esac
            done
-           dependency_libs="$temp_deplibs"
+           dependency_libs=$temp_deplibs
          fi
 
          func_append newlib_search_path " $absdir"
          # Link against this library
-         test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs"
+         test no = "$link_static" && newdependency_libs="$abs_ladir/$laname $newdependency_libs"
          # ... and its dependency_libs
          tmp_libs=
          for deplib in $dependency_libs; do
@@ -7023,7 +8469,7 @@ func_mode_link ()
                    func_resolve_sysroot "$func_stripname_result";;
               *) func_resolve_sysroot "$deplib" ;;
             esac
-           if $opt_preserve_dup_deps ; then
+           if $opt_preserve_dup_deps; then
              case "$tmp_libs " in
              *" $func_resolve_sysroot_result "*)
                 func_append specialdeplibs " $func_resolve_sysroot_result" ;;
@@ -7032,12 +8478,12 @@ func_mode_link ()
            func_append tmp_libs " $func_resolve_sysroot_result"
          done
 
-         if test "$link_all_deplibs" != no; then
+         if test no != "$link_all_deplibs"; then
            # Add the search paths of all dependency libraries
            for deplib in $dependency_libs; do
              path=
              case $deplib in
-             -L*) path="$deplib" ;;
+             -L*) path=$deplib ;;
              *.la)
                func_resolve_sysroot "$deplib"
                deplib=$func_resolve_sysroot_result
@@ -7045,12 +8491,12 @@ func_mode_link ()
                dir=$func_dirname_result
                # We need an absolute path.
                case $dir in
-               [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;;
+               [\\/]* | [A-Za-z]:[\\/]*) absdir=$dir ;;
                *)
                  absdir=`cd "$dir" && pwd`
                  if test -z "$absdir"; then
-                   func_warning "cannot determine absolute directory name of \`$dir'"
-                   absdir="$dir"
+                   func_warning "cannot determine absolute directory name of '$dir'"
+                   absdir=$dir
                  fi
                  ;;
                esac
@@ -7058,35 +8504,35 @@ func_mode_link ()
                case $host in
                *-*-darwin*)
                  depdepl=
-                 eval deplibrary_names=`${SED} -n -e 's/^library_names=\(.*\)$/\1/p' $deplib`
-                 if test -n "$deplibrary_names" ; then
-                   for tmp in $deplibrary_names ; do
+                 eval deplibrary_names=`$SED -n -e 's/^library_names=\(.*\)$/\1/p' $deplib`
+                 if test -n "$deplibrary_names"; then
+                   for tmp in $deplibrary_names; do
                      depdepl=$tmp
                    done
-                   if test -f "$absdir/$objdir/$depdepl" ; then
-                     depdepl="$absdir/$objdir/$depdepl"
-                     darwin_install_name=`${OTOOL} -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'`
+                   if test -f "$absdir/$objdir/$depdepl"; then
+                     depdepl=$absdir/$objdir/$depdepl
+                     darwin_install_name=`$OTOOL -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'`
                       if test -z "$darwin_install_name"; then
-                          darwin_install_name=`${OTOOL64} -L $depdepl  | awk '{if (NR == 2) {print $1;exit}}'`
+                          darwin_install_name=`$OTOOL64 -L $depdepl  | awk '{if (NR == 2) {print $1;exit}}'`
                       fi
-                     func_append compiler_flags " ${wl}-dylib_file ${wl}${darwin_install_name}:${depdepl}"
-                     func_append linker_flags " -dylib_file ${darwin_install_name}:${depdepl}"
+                     func_append compiler_flags " $wl-dylib_file $wl$darwin_install_name:$depdepl"
+                     func_append linker_flags " -dylib_file $darwin_install_name:$depdepl"
                      path=
                    fi
                  fi
                  ;;
                *)
-                 path="-L$absdir/$objdir"
+                 path=-L$absdir/$objdir
                  ;;
                esac
                else
-                 eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
+                 eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
                  test -z "$libdir" && \
-                   func_fatal_error "\`$deplib' is not a valid libtool archive"
+                   func_fatal_error "'$deplib' is not a valid libtool archive"
                  test "$absdir" != "$libdir" && \
-                   func_warning "\`$deplib' seems to be moved"
+                   func_warning "'$deplib' seems to be moved"
 
-                 path="-L$absdir"
+                 path=-L$absdir
                fi
                ;;
              esac
@@ -7098,23 +8544,23 @@ func_mode_link ()
          fi # link_all_deplibs != no
        fi # linkmode = lib
       done # for deplib in $libs
-      if test "$pass" = link; then
-       if test "$linkmode" = "prog"; then
+      if test link = "$pass"; then
+       if test prog = "$linkmode"; then
          compile_deplibs="$new_inherited_linker_flags $compile_deplibs"
          finalize_deplibs="$new_inherited_linker_flags $finalize_deplibs"
        else
          compiler_flags="$compiler_flags "`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
        fi
       fi
-      dependency_libs="$newdependency_libs"
-      if test "$pass" = dlpreopen; then
+      dependency_libs=$newdependency_libs
+      if test dlpreopen = "$pass"; then
        # Link the dlpreopened libraries before other libraries
        for deplib in $save_deplibs; do
          deplibs="$deplib $deplibs"
        done
       fi
-      if test "$pass" != dlopen; then
-       if test "$pass" != conv; then
+      if test dlopen != "$pass"; then
+       test conv = "$pass" || {
          # Make sure lib_search_path contains only unique directories.
          lib_search_path=
          for dir in $newlib_search_path; do
@@ -7124,12 +8570,12 @@ func_mode_link ()
            esac
          done
          newlib_search_path=
-       fi
+       }
 
-       if test "$linkmode,$pass" != "prog,link"; then
-         vars="deplibs"
-       else
+       if test prog,link = "$linkmode,$pass"; then
          vars="compile_deplibs finalize_deplibs"
+       else
+         vars=deplibs
        fi
        for var in $vars dependency_libs; do
          # Add libraries to $var in reverse order
@@ -7187,62 +8633,93 @@ func_mode_link ()
          eval $var=\"$tmp_libs\"
        done # for var
       fi
+
+      # Add Sun CC postdeps if required:
+      test CXX = "$tagname" && {
+        case $host_os in
+        linux*)
+          case `$CC -V 2>&1 | sed 5q` in
+          *Sun\ C*) # Sun C++ 5.9
+            func_suncc_cstd_abi
+
+            if test no != "$suncc_use_cstd_abi"; then
+              func_append postdeps ' -library=Cstd -library=Crun'
+            fi
+            ;;
+          esac
+          ;;
+
+        solaris*)
+          func_cc_basename "$CC"
+          case $func_cc_basename_result in
+          CC* | sunCC*)
+            func_suncc_cstd_abi
+
+            if test no != "$suncc_use_cstd_abi"; then
+              func_append postdeps ' -library=Cstd -library=Crun'
+            fi
+            ;;
+          esac
+          ;;
+        esac
+      }
+
       # Last step: remove runtime libs from dependency_libs
       # (they stay in deplibs)
       tmp_libs=
-      for i in $dependency_libs ; do
+      for i in $dependency_libs; do
        case " $predeps $postdeps $compiler_lib_search_path " in
        *" $i "*)
-         i=""
+         i=
          ;;
        esac
-       if test -n "$i" ; then
+       if test -n "$i"; then
          func_append tmp_libs " $i"
        fi
       done
       dependency_libs=$tmp_libs
     done # for pass
-    if test "$linkmode" = prog; then
-      dlfiles="$newdlfiles"
+    if test prog = "$linkmode"; then
+      dlfiles=$newdlfiles
     fi
-    if test "$linkmode" = prog || test "$linkmode" = lib; then
-      dlprefiles="$newdlprefiles"
+    if test prog = "$linkmode" || test lib = "$linkmode"; then
+      dlprefiles=$newdlprefiles
     fi
 
     case $linkmode in
     oldlib)
-      if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
-       func_warning "\`-dlopen' is ignored for archives"
+      if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then
+       func_warning "'-dlopen' is ignored for archives"
       fi
 
       case " $deplibs" in
       *\ -l* | *\ -L*)
-       func_warning "\`-l' and \`-L' are ignored for archives" ;;
+       func_warning "'-l' and '-L' are ignored for archives" ;;
       esac
 
       test -n "$rpath" && \
-       func_warning "\`-rpath' is ignored for archives"
+       func_warning "'-rpath' is ignored for archives"
 
       test -n "$xrpath" && \
-       func_warning "\`-R' is ignored for archives"
+       func_warning "'-R' is ignored for archives"
 
       test -n "$vinfo" && \
-       func_warning "\`-version-info/-version-number' is ignored for archives"
+       func_warning "'-version-info/-version-number' is ignored for archives"
 
       test -n "$release" && \
-       func_warning "\`-release' is ignored for archives"
+       func_warning "'-release' is ignored for archives"
 
       test -n "$export_symbols$export_symbols_regex" && \
-       func_warning "\`-export-symbols' is ignored for archives"
+       func_warning "'-export-symbols' is ignored for archives"
 
       # Now set the variables for building old libraries.
       build_libtool_libs=no
-      oldlibs="$output"
+      oldlibs=$output
       func_append objs "$old_deplibs"
       ;;
 
     lib)
-      # Make sure we only generate libraries of the form `libNAME.la'.
+      # Make sure we only generate libraries of the form 'libNAME.la'.
       case $outputname in
       lib*)
        func_stripname 'lib' '.la' "$outputname"
@@ -7251,10 +8728,10 @@ func_mode_link ()
        eval libname=\"$libname_spec\"
        ;;
       *)
-       test "$module" = no && \
-         func_fatal_help "libtool library \`$output' must begin with \`lib'"
+       test no = "$module" \
+         && func_fatal_help "libtool library '$output' must begin with 'lib'"
 
-       if test "$need_lib_prefix" != no; then
+       if test no != "$need_lib_prefix"; then
          # Add the "lib" prefix for modules if required
          func_stripname '' '.la' "$outputname"
          name=$func_stripname_result
@@ -7268,8 +8745,8 @@ func_mode_link ()
       esac
 
       if test -n "$objs"; then
-       if test "$deplibs_check_method" != pass_all; then
-         func_fatal_error "cannot build libtool library \`$output' from non-libtool objects on this host:$objs"
+       if test pass_all != "$deplibs_check_method"; then
+         func_fatal_error "cannot build libtool library '$output' from non-libtool objects on this host:$objs"
        else
          echo
          $ECHO "*** Warning: Linking the shared library $output against the non-libtool"
@@ -7278,21 +8755,21 @@ func_mode_link ()
        fi
       fi
 
-      test "$dlself" != no && \
-       func_warning "\`-dlopen self' is ignored for libtool libraries"
+      test no = "$dlself" \
+       || func_warning "'-dlopen self' is ignored for libtool libraries"
 
       set dummy $rpath
       shift
-      test "$#" -gt 1 && \
-       func_warning "ignoring multiple \`-rpath's for a libtool library"
+      test 1 -lt "$#" \
+       && func_warning "ignoring multiple '-rpath's for a libtool library"
 
-      install_libdir="$1"
+      install_libdir=$1
 
       oldlibs=
       if test -z "$rpath"; then
-       if test "$build_libtool_libs" = yes; then
+       if test yes = "$build_libtool_libs"; then
          # Building a libtool convenience library.
-         # Some compilers have problems with a `.al' extension so
+         # Some compilers have problems with a '.al' extension so
          # convenience libraries should have the same extension an
          # archive normally would.
          oldlibs="$output_objdir/$libname.$libext $oldlibs"
@@ -7301,20 +8778,20 @@ func_mode_link ()
        fi
 
        test -n "$vinfo" && \
-         func_warning "\`-version-info/-version-number' is ignored for convenience libraries"
+         func_warning "'-version-info/-version-number' is ignored for convenience libraries"
 
        test -n "$release" && \
-         func_warning "\`-release' is ignored for convenience libraries"
+         func_warning "'-release' is ignored for convenience libraries"
       else
 
        # Parse the version information argument.
-       save_ifs="$IFS"; IFS=':'
+       save_ifs=$IFS; IFS=:
        set dummy $vinfo 0 0 0
        shift
-       IFS="$save_ifs"
+       IFS=$save_ifs
 
        test -n "$7" && \
-         func_fatal_help "too many parameters to \`-version-info'"
+         func_fatal_help "too many parameters to '-version-info'"
 
        # convert absolute version numbers to libtool ages
        # this retains compatibility with .la files and attempts
@@ -7322,45 +8799,45 @@ func_mode_link ()
 
        case $vinfo_number in
        yes)
-         number_major="$1"
-         number_minor="$2"
-         number_revision="$3"
+         number_major=$1
+         number_minor=$2
+         number_revision=$3
          #
          # There are really only two kinds -- those that
          # use the current revision as the major version
          # and those that subtract age and use age as
          # a minor version.  But, then there is irix
-         # which has an extra 1 added just for fun
+         # that has an extra 1 added just for fun
          #
          case $version_type in
          # correct linux to gnu/linux during the next big refactor
-         darwin|linux|osf|windows|none)
+         darwin|freebsd-elf|linux|osf|windows|none)
            func_arith $number_major + $number_minor
            current=$func_arith_result
-           age="$number_minor"
-           revision="$number_revision"
+           age=$number_minor
+           revision=$number_revision
            ;;
-         freebsd-aout|freebsd-elf|qnx|sunos)
-           current="$number_major"
-           revision="$number_minor"
-           age="0"
+         freebsd-aout|qnx|sunos)
+           current=$number_major
+           revision=$number_minor
+           age=0
            ;;
          irix|nonstopux)
            func_arith $number_major + $number_minor
            current=$func_arith_result
-           age="$number_minor"
-           revision="$number_minor"
+           age=$number_minor
+           revision=$number_minor
            lt_irix_increment=no
            ;;
          *)
-           func_fatal_configuration "$modename: unknown library version type \`$version_type'"
+           func_fatal_configuration "$modename: unknown library version type '$version_type'"
            ;;
          esac
          ;;
        no)
-         current="$1"
-         revision="$2"
-         age="$3"
+         current=$1
+         revision=$2
+         age=$3
          ;;
        esac
 
@@ -7368,30 +8845,30 @@ func_mode_link ()
        case $current in
        0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;;
        *)
-         func_error "CURRENT \`$current' must be a nonnegative integer"
-         func_fatal_error "\`$vinfo' is not valid version information"
+         func_error "CURRENT '$current' must be a nonnegative integer"
+         func_fatal_error "'$vinfo' is not valid version information"
          ;;
        esac
 
        case $revision in
        0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;;
        *)
-         func_error "REVISION \`$revision' must be a nonnegative integer"
-         func_fatal_error "\`$vinfo' is not valid version information"
+         func_error "REVISION '$revision' must be a nonnegative integer"
+         func_fatal_error "'$vinfo' is not valid version information"
          ;;
        esac
 
        case $age in
        0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;;
        *)
-         func_error "AGE \`$age' must be a nonnegative integer"
-         func_fatal_error "\`$vinfo' is not valid version information"
+         func_error "AGE '$age' must be a nonnegative integer"
+         func_fatal_error "'$vinfo' is not valid version information"
          ;;
        esac
 
        if test "$age" -gt "$current"; then
-         func_error "AGE \`$age' is greater than the current interface number \`$current'"
-         func_fatal_error "\`$vinfo' is not valid version information"
+         func_error "AGE '$age' is greater than the current interface number '$current'"
+         func_fatal_error "'$vinfo' is not valid version information"
        fi
 
        # Calculate the version variables.
@@ -7406,26 +8883,36 @@ func_mode_link ()
          # verstring for coding it into the library header
          func_arith $current - $age
          major=.$func_arith_result
-         versuffix="$major.$age.$revision"
+         versuffix=$major.$age.$revision
          # Darwin ld doesn't like 0 for these options...
          func_arith $current + 1
          minor_current=$func_arith_result
-         xlcverstring="${wl}-compatibility_version ${wl}$minor_current ${wl}-current_version ${wl}$minor_current.$revision"
+         xlcverstring="$wl-compatibility_version $wl$minor_current $wl-current_version $wl$minor_current.$revision"
          verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
+          # On Darwin other compilers
+          case $CC in
+              nagfor*)
+                  verstring="$wl-compatibility_version $wl$minor_current $wl-current_version $wl$minor_current.$revision"
+                  ;;
+              *)
+                  verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
+                  ;;
+          esac
          ;;
 
        freebsd-aout)
-         major=".$current"
-         versuffix=".$current.$revision";
+         major=.$current
+         versuffix=.$current.$revision
          ;;
 
        freebsd-elf)
-         major=".$current"
-         versuffix=".$current"
+         func_arith $current - $age
+         major=.$func_arith_result
+         versuffix=$major.$age.$revision
          ;;
 
        irix | nonstopux)
-         if test "X$lt_irix_increment" = "Xno"; then
+         if test no = "$lt_irix_increment"; then
            func_arith $current - $age
          else
            func_arith $current - $age + 1
@@ -7436,69 +8923,74 @@ func_mode_link ()
            nonstopux) verstring_prefix=nonstopux ;;
            *)         verstring_prefix=sgi ;;
          esac
-         verstring="$verstring_prefix$major.$revision"
+         verstring=$verstring_prefix$major.$revision
 
          # Add in all the interfaces that we are compatible with.
          loop=$revision
-         while test "$loop" -ne 0; do
+         while test 0 -ne "$loop"; do
            func_arith $revision - $loop
            iface=$func_arith_result
            func_arith $loop - 1
            loop=$func_arith_result
-           verstring="$verstring_prefix$major.$iface:$verstring"
+           verstring=$verstring_prefix$major.$iface:$verstring
          done
 
-         # Before this point, $major must not contain `.'.
+         # Before this point, $major must not contain '.'.
          major=.$major
-         versuffix="$major.$revision"
+         versuffix=$major.$revision
          ;;
 
        linux) # correct to gnu/linux during the next big refactor
          func_arith $current - $age
          major=.$func_arith_result
-         versuffix="$major.$age.$revision"
+         versuffix=$major.$age.$revision
          ;;
 
        osf)
          func_arith $current - $age
          major=.$func_arith_result
-         versuffix=".$current.$age.$revision"
-         verstring="$current.$age.$revision"
+         versuffix=.$current.$age.$revision
+         verstring=$current.$age.$revision
 
          # Add in all the interfaces that we are compatible with.
          loop=$age
-         while test "$loop" -ne 0; do
+         while test 0 -ne "$loop"; do
            func_arith $current - $loop
            iface=$func_arith_result
            func_arith $loop - 1
            loop=$func_arith_result
-           verstring="$verstring:${iface}.0"
+           verstring=$verstring:$iface.0
          done
 
          # Make executables depend on our current version.
-         func_append verstring ":${current}.0"
+         func_append verstring ":$current.0"
          ;;
 
        qnx)
-         major=".$current"
-         versuffix=".$current"
+         major=.$current
+         versuffix=.$current
+         ;;
+
+       sco)
+         major=.$current
+         versuffix=.$current
          ;;
 
        sunos)
-         major=".$current"
-         versuffix=".$current.$revision"
+         major=.$current
+         versuffix=.$current.$revision
          ;;
 
        windows)
          # Use '-' rather than '.', since we only want one
-         # extension on DOS 8.3 filesystems.
+         # extension on DOS 8.3 file systems.
          func_arith $current - $age
          major=$func_arith_result
-         versuffix="-$major"
+         versuffix=-$major
          ;;
 
        *)
-         func_fatal_configuration "unknown library version type \`$version_type'"
+         func_fatal_configuration "unknown library version type '$version_type'"
          ;;
        esac
 
@@ -7512,42 +9004,45 @@ func_mode_link ()
            verstring=
            ;;
          *)
-           verstring="0.0"
+           verstring=0.0
            ;;
          esac
-         if test "$need_version" = no; then
+         if test no = "$need_version"; then
            versuffix=
          else
-           versuffix=".0.0"
+           versuffix=.0.0
          fi
        fi
 
        # Remove version info from name if versioning should be avoided
-       if test "$avoid_version" = yes && test "$need_version" = no; then
+       if test yes,no = "$avoid_version,$need_version"; then
          major=
          versuffix=
-         verstring=""
+         verstring=
        fi
 
        # Check to see if the archive will have undefined symbols.
-       if test "$allow_undefined" = yes; then
-         if test "$allow_undefined_flag" = unsupported; then
-           func_warning "undefined symbols not allowed in $host shared libraries"
-           build_libtool_libs=no
-           build_old_libs=yes
+       if test yes = "$allow_undefined"; then
+         if test unsupported = "$allow_undefined_flag"; then
+           if test yes = "$build_old_libs"; then
+             func_warning "undefined symbols not allowed in $host shared libraries; building static only"
+             build_libtool_libs=no
+           else
+             func_fatal_error "can't build $host shared library unless -no-undefined is specified"
+           fi
          fi
        else
          # Don't allow undefined symbols.
-         allow_undefined_flag="$no_undefined_flag"
+         allow_undefined_flag=$no_undefined_flag
        fi
 
       fi
 
-      func_generate_dlsyms "$libname" "$libname" "yes"
+      func_generate_dlsyms "$libname" "$libname" :
       func_append libobjs " $symfileobj"
-      test "X$libobjs" = "X " && libobjs=
+      test " " = "$libobjs" && libobjs=
 
-      if test "$opt_mode" != relink; then
+      if test relink != "$opt_mode"; then
        # Remove our outputs, but don't remove object files since they
        # may have been created when compiling PIC objects.
        removelist=
@@ -7556,8 +9051,8 @@ func_mode_link ()
          case $p in
            *.$objext | *.gcno)
               ;;
-           $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/${libname}${release}.*)
-              if test "X$precious_files_regex" != "X"; then
+           $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/$libname$release.*)
+              if test -n "$precious_files_regex"; then
                 if $ECHO "$p" | $EGREP -e "$precious_files_regex" >/dev/null 2>&1
                 then
                   continue
@@ -7573,11 +9068,11 @@ func_mode_link ()
       fi
 
       # Now set the variables for building old libraries.
-      if test "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; then
+      if test yes = "$build_old_libs" && test convenience != "$build_libtool_libs"; then
        func_append oldlibs " $output_objdir/$libname.$libext"
 
        # Transform .lo files to .o files.
-       oldobjs="$objs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.${libext}$/d; $lo2o" | $NL2SP`
+       oldobjs="$objs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.$libext$/d; $lo2o" | $NL2SP`
       fi
 
       # Eliminate all temporary directories.
@@ -7598,13 +9093,13 @@ func_mode_link ()
          *) func_append finalize_rpath " $libdir" ;;
          esac
        done
-       if test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes; then
+       if test yes != "$hardcode_into_libs" || test yes = "$build_old_libs"; then
          dependency_libs="$temp_xrpath $dependency_libs"
        fi
       fi
 
       # Make sure dlfiles contains only unique files that won't be dlpreopened
-      old_dlfiles="$dlfiles"
+      old_dlfiles=$dlfiles
       dlfiles=
       for lib in $old_dlfiles; do
        case " $dlprefiles $dlfiles " in
@@ -7614,7 +9109,7 @@ func_mode_link ()
       done
 
       # Make sure dlprefiles contains only unique files
-      old_dlprefiles="$dlprefiles"
+      old_dlprefiles=$dlprefiles
       dlprefiles=
       for lib in $old_dlprefiles; do
        case "$dlprefiles " in
@@ -7623,7 +9118,7 @@ func_mode_link ()
        esac
       done
 
-      if test "$build_libtool_libs" = yes; then
+      if test yes = "$build_libtool_libs"; then
        if test -n "$rpath"; then
          case $host in
          *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc* | *-*-haiku*)
@@ -7647,7 +9142,7 @@ func_mode_link ()
            ;;
          *)
            # Add libc to deplibs on all other systems if necessary.
-           if test "$build_libtool_need_lc" = "yes"; then
+           if test yes = "$build_libtool_need_lc"; then
              func_append deplibs " -lc"
            fi
            ;;
@@ -7663,9 +9158,9 @@ func_mode_link ()
        # I'm not sure if I'm treating the release correctly.  I think
        # release should show up in the -l (ie -lgmp5) so we don't want to
        # add it in twice.  Is that correct?
-       release=""
-       versuffix=""
-       major=""
+       release=
+       versuffix=
+       major=
        newdeplibs=
        droppeddeps=no
        case $deplibs_check_method in
@@ -7694,20 +9189,20 @@ EOF
              -l*)
                func_stripname -l '' "$i"
                name=$func_stripname_result
-               if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
+               if test yes = "$allow_libtool_libs_with_static_runtimes"; then
                  case " $predeps $postdeps " in
                  *" $i "*)
                    func_append newdeplibs " $i"
-                   i=""
+                   i=
                    ;;
                  esac
                fi
-               if test -n "$i" ; then
+               if test -n "$i"; then
                  libname=`eval "\\$ECHO \"$libname_spec\""`
                  deplib_matches=`eval "\\$ECHO \"$library_names_spec\""`
                  set dummy $deplib_matches; shift
                  deplib_match=$1
-                 if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then
+                 if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0; then
                    func_append newdeplibs " $i"
                  else
                    droppeddeps=yes
@@ -7737,20 +9232,20 @@ EOF
                $opt_dry_run || $RM conftest
                if $LTCC $LTCFLAGS -o conftest conftest.c $i; then
                  ldd_output=`ldd conftest`
-                 if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
+                 if test yes = "$allow_libtool_libs_with_static_runtimes"; then
                    case " $predeps $postdeps " in
                    *" $i "*)
                      func_append newdeplibs " $i"
-                     i=""
+                     i=
                      ;;
                    esac
                  fi
-                 if test -n "$i" ; then
+                 if test -n "$i"; then
                    libname=`eval "\\$ECHO \"$libname_spec\""`
                    deplib_matches=`eval "\\$ECHO \"$library_names_spec\""`
                    set dummy $deplib_matches; shift
                    deplib_match=$1
-                   if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then
+                   if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0; then
                      func_append newdeplibs " $i"
                    else
                      droppeddeps=yes
@@ -7787,24 +9282,24 @@ EOF
            -l*)
              func_stripname -l '' "$a_deplib"
              name=$func_stripname_result
-             if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
+             if test yes = "$allow_libtool_libs_with_static_runtimes"; then
                case " $predeps $postdeps " in
                *" $a_deplib "*)
                  func_append newdeplibs " $a_deplib"
-                 a_deplib=""
+                 a_deplib=
                  ;;
                esac
              fi
-             if test -n "$a_deplib" ; then
+             if test -n "$a_deplib"; then
                libname=`eval "\\$ECHO \"$libname_spec\""`
                if test -n "$file_magic_glob"; then
                  libnameglob=`func_echo_all "$libname" | $SED -e $file_magic_glob`
                else
                  libnameglob=$libname
                fi
-               test "$want_nocaseglob" = yes && nocaseglob=`shopt -p nocaseglob`
+               test yes = "$want_nocaseglob" && nocaseglob=`shopt -p nocaseglob`
                for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
-                 if test "$want_nocaseglob" = yes; then
+                 if test yes = "$want_nocaseglob"; then
                    shopt -s nocaseglob
                    potential_libs=`ls $i/$libnameglob[.-]* 2>/dev/null`
                    $nocaseglob
@@ -7822,25 +9317,25 @@ EOF
                      # We might still enter an endless loop, since a link
                      # loop can be closed while we follow links,
                      # but so what?
-                     potlib="$potent_lib"
+                     potlib=$potent_lib
                      while test -h "$potlib" 2>/dev/null; do
-                       potliblink=`ls -ld $potlib | ${SED} 's/.* -> //'`
+                       potliblink=`ls -ld $potlib | $SED 's/.* -> //'`
                        case $potliblink in
-                       [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";;
-                       *) potlib=`$ECHO "$potlib" | $SED 's,[^/]*$,,'`"$potliblink";;
+                       [\\/]* | [A-Za-z]:[\\/]*) potlib=$potliblink;;
+                       *) potlib=`$ECHO "$potlib" | $SED 's|[^/]*$||'`"$potliblink";;
                        esac
                      done
                      if eval $file_magic_cmd \"\$potlib\" 2>/dev/null |
                         $SED -e 10q |
                         $EGREP "$file_magic_regex" > /dev/null; then
                        func_append newdeplibs " $a_deplib"
-                       a_deplib=""
+                       a_deplib=
                        break 2
                      fi
                  done
                done
              fi
-             if test -n "$a_deplib" ; then
+             if test -n "$a_deplib"; then
                droppeddeps=yes
                echo
                $ECHO "*** Warning: linker path does not have real file for library $a_deplib."
@@ -7848,7 +9343,7 @@ EOF
                echo "*** you link to this library.  But I can only do this if you have a"
                echo "*** shared version of the library, which you do not appear to have"
                echo "*** because I did check the linker path looking for a file starting"
-               if test -z "$potlib" ; then
+               if test -z "$potlib"; then
                  $ECHO "*** with $libname but no candidates were found. (...for file magic test)"
                else
                  $ECHO "*** with $libname and none of the candidates passed a file format test"
@@ -7871,30 +9366,30 @@ EOF
            -l*)
              func_stripname -l '' "$a_deplib"
              name=$func_stripname_result
-             if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
+             if test yes = "$allow_libtool_libs_with_static_runtimes"; then
                case " $predeps $postdeps " in
                *" $a_deplib "*)
                  func_append newdeplibs " $a_deplib"
-                 a_deplib=""
+                 a_deplib=
                  ;;
                esac
              fi
-             if test -n "$a_deplib" ; then
+             if test -n "$a_deplib"; then
                libname=`eval "\\$ECHO \"$libname_spec\""`
                for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
                  potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
                  for potent_lib in $potential_libs; do
-                   potlib="$potent_lib" # see symlink-check above in file_magic test
+                   potlib=$potent_lib # see symlink-check above in file_magic test
                    if eval "\$ECHO \"$potent_lib\"" 2>/dev/null | $SED 10q | \
                       $EGREP "$match_pattern_regex" > /dev/null; then
                      func_append newdeplibs " $a_deplib"
-                     a_deplib=""
+                     a_deplib=
                      break 2
                    fi
                  done
                done
              fi
-             if test -n "$a_deplib" ; then
+             if test -n "$a_deplib"; then
                droppeddeps=yes
                echo
                $ECHO "*** Warning: linker path does not have real file for library $a_deplib."
@@ -7902,7 +9397,7 @@ EOF
                echo "*** you link to this library.  But I can only do this if you have a"
                echo "*** shared version of the library, which you do not appear to have"
                echo "*** because I did check the linker path looking for a file starting"
-               if test -z "$potlib" ; then
+               if test -z "$potlib"; then
                  $ECHO "*** with $libname but no candidates were found. (...for regex pattern test)"
                else
                  $ECHO "*** with $libname and none of the candidates passed a file format test"
@@ -7918,18 +9413,18 @@ EOF
          done # Gone through all deplibs.
          ;;
        none | unknown | *)
-         newdeplibs=""
+         newdeplibs=
          tmp_deplibs=`$ECHO " $deplibs" | $SED 's/ -lc$//; s/ -[LR][^ ]*//g'`
-         if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
-           for i in $predeps $postdeps ; do
+         if test yes = "$allow_libtool_libs_with_static_runtimes"; then
+           for i in $predeps $postdeps; do
              # can't use Xsed below, because $i might contain '/'
-             tmp_deplibs=`$ECHO " $tmp_deplibs" | $SED "s,$i,,"`
+             tmp_deplibs=`$ECHO " $tmp_deplibs" | $SED "s|$i||"`
            done
          fi
          case $tmp_deplibs in
          *[!\  \ ]*)
            echo
-           if test "X$deplibs_check_method" = "Xnone"; then
+           if test none = "$deplibs_check_method"; then
              echo "*** Warning: inter-library dependencies are not supported in this platform."
            else
              echo "*** Warning: inter-library dependencies are not known to be supported."
@@ -7953,8 +9448,8 @@ EOF
          ;;
        esac
 
-       if test "$droppeddeps" = yes; then
-         if test "$module" = yes; then
+       if test yes = "$droppeddeps"; then
+         if test yes = "$module"; then
            echo
            echo "*** Warning: libtool could not satisfy all declared inter-library"
            $ECHO "*** dependencies of module $libname.  Therefore, libtool will create"
@@ -7963,12 +9458,12 @@ EOF
            if test -z "$global_symbol_pipe"; then
              echo
              echo "*** However, this would only work if libtool was able to extract symbol"
-             echo "*** lists from a program, using \`nm' or equivalent, but libtool could"
+             echo "*** lists from a program, using 'nm' or equivalent, but libtool could"
              echo "*** not find such a program.  So, this module is probably useless."
-             echo "*** \`nm' from GNU binutils and a full rebuild may help."
+             echo "*** 'nm' from GNU binutils and a full rebuild may help."
            fi
-           if test "$build_old_libs" = no; then
-             oldlibs="$output_objdir/$libname.$libext"
+           if test no = "$build_old_libs"; then
+             oldlibs=$output_objdir/$libname.$libext
              build_libtool_libs=module
              build_old_libs=yes
            else
@@ -7979,14 +9474,14 @@ EOF
            echo "*** automatically added whenever a program is linked with this library"
            echo "*** or is declared to -dlopen it."
 
-           if test "$allow_undefined" = no; then
+           if test no = "$allow_undefined"; then
              echo
              echo "*** Since this library must not contain undefined symbols,"
              echo "*** because either the platform does not support them or"
              echo "*** it was explicitly requested with -no-undefined,"
              echo "*** libtool will only create a static version of it."
-             if test "$build_old_libs" = no; then
-               oldlibs="$output_objdir/$libname.$libext"
+             if test no = "$build_old_libs"; then
+               oldlibs=$output_objdir/$libname.$libext
                build_libtool_libs=module
                build_old_libs=yes
              else
@@ -8032,7 +9527,7 @@ EOF
        *) func_append new_libs " $deplib" ;;
        esac
       done
-      deplibs="$new_libs"
+      deplibs=$new_libs
 
       # All the library-specific variables (install_libdir is set above).
       library_names=
@@ -8040,25 +9535,25 @@ EOF
       dlname=
 
       # Test again, we may have decided not to build it any more
-      if test "$build_libtool_libs" = yes; then
-       # Remove ${wl} instances when linking with ld.
+      if test yes = "$build_libtool_libs"; then
+       # Remove $wl instances when linking with ld.
        # FIXME: should test the right _cmds variable.
        case $archive_cmds in
          *\$LD\ *) wl= ;;
         esac
-       if test "$hardcode_into_libs" = yes; then
+       if test yes = "$hardcode_into_libs"; then
          # Hardcode the library paths
          hardcode_libdirs=
          dep_rpath=
-         rpath="$finalize_rpath"
-         test "$opt_mode" != relink && rpath="$compile_rpath$rpath"
+         rpath=$finalize_rpath
+         test relink = "$opt_mode" || rpath=$compile_rpath$rpath
          for libdir in $rpath; do
            if test -n "$hardcode_libdir_flag_spec"; then
              if test -n "$hardcode_libdir_separator"; then
                func_replace_sysroot "$libdir"
                libdir=$func_replace_sysroot_result
                if test -z "$hardcode_libdirs"; then
-                 hardcode_libdirs="$libdir"
+                 hardcode_libdirs=$libdir
                else
                  # Just accumulate the unique libdirs.
                  case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
@@ -8083,7 +9578,7 @@ EOF
          # Substitute the hardcoded libdirs into the rpath.
          if test -n "$hardcode_libdir_separator" &&
             test -n "$hardcode_libdirs"; then
-           libdir="$hardcode_libdirs"
+           libdir=$hardcode_libdirs
            eval "dep_rpath=\"$hardcode_libdir_flag_spec\""
          fi
          if test -n "$runpath_var" && test -n "$perm_rpath"; then
@@ -8097,8 +9592,8 @@ EOF
          test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs"
        fi
 
-       shlibpath="$finalize_shlibpath"
-       test "$opt_mode" != relink && shlibpath="$compile_shlibpath$shlibpath"
+       shlibpath=$finalize_shlibpath
+       test relink = "$opt_mode" || shlibpath=$compile_shlibpath$shlibpath
        if test -n "$shlibpath"; then
          eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var"
        fi
@@ -8108,19 +9603,19 @@ EOF
        eval library_names=\"$library_names_spec\"
        set dummy $library_names
        shift
-       realname="$1"
+       realname=$1
        shift
 
        if test -n "$soname_spec"; then
          eval soname=\"$soname_spec\"
        else
-         soname="$realname"
+         soname=$realname
        fi
        if test -z "$dlname"; then
          dlname=$soname
        fi
 
-       lib="$output_objdir/$realname"
+       lib=$output_objdir/$realname
        linknames=
        for link
        do
@@ -8134,7 +9629,7 @@ EOF
        delfiles=
        if test -n "$export_symbols" && test -n "$include_expsyms"; then
          $opt_dry_run || cp "$export_symbols" "$output_objdir/$libname.uexp"
-         export_symbols="$output_objdir/$libname.uexp"
+         export_symbols=$output_objdir/$libname.uexp
          func_append delfiles " $export_symbols"
        fi
 
@@ -8143,31 +9638,31 @@ EOF
        cygwin* | mingw* | cegcc*)
          if test -n "$export_symbols" && test -z "$export_symbols_regex"; then
            # exporting using user supplied symfile
-           if test "x`$SED 1q $export_symbols`" != xEXPORTS; then
+           func_dll_def_p "$export_symbols" || {
              # and it's NOT already a .def file. Must figure out
              # which of the given symbols are data symbols and tag
              # them as such. So, trigger use of export_symbols_cmds.
              # export_symbols gets reassigned inside the "prepare
              # the list of exported symbols" if statement, so the
              # include_expsyms logic still works.
-             orig_export_symbols="$export_symbols"
+             orig_export_symbols=$export_symbols
              export_symbols=
              always_export_symbols=yes
-           fi
+           }
          fi
          ;;
        esac
 
        # Prepare the list of exported symbols
        if test -z "$export_symbols"; then
-         if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then
-           func_verbose "generating symbol list for \`$libname.la'"
-           export_symbols="$output_objdir/$libname.exp"
+         if test yes = "$always_export_symbols" || test -n "$export_symbols_regex"; then
+           func_verbose "generating symbol list for '$libname.la'"
+           export_symbols=$output_objdir/$libname.exp
            $opt_dry_run || $RM $export_symbols
            cmds=$export_symbols_cmds
-           save_ifs="$IFS"; IFS='~'
+           save_ifs=$IFS; IFS='~'
            for cmd1 in $cmds; do
-             IFS="$save_ifs"
+             IFS=$save_ifs
              # Take the normal branch if the nm_file_list_spec branch
              # doesn't work or if tool conversion is not needed.
              case $nm_file_list_spec~$to_tool_file_cmd in
@@ -8181,7 +9676,7 @@ EOF
                  try_normal_branch=no
                  ;;
              esac
-             if test "$try_normal_branch" = yes \
+             if test yes = "$try_normal_branch" \
                 && { test "$len" -lt "$max_cmd_len" \
                      || test "$max_cmd_len" -le -1; }
              then
@@ -8192,7 +9687,7 @@ EOF
                output_la=$func_basename_result
                save_libobjs=$libobjs
                save_output=$output
-               output=${output_objdir}/${output_la}.nm
+               output=$output_objdir/$output_la.nm
                func_to_tool_file "$output"
                libobjs=$nm_file_list_spec$func_to_tool_file_result
                func_append delfiles " $output"
@@ -8215,8 +9710,8 @@ EOF
                break
              fi
            done
-           IFS="$save_ifs"
-           if test -n "$export_symbols_regex" && test "X$skipped_export" != "X:"; then
+           IFS=$save_ifs
+           if test -n "$export_symbols_regex" && test : != "$skipped_export"; then
              func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"'
              func_show_eval '$MV "${export_symbols}T" "$export_symbols"'
            fi
@@ -8224,16 +9719,16 @@ EOF
        fi
 
        if test -n "$export_symbols" && test -n "$include_expsyms"; then
-         tmp_export_symbols="$export_symbols"
-         test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols"
+         tmp_export_symbols=$export_symbols
+         test -n "$orig_export_symbols" && tmp_export_symbols=$orig_export_symbols
          $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"'
        fi
 
-       if test "X$skipped_export" != "X:" && test -n "$orig_export_symbols"; then
+       if test : != "$skipped_export" && test -n "$orig_export_symbols"; then
          # The given exports_symbols file has to be filtered, so filter it.
-         func_verbose "filter symbol list for \`$libname.la' to tag DATA exports"
+         func_verbose "filter symbol list for '$libname.la' to tag DATA exports"
          # FIXME: $output_objdir/$libname.filter potentially contains lots of
-         # 's' commands which not all seds can handle. GNU sed should be fine
+         # 's' commands, which not all seds can handle. GNU sed should be fine
          # though. Also, the filter scales superlinearly with the number of
          # global variables. join(1) would be nice here, but unfortunately
          # isn't a blessed tool.
@@ -8252,11 +9747,11 @@ EOF
            ;;
          esac
        done
-       deplibs="$tmp_deplibs"
+       deplibs=$tmp_deplibs
 
        if test -n "$convenience"; then
          if test -n "$whole_archive_flag_spec" &&
-           test "$compiler_needs_object" = yes &&
+           test yes = "$compiler_needs_object" &&
            test -z "$libobjs"; then
            # extract the archives, so we have objects to list.
            # TODO: could optimize this to just extract one archive.
@@ -8267,7 +9762,7 @@ EOF
            eval libobjs=\"\$libobjs $whole_archive_flag_spec\"
            test "X$libobjs" = "X " && libobjs=
          else
-           gentop="$output_objdir/${outputname}x"
+           gentop=$output_objdir/${outputname}x
            func_append generated " $gentop"
 
            func_extract_archives $gentop $convenience
@@ -8276,18 +9771,18 @@ EOF
          fi
        fi
 
-       if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then
+       if test yes = "$thread_safe" && test -n "$thread_safe_flag_spec"; then
          eval flag=\"$thread_safe_flag_spec\"
          func_append linker_flags " $flag"
        fi
 
        # Make a backup of the uninstalled library when relinking
-       if test "$opt_mode" = relink; then
+       if test relink = "$opt_mode"; then
          $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}U && $MV $realname ${realname}U)' || exit $?
        fi
 
        # Do each of the archive commands.
-       if test "$module" = yes && test -n "$module_cmds" ; then
+       if test yes = "$module" && test -n "$module_cmds"; then
          if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then
            eval test_cmds=\"$module_expsym_cmds\"
            cmds=$module_expsym_cmds
@@ -8305,7 +9800,7 @@ EOF
          fi
        fi
 
-       if test "X$skipped_export" != "X:" &&
+       if test : != "$skipped_export" &&
           func_len " $test_cmds" &&
           len=$func_len_result &&
           test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then
@@ -8338,8 +9833,8 @@ EOF
          last_robj=
          k=1
 
-         if test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "$with_gnu_ld" = yes; then
-           output=${output_objdir}/${output_la}.lnkscript
+         if test -n "$save_libobjs" && test : != "$skipped_export" && test yes = "$with_gnu_ld"; then
+           output=$output_objdir/$output_la.lnkscript
            func_verbose "creating GNU ld script: $output"
            echo 'INPUT (' > $output
            for obj in $save_libobjs
@@ -8351,14 +9846,14 @@ EOF
            func_append delfiles " $output"
            func_to_tool_file "$output"
            output=$func_to_tool_file_result
-         elif test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "X$file_list_spec" != X; then
-           output=${output_objdir}/${output_la}.lnk
+         elif test -n "$save_libobjs" && test : != "$skipped_export" && test -n "$file_list_spec"; then
+           output=$output_objdir/$output_la.lnk
            func_verbose "creating linker input file list: $output"
            : > $output
            set x $save_libobjs
            shift
            firstobj=
-           if test "$compiler_needs_object" = yes; then
+           if test yes = "$compiler_needs_object"; then
              firstobj="$1 "
              shift
            fi
@@ -8373,7 +9868,7 @@ EOF
          else
            if test -n "$save_libobjs"; then
              func_verbose "creating reloadable object files..."
-             output=$output_objdir/$output_la-${k}.$objext
+             output=$output_objdir/$output_la-$k.$objext
              eval test_cmds=\"$reload_cmds\"
              func_len " $test_cmds"
              len0=$func_len_result
@@ -8385,13 +9880,13 @@ EOF
                func_len " $obj"
                func_arith $len + $func_len_result
                len=$func_arith_result
-               if test "X$objlist" = X ||
+               if test -z "$objlist" ||
                   test "$len" -lt "$max_cmd_len"; then
                  func_append objlist " $obj"
                else
                  # The command $test_cmds is almost too long, add a
                  # command to the queue.
-                 if test "$k" -eq 1 ; then
+                 if test 1 -eq "$k"; then
                    # The first file doesn't have a previous command to add.
                    reload_objs=$objlist
                    eval concat_cmds=\"$reload_cmds\"
@@ -8401,10 +9896,10 @@ EOF
                    reload_objs="$objlist $last_robj"
                    eval concat_cmds=\"\$concat_cmds~$reload_cmds~\$RM $last_robj\"
                  fi
-                 last_robj=$output_objdir/$output_la-${k}.$objext
+                 last_robj=$output_objdir/$output_la-$k.$objext
                  func_arith $k + 1
                  k=$func_arith_result
-                 output=$output_objdir/$output_la-${k}.$objext
+                 output=$output_objdir/$output_la-$k.$objext
                  objlist=" $obj"
                  func_len " $last_robj"
                  func_arith $len0 + $func_len_result
@@ -8416,9 +9911,9 @@ EOF
              # files will link in the last one created.
              test -z "$concat_cmds" || concat_cmds=$concat_cmds~
              reload_objs="$objlist $last_robj"
-             eval concat_cmds=\"\${concat_cmds}$reload_cmds\"
+             eval concat_cmds=\"\$concat_cmds$reload_cmds\"
              if test -n "$last_robj"; then
-               eval concat_cmds=\"\${concat_cmds}~\$RM $last_robj\"
+               eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\"
              fi
              func_append delfiles " $output"
 
@@ -8426,9 +9921,9 @@ EOF
              output=
            fi
 
-           if ${skipped_export-false}; then
-             func_verbose "generating symbol list for \`$libname.la'"
-             export_symbols="$output_objdir/$libname.exp"
+           ${skipped_export-false} && {
+             func_verbose "generating symbol list for '$libname.la'"
+             export_symbols=$output_objdir/$libname.exp
              $opt_dry_run || $RM $export_symbols
              libobjs=$output
              # Append the command to create the export file.
@@ -8437,16 +9932,16 @@ EOF
              if test -n "$last_robj"; then
                eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\"
              fi
-           fi
+           }
 
            test -n "$save_libobjs" &&
              func_verbose "creating a temporary reloadable object file: $output"
 
            # Loop through the commands generated above and execute them.
-           save_ifs="$IFS"; IFS='~'
+           save_ifs=$IFS; IFS='~'
            for cmd in $concat_cmds; do
-             IFS="$save_ifs"
-             $opt_silent || {
+             IFS=$save_ifs
+             $opt_quiet || {
                  func_quote_for_expand "$cmd"
                  eval "func_echo $func_quote_for_expand_result"
              }
@@ -8454,7 +9949,7 @@ EOF
                lt_exit=$?
 
                # Restore the uninstalled library and exit
-               if test "$opt_mode" = relink; then
+               if test relink = "$opt_mode"; then
                  ( cd "$output_objdir" && \
                    $RM "${realname}T" && \
                    $MV "${realname}U" "$realname" )
@@ -8463,7 +9958,7 @@ EOF
                exit $lt_exit
              }
            done
-           IFS="$save_ifs"
+           IFS=$save_ifs
 
            if test -n "$export_symbols_regex" && ${skipped_export-false}; then
              func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"'
@@ -8471,18 +9966,18 @@ EOF
            fi
          fi
 
-          if ${skipped_export-false}; then
+          ${skipped_export-false} && {
            if test -n "$export_symbols" && test -n "$include_expsyms"; then
-             tmp_export_symbols="$export_symbols"
-             test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols"
+             tmp_export_symbols=$export_symbols
+             test -n "$orig_export_symbols" && tmp_export_symbols=$orig_export_symbols
              $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"'
            fi
 
            if test -n "$orig_export_symbols"; then
              # The given exports_symbols file has to be filtered, so filter it.
-             func_verbose "filter symbol list for \`$libname.la' to tag DATA exports"
+             func_verbose "filter symbol list for '$libname.la' to tag DATA exports"
              # FIXME: $output_objdir/$libname.filter potentially contains lots of
-             # 's' commands which not all seds can handle. GNU sed should be fine
+             # 's' commands, which not all seds can handle. GNU sed should be fine
              # though. Also, the filter scales superlinearly with the number of
              # global variables. join(1) would be nice here, but unfortunately
              # isn't a blessed tool.
@@ -8491,7 +9986,7 @@ EOF
              export_symbols=$output_objdir/$libname.def
              $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols
            fi
-         fi
+         }
 
          libobjs=$output
          # Restore the value of output.
@@ -8505,7 +10000,7 @@ EOF
          # value of $libobjs for piecewise linking.
 
          # Do each of the archive commands.
-         if test "$module" = yes && test -n "$module_cmds" ; then
+         if test yes = "$module" && test -n "$module_cmds"; then
            if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then
              cmds=$module_expsym_cmds
            else
@@ -8527,7 +10022,7 @@ EOF
 
        # Add any objects from preloaded convenience libraries
        if test -n "$dlprefiles"; then
-         gentop="$output_objdir/${outputname}x"
+         gentop=$output_objdir/${outputname}x
          func_append generated " $gentop"
 
          func_extract_archives $gentop $dlprefiles
@@ -8535,11 +10030,12 @@ EOF
          test "X$libobjs" = "X " && libobjs=
        fi
 
-       save_ifs="$IFS"; IFS='~'
+       save_ifs=$IFS; IFS='~'
        for cmd in $cmds; do
-         IFS="$save_ifs"
+         IFS=$sp$nl
          eval cmd=\"$cmd\"
-         $opt_silent || {
+         IFS=$save_ifs
+         $opt_quiet || {
            func_quote_for_expand "$cmd"
            eval "func_echo $func_quote_for_expand_result"
          }
@@ -8547,7 +10043,7 @@ EOF
            lt_exit=$?
 
            # Restore the uninstalled library and exit
-           if test "$opt_mode" = relink; then
+           if test relink = "$opt_mode"; then
              ( cd "$output_objdir" && \
                $RM "${realname}T" && \
                $MV "${realname}U" "$realname" )
@@ -8556,10 +10052,10 @@ EOF
            exit $lt_exit
          }
        done
-       IFS="$save_ifs"
+       IFS=$save_ifs
 
        # Restore the uninstalled library and exit
-       if test "$opt_mode" = relink; then
+       if test relink = "$opt_mode"; then
          $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}T && $MV $realname ${realname}T && $MV ${realname}U $realname)' || exit $?
 
          if test -n "$convenience"; then
@@ -8579,39 +10075,39 @@ EOF
        done
 
        # If -module or -export-dynamic was specified, set the dlname.
-       if test "$module" = yes || test "$export_dynamic" = yes; then
+       if test yes = "$module" || test yes = "$export_dynamic"; then
          # On all known operating systems, these are identical.
-         dlname="$soname"
+         dlname=$soname
        fi
       fi
       ;;
 
     obj)
-      if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
-       func_warning "\`-dlopen' is ignored for objects"
+      if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then
+       func_warning "'-dlopen' is ignored for objects"
       fi
 
       case " $deplibs" in
       *\ -l* | *\ -L*)
-       func_warning "\`-l' and \`-L' are ignored for objects" ;;
+       func_warning "'-l' and '-L' are ignored for objects" ;;
       esac
 
       test -n "$rpath" && \
-       func_warning "\`-rpath' is ignored for objects"
+       func_warning "'-rpath' is ignored for objects"
 
       test -n "$xrpath" && \
-       func_warning "\`-R' is ignored for objects"
+       func_warning "'-R' is ignored for objects"
 
       test -n "$vinfo" && \
-       func_warning "\`-version-info' is ignored for objects"
+       func_warning "'-version-info' is ignored for objects"
 
       test -n "$release" && \
-       func_warning "\`-release' is ignored for objects"
+       func_warning "'-release' is ignored for objects"
 
       case $output in
       *.lo)
        test -n "$objs$old_deplibs" && \
-         func_fatal_error "cannot build library object \`$output' from non-libtool objects"
+         func_fatal_error "cannot build library object '$output' from non-libtool objects"
 
        libobj=$output
        func_lo2o "$libobj"
@@ -8619,7 +10115,7 @@ EOF
        ;;
       *)
        libobj=
-       obj="$output"
+       obj=$output
        ;;
       esac
 
@@ -8632,17 +10128,19 @@ EOF
       # the extraction.
       reload_conv_objs=
       gentop=
-      # reload_cmds runs $LD directly, so let us get rid of
-      # -Wl from whole_archive_flag_spec and hope we can get by with
-      # turning comma into space..
-      wl=
-
+      # if reload_cmds runs $LD directly, get rid of -Wl from
+      # whole_archive_flag_spec and hope we can get by with turning comma
+      # into space.
+      case $reload_cmds in
+        *\$LD[\ \$]*) wl= ;;
+      esac
       if test -n "$convenience"; then
        if test -n "$whole_archive_flag_spec"; then
          eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\"
-         reload_conv_objs=$reload_objs\ `$ECHO "$tmp_whole_archive_flags" | $SED 's|,| |g'`
+         test -n "$wl" || tmp_whole_archive_flags=`$ECHO "$tmp_whole_archive_flags" | $SED 's|,| |g'`
+         reload_conv_objs=$reload_objs\ $tmp_whole_archive_flags
        else
-         gentop="$output_objdir/${obj}x"
+         gentop=$output_objdir/${obj}x
          func_append generated " $gentop"
 
          func_extract_archives $gentop $convenience
@@ -8651,12 +10149,12 @@ EOF
       fi
 
       # If we're not building shared, we need to use non_pic_objs
-      test "$build_libtool_libs" != yes && libobjs="$non_pic_objects"
+      test yes = "$build_libtool_libs" || libobjs=$non_pic_objects
 
       # Create the old-style object.
-      reload_objs="$objs$old_deplibs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.${libext}$/d; /\.lib$/d; $lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test
+      reload_objs=$objs$old_deplibs' '`$ECHO "$libobjs" | $SP2NL | $SED "/\.$libext$/d; /\.lib$/d; $lo2o" | $NL2SP`' '$reload_conv_objs
 
-      output="$obj"
+      output=$obj
       func_execute_cmds "$reload_cmds" 'exit $?'
 
       # Exit if we aren't doing a library object file.
@@ -8668,7 +10166,7 @@ EOF
        exit $EXIT_SUCCESS
       fi
 
-      if test "$build_libtool_libs" != yes; then
+      test yes = "$build_libtool_libs" || {
        if test -n "$gentop"; then
          func_show_eval '${RM}r "$gentop"'
        fi
@@ -8678,12 +10176,12 @@ EOF
        # $show "echo timestamp > $libobj"
        # $opt_dry_run || eval "echo timestamp > $libobj" || exit $?
        exit $EXIT_SUCCESS
-      fi
+      }
 
-      if test -n "$pic_flag" || test "$pic_mode" != default; then
+      if test -n "$pic_flag" || test default != "$pic_mode"; then
        # Only do commands if we really have different PIC objects.
        reload_objs="$libobjs $reload_conv_objs"
-       output="$libobj"
+       output=$libobj
        func_execute_cmds "$reload_cmds" 'exit $?'
       fi
 
@@ -8700,16 +10198,14 @@ EOF
                  output=$func_stripname_result.exe;;
       esac
       test -n "$vinfo" && \
-       func_warning "\`-version-info' is ignored for programs"
+       func_warning "'-version-info' is ignored for programs"
 
       test -n "$release" && \
-       func_warning "\`-release' is ignored for programs"
+       func_warning "'-release' is ignored for programs"
 
-      test "$preload" = yes \
-        && test "$dlopen_support" = unknown \
-       && test "$dlopen_self" = unknown \
-       && test "$dlopen_self_static" = unknown && \
-         func_warning "\`LT_INIT([dlopen])' not used. Assuming no dlopen support."
+      $preload \
+       && test unknown,unknown,unknown = "$dlopen_support,$dlopen_self,$dlopen_self_static" \
+       && func_warning "'LT_INIT([dlopen])' not used. Assuming no dlopen support."
 
       case $host in
       *-*-rhapsody* | *-*-darwin1.[012])
@@ -8723,11 +10219,11 @@ EOF
       *-*-darwin*)
        # Don't allow lazy linking, it breaks C++ global constructors
        # But is supposedly fixed on 10.4 or later (yay!).
-       if test "$tagname" = CXX ; then
+       if test CXX = "$tagname"; then
          case ${MACOSX_DEPLOYMENT_TARGET-10.0} in
            10.[0123])
-             func_append compile_command " ${wl}-bind_at_load"
-             func_append finalize_command " ${wl}-bind_at_load"
+             func_append compile_command " $wl-bind_at_load"
+             func_append finalize_command " $wl-bind_at_load"
            ;;
          esac
        fi
@@ -8763,7 +10259,7 @@ EOF
        *) func_append new_libs " $deplib" ;;
        esac
       done
-      compile_deplibs="$new_libs"
+      compile_deplibs=$new_libs
 
 
       func_append compile_command " $compile_deplibs"
@@ -8787,7 +10283,7 @@ EOF
        if test -n "$hardcode_libdir_flag_spec"; then
          if test -n "$hardcode_libdir_separator"; then
            if test -z "$hardcode_libdirs"; then
-             hardcode_libdirs="$libdir"
+             hardcode_libdirs=$libdir
            else
              # Just accumulate the unique libdirs.
              case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
@@ -8810,7 +10306,7 @@ EOF
        fi
        case $host in
        *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*)
-         testbindir=`${ECHO} "$libdir" | ${SED} -e 's*/lib$*/bin*'`
+         testbindir=`$ECHO "$libdir" | $SED -e 's*/lib$*/bin*'`
          case :$dllsearchpath: in
          *":$libdir:"*) ;;
          ::) dllsearchpath=$libdir;;
@@ -8827,10 +10323,10 @@ EOF
       # Substitute the hardcoded libdirs into the rpath.
       if test -n "$hardcode_libdir_separator" &&
         test -n "$hardcode_libdirs"; then
-       libdir="$hardcode_libdirs"
+       libdir=$hardcode_libdirs
        eval rpath=\" $hardcode_libdir_flag_spec\"
       fi
-      compile_rpath="$rpath"
+      compile_rpath=$rpath
 
       rpath=
       hardcode_libdirs=
@@ -8838,7 +10334,7 @@ EOF
        if test -n "$hardcode_libdir_flag_spec"; then
          if test -n "$hardcode_libdir_separator"; then
            if test -z "$hardcode_libdirs"; then
-             hardcode_libdirs="$libdir"
+             hardcode_libdirs=$libdir
            else
              # Just accumulate the unique libdirs.
              case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
@@ -8863,45 +10359,43 @@ EOF
       # Substitute the hardcoded libdirs into the rpath.
       if test -n "$hardcode_libdir_separator" &&
         test -n "$hardcode_libdirs"; then
-       libdir="$hardcode_libdirs"
+       libdir=$hardcode_libdirs
        eval rpath=\" $hardcode_libdir_flag_spec\"
       fi
-      finalize_rpath="$rpath"
+      finalize_rpath=$rpath
 
-      if test -n "$libobjs" && test "$build_old_libs" = yes; then
+      if test -n "$libobjs" && test yes = "$build_old_libs"; then
        # Transform all the library objects into standard objects.
        compile_command=`$ECHO "$compile_command" | $SP2NL | $SED "$lo2o" | $NL2SP`
        finalize_command=`$ECHO "$finalize_command" | $SP2NL | $SED "$lo2o" | $NL2SP`
       fi
 
-      func_generate_dlsyms "$outputname" "@PROGRAM@" "no"
+      func_generate_dlsyms "$outputname" "@PROGRAM@" false
 
       # template prelinking step
       if test -n "$prelink_cmds"; then
        func_execute_cmds "$prelink_cmds" 'exit $?'
       fi
 
-      wrappers_required=yes
+      wrappers_required=:
       case $host in
       *cegcc* | *mingw32ce*)
         # Disable wrappers for cegcc and mingw32ce hosts, we are cross compiling anyway.
-        wrappers_required=no
+        wrappers_required=false
         ;;
       *cygwin* | *mingw* )
-        if test "$build_libtool_libs" != yes; then
-          wrappers_required=no
-        fi
+        test yes = "$build_libtool_libs" || wrappers_required=false
         ;;
       *)
-        if test "$need_relink" = no || test "$build_libtool_libs" != yes; then
-          wrappers_required=no
+        if test no = "$need_relink" || test yes != "$build_libtool_libs"; then
+          wrappers_required=false
         fi
         ;;
       esac
-      if test "$wrappers_required" = no; then
+      $wrappers_required || {
        # Replace the output file specification.
        compile_command=`$ECHO "$compile_command" | $SED 's%@OUTPUT@%'"$output"'%g'`
-       link_command="$compile_command$compile_rpath"
+       link_command=$compile_command$compile_rpath
 
        # We have no uninstalled library dependencies, so finalize right now.
        exit_status=0
@@ -8914,12 +10408,12 @@ EOF
        fi
 
        # Delete the generated files.
-       if test -f "$output_objdir/${outputname}S.${objext}"; then
-         func_show_eval '$RM "$output_objdir/${outputname}S.${objext}"'
+       if test -f "$output_objdir/${outputname}S.$objext"; then
+         func_show_eval '$RM "$output_objdir/${outputname}S.$objext"'
        fi
 
        exit $exit_status
-      fi
+      }
 
       if test -n "$compile_shlibpath$finalize_shlibpath"; then
        compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command"
@@ -8949,9 +10443,9 @@ EOF
        fi
       fi
 
-      if test "$no_install" = yes; then
+      if test yes = "$no_install"; then
        # We don't need to create a wrapper script.
-       link_command="$compile_var$compile_command$compile_rpath"
+       link_command=$compile_var$compile_command$compile_rpath
        # Replace the output file specification.
        link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output"'%g'`
        # Delete the old output file.
@@ -8968,27 +10462,28 @@ EOF
        exit $EXIT_SUCCESS
       fi
 
-      if test "$hardcode_action" = relink; then
-       # Fast installation is not supported
-       link_command="$compile_var$compile_command$compile_rpath"
-       relink_command="$finalize_var$finalize_command$finalize_rpath"
+      case $hardcode_action,$fast_install in
+        relink,*)
+         # Fast installation is not supported
+         link_command=$compile_var$compile_command$compile_rpath
+         relink_command=$finalize_var$finalize_command$finalize_rpath
 
-       func_warning "this platform does not like uninstalled shared libraries"
-       func_warning "\`$output' will be relinked during installation"
-      else
-       if test "$fast_install" != no; then
-         link_command="$finalize_var$compile_command$finalize_rpath"
-         if test "$fast_install" = yes; then
-           relink_command=`$ECHO "$compile_var$compile_command$compile_rpath" | $SED 's%@OUTPUT@%\$progdir/\$file%g'`
-         else
-           # fast_install is set to needless
-           relink_command=
-         fi
-       else
-         link_command="$compile_var$compile_command$compile_rpath"
-         relink_command="$finalize_var$finalize_command$finalize_rpath"
-       fi
-      fi
+         func_warning "this platform does not like uninstalled shared libraries"
+         func_warning "'$output' will be relinked during installation"
+         ;;
+        *,yes)
+         link_command=$finalize_var$compile_command$finalize_rpath
+         relink_command=`$ECHO "$compile_var$compile_command$compile_rpath" | $SED 's%@OUTPUT@%\$progdir/\$file%g'`
+          ;;
+       *,no)
+         link_command=$compile_var$compile_command$compile_rpath
+         relink_command=$finalize_var$finalize_command$finalize_rpath
+          ;;
+       *,needless)
+         link_command=$finalize_var$compile_command$finalize_rpath
+         relink_command=
+          ;;
+      esac
 
       # Replace the output file specification.
       link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'`
@@ -9045,8 +10540,8 @@ EOF
            func_dirname_and_basename "$output" "" "."
            output_name=$func_basename_result
            output_path=$func_dirname_result
-           cwrappersource="$output_path/$objdir/lt-$output_name.c"
-           cwrapper="$output_path/$output_name.exe"
+           cwrappersource=$output_path/$objdir/lt-$output_name.c
+           cwrapper=$output_path/$output_name.exe
            $RM $cwrappersource $cwrapper
            trap "$RM $cwrappersource $cwrapper; exit $EXIT_FAILURE" 1 2 15
 
@@ -9067,7 +10562,7 @@ EOF
            trap "$RM $func_ltwrapper_scriptname_result; exit $EXIT_FAILURE" 1 2 15
            $opt_dry_run || {
              # note: this script will not be executed, so do not chmod.
-             if test "x$build" = "x$host" ; then
+             if test "x$build" = "x$host"; then
                $cwrapper --lt-dump-script > $func_ltwrapper_scriptname_result
              else
                func_emit_wrapper no > $func_ltwrapper_scriptname_result
@@ -9090,25 +10585,27 @@ EOF
     # See if we need to build an old-fashioned archive.
     for oldlib in $oldlibs; do
 
-      if test "$build_libtool_libs" = convenience; then
-       oldobjs="$libobjs_save $symfileobj"
-       addlibs="$convenience"
-       build_libtool_libs=no
-      else
-       if test "$build_libtool_libs" = module; then
-         oldobjs="$libobjs_save"
+      case $build_libtool_libs in
+        convenience)
+         oldobjs="$libobjs_save $symfileobj"
+         addlibs=$convenience
          build_libtool_libs=no
-       else
+         ;;
+       module)
+         oldobjs=$libobjs_save
+         addlibs=$old_convenience
+         build_libtool_libs=no
+          ;;
+       *)
          oldobjs="$old_deplibs $non_pic_objects"
-         if test "$preload" = yes && test -f "$symfileobj"; then
-           func_append oldobjs " $symfileobj"
-         fi
-       fi
-       addlibs="$old_convenience"
-      fi
+         $preload && test -f "$symfileobj" \
+           && func_append oldobjs " $symfileobj"
+         addlibs=$old_convenience
+         ;;
+      esac
 
       if test -n "$addlibs"; then
-       gentop="$output_objdir/${outputname}x"
+       gentop=$output_objdir/${outputname}x
        func_append generated " $gentop"
 
        func_extract_archives $gentop $addlibs
@@ -9116,13 +10613,13 @@ EOF
       fi
 
       # Do each command in the archive commands.
-      if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then
+      if test -n "$old_archive_from_new_cmds" && test yes = "$build_libtool_libs"; then
        cmds=$old_archive_from_new_cmds
       else
 
        # Add any objects from preloaded convenience libraries
        if test -n "$dlprefiles"; then
-         gentop="$output_objdir/${outputname}x"
+         gentop=$output_objdir/${outputname}x
          func_append generated " $gentop"
 
          func_extract_archives $gentop $dlprefiles
@@ -9143,7 +10640,7 @@ EOF
          :
        else
          echo "copying selected object files to avoid basename conflicts..."
-         gentop="$output_objdir/${outputname}x"
+         gentop=$output_objdir/${outputname}x
          func_append generated " $gentop"
          func_mkdir_p "$gentop"
          save_oldobjs=$oldobjs
@@ -9152,7 +10649,7 @@ EOF
          for obj in $save_oldobjs
          do
            func_basename "$obj"
-           objbase="$func_basename_result"
+           objbase=$func_basename_result
            case " $oldobjs " in
            " ") oldobjs=$obj ;;
            *[\ /]"$objbase "*)
@@ -9221,18 +10718,18 @@ EOF
            else
              # the above command should be used before it gets too long
              oldobjs=$objlist
-             if test "$obj" = "$last_oldobj" ; then
+             if test "$obj" = "$last_oldobj"; then
                RANLIB=$save_RANLIB
              fi
              test -z "$concat_cmds" || concat_cmds=$concat_cmds~
-             eval concat_cmds=\"\${concat_cmds}$old_archive_cmds\"
+             eval concat_cmds=\"\$concat_cmds$old_archive_cmds\"
              objlist=
              len=$len0
            fi
          done
          RANLIB=$save_RANLIB
          oldobjs=$objlist
-         if test "X$oldobjs" = "X" ; then
+         if test -z "$oldobjs"; then
            eval cmds=\"\$concat_cmds\"
          else
            eval cmds=\"\$concat_cmds~\$old_archive_cmds\"
@@ -9249,7 +10746,7 @@ EOF
     case $output in
     *.la)
       old_library=
-      test "$build_old_libs" = yes && old_library="$libname.$libext"
+      test yes = "$build_old_libs" && old_library=$libname.$libext
       func_verbose "creating $output"
 
       # Preserve any variables that may affect compiler behavior
@@ -9264,31 +10761,31 @@ EOF
        fi
       done
       # Quote the link command for shipping.
-      relink_command="(cd `pwd`; $SHELL $progpath $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)"
+      relink_command="(cd `pwd`; $SHELL \"$progpath\" $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)"
       relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"`
-      if test "$hardcode_automatic" = yes ; then
+      if test yes = "$hardcode_automatic"; then
        relink_command=
       fi
 
       # Only create the output if not a dry run.
       $opt_dry_run || {
        for installed in no yes; do
-         if test "$installed" = yes; then
+         if test yes = "$installed"; then
            if test -z "$install_libdir"; then
              break
            fi
-           output="$output_objdir/$outputname"i
+           output=$output_objdir/${outputname}i
            # Replace all uninstalled libtool libraries with the installed ones
            newdependency_libs=
            for deplib in $dependency_libs; do
              case $deplib in
              *.la)
                func_basename "$deplib"
-               name="$func_basename_result"
+               name=$func_basename_result
                func_resolve_sysroot "$deplib"
-               eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $func_resolve_sysroot_result`
+               eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $func_resolve_sysroot_result`
                test -z "$libdir" && \
-                 func_fatal_error "\`$deplib' is not a valid libtool archive"
+                 func_fatal_error "'$deplib' is not a valid libtool archive"
                func_append newdependency_libs " ${lt_sysroot:+=}$libdir/$name"
                ;;
              -L*)
@@ -9304,23 +10801,23 @@ EOF
              *) func_append newdependency_libs " $deplib" ;;
              esac
            done
-           dependency_libs="$newdependency_libs"
+           dependency_libs=$newdependency_libs
            newdlfiles=
 
            for lib in $dlfiles; do
              case $lib in
              *.la)
                func_basename "$lib"
-               name="$func_basename_result"
-               eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
+               name=$func_basename_result
+               eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
                test -z "$libdir" && \
-                 func_fatal_error "\`$lib' is not a valid libtool archive"
+                 func_fatal_error "'$lib' is not a valid libtool archive"
                func_append newdlfiles " ${lt_sysroot:+=}$libdir/$name"
                ;;
              *) func_append newdlfiles " $lib" ;;
              esac
            done
-           dlfiles="$newdlfiles"
+           dlfiles=$newdlfiles
            newdlprefiles=
            for lib in $dlprefiles; do
              case $lib in
@@ -9330,34 +10827,34 @@ EOF
                # didn't already link the preopened objects directly into
                # the library:
                func_basename "$lib"
-               name="$func_basename_result"
-               eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
+               name=$func_basename_result
+               eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
                test -z "$libdir" && \
-                 func_fatal_error "\`$lib' is not a valid libtool archive"
+                 func_fatal_error "'$lib' is not a valid libtool archive"
                func_append newdlprefiles " ${lt_sysroot:+=}$libdir/$name"
                ;;
              esac
            done
-           dlprefiles="$newdlprefiles"
+           dlprefiles=$newdlprefiles
          else
            newdlfiles=
            for lib in $dlfiles; do
              case $lib in
-               [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;;
+               [\\/]* | [A-Za-z]:[\\/]*) abs=$lib ;;
                *) abs=`pwd`"/$lib" ;;
              esac
              func_append newdlfiles " $abs"
            done
-           dlfiles="$newdlfiles"
+           dlfiles=$newdlfiles
            newdlprefiles=
            for lib in $dlprefiles; do
              case $lib in
-               [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;;
+               [\\/]* | [A-Za-z]:[\\/]*) abs=$lib ;;
                *) abs=`pwd`"/$lib" ;;
              esac
              func_append newdlprefiles " $abs"
            done
-           dlprefiles="$newdlprefiles"
+           dlprefiles=$newdlprefiles
          fi
          $RM $output
          # place dlname in correct position for cygwin
@@ -9373,10 +10870,9 @@ EOF
          case $host,$output,$installed,$module,$dlname in
            *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll)
              # If a -bindir argument was supplied, place the dll there.
-             if test "x$bindir" != x ;
-             then
+             if test -n "$bindir"; then
                func_relative_path "$install_libdir" "$bindir"
-               tdlname=$func_relative_path_result$dlname
+               tdlname=$func_relative_path_result/$dlname
              else
                # Otherwise fall back on heuristic.
                tdlname=../bin/$dlname
@@ -9385,7 +10881,7 @@ EOF
          esac
          $ECHO > $output "\
 # $outputname - a libtool library file
-# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
+# Generated by $PROGRAM (GNU $PACKAGE) $VERSION
 #
 # Please DO NOT delete this file!
 # It is necessary for linking the library.
@@ -9399,7 +10895,7 @@ library_names='$library_names'
 # The name of the static archive.
 old_library='$old_library'
 
-# Linker flags that can not go in dependency_libs.
+# Linker flags that cannot go in dependency_libs.
 inherited_linker_flags='$new_inherited_linker_flags'
 
 # Libraries that this one depends upon.
@@ -9425,7 +10921,7 @@ dlpreopen='$dlprefiles'
 
 # Directory that this library needs to be installed in:
 libdir='$install_libdir'"
-         if test "$installed" = no && test "$need_relink" = yes; then
+         if test no,yes = "$installed,$need_relink"; then
            $ECHO >> $output "\
 relink_command=\"$relink_command\""
          fi
@@ -9440,27 +10936,29 @@ relink_command=\"$relink_command\""
     exit $EXIT_SUCCESS
 }
 
-{ test "$opt_mode" = link || test "$opt_mode" = relink; } &&
-    func_mode_link ${1+"$@"}
+if test link = "$opt_mode" || test relink = "$opt_mode"; then
+  func_mode_link ${1+"$@"}
+fi
 
 
 # func_mode_uninstall arg...
 func_mode_uninstall ()
 {
-    $opt_debug
-    RM="$nonopt"
+    $debug_cmd
+
+    RM=$nonopt
     files=
-    rmforce=
+    rmforce=false
     exit_status=0
 
     # This variable tells wrapper scripts just to set variables rather
     # than running their programs.
-    libtool_install_magic="$magic"
+    libtool_install_magic=$magic
 
     for arg
     do
       case $arg in
-      -f) func_append RM " $arg"; rmforce=yes ;;
+      -f) func_append RM " $arg"; rmforce=: ;;
       -*) func_append RM " $arg" ;;
       *) func_append files " $arg" ;;
       esac
@@ -9473,18 +10971,18 @@ func_mode_uninstall ()
 
     for file in $files; do
       func_dirname "$file" "" "."
-      dir="$func_dirname_result"
-      if test "X$dir" = X.; then
-       odir="$objdir"
+      dir=$func_dirname_result
+      if test . = "$dir"; then
+       odir=$objdir
       else
-       odir="$dir/$objdir"
+       odir=$dir/$objdir
       fi
       func_basename "$file"
-      name="$func_basename_result"
-      test "$opt_mode" = uninstall && odir="$dir"
+      name=$func_basename_result
+      test uninstall = "$opt_mode" && odir=$dir
 
       # Remember odir for removal later, being careful to avoid duplicates
-      if test "$opt_mode" = clean; then
+      if test clean = "$opt_mode"; then
        case " $rmdirs " in
          *" $odir "*) ;;
          *) func_append rmdirs " $odir" ;;
@@ -9499,11 +10997,11 @@ func_mode_uninstall ()
       elif test -d "$file"; then
        exit_status=1
        continue
-      elif test "$rmforce" = yes; then
+      elif $rmforce; then
        continue
       fi
 
-      rmfiles="$file"
+      rmfiles=$file
 
       case $name in
       *.la)
@@ -9517,7 +11015,7 @@ func_mode_uninstall ()
          done
          test -n "$old_library" && func_append rmfiles " $odir/$old_library"
 
-         case "$opt_mode" in
+         case $opt_mode in
          clean)
            case " $library_names " in
            *" $dlname "*) ;;
@@ -9528,12 +11026,12 @@ func_mode_uninstall ()
          uninstall)
            if test -n "$library_names"; then
              # Do each command in the postuninstall commands.
-             func_execute_cmds "$postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1'
+             func_execute_cmds "$postuninstall_cmds" '$rmforce || exit_status=1'
            fi
 
            if test -n "$old_library"; then
              # Do each command in the old_postuninstall commands.
-             func_execute_cmds "$old_postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1'
+             func_execute_cmds "$old_postuninstall_cmds" '$rmforce || exit_status=1'
            fi
            # FIXME: should reinstall the best remaining shared library.
            ;;
@@ -9549,21 +11047,19 @@ func_mode_uninstall ()
          func_source $dir/$name
 
          # Add PIC object to the list of files to remove.
-         if test -n "$pic_object" &&
-            test "$pic_object" != none; then
+         if test -n "$pic_object" && test none != "$pic_object"; then
            func_append rmfiles " $dir/$pic_object"
          fi
 
          # Add non-PIC object to the list of files to remove.
-         if test -n "$non_pic_object" &&
-            test "$non_pic_object" != none; then
+         if test -n "$non_pic_object" && test none != "$non_pic_object"; then
            func_append rmfiles " $dir/$non_pic_object"
          fi
        fi
        ;;
 
       *)
-       if test "$opt_mode" = clean ; then
+       if test clean = "$opt_mode"; then
          noexename=$name
          case $file in
          *.exe)
@@ -9590,12 +11086,12 @@ func_mode_uninstall ()
 
            # note $name still contains .exe if it was in $file originally
            # as does the version of $file that was added into $rmfiles
-           func_append rmfiles " $odir/$name $odir/${name}S.${objext}"
-           if test "$fast_install" = yes && test -n "$relink_command"; then
+           func_append rmfiles " $odir/$name $odir/${name}S.$objext"
+           if test yes = "$fast_install" && test -n "$relink_command"; then
              func_append rmfiles " $odir/lt-$name"
            fi
-           if test "X$noexename" != "X$name" ; then
-             func_append rmfiles " $odir/lt-${noexename}.c"
+           if test "X$noexename" != "X$name"; then
+             func_append rmfiles " $odir/lt-$noexename.c"
            fi
          fi
        fi
@@ -9604,7 +11100,7 @@ func_mode_uninstall ()
       func_show_eval "$RM $rmfiles" 'exit_status=1'
     done
 
-    # Try to remove the ${objdir}s in the directories where we deleted files
+    # Try to remove the $objdir's in the directories where we deleted files
     for dir in $rmdirs; do
       if test -d "$dir"; then
        func_show_eval "rmdir $dir >/dev/null 2>&1"
@@ -9614,16 +11110,17 @@ func_mode_uninstall ()
     exit $exit_status
 }
 
-{ test "$opt_mode" = uninstall || test "$opt_mode" = clean; } &&
-    func_mode_uninstall ${1+"$@"}
+if test uninstall = "$opt_mode" || test clean = "$opt_mode"; then
+  func_mode_uninstall ${1+"$@"}
+fi
 
 test -z "$opt_mode" && {
-  help="$generic_help"
+  help=$generic_help
   func_fatal_help "you must specify a MODE"
 }
 
 test -z "$exec_cmd" && \
-  func_fatal_help "invalid operation mode \`$opt_mode'"
+  func_fatal_help "invalid operation mode '$opt_mode'"
 
 if test -n "$exec_cmd"; then
   eval exec "$exec_cmd"
@@ -9634,7 +11131,7 @@ exit $exit_status
 
 
 # The TAGs below are defined such that we never get into a situation
-# in which we disable both kinds of libraries.  Given conflicting
+# where we disable both kinds of libraries.  Given conflicting
 # choices, we go for a static library, that is the most portable,
 # since we can't tell whether shared libraries were disabled because
 # the user asked for that or because the platform doesn't support
@@ -9657,5 +11154,3 @@ build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac`
 # mode:shell-script
 # sh-indentation:2
 # End:
-# vi:sw=2
-
index 7ee7897..157e74d 100644 (file)
@@ -61,8 +61,7 @@
 /* Define to 1 if you have the <unistd.h> header file. */
 #undef HAVE_UNISTD_H
 
-/* Define to the sub-directory in which libtool stores uninstalled libraries.
-   */
+/* Define to the sub-directory where libtool stores uninstalled libraries. */
 #undef LT_OBJDIR
 
 /* Name of package */
index c518c15..0268aaa 100755 (executable)
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for Moonshot-ui 0.7.2.
+# Generated by GNU Autoconf 2.69 for Moonshot-ui 1.0.3.
 #
 # Report bugs to <moonshot-community@jiscmail.ac.uk>.
 #
@@ -650,8 +650,8 @@ MAKEFLAGS=
 # Identity of this package.
 PACKAGE_NAME='Moonshot-ui'
 PACKAGE_TARNAME='moonshot-ui'
-PACKAGE_VERSION='0.7.2'
-PACKAGE_STRING='Moonshot-ui 0.7.2'
+PACKAGE_VERSION='1.0.3'
+PACKAGE_STRING='Moonshot-ui 1.0.3'
 PACKAGE_BUGREPORT='moonshot-community@jiscmail.ac.uk'
 PACKAGE_URL='http://www.project-moonshot.org/'
 
@@ -748,21 +748,27 @@ OS_WIN32_FALSE
 OS_WIN32_TRUE
 OS_LINUX_FALSE
 OS_LINUX_TRUE
-GEE_0_8_FALSE
-GEE_0_8_TRUE
-GEE_LIBS
-GEE_CFLAGS
+LOG4VALA_FALSE
+LOG4VALA_TRUE
+GEE_VERSION
+LIB_GEE_LIBS
+LIB_GEE_CFLAGS
+LOG4VALA_VERSION
+LOG4VALA_LIBS
+LOG4VALA_CFLAGS
+GTK_VERSION
+GTK_LIBS
+GTK_CFLAGS
 GDBUS_LIBS
 GDBUS_CFLAGS
 MAC_LIBS
 MAC_CFLAGS
-GTK_LIBS
-GTK_CFLAGS
 VALAC
 PKG_CONFIG_LIBDIR
 PKG_CONFIG_PATH
 PKG_CONFIG
 CPP
+LT_SYS_LIBRARY_PATH
 OTOOL64
 OTOOL
 LIPO
@@ -859,6 +865,7 @@ infodir
 docdir
 oldincludedir
 includedir
+runstatedir
 localstatedir
 sharedstatedir
 sysconfdir
@@ -887,10 +894,12 @@ enable_shared
 enable_static
 with_pic
 enable_fast_install
+with_aix_soname
 enable_dependency_tracking
 with_gnu_ld
 with_sysroot
 enable_libtool_lock
+enable_log4vala
 enable_nls
 enable_rpath
 with_libiconv_prefix
@@ -904,18 +913,21 @@ CFLAGS
 LDFLAGS
 LIBS
 CPPFLAGS
+LT_SYS_LIBRARY_PATH
 CPP
 PKG_CONFIG
 PKG_CONFIG_PATH
 PKG_CONFIG_LIBDIR
-GTK_CFLAGS
-GTK_LIBS
 MAC_CFLAGS
 MAC_LIBS
 GDBUS_CFLAGS
 GDBUS_LIBS
-GEE_CFLAGS
-GEE_LIBS
+GTK_CFLAGS
+GTK_LIBS
+LOG4VALA_CFLAGS
+LOG4VALA_LIBS
+LIB_GEE_CFLAGS
+LIB_GEE_LIBS
 moonshot_CFLAGS
 moonshot_LIBS
 libmoonshot_CFLAGS
@@ -958,6 +970,7 @@ datadir='${datarootdir}'
 sysconfdir='${prefix}/etc'
 sharedstatedir='${prefix}/com'
 localstatedir='${prefix}/var'
+runstatedir='${localstatedir}/run'
 includedir='${prefix}/include'
 oldincludedir='/usr/include'
 docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
@@ -1210,6 +1223,15 @@ do
   | -silent | --silent | --silen | --sile | --sil)
     silent=yes ;;
 
+  -runstatedir | --runstatedir | --runstatedi | --runstated \
+  | --runstate | --runstat | --runsta | --runst | --runs \
+  | --run | --ru | --r)
+    ac_prev=runstatedir ;;
+  -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \
+  | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \
+  | --run=* | --ru=* | --r=*)
+    runstatedir=$ac_optarg ;;
+
   -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
     ac_prev=sbindir ;;
   -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
@@ -1347,7 +1369,7 @@ fi
 for ac_var in  exec_prefix prefix bindir sbindir libexecdir datarootdir \
                datadir sysconfdir sharedstatedir localstatedir includedir \
                oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
-               libdir localedir mandir
+               libdir localedir mandir runstatedir
 do
   eval ac_val=\$$ac_var
   # Remove trailing slashes.
@@ -1460,7 +1482,7 @@ if test "$ac_init_help" = "long"; then
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures Moonshot-ui 0.7.2 to adapt to many kinds of systems.
+\`configure' configures Moonshot-ui 1.0.3 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1500,6 +1522,7 @@ Fine tuning of the installation directories:
   --sysconfdir=DIR        read-only single-machine data [PREFIX/etc]
   --sharedstatedir=DIR    modifiable architecture-independent data [PREFIX/com]
   --localstatedir=DIR     modifiable single-machine data [PREFIX/var]
+  --runstatedir=DIR       modifiable per-process data [LOCALSTATEDIR/run]
   --libdir=DIR            object code libraries [EPREFIX/lib]
   --includedir=DIR        C header files [PREFIX/include]
   --oldincludedir=DIR     C header files for non-gcc [/usr/include]
@@ -1530,7 +1553,7 @@ fi
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of Moonshot-ui 0.7.2:";;
+     short | recursive ) echo "Configuration of Moonshot-ui 1.0.3:";;
    esac
   cat <<\_ACEOF
 
@@ -1552,6 +1575,7 @@ Optional Features:
   --disable-dependency-tracking
                           speeds up one-time build
   --disable-libtool-lock  avoid locking (might break parallel builds)
+  --enable-log4vala    Enable use of log4vala for logging
   --disable-nls           do not use Native Language Support
   --disable-rpath         do not hardcode runtime library paths
 
@@ -1560,9 +1584,12 @@ Optional Packages:
   --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
   --with-pic[=PKGS]       try to use only PIC/non-PIC objects [default=use
                           both]
+  --with-aix-soname=aix|svr4|both
+                          shared library versioning (aka "SONAME") variant to
+                          provide on AIX, [default=aix].
   --with-gnu-ld           assume the C compiler uses GNU ld [default=no]
-  --with-sysroot=DIR Search for dependent libraries within DIR
-                        (or the compiler's sysroot if not specified).
+  --with-sysroot[=DIR]    Search for dependent libraries within DIR (or the
+                          compiler's sysroot if not specified).
   --with-gnu-ld           assume the C compiler uses GNU ld default=no
   --with-libiconv-prefix[=DIR]  search for libiconv in DIR/include and DIR/lib
   --without-libiconv-prefix     don't search for libiconv in includedir and libdir
@@ -1577,21 +1604,29 @@ Some influential environment variables:
   LIBS        libraries to pass to the linker, e.g. -l<library>
   CPPFLAGS    (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
               you have headers in a nonstandard directory <include dir>
+  LT_SYS_LIBRARY_PATH
+              User-defined run-time library search path.
   CPP         C preprocessor
   PKG_CONFIG  path to pkg-config utility
   PKG_CONFIG_PATH
               directories to add to pkg-config's search path
   PKG_CONFIG_LIBDIR
               path overriding pkg-config's built-in search path
-  GTK_CFLAGS  C compiler flags for GTK, overriding pkg-config
-  GTK_LIBS    linker flags for GTK, overriding pkg-config
   MAC_CFLAGS  C compiler flags for MAC, overriding pkg-config
   MAC_LIBS    linker flags for MAC, overriding pkg-config
   GDBUS_CFLAGS
               C compiler flags for GDBUS, overriding pkg-config
   GDBUS_LIBS  linker flags for GDBUS, overriding pkg-config
-  GEE_CFLAGS  C compiler flags for GEE, overriding pkg-config
-  GEE_LIBS    linker flags for GEE, overriding pkg-config
+  GTK_CFLAGS  C compiler flags for GTK, overriding pkg-config
+  GTK_LIBS    linker flags for GTK, overriding pkg-config
+  LOG4VALA_CFLAGS
+              C compiler flags for LOG4VALA, overriding pkg-config
+  LOG4VALA_LIBS
+              linker flags for LOG4VALA, overriding pkg-config
+  LIB_GEE_CFLAGS
+              C compiler flags for LIB_GEE, overriding pkg-config
+  LIB_GEE_LIBS
+              linker flags for LIB_GEE, overriding pkg-config
   moonshot_CFLAGS
               C compiler flags for moonshot, overriding pkg-config
   moonshot_LIBS
@@ -1668,7 +1703,7 @@ fi
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-Moonshot-ui configure 0.7.2
+Moonshot-ui configure 1.0.3
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1946,7 +1981,7 @@ cat >config.log <<_ACEOF
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by Moonshot-ui $as_me 0.7.2, which was
+It was created by Moonshot-ui $as_me 1.0.3, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -2338,7 +2373,7 @@ ac_configure="$SHELL $ac_aux_dir/configure"  # Please don't use this var.
 
 
 
-am__api_version='1.14'
+am__api_version='1.15'
 
 # Find a good install program.  We prefer a C program (faster),
 # so one script is as good as another.  But avoid the broken or
@@ -2510,8 +2545,8 @@ test "$program_suffix" != NONE &&
 ac_script='s/[\\$]/&&/g;s/;s,x,x,$//'
 program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
 
-# expand $ac_aux_dir to an absolute path
-am_aux_dir=`cd $ac_aux_dir && pwd`
+# Expand $ac_aux_dir to an absolute path.
+am_aux_dir=`cd "$ac_aux_dir" && pwd`
 
 if test x"${MISSING+set}" != xset; then
   case $am_aux_dir in
@@ -2530,7 +2565,7 @@ else
 $as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;}
 fi
 
-if test x"${install_sh}" != xset; then
+if test x"${install_sh+set}" != xset; then
   case $am_aux_dir in
   *\ * | *\    *)
     install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
@@ -2824,7 +2859,7 @@ fi
 
 # Define the identity of the package.
  PACKAGE='moonshot-ui'
- VERSION='0.7.2'
+ VERSION='1.0.3'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -2858,8 +2893,8 @@ MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
 # <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
 mkdir_p='$(MKDIR_P)'
 
-# We need awk for the "check" target.  The system "awk" is bad on
-# some platforms.
+# We need awk for the "check" target (and possibly the TAP driver).  The
+# system "awk" is bad on some platforms.
 # Always define AMTAR for backward compatibility.  Yes, it's still used
 # in the wild :-(  We should find a proper way to deprecate it ...
 AMTAR='$${TAR-tar}'
@@ -3074,8 +3109,8 @@ esac
 
 
 
-macro_version='2.4.2'
-macro_revision='1.3337'
+macro_version='2.4.6'
+macro_revision='2.4.6'
 
 
 
@@ -3089,7 +3124,7 @@ macro_revision='1.3337'
 
 
 
-ltmain="$ac_aux_dir/ltmain.sh"
+ltmain=$ac_aux_dir/ltmain.sh
 
 # Make sure we can run config.sub.
 $SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
@@ -3209,7 +3244,7 @@ func_echo_all ()
     $ECHO ""
 }
 
-case "$ECHO" in
+case $ECHO in
   printf*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: printf" >&5
 $as_echo "printf" >&6; } ;;
   print*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: print -r" >&5
@@ -4571,19 +4606,19 @@ test -z "$GREP" && GREP=grep
 
 # Check whether --with-gnu-ld was given.
 if test "${with_gnu_ld+set}" = set; then :
-  withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes
+  withval=$with_gnu_ld; test no = "$withval" || with_gnu_ld=yes
 else
   with_gnu_ld=no
 fi
 
 ac_prog=ld
-if test "$GCC" = yes; then
+if test yes = "$GCC"; then
   # Check if gcc -print-prog-name=ld gives a path.
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
 $as_echo_n "checking for ld used by $CC... " >&6; }
   case $host in
   *-*-mingw*)
-    # gcc leaves a trailing carriage return which upsets mingw
+    # gcc leaves a trailing carriage return, which upsets mingw
     ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
   *)
     ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
@@ -4597,7 +4632,7 @@ $as_echo_n "checking for ld used by $CC... " >&6; }
       while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
        ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
       done
-      test -z "$LD" && LD="$ac_prog"
+      test -z "$LD" && LD=$ac_prog
       ;;
   "")
     # If it fails, then pretend we aren't using GCC.
@@ -4608,7 +4643,7 @@ $as_echo_n "checking for ld used by $CC... " >&6; }
     with_gnu_ld=unknown
     ;;
   esac
-elif test "$with_gnu_ld" = yes; then
+elif test yes = "$with_gnu_ld"; then
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
 $as_echo_n "checking for GNU ld... " >&6; }
 else
@@ -4619,32 +4654,32 @@ if ${lt_cv_path_LD+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   if test -z "$LD"; then
-  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+  lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
   for ac_dir in $PATH; do
-    IFS="$lt_save_ifs"
+    IFS=$lt_save_ifs
     test -z "$ac_dir" && ac_dir=.
     if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
-      lt_cv_path_LD="$ac_dir/$ac_prog"
+      lt_cv_path_LD=$ac_dir/$ac_prog
       # Check to see if the program is GNU ld.  I'd rather use --version,
       # but apparently some variants of GNU ld only accept -v.
       # Break only if it was the GNU/non-GNU ld that we prefer.
       case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
       *GNU* | *'with BFD'*)
-       test "$with_gnu_ld" != no && break
+       test no != "$with_gnu_ld" && break
        ;;
       *)
-       test "$with_gnu_ld" != yes && break
+       test yes != "$with_gnu_ld" && break
        ;;
       esac
     fi
   done
-  IFS="$lt_save_ifs"
+  IFS=$lt_save_ifs
 else
-  lt_cv_path_LD="$LD" # Let the user override the test with a path.
+  lt_cv_path_LD=$LD # Let the user override the test with a path.
 fi
 fi
 
-LD="$lt_cv_path_LD"
+LD=$lt_cv_path_LD
 if test -n "$LD"; then
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
 $as_echo "$LD" >&6; }
@@ -4687,33 +4722,38 @@ if ${lt_cv_path_NM+:} false; then :
 else
   if test -n "$NM"; then
   # Let the user override the test.
-  lt_cv_path_NM="$NM"
+  lt_cv_path_NM=$NM
 else
-  lt_nm_to_check="${ac_tool_prefix}nm"
+  lt_nm_to_check=${ac_tool_prefix}nm
   if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
     lt_nm_to_check="$lt_nm_to_check nm"
   fi
   for lt_tmp_nm in $lt_nm_to_check; do
-    lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+    lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
     for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
-      IFS="$lt_save_ifs"
+      IFS=$lt_save_ifs
       test -z "$ac_dir" && ac_dir=.
-      tmp_nm="$ac_dir/$lt_tmp_nm"
-      if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
+      tmp_nm=$ac_dir/$lt_tmp_nm
+      if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then
        # Check to see if the nm accepts a BSD-compat flag.
-       # Adding the `sed 1q' prevents false positives on HP-UX, which says:
+       # Adding the 'sed 1q' prevents false positives on HP-UX, which says:
        #   nm: unknown option "B" ignored
        # Tru64's nm complains that /dev/null is an invalid object file
-       case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
-       */dev/null* | *'Invalid file or object type'*)
+       # MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty
+       case $build_os in
+       mingw*) lt_bad_file=conftest.nm/nofile ;;
+       *) lt_bad_file=/dev/null ;;
+       esac
+       case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in
+       *$lt_bad_file* | *'Invalid file or object type'*)
          lt_cv_path_NM="$tmp_nm -B"
-         break
+         break 2
          ;;
        *)
          case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
          */dev/null*)
            lt_cv_path_NM="$tmp_nm -p"
-           break
+           break 2
            ;;
          *)
            lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
@@ -4724,15 +4764,15 @@ else
        esac
       fi
     done
-    IFS="$lt_save_ifs"
+    IFS=$lt_save_ifs
   done
   : ${lt_cv_path_NM=no}
 fi
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5
 $as_echo "$lt_cv_path_NM" >&6; }
-if test "$lt_cv_path_NM" != "no"; then
-  NM="$lt_cv_path_NM"
+if test no != "$lt_cv_path_NM"; then
+  NM=$lt_cv_path_NM
 else
   # Didn't find any BSD compatible name lister, look for dumpbin.
   if test -n "$DUMPBIN"; then :
@@ -4838,9 +4878,9 @@ esac
   fi
 fi
 
-    case `$DUMPBIN -symbols /dev/null 2>&1 | sed '1q'` in
+    case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in
     *COFF*)
-      DUMPBIN="$DUMPBIN -symbols"
+      DUMPBIN="$DUMPBIN -symbols -headers"
       ;;
     *)
       DUMPBIN=:
@@ -4848,8 +4888,8 @@ fi
     esac
   fi
 
-  if test "$DUMPBIN" != ":"; then
-    NM="$DUMPBIN"
+  if test : != "$DUMPBIN"; then
+    NM=$DUMPBIN
   fi
 fi
 test -z "$NM" && NM=nm
@@ -4900,7 +4940,7 @@ if ${lt_cv_sys_max_cmd_len+:} false; then :
   $as_echo_n "(cached) " >&6
 else
     i=0
-  teststring="ABCD"
+  teststring=ABCD
 
   case $build_os in
   msdosdjgpp*)
@@ -4940,7 +4980,7 @@ else
     lt_cv_sys_max_cmd_len=8192;
     ;;
 
-  netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
+  bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*)
     # This has been around since 386BSD, at least.  Likely further.
     if test -x /sbin/sysctl; then
       lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
@@ -4991,22 +5031,22 @@ else
   *)
     lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
     if test -n "$lt_cv_sys_max_cmd_len" && \
-       test undefined != "$lt_cv_sys_max_cmd_len"; then
+       test undefined != "$lt_cv_sys_max_cmd_len"; then
       lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
       lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
     else
       # Make teststring a little bigger before we do anything with it.
       # a 1K string should be a reasonable start.
-      for i in 1 2 3 4 5 6 7 8 ; do
+      for i in 1 2 3 4 5 6 7 8; do
         teststring=$teststring$teststring
       done
       SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
       # If test is not a shell built-in, we'll probably end up computing a
       # maximum length that is only half of the actual maximum length, but
       # we can't tell.
-      while { test "X"`env echo "$teststring$teststring" 2>/dev/null` \
+      while { test X`env echo "$teststring$teststring" 2>/dev/null` \
                 = "X$teststring$teststring"; } >/dev/null 2>&1 &&
-             test $i != 17 # 1/2 MB should be enough
+             test 17 != "$i" # 1/2 MB should be enough
       do
         i=`expr $i + 1`
         teststring=$teststring$teststring
@@ -5024,7 +5064,7 @@ else
 
 fi
 
-if test -n $lt_cv_sys_max_cmd_len ; then
+if test -n "$lt_cv_sys_max_cmd_len"; then
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5
 $as_echo "$lt_cv_sys_max_cmd_len" >&6; }
 else
@@ -5042,30 +5082,6 @@ max_cmd_len=$lt_cv_sys_max_cmd_len
 : ${MV="mv -f"}
 : ${RM="rm -f"}
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the shell understands some XSI constructs" >&5
-$as_echo_n "checking whether the shell understands some XSI constructs... " >&6; }
-# Try some XSI features
-xsi_shell=no
-( _lt_dummy="a/b/c"
-  test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \
-      = c,a/b,b/c, \
-    && eval 'test $(( 1 + 1 )) -eq 2 \
-    && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
-  && xsi_shell=yes
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $xsi_shell" >&5
-$as_echo "$xsi_shell" >&6; }
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the shell understands \"+=\"" >&5
-$as_echo_n "checking whether the shell understands \"+=\"... " >&6; }
-lt_shell_append=no
-( foo=bar; set foo baz; eval "$1+=\$2" && test "$foo" = barbaz ) \
-    >/dev/null 2>&1 \
-  && lt_shell_append=yes
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_shell_append" >&5
-$as_echo "$lt_shell_append" >&6; }
-
-
 if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
   lt_unset=unset
 else
@@ -5188,13 +5204,13 @@ esac
 reload_cmds='$LD$reload_flag -o $output$reload_objs'
 case $host_os in
   cygwin* | mingw* | pw32* | cegcc*)
-    if test "$GCC" != yes; then
+    if test yes != "$GCC"; then
       reload_cmds=false
     fi
     ;;
   darwin*)
-    if test "$GCC" = yes; then
-      reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
+    if test yes = "$GCC"; then
+      reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs'
     else
       reload_cmds='$LD$reload_flag -o $output$reload_objs'
     fi
@@ -5319,13 +5335,13 @@ lt_cv_deplibs_check_method='unknown'
 # Need to set the preceding variable on all platforms that support
 # interlibrary dependencies.
 # 'none' -- dependencies not supported.
-# `unknown' -- same as none, but documents that we really don't know.
+# 'unknown' -- same as none, but documents that we really don't know.
 # 'pass_all' -- all dependencies passed with no checks.
 # 'test_compile' -- check by making test program.
 # 'file_magic [[regex]]' -- check by looking for files in library path
-# which responds to the $file_magic_cmd with a given extended regex.
-# If you have `file' or equivalent on your system and you're not sure
-# whether `pass_all' will *always* work, you probably want this one.
+# that responds to the $file_magic_cmd with a given extended regex.
+# If you have 'file' or equivalent on your system and you're not sure
+# whether 'pass_all' will *always* work, you probably want this one.
 
 case $host_os in
 aix[4-9]*)
@@ -5352,8 +5368,7 @@ mingw* | pw32*)
   # Base MSYS/MinGW do not provide the 'file' command needed by
   # func_win32_libid shell function, so use a weaker test based on 'objdump',
   # unless we find 'file', for example because we are cross-compiling.
-  # func_win32_libid assumes BSD nm, so disallow it if using MS dumpbin.
-  if ( test "$lt_cv_nm_interface" = "BSD nm" && file / ) >/dev/null 2>&1; then
+  if ( file / ) >/dev/null 2>&1; then
     lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
     lt_cv_file_magic_cmd='func_win32_libid'
   else
@@ -5449,8 +5464,8 @@ newos6*)
   lt_cv_deplibs_check_method=pass_all
   ;;
 
-openbsd*)
-  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+openbsd* | bitrig*)
+  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
     lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$'
   else
     lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'
@@ -5503,6 +5518,9 @@ sysv4 | sysv4.3*)
 tpf*)
   lt_cv_deplibs_check_method=pass_all
   ;;
+os2*)
+  lt_cv_deplibs_check_method=pass_all
+  ;;
 esac
 
 fi
@@ -5657,8 +5675,8 @@ else
 
 case $host_os in
 cygwin* | mingw* | pw32* | cegcc*)
-  # two different shell functions defined in ltmain.sh
-  # decide which to use based on capabilities of $DLLTOOL
+  # two different shell functions defined in ltmain.sh;
+  # decide which one to use based on capabilities of $DLLTOOL
   case `$DLLTOOL --help 2>&1` in
   *--identify-strict*)
     lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
@@ -5670,7 +5688,7 @@ cygwin* | mingw* | pw32* | cegcc*)
   ;;
 *)
   # fallback: assume linklib IS sharedlib
-  lt_cv_sharedlib_from_linklib_cmd="$ECHO"
+  lt_cv_sharedlib_from_linklib_cmd=$ECHO
   ;;
 esac
 
@@ -5825,7 +5843,7 @@ if ac_fn_c_try_compile "$LINENO"; then :
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }
-      if test "$ac_status" -eq 0; then
+      if test 0 -eq "$ac_status"; then
        # Ensure the archiver fails upon bogus file names.
        rm -f conftest.$ac_objext libconftest.a
        { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5
@@ -5833,7 +5851,7 @@ if ac_fn_c_try_compile "$LINENO"; then :
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }
-       if test "$ac_status" -ne 0; then
+       if test 0 -ne "$ac_status"; then
           lt_cv_ar_at_file=@
         fi
       fi
@@ -5846,7 +5864,7 @@ fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5
 $as_echo "$lt_cv_ar_at_file" >&6; }
 
-if test "x$lt_cv_ar_at_file" = xno; then
+if test no = "$lt_cv_ar_at_file"; then
   archiver_list_spec=
 else
   archiver_list_spec=$lt_cv_ar_at_file
@@ -6063,7 +6081,7 @@ old_postuninstall_cmds=
 
 if test -n "$RANLIB"; then
   case $host_os in
-  openbsd*)
+  bitrig* | openbsd*)
     old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"
     ;;
   *)
@@ -6153,7 +6171,7 @@ cygwin* | mingw* | pw32* | cegcc*)
   symcode='[ABCDGISTW]'
   ;;
 hpux*)
-  if test "$host_cpu" = ia64; then
+  if test ia64 = "$host_cpu"; then
     symcode='[ABCDEGRST]'
   fi
   ;;
@@ -6186,14 +6204,44 @@ case `$NM -V 2>&1` in
   symcode='[ABCDGIRSTW]' ;;
 esac
 
+if test "$lt_cv_nm_interface" = "MS dumpbin"; then
+  # Gets list of data symbols to import.
+  lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'"
+  # Adjust the below global symbol transforms to fixup imported variables.
+  lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'"
+  lt_c_name_hook=" -e 's/^I .* \(.*\)$/  {\"\1\", (void *) 0},/p'"
+  lt_c_name_lib_hook="\
+  -e 's/^I .* \(lib.*\)$/  {\"\1\", (void *) 0},/p'\
+  -e 's/^I .* \(.*\)$/  {\"lib\1\", (void *) 0},/p'"
+else
+  # Disable hooks by default.
+  lt_cv_sys_global_symbol_to_import=
+  lt_cdecl_hook=
+  lt_c_name_hook=
+  lt_c_name_lib_hook=
+fi
+
 # Transform an extracted symbol line into a proper C declaration.
 # Some systems (esp. on ia64) link data and code symbols differently,
 # so use this general approach.
-lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
+lt_cv_sys_global_symbol_to_cdecl="sed -n"\
+$lt_cdecl_hook\
+" -e 's/^T .* \(.*\)$/extern int \1();/p'"\
+" -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'"
 
 # Transform an extracted symbol line into symbol name and symbol address
-lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\)[ ]*$/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/  {\"\2\", (void *) \&\2},/p'"
-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([^ ]*\)[ ]*$/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \(lib[^ ]*\)$/  {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/  {\"lib\2\", (void *) \&\2},/p'"
+lt_cv_sys_global_symbol_to_c_name_address="sed -n"\
+$lt_c_name_hook\
+" -e 's/^: \(.*\) .*$/  {\"\1\", (void *) 0},/p'"\
+" -e 's/^$symcode$symcode* .* \(.*\)$/  {\"\1\", (void *) \&\1},/p'"
+
+# Transform an extracted symbol line into symbol name with lib prefix and
+# symbol address.
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\
+$lt_c_name_lib_hook\
+" -e 's/^: \(.*\) .*$/  {\"\1\", (void *) 0},/p'"\
+" -e 's/^$symcode$symcode* .* \(lib.*\)$/  {\"\1\", (void *) \&\1},/p'"\
+" -e 's/^$symcode$symcode* .* \(.*\)$/  {\"lib\1\", (void *) \&\1},/p'"
 
 # Handle CRLF in mingw tool chain
 opt_cr=
@@ -6211,21 +6259,24 @@ for ac_symprfx in "" "_"; do
 
   # Write the raw and C identifiers.
   if test "$lt_cv_nm_interface" = "MS dumpbin"; then
-    # Fake it for dumpbin and say T for any non-static function
-    # and D for any global variable.
+    # Fake it for dumpbin and say T for any non-static function,
+    # D for any global variable and I for any imported variable.
     # Also find C++ and __fastcall symbols from MSVC++,
     # which start with @ or ?.
     lt_cv_sys_global_symbol_pipe="$AWK '"\
 "     {last_section=section; section=\$ 3};"\
 "     /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\
 "     /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
+"     /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\
+"     /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\
+"     /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\
 "     \$ 0!~/External *\|/{next};"\
 "     / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
 "     {if(hide[section]) next};"\
-"     {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
-"     {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
-"     s[1]~/^[@?]/{print s[1], s[1]; next};"\
-"     s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
+"     {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\
+"     {split(\$ 0,a,/\||\r/); split(a[2],s)};"\
+"     s[1]~/^[@?]/{print f,s[1],s[1]; next};"\
+"     s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\
 "     ' prfx=^$ac_symprfx"
   else
     lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[     ]\($symcode$symcode*\)[         ][      ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
@@ -6273,11 +6324,11 @@ _LT_EOF
        if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
          cat <<_LT_EOF > conftest.$ac_ext
 /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests.  */
-#if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE)
-/* DATA imports from DLLs on WIN32 con't be const, because runtime
+#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE
+/* DATA imports from DLLs on WIN32 can't be const, because runtime
    relocations are performed -- see ld's documentation on pseudo-relocs.  */
 # define LT_DLSYM_CONST
-#elif defined(__osf__)
+#elif defined __osf__
 /* This system does not cope well with relocations in const data.  */
 # define LT_DLSYM_CONST
 #else
@@ -6303,7 +6354,7 @@ lt__PROGRAM__LTX_preloaded_symbols[] =
 {
   { "@PROGRAM@", (void *) 0 },
 _LT_EOF
-         $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/  {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
+         $SED "s/^$symcode$symcode* .* \(.*\)$/  {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
          cat <<\_LT_EOF >> conftest.$ac_ext
   {0, (void *) 0}
 };
@@ -6323,13 +6374,13 @@ _LT_EOF
          mv conftest.$ac_objext conftstm.$ac_objext
          lt_globsym_save_LIBS=$LIBS
          lt_globsym_save_CFLAGS=$CFLAGS
-         LIBS="conftstm.$ac_objext"
+         LIBS=conftstm.$ac_objext
          CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
          if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
   (eval $ac_link) 2>&5
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && test -s conftest${ac_exeext}; then
+  test $ac_status = 0; } && test -s conftest$ac_exeext; then
            pipe_works=yes
          fi
          LIBS=$lt_globsym_save_LIBS
@@ -6350,7 +6401,7 @@ _LT_EOF
   rm -rf conftest* conftst*
 
   # Do not use the global_symbol_pipe unless it works.
-  if test "$pipe_works" = yes; then
+  if test yes = "$pipe_works"; then
     break
   else
     lt_cv_sys_global_symbol_pipe=
@@ -6403,6 +6454,16 @@ fi
 
 
 
+
+
+
+
+
+
+
+
+
+
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
 $as_echo_n "checking for sysroot... " >&6; }
 
@@ -6415,9 +6476,9 @@ fi
 
 
 lt_sysroot=
-case ${with_sysroot} in #(
+case $with_sysroot in #(
  yes)
-   if test "$GCC" = yes; then
+   if test yes = "$GCC"; then
      lt_sysroot=`$CC --print-sysroot 2>/dev/null`
    fi
    ;; #(
@@ -6427,8 +6488,8 @@ case ${with_sysroot} in #(
  no|'')
    ;; #(
  *)
-   { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_sysroot}" >&5
-$as_echo "${with_sysroot}" >&6; }
+   { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_sysroot" >&5
+$as_echo "$with_sysroot" >&6; }
    as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5
    ;;
 esac
@@ -6440,18 +6501,99 @@ $as_echo "${lt_sysroot:-no}" >&6; }
 
 
 
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a working dd" >&5
+$as_echo_n "checking for a working dd... " >&6; }
+if ${ac_cv_path_lt_DD+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  printf 0123456789abcdef0123456789abcdef >conftest.i
+cat conftest.i conftest.i >conftest2.i
+: ${lt_DD:=$DD}
+if test -z "$lt_DD"; then
+  ac_path_lt_DD_found=false
+  # Loop through the user's path and test for each of PROGNAME-LIST
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+    for ac_prog in dd; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
+      ac_path_lt_DD="$as_dir/$ac_prog$ac_exec_ext"
+      as_fn_executable_p "$ac_path_lt_DD" || continue
+if "$ac_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
+  cmp -s conftest.i conftest.out \
+  && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=:
+fi
+      $ac_path_lt_DD_found && break 3
+    done
+  done
+  done
+IFS=$as_save_IFS
+  if test -z "$ac_cv_path_lt_DD"; then
+    :
+  fi
+else
+  ac_cv_path_lt_DD=$lt_DD
+fi
+
+rm -f conftest.i conftest2.i conftest.out
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_lt_DD" >&5
+$as_echo "$ac_cv_path_lt_DD" >&6; }
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to truncate binary pipes" >&5
+$as_echo_n "checking how to truncate binary pipes... " >&6; }
+if ${lt_cv_truncate_bin+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  printf 0123456789abcdef0123456789abcdef >conftest.i
+cat conftest.i conftest.i >conftest2.i
+lt_cv_truncate_bin=
+if "$ac_cv_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
+  cmp -s conftest.i conftest.out \
+  && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1"
+fi
+rm -f conftest.i conftest2.i conftest.out
+test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_truncate_bin" >&5
+$as_echo "$lt_cv_truncate_bin" >&6; }
+
+
+
+
+
+
+
+# Calculate cc_basename.  Skip known compiler wrappers and cross-prefix.
+func_cc_basename ()
+{
+    for cc_temp in $*""; do
+      case $cc_temp in
+        compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
+        distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
+        \-*) ;;
+        *) break;;
+      esac
+    done
+    func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
+}
+
 # Check whether --enable-libtool-lock was given.
 if test "${enable_libtool_lock+set}" = set; then :
   enableval=$enable_libtool_lock;
 fi
 
-test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
+test no = "$enable_libtool_lock" || enable_libtool_lock=yes
 
 # Some flags need to be propagated to the compiler or linker for good
 # libtool support.
 case $host in
 ia64-*-hpux*)
-  # Find out which ABI we are using.
+  # Find out what ABI is being produced by ac_compile, and set mode
+  # options accordingly.
   echo 'int i;' > conftest.$ac_ext
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
@@ -6460,24 +6602,25 @@ ia64-*-hpux*)
   test $ac_status = 0; }; then
     case `/usr/bin/file conftest.$ac_objext` in
       *ELF-32*)
-       HPUX_IA64_MODE="32"
+       HPUX_IA64_MODE=32
        ;;
       *ELF-64*)
-       HPUX_IA64_MODE="64"
+       HPUX_IA64_MODE=64
        ;;
     esac
   fi
   rm -rf conftest*
   ;;
 *-*-irix6*)
-  # Find out which ABI we are using.
+  # Find out what ABI is being produced by ac_compile, and set linker
+  # options accordingly.
   echo '#line '$LINENO' "configure"' > conftest.$ac_ext
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-    if test "$lt_cv_prog_gnu_ld" = yes; then
+    if test yes = "$lt_cv_prog_gnu_ld"; then
       case `/usr/bin/file conftest.$ac_objext` in
        *32-bit*)
          LD="${LD-ld} -melf32bsmip"
@@ -6506,9 +6649,50 @@ ia64-*-hpux*)
   rm -rf conftest*
   ;;
 
+mips64*-*linux*)
+  # Find out what ABI is being produced by ac_compile, and set linker
+  # options accordingly.
+  echo '#line '$LINENO' "configure"' > conftest.$ac_ext
+  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+    emul=elf
+    case `/usr/bin/file conftest.$ac_objext` in
+      *32-bit*)
+       emul="${emul}32"
+       ;;
+      *64-bit*)
+       emul="${emul}64"
+       ;;
+    esac
+    case `/usr/bin/file conftest.$ac_objext` in
+      *MSB*)
+       emul="${emul}btsmip"
+       ;;
+      *LSB*)
+       emul="${emul}ltsmip"
+       ;;
+    esac
+    case `/usr/bin/file conftest.$ac_objext` in
+      *N32*)
+       emul="${emul}n32"
+       ;;
+    esac
+    LD="${LD-ld} -m $emul"
+  fi
+  rm -rf conftest*
+  ;;
+
 x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \
 s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
-  # Find out which ABI we are using.
+  # Find out what ABI is being produced by ac_compile, and set linker
+  # options accordingly.  Note that the listed cases only cover the
+  # situations where additional linker options are needed (such as when
+  # doing 32-bit compilation for a host where ld defaults to 64-bit, or
+  # vice versa); the common cases where no linker options are needed do
+  # not appear in the list.
   echo 'int i;' > conftest.$ac_ext
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
@@ -6531,10 +6715,10 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
                ;;
            esac
            ;;
-         powerpc64le-*)
+         powerpc64le-*linux*)
            LD="${LD-ld} -m elf32lppclinux"
            ;;
-         powerpc64-*)
+         powerpc64-*linux*)
            LD="${LD-ld} -m elf32ppclinux"
            ;;
          s390x-*linux*)
@@ -6553,10 +6737,10 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
          x86_64-*linux*)
            LD="${LD-ld} -m elf_x86_64"
            ;;
-         powerpcle-*)
+         powerpcle-*linux*)
            LD="${LD-ld} -m elf64lppc"
            ;;
-         powerpc-*)
+         powerpc-*linux*)
            LD="${LD-ld} -m elf64ppc"
            ;;
          s390*-*linux*|s390*-*tpf*)
@@ -6574,7 +6758,7 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
 
 *-*-sco3.2v5*)
   # On SCO OpenServer 5, we need -belf to get full-featured binaries.
-  SAVE_CFLAGS="$CFLAGS"
+  SAVE_CFLAGS=$CFLAGS
   CFLAGS="$CFLAGS -belf"
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5
 $as_echo_n "checking whether the C compiler needs -belf... " >&6; }
@@ -6614,13 +6798,14 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5
 $as_echo "$lt_cv_cc_needs_belf" >&6; }
-  if test x"$lt_cv_cc_needs_belf" != x"yes"; then
+  if test yes != "$lt_cv_cc_needs_belf"; then
     # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
-    CFLAGS="$SAVE_CFLAGS"
+    CFLAGS=$SAVE_CFLAGS
   fi
   ;;
 *-*solaris*)
-  # Find out which ABI we are using.
+  # Find out what ABI is being produced by ac_compile, and set linker
+  # options accordingly.
   echo 'int i;' > conftest.$ac_ext
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
@@ -6632,7 +6817,7 @@ $as_echo "$lt_cv_cc_needs_belf" >&6; }
       case $lt_cv_prog_gnu_ld in
       yes*)
         case $host in
-        i?86-*-solaris*)
+        i?86-*-solaris*|x86_64-*-solaris*)
           LD="${LD-ld} -m elf_x86_64"
           ;;
         sparc*-*-solaris*)
@@ -6641,7 +6826,7 @@ $as_echo "$lt_cv_cc_needs_belf" >&6; }
         esac
         # GNU ld 2.21 introduced _sol2 emulations.  Use them if available.
         if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then
-          LD="${LD-ld}_sol2"
+          LD=${LD-ld}_sol2
         fi
         ;;
       *)
@@ -6657,7 +6842,7 @@ $as_echo "$lt_cv_cc_needs_belf" >&6; }
   ;;
 esac
 
-need_locks="$enable_libtool_lock"
+need_locks=$enable_libtool_lock
 
 if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}mt", so it can be a program name with args.
@@ -6768,7 +6953,7 @@ else
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&5
 $as_echo "$lt_cv_path_mainfest_tool" >&6; }
-if test "x$lt_cv_path_mainfest_tool" != xyes; then
+if test yes != "$lt_cv_path_mainfest_tool"; then
   MANIFEST_TOOL=:
 fi
 
@@ -7271,7 +7456,7 @@ if ${lt_cv_apple_cc_single_mod+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   lt_cv_apple_cc_single_mod=no
-      if test -z "${LT_MULTI_MODULE}"; then
+      if test -z "$LT_MULTI_MODULE"; then
        # By default we will add the -single_module flag. You can override
        # by either setting the environment variable LT_MULTI_MODULE
        # non-empty at configure time, or by adding -multi_module to the
@@ -7289,7 +7474,7 @@ else
          cat conftest.err >&5
        # Otherwise, if the output was created with a 0 exit code from
        # the compiler, it worked.
-       elif test -f libconftest.dylib && test $_lt_result -eq 0; then
+       elif test -f libconftest.dylib && test 0 = "$_lt_result"; then
          lt_cv_apple_cc_single_mod=yes
        else
          cat conftest.err >&5
@@ -7328,7 +7513,7 @@ else
 fi
 rm -f core conftest.err conftest.$ac_objext \
     conftest$ac_exeext conftest.$ac_ext
-       LDFLAGS="$save_LDFLAGS"
+       LDFLAGS=$save_LDFLAGS
 
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5
@@ -7357,7 +7542,7 @@ _LT_EOF
       _lt_result=$?
       if test -s conftest.err && $GREP force_load conftest.err; then
        cat conftest.err >&5
-      elif test -f conftest && test $_lt_result -eq 0 && $GREP forced_load conftest >/dev/null 2>&1 ; then
+      elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then
        lt_cv_ld_force_load=yes
       else
        cat conftest.err >&5
@@ -7370,32 +7555,32 @@ fi
 $as_echo "$lt_cv_ld_force_load" >&6; }
     case $host_os in
     rhapsody* | darwin1.[012])
-      _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
+      _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;;
     darwin1.*)
-      _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+      _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
     darwin*) # darwin 5.x on
       # if running on 10.5 or later, the deployment target defaults
       # to the OS version, if on x86, and 10.4, the deployment
       # target defaults to 10.4. Don't you love it?
       case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
        10.0,*86*-darwin8*|10.0,*-darwin[91]*)
-         _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
-       10.[012]*)
-         _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+         _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
+       10.[012][,.]*)
+         _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
        10.*)
-         _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+         _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
       esac
     ;;
   esac
-    if test "$lt_cv_apple_cc_single_mod" = "yes"; then
+    if test yes = "$lt_cv_apple_cc_single_mod"; then
       _lt_dar_single_mod='$single_module'
     fi
-    if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
-      _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
+    if test yes = "$lt_cv_ld_exported_symbols_list"; then
+      _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym'
     else
-      _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
+      _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib'
     fi
-    if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then
+    if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then
       _lt_dsymutil='~$DSYMUTIL $lib || :'
     else
       _lt_dsymutil=
@@ -7403,6 +7588,41 @@ $as_echo "$lt_cv_ld_force_load" >&6; }
     ;;
   esac
 
+# func_munge_path_list VARIABLE PATH
+# -----------------------------------
+# VARIABLE is name of variable containing _space_ separated list of
+# directories to be munged by the contents of PATH, which is string
+# having a format:
+# "DIR[:DIR]:"
+#       string "DIR[ DIR]" will be prepended to VARIABLE
+# ":DIR[:DIR]"
+#       string "DIR[ DIR]" will be appended to VARIABLE
+# "DIRP[:DIRP]::[DIRA:]DIRA"
+#       string "DIRP[ DIRP]" will be prepended to VARIABLE and string
+#       "DIRA[ DIRA]" will be appended to VARIABLE
+# "DIR[:DIR]"
+#       VARIABLE will be replaced by "DIR[ DIR]"
+func_munge_path_list ()
+{
+    case x$2 in
+    x)
+        ;;
+    *:)
+        eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\"
+        ;;
+    x:*)
+        eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\"
+        ;;
+    *::*)
+        eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\"
+        eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\"
+        ;;
+    *)
+        eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\"
+        ;;
+    esac
+}
+
 ac_ext=c
 ac_cpp='$CPP $CPPFLAGS'
 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -8004,14 +8224,14 @@ if test "${enable_shared+set}" = set; then :
     *)
       enable_shared=no
       # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
       for pkg in $enableval; do
-       IFS="$lt_save_ifs"
+       IFS=$lt_save_ifs
        if test "X$pkg" = "X$p"; then
          enable_shared=yes
        fi
       done
-      IFS="$lt_save_ifs"
+      IFS=$lt_save_ifs
       ;;
     esac
 else
@@ -8035,14 +8255,14 @@ if test "${enable_static+set}" = set; then :
     *)
      enable_static=no
       # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
       for pkg in $enableval; do
-       IFS="$lt_save_ifs"
+       IFS=$lt_save_ifs
        if test "X$pkg" = "X$p"; then
          enable_static=yes
        fi
       done
-      IFS="$lt_save_ifs"
+      IFS=$lt_save_ifs
       ;;
     esac
 else
@@ -8066,14 +8286,14 @@ if test "${with_pic+set}" = set; then :
     *)
       pic_mode=default
       # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
       for lt_pkg in $withval; do
-       IFS="$lt_save_ifs"
+       IFS=$lt_save_ifs
        if test "X$lt_pkg" = "X$lt_p"; then
          pic_mode=yes
        fi
       done
-      IFS="$lt_save_ifs"
+      IFS=$lt_save_ifs
       ;;
     esac
 else
@@ -8081,8 +8301,6 @@ else
 fi
 
 
-test -z "$pic_mode" && pic_mode=default
-
 
 
 
@@ -8098,14 +8316,14 @@ if test "${enable_fast_install+set}" = set; then :
     *)
       enable_fast_install=no
       # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
       for pkg in $enableval; do
-       IFS="$lt_save_ifs"
+       IFS=$lt_save_ifs
        if test "X$pkg" = "X$p"; then
          enable_fast_install=yes
        fi
       done
-      IFS="$lt_save_ifs"
+      IFS=$lt_save_ifs
       ;;
     esac
 else
@@ -8119,11 +8337,63 @@ fi
 
 
 
+  shared_archive_member_spec=
+case $host,$enable_shared in
+power*-*-aix[5-9]*,yes)
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking which variant of shared library versioning to provide" >&5
+$as_echo_n "checking which variant of shared library versioning to provide... " >&6; }
+
+# Check whether --with-aix-soname was given.
+if test "${with_aix_soname+set}" = set; then :
+  withval=$with_aix_soname; case $withval in
+    aix|svr4|both)
+      ;;
+    *)
+      as_fn_error $? "Unknown argument to --with-aix-soname" "$LINENO" 5
+      ;;
+    esac
+    lt_cv_with_aix_soname=$with_aix_soname
+else
+  if ${lt_cv_with_aix_soname+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  lt_cv_with_aix_soname=aix
+fi
+
+    with_aix_soname=$lt_cv_with_aix_soname
+fi
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_aix_soname" >&5
+$as_echo "$with_aix_soname" >&6; }
+  if test aix != "$with_aix_soname"; then
+    # For the AIX way of multilib, we name the shared archive member
+    # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',
+    # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File.
+    # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag,
+    # the AIX toolchain works better with OBJECT_MODE set (default 32).
+    if test 64 = "${OBJECT_MODE-32}"; then
+      shared_archive_member_spec=shr_64
+    else
+      shared_archive_member_spec=shr
+    fi
+  fi
+  ;;
+*)
+  with_aix_soname=aix
+  ;;
+esac
+
+
+
+
+
+
+
 
 
 
 # This can be used to rebuild libtool when needed
-LIBTOOL_DEPS="$ltmain"
+LIBTOOL_DEPS=$ltmain
 
 # Always use our own libtool.
 LIBTOOL='$(SHELL) $(top_builddir)/libtool'
@@ -8172,7 +8442,7 @@ test -z "$LN_S" && LN_S="ln -s"
 
 
 
-if test -n "${ZSH_VERSION+set}" ; then
+if test -n "${ZSH_VERSION+set}"; then
    setopt NO_GLOB_SUBST
 fi
 
@@ -8211,7 +8481,7 @@ aix3*)
   # AIX sometimes has problems with the GCC collect2 program.  For some
   # reason, if we set the COLLECT_NAMES environment variable, the problems
   # vanish in a puff of smoke.
-  if test "X${COLLECT_NAMES+set}" != Xset; then
+  if test set != "${COLLECT_NAMES+set}"; then
     COLLECT_NAMES=
     export COLLECT_NAMES
   fi
@@ -8222,14 +8492,14 @@ esac
 ofile=libtool
 can_build_shared=yes
 
-# All known linkers require a `.a' archive for static linking (except MSVC,
+# All known linkers require a '.a' archive for static linking (except MSVC,
 # which needs '.lib').
 libext=a
 
-with_gnu_ld="$lt_cv_prog_gnu_ld"
+with_gnu_ld=$lt_cv_prog_gnu_ld
 
-old_CC="$CC"
-old_CFLAGS="$CFLAGS"
+old_CC=$CC
+old_CFLAGS=$CFLAGS
 
 # Set sane defaults for various variables
 test -z "$CC" && CC=cc
@@ -8238,15 +8508,8 @@ test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
 test -z "$LD" && LD=ld
 test -z "$ac_objext" && ac_objext=o
 
-for cc_temp in $compiler""; do
-  case $cc_temp in
-    compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
-    distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
-    \-*) ;;
-    *) break;;
-  esac
-done
-cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
+func_cc_basename $compiler
+cc_basename=$func_cc_basename_result
 
 
 # Only perform the check for file, if the check method requires it
@@ -8261,22 +8524,22 @@ if ${lt_cv_path_MAGIC_CMD+:} false; then :
 else
   case $MAGIC_CMD in
 [\\/*] |  ?:[\\/]*)
-  lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
+  lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.
   ;;
 *)
-  lt_save_MAGIC_CMD="$MAGIC_CMD"
-  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+  lt_save_MAGIC_CMD=$MAGIC_CMD
+  lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
   ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"
   for ac_dir in $ac_dummy; do
-    IFS="$lt_save_ifs"
+    IFS=$lt_save_ifs
     test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/${ac_tool_prefix}file; then
-      lt_cv_path_MAGIC_CMD="$ac_dir/${ac_tool_prefix}file"
+    if test -f "$ac_dir/${ac_tool_prefix}file"; then
+      lt_cv_path_MAGIC_CMD=$ac_dir/"${ac_tool_prefix}file"
       if test -n "$file_magic_test_file"; then
        case $deplibs_check_method in
        "file_magic "*)
          file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
-         MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+         MAGIC_CMD=$lt_cv_path_MAGIC_CMD
          if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
            $EGREP "$file_magic_regex" > /dev/null; then
            :
@@ -8299,13 +8562,13 @@ _LT_EOF
       break
     fi
   done
-  IFS="$lt_save_ifs"
-  MAGIC_CMD="$lt_save_MAGIC_CMD"
+  IFS=$lt_save_ifs
+  MAGIC_CMD=$lt_save_MAGIC_CMD
   ;;
 esac
 fi
 
-MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+MAGIC_CMD=$lt_cv_path_MAGIC_CMD
 if test -n "$MAGIC_CMD"; then
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
 $as_echo "$MAGIC_CMD" >&6; }
@@ -8327,22 +8590,22 @@ if ${lt_cv_path_MAGIC_CMD+:} false; then :
 else
   case $MAGIC_CMD in
 [\\/*] |  ?:[\\/]*)
-  lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
+  lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.
   ;;
 *)
-  lt_save_MAGIC_CMD="$MAGIC_CMD"
-  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+  lt_save_MAGIC_CMD=$MAGIC_CMD
+  lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
   ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"
   for ac_dir in $ac_dummy; do
-    IFS="$lt_save_ifs"
+    IFS=$lt_save_ifs
     test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/file; then
-      lt_cv_path_MAGIC_CMD="$ac_dir/file"
+    if test -f "$ac_dir/file"; then
+      lt_cv_path_MAGIC_CMD=$ac_dir/"file"
       if test -n "$file_magic_test_file"; then
        case $deplibs_check_method in
        "file_magic "*)
          file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
-         MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+         MAGIC_CMD=$lt_cv_path_MAGIC_CMD
          if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
            $EGREP "$file_magic_regex" > /dev/null; then
            :
@@ -8365,13 +8628,13 @@ _LT_EOF
       break
     fi
   done
-  IFS="$lt_save_ifs"
-  MAGIC_CMD="$lt_save_MAGIC_CMD"
+  IFS=$lt_save_ifs
+  MAGIC_CMD=$lt_save_MAGIC_CMD
   ;;
 esac
 fi
 
-MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+MAGIC_CMD=$lt_cv_path_MAGIC_CMD
 if test -n "$MAGIC_CMD"; then
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
 $as_echo "$MAGIC_CMD" >&6; }
@@ -8392,7 +8655,7 @@ esac
 
 # Use C for the default configuration in the libtool script
 
-lt_save_CC="$CC"
+lt_save_CC=$CC
 ac_ext=c
 ac_cpp='$CPP $CPPFLAGS'
 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -8454,7 +8717,7 @@ if test -n "$compiler"; then
 
 lt_prog_compiler_no_builtin_flag=
 
-if test "$GCC" = yes; then
+if test yes = "$GCC"; then
   case $cc_basename in
   nvcc*)
     lt_prog_compiler_no_builtin_flag=' -Xcompiler -fno-builtin' ;;
@@ -8470,7 +8733,7 @@ else
   lt_cv_prog_compiler_rtti_exceptions=no
    ac_outfile=conftest.$ac_objext
    echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-   lt_compiler_flag="-fno-rtti -fno-exceptions"
+   lt_compiler_flag="-fno-rtti -fno-exceptions"  ## exclude from sc_useless_quotes_in_assignment
    # Insert the option either (1) after the last *FLAGS variable, or
    # (2) before a word containing "conftest.", or (3) at the end.
    # Note that $ac_compile itself does not contain backslashes and begins
@@ -8500,7 +8763,7 @@ fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5
 $as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; }
 
-if test x"$lt_cv_prog_compiler_rtti_exceptions" = xyes; then
+if test yes = "$lt_cv_prog_compiler_rtti_exceptions"; then
     lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions"
 else
     :
@@ -8518,17 +8781,18 @@ lt_prog_compiler_pic=
 lt_prog_compiler_static=
 
 
-  if test "$GCC" = yes; then
+  if test yes = "$GCC"; then
     lt_prog_compiler_wl='-Wl,'
     lt_prog_compiler_static='-static'
 
     case $host_os in
       aix*)
       # All AIX code is PIC.
-      if test "$host_cpu" = ia64; then
+      if test ia64 = "$host_cpu"; then
        # AIX 5 now supports IA64 processor
        lt_prog_compiler_static='-Bstatic'
       fi
+      lt_prog_compiler_pic='-fPIC'
       ;;
 
     amigaos*)
@@ -8539,8 +8803,8 @@ lt_prog_compiler_static=
         ;;
       m68k)
             # FIXME: we need at least 68020 code to build shared libraries, but
-            # adding the `-m68020' flag to GCC prevents building anything better,
-            # like `-m68040'.
+            # adding the '-m68020' flag to GCC prevents building anything better,
+            # like '-m68040'.
             lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4'
         ;;
       esac
@@ -8556,6 +8820,11 @@ lt_prog_compiler_static=
       # Although the cygwin gcc ignores -fPIC, still need this for old-style
       # (--disable-auto-import) libraries
       lt_prog_compiler_pic='-DDLL_EXPORT'
+      case $host_os in
+      os2*)
+       lt_prog_compiler_static='$wl-static'
+       ;;
+      esac
       ;;
 
     darwin* | rhapsody*)
@@ -8626,7 +8895,7 @@ lt_prog_compiler_static=
     case $host_os in
     aix*)
       lt_prog_compiler_wl='-Wl,'
-      if test "$host_cpu" = ia64; then
+      if test ia64 = "$host_cpu"; then
        # AIX 5 now supports IA64 processor
        lt_prog_compiler_static='-Bstatic'
       else
@@ -8634,10 +8903,29 @@ lt_prog_compiler_static=
       fi
       ;;
 
+    darwin* | rhapsody*)
+      # PIC is the default on this platform
+      # Common symbols not allowed in MH_DYLIB files
+      lt_prog_compiler_pic='-fno-common'
+      case $cc_basename in
+      nagfor*)
+        # NAG Fortran compiler
+        lt_prog_compiler_wl='-Wl,-Wl,,'
+        lt_prog_compiler_pic='-PIC'
+        lt_prog_compiler_static='-Bstatic'
+        ;;
+      esac
+      ;;
+
     mingw* | cygwin* | pw32* | os2* | cegcc*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
       lt_prog_compiler_pic='-DDLL_EXPORT'
+      case $host_os in
+      os2*)
+       lt_prog_compiler_static='$wl-static'
+       ;;
+      esac
       ;;
 
     hpux9* | hpux10* | hpux11*)
@@ -8653,7 +8941,7 @@ lt_prog_compiler_static=
        ;;
       esac
       # Is there a better lt_prog_compiler_static that works with the bundled CC?
-      lt_prog_compiler_static='${wl}-a ${wl}archive'
+      lt_prog_compiler_static='$wl-a ${wl}archive'
       ;;
 
     irix5* | irix6* | nonstopux*)
@@ -8664,7 +8952,7 @@ lt_prog_compiler_static=
 
     linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
       case $cc_basename in
-      # old Intel for x86_64 which still supported -KPIC.
+      # old Intel for x86_64, which still supported -KPIC.
       ecc*)
        lt_prog_compiler_wl='-Wl,'
        lt_prog_compiler_pic='-KPIC'
@@ -8689,6 +8977,12 @@ lt_prog_compiler_static=
        lt_prog_compiler_pic='-PIC'
        lt_prog_compiler_static='-Bstatic'
        ;;
+      tcc*)
+       # Fabrice Bellard et al's Tiny C Compiler
+       lt_prog_compiler_wl='-Wl,'
+       lt_prog_compiler_pic='-fPIC'
+       lt_prog_compiler_static='-static'
+       ;;
       pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
         # Portland Group compilers (*not* the Pentium gcc compiler,
        # which looks to be a dead project)
@@ -8786,7 +9080,7 @@ lt_prog_compiler_static=
       ;;
 
     sysv4*MP*)
-      if test -d /usr/nec ;then
+      if test -d /usr/necthen
        lt_prog_compiler_pic='-Kconform_pic'
        lt_prog_compiler_static='-Bstatic'
       fi
@@ -8815,7 +9109,7 @@ lt_prog_compiler_static=
   fi
 
 case $host_os in
-  # For platforms which do not support PIC, -DPIC is meaningless:
+  # For platforms that do not support PIC, -DPIC is meaningless:
   *djgpp*)
     lt_prog_compiler_pic=
     ;;
@@ -8847,7 +9141,7 @@ else
   lt_cv_prog_compiler_pic_works=no
    ac_outfile=conftest.$ac_objext
    echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-   lt_compiler_flag="$lt_prog_compiler_pic -DPIC"
+   lt_compiler_flag="$lt_prog_compiler_pic -DPIC"  ## exclude from sc_useless_quotes_in_assignment
    # Insert the option either (1) after the last *FLAGS variable, or
    # (2) before a word containing "conftest.", or (3) at the end.
    # Note that $ac_compile itself does not contain backslashes and begins
@@ -8877,7 +9171,7 @@ fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5
 $as_echo "$lt_cv_prog_compiler_pic_works" >&6; }
 
-if test x"$lt_cv_prog_compiler_pic_works" = xyes; then
+if test yes = "$lt_cv_prog_compiler_pic_works"; then
     case $lt_prog_compiler_pic in
      "" | " "*) ;;
      *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;;
@@ -8909,7 +9203,7 @@ if ${lt_cv_prog_compiler_static_works+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   lt_cv_prog_compiler_static_works=no
-   save_LDFLAGS="$LDFLAGS"
+   save_LDFLAGS=$LDFLAGS
    LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
    echo "$lt_simple_link_test_code" > conftest.$ac_ext
    if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
@@ -8928,13 +9222,13 @@ else
      fi
    fi
    $RM -r conftest*
-   LDFLAGS="$save_LDFLAGS"
+   LDFLAGS=$save_LDFLAGS
 
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5
 $as_echo "$lt_cv_prog_compiler_static_works" >&6; }
 
-if test x"$lt_cv_prog_compiler_static_works" = xyes; then
+if test yes = "$lt_cv_prog_compiler_static_works"; then
     :
 else
     lt_prog_compiler_static=
@@ -9054,8 +9348,8 @@ $as_echo "$lt_cv_prog_compiler_c_o" >&6; }
 
 
 
-hard_links="nottested"
-if test "$lt_cv_prog_compiler_c_o" = no && test "$need_locks" != no; then
+hard_links=nottested
+if test no = "$lt_cv_prog_compiler_c_o" && test no != "$need_locks"; then
   # do not overwrite the value of need_locks provided by the user
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5
 $as_echo_n "checking if we can lock with hard links... " >&6; }
@@ -9067,9 +9361,9 @@ $as_echo_n "checking if we can lock with hard links... " >&6; }
   ln conftest.a conftest.b 2>/dev/null && hard_links=no
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5
 $as_echo "$hard_links" >&6; }
-  if test "$hard_links" = no; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5
-$as_echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;}
+  if test no = "$hard_links"; then
+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5
+$as_echo "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;}
     need_locks=warn
   fi
 else
@@ -9112,9 +9406,9 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie
   # included in the symbol list
   include_expsyms=
   # exclude_expsyms can be an extended regexp of symbols to exclude
-  # it will be wrapped by ` (' and `)$', so one must not match beginning or
-  # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
-  # as well as any symbol that contains `d'.
+  # it will be wrapped by ' (' and ')$', so one must not match beginning or
+  # end of line.  Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc',
+  # as well as any symbol that contains 'd'.
   exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
   # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
   # platforms (ab)use it in PIC code, but their linkers get confused if
@@ -9129,7 +9423,7 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie
     # FIXME: the MSVC++ port hasn't been tested in a loooong time
     # When not using gcc, we currently assume that we are using
     # Microsoft Visual C++.
-    if test "$GCC" != yes; then
+    if test yes != "$GCC"; then
       with_gnu_ld=no
     fi
     ;;
@@ -9137,7 +9431,7 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie
     # we just hope/assume this is gcc and not c89 (= MSVC++)
     with_gnu_ld=yes
     ;;
-  openbsd*)
+  openbsd* | bitrig*)
     with_gnu_ld=no
     ;;
   linux* | k*bsd*-gnu | gnu*)
@@ -9150,7 +9444,7 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie
   # On some targets, GNU ld is compatible enough with the native linker
   # that we're better off using the native interface for both.
   lt_use_gnu_ld_interface=no
-  if test "$with_gnu_ld" = yes; then
+  if test yes = "$with_gnu_ld"; then
     case $host_os in
       aix*)
        # The AIX port of GNU ld has always aspired to compatibility
@@ -9172,24 +9466,24 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie
     esac
   fi
 
-  if test "$lt_use_gnu_ld_interface" = yes; then
+  if test yes = "$lt_use_gnu_ld_interface"; then
     # If archive_cmds runs LD, not CC, wlarc should be empty
-    wlarc='${wl}'
+    wlarc='$wl'
 
     # Set some defaults for GNU ld with shared library support. These
     # are reset later if shared libraries are not supported. Putting them
     # here allows them to be overridden if necessary.
     runpath_var=LD_RUN_PATH
-    hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-    export_dynamic_flag_spec='${wl}--export-dynamic'
+    hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'
+    export_dynamic_flag_spec='$wl--export-dynamic'
     # ancient GNU ld didn't support --whole-archive et. al.
     if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
-      whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+      whole_archive_flag_spec=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
     else
       whole_archive_flag_spec=
     fi
     supports_anon_versioning=no
-    case `$LD -v 2>&1` in
+    case `$LD -v | $SED -e 's/(^)\+)\s\+//' 2>&1` in
       *GNU\ gold*) supports_anon_versioning=yes ;;
       *\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11
       *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
@@ -9202,7 +9496,7 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie
     case $host_os in
     aix[3-9]*)
       # On AIX/PPC, the GNU linker is very broken
-      if test "$host_cpu" != ia64; then
+      if test ia64 != "$host_cpu"; then
        ld_shlibs=no
        cat <<_LT_EOF 1>&2
 
@@ -9221,7 +9515,7 @@ _LT_EOF
       case $host_cpu in
       powerpc)
             # see comment about AmigaOS4 .so support
-            archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+            archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
             archive_expsym_cmds=''
         ;;
       m68k)
@@ -9237,7 +9531,7 @@ _LT_EOF
        allow_undefined_flag=unsupported
        # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
        # support --undefined.  This deserves some investigation.  FIXME
-       archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+       archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
       else
        ld_shlibs=no
       fi
@@ -9247,7 +9541,7 @@ _LT_EOF
       # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless,
       # as there is no search path for DLLs.
       hardcode_libdir_flag_spec='-L$libdir'
-      export_dynamic_flag_spec='${wl}--export-all-symbols'
+      export_dynamic_flag_spec='$wl--export-all-symbols'
       allow_undefined_flag=unsupported
       always_export_symbols=no
       enable_shared_with_static_runtimes=yes
@@ -9255,61 +9549,89 @@ _LT_EOF
       exclude_expsyms='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'
 
       if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
-        archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-       # If the export-symbols file already is a .def file (1st line
-       # is EXPORTS), use it as is; otherwise, prepend...
-       archive_expsym_cmds='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
-         cp $export_symbols $output_objdir/$soname.def;
-       else
-         echo EXPORTS > $output_objdir/$soname.def;
-         cat $export_symbols >> $output_objdir/$soname.def;
-       fi~
-       $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+        archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+       # If the export-symbols file already is a .def file, use it as
+       # is; otherwise, prepend EXPORTS...
+       archive_expsym_cmds='if   test DEF = "`$SED -n     -e '\''s/^[   ]*//'\''     -e '\''/^\(;.*\)*$/d'\''     -e '\''s/^\(EXPORTS\|LIBRARY\)\([     ].*\)*$/DEF/p'\''     -e q     $export_symbols`" ; then
+          cp $export_symbols $output_objdir/$soname.def;
+        else
+          echo EXPORTS > $output_objdir/$soname.def;
+          cat $export_symbols >> $output_objdir/$soname.def;
+        fi~
+        $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
       else
        ld_shlibs=no
       fi
       ;;
 
     haiku*)
-      archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+      archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
       link_all_deplibs=yes
       ;;
 
+    os2*)
+      hardcode_libdir_flag_spec='-L$libdir'
+      hardcode_minus_L=yes
+      allow_undefined_flag=unsupported
+      shrext_cmds=.dll
+      archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
+       $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
+       $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
+       $ECHO EXPORTS >> $output_objdir/$libname.def~
+       emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
+       $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
+       emximp -o $lib $output_objdir/$libname.def'
+      archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
+       $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
+       $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
+       $ECHO EXPORTS >> $output_objdir/$libname.def~
+       prefix_cmds="$SED"~
+       if test EXPORTS = "`$SED 1q $export_symbols`"; then
+         prefix_cmds="$prefix_cmds -e 1d";
+       fi~
+       prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
+       cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
+       $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
+       emximp -o $lib $output_objdir/$libname.def'
+      old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
+      enable_shared_with_static_runtimes=yes
+      ;;
+
     interix[3-9]*)
       hardcode_direct=no
       hardcode_shlibpath_var=no
-      hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-      export_dynamic_flag_spec='${wl}-E'
+      hardcode_libdir_flag_spec='$wl-rpath,$libdir'
+      export_dynamic_flag_spec='$wl-E'
       # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
       # Instead, shared libraries are loaded at an image base (0x10000000 by
       # default) and relocated if they conflict, which is a slow very memory
       # consuming and fragmenting process.  To avoid this, we pick a random,
       # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
       # time.  Moving up from 0x10000000 also allows more sbrk(2) space.
-      archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
-      archive_expsym_cmds='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+      archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+      archive_expsym_cmds='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
       ;;
 
     gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
       tmp_diet=no
-      if test "$host_os" = linux-dietlibc; then
+      if test linux-dietlibc = "$host_os"; then
        case $cc_basename in
          diet\ *) tmp_diet=yes;;       # linux-dietlibc with static linking (!diet-dyn)
        esac
       fi
       if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
-        && test "$tmp_diet" = no
+        && test no = "$tmp_diet"
       then
        tmp_addflag=' $pic_flag'
        tmp_sharedflag='-shared'
        case $cc_basename,$host_cpu in
         pgcc*)                         # Portland Group C compiler
-         whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
+         whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
          tmp_addflag=' $pic_flag'
          ;;
        pgf77* | pgf90* | pgf95* | pgfortran*)
                                        # Portland Group f77 and f90 compilers
-         whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
+         whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
          tmp_addflag=' $pic_flag -Mnomain' ;;
        ecc*,ia64* | icc*,ia64*)        # Intel C compiler on ia64
          tmp_addflag=' -i_dynamic' ;;
@@ -9320,42 +9642,47 @@ _LT_EOF
        lf95*)                          # Lahey Fortran 8.1
          whole_archive_flag_spec=
          tmp_sharedflag='--shared' ;;
+        nagfor*)                        # NAGFOR 5.3
+          tmp_sharedflag='-Wl,-shared' ;;
        xl[cC]* | bgxl[cC]* | mpixl[cC]*) # IBM XL C 8.0 on PPC (deal with xlf below)
          tmp_sharedflag='-qmkshrobj'
          tmp_addflag= ;;
        nvcc*)  # Cuda Compiler Driver 2.2
-         whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
+         whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
          compiler_needs_object=yes
          ;;
        esac
        case `$CC -V 2>&1 | sed 5q` in
        *Sun\ C*)                       # Sun C 5.9
-         whole_archive_flag_spec='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
+         whole_archive_flag_spec='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
          compiler_needs_object=yes
          tmp_sharedflag='-G' ;;
        *Sun\ F*)                       # Sun Fortran 8.3
          tmp_sharedflag='-G' ;;
        esac
-       archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+       archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
 
-        if test "x$supports_anon_versioning" = xyes; then
+        if test yes = "$supports_anon_versioning"; then
           archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
-           cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
-           echo "local: *; };" >> $output_objdir/$libname.ver~
-           $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
+            cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+            echo "local: *; };" >> $output_objdir/$libname.ver~
+            $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
         fi
 
        case $cc_basename in
+       tcc*)
+         export_dynamic_flag_spec='-rdynamic'
+         ;;
        xlf* | bgf* | bgxlf* | mpixlf*)
          # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
          whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
-         hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+         hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'
          archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
-         if test "x$supports_anon_versioning" = xyes; then
+         if test yes = "$supports_anon_versioning"; then
            archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
-             cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
-             echo "local: *; };" >> $output_objdir/$libname.ver~
-             $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
+              cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+              echo "local: *; };" >> $output_objdir/$libname.ver~
+              $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
          fi
          ;;
        esac
@@ -9369,8 +9696,8 @@ _LT_EOF
        archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
        wlarc=
       else
-       archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-       archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+       archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+       archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
       fi
       ;;
 
@@ -9388,8 +9715,8 @@ _LT_EOF
 
 _LT_EOF
       elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
-       archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-       archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+       archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+       archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
       else
        ld_shlibs=no
       fi
@@ -9401,7 +9728,7 @@ _LT_EOF
        ld_shlibs=no
        cat <<_LT_EOF 1>&2
 
-*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
+*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot
 *** reliably create shared libraries on SCO systems.  Therefore, libtool
 *** is disabling shared libraries support.  We urge you to upgrade GNU
 *** binutils to release 2.16.91.0.3 or newer.  Another option is to modify
@@ -9416,9 +9743,9 @@ _LT_EOF
          # DT_RUNPATH tag from executables and libraries.  But doing so
          # requires that you compile everything twice, which is a pain.
          if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
-           hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-           archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-           archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+           hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'
+           archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+           archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
          else
            ld_shlibs=no
          fi
@@ -9435,15 +9762,15 @@ _LT_EOF
 
     *)
       if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
-       archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-       archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+       archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+       archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
       else
        ld_shlibs=no
       fi
       ;;
     esac
 
-    if test "$ld_shlibs" = no; then
+    if test no = "$ld_shlibs"; then
       runpath_var=
       hardcode_libdir_flag_spec=
       export_dynamic_flag_spec=
@@ -9459,7 +9786,7 @@ _LT_EOF
       # Note: this linker hardcodes the directories in LIBPATH if there
       # are no directories specified by -L.
       hardcode_minus_L=yes
-      if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
+      if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then
        # Neither direct hardcoding nor static linking is supported with a
        # broken collect2.
        hardcode_direct=unsupported
@@ -9467,34 +9794,57 @@ _LT_EOF
       ;;
 
     aix[4-9]*)
-      if test "$host_cpu" = ia64; then
+      if test ia64 = "$host_cpu"; then
        # On IA64, the linker does run time linking by default, so we don't
        # have to do anything special.
        aix_use_runtimelinking=no
        exp_sym_flag='-Bexport'
-       no_entry_flag=""
+       no_entry_flag=
       else
        # If we're using GNU nm, then we don't want the "-C" option.
-       # -C means demangle to AIX nm, but means don't demangle with GNU nm
-       # Also, AIX nm treats weak defined symbols like other global
-       # defined symbols, whereas GNU nm marks them as "W".
+       # -C means demangle to GNU nm, but means don't demangle to AIX nm.
+       # Without the "-l" option, or with the "-B" option, AIX nm treats
+       # weak defined symbols like other global defined symbols, whereas
+       # GNU nm marks them as "W".
+       # While the 'weak' keyword is ignored in the Export File, we need
+       # it in the Import File for the 'aix-soname' feature, so we have
+       # to replace the "-B" option with "-P" for AIX nm.
        if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
-         export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+         export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols'
        else
-         export_symbols_cmds='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+         export_symbols_cmds='`func_echo_all $NM | $SED -e '\''s/B\([^B]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && (substr(\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
        fi
        aix_use_runtimelinking=no
 
        # Test if we are trying to use run time linking or normal
        # AIX style linking. If -brtl is somewhere in LDFLAGS, we
-       # need to do runtime linking.
+       # have runtime linking enabled, and use it for executables.
+       # For shared libraries, we enable/disable runtime linking
+       # depending on the kind of the shared library created -
+       # when "with_aix_soname,aix_use_runtimelinking" is:
+       # "aix,no"   lib.a(lib.so.V) shared, rtl:no,  for executables
+       # "aix,yes"  lib.so          shared, rtl:yes, for executables
+       #            lib.a           static archive
+       # "both,no"  lib.so.V(shr.o) shared, rtl:yes
+       #            lib.a(lib.so.V) shared, rtl:no,  for executables
+       # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
+       #            lib.a(lib.so.V) shared, rtl:no
+       # "svr4,*"   lib.so.V(shr.o) shared, rtl:yes, for executables
+       #            lib.a           static archive
        case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)
          for ld_flag in $LDFLAGS; do
-         if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
+         if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then
            aix_use_runtimelinking=yes
            break
          fi
          done
+         if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
+           # With aix-soname=svr4, we create the lib.so.V shared archives only,
+           # so we don't have lib.a shared libs to link our executables.
+           # We have to force runtime linking in this case.
+           aix_use_runtimelinking=yes
+           LDFLAGS="$LDFLAGS -Wl,-brtl"
+         fi
          ;;
        esac
 
@@ -9513,13 +9863,21 @@ _LT_EOF
       hardcode_direct_absolute=yes
       hardcode_libdir_separator=':'
       link_all_deplibs=yes
-      file_list_spec='${wl}-f,'
+      file_list_spec='$wl-f,'
+      case $with_aix_soname,$aix_use_runtimelinking in
+      aix,*) ;; # traditional, no import file
+      svr4,* | *,yes) # use import file
+       # The Import File defines what to hardcode.
+       hardcode_direct=no
+       hardcode_direct_absolute=no
+       ;;
+      esac
 
-      if test "$GCC" = yes; then
+      if test yes = "$GCC"; then
        case $host_os in aix4.[012]|aix4.[012].*)
        # We only want to do this on AIX 4.2 and lower, the check
        # below for broken collect2 doesn't work under 4.3+
-         collect2name=`${CC} -print-prog-name=collect2`
+         collect2name=`$CC -print-prog-name=collect2`
          if test -f "$collect2name" &&
           strings "$collect2name" | $GREP resolve_lib_name >/dev/null
          then
@@ -9538,36 +9896,42 @@ _LT_EOF
          ;;
        esac
        shared_flag='-shared'
-       if test "$aix_use_runtimelinking" = yes; then
-         shared_flag="$shared_flag "'${wl}-G'
+       if test yes = "$aix_use_runtimelinking"; then
+         shared_flag="$shared_flag "'$wl-G'
        fi
-       link_all_deplibs=no
+       # Need to ensure runtime linking is disabled for the traditional
+       # shared library, or the linker may eventually find shared libraries
+       # /with/ Import File - we do not want to mix them.
+       shared_flag_aix='-shared'
+       shared_flag_svr4='-shared $wl-G'
       else
        # not using gcc
-       if test "$host_cpu" = ia64; then
+       if test ia64 = "$host_cpu"; then
        # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
        # chokes on -Wl,-G. The following line is correct:
          shared_flag='-G'
        else
-         if test "$aix_use_runtimelinking" = yes; then
-           shared_flag='${wl}-G'
+         if test yes = "$aix_use_runtimelinking"; then
+           shared_flag='$wl-G'
          else
-           shared_flag='${wl}-bM:SRE'
+           shared_flag='$wl-bM:SRE'
          fi
+         shared_flag_aix='$wl-bM:SRE'
+         shared_flag_svr4='$wl-G'
        fi
       fi
 
-      export_dynamic_flag_spec='${wl}-bexpall'
+      export_dynamic_flag_spec='$wl-bexpall'
       # It seems that -bexpall does not export symbols beginning with
       # underscore (_), so it is better to generate a list of symbols to export.
       always_export_symbols=yes
-      if test "$aix_use_runtimelinking" = yes; then
+      if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
        # Warning - without using the other runtime loading flags (-brtl),
        # -berok will link without error, but may produce a broken library.
        allow_undefined_flag='-berok'
         # Determine the default libpath from the value encoded in an
         # empty executable.
-        if test "${lt_cv_aix_libpath+set}" = set; then
+        if test set = "${lt_cv_aix_libpath+set}"; then
   aix_libpath=$lt_cv_aix_libpath
 else
   if ${lt_cv_aix_libpath_+:} false; then :
@@ -9602,7 +9966,7 @@ fi
 rm -f core conftest.err conftest.$ac_objext \
     conftest$ac_exeext conftest.$ac_ext
   if test -z "$lt_cv_aix_libpath_"; then
-    lt_cv_aix_libpath_="/usr/lib:/lib"
+    lt_cv_aix_libpath_=/usr/lib:/lib
   fi
 
 fi
@@ -9610,17 +9974,17 @@ fi
   aix_libpath=$lt_cv_aix_libpath_
 fi
 
-        hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
-        archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+        hardcode_libdir_flag_spec='$wl-blibpath:$libdir:'"$aix_libpath"
+        archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag
       else
-       if test "$host_cpu" = ia64; then
-         hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
+       if test ia64 = "$host_cpu"; then
+         hardcode_libdir_flag_spec='$wl-R $libdir:/usr/lib:/lib'
          allow_undefined_flag="-z nodefs"
-         archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
+         archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols"
        else
         # Determine the default libpath from the value encoded in an
         # empty executable.
-        if test "${lt_cv_aix_libpath+set}" = set; then
+        if test set = "${lt_cv_aix_libpath+set}"; then
   aix_libpath=$lt_cv_aix_libpath
 else
   if ${lt_cv_aix_libpath_+:} false; then :
@@ -9655,7 +10019,7 @@ fi
 rm -f core conftest.err conftest.$ac_objext \
     conftest$ac_exeext conftest.$ac_ext
   if test -z "$lt_cv_aix_libpath_"; then
-    lt_cv_aix_libpath_="/usr/lib:/lib"
+    lt_cv_aix_libpath_=/usr/lib:/lib
   fi
 
 fi
   aix_libpath=$lt_cv_aix_libpath_
 fi
 
-        hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
+        hardcode_libdir_flag_spec='$wl-blibpath:$libdir:'"$aix_libpath"
          # Warning - without using the other run time loading flags,
          # -berok will link without error, but may produce a broken library.
-         no_undefined_flag=' ${wl}-bernotok'
-         allow_undefined_flag=' ${wl}-berok'
-         if test "$with_gnu_ld" = yes; then
+         no_undefined_flag=' $wl-bernotok'
+         allow_undefined_flag=' $wl-berok'
+         if test yes = "$with_gnu_ld"; then
            # We only use this code for GNU lds that support --whole-archive.
-           whole_archive_flag_spec='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
+           whole_archive_flag_spec='$wl--whole-archive$convenience $wl--no-whole-archive'
          else
            # Exported symbols can be pulled into shared objects from archives
            whole_archive_flag_spec='$convenience'
          fi
          archive_cmds_need_lc=yes
-         # This is similar to how AIX traditionally builds its shared libraries.
-         archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
+         archive_expsym_cmds='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
+         # -brtl affects multiple linker settings, -berok does not and is overridden later
+         compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([, ]\\)%-berok\\1%g"`'
+         if test svr4 != "$with_aix_soname"; then
+           # This is similar to how AIX traditionally builds its shared libraries.
+           archive_expsym_cmds="$archive_expsym_cmds"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname'
+         fi
+         if test aix != "$with_aix_soname"; then
+           archive_expsym_cmds="$archive_expsym_cmds"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp'
+         else
+           # used by -dlpreopen to get the symbols
+           archive_expsym_cmds="$archive_expsym_cmds"'~$MV  $output_objdir/$realname.d/$soname $output_objdir'
+         fi
+         archive_expsym_cmds="$archive_expsym_cmds"'~$RM -r $output_objdir/$realname.d'
        fi
       fi
       ;;
@@ -9686,7 +10062,7 @@ fi
       case $host_cpu in
       powerpc)
             # see comment about AmigaOS4 .so support
-            archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+            archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
             archive_expsym_cmds=''
         ;;
       m68k)
        # Tell ltmain to make .lib files, not .a files.
        libext=lib
        # Tell ltmain to make .dll files, not .so files.
-       shrext_cmds=".dll"
+       shrext_cmds=.dll
        # FIXME: Setting linknames here is a bad hack.
-       archive_cmds='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
-       archive_expsym_cmds='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
-           sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
-         else
-           sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
-         fi~
-         $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
-         linknames='
+       archive_cmds='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
+       archive_expsym_cmds='if   test DEF = "`$SED -n     -e '\''s/^[   ]*//'\''     -e '\''/^\(;.*\)*$/d'\''     -e '\''s/^\(EXPORTS\|LIBRARY\)\([     ].*\)*$/DEF/p'\''     -e q     $export_symbols`" ; then
+            cp "$export_symbols" "$output_objdir/$soname.def";
+            echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
+          else
+            $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
+          fi~
+          $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
+          linknames='
        # The linker will not automatically build a static lib if we build a DLL.
        # _LT_TAGVAR(old_archive_from_new_cmds, )='true'
        enable_shared_with_static_runtimes=yes
        # Don't use ranlib
        old_postinstall_cmds='chmod 644 $oldlib'
        postlink_cmds='lt_outputfile="@OUTPUT@"~
-         lt_tool_outputfile="@TOOL_OUTPUT@"~
-         case $lt_outputfile in
-           *.exe|*.EXE) ;;
-           *)
-             lt_outputfile="$lt_outputfile.exe"
-             lt_tool_outputfile="$lt_tool_outputfile.exe"
-             ;;
-         esac~
-         if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
-           $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
-           $RM "$lt_outputfile.manifest";
-         fi'
+          lt_tool_outputfile="@TOOL_OUTPUT@"~
+          case $lt_outputfile in
+            *.exe|*.EXE) ;;
+            *)
+              lt_outputfile=$lt_outputfile.exe
+              lt_tool_outputfile=$lt_tool_outputfile.exe
+              ;;
+          esac~
+          if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
+            $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
+            $RM "$lt_outputfile.manifest";
+          fi'
        ;;
       *)
        # Assume MSVC wrapper
@@ -9754,7 +10131,7 @@ fi
        # Tell ltmain to make .lib files, not .a files.
        libext=lib
        # Tell ltmain to make .dll files, not .so files.
-       shrext_cmds=".dll"
+       shrext_cmds=.dll
        # FIXME: Setting linknames here is a bad hack.
        archive_cmds='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
        # The linker will automatically build a .lib file if we build a DLL.
   hardcode_direct=no
   hardcode_automatic=yes
   hardcode_shlibpath_var=unsupported
-  if test "$lt_cv_ld_force_load" = "yes"; then
-    whole_archive_flag_spec='`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience ${wl}-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`'
+  if test yes = "$lt_cv_ld_force_load"; then
+    whole_archive_flag_spec='`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience $wl-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`'
 
   else
     whole_archive_flag_spec=''
   fi
   link_all_deplibs=yes
-  allow_undefined_flag="$_lt_dar_allow_undefined"
+  allow_undefined_flag=$_lt_dar_allow_undefined
   case $cc_basename in
-     ifort*) _lt_dar_can_shared=yes ;;
+     ifort*|nagfor*) _lt_dar_can_shared=yes ;;
      *) _lt_dar_can_shared=$GCC ;;
   esac
-  if test "$_lt_dar_can_shared" = "yes"; then
+  if test yes = "$_lt_dar_can_shared"; then
     output_verbose_link_cmd=func_echo_all
-    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
-    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
-    archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
-    module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
+    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil"
+    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"
+    archive_expsym_cmds="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil"
+    module_expsym_cmds="sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil"
 
   else
   ld_shlibs=no
       ;;
 
     hpux9*)
-      if test "$GCC" = yes; then
-       archive_cmds='$RM $output_objdir/$soname~$CC -shared $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+      if test yes = "$GCC"; then
+       archive_cmds='$RM $output_objdir/$soname~$CC -shared $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
       else
-       archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+       archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
       fi
-      hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
+      hardcode_libdir_flag_spec='$wl+b $wl$libdir'
       hardcode_libdir_separator=:
       hardcode_direct=yes
 
       # hardcode_minus_L: Not really in the search PATH,
       # but as the default location of the library.
       hardcode_minus_L=yes
-      export_dynamic_flag_spec='${wl}-E'
+      export_dynamic_flag_spec='$wl-E'
       ;;
 
     hpux10*)
-      if test "$GCC" = yes && test "$with_gnu_ld" = no; then
-       archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+      if test yes,no = "$GCC,$with_gnu_ld"; then
+       archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
       else
        archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
       fi
-      if test "$with_gnu_ld" = no; then
-       hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
+      if test no = "$with_gnu_ld"; then
+       hardcode_libdir_flag_spec='$wl+b $wl$libdir'
        hardcode_libdir_separator=:
        hardcode_direct=yes
        hardcode_direct_absolute=yes
-       export_dynamic_flag_spec='${wl}-E'
+       export_dynamic_flag_spec='$wl-E'
        # hardcode_minus_L: Not really in the search PATH,
        # but as the default location of the library.
        hardcode_minus_L=yes
       ;;
 
     hpux11*)
-      if test "$GCC" = yes && test "$with_gnu_ld" = no; then
+      if test yes,no = "$GCC,$with_gnu_ld"; then
        case $host_cpu in
        hppa*64*)
-         archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+         archive_cmds='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
          ;;
        ia64*)
-         archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+         archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
          ;;
        *)
-         archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+         archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
          ;;
        esac
       else
        case $host_cpu in
        hppa*64*)
-         archive_cmds='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+         archive_cmds='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
          ;;
        ia64*)
-         archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+         archive_cmds='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
          ;;
        *)
 
@@ -9896,7 +10273,7 @@ if ${lt_cv_prog_compiler__b+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   lt_cv_prog_compiler__b=no
-   save_LDFLAGS="$LDFLAGS"
+   save_LDFLAGS=$LDFLAGS
    LDFLAGS="$LDFLAGS -b"
    echo "$lt_simple_link_test_code" > conftest.$ac_ext
    if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
@@ -9915,14 +10292,14 @@ else
      fi
    fi
    $RM -r conftest*
-   LDFLAGS="$save_LDFLAGS"
+   LDFLAGS=$save_LDFLAGS
 
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&5
 $as_echo "$lt_cv_prog_compiler__b" >&6; }
 
-if test x"$lt_cv_prog_compiler__b" = xyes; then
-    archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+if test yes = "$lt_cv_prog_compiler__b"; then
+    archive_cmds='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
 else
     archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
 fi
@@ -9930,8 +10307,8 @@ fi
          ;;
        esac
       fi
-      if test "$with_gnu_ld" = no; then
-       hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
+      if test no = "$with_gnu_ld"; then
+       hardcode_libdir_flag_spec='$wl+b $wl$libdir'
        hardcode_libdir_separator=:
 
        case $host_cpu in
@@ -9942,7 +10319,7 @@ fi
        *)
          hardcode_direct=yes
          hardcode_direct_absolute=yes
-         export_dynamic_flag_spec='${wl}-E'
+         export_dynamic_flag_spec='$wl-E'
 
          # hardcode_minus_L: Not really in the search PATH,
          # but as the default location of the library.
@@ -9953,8 +10330,8 @@ fi
       ;;
 
     irix5* | irix6* | nonstopux*)
-      if test "$GCC" = yes; then
-       archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+      if test yes = "$GCC"; then
+       archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
        # Try to use the -exported_symbol ld option, if it does not
        # work, assume that -exports_file does not work either and
        # implicitly export all symbols.
@@ -9964,8 +10341,8 @@ $as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " >
 if ${lt_cv_irix_exported_symbol+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-  save_LDFLAGS="$LDFLAGS"
-          LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
+  save_LDFLAGS=$LDFLAGS
+          LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null"
           cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 int foo (void) { return 0; }
@@ -9977,24 +10354,35 @@ else
 fi
 rm -f core conftest.err conftest.$ac_objext \
     conftest$ac_exeext conftest.$ac_ext
-           LDFLAGS="$save_LDFLAGS"
+           LDFLAGS=$save_LDFLAGS
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5
 $as_echo "$lt_cv_irix_exported_symbol" >&6; }
-       if test "$lt_cv_irix_exported_symbol" = yes; then
-          archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
+       if test yes = "$lt_cv_irix_exported_symbol"; then
+          archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib'
        fi
+       link_all_deplibs=no
       else
-       archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
-       archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
+       archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
+       archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -exports_file $export_symbols -o $lib'
       fi
       archive_cmds_need_lc='no'
-      hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+      hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'
       hardcode_libdir_separator=:
       inherit_rpath=yes
       link_all_deplibs=yes
       ;;
 
+    linux*)
+      case $cc_basename in
+      tcc*)
+       # Fabrice Bellard et al's Tiny C Compiler
+       ld_shlibs=yes
+       archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+       ;;
+      esac
+      ;;
+
     netbsd* | netbsdelf*-gnu)
       if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
        archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
@@ -10009,7 +10397,7 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; }
     newsos6)
       archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
       hardcode_direct=yes
-      hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+      hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'
       hardcode_libdir_separator=:
       hardcode_shlibpath_var=no
       ;;
@@ -10017,27 +10405,19 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; }
     *nto* | *qnx*)
       ;;
 
-    openbsd*)
+    openbsd* | bitrig*)
       if test -f /usr/libexec/ld.so; then
        hardcode_direct=yes
        hardcode_shlibpath_var=no
        hardcode_direct_absolute=yes
-       if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+       if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
          archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-         archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
-         hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-         export_dynamic_flag_spec='${wl}-E'
+         archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols'
+         hardcode_libdir_flag_spec='$wl-rpath,$libdir'
+         export_dynamic_flag_spec='$wl-E'
        else
-         case $host_os in
-          openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
-            archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-            hardcode_libdir_flag_spec='-R$libdir'
-            ;;
-          *)
-            archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-            hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-            ;;
-         esac
+         archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+         hardcode_libdir_flag_spec='$wl-rpath,$libdir'
        fi
       else
        ld_shlibs=no
@@ -10048,33 +10428,53 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; }
       hardcode_libdir_flag_spec='-L$libdir'
       hardcode_minus_L=yes
       allow_undefined_flag=unsupported
-      archive_cmds='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~echo DATA >> $output_objdir/$libname.def~echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
-      old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
+      shrext_cmds=.dll
+      archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
+       $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
+       $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
+       $ECHO EXPORTS >> $output_objdir/$libname.def~
+       emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
+       $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
+       emximp -o $lib $output_objdir/$libname.def'
+      archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
+       $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
+       $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
+       $ECHO EXPORTS >> $output_objdir/$libname.def~
+       prefix_cmds="$SED"~
+       if test EXPORTS = "`$SED 1q $export_symbols`"; then
+         prefix_cmds="$prefix_cmds -e 1d";
+       fi~
+       prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
+       cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
+       $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
+       emximp -o $lib $output_objdir/$libname.def'
+      old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
+      enable_shared_with_static_runtimes=yes
       ;;
 
     osf3*)
-      if test "$GCC" = yes; then
-       allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
-       archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+      if test yes = "$GCC"; then
+       allow_undefined_flag=' $wl-expect_unresolved $wl\*'
+       archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
       else
        allow_undefined_flag=' -expect_unresolved \*'
-       archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
+       archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
       fi
       archive_cmds_need_lc='no'
-      hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+      hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'
       hardcode_libdir_separator=:
       ;;
 
     osf4* | osf5*)     # as osf3* with the addition of -msym flag
-      if test "$GCC" = yes; then
-       allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
-       archive_cmds='$CC -shared${allow_undefined_flag} $pic_flag $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-       hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+      if test yes = "$GCC"; then
+       allow_undefined_flag=' $wl-expect_unresolved $wl\*'
+       archive_cmds='$CC -shared$allow_undefined_flag $pic_flag $libobjs $deplibs $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
+       hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'
       else
        allow_undefined_flag=' -expect_unresolved \*'
-       archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
+       archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
        archive_expsym_cmds='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~
-       $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp'
+          $CC -shared$allow_undefined_flag $wl-input $wl$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~$RM $lib.exp'
 
        # Both c and cxx compiler support -rpath directly
        hardcode_libdir_flag_spec='-rpath $libdir'
@@ -10085,24 +10485,24 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; }
 
     solaris*)
       no_undefined_flag=' -z defs'
-      if test "$GCC" = yes; then
-       wlarc='${wl}'
-       archive_cmds='$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+      if test yes = "$GCC"; then
+       wlarc='$wl'
+       archive_cmds='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
        archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-         $CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
+          $CC -shared $pic_flag $wl-z ${wl}text $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
       else
        case `$CC -V 2>&1` in
        *"Compilers 5.0"*)
          wlarc=''
-         archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
+         archive_cmds='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags'
          archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-         $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
+            $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
          ;;
        *)
-         wlarc='${wl}'
-         archive_cmds='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
+         wlarc='$wl'
+         archive_cmds='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags'
          archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-         $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
+            $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
          ;;
        esac
       fi
@@ -10112,11 +10512,11 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; }
       solaris2.[0-5] | solaris2.[0-5].*) ;;
       *)
        # The compiler driver will combine and reorder linker options,
-       # but understands `-z linker_flag'.  GCC discards it without `$wl',
+       # but understands '-z linker_flag'.  GCC discards it without '$wl',
        # but is careful enough not to reorder.
        # Supported since Solaris 2.6 (maybe 2.5.1?)
-       if test "$GCC" = yes; then
-         whole_archive_flag_spec='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
+       if test yes = "$GCC"; then
+         whole_archive_flag_spec='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
        else
          whole_archive_flag_spec='-z allextract$convenience -z defaultextract'
        fi
@@ -10126,10 +10526,10 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; }
       ;;
 
     sunos4*)
-      if test "x$host_vendor" = xsequent; then
+      if test sequent = "$host_vendor"; then
        # Use $CC to link under sequent, because it throws in some extra .o
        # files that make .init and .fini sections work.
-       archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
+       archive_cmds='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags'
       else
        archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
       fi
@@ -10178,43 +10578,43 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; }
       ;;
 
     sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)
-      no_undefined_flag='${wl}-z,text'
+      no_undefined_flag='$wl-z,text'
       archive_cmds_need_lc=no
       hardcode_shlibpath_var=no
       runpath_var='LD_RUN_PATH'
 
-      if test "$GCC" = yes; then
-       archive_cmds='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-       archive_expsym_cmds='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+      if test yes = "$GCC"; then
+       archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+       archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
       else
-       archive_cmds='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-       archive_expsym_cmds='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+       archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+       archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
       fi
       ;;
 
     sysv5* | sco3.2v5* | sco5v6*)
-      # Note: We can NOT use -z defs as we might desire, because we do not
+      # Note: We CANNOT use -z defs as we might desire, because we do not
       # link with -lc, and that would cause any symbols used from libc to
       # always be unresolved, which means just about no library would
       # ever link correctly.  If we're not using GNU ld we use -z text
       # though, which does catch some bad symbols but isn't as heavy-handed
       # as -z defs.
-      no_undefined_flag='${wl}-z,text'
-      allow_undefined_flag='${wl}-z,nodefs'
+      no_undefined_flag='$wl-z,text'
+      allow_undefined_flag='$wl-z,nodefs'
       archive_cmds_need_lc=no
       hardcode_shlibpath_var=no
-      hardcode_libdir_flag_spec='${wl}-R,$libdir'
+      hardcode_libdir_flag_spec='$wl-R,$libdir'
       hardcode_libdir_separator=':'
       link_all_deplibs=yes
-      export_dynamic_flag_spec='${wl}-Bexport'
+      export_dynamic_flag_spec='$wl-Bexport'
       runpath_var='LD_RUN_PATH'
 
-      if test "$GCC" = yes; then
-       archive_cmds='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-       archive_expsym_cmds='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+      if test yes = "$GCC"; then
+       archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+       archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
       else
-       archive_cmds='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-       archive_expsym_cmds='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+       archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+       archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
       fi
       ;;
 
@@ -10229,10 +10629,10 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; }
       ;;
     esac
 
-    if test x$host_vendor = xsni; then
+    if test sni = "$host_vendor"; then
       case $host in
       sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
-       export_dynamic_flag_spec='${wl}-Blargedynsym'
+       export_dynamic_flag_spec='$wl-Blargedynsym'
        ;;
       esac
     fi
@@ -10240,7 +10640,7 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; }
 
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5
 $as_echo "$ld_shlibs" >&6; }
-test "$ld_shlibs" = no && can_build_shared=no
+test no = "$ld_shlibs" && can_build_shared=no
 
 with_gnu_ld=$with_gnu_ld
 
@@ -10266,7 +10666,7 @@ x|xyes)
   # Assume -lc should be added
   archive_cmds_need_lc=yes
 
-  if test "$enable_shared" = yes && test "$GCC" = yes; then
+  if test yes,yes = "$GCC,$enable_shared"; then
     case $archive_cmds in
     *'~'*)
       # FIXME: we may have to deal with multi-command sequences.
@@ -10481,14 +10881,14 @@ esac
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5
 $as_echo_n "checking dynamic linker characteristics... " >&6; }
 
-if test "$GCC" = yes; then
+if test yes = "$GCC"; then
   case $host_os in
-    darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
-    *) lt_awk_arg="/^libraries:/" ;;
+    darwin*) lt_awk_arg='/^libraries:/,/LR/' ;;
+    *) lt_awk_arg='/^libraries:/' ;;
   esac
   case $host_os in
-    mingw* | cegcc*) lt_sed_strip_eq="s,=\([A-Za-z]:\),\1,g" ;;
-    *) lt_sed_strip_eq="s,=/,/,g" ;;
+    mingw* | cegcc*) lt_sed_strip_eq='s|=\([A-Za-z]:\)|\1|g' ;;
+    *) lt_sed_strip_eq='s|=/|/|g' ;;
   esac
   lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
   case $lt_search_path_spec in
@@ -10504,28 +10904,35 @@ if test "$GCC" = yes; then
     ;;
   esac
   # Ok, now we have the path, separated by spaces, we can step through it
-  # and add multilib dir if necessary.
+  # and add multilib dir if necessary...
   lt_tmp_lt_search_path_spec=
-  lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
+  lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
+  # ...but if some path component already ends with the multilib dir we assume
+  # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer).
+  case "$lt_multi_os_dir; $lt_search_path_spec " in
+  "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*)
+    lt_multi_os_dir=
+    ;;
+  esac
   for lt_sys_path in $lt_search_path_spec; do
-    if test -d "$lt_sys_path/$lt_multi_os_dir"; then
-      lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
-    else
+    if test -d "$lt_sys_path$lt_multi_os_dir"; then
+      lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir"
+    elif test -n "$lt_multi_os_dir"; then
       test -d "$lt_sys_path" && \
        lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
     fi
   done
   lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
-BEGIN {RS=" "; FS="/|\n";} {
-  lt_foo="";
-  lt_count=0;
+BEGIN {RS = " "; FS = "/|\n";} {
+  lt_foo = "";
+  lt_count = 0;
   for (lt_i = NF; lt_i > 0; lt_i--) {
     if ($lt_i != "" && $lt_i != ".") {
       if ($lt_i == "..") {
         lt_count++;
       } else {
         if (lt_count == 0) {
-          lt_foo="/" $lt_i lt_foo;
+          lt_foo = "/" $lt_i lt_foo;
         } else {
           lt_count--;
         }
@@ -10539,7 +10946,7 @@ BEGIN {RS=" "; FS="/|\n";} {
   # for these hosts.
   case $host_os in
     mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
-      $SED 's,/\([A-Za-z]:\),\1,g'` ;;
+      $SED 's|/\([A-Za-z]:\)|\1|g'` ;;
   esac
   sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
 else
@@ -10548,7 +10955,7 @@ fi
 library_names_spec=
 libname_spec='lib$name'
 soname_spec=
-shrext_cmds=".so"
+shrext_cmds=.so
 postinstall_cmds=
 postuninstall_cmds=
 finish_cmds=
@@ -10565,14 +10972,16 @@ hardcode_into_libs=no
 # flags to be left without arguments
 need_version=unknown
 
+
+
 case $host_os in
 aix3*)
   version_type=linux # correct to gnu/linux during the next big refactor
-  library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname.a'
   shlibpath_var=LIBPATH
 
   # AIX 3 has no versioning support, so we append a major version to the name.
-  soname_spec='${libname}${release}${shared_ext}$major'
+  soname_spec='$libname$release$shared_ext$major'
   ;;
 
 aix[4-9]*)
@@ -10580,41 +10989,91 @@ aix[4-9]*)
   need_lib_prefix=no
   need_version=no
   hardcode_into_libs=yes
-  if test "$host_cpu" = ia64; then
+  if test ia64 = "$host_cpu"; then
     # AIX 5 supports IA64
-    library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
+    library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext'
     shlibpath_var=LD_LIBRARY_PATH
   else
     # With GCC up to 2.95.x, collect2 would create an import file
     # for dependence libraries.  The import file would start with
-    # the line `#! .'.  This would cause the generated library to
-    # depend on `.', always an invalid library.  This was fixed in
+    # the line '#! .'.  This would cause the generated library to
+    # depend on '.', always an invalid library.  This was fixed in
     # development snapshots of GCC prior to 3.0.
     case $host_os in
       aix4 | aix4.[01] | aix4.[01].*)
       if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
           echo ' yes '
-          echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
+          echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then
        :
       else
        can_build_shared=no
       fi
       ;;
     esac
-    # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
+    # Using Import Files as archive members, it is possible to support
+    # filename-based versioning of shared library archives on AIX. While
+    # this would work for both with and without runtime linking, it will
+    # prevent static linking of such archives. So we do filename-based
+    # shared library versioning with .so extension only, which is used
+    # when both runtime linking and shared linking is enabled.
+    # Unfortunately, runtime linking may impact performance, so we do
+    # not want this to be the default eventually. Also, we use the
+    # versioned .so libs for executables only if there is the -brtl
+    # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only.
+    # To allow for filename-based versioning support, we need to create
+    # libNAME.so.V as an archive file, containing:
+    # *) an Import File, referring to the versioned filename of the
+    #    archive as well as the shared archive member, telling the
+    #    bitwidth (32 or 64) of that shared object, and providing the
+    #    list of exported symbols of that shared object, eventually
+    #    decorated with the 'weak' keyword
+    # *) the shared object with the F_LOADONLY flag set, to really avoid
+    #    it being seen by the linker.
+    # At run time we better use the real file rather than another symlink,
+    # but for link time we create the symlink libNAME.so -> libNAME.so.V
+
+    case $with_aix_soname,$aix_use_runtimelinking in
+    # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct
     # soname into executable. Probably we can add versioning support to
     # collect2, so additional links can be useful in future.
-    if test "$aix_use_runtimelinking" = yes; then
+    aix,yes) # traditional libtool
+      dynamic_linker='AIX unversionable lib.so'
       # If using run time linking (on AIX 4.2 or later) use lib<name>.so
       # instead of lib<name>.a to let people know that these are not
       # typical AIX shared libraries.
-      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    else
+      library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+      ;;
+    aix,no) # traditional AIX only
+      dynamic_linker='AIX lib.a(lib.so.V)'
       # We preserve .a as extension for shared libraries through AIX4.2
       # and later when we are not doing run time linking.
-      library_names_spec='${libname}${release}.a $libname.a'
-      soname_spec='${libname}${release}${shared_ext}$major'
-    fi
+      library_names_spec='$libname$release.a $libname.a'
+      soname_spec='$libname$release$shared_ext$major'
+      ;;
+    svr4,*) # full svr4 only
+      dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o)"
+      library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
+      # We do not specify a path in Import Files, so LIBPATH fires.
+      shlibpath_overrides_runpath=yes
+      ;;
+    *,yes) # both, prefer svr4
+      dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o), lib.a(lib.so.V)"
+      library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
+      # unpreferred sharedlib libNAME.a needs extra handling
+      postinstall_cmds='test -n "$linkname" || linkname="$realname"~func_stripname "" ".so" "$linkname"~$install_shared_prog "$dir/$func_stripname_result.$libext" "$destdir/$func_stripname_result.$libext"~test -z "$tstripme" || test -z "$striplib" || $striplib "$destdir/$func_stripname_result.$libext"'
+      postuninstall_cmds='for n in $library_names $old_library; do :; done~func_stripname "" ".so" "$n"~test "$func_stripname_result" = "$n" || func_append rmfiles " $odir/$func_stripname_result.$libext"'
+      # We do not specify a path in Import Files, so LIBPATH fires.
+      shlibpath_overrides_runpath=yes
+      ;;
+    *,no) # both, prefer aix
+      dynamic_linker="AIX lib.a(lib.so.V), lib.so.V($shared_archive_member_spec.o)"
+      library_names_spec='$libname$release.a $libname.a'
+      soname_spec='$libname$release$shared_ext$major'
+      # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling
+      postinstall_cmds='test -z "$dlname" || $install_shared_prog $dir/$dlname $destdir/$dlname~test -z "$tstripme" || test -z "$striplib" || $striplib $destdir/$dlname~test -n "$linkname" || linkname=$realname~func_stripname "" ".a" "$linkname"~(cd "$destdir" && $LN_S -f $dlname $func_stripname_result.so)'
+      postuninstall_cmds='test -z "$dlname" || func_append rmfiles " $odir/$dlname"~for n in $old_library $library_names; do :; done~func_stripname "" ".a" "$n"~func_append rmfiles " $odir/$func_stripname_result.so"'
+      ;;
+    esac
     shlibpath_var=LIBPATH
   fi
   ;;
@@ -10624,18 +11083,18 @@ amigaos*)
   powerpc)
     # Since July 2007 AmigaOS4 officially supports .so libraries.
     # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
     ;;
   m68k)
     library_names_spec='$libname.ixlibrary $libname.a'
     # Create ${libname}_ixlibrary.a entries in /sys/libs.
-    finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
+    finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
     ;;
   esac
   ;;
 
 beos*)
-  library_names_spec='${libname}${shared_ext}'
+  library_names_spec='$libname$shared_ext'
   dynamic_linker="$host_os ld.so"
   shlibpath_var=LIBRARY_PATH
   ;;
@@ -10643,8 +11102,8 @@ beos*)
 bsdi[45]*)
   version_type=linux # correct to gnu/linux during the next big refactor
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
   shlibpath_var=LD_LIBRARY_PATH
   sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
@@ -10656,7 +11115,7 @@ bsdi[45]*)
 
 cygwin* | mingw* | pw32* | cegcc*)
   version_type=windows
-  shrext_cmds=".dll"
+  shrext_cmds=.dll
   need_version=no
   need_lib_prefix=no
 
@@ -10665,8 +11124,8 @@ cygwin* | mingw* | pw32* | cegcc*)
     # gcc
     library_names_spec='$libname.dll.a'
     # DLL is installed to $(libdir)/../bin by postinstall_cmds
-    postinstall_cmds='base_file=`basename \${file}`~
-      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
+    postinstall_cmds='base_file=`basename \$file`~
+      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
       dldir=$destdir/`dirname \$dlpath`~
       test -d \$dldir || mkdir -p \$dldir~
       $install_prog $dir/$dlname \$dldir/$dlname~
@@ -10682,17 +11141,17 @@ cygwin* | mingw* | pw32* | cegcc*)
     case $host_os in
     cygwin*)
       # Cygwin DLLs use 'cyg' prefix rather than 'lib'
-      soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
+      soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
 
       sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"
       ;;
     mingw* | cegcc*)
       # MinGW DLLs use traditional 'lib' prefix
-      soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
+      soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
       ;;
     pw32*)
       # pw32 DLLs use 'pw' prefix rather than 'lib'
-      library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
+      library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
       ;;
     esac
     dynamic_linker='Win32 ld.exe'
@@ -10701,8 +11160,8 @@ cygwin* | mingw* | pw32* | cegcc*)
   *,cl*)
     # Native MSVC
     libname_spec='$name'
-    soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
-    library_names_spec='${libname}.dll.lib'
+    soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
+    library_names_spec='$libname.dll.lib'
 
     case $build_os in
     mingw*)
@@ -10729,7 +11188,7 @@ cygwin* | mingw* | pw32* | cegcc*)
       sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
       ;;
     *)
-      sys_lib_search_path_spec="$LIB"
+      sys_lib_search_path_spec=$LIB
       if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then
         # It is most probably a Windows format PATH.
         sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
@@ -10742,8 +11201,8 @@ cygwin* | mingw* | pw32* | cegcc*)
     esac
 
     # DLL is installed to $(libdir)/../bin by postinstall_cmds
-    postinstall_cmds='base_file=`basename \${file}`~
-      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
+    postinstall_cmds='base_file=`basename \$file`~
+      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
       dldir=$destdir/`dirname \$dlpath`~
       test -d \$dldir || mkdir -p \$dldir~
       $install_prog $dir/$dlname \$dldir/$dlname'
@@ -10756,7 +11215,7 @@ cygwin* | mingw* | pw32* | cegcc*)
 
   *)
     # Assume MSVC wrapper
-    library_names_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext} $libname.lib'
+    library_names_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext $libname.lib'
     dynamic_linker='Win32 ld.exe'
     ;;
   esac
@@ -10769,8 +11228,8 @@ darwin* | rhapsody*)
   version_type=darwin
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
-  soname_spec='${libname}${release}${major}$shared_ext'
+  library_names_spec='$libname$release$major$shared_ext $libname$shared_ext'
+  soname_spec='$libname$release$major$shared_ext'
   shlibpath_overrides_runpath=yes
   shlibpath_var=DYLD_LIBRARY_PATH
   shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
@@ -10783,8 +11242,8 @@ dgux*)
   version_type=linux # correct to gnu/linux during the next big refactor
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   shlibpath_var=LD_LIBRARY_PATH
   ;;
 
@@ -10802,12 +11261,13 @@ freebsd* | dragonfly*)
   version_type=freebsd-$objformat
   case $version_type in
     freebsd-elf*)
-      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
+      library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+      soname_spec='$libname$release$shared_ext$major'
       need_version=no
       need_lib_prefix=no
       ;;
     freebsd-*)
-      library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
+      library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
       need_version=yes
       ;;
   esac
@@ -10837,10 +11297,10 @@ haiku*)
   need_lib_prefix=no
   need_version=no
   dynamic_linker="$host_os runtime_loader"
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   shlibpath_var=LIBRARY_PATH
-  shlibpath_overrides_runpath=yes
+  shlibpath_overrides_runpath=no
   sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
   hardcode_into_libs=yes
   ;;
@@ -10858,14 +11318,15 @@ hpux9* | hpux10* | hpux11*)
     dynamic_linker="$host_os dld.so"
     shlibpath_var=LD_LIBRARY_PATH
     shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
-    if test "X$HPUX_IA64_MODE" = X32; then
+    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+    soname_spec='$libname$release$shared_ext$major'
+    if test 32 = "$HPUX_IA64_MODE"; then
       sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
+      sys_lib_dlsearch_path_spec=/usr/lib/hpux32
     else
       sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
+      sys_lib_dlsearch_path_spec=/usr/lib/hpux64
     fi
-    sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
     ;;
   hppa*64*)
     shrext_cmds='.sl'
@@ -10873,8 +11334,8 @@ hpux9* | hpux10* | hpux11*)
     dynamic_linker="$host_os dld.sl"
     shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
     shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
+    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+    soname_spec='$libname$release$shared_ext$major'
     sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
     sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
     ;;
@@ -10883,8 +11344,8 @@ hpux9* | hpux10* | hpux11*)
     dynamic_linker="$host_os dld.sl"
     shlibpath_var=SHLIB_PATH
     shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
+    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+    soname_spec='$libname$release$shared_ext$major'
     ;;
   esac
   # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
@@ -10897,8 +11358,8 @@ interix[3-9]*)
   version_type=linux # correct to gnu/linux during the next big refactor
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=no
@@ -10909,7 +11370,7 @@ irix5* | irix6* | nonstopux*)
   case $host_os in
     nonstopux*) version_type=nonstopux ;;
     *)
-       if test "$lt_cv_prog_gnu_ld" = yes; then
+       if test yes = "$lt_cv_prog_gnu_ld"; then
                version_type=linux # correct to gnu/linux during the next big refactor
        else
                version_type=irix
@@ -10917,8 +11378,8 @@ irix5* | irix6* | nonstopux*)
   esac
   need_lib_prefix=no
   need_version=no
-  soname_spec='${libname}${release}${shared_ext}$major'
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
+  soname_spec='$libname$release$shared_ext$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext'
   case $host_os in
   irix5* | nonstopux*)
     libsuff= shlibsuff=
@@ -10937,8 +11398,8 @@ irix5* | irix6* | nonstopux*)
   esac
   shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
   shlibpath_overrides_runpath=no
-  sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
-  sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
+  sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff"
+  sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff"
   hardcode_into_libs=yes
   ;;
 
@@ -10947,13 +11408,33 @@ linux*oldld* | linux*aout* | linux*coff*)
   dynamic_linker=no
   ;;
 
+linux*android*)
+  version_type=none # Android doesn't support versioned libraries.
+  need_lib_prefix=no
+  need_version=no
+  library_names_spec='$libname$release$shared_ext'
+  soname_spec='$libname$release$shared_ext'
+  finish_cmds=
+  shlibpath_var=LD_LIBRARY_PATH
+  shlibpath_overrides_runpath=yes
+
+  # This implies no fast_install, which is unacceptable.
+  # Some rework will be needed to allow for fast_install
+  # before this can be enabled.
+  hardcode_into_libs=yes
+
+  dynamic_linker='Android linker'
+  # Don't embed -rpath directories since the linker doesn't support them.
+  hardcode_libdir_flag_spec='-L$libdir'
+  ;;
+
 # This must be glibc/ELF.
 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
   version_type=linux # correct to gnu/linux during the next big refactor
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=no
   # before this can be enabled.
   hardcode_into_libs=yes
 
-  # Append ld.so.conf contents to the search path
+  # Ideally, we could use ldconfig to report *all* directores which are
+  # searched for libraries, however this is still not possible.  Aside from not
+  # being certain /sbin/ldconfig is available, command
+  # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,
+  # even though it is searched at run-time.  Try to do the best guess by
+  # appending ld.so.conf contents (and includes) to the search path.
   if test -f /etc/ld.so.conf; then
     lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[      ]*hwcap[        ]/d;s/[:,      ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
     sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
@@ -11029,12 +11515,12 @@ netbsd*)
   need_lib_prefix=no
   need_version=no
   if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
+    library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
     finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
     dynamic_linker='NetBSD (a.out) ld.so'
   else
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
+    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+    soname_spec='$libname$release$shared_ext$major'
     dynamic_linker='NetBSD ld.elf_so'
   fi
   shlibpath_var=LD_LIBRARY_PATH
@@ -11044,7 +11530,7 @@ netbsd*)
 
 newsos6)
   version_type=linux # correct to gnu/linux during the next big refactor
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=yes
   ;;
@@ -11053,58 +11539,68 @@ newsos6)
   version_type=qnx
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=no
   hardcode_into_libs=yes
   dynamic_linker='ldqnx.so'
   ;;
 
-openbsd*)
+openbsd* | bitrig*)
   version_type=sunos
-  sys_lib_dlsearch_path_spec="/usr/lib"
+  sys_lib_dlsearch_path_spec=/usr/lib
   need_lib_prefix=no
-  # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
-  case $host_os in
-    openbsd3.3 | openbsd3.3.*) need_version=yes ;;
-    *)                         need_version=no  ;;
-  esac
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
-  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
-  shlibpath_var=LD_LIBRARY_PATH
-  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-    case $host_os in
-      openbsd2.[89] | openbsd2.[89].*)
-       shlibpath_overrides_runpath=no
-       ;;
-      *)
-       shlibpath_overrides_runpath=yes
-       ;;
-      esac
+  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
+    need_version=no
   else
-    shlibpath_overrides_runpath=yes
+    need_version=yes
   fi
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
+  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
+  shlibpath_var=LD_LIBRARY_PATH
+  shlibpath_overrides_runpath=yes
   ;;
 
 os2*)
   libname_spec='$name'
-  shrext_cmds=".dll"
+  version_type=windows
+  shrext_cmds=.dll
+  need_version=no
   need_lib_prefix=no
-  library_names_spec='$libname${shared_ext} $libname.a'
+  # OS/2 can only load a DLL with a base name of 8 characters or less.
+  soname_spec='`test -n "$os2dllname" && libname="$os2dllname";
+    v=$($ECHO $release$versuffix | tr -d .-);
+    n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _);
+    $ECHO $n$v`$shared_ext'
+  library_names_spec='${libname}_dll.$libext'
   dynamic_linker='OS/2 ld.exe'
-  shlibpath_var=LIBPATH
+  shlibpath_var=BEGINLIBPATH
+  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
+  sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
+  postinstall_cmds='base_file=`basename \$file`~
+    dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~
+    dldir=$destdir/`dirname \$dlpath`~
+    test -d \$dldir || mkdir -p \$dldir~
+    $install_prog $dir/$dlname \$dldir/$dlname~
+    chmod a+x \$dldir/$dlname~
+    if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
+      eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
+    fi'
+  postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~
+    dlpath=$dir/\$dldll~
+    $RM \$dlpath'
   ;;
 
 osf3* | osf4* | osf5*)
   version_type=osf
   need_lib_prefix=no
   need_version=no
-  soname_spec='${libname}${release}${shared_ext}$major'
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+  soname_spec='$libname$release$shared_ext$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
   shlibpath_var=LD_LIBRARY_PATH
   sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
-  sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
+  sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
   ;;
 
 rdos*)
@@ -11115,8 +11611,8 @@ solaris*)
   version_type=linux # correct to gnu/linux during the next big refactor
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=yes
   hardcode_into_libs=yes
@@ -11126,11 +11622,11 @@ solaris*)
 
 sunos4*)
   version_type=sunos
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
   finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=yes
-  if test "$with_gnu_ld" = yes; then
+  if test yes = "$with_gnu_ld"; then
     need_lib_prefix=no
   fi
   need_version=yes
@@ -11138,8 +11634,8 @@ sunos4*)
 
 sysv4 | sysv4.3*)
   version_type=linux # correct to gnu/linux during the next big refactor
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   shlibpath_var=LD_LIBRARY_PATH
   case $host_vendor in
     sni)
@@ -11160,24 +11656,24 @@ sysv4 | sysv4.3*)
   ;;
 
 sysv4*MP*)
-  if test -d /usr/nec ;then
+  if test -d /usr/necthen
     version_type=linux # correct to gnu/linux during the next big refactor
-    library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
-    soname_spec='$libname${shared_ext}.$major'
+    library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext'
+    soname_spec='$libname$shared_ext.$major'
     shlibpath_var=LD_LIBRARY_PATH
   fi
   ;;
 
 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
-  version_type=freebsd-elf
+  version_type=sco
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=yes
   hardcode_into_libs=yes
-  if test "$with_gnu_ld" = yes; then
+  if test yes = "$with_gnu_ld"; then
     sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
   else
     sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
@@ -11195,7 +11691,7 @@ tpf*)
   version_type=linux # correct to gnu/linux during the next big refactor
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=no
   hardcode_into_libs=yes
@@ -11203,8 +11699,8 @@ tpf*)
 
 uts4*)
   version_type=linux # correct to gnu/linux during the next big refactor
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   shlibpath_var=LD_LIBRARY_PATH
   ;;
 
@@ -11214,20 +11710,35 @@ uts4*)
 esac
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5
 $as_echo "$dynamic_linker" >&6; }
-test "$dynamic_linker" = no && can_build_shared=no
+test no = "$dynamic_linker" && can_build_shared=no
 
 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
-if test "$GCC" = yes; then
+if test yes = "$GCC"; then
   variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
 fi
 
-if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
-  sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
+if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then
+  sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec
 fi
-if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
-  sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
+
+if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then
+  sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec
 fi
 
+# remember unaugmented sys_lib_dlsearch_path content for libtool script decls...
+configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec
+
+# ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code
+func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH"
+
+# to be used as default LT_SYS_LIBRARY_PATH value in generated libtool
+configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH
+
+
+
+
+
+
 
 
 
@@ -11324,15 +11835,15 @@ $as_echo_n "checking how to hardcode library paths into programs... " >&6; }
 hardcode_action=
 if test -n "$hardcode_libdir_flag_spec" ||
    test -n "$runpath_var" ||
-   test "X$hardcode_automatic" = "Xyes" ; then
+   test yes = "$hardcode_automatic"; then
 
   # We can hardcode non-existent directories.
-  if test "$hardcode_direct" != no &&
+  if test no != "$hardcode_direct" &&
      # If the only mechanism to avoid hardcoding is shlibpath_var, we
      # have to relink, otherwise we might link with an installed library
      # when we should be linking with a yet-to-be-installed one
-     ## test "$_LT_TAGVAR(hardcode_shlibpath_var, )" != no &&
-     test "$hardcode_minus_L" != no; then
+     ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, )" &&
+     test no != "$hardcode_minus_L"; then
     # Linking always hardcodes the temporary library directory.
     hardcode_action=relink
   else
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5
 $as_echo "$hardcode_action" >&6; }
 
-if test "$hardcode_action" = relink ||
-   test "$inherit_rpath" = yes; then
+if test relink = "$hardcode_action" ||
+   test yes = "$inherit_rpath"; then
   # Fast installation is not supported
   enable_fast_install=no
-elif test "$shlibpath_overrides_runpath" = yes ||
-     test "$enable_shared" = no; then
+elif test yes = "$shlibpath_overrides_runpath" ||
+     test no = "$enable_shared"; then
   # Fast installation is not necessary
   enable_fast_install=needless
 fi
@@ -11362,7 +11873,7 @@ fi
 
 
 
-  if test "x$enable_dlopen" != xyes; then
+  if test yes != "$enable_dlopen"; then
   enable_dlopen=unknown
   enable_dlopen_self=unknown
   enable_dlopen_self_static=unknown
@@ -11372,23 +11883,23 @@ else
 
   case $host_os in
   beos*)
-    lt_cv_dlopen="load_add_on"
+    lt_cv_dlopen=load_add_on
     lt_cv_dlopen_libs=
     lt_cv_dlopen_self=yes
     ;;
 
   mingw* | pw32* | cegcc*)
-    lt_cv_dlopen="LoadLibrary"
+    lt_cv_dlopen=LoadLibrary
     lt_cv_dlopen_libs=
     ;;
 
   cygwin*)
-    lt_cv_dlopen="dlopen"
+    lt_cv_dlopen=dlopen
     lt_cv_dlopen_libs=
     ;;
 
   darwin*)
-  # if libdl is installed we need to link against it
+    # if libdl is installed we need to link against it
     { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
 $as_echo_n "checking for dlopen in -ldl... " >&6; }
 if ${ac_cv_lib_dl_dlopen+:} false; then :
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
 $as_echo "$ac_cv_lib_dl_dlopen" >&6; }
 if test "x$ac_cv_lib_dl_dlopen" = xyes; then :
-  lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"
+  lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl
 else
 
-    lt_cv_dlopen="dyld"
+    lt_cv_dlopen=dyld
     lt_cv_dlopen_libs=
     lt_cv_dlopen_self=yes
 
 
     ;;
 
+  tpf*)
+    # Don't try to run any link tests for TPF.  We know it's impossible
+    # because TPF is a cross-compiler, and we know how we open DSOs.
+    lt_cv_dlopen=dlopen
+    lt_cv_dlopen_libs=
+    lt_cv_dlopen_self=no
+    ;;
+
   *)
     ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load"
 if test "x$ac_cv_func_shl_load" = xyes; then :
-  lt_cv_dlopen="shl_load"
+  lt_cv_dlopen=shl_load
 else
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5
 $as_echo_n "checking for shl_load in -ldld... " >&6; }
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5
 $as_echo "$ac_cv_lib_dld_shl_load" >&6; }
 if test "x$ac_cv_lib_dld_shl_load" = xyes; then :
-  lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"
+  lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld
 else
   ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen"
 if test "x$ac_cv_func_dlopen" = xyes; then :
-  lt_cv_dlopen="dlopen"
+  lt_cv_dlopen=dlopen
 else
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
 $as_echo_n "checking for dlopen in -ldl... " >&6; }
@@ -11522,7 +12041,7 @@ fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
 $as_echo "$ac_cv_lib_dl_dlopen" >&6; }
 if test "x$ac_cv_lib_dl_dlopen" = xyes; then :
-  lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"
+  lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl
 else
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5
 $as_echo_n "checking for dlopen in -lsvld... " >&6; }
@@ -11561,7 +12080,7 @@ fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5
 $as_echo "$ac_cv_lib_svld_dlopen" >&6; }
 if test "x$ac_cv_lib_svld_dlopen" = xyes; then :
-  lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"
+  lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld
 else
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5
 $as_echo_n "checking for dld_link in -ldld... " >&6; }
@@ -11600,7 +12119,7 @@ fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5
 $as_echo "$ac_cv_lib_dld_dld_link" >&6; }
 if test "x$ac_cv_lib_dld_dld_link" = xyes; then :
-  lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"
+  lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld
 fi
 
 
     ;;
   esac
 
-  if test "x$lt_cv_dlopen" != xno; then
-    enable_dlopen=yes
-  else
+  if test no = "$lt_cv_dlopen"; then
     enable_dlopen=no
+  else
+    enable_dlopen=yes
   fi
 
   case $lt_cv_dlopen in
   dlopen)
-    save_CPPFLAGS="$CPPFLAGS"
-    test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
+    save_CPPFLAGS=$CPPFLAGS
+    test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
 
-    save_LDFLAGS="$LDFLAGS"
+    save_LDFLAGS=$LDFLAGS
     wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
 
-    save_LIBS="$LIBS"
+    save_LIBS=$LIBS
     LIBS="$lt_cv_dlopen_libs $LIBS"
 
     { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5
@@ -11643,7 +12162,7 @@ $as_echo_n "checking whether a program can dlopen itself... " >&6; }
 if ${lt_cv_dlopen_self+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-         if test "$cross_compiling" = yes; then :
+         if test yes = "$cross_compiling"; then :
   lt_cv_dlopen_self=cross
 else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
@@ -11690,9 +12209,9 @@ else
 #  endif
 #endif
 
-/* When -fvisbility=hidden is used, assume the code has been annotated
+/* When -fvisibility=hidden is used, assume the code has been annotated
    correspondingly for the symbols needed.  */
-#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
+#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
 int fnord () __attribute__((visibility("default")));
 #endif
 
@@ -11722,7 +12241,7 @@ _LT_EOF
   (eval $ac_link) 2>&5
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then
+  test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then
     (./conftest; exit; ) >&5 2>/dev/null
     lt_status=$?
     case x$lt_status in
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5
 $as_echo "$lt_cv_dlopen_self" >&6; }
 
-    if test "x$lt_cv_dlopen_self" = xyes; then
+    if test yes = "$lt_cv_dlopen_self"; then
       wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5
 $as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; }
 if ${lt_cv_dlopen_self_static+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-         if test "$cross_compiling" = yes; then :
+         if test yes = "$cross_compiling"; then :
   lt_cv_dlopen_self_static=cross
 else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
@@ -11796,9 +12315,9 @@ else
 #  endif
 #endif
 
-/* When -fvisbility=hidden is used, assume the code has been annotated
+/* When -fvisibility=hidden is used, assume the code has been annotated
    correspondingly for the symbols needed.  */
-#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
+#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
 int fnord () __attribute__((visibility("default")));
 #endif
 
@@ -11828,7 +12347,7 @@ _LT_EOF
   (eval $ac_link) 2>&5
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then
+  test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then
     (./conftest; exit; ) >&5 2>/dev/null
     lt_status=$?
     case x$lt_status in
@@ -11849,9 +12368,9 @@ fi
 $as_echo "$lt_cv_dlopen_self_static" >&6; }
     fi
 
-    CPPFLAGS="$save_CPPFLAGS"
-    LDFLAGS="$save_LDFLAGS"
-    LIBS="$save_LIBS"
+    CPPFLAGS=$save_CPPFLAGS
+    LDFLAGS=$save_LDFLAGS
+    LIBS=$save_LIBS
     ;;
   esac
 
@@ -11895,7 +12414,7 @@ else
 # FIXME - insert some real tests, host_os isn't really good enough
   case $host_os in
   darwin*)
-    if test -n "$STRIP" ; then
+    if test -n "$STRIP"; then
       striplib="$STRIP -x"
       old_striplib="$STRIP -S"
       { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
@@ -11923,7 +12442,7 @@ fi
 
 
 
-  # Report which library types will actually be built
+  # Report what library types will actually be built
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5
 $as_echo_n "checking if libtool supports shared libraries... " >&6; }
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5
@@ -11931,13 +12450,13 @@ $as_echo "$can_build_shared" >&6; }
 
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5
 $as_echo_n "checking whether to build shared libraries... " >&6; }
-  test "$can_build_shared" = "no" && enable_shared=no
+  test no = "$can_build_shared" && enable_shared=no
 
   # On AIX, shared libraries and static libraries use the same namespace, and
   # are all built from PIC.
   case $host_os in
   aix3*)
-    test "$enable_shared" = yes && enable_static=no
+    test yes = "$enable_shared" && enable_static=no
     if test -n "$RANLIB"; then
       archive_cmds="$archive_cmds~\$RANLIB \$lib"
       postinstall_cmds='$RANLIB $lib'
@@ -11945,8 +12464,12 @@ $as_echo_n "checking whether to build shared libraries... " >&6; }
     ;;
 
   aix[4-9]*)
-    if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
-      test "$enable_shared" = yes && enable_static=no
+    if test ia64 != "$host_cpu"; then
+      case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
+      yes,aix,yes) ;;                  # shared object as lib.so file only
+      yes,svr4,*) ;;                   # shared object as lib.so archive member only
+      yes,*) enable_static=no ;;       # shared object in lib.a archive as well
+      esac
     fi
     ;;
   esac
@@ -11956,7 +12479,7 @@ $as_echo "$enable_shared" >&6; }
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5
 $as_echo_n "checking whether to build static libraries... " >&6; }
   # Make sure either enable_shared or enable_static is yes.
-  test "$enable_shared" = yes || enable_static=yes
+  test yes = "$enable_shared" || enable_static=yes
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5
 $as_echo "$enable_static" >&6; }
 
@@ -11970,7 +12493,7 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
-CC="$lt_save_CC"
+CC=$lt_save_CC
 
 
 
@@ -12935,7 +13458,6 @@ $as_echo "$as_me: WARNING: you will not be able to compile vala source files" >&
       :
     fi
 
-gee_0_8=no
 # Platform checks
 
 
@@ -12946,21 +13468,38 @@ case "$host" in
     linux=no
     SERVER_IPC_MODULE="msrpc-glib2-1.0"
     CLIENT_IPC_MODULE="msrpc-mingw-1.0"
+    ;;
+
+  *darwin*)
+    win32=no
+    macos=yes
+    linux=no
+
+    # We require dbus-glib for the client library even if we are using GDBus
+    # in the server. The reason we can't always use dbus-glib in the server is
+    # because Vala drops support for it, but as it ships with DBus there is very
+    # little danger of it being dropped by distros any time soon.
+    CLIENT_IPC_MODULE="dbus-glib-1"
+       SERVER_IPC_MODULE="dbus-glib-1"
+
 
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GTK" >&5
-$as_echo_n "checking for GTK... " >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for MAC" >&5
+$as_echo_n "checking for MAC... " >&6; }
 
-if test -n "$GTK_CFLAGS"; then
-    pkg_cv_GTK_CFLAGS="$GTK_CFLAGS"
+if test -n "$MAC_CFLAGS"; then
+    pkg_cv_MAC_CFLAGS="$MAC_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk+-2.0 >= 2.18\""; } >&5
-  ($PKG_CONFIG --exists --print-errors "gtk+-2.0 >= 2.18") 2>&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk-mac-integration >= 1.0.1
+       \""; } >&5
+  ($PKG_CONFIG --exists --print-errors "gtk-mac-integration >= 1.0.1
+       ") 2>&5
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_GTK_CFLAGS=`$PKG_CONFIG --cflags "gtk+-2.0 >= 2.18" 2>/dev/null`
+  pkg_cv_MAC_CFLAGS=`$PKG_CONFIG --cflags "gtk-mac-integration >= 1.0.1
+       " 2>/dev/null`
                      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
  else
     pkg_failed=untried
 fi
-if test -n "$GTK_LIBS"; then
-    pkg_cv_GTK_LIBS="$GTK_LIBS"
+if test -n "$MAC_LIBS"; then
+    pkg_cv_MAC_LIBS="$MAC_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk+-2.0 >= 2.18\""; } >&5
-  ($PKG_CONFIG --exists --print-errors "gtk+-2.0 >= 2.18") 2>&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk-mac-integration >= 1.0.1
+       \""; } >&5
+  ($PKG_CONFIG --exists --print-errors "gtk-mac-integration >= 1.0.1
+       ") 2>&5
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_GTK_LIBS=`$PKG_CONFIG --libs "gtk+-2.0 >= 2.18" 2>/dev/null`
+  pkg_cv_MAC_LIBS=`$PKG_CONFIG --libs "gtk-mac-integration >= 1.0.1
+       " 2>/dev/null`
                      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
@@ -12998,22 +13540,25 @@ else
         _pkg_short_errors_supported=no
 fi
         if test $_pkg_short_errors_supported = yes; then
-               GTK_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gtk+-2.0 >= 2.18" 2>&1`
+               MAC_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gtk-mac-integration >= 1.0.1
+       " 2>&1`
         else
-               GTK_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gtk+-2.0 >= 2.18" 2>&1`
+               MAC_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gtk-mac-integration >= 1.0.1
+       " 2>&1`
         fi
        # Put the nasty error message in config.log where it belongs
-       echo "$GTK_PKG_ERRORS" >&5
+       echo "$MAC_PKG_ERRORS" >&5
 
-       as_fn_error $? "Package requirements (gtk+-2.0 >= 2.18) were not met:
+       as_fn_error $? "Package requirements (gtk-mac-integration >= 1.0.1
+       ) were not met:
 
-$GTK_PKG_ERRORS
+$MAC_PKG_ERRORS
 
 Consider adjusting the PKG_CONFIG_PATH environment variable if you
 installed software in a non-standard prefix.
 
-Alternatively, you may set the environment variables GTK_CFLAGS
-and GTK_LIBS to avoid the need to call pkg-config.
+Alternatively, you may set the environment variables MAC_CFLAGS
+and MAC_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
@@ -13024,52 +13569,125 @@ as_fn_error $? "The pkg-config script could not be found or is too old.  Make su
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
-Alternatively, you may set the environment variables GTK_CFLAGS
-and GTK_LIBS to avoid the need to call pkg-config.
+Alternatively, you may set the environment variables MAC_CFLAGS
+and MAC_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
 See \`config.log' for more details" "$LINENO" 5; }
 else
-       GTK_CFLAGS=$pkg_cv_GTK_CFLAGS
-       GTK_LIBS=$pkg_cv_GTK_LIBS
+       MAC_CFLAGS=$pkg_cv_MAC_CFLAGS
+       MAC_LIBS=$pkg_cv_MAC_LIBS
         { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-       GTK_VERSION="gtk+-2.0"
 
 fi
-    ;;
 
-  *darwin*)
+    ;;
+  *)
+    macos=no
     win32=no
-    macos=yes
-    linux=no
+    linux=yes
 
     # We require dbus-glib for the client library even if we are using GDBus
     # in the server. The reason we can't always use dbus-glib in the server is
     # because Vala drops support for it, but as it ships with DBus there is very
     # little danger of it being dropped by distros any time soon.
     CLIENT_IPC_MODULE="dbus-glib-1"
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GDBUS" >&5
+$as_echo_n "checking for GDBUS... " >&6; }
+
+if test -n "$GDBUS_CFLAGS"; then
+    pkg_cv_GDBUS_CFLAGS="$GDBUS_CFLAGS"
+ elif test -n "$PKG_CONFIG"; then
+    if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gio-2.0 >= 2.26\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "gio-2.0 >= 2.26") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_GDBUS_CFLAGS=`$PKG_CONFIG --cflags "gio-2.0 >= 2.26" 2>/dev/null`
+                     test "x$?" != "x0" && pkg_failed=yes
+else
+  pkg_failed=yes
+fi
+ else
+    pkg_failed=untried
+fi
+if test -n "$GDBUS_LIBS"; then
+    pkg_cv_GDBUS_LIBS="$GDBUS_LIBS"
+ elif test -n "$PKG_CONFIG"; then
+    if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gio-2.0 >= 2.26\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "gio-2.0 >= 2.26") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_GDBUS_LIBS=`$PKG_CONFIG --libs "gio-2.0 >= 2.26" 2>/dev/null`
+                     test "x$?" != "x0" && pkg_failed=yes
+else
+  pkg_failed=yes
+fi
+ else
+    pkg_failed=untried
+fi
+
+
+
+if test $pkg_failed = yes; then
+       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+
+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
+        _pkg_short_errors_supported=yes
+else
+        _pkg_short_errors_supported=no
+fi
+        if test $_pkg_short_errors_supported = yes; then
+               GDBUS_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gio-2.0 >= 2.26" 2>&1`
+        else
+               GDBUS_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gio-2.0 >= 2.26" 2>&1`
+        fi
+       # Put the nasty error message in config.log where it belongs
+       echo "$GDBUS_PKG_ERRORS" >&5
+
        SERVER_IPC_MODULE="dbus-glib-1"
 
+elif test $pkg_failed = untried; then
+       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+       SERVER_IPC_MODULE="dbus-glib-1"
+
+else
+       GDBUS_CFLAGS=$pkg_cv_GDBUS_CFLAGS
+       GDBUS_LIBS=$pkg_cv_GDBUS_LIBS
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+       SERVER_IPC_MODULE="gio-2.0"
+fi
+
+    ;;
+esac
+
+
+# For all platforms: Use Gtk+3.0 if available; else revert to Gtk+2.0
 
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for MAC" >&5
-$as_echo_n "checking for MAC... " >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GTK" >&5
+$as_echo_n "checking for GTK... " >&6; }
 
-if test -n "$MAC_CFLAGS"; then
-    pkg_cv_MAC_CFLAGS="$MAC_CFLAGS"
+if test -n "$GTK_CFLAGS"; then
+    pkg_cv_GTK_CFLAGS="$GTK_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk-mac-integration >= 1.0.1
-       \""; } >&5
-  ($PKG_CONFIG --exists --print-errors "gtk-mac-integration >= 1.0.1
-       ") 2>&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk+-3.0 >= 3.1\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "gtk+-3.0 >= 3.1") 2>&5
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_MAC_CFLAGS=`$PKG_CONFIG --cflags "gtk-mac-integration >= 1.0.1
-       " 2>/dev/null`
+  pkg_cv_GTK_CFLAGS=`$PKG_CONFIG --cflags "gtk+-3.0 >= 3.1" 2>/dev/null`
                      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
  else
     pkg_failed=untried
 fi
-if test -n "$MAC_LIBS"; then
-    pkg_cv_MAC_LIBS="$MAC_LIBS"
+if test -n "$GTK_LIBS"; then
+    pkg_cv_GTK_LIBS="$GTK_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk-mac-integration >= 1.0.1
-       \""; } >&5
-  ($PKG_CONFIG --exists --print-errors "gtk-mac-integration >= 1.0.1
-       ") 2>&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk+-3.0 >= 3.1\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "gtk+-3.0 >= 3.1") 2>&5
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_MAC_LIBS=`$PKG_CONFIG --libs "gtk-mac-integration >= 1.0.1
-       " 2>/dev/null`
+  pkg_cv_GTK_LIBS=`$PKG_CONFIG --libs "gtk+-3.0 >= 3.1" 2>/dev/null`
                      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
@@ -13110,25 +13725,81 @@ else
         _pkg_short_errors_supported=no
 fi
         if test $_pkg_short_errors_supported = yes; then
-               MAC_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gtk-mac-integration >= 1.0.1
-       " 2>&1`
+               GTK_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gtk+-3.0 >= 3.1" 2>&1`
         else
-               MAC_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gtk-mac-integration >= 1.0.1
-       " 2>&1`
+               GTK_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gtk+-3.0 >= 3.1" 2>&1`
         fi
        # Put the nasty error message in config.log where it belongs
-       echo "$MAC_PKG_ERRORS" >&5
+       echo "$GTK_PKG_ERRORS" >&5
 
-       as_fn_error $? "Package requirements (gtk-mac-integration >= 1.0.1
-       ) were not met:
 
-$MAC_PKG_ERRORS
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GTK" >&5
+$as_echo_n "checking for GTK... " >&6; }
+
+if test -n "$GTK_CFLAGS"; then
+    pkg_cv_GTK_CFLAGS="$GTK_CFLAGS"
+ elif test -n "$PKG_CONFIG"; then
+    if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk+-2.0 >= 2.18\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "gtk+-2.0 >= 2.18") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_GTK_CFLAGS=`$PKG_CONFIG --cflags "gtk+-2.0 >= 2.18" 2>/dev/null`
+                     test "x$?" != "x0" && pkg_failed=yes
+else
+  pkg_failed=yes
+fi
+ else
+    pkg_failed=untried
+fi
+if test -n "$GTK_LIBS"; then
+    pkg_cv_GTK_LIBS="$GTK_LIBS"
+ elif test -n "$PKG_CONFIG"; then
+    if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk+-2.0 >= 2.18\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "gtk+-2.0 >= 2.18") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_GTK_LIBS=`$PKG_CONFIG --libs "gtk+-2.0 >= 2.18" 2>/dev/null`
+                     test "x$?" != "x0" && pkg_failed=yes
+else
+  pkg_failed=yes
+fi
+ else
+    pkg_failed=untried
+fi
+
+
+
+if test $pkg_failed = yes; then
+       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+
+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
+        _pkg_short_errors_supported=yes
+else
+        _pkg_short_errors_supported=no
+fi
+        if test $_pkg_short_errors_supported = yes; then
+               GTK_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gtk+-2.0 >= 2.18" 2>&1`
+        else
+               GTK_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gtk+-2.0 >= 2.18" 2>&1`
+        fi
+       # Put the nasty error message in config.log where it belongs
+       echo "$GTK_PKG_ERRORS" >&5
+
+       as_fn_error $? "Package requirements (gtk+-2.0 >= 2.18) were not met:
+
+$GTK_PKG_ERRORS
 
 Consider adjusting the PKG_CONFIG_PATH environment variable if you
 installed software in a non-standard prefix.
 
-Alternatively, you may set the environment variables MAC_CFLAGS
-and MAC_LIBS to avoid the need to call pkg-config.
+Alternatively, you may set the environment variables GTK_CFLAGS
+and GTK_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
@@ -13139,23 +13810,24 @@ as_fn_error $? "The pkg-config script could not be found or is too old.  Make su
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
-Alternatively, you may set the environment variables MAC_CFLAGS
-and MAC_LIBS to avoid the need to call pkg-config.
+Alternatively, you may set the environment variables GTK_CFLAGS
+and GTK_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
 See \`config.log' for more details" "$LINENO" 5; }
 else
-       MAC_CFLAGS=$pkg_cv_MAC_CFLAGS
-       MAC_LIBS=$pkg_cv_MAC_LIBS
+       GTK_CFLAGS=$pkg_cv_GTK_CFLAGS
+       GTK_LIBS=$pkg_cv_GTK_LIBS
         { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
+       GTK_VERSION="gtk+-2.0"
 
 fi
 
-# TODO: Move to GTK+-3
-#            [gtk+-3.0 >= 2.0],
-#            [GTK_VERSION="gtk+-3.0"]
+elif test $pkg_failed = untried; then
+       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 pkg_failed=no
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GTK" >&5
@@ -13249,32 +13921,33 @@ $as_echo "yes" >&6; }
 
 fi
 
-    ;;
-  *)
-    macos=no
-    win32=no
-    linux=yes
+else
+       GTK_CFLAGS=$pkg_cv_GTK_CFLAGS
+       GTK_LIBS=$pkg_cv_GTK_LIBS
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+       GTK_VERSION="gtk+-3.0"
+fi
 
-    # We require dbus-glib for the client library even if we are using GDBus
-    # in the server. The reason we can't always use dbus-glib in the server is
-    # because Vala drops support for it, but as it ships with DBus there is very
-    # little danger of it being dropped by distros any time soon.
-    CLIENT_IPC_MODULE="dbus-glib-1"
+
+
+# For all platforms: If Log4Vala is enabled, then Use Log4Vala 0.2 if available; else revert to 0.1
+if test x$log4vala = xtrue; then
 
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GDBUS" >&5
-$as_echo_n "checking for GDBUS... " >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LOG4VALA" >&5
+$as_echo_n "checking for LOG4VALA... " >&6; }
 
-if test -n "$GDBUS_CFLAGS"; then
-    pkg_cv_GDBUS_CFLAGS="$GDBUS_CFLAGS"
+if test -n "$LOG4VALA_CFLAGS"; then
+    pkg_cv_LOG4VALA_CFLAGS="$LOG4VALA_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gio-2.0 >= 2.26\""; } >&5
-  ($PKG_CONFIG --exists --print-errors "gio-2.0 >= 2.26") 2>&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"log4vala-0.2\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "log4vala-0.2") 2>&5
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_GDBUS_CFLAGS=`$PKG_CONFIG --cflags "gio-2.0 >= 2.26" 2>/dev/null`
+  pkg_cv_LOG4VALA_CFLAGS=`$PKG_CONFIG --cflags "log4vala-0.2" 2>/dev/null`
                      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
  else
     pkg_failed=untried
 fi
-if test -n "$GDBUS_LIBS"; then
-    pkg_cv_GDBUS_LIBS="$GDBUS_LIBS"
+if test -n "$LOG4VALA_LIBS"; then
+    pkg_cv_LOG4VALA_LIBS="$LOG4VALA_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gio-2.0 >= 2.26\""; } >&5
-  ($PKG_CONFIG --exists --print-errors "gio-2.0 >= 2.26") 2>&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"log4vala-0.2\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "log4vala-0.2") 2>&5
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_GDBUS_LIBS=`$PKG_CONFIG --libs "gio-2.0 >= 2.26" 2>/dev/null`
+  pkg_cv_LOG4VALA_LIBS=`$PKG_CONFIG --libs "log4vala-0.2" 2>/dev/null`
                      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
@@ -13312,45 +13985,124 @@ else
         _pkg_short_errors_supported=no
 fi
         if test $_pkg_short_errors_supported = yes; then
-               GDBUS_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gio-2.0 >= 2.26" 2>&1`
+               LOG4VALA_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "log4vala-0.2" 2>&1`
         else
-               GDBUS_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gio-2.0 >= 2.26" 2>&1`
+               LOG4VALA_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "log4vala-0.2" 2>&1`
         fi
        # Put the nasty error message in config.log where it belongs
-       echo "$GDBUS_PKG_ERRORS" >&5
+       echo "$LOG4VALA_PKG_ERRORS" >&5
+
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LOG4VALA" >&5
+$as_echo_n "checking for LOG4VALA... " >&6; }
+
+if test -n "$LOG4VALA_CFLAGS"; then
+    pkg_cv_LOG4VALA_CFLAGS="$LOG4VALA_CFLAGS"
+ elif test -n "$PKG_CONFIG"; then
+    if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"log4vala-0.1\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "log4vala-0.1") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_LOG4VALA_CFLAGS=`$PKG_CONFIG --cflags "log4vala-0.1" 2>/dev/null`
+                     test "x$?" != "x0" && pkg_failed=yes
+else
+  pkg_failed=yes
+fi
+ else
+    pkg_failed=untried
+fi
+if test -n "$LOG4VALA_LIBS"; then
+    pkg_cv_LOG4VALA_LIBS="$LOG4VALA_LIBS"
+ elif test -n "$PKG_CONFIG"; then
+    if test -n "$PKG_CONFIG" && \
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"log4vala-0.1\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "log4vala-0.1") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+  pkg_cv_LOG4VALA_LIBS=`$PKG_CONFIG --libs "log4vala-0.1" 2>/dev/null`
+                     test "x$?" != "x0" && pkg_failed=yes
+else
+  pkg_failed=yes
+fi
+ else
+    pkg_failed=untried
+fi
 
-       SERVER_IPC_MODULE="dbus-glib-1"
 
+
+if test $pkg_failed = yes; then
+       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+
+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
+        _pkg_short_errors_supported=yes
+else
+        _pkg_short_errors_supported=no
+fi
+        if test $_pkg_short_errors_supported = yes; then
+               LOG4VALA_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "log4vala-0.1" 2>&1`
+        else
+               LOG4VALA_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "log4vala-0.1" 2>&1`
+        fi
+       # Put the nasty error message in config.log where it belongs
+       echo "$LOG4VALA_PKG_ERRORS" >&5
+
+       as_fn_error $? "Package requirements (log4vala-0.1) were not met:
+
+$LOG4VALA_PKG_ERRORS
+
+Consider adjusting the PKG_CONFIG_PATH environment variable if you
+installed software in a non-standard prefix.
+
+Alternatively, you may set the environment variables LOG4VALA_CFLAGS
+and LOG4VALA_LIBS to avoid the need to call pkg-config.
+See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
-       SERVER_IPC_MODULE="dbus-glib-1"
+       { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
+is in your PATH or set the PKG_CONFIG environment variable to the full
+path to pkg-config.
 
+Alternatively, you may set the environment variables LOG4VALA_CFLAGS
+and LOG4VALA_LIBS to avoid the need to call pkg-config.
+See the pkg-config man page for more details.
+
+To get pkg-config, see <http://pkg-config.freedesktop.org/>.
+See \`config.log' for more details" "$LINENO" 5; }
 else
-       GDBUS_CFLAGS=$pkg_cv_GDBUS_CFLAGS
-       GDBUS_LIBS=$pkg_cv_GDBUS_LIBS
+       LOG4VALA_CFLAGS=$pkg_cv_LOG4VALA_CFLAGS
+       LOG4VALA_LIBS=$pkg_cv_LOG4VALA_LIBS
         { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-       SERVER_IPC_MODULE="gio-2.0"
+       LOG4VALA_VERSION="log4vala-0.1"
+
 fi
-# TODO: Move to GTK+-3
-#            [gtk+-3.0 >= 2.0],
-#            [GTK_VERSION="gtk+-3.0"]
+
+elif test $pkg_failed = untried; then
+       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GTK" >&5
-$as_echo_n "checking for GTK... " >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LOG4VALA" >&5
+$as_echo_n "checking for LOG4VALA... " >&6; }
 
-if test -n "$GTK_CFLAGS"; then
-    pkg_cv_GTK_CFLAGS="$GTK_CFLAGS"
+if test -n "$LOG4VALA_CFLAGS"; then
+    pkg_cv_LOG4VALA_CFLAGS="$LOG4VALA_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk+-2.0 >= 2.18\""; } >&5
-  ($PKG_CONFIG --exists --print-errors "gtk+-2.0 >= 2.18") 2>&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"log4vala-0.1\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "log4vala-0.1") 2>&5
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_GTK_CFLAGS=`$PKG_CONFIG --cflags "gtk+-2.0 >= 2.18" 2>/dev/null`
+  pkg_cv_LOG4VALA_CFLAGS=`$PKG_CONFIG --cflags "log4vala-0.1" 2>/dev/null`
                      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
  else
     pkg_failed=untried
 fi
-if test -n "$GTK_LIBS"; then
-    pkg_cv_GTK_LIBS="$GTK_LIBS"
+if test -n "$LOG4VALA_LIBS"; then
+    pkg_cv_LOG4VALA_LIBS="$LOG4VALA_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk+-2.0 >= 2.18\""; } >&5
-  ($PKG_CONFIG --exists --print-errors "gtk+-2.0 >= 2.18") 2>&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"log4vala-0.1\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "log4vala-0.1") 2>&5
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_GTK_LIBS=`$PKG_CONFIG --libs "gtk+-2.0 >= 2.18" 2>/dev/null`
+  pkg_cv_LOG4VALA_LIBS=`$PKG_CONFIG --libs "log4vala-0.1" 2>/dev/null`
                      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
@@ -13388,22 +14140,22 @@ else
         _pkg_short_errors_supported=no
 fi
         if test $_pkg_short_errors_supported = yes; then
-               GTK_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gtk+-2.0 >= 2.18" 2>&1`
+               LOG4VALA_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "log4vala-0.1" 2>&1`
         else
-               GTK_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gtk+-2.0 >= 2.18" 2>&1`
+               LOG4VALA_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "log4vala-0.1" 2>&1`
         fi
        # Put the nasty error message in config.log where it belongs
-       echo "$GTK_PKG_ERRORS" >&5
+       echo "$LOG4VALA_PKG_ERRORS" >&5
 
-       as_fn_error $? "Package requirements (gtk+-2.0 >= 2.18) were not met:
+       as_fn_error $? "Package requirements (log4vala-0.1) were not met:
 
-$GTK_PKG_ERRORS
+$LOG4VALA_PKG_ERRORS
 
 Consider adjusting the PKG_CONFIG_PATH environment variable if you
 installed software in a non-standard prefix.
 
-Alternatively, you may set the environment variables GTK_CFLAGS
-and GTK_LIBS to avoid the need to call pkg-config.
+Alternatively, you may set the environment variables LOG4VALA_CFLAGS
+and LOG4VALA_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
@@ -13414,35 +14166,49 @@ as_fn_error $? "The pkg-config script could not be found or is too old.  Make su
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
-Alternatively, you may set the environment variables GTK_CFLAGS
-and GTK_LIBS to avoid the need to call pkg-config.
+Alternatively, you may set the environment variables LOG4VALA_CFLAGS
+and LOG4VALA_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
 See \`config.log' for more details" "$LINENO" 5; }
 else
-       GTK_CFLAGS=$pkg_cv_GTK_CFLAGS
-       GTK_LIBS=$pkg_cv_GTK_LIBS
+       LOG4VALA_CFLAGS=$pkg_cv_LOG4VALA_CFLAGS
+       LOG4VALA_LIBS=$pkg_cv_LOG4VALA_LIBS
         { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-       GTK_VERSION="gtk+-2.0"
+       LOG4VALA_VERSION="log4vala-0.1"
 
 fi
 
+else
+       LOG4VALA_CFLAGS=$pkg_cv_LOG4VALA_CFLAGS
+       LOG4VALA_LIBS=$pkg_cv_LOG4VALA_LIBS
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+       LOG4VALA_VERSION="log4vala-0.2"
+fi
+
+fi
+
+
+# For all platforms: Use gee-0.8 if available; else revert to gee-1.0
+# (yes, gee-0.8 is an upgrade from gee-1.0!)
+
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GEE" >&5
-$as_echo_n "checking for GEE... " >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIB_GEE" >&5
+$as_echo_n "checking for LIB_GEE... " >&6; }
 
-if test -n "$GEE_CFLAGS"; then
-    pkg_cv_GEE_CFLAGS="$GEE_CFLAGS"
+if test -n "$LIB_GEE_CFLAGS"; then
+    pkg_cv_LIB_GEE_CFLAGS="$LIB_GEE_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gee-0.8 >= 0.5\""; } >&5
-  ($PKG_CONFIG --exists --print-errors "gee-0.8 >= 0.5") 2>&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gee-0.8 >= 0.10.5\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "gee-0.8 >= 0.10.5") 2>&5
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_GEE_CFLAGS=`$PKG_CONFIG --cflags "gee-0.8 >= 0.5" 2>/dev/null`
+  pkg_cv_LIB_GEE_CFLAGS=`$PKG_CONFIG --cflags "gee-0.8 >= 0.10.5" 2>/dev/null`
                      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
  else
     pkg_failed=untried
 fi
-if test -n "$GEE_LIBS"; then
-    pkg_cv_GEE_LIBS="$GEE_LIBS"
+if test -n "$LIB_GEE_LIBS"; then
+    pkg_cv_LIB_GEE_LIBS="$LIB_GEE_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gee-0.8 >= 0.5\""; } >&5
-  ($PKG_CONFIG --exists --print-errors "gee-0.8 >= 0.5") 2>&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gee-0.8 >= 0.10.5\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "gee-0.8 >= 0.10.5") 2>&5
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_GEE_LIBS=`$PKG_CONFIG --libs "gee-0.8 >= 0.5" 2>/dev/null`
+  pkg_cv_LIB_GEE_LIBS=`$PKG_CONFIG --libs "gee-0.8 >= 0.10.5" 2>/dev/null`
                      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
@@ -13480,28 +14246,28 @@ else
         _pkg_short_errors_supported=no
 fi
         if test $_pkg_short_errors_supported = yes; then
-               GEE_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gee-0.8 >= 0.5" 2>&1`
+               LIB_GEE_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gee-0.8 >= 0.10.5" 2>&1`
         else
-               GEE_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gee-0.8 >= 0.5" 2>&1`
+               LIB_GEE_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gee-0.8 >= 0.10.5" 2>&1`
         fi
        # Put the nasty error message in config.log where it belongs
-       echo "$GEE_PKG_ERRORS" >&5
+       echo "$LIB_GEE_PKG_ERRORS" >&5
 
 
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GEE" >&5
-$as_echo_n "checking for GEE... " >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIB_GEE" >&5
+$as_echo_n "checking for LIB_GEE... " >&6; }
 
-if test -n "$GEE_CFLAGS"; then
-    pkg_cv_GEE_CFLAGS="$GEE_CFLAGS"
+if test -n "$LIB_GEE_CFLAGS"; then
+    pkg_cv_LIB_GEE_CFLAGS="$LIB_GEE_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gee-1.0\""; } >&5
-  ($PKG_CONFIG --exists --print-errors "gee-1.0") 2>&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gee-1.0 >= 0.5\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "gee-1.0 >= 0.5") 2>&5
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_GEE_CFLAGS=`$PKG_CONFIG --cflags "gee-1.0" 2>/dev/null`
+  pkg_cv_LIB_GEE_CFLAGS=`$PKG_CONFIG --cflags "gee-1.0 >= 0.5" 2>/dev/null`
                      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
  else
     pkg_failed=untried
 fi
-if test -n "$GEE_LIBS"; then
-    pkg_cv_GEE_LIBS="$GEE_LIBS"
+if test -n "$LIB_GEE_LIBS"; then
+    pkg_cv_LIB_GEE_LIBS="$LIB_GEE_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gee-1.0\""; } >&5
-  ($PKG_CONFIG --exists --print-errors "gee-1.0") 2>&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gee-1.0 >= 0.5\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "gee-1.0 >= 0.5") 2>&5
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_GEE_LIBS=`$PKG_CONFIG --libs "gee-1.0" 2>/dev/null`
+  pkg_cv_LIB_GEE_LIBS=`$PKG_CONFIG --libs "gee-1.0 >= 0.5" 2>/dev/null`
                      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
@@ -13539,22 +14305,22 @@ else
         _pkg_short_errors_supported=no
 fi
         if test $_pkg_short_errors_supported = yes; then
-               GEE_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gee-1.0" 2>&1`
+               LIB_GEE_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gee-1.0 >= 0.5" 2>&1`
         else
-               GEE_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gee-1.0" 2>&1`
+               LIB_GEE_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gee-1.0 >= 0.5" 2>&1`
         fi
        # Put the nasty error message in config.log where it belongs
-       echo "$GEE_PKG_ERRORS" >&5
+       echo "$LIB_GEE_PKG_ERRORS" >&5
 
-       as_fn_error $? "Package requirements (gee-1.0) were not met:
+       as_fn_error $? "Package requirements (gee-1.0 >= 0.5) were not met:
 
-$GEE_PKG_ERRORS
+$LIB_GEE_PKG_ERRORS
 
 Consider adjusting the PKG_CONFIG_PATH environment variable if you
 installed software in a non-standard prefix.
 
-Alternatively, you may set the environment variables GEE_CFLAGS
-and GEE_LIBS to avoid the need to call pkg-config.
+Alternatively, you may set the environment variables LIB_GEE_CFLAGS
+and LIB_GEE_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
@@ -13565,37 +14331,39 @@ as_fn_error $? "The pkg-config script could not be found or is too old.  Make su
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
-Alternatively, you may set the environment variables GEE_CFLAGS
-and GEE_LIBS to avoid the need to call pkg-config.
+Alternatively, you may set the environment variables LIB_GEE_CFLAGS
+and LIB_GEE_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
 See \`config.log' for more details" "$LINENO" 5; }
 else
-       GEE_CFLAGS=$pkg_cv_GEE_CFLAGS
-       GEE_LIBS=$pkg_cv_GEE_LIBS
+       LIB_GEE_CFLAGS=$pkg_cv_LIB_GEE_CFLAGS
+       LIB_GEE_LIBS=$pkg_cv_LIB_GEE_LIBS
         { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
+       GEE_VERSION="gee-1.0"
 
 fi
+
 elif test $pkg_failed = untried; then
        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 
 pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GEE" >&5
-$as_echo_n "checking for GEE... " >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIB_GEE" >&5
+$as_echo_n "checking for LIB_GEE... " >&6; }
 
-if test -n "$GEE_CFLAGS"; then
-    pkg_cv_GEE_CFLAGS="$GEE_CFLAGS"
+if test -n "$LIB_GEE_CFLAGS"; then
+    pkg_cv_LIB_GEE_CFLAGS="$LIB_GEE_CFLAGS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gee-1.0\""; } >&5
-  ($PKG_CONFIG --exists --print-errors "gee-1.0") 2>&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gee-1.0 >= 0.5\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "gee-1.0 >= 0.5") 2>&5
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_GEE_CFLAGS=`$PKG_CONFIG --cflags "gee-1.0" 2>/dev/null`
+  pkg_cv_LIB_GEE_CFLAGS=`$PKG_CONFIG --cflags "gee-1.0 >= 0.5" 2>/dev/null`
                      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
  else
     pkg_failed=untried
 fi
-if test -n "$GEE_LIBS"; then
-    pkg_cv_GEE_LIBS="$GEE_LIBS"
+if test -n "$LIB_GEE_LIBS"; then
+    pkg_cv_LIB_GEE_LIBS="$LIB_GEE_LIBS"
  elif test -n "$PKG_CONFIG"; then
     if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gee-1.0\""; } >&5
-  ($PKG_CONFIG --exists --print-errors "gee-1.0") 2>&5
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gee-1.0 >= 0.5\""; } >&5
+  ($PKG_CONFIG --exists --print-errors "gee-1.0 >= 0.5") 2>&5
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-  pkg_cv_GEE_LIBS=`$PKG_CONFIG --libs "gee-1.0" 2>/dev/null`
+  pkg_cv_LIB_GEE_LIBS=`$PKG_CONFIG --libs "gee-1.0 >= 0.5" 2>/dev/null`
                      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
@@ -13633,22 +14401,22 @@ else
         _pkg_short_errors_supported=no
 fi
         if test $_pkg_short_errors_supported = yes; then
-               GEE_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gee-1.0" 2>&1`
+               LIB_GEE_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gee-1.0 >= 0.5" 2>&1`
         else
-               GEE_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gee-1.0" 2>&1`
+               LIB_GEE_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gee-1.0 >= 0.5" 2>&1`
         fi
        # Put the nasty error message in config.log where it belongs
-       echo "$GEE_PKG_ERRORS" >&5
+       echo "$LIB_GEE_PKG_ERRORS" >&5
 
-       as_fn_error $? "Package requirements (gee-1.0) were not met:
+       as_fn_error $? "Package requirements (gee-1.0 >= 0.5) were not met:
 
-$GEE_PKG_ERRORS
+$LIB_GEE_PKG_ERRORS
 
 Consider adjusting the PKG_CONFIG_PATH environment variable if you
 installed software in a non-standard prefix.
 
-Alternatively, you may set the environment variables GEE_CFLAGS
-and GEE_LIBS to avoid the need to call pkg-config.
+Alternatively, you may set the environment variables LIB_GEE_CFLAGS
+and LIB_GEE_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details." "$LINENO" 5
 elif test $pkg_failed = untried; then
        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
@@ -13659,37 +14427,52 @@ as_fn_error $? "The pkg-config script could not be found or is too old.  Make su
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 
-Alternatively, you may set the environment variables GEE_CFLAGS
-and GEE_LIBS to avoid the need to call pkg-config.
+Alternatively, you may set the environment variables LIB_GEE_CFLAGS
+and LIB_GEE_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
 See \`config.log' for more details" "$LINENO" 5; }
 else
-       GEE_CFLAGS=$pkg_cv_GEE_CFLAGS
-       GEE_LIBS=$pkg_cv_GEE_LIBS
+       LIB_GEE_CFLAGS=$pkg_cv_LIB_GEE_CFLAGS
+       LIB_GEE_LIBS=$pkg_cv_LIB_GEE_LIBS
         { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
+       GEE_VERSION="gee-1.0"
 
 fi
+
 else
-       GEE_CFLAGS=$pkg_cv_GEE_CFLAGS
-       GEE_LIBS=$pkg_cv_GEE_LIBS
+       LIB_GEE_CFLAGS=$pkg_cv_LIB_GEE_CFLAGS
+       LIB_GEE_LIBS=$pkg_cv_LIB_GEE_LIBS
         { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
-       gee_0_8=yes
+       GEE_VERSION="gee-0.8"
 fi
 
-    ;;
+
+#enable the optional use of Log4Vala (Must have the package installed!)
+# Check whether --enable-log4vala was given.
+if test "${enable_log4vala+set}" = set; then :
+  enableval=$enable_log4vala; case "${enableval}" in
+  yes) log4vala=true ;;
+  no)  log4vala=false ;;
+  *) as_fn_error $? "bad value ${enableval} for --enable-log4vala" "$LINENO" 5 ;;
 esac
- if test "$gee_0_8" = "yes"; then
-  GEE_0_8_TRUE=
-  GEE_0_8_FALSE='#'
 else
-  GEE_0_8_TRUE='#'
-  GEE_0_8_FALSE=
+  log4vala=false
 fi
 
+ if test x$log4vala = xtrue; then
+  LOG4VALA_TRUE=
+  LOG4VALA_FALSE='#'
+else
+  LOG4VALA_TRUE='#'
+  LOG4VALA_FALSE=
+fi
+
+
+
  if test "$linux" = "yes"; then
   OS_LINUX_TRUE=
   OS_LINUX_FALSE='#'
@@ -14362,7 +15145,9 @@ if test -n "$moonshot_CFLAGS"; then
         atk >= 1.20
         glib-2.0 >= 2.22
         gobject-2.0 >= 2.22
+        libssl
         \$GTK_VERSION
+        \$GEE_VERSION
         \$SERVER_IPC_MODULE
                \$MAC
 \""; } >&5
@@ -14370,7 +15155,9 @@ if test -n "$moonshot_CFLAGS"; then
         atk >= 1.20
         glib-2.0 >= 2.22
         gobject-2.0 >= 2.22
+        libssl
         $GTK_VERSION
+        $GEE_VERSION
         $SERVER_IPC_MODULE
                $MAC
 ") 2>&5
@@ -14381,7 +15168,9 @@ if test -n "$moonshot_CFLAGS"; then
         atk >= 1.20
         glib-2.0 >= 2.22
         gobject-2.0 >= 2.22
+        libssl
         $GTK_VERSION
+        $GEE_VERSION
         $SERVER_IPC_MODULE
                $MAC
 " 2>/dev/null`
@@ -14400,7 +15189,9 @@ if test -n "$moonshot_LIBS"; then
         atk >= 1.20
         glib-2.0 >= 2.22
         gobject-2.0 >= 2.22
+        libssl
         \$GTK_VERSION
+        \$GEE_VERSION
         \$SERVER_IPC_MODULE
                \$MAC
 \""; } >&5
@@ -14408,7 +15199,9 @@ if test -n "$moonshot_LIBS"; then
         atk >= 1.20
         glib-2.0 >= 2.22
         gobject-2.0 >= 2.22
+        libssl
         $GTK_VERSION
+        $GEE_VERSION
         $SERVER_IPC_MODULE
                $MAC
 ") 2>&5
@@ -14419,7 +15212,9 @@ if test -n "$moonshot_LIBS"; then
         atk >= 1.20
         glib-2.0 >= 2.22
         gobject-2.0 >= 2.22
+        libssl
         $GTK_VERSION
+        $GEE_VERSION
         $SERVER_IPC_MODULE
                $MAC
 " 2>/dev/null`
@@ -14447,7 +15242,9 @@ fi
         atk >= 1.20
         glib-2.0 >= 2.22
         gobject-2.0 >= 2.22
+        libssl
         $GTK_VERSION
+        $GEE_VERSION
         $SERVER_IPC_MODULE
                $MAC
 " 2>&1`
@@ -14456,7 +15253,9 @@ fi
         atk >= 1.20
         glib-2.0 >= 2.22
         gobject-2.0 >= 2.22
+        libssl
         $GTK_VERSION
+        $GEE_VERSION
         $SERVER_IPC_MODULE
                $MAC
 " 2>&1`
@@ -14468,7 +15267,9 @@ fi
         atk >= 1.20
         glib-2.0 >= 2.22
         gobject-2.0 >= 2.22
+        libssl
         $GTK_VERSION
+        $GEE_VERSION
         $SERVER_IPC_MODULE
                $MAC
 ) were not met:
@@ -16793,8 +17594,8 @@ if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
   as_fn_error $? "conditional \"am__fastdepCC\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
-if test -z "${GEE_0_8_TRUE}" && test -z "${GEE_0_8_FALSE}"; then
-  as_fn_error $? "conditional \"GEE_0_8\" was never defined.
+if test -z "${LOG4VALA_TRUE}" && test -z "${LOG4VALA_FALSE}"; then
+  as_fn_error $? "conditional \"LOG4VALA\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${OS_LINUX_TRUE}" && test -z "${OS_LINUX_FALSE}"; then
@@ -17226,7 +18027,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by Moonshot-ui $as_me 0.7.2, which was
+This file was extended by Moonshot-ui $as_me 1.0.3, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -17293,7 +18094,7 @@ _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-Moonshot-ui config.status 0.7.2
+Moonshot-ui config.status 1.0.3
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
@@ -17431,6 +18232,7 @@ enable_shared='`$ECHO "$enable_shared" | $SED "$delay_single_quote_subst"`'
 enable_static='`$ECHO "$enable_static" | $SED "$delay_single_quote_subst"`'
 pic_mode='`$ECHO "$pic_mode" | $SED "$delay_single_quote_subst"`'
 enable_fast_install='`$ECHO "$enable_fast_install" | $SED "$delay_single_quote_subst"`'
+shared_archive_member_spec='`$ECHO "$shared_archive_member_spec" | $SED "$delay_single_quote_subst"`'
 SHELL='`$ECHO "$SHELL" | $SED "$delay_single_quote_subst"`'
 ECHO='`$ECHO "$ECHO" | $SED "$delay_single_quote_subst"`'
 PATH_SEPARATOR='`$ECHO "$PATH_SEPARATOR" | $SED "$delay_single_quote_subst"`'
@@ -17478,10 +18280,13 @@ compiler='`$ECHO "$compiler" | $SED "$delay_single_quote_subst"`'
 GCC='`$ECHO "$GCC" | $SED "$delay_single_quote_subst"`'
 lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$delay_single_quote_subst"`'
 lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'
+lt_cv_sys_global_symbol_to_import='`$ECHO "$lt_cv_sys_global_symbol_to_import" | $SED "$delay_single_quote_subst"`'
 lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'
 lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`'
+lt_cv_nm_interface='`$ECHO "$lt_cv_nm_interface" | $SED "$delay_single_quote_subst"`'
 nm_file_list_spec='`$ECHO "$nm_file_list_spec" | $SED "$delay_single_quote_subst"`'
 lt_sysroot='`$ECHO "$lt_sysroot" | $SED "$delay_single_quote_subst"`'
+lt_cv_truncate_bin='`$ECHO "$lt_cv_truncate_bin" | $SED "$delay_single_quote_subst"`'
 objdir='`$ECHO "$objdir" | $SED "$delay_single_quote_subst"`'
 MAGIC_CMD='`$ECHO "$MAGIC_CMD" | $SED "$delay_single_quote_subst"`'
 lt_prog_compiler_no_builtin_flag='`$ECHO "$lt_prog_compiler_no_builtin_flag" | $SED "$delay_single_quote_subst"`'
@@ -17546,7 +18351,8 @@ finish_cmds='`$ECHO "$finish_cmds" | $SED "$delay_single_quote_subst"`'
 finish_eval='`$ECHO "$finish_eval" | $SED "$delay_single_quote_subst"`'
 hardcode_into_libs='`$ECHO "$hardcode_into_libs" | $SED "$delay_single_quote_subst"`'
 sys_lib_search_path_spec='`$ECHO "$sys_lib_search_path_spec" | $SED "$delay_single_quote_subst"`'
-sys_lib_dlsearch_path_spec='`$ECHO "$sys_lib_dlsearch_path_spec" | $SED "$delay_single_quote_subst"`'
+configure_time_dlsearch_path='`$ECHO "$configure_time_dlsearch_path" | $SED "$delay_single_quote_subst"`'
+configure_time_lt_sys_library_path='`$ECHO "$configure_time_lt_sys_library_path" | $SED "$delay_single_quote_subst"`'
 hardcode_action='`$ECHO "$hardcode_action" | $SED "$delay_single_quote_subst"`'
 enable_dlopen='`$ECHO "$enable_dlopen" | $SED "$delay_single_quote_subst"`'
 enable_dlopen_self='`$ECHO "$enable_dlopen_self" | $SED "$delay_single_quote_subst"`'
@@ -17598,9 +18404,12 @@ CFLAGS \
 compiler \
 lt_cv_sys_global_symbol_pipe \
 lt_cv_sys_global_symbol_to_cdecl \
+lt_cv_sys_global_symbol_to_import \
 lt_cv_sys_global_symbol_to_c_name_address \
 lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
+lt_cv_nm_interface \
 nm_file_list_spec \
+lt_cv_truncate_bin \
 lt_prog_compiler_no_builtin_flag \
 lt_prog_compiler_pic \
 lt_prog_compiler_wl \
@@ -17635,7 +18444,7 @@ old_striplib \
 striplib; do
     case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
     *[\\\\\\\`\\"\\\$]*)
-      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
+      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes
       ;;
     *)
       eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
@@ -17662,10 +18471,11 @@ postinstall_cmds \
 postuninstall_cmds \
 finish_cmds \
 sys_lib_search_path_spec \
-sys_lib_dlsearch_path_spec; do
+configure_time_dlsearch_path \
+configure_time_lt_sys_library_path; do
     case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
     *[\\\\\\\`\\"\\\$]*)
-      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
+      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes
       ;;
     *)
       eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
@@ -17674,19 +18484,16 @@ sys_lib_dlsearch_path_spec; do
 done
 
 ac_aux_dir='$ac_aux_dir'
-xsi_shell='$xsi_shell'
-lt_shell_append='$lt_shell_append'
 
-# See if we are running on zsh, and set the options which allow our
+# See if we are running on zsh, and set the options that allow our
 # commands through without removal of \ escapes INIT.
-if test -n "\${ZSH_VERSION+set}" ; then
+if test -n "\${ZSH_VERSION+set}"; then
    setopt NO_GLOB_SUBST
 fi
 
 
     PACKAGE='$PACKAGE'
     VERSION='$VERSION'
-    TIMESTAMP='$TIMESTAMP'
     RM='$RM'
     ofile='$ofile'
 
@@ -18407,55 +19214,52 @@ $as_echo X"$file" |
  ;;
     "libtool":C)
 
-    # See if we are running on zsh, and set the options which allow our
+    # See if we are running on zsh, and set the options that allow our
     # commands through without removal of \ escapes.
-    if test -n "${ZSH_VERSION+set}" ; then
+    if test -n "${ZSH_VERSION+set}"; then
       setopt NO_GLOB_SUBST
     fi
 
-    cfgfile="${ofile}T"
+    cfgfile=${ofile}T
     trap "$RM \"$cfgfile\"; exit 1" 1 2 15
     $RM "$cfgfile"
 
     cat <<_LT_EOF >> "$cfgfile"
 #! $SHELL
-
-# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
-# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
-# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
+# Generated automatically by $as_me ($PACKAGE) $VERSION
 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
+
+# Provide generalized library-building support services.
+# Written by Gordon Matzigkeit, 1996
+
+# Copyright (C) 2014 Free Software Foundation, Inc.
+# This is free software; see the source for copying conditions.  There is NO
+# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+# GNU Libtool is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of of the License, or
+# (at your option) any later version.
 #
-#   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
-#                 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-#                 Foundation, Inc.
-#   Written by Gordon Matzigkeit, 1996
-#
-#   This file is part of GNU Libtool.
-#
-# GNU Libtool is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License as
-# published by the Free Software Foundation; either version 2 of
-# the License, or (at your option) any later version.
-#
-# As a special exception to the GNU General Public License,
-# if you distribute this file as part of a program or library that
-# is built using GNU Libtool, you may include this file under the
-# same distribution terms that you use for the rest of that program.
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program or library that is built
+# using GNU Libtool, you may include this file under the  same
+# distribution terms that you use for the rest of that program.
 #
-# GNU Libtool is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# GNU Libtool is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 # GNU General Public License for more details.
 #
 # You should have received a copy of the GNU General Public License
-# along with GNU Libtool; see the file COPYING.  If not, a copy
-# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
-# obtained by writing to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 
 # The names of the tagged configurations supported by this script.
-available_tags=""
+available_tags=''
+
+# Configured defaults for sys_lib_dlsearch_path munging.
+: \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"}
 
 # ### BEGIN LIBTOOL CONFIG
 
@@ -18484,6 +19288,9 @@ pic_mode=$pic_mode
 # Whether or not to optimize for fast installation.
 fast_install=$enable_fast_install
 
+# Shared archive member basename,for filename based shared library versioning on AIX.
+shared_archive_member_spec=$shared_archive_member_spec
+
 # Shell to use when invoking shell scripts.
 SHELL=$lt_SHELL
 
@@ -18595,18 +19402,27 @@ global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe
 # Transform the output of nm in a proper C declaration.
 global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl
 
+# Transform the output of nm into a list of symbols to manually relocate.
+global_symbol_to_import=$lt_lt_cv_sys_global_symbol_to_import
+
 # Transform the output of nm in a C name address pair.
 global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
 
 # Transform the output of nm in a C name address pair when lib prefix is needed.
 global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
 
+# The name lister interface.
+nm_interface=$lt_lt_cv_nm_interface
+
 # Specify filename containing input files for \$NM.
 nm_file_list_spec=$lt_nm_file_list_spec
 
-# The root where to search for dependent libraries,and in which our libraries should be installed.
+# The root where to search for dependent libraries,and where our libraries should be installed.
 lt_sysroot=$lt_sysroot
 
+# Command to truncate a binary pipe.
+lt_truncate_bin=$lt_lt_cv_truncate_bin
+
 # The name of the directory that contains temporary libtool files.
 objdir=$objdir
 
@@ -18697,8 +19513,11 @@ hardcode_into_libs=$hardcode_into_libs
 # Compile-time system search path for libraries.
 sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
 
-# Run-time system search path for libraries.
-sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
+# Detected run-time system search path for libraries.
+sys_lib_dlsearch_path_spec=$lt_configure_time_dlsearch_path
+
+# Explicit LT_SYS_LIBRARY_PATH set during ./configure time.
+configure_time_lt_sys_library_path=$lt_configure_time_lt_sys_library_path
 
 # Whether dlopen is supported.
 dlopen_support=$enable_dlopen
@@ -18791,13 +19610,13 @@ hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec
 # Whether we need a single "-rpath" flag with a separated argument.
 hardcode_libdir_separator=$lt_hardcode_libdir_separator
 
-# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes
+# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes
 # DIR into the resulting binary.
 hardcode_direct=$hardcode_direct
 
-# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes
+# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes
 # DIR into the resulting binary and the resulting library dependency is
-# "absolute",i.e impossible to change by setting \${shlibpath_var} if the
+# "absolute",i.e impossible to change by setting \$shlibpath_var if the
 # library is relocated.
 hardcode_direct_absolute=$hardcode_direct_absolute
 
@@ -18849,13 +19668,72 @@ hardcode_action=$hardcode_action
 
 _LT_EOF
 
+    cat <<'_LT_EOF' >> "$cfgfile"
+
+# ### BEGIN FUNCTIONS SHARED WITH CONFIGURE
+
+# func_munge_path_list VARIABLE PATH
+# -----------------------------------
+# VARIABLE is name of variable containing _space_ separated list of
+# directories to be munged by the contents of PATH, which is string
+# having a format:
+# "DIR[:DIR]:"
+#       string "DIR[ DIR]" will be prepended to VARIABLE
+# ":DIR[:DIR]"
+#       string "DIR[ DIR]" will be appended to VARIABLE
+# "DIRP[:DIRP]::[DIRA:]DIRA"
+#       string "DIRP[ DIRP]" will be prepended to VARIABLE and string
+#       "DIRA[ DIRA]" will be appended to VARIABLE
+# "DIR[:DIR]"
+#       VARIABLE will be replaced by "DIR[ DIR]"
+func_munge_path_list ()
+{
+    case x$2 in
+    x)
+        ;;
+    *:)
+        eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\"
+        ;;
+    x:*)
+        eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\"
+        ;;
+    *::*)
+        eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\"
+        eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\"
+        ;;
+    *)
+        eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\"
+        ;;
+    esac
+}
+
+
+# Calculate cc_basename.  Skip known compiler wrappers and cross-prefix.
+func_cc_basename ()
+{
+    for cc_temp in $*""; do
+      case $cc_temp in
+        compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
+        distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
+        \-*) ;;
+        *) break;;
+      esac
+    done
+    func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
+}
+
+
+# ### END FUNCTIONS SHARED WITH CONFIGURE
+
+_LT_EOF
+
   case $host_os in
   aix3*)
     cat <<\_LT_EOF >> "$cfgfile"
 # AIX sometimes has problems with the GCC collect2 program.  For some
 # reason, if we set the COLLECT_NAMES environment variable, the problems
 # vanish in a puff of smoke.
-if test "X${COLLECT_NAMES+set}" != Xset; then
+if test set != "${COLLECT_NAMES+set}"; then
   COLLECT_NAMES=
   export COLLECT_NAMES
 fi
@@ -18864,7 +19742,7 @@ _LT_EOF
   esac
 
 
-ltmain="$ac_aux_dir/ltmain.sh"
+ltmain=$ac_aux_dir/ltmain.sh
 
 
   # We use sed instead of cat because bash on DJGPP gets confused if
@@ -18874,165 +19752,6 @@ ltmain="$ac_aux_dir/ltmain.sh"
   sed '$q' "$ltmain" >> "$cfgfile" \
      || (rm -f "$cfgfile"; exit 1)
 
-  if test x"$xsi_shell" = xyes; then
-  sed -e '/^func_dirname ()$/,/^} # func_dirname /c\
-func_dirname ()\
-{\
-\    case ${1} in\
-\      */*) func_dirname_result="${1%/*}${2}" ;;\
-\      *  ) func_dirname_result="${3}" ;;\
-\    esac\
-} # Extended-shell func_dirname implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_basename ()$/,/^} # func_basename /c\
-func_basename ()\
-{\
-\    func_basename_result="${1##*/}"\
-} # Extended-shell func_basename implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_dirname_and_basename ()$/,/^} # func_dirname_and_basename /c\
-func_dirname_and_basename ()\
-{\
-\    case ${1} in\
-\      */*) func_dirname_result="${1%/*}${2}" ;;\
-\      *  ) func_dirname_result="${3}" ;;\
-\    esac\
-\    func_basename_result="${1##*/}"\
-} # Extended-shell func_dirname_and_basename implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_stripname ()$/,/^} # func_stripname /c\
-func_stripname ()\
-{\
-\    # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are\
-\    # positional parameters, so assign one to ordinary parameter first.\
-\    func_stripname_result=${3}\
-\    func_stripname_result=${func_stripname_result#"${1}"}\
-\    func_stripname_result=${func_stripname_result%"${2}"}\
-} # Extended-shell func_stripname implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_split_long_opt ()$/,/^} # func_split_long_opt /c\
-func_split_long_opt ()\
-{\
-\    func_split_long_opt_name=${1%%=*}\
-\    func_split_long_opt_arg=${1#*=}\
-} # Extended-shell func_split_long_opt implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_split_short_opt ()$/,/^} # func_split_short_opt /c\
-func_split_short_opt ()\
-{\
-\    func_split_short_opt_arg=${1#??}\
-\    func_split_short_opt_name=${1%"$func_split_short_opt_arg"}\
-} # Extended-shell func_split_short_opt implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_lo2o ()$/,/^} # func_lo2o /c\
-func_lo2o ()\
-{\
-\    case ${1} in\
-\      *.lo) func_lo2o_result=${1%.lo}.${objext} ;;\
-\      *)    func_lo2o_result=${1} ;;\
-\    esac\
-} # Extended-shell func_lo2o implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_xform ()$/,/^} # func_xform /c\
-func_xform ()\
-{\
-    func_xform_result=${1%.*}.lo\
-} # Extended-shell func_xform implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_arith ()$/,/^} # func_arith /c\
-func_arith ()\
-{\
-    func_arith_result=$(( $* ))\
-} # Extended-shell func_arith implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_len ()$/,/^} # func_len /c\
-func_len ()\
-{\
-    func_len_result=${#1}\
-} # Extended-shell func_len implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-fi
-
-if test x"$lt_shell_append" = xyes; then
-  sed -e '/^func_append ()$/,/^} # func_append /c\
-func_append ()\
-{\
-    eval "${1}+=\\${2}"\
-} # Extended-shell func_append implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_append_quoted ()$/,/^} # func_append_quoted /c\
-func_append_quoted ()\
-{\
-\    func_quote_for_eval "${2}"\
-\    eval "${1}+=\\\\ \\$func_quote_for_eval_result"\
-} # Extended-shell func_append_quoted implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  # Save a `func_append' function call where possible by direct use of '+='
-  sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \
-    && mv -f "$cfgfile.tmp" "$cfgfile" \
-      || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-  test 0 -eq $? || _lt_function_replace_fail=:
-else
-  # Save a `func_append' function call even when '+=' is not available
-  sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \
-    && mv -f "$cfgfile.tmp" "$cfgfile" \
-      || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-  test 0 -eq $? || _lt_function_replace_fail=:
-fi
-
-if test x"$_lt_function_replace_fail" = x":"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unable to substitute extended shell functions in $ofile" >&5
-$as_echo "$as_me: WARNING: Unable to substitute extended shell functions in $ofile" >&2;}
-fi
-
-
    mv -f "$cfgfile" "$ofile" ||
     (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
   chmod +x "$ofile"
diff --git a/libmoonshot/libmoonshot.def b/libmoonshot/libmoonshot.def
deleted file mode 100644 (file)
index 98f4393..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-LIBRARY libmoonshot-0.dll
-EXPORTS
-    moonshot_error_free
-    moonshot_error_new
-    moonshot_get_default_identity
-    moonshot_get_identity
-    moonshot_confirm_ca_certificate
index d7c043f..ee80844 100644 (file)
@@ -1,8 +1,6 @@
 # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
 #
-#   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
-#                 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-#                 Foundation, Inc.
+#   Copyright (C) 1996-2001, 2003-2015 Free Software Foundation, Inc.
 #   Written by Gordon Matzigkeit, 1996
 #
 # This file is free software; the Free Software Foundation gives
 # modifications, as long as this notice is preserved.
 
 m4_define([_LT_COPYING], [dnl
-#   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
-#                 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-#                 Foundation, Inc.
-#   Written by Gordon Matzigkeit, 1996
-#
-#   This file is part of GNU Libtool.
-#
-# GNU Libtool is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License as
-# published by the Free Software Foundation; either version 2 of
-# the License, or (at your option) any later version.
+# Copyright (C) 2014 Free Software Foundation, Inc.
+# This is free software; see the source for copying conditions.  There is NO
+# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+# GNU Libtool is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of of the License, or
+# (at your option) any later version.
 #
-# As a special exception to the GNU General Public License,
-# if you distribute this file as part of a program or library that
-# is built using GNU Libtool, you may include this file under the
-# same distribution terms that you use for the rest of that program.
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program or library that is built
+# using GNU Libtool, you may include this file under the  same
+# distribution terms that you use for the rest of that program.
 #
-# GNU Libtool is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# GNU Libtool is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 # GNU General Public License for more details.
 #
 # You should have received a copy of the GNU General Public License
-# along with GNU Libtool; see the file COPYING.  If not, a copy
-# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
-# obtained by writing to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
 ])
 
-# serial 57 LT_INIT
+# serial 58 LT_INIT
 
 
 # LT_PREREQ(VERSION)
@@ -67,7 +59,7 @@ esac
 # LT_INIT([OPTIONS])
 # ------------------
 AC_DEFUN([LT_INIT],
-[AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
+[AC_PREREQ([2.62])dnl We use AC_PATH_PROGS_FEATURE_CHECK
 AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
 AC_BEFORE([$0], [LT_LANG])dnl
 AC_BEFORE([$0], [LT_OUTPUT])dnl
@@ -91,7 +83,7 @@ dnl Parse OPTIONS
 _LT_SET_OPTIONS([$0], [$1])
 
 # This can be used to rebuild libtool when needed
-LIBTOOL_DEPS="$ltmain"
+LIBTOOL_DEPS=$ltmain
 
 # Always use our own libtool.
 LIBTOOL='$(SHELL) $(top_builddir)/libtool'
@@ -111,26 +103,43 @@ dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
 dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
 
 
+# _LT_PREPARE_CC_BASENAME
+# -----------------------
+m4_defun([_LT_PREPARE_CC_BASENAME], [
+# Calculate cc_basename.  Skip known compiler wrappers and cross-prefix.
+func_cc_basename ()
+{
+    for cc_temp in @S|@*""; do
+      case $cc_temp in
+        compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
+        distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
+        \-*) ;;
+        *) break;;
+      esac
+    done
+    func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
+}
+])# _LT_PREPARE_CC_BASENAME
+
+
 # _LT_CC_BASENAME(CC)
 # -------------------
-# Calculate cc_basename.  Skip known compiler wrappers and cross-prefix.
+# It would be clearer to call AC_REQUIREs from _LT_PREPARE_CC_BASENAME,
+# but that macro is also expanded into generated libtool script, which
+# arranges for $SED and $ECHO to be set by different means.
 m4_defun([_LT_CC_BASENAME],
-[for cc_temp in $1""; do
-  case $cc_temp in
-    compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
-    distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
-    \-*) ;;
-    *) break;;
-  esac
-done
-cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
+[m4_require([_LT_PREPARE_CC_BASENAME])dnl
+AC_REQUIRE([_LT_DECL_SED])dnl
+AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
+func_cc_basename $1
+cc_basename=$func_cc_basename_result
 ])
 
 
 # _LT_FILEUTILS_DEFAULTS
 # ----------------------
 # It is okay to use these file commands and assume they have been set
-# sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'.
+# sensibly after 'm4_require([_LT_FILEUTILS_DEFAULTS])'.
 m4_defun([_LT_FILEUTILS_DEFAULTS],
 [: ${CP="cp -f"}
 : ${MV="mv -f"}
@@ -177,15 +186,16 @@ m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl
 m4_require([_LT_CMD_OLD_ARCHIVE])dnl
 m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
 m4_require([_LT_WITH_SYSROOT])dnl
+m4_require([_LT_CMD_TRUNCATE])dnl
 
 _LT_CONFIG_LIBTOOL_INIT([
-# See if we are running on zsh, and set the options which allow our
+# See if we are running on zsh, and set the options that allow our
 # commands through without removal of \ escapes INIT.
-if test -n "\${ZSH_VERSION+set}" ; then
+if test -n "\${ZSH_VERSION+set}"; then
    setopt NO_GLOB_SUBST
 fi
 ])
-if test -n "${ZSH_VERSION+set}" ; then
+if test -n "${ZSH_VERSION+set}"; then
    setopt NO_GLOB_SUBST
 fi
 
@@ -198,7 +208,7 @@ aix3*)
   # AIX sometimes has problems with the GCC collect2 program.  For some
   # reason, if we set the COLLECT_NAMES environment variable, the problems
   # vanish in a puff of smoke.
-  if test "X${COLLECT_NAMES+set}" != Xset; then
+  if test set != "${COLLECT_NAMES+set}"; then
     COLLECT_NAMES=
     export COLLECT_NAMES
   fi
@@ -209,14 +219,14 @@ esac
 ofile=libtool
 can_build_shared=yes
 
-# All known linkers require a `.a' archive for static linking (except MSVC,
+# All known linkers require a '.a' archive for static linking (except MSVC,
 # which needs '.lib').
 libext=a
 
-with_gnu_ld="$lt_cv_prog_gnu_ld"
+with_gnu_ld=$lt_cv_prog_gnu_ld
 
-old_CC="$CC"
-old_CFLAGS="$CFLAGS"
+old_CC=$CC
+old_CFLAGS=$CFLAGS
 
 # Set sane defaults for various variables
 test -z "$CC" && CC=cc
@@ -269,14 +279,14 @@ no_glob_subst='s/\*/\\\*/g'
 
 # _LT_PROG_LTMAIN
 # ---------------
-# Note that this code is called both from `configure', and `config.status'
+# Note that this code is called both from 'configure', and 'config.status'
 # now that we use AC_CONFIG_COMMANDS to generate libtool.  Notably,
-# `config.status' has no value for ac_aux_dir unless we are using Automake,
+# 'config.status' has no value for ac_aux_dir unless we are using Automake,
 # so we pass a copy along to make sure it has a sensible value anyway.
 m4_defun([_LT_PROG_LTMAIN],
 [m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
 _LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
-ltmain="$ac_aux_dir/ltmain.sh"
+ltmain=$ac_aux_dir/ltmain.sh
 ])# _LT_PROG_LTMAIN
 
 
@@ -286,7 +296,7 @@ ltmain="$ac_aux_dir/ltmain.sh"
 
 # So that we can recreate a full libtool script including additional
 # tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
-# in macros and then make a single call at the end using the `libtool'
+# in macros and then make a single call at the end using the 'libtool'
 # label.
 
 
@@ -421,8 +431,8 @@ m4_define([_lt_decl_all_varnames],
 
 # _LT_CONFIG_STATUS_DECLARE([VARNAME])
 # ------------------------------------
-# Quote a variable value, and forward it to `config.status' so that its
-# declaration there will have the same value as in `configure'.  VARNAME
+# Quote a variable value, and forward it to 'config.status' so that its
+# declaration there will have the same value as in 'configure'.  VARNAME
 # must have a single quote delimited value for this to work.
 m4_define([_LT_CONFIG_STATUS_DECLARE],
 [$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`'])
@@ -446,7 +456,7 @@ m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
 # Output comment and list of tags supported by the script
 m4_defun([_LT_LIBTOOL_TAGS],
 [_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
-available_tags="_LT_TAGS"dnl
+available_tags='_LT_TAGS'dnl
 ])
 
 
@@ -474,7 +484,7 @@ m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
 # _LT_LIBTOOL_CONFIG_VARS
 # -----------------------
 # Produce commented declarations of non-tagged libtool config variables
-# suitable for insertion in the LIBTOOL CONFIG section of the `libtool'
+# suitable for insertion in the LIBTOOL CONFIG section of the 'libtool'
 # script.  Tagged libtool config variables (even for the LIBTOOL CONFIG
 # section) are produced by _LT_LIBTOOL_TAG_VARS.
 m4_defun([_LT_LIBTOOL_CONFIG_VARS],
@@ -500,8 +510,8 @@ m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
 # Send accumulated output to $CONFIG_STATUS.  Thanks to the lists of
 # variables for single and double quote escaping we saved from calls
 # to _LT_DECL, we can put quote escaped variables declarations
-# into `config.status', and then the shell code to quote escape them in
-# for loops in `config.status'.  Finally, any additional code accumulated
+# into 'config.status', and then the shell code to quote escape them in
+# for loops in 'config.status'.  Finally, any additional code accumulated
 # from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
 m4_defun([_LT_CONFIG_COMMANDS],
 [AC_PROVIDE_IFELSE([LT_OUTPUT],
@@ -547,7 +557,7 @@ for var in lt_decl_all_varnames([[ \
 ]], lt_decl_quote_varnames); do
     case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
     *[[\\\\\\\`\\"\\\$]]*)
-      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
+      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes
       ;;
     *)
       eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
@@ -560,7 +570,7 @@ for var in lt_decl_all_varnames([[ \
 ]], lt_decl_dquote_varnames); do
     case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
     *[[\\\\\\\`\\"\\\$]]*)
-      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
+      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes
       ;;
     *)
       eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
@@ -576,7 +586,7 @@ _LT_OUTPUT_LIBTOOL_INIT
 # Generate a child script FILE with all initialization necessary to
 # reuse the environment learned by the parent script, and make the
 # file executable.  If COMMENT is supplied, it is inserted after the
-# `#!' sequence but before initialization text begins.  After this
+# '#!' sequence but before initialization text begins.  After this
 # macro, additional text can be appended to FILE to form the body of
 # the child script.  The macro ends with non-zero status if the
 # file could not be fully written (such as if the disk is full).
@@ -598,7 +608,7 @@ AS_SHELL_SANITIZE
 _AS_PREPARE
 exec AS_MESSAGE_FD>&1
 _ASEOF
-test $lt_write_fail = 0 && chmod +x $1[]dnl
+test 0 = "$lt_write_fail" && chmod +x $1[]dnl
 m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT
 
 # LT_OUTPUT
@@ -621,7 +631,7 @@ exec AS_MESSAGE_LOG_FD>>config.log
 } >&AS_MESSAGE_LOG_FD
 
 lt_cl_help="\
-\`$as_me' creates a local libtool stub from the current configuration,
+'$as_me' creates a local libtool stub from the current configuration,
 for use in further configure time tests before the real libtool is
 generated.
 
@@ -643,7 +653,7 @@ Copyright (C) 2011 Free Software Foundation, Inc.
 This config.lt script is free software; the Free Software Foundation
 gives unlimited permision to copy, distribute and modify it."
 
-while test $[#] != 0
+while test 0 != $[#]
 do
   case $[1] in
     --version | --v* | -V )
@@ -656,10 +666,10 @@ do
       lt_cl_silent=: ;;
 
     -*) AC_MSG_ERROR([unrecognized option: $[1]
-Try \`$[0] --help' for more information.]) ;;
+Try '$[0] --help' for more information.]) ;;
 
     *) AC_MSG_ERROR([unrecognized argument: $[1]
-Try \`$[0] --help' for more information.]) ;;
+Try '$[0] --help' for more information.]) ;;
   esac
   shift
 done
@@ -685,7 +695,7 @@ chmod +x "$CONFIG_LT"
 # open by configure.  Here we exec the FD to /dev/null, effectively closing
 # config.log, so it can be properly (re)opened and appended to by config.lt.
 lt_cl_success=:
-test "$silent" = yes &&
+test yes = "$silent" &&
   lt_config_lt_args="$lt_config_lt_args --quiet"
 exec AS_MESSAGE_LOG_FD>/dev/null
 $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
@@ -705,27 +715,30 @@ m4_defun([_LT_CONFIG],
 _LT_CONFIG_SAVE_COMMANDS([
   m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
   m4_if(_LT_TAG, [C], [
-    # See if we are running on zsh, and set the options which allow our
+    # See if we are running on zsh, and set the options that allow our
     # commands through without removal of \ escapes.
-    if test -n "${ZSH_VERSION+set}" ; then
+    if test -n "${ZSH_VERSION+set}"; then
       setopt NO_GLOB_SUBST
     fi
 
-    cfgfile="${ofile}T"
+    cfgfile=${ofile}T
     trap "$RM \"$cfgfile\"; exit 1" 1 2 15
     $RM "$cfgfile"
 
     cat <<_LT_EOF >> "$cfgfile"
 #! $SHELL
-
-# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
-# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
-# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
+# Generated automatically by $as_me ($PACKAGE) $VERSION
 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
-#
+
+# Provide generalized library-building support services.
+# Written by Gordon Matzigkeit, 1996
+
 _LT_COPYING
 _LT_LIBTOOL_TAGS
 
+# Configured defaults for sys_lib_dlsearch_path munging.
+: \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"}
+
 # ### BEGIN LIBTOOL CONFIG
 _LT_LIBTOOL_CONFIG_VARS
 _LT_LIBTOOL_TAG_VARS
@@ -733,13 +746,24 @@ _LT_LIBTOOL_TAG_VARS
 
 _LT_EOF
 
+    cat <<'_LT_EOF' >> "$cfgfile"
+
+# ### BEGIN FUNCTIONS SHARED WITH CONFIGURE
+
+_LT_PREPARE_MUNGE_PATH_LIST
+_LT_PREPARE_CC_BASENAME
+
+# ### END FUNCTIONS SHARED WITH CONFIGURE
+
+_LT_EOF
+
   case $host_os in
   aix3*)
     cat <<\_LT_EOF >> "$cfgfile"
 # AIX sometimes has problems with the GCC collect2 program.  For some
 # reason, if we set the COLLECT_NAMES environment variable, the problems
 # vanish in a puff of smoke.
-if test "X${COLLECT_NAMES+set}" != Xset; then
+if test set != "${COLLECT_NAMES+set}"; then
   COLLECT_NAMES=
   export COLLECT_NAMES
 fi
@@ -756,8 +780,6 @@ _LT_EOF
   sed '$q' "$ltmain" >> "$cfgfile" \
      || (rm -f "$cfgfile"; exit 1)
 
-  _LT_PROG_REPLACE_SHELLFNS
-
    mv -f "$cfgfile" "$ofile" ||
     (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
   chmod +x "$ofile"
@@ -775,7 +797,6 @@ _LT_EOF
 [m4_if([$1], [], [
     PACKAGE='$PACKAGE'
     VERSION='$VERSION'
-    TIMESTAMP='$TIMESTAMP'
     RM='$RM'
     ofile='$ofile'], [])
 ])dnl /_LT_CONFIG_SAVE_COMMANDS
@@ -974,7 +995,7 @@ m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
 
     AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
       [lt_cv_apple_cc_single_mod=no
-      if test -z "${LT_MULTI_MODULE}"; then
+      if test -z "$LT_MULTI_MODULE"; then
        # By default we will add the -single_module flag. You can override
        # by either setting the environment variable LT_MULTI_MODULE
        # non-empty at configure time, or by adding -multi_module to the
@@ -992,7 +1013,7 @@ m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
          cat conftest.err >&AS_MESSAGE_LOG_FD
        # Otherwise, if the output was created with a 0 exit code from
        # the compiler, it worked.
-       elif test -f libconftest.dylib && test $_lt_result -eq 0; then
+       elif test -f libconftest.dylib && test 0 = "$_lt_result"; then
          lt_cv_apple_cc_single_mod=yes
        else
          cat conftest.err >&AS_MESSAGE_LOG_FD
@@ -1010,7 +1031,7 @@ m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
       AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
        [lt_cv_ld_exported_symbols_list=yes],
        [lt_cv_ld_exported_symbols_list=no])
-       LDFLAGS="$save_LDFLAGS"
+       LDFLAGS=$save_LDFLAGS
     ])
 
     AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load],
@@ -1032,7 +1053,7 @@ _LT_EOF
       _lt_result=$?
       if test -s conftest.err && $GREP force_load conftest.err; then
        cat conftest.err >&AS_MESSAGE_LOG_FD
-      elif test -f conftest && test $_lt_result -eq 0 && $GREP forced_load conftest >/dev/null 2>&1 ; then
+      elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then
        lt_cv_ld_force_load=yes
       else
        cat conftest.err >&AS_MESSAGE_LOG_FD
@@ -1042,32 +1063,32 @@ _LT_EOF
     ])
     case $host_os in
     rhapsody* | darwin1.[[012]])
-      _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
+      _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;;
     darwin1.*)
-      _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+      _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
     darwin*) # darwin 5.x on
       # if running on 10.5 or later, the deployment target defaults
       # to the OS version, if on x86, and 10.4, the deployment
       # target defaults to 10.4. Don't you love it?
       case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
        10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
-         _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
-       10.[[012]]*)
-         _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+         _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
+       10.[[012]][[,.]]*)
+         _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
        10.*)
-         _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+         _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
       esac
     ;;
   esac
-    if test "$lt_cv_apple_cc_single_mod" = "yes"; then
+    if test yes = "$lt_cv_apple_cc_single_mod"; then
       _lt_dar_single_mod='$single_module'
     fi
-    if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
-      _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
+    if test yes = "$lt_cv_ld_exported_symbols_list"; then
+      _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym'
     else
-      _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
+      _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib'
     fi
-    if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then
+    if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then
       _lt_dsymutil='~$DSYMUTIL $lib || :'
     else
       _lt_dsymutil=
@@ -1087,29 +1108,29 @@ m4_defun([_LT_DARWIN_LINKER_FEATURES],
   _LT_TAGVAR(hardcode_direct, $1)=no
   _LT_TAGVAR(hardcode_automatic, $1)=yes
   _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
-  if test "$lt_cv_ld_force_load" = "yes"; then
-    _LT_TAGVAR(whole_archive_flag_spec, $1)='`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience ${wl}-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`'
+  if test yes = "$lt_cv_ld_force_load"; then
+    _LT_TAGVAR(whole_archive_flag_spec, $1)='`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience $wl-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`'
     m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes],
                   [FC],  [_LT_TAGVAR(compiler_needs_object, $1)=yes])
   else
     _LT_TAGVAR(whole_archive_flag_spec, $1)=''
   fi
   _LT_TAGVAR(link_all_deplibs, $1)=yes
-  _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
+  _LT_TAGVAR(allow_undefined_flag, $1)=$_lt_dar_allow_undefined
   case $cc_basename in
-     ifort*) _lt_dar_can_shared=yes ;;
+     ifort*|nagfor*) _lt_dar_can_shared=yes ;;
      *) _lt_dar_can_shared=$GCC ;;
   esac
-  if test "$_lt_dar_can_shared" = "yes"; then
+  if test yes = "$_lt_dar_can_shared"; then
     output_verbose_link_cmd=func_echo_all
-    _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
-    _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
-    _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
-    _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
+    _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil"
+    _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"
+    _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil"
+    _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil"
     m4_if([$1], [CXX],
-[   if test "$lt_cv_apple_cc_single_mod" != "yes"; then
-      _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
-      _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
+[   if test yes != "$lt_cv_apple_cc_single_mod"; then
+      _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dsymutil"
+      _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dar_export_syms$_lt_dsymutil"
     fi
 ],[])
   else
@@ -1129,7 +1150,7 @@ m4_defun([_LT_DARWIN_LINKER_FEATURES],
 # Allow to override them for all tags through lt_cv_aix_libpath.
 m4_defun([_LT_SYS_MODULE_PATH_AIX],
 [m4_require([_LT_DECL_SED])dnl
-if test "${lt_cv_aix_libpath+set}" = set; then
+if test set = "${lt_cv_aix_libpath+set}"; then
   aix_libpath=$lt_cv_aix_libpath
 else
   AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])],
@@ -1147,7 +1168,7 @@ else
     _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
   fi],[])
   if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
-    _LT_TAGVAR([lt_cv_aix_libpath_], [$1])="/usr/lib:/lib"
+    _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=/usr/lib:/lib
   fi
   ])
   aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])
@@ -1167,8 +1188,8 @@ m4_define([_LT_SHELL_INIT],
 # -----------------------
 # Find how we can fake an echo command that does not interpret backslash.
 # In particular, with Autoconf 2.60 or later we add some code to the start
-# of the generated configure script which will find a shell with a builtin
-# printf (which we can use as an echo command).
+# of the generated configure script that will find a shell with a builtin
+# printf (that we can use as an echo command).
 m4_defun([_LT_PROG_ECHO_BACKSLASH],
 [ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
@@ -1196,10 +1217,10 @@ fi
 # Invoke $ECHO with all args, space-separated.
 func_echo_all ()
 {
-    $ECHO "$*" 
+    $ECHO "$*"
 }
 
-case "$ECHO" in
+case $ECHO in
   printf*) AC_MSG_RESULT([printf]) ;;
   print*) AC_MSG_RESULT([print -r]) ;;
   *) AC_MSG_RESULT([cat]) ;;
@@ -1225,16 +1246,17 @@ _LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
 AC_DEFUN([_LT_WITH_SYSROOT],
 [AC_MSG_CHECKING([for sysroot])
 AC_ARG_WITH([sysroot],
-[  --with-sysroot[=DIR] Search for dependent libraries within DIR
-                        (or the compiler's sysroot if not specified).],
+[AS_HELP_STRING([--with-sysroot@<:@=DIR@:>@],
+  [Search for dependent libraries within DIR (or the compiler's sysroot
+   if not specified).])],
 [], [with_sysroot=no])
 
 dnl lt_sysroot will always be passed unquoted.  We quote it here
 dnl in case the user passed a directory name.
 lt_sysroot=
-case ${with_sysroot} in #(
+case $with_sysroot in #(
  yes)
-   if test "$GCC" = yes; then
+   if test yes = "$GCC"; then
      lt_sysroot=`$CC --print-sysroot 2>/dev/null`
    fi
    ;; #(
@@ -1244,14 +1266,14 @@ case ${with_sysroot} in #(
  no|'')
    ;; #(
  *)
-   AC_MSG_RESULT([${with_sysroot}])
+   AC_MSG_RESULT([$with_sysroot])
    AC_MSG_ERROR([The sysroot must be an absolute path.])
    ;;
 esac
 
  AC_MSG_RESULT([${lt_sysroot:-no}])
 _LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl
-[dependent libraries, and in which our libraries should be installed.])])
+[dependent libraries, and where our libraries should be installed.])])
 
 # _LT_ENABLE_LOCK
 # ---------------
@@ -1259,31 +1281,33 @@ m4_defun([_LT_ENABLE_LOCK],
 [AC_ARG_ENABLE([libtool-lock],
   [AS_HELP_STRING([--disable-libtool-lock],
     [avoid locking (might break parallel builds)])])
-test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
+test no = "$enable_libtool_lock" || enable_libtool_lock=yes
 
 # Some flags need to be propagated to the compiler or linker for good
 # libtool support.
 case $host in
 ia64-*-hpux*)
-  # Find out which ABI we are using.
+  # Find out what ABI is being produced by ac_compile, and set mode
+  # options accordingly.
   echo 'int i;' > conftest.$ac_ext
   if AC_TRY_EVAL(ac_compile); then
     case `/usr/bin/file conftest.$ac_objext` in
       *ELF-32*)
-       HPUX_IA64_MODE="32"
+       HPUX_IA64_MODE=32
        ;;
       *ELF-64*)
-       HPUX_IA64_MODE="64"
+       HPUX_IA64_MODE=64
        ;;
     esac
   fi
   rm -rf conftest*
   ;;
 *-*-irix6*)
-  # Find out which ABI we are using.
+  # Find out what ABI is being produced by ac_compile, and set linker
+  # options accordingly.
   echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
   if AC_TRY_EVAL(ac_compile); then
-    if test "$lt_cv_prog_gnu_ld" = yes; then
+    if test yes = "$lt_cv_prog_gnu_ld"; then
       case `/usr/bin/file conftest.$ac_objext` in
        *32-bit*)
          LD="${LD-ld} -melf32bsmip"
@@ -1312,9 +1336,46 @@ ia64-*-hpux*)
   rm -rf conftest*
   ;;
 
+mips64*-*linux*)
+  # Find out what ABI is being produced by ac_compile, and set linker
+  # options accordingly.
+  echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
+  if AC_TRY_EVAL(ac_compile); then
+    emul=elf
+    case `/usr/bin/file conftest.$ac_objext` in
+      *32-bit*)
+       emul="${emul}32"
+       ;;
+      *64-bit*)
+       emul="${emul}64"
+       ;;
+    esac
+    case `/usr/bin/file conftest.$ac_objext` in
+      *MSB*)
+       emul="${emul}btsmip"
+       ;;
+      *LSB*)
+       emul="${emul}ltsmip"
+       ;;
+    esac
+    case `/usr/bin/file conftest.$ac_objext` in
+      *N32*)
+       emul="${emul}n32"
+       ;;
+    esac
+    LD="${LD-ld} -m $emul"
+  fi
+  rm -rf conftest*
+  ;;
+
 x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \
 s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
-  # Find out which ABI we are using.
+  # Find out what ABI is being produced by ac_compile, and set linker
+  # options accordingly.  Note that the listed cases only cover the
+  # situations where additional linker options are needed (such as when
+  # doing 32-bit compilation for a host where ld defaults to 64-bit, or
+  # vice versa); the common cases where no linker options are needed do
+  # not appear in the list.
   echo 'int i;' > conftest.$ac_ext
   if AC_TRY_EVAL(ac_compile); then
     case `/usr/bin/file conftest.o` in
@@ -1333,10 +1394,10 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
                ;;
            esac
            ;;
-         powerpc64le-*)
+         powerpc64le-*linux*)
            LD="${LD-ld} -m elf32lppclinux"
            ;;
-         powerpc64-*)
+         powerpc64-*linux*)
            LD="${LD-ld} -m elf32ppclinux"
            ;;
          s390x-*linux*)
@@ -1355,10 +1416,10 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
          x86_64-*linux*)
            LD="${LD-ld} -m elf_x86_64"
            ;;
-         powerpcle-*)
+         powerpcle-*linux*)
            LD="${LD-ld} -m elf64lppc"
            ;;
-         powerpc-*)
+         powerpc-*linux*)
            LD="${LD-ld} -m elf64ppc"
            ;;
          s390*-*linux*|s390*-*tpf*)
@@ -1376,19 +1437,20 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
 
 *-*-sco3.2v5*)
   # On SCO OpenServer 5, we need -belf to get full-featured binaries.
-  SAVE_CFLAGS="$CFLAGS"
+  SAVE_CFLAGS=$CFLAGS
   CFLAGS="$CFLAGS -belf"
   AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
     [AC_LANG_PUSH(C)
      AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
      AC_LANG_POP])
-  if test x"$lt_cv_cc_needs_belf" != x"yes"; then
+  if test yes != "$lt_cv_cc_needs_belf"; then
     # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
-    CFLAGS="$SAVE_CFLAGS"
+    CFLAGS=$SAVE_CFLAGS
   fi
   ;;
 *-*solaris*)
-  # Find out which ABI we are using.
+  # Find out what ABI is being produced by ac_compile, and set linker
+  # options accordingly.
   echo 'int i;' > conftest.$ac_ext
   if AC_TRY_EVAL(ac_compile); then
     case `/usr/bin/file conftest.o` in
@@ -1396,7 +1458,7 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
       case $lt_cv_prog_gnu_ld in
       yes*)
         case $host in
-        i?86-*-solaris*)
+        i?86-*-solaris*|x86_64-*-solaris*)
           LD="${LD-ld} -m elf_x86_64"
           ;;
         sparc*-*-solaris*)
@@ -1405,7 +1467,7 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
         esac
         # GNU ld 2.21 introduced _sol2 emulations.  Use them if available.
         if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then
-          LD="${LD-ld}_sol2"
+          LD=${LD-ld}_sol2
         fi
         ;;
       *)
@@ -1421,7 +1483,7 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
   ;;
 esac
 
-need_locks="$enable_libtool_lock"
+need_locks=$enable_libtool_lock
 ])# _LT_ENABLE_LOCK
 
 
@@ -1440,11 +1502,11 @@ AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
      [echo conftest.$ac_objext > conftest.lst
       lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD'
       AC_TRY_EVAL([lt_ar_try])
-      if test "$ac_status" -eq 0; then
+      if test 0 -eq "$ac_status"; then
        # Ensure the archiver fails upon bogus file names.
        rm -f conftest.$ac_objext libconftest.a
        AC_TRY_EVAL([lt_ar_try])
-       if test "$ac_status" -ne 0; then
+       if test 0 -ne "$ac_status"; then
           lt_cv_ar_at_file=@
         fi
       fi
@@ -1452,7 +1514,7 @@ AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
      ])
   ])
 
-if test "x$lt_cv_ar_at_file" = xno; then
+if test no = "$lt_cv_ar_at_file"; then
   archiver_list_spec=
 else
   archiver_list_spec=$lt_cv_ar_at_file
@@ -1483,7 +1545,7 @@ old_postuninstall_cmds=
 
 if test -n "$RANLIB"; then
   case $host_os in
-  openbsd*)
+  bitrig* | openbsd*)
     old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"
     ;;
   *)
@@ -1519,7 +1581,7 @@ AC_CACHE_CHECK([$1], [$2],
   [$2=no
    m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
    echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-   lt_compiler_flag="$3"
+   lt_compiler_flag="$3"  ## exclude from sc_useless_quotes_in_assignment
    # Insert the option either (1) after the last *FLAGS variable, or
    # (2) before a word containing "conftest.", or (3) at the end.
    # Note that $ac_compile itself does not contain backslashes and begins
@@ -1546,7 +1608,7 @@ AC_CACHE_CHECK([$1], [$2],
    $RM conftest*
 ])
 
-if test x"[$]$2" = xyes; then
+if test yes = "[$]$2"; then
     m4_if([$5], , :, [$5])
 else
     m4_if([$6], , :, [$6])
@@ -1568,7 +1630,7 @@ AC_DEFUN([_LT_LINKER_OPTION],
 m4_require([_LT_DECL_SED])dnl
 AC_CACHE_CHECK([$1], [$2],
   [$2=no
-   save_LDFLAGS="$LDFLAGS"
+   save_LDFLAGS=$LDFLAGS
    LDFLAGS="$LDFLAGS $3"
    echo "$lt_simple_link_test_code" > conftest.$ac_ext
    if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
@@ -1587,10 +1649,10 @@ AC_CACHE_CHECK([$1], [$2],
      fi
    fi
    $RM -r conftest*
-   LDFLAGS="$save_LDFLAGS"
+   LDFLAGS=$save_LDFLAGS
 ])
 
-if test x"[$]$2" = xyes; then
+if test yes = "[$]$2"; then
     m4_if([$4], , :, [$4])
 else
     m4_if([$5], , :, [$5])
@@ -1611,7 +1673,7 @@ AC_DEFUN([LT_CMD_MAX_LEN],
 AC_MSG_CHECKING([the maximum length of command line arguments])
 AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
   i=0
-  teststring="ABCD"
+  teststring=ABCD
 
   case $build_os in
   msdosdjgpp*)
@@ -1651,7 +1713,7 @@ AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
     lt_cv_sys_max_cmd_len=8192;
     ;;
 
-  netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
+  bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*)
     # This has been around since 386BSD, at least.  Likely further.
     if test -x /sbin/sysctl; then
       lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
@@ -1702,22 +1764,22 @@ AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
   *)
     lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
     if test -n "$lt_cv_sys_max_cmd_len" && \
-       test undefined != "$lt_cv_sys_max_cmd_len"; then
+       test undefined != "$lt_cv_sys_max_cmd_len"; then
       lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
       lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
     else
       # Make teststring a little bigger before we do anything with it.
       # a 1K string should be a reasonable start.
-      for i in 1 2 3 4 5 6 7 8 ; do
+      for i in 1 2 3 4 5 6 7 8; do
         teststring=$teststring$teststring
       done
       SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
       # If test is not a shell built-in, we'll probably end up computing a
       # maximum length that is only half of the actual maximum length, but
       # we can't tell.
-      while { test "X"`env echo "$teststring$teststring" 2>/dev/null` \
+      while { test X`env echo "$teststring$teststring" 2>/dev/null` \
                 = "X$teststring$teststring"; } >/dev/null 2>&1 &&
-             test $i != 17 # 1/2 MB should be enough
+             test 17 != "$i" # 1/2 MB should be enough
       do
         i=`expr $i + 1`
         teststring=$teststring$teststring
@@ -1733,7 +1795,7 @@ AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
     ;;
   esac
 ])
-if test -n $lt_cv_sys_max_cmd_len ; then
+if test -n "$lt_cv_sys_max_cmd_len"; then
   AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
 else
   AC_MSG_RESULT(none)
@@ -1761,7 +1823,7 @@ m4_defun([_LT_HEADER_DLFCN],
 # ----------------------------------------------------------------
 m4_defun([_LT_TRY_DLOPEN_SELF],
 [m4_require([_LT_HEADER_DLFCN])dnl
-if test "$cross_compiling" = yes; then :
+if test yes = "$cross_compiling"; then :
   [$4]
 else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
@@ -1808,9 +1870,9 @@ else
 #  endif
 #endif
 
-/* When -fvisbility=hidden is used, assume the code has been annotated
+/* When -fvisibility=hidden is used, assume the code has been annotated
    correspondingly for the symbols needed.  */
-#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
+#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
 int fnord () __attribute__((visibility("default")));
 #endif
 
@@ -1836,7 +1898,7 @@ int main ()
   return status;
 }]
 _LT_EOF
-  if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
+  if AC_TRY_EVAL(ac_link) && test -s "conftest$ac_exeext" 2>/dev/null; then
     (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
     lt_status=$?
     case x$lt_status in
@@ -1857,7 +1919,7 @@ rm -fr conftest*
 # ------------------
 AC_DEFUN([LT_SYS_DLOPEN_SELF],
 [m4_require([_LT_HEADER_DLFCN])dnl
-if test "x$enable_dlopen" != xyes; then
+if test yes != "$enable_dlopen"; then
   enable_dlopen=unknown
   enable_dlopen_self=unknown
   enable_dlopen_self_static=unknown
@@ -1867,44 +1929,52 @@ else
 
   case $host_os in
   beos*)
-    lt_cv_dlopen="load_add_on"
+    lt_cv_dlopen=load_add_on
     lt_cv_dlopen_libs=
     lt_cv_dlopen_self=yes
     ;;
 
   mingw* | pw32* | cegcc*)
-    lt_cv_dlopen="LoadLibrary"
+    lt_cv_dlopen=LoadLibrary
     lt_cv_dlopen_libs=
     ;;
 
   cygwin*)
-    lt_cv_dlopen="dlopen"
+    lt_cv_dlopen=dlopen
     lt_cv_dlopen_libs=
     ;;
 
   darwin*)
-  # if libdl is installed we need to link against it
+    # if libdl is installed we need to link against it
     AC_CHECK_LIB([dl], [dlopen],
-               [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
-    lt_cv_dlopen="dyld"
+               [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],[
+    lt_cv_dlopen=dyld
     lt_cv_dlopen_libs=
     lt_cv_dlopen_self=yes
     ])
     ;;
 
+  tpf*)
+    # Don't try to run any link tests for TPF.  We know it's impossible
+    # because TPF is a cross-compiler, and we know how we open DSOs.
+    lt_cv_dlopen=dlopen
+    lt_cv_dlopen_libs=
+    lt_cv_dlopen_self=no
+    ;;
+
   *)
     AC_CHECK_FUNC([shl_load],
-         [lt_cv_dlopen="shl_load"],
+         [lt_cv_dlopen=shl_load],
       [AC_CHECK_LIB([dld], [shl_load],
-           [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
+           [lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld],
        [AC_CHECK_FUNC([dlopen],
-             [lt_cv_dlopen="dlopen"],
+             [lt_cv_dlopen=dlopen],
          [AC_CHECK_LIB([dl], [dlopen],
-               [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
+               [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],
            [AC_CHECK_LIB([svld], [dlopen],
-                 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
+                 [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld],
              [AC_CHECK_LIB([dld], [dld_link],
-                   [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
+                   [lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld])
              ])
            ])
          ])
@@ -1913,21 +1983,21 @@ else
     ;;
   esac
 
-  if test "x$lt_cv_dlopen" != xno; then
-    enable_dlopen=yes
-  else
+  if test no = "$lt_cv_dlopen"; then
     enable_dlopen=no
+  else
+    enable_dlopen=yes
   fi
 
   case $lt_cv_dlopen in
   dlopen)
-    save_CPPFLAGS="$CPPFLAGS"
-    test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
+    save_CPPFLAGS=$CPPFLAGS
+    test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
 
-    save_LDFLAGS="$LDFLAGS"
+    save_LDFLAGS=$LDFLAGS
     wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
 
-    save_LIBS="$LIBS"
+    save_LIBS=$LIBS
     LIBS="$lt_cv_dlopen_libs $LIBS"
 
     AC_CACHE_CHECK([whether a program can dlopen itself],
@@ -1937,7 +2007,7 @@ else
            lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
     ])
 
-    if test "x$lt_cv_dlopen_self" = xyes; then
+    if test yes = "$lt_cv_dlopen_self"; then
       wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
       AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
          lt_cv_dlopen_self_static, [dnl
@@ -1947,9 +2017,9 @@ else
       ])
     fi
 
-    CPPFLAGS="$save_CPPFLAGS"
-    LDFLAGS="$save_LDFLAGS"
-    LIBS="$save_LIBS"
+    CPPFLAGS=$save_CPPFLAGS
+    LDFLAGS=$save_LDFLAGS
+    LIBS=$save_LIBS
     ;;
   esac
 
@@ -2041,8 +2111,8 @@ m4_defun([_LT_COMPILER_FILE_LOCKS],
 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
 _LT_COMPILER_C_O([$1])
 
-hard_links="nottested"
-if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
+hard_links=nottested
+if test no = "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" && test no != "$need_locks"; then
   # do not overwrite the value of need_locks provided by the user
   AC_MSG_CHECKING([if we can lock with hard links])
   hard_links=yes
@@ -2052,8 +2122,8 @@ if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" !=
   ln conftest.a conftest.b 2>&5 || hard_links=no
   ln conftest.a conftest.b 2>/dev/null && hard_links=no
   AC_MSG_RESULT([$hard_links])
-  if test "$hard_links" = no; then
-    AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
+  if test no = "$hard_links"; then
+    AC_MSG_WARN(['$CC' does not support '-c -o', so 'make -j' may be unsafe])
     need_locks=warn
   fi
 else
@@ -2080,8 +2150,8 @@ objdir=$lt_cv_objdir
 _LT_DECL([], [objdir], [0],
          [The name of the directory that contains temporary libtool files])dnl
 m4_pattern_allow([LT_OBJDIR])dnl
-AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/",
-  [Define to the sub-directory in which libtool stores uninstalled libraries.])
+AC_DEFINE_UNQUOTED([LT_OBJDIR], "$lt_cv_objdir/",
+  [Define to the sub-directory where libtool stores uninstalled libraries.])
 ])# _LT_CHECK_OBJDIR
 
 
@@ -2093,15 +2163,15 @@ m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
 _LT_TAGVAR(hardcode_action, $1)=
 if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
    test -n "$_LT_TAGVAR(runpath_var, $1)" ||
-   test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
+   test yes = "$_LT_TAGVAR(hardcode_automatic, $1)"; then
 
   # We can hardcode non-existent directories.
-  if test "$_LT_TAGVAR(hardcode_direct, $1)" != no &&
+  if test no != "$_LT_TAGVAR(hardcode_direct, $1)" &&
      # If the only mechanism to avoid hardcoding is shlibpath_var, we
      # have to relink, otherwise we might link with an installed library
      # when we should be linking with a yet-to-be-installed one
-     ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
-     test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then
+     ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" &&
+     test no != "$_LT_TAGVAR(hardcode_minus_L, $1)"; then
     # Linking always hardcodes the temporary library directory.
     _LT_TAGVAR(hardcode_action, $1)=relink
   else
@@ -2115,12 +2185,12 @@ else
 fi
 AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
 
-if test "$_LT_TAGVAR(hardcode_action, $1)" = relink ||
-   test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then
+if test relink = "$_LT_TAGVAR(hardcode_action, $1)" ||
+   test yes = "$_LT_TAGVAR(inherit_rpath, $1)"; then
   # Fast installation is not supported
   enable_fast_install=no
-elif test "$shlibpath_overrides_runpath" = yes ||
-     test "$enable_shared" = no; then
+elif test yes = "$shlibpath_overrides_runpath" ||
+     test no = "$enable_shared"; then
   # Fast installation is not necessary
   enable_fast_install=needless
 fi
@@ -2144,7 +2214,7 @@ else
 # FIXME - insert some real tests, host_os isn't really good enough
   case $host_os in
   darwin*)
-    if test -n "$STRIP" ; then
+    if test -n "$STRIP"; then
       striplib="$STRIP -x"
       old_striplib="$STRIP -S"
       AC_MSG_RESULT([yes])
@@ -2162,6 +2232,47 @@ _LT_DECL([], [striplib], [1])
 ])# _LT_CMD_STRIPLIB
 
 
+# _LT_PREPARE_MUNGE_PATH_LIST
+# ---------------------------
+# Make sure func_munge_path_list() is defined correctly.
+m4_defun([_LT_PREPARE_MUNGE_PATH_LIST],
+[[# func_munge_path_list VARIABLE PATH
+# -----------------------------------
+# VARIABLE is name of variable containing _space_ separated list of
+# directories to be munged by the contents of PATH, which is string
+# having a format:
+# "DIR[:DIR]:"
+#       string "DIR[ DIR]" will be prepended to VARIABLE
+# ":DIR[:DIR]"
+#       string "DIR[ DIR]" will be appended to VARIABLE
+# "DIRP[:DIRP]::[DIRA:]DIRA"
+#       string "DIRP[ DIRP]" will be prepended to VARIABLE and string
+#       "DIRA[ DIRA]" will be appended to VARIABLE
+# "DIR[:DIR]"
+#       VARIABLE will be replaced by "DIR[ DIR]"
+func_munge_path_list ()
+{
+    case x@S|@2 in
+    x)
+        ;;
+    *:)
+        eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'` \@S|@@S|@1\"
+        ;;
+    x:*)
+        eval @S|@1=\"\@S|@@S|@1 `$ECHO @S|@2 | $SED 's/:/ /g'`\"
+        ;;
+    *::*)
+        eval @S|@1=\"\@S|@@S|@1\ `$ECHO @S|@2 | $SED -e 's/.*:://' -e 's/:/ /g'`\"
+        eval @S|@1=\"`$ECHO @S|@2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \@S|@@S|@1\"
+        ;;
+    *)
+        eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'`\"
+        ;;
+    esac
+}
+]])# _LT_PREPARE_PATH_LIST
+
+
 # _LT_SYS_DYNAMIC_LINKER([TAG])
 # -----------------------------
 # PORTME Fill in your ld.so characteristics
@@ -2172,17 +2283,18 @@ m4_require([_LT_FILEUTILS_DEFAULTS])dnl
 m4_require([_LT_DECL_OBJDUMP])dnl
 m4_require([_LT_DECL_SED])dnl
 m4_require([_LT_CHECK_SHELL_FEATURES])dnl
+m4_require([_LT_PREPARE_MUNGE_PATH_LIST])dnl
 AC_MSG_CHECKING([dynamic linker characteristics])
 m4_if([$1],
        [], [
-if test "$GCC" = yes; then
+if test yes = "$GCC"; then
   case $host_os in
-    darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
-    *) lt_awk_arg="/^libraries:/" ;;
+    darwin*) lt_awk_arg='/^libraries:/,/LR/' ;;
+    *) lt_awk_arg='/^libraries:/' ;;
   esac
   case $host_os in
-    mingw* | cegcc*) lt_sed_strip_eq="s,=\([[A-Za-z]]:\),\1,g" ;;
-    *) lt_sed_strip_eq="s,=/,/,g" ;;
+    mingw* | cegcc*) lt_sed_strip_eq='s|=\([[A-Za-z]]:\)|\1|g' ;;
+    *) lt_sed_strip_eq='s|=/|/|g' ;;
   esac
   lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
   case $lt_search_path_spec in
@@ -2198,28 +2310,35 @@ if test "$GCC" = yes; then
     ;;
   esac
   # Ok, now we have the path, separated by spaces, we can step through it
-  # and add multilib dir if necessary.
+  # and add multilib dir if necessary...
   lt_tmp_lt_search_path_spec=
-  lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
+  lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
+  # ...but if some path component already ends with the multilib dir we assume
+  # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer).
+  case "$lt_multi_os_dir; $lt_search_path_spec " in
+  "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*)
+    lt_multi_os_dir=
+    ;;
+  esac
   for lt_sys_path in $lt_search_path_spec; do
-    if test -d "$lt_sys_path/$lt_multi_os_dir"; then
-      lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
-    else
+    if test -d "$lt_sys_path$lt_multi_os_dir"; then
+      lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir"
+    elif test -n "$lt_multi_os_dir"; then
       test -d "$lt_sys_path" && \
        lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
     fi
   done
   lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
-BEGIN {RS=" "; FS="/|\n";} {
-  lt_foo="";
-  lt_count=0;
+BEGIN {RS = " "; FS = "/|\n";} {
+  lt_foo = "";
+  lt_count = 0;
   for (lt_i = NF; lt_i > 0; lt_i--) {
     if ($lt_i != "" && $lt_i != ".") {
       if ($lt_i == "..") {
         lt_count++;
       } else {
         if (lt_count == 0) {
-          lt_foo="/" $lt_i lt_foo;
+          lt_foo = "/" $lt_i lt_foo;
         } else {
           lt_count--;
         }
@@ -2233,7 +2352,7 @@ BEGIN {RS=" "; FS="/|\n";} {
   # for these hosts.
   case $host_os in
     mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
-      $SED 's,/\([[A-Za-z]]:\),\1,g'` ;;
+      $SED 's|/\([[A-Za-z]]:\)|\1|g'` ;;
   esac
   sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
 else
@@ -2242,7 +2361,7 @@ fi])
 library_names_spec=
 libname_spec='lib$name'
 soname_spec=
-shrext_cmds=".so"
+shrext_cmds=.so
 postinstall_cmds=
 postuninstall_cmds=
 finish_cmds=
@@ -2259,14 +2378,17 @@ hardcode_into_libs=no
 # flags to be left without arguments
 need_version=unknown
 
+AC_ARG_VAR([LT_SYS_LIBRARY_PATH],
+[User-defined run-time library search path.])
+
 case $host_os in
 aix3*)
   version_type=linux # correct to gnu/linux during the next big refactor
-  library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname.a'
   shlibpath_var=LIBPATH
 
   # AIX 3 has no versioning support, so we append a major version to the name.
-  soname_spec='${libname}${release}${shared_ext}$major'
+  soname_spec='$libname$release$shared_ext$major'
   ;;
 
 aix[[4-9]]*)
@@ -2274,41 +2396,91 @@ aix[[4-9]]*)
   need_lib_prefix=no
   need_version=no
   hardcode_into_libs=yes
-  if test "$host_cpu" = ia64; then
+  if test ia64 = "$host_cpu"; then
     # AIX 5 supports IA64
-    library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
+    library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext'
     shlibpath_var=LD_LIBRARY_PATH
   else
     # With GCC up to 2.95.x, collect2 would create an import file
     # for dependence libraries.  The import file would start with
-    # the line `#! .'.  This would cause the generated library to
-    # depend on `.', always an invalid library.  This was fixed in
+    # the line '#! .'.  This would cause the generated library to
+    # depend on '.', always an invalid library.  This was fixed in
     # development snapshots of GCC prior to 3.0.
     case $host_os in
       aix4 | aix4.[[01]] | aix4.[[01]].*)
       if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
           echo ' yes '
-          echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
+          echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then
        :
       else
        can_build_shared=no
       fi
       ;;
     esac
-    # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
+    # Using Import Files as archive members, it is possible to support
+    # filename-based versioning of shared library archives on AIX. While
+    # this would work for both with and without runtime linking, it will
+    # prevent static linking of such archives. So we do filename-based
+    # shared library versioning with .so extension only, which is used
+    # when both runtime linking and shared linking is enabled.
+    # Unfortunately, runtime linking may impact performance, so we do
+    # not want this to be the default eventually. Also, we use the
+    # versioned .so libs for executables only if there is the -brtl
+    # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only.
+    # To allow for filename-based versioning support, we need to create
+    # libNAME.so.V as an archive file, containing:
+    # *) an Import File, referring to the versioned filename of the
+    #    archive as well as the shared archive member, telling the
+    #    bitwidth (32 or 64) of that shared object, and providing the
+    #    list of exported symbols of that shared object, eventually
+    #    decorated with the 'weak' keyword
+    # *) the shared object with the F_LOADONLY flag set, to really avoid
+    #    it being seen by the linker.
+    # At run time we better use the real file rather than another symlink,
+    # but for link time we create the symlink libNAME.so -> libNAME.so.V
+
+    case $with_aix_soname,$aix_use_runtimelinking in
+    # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct
     # soname into executable. Probably we can add versioning support to
     # collect2, so additional links can be useful in future.
-    if test "$aix_use_runtimelinking" = yes; then
+    aix,yes) # traditional libtool
+      dynamic_linker='AIX unversionable lib.so'
       # If using run time linking (on AIX 4.2 or later) use lib<name>.so
       # instead of lib<name>.a to let people know that these are not
       # typical AIX shared libraries.
-      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    else
+      library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+      ;;
+    aix,no) # traditional AIX only
+      dynamic_linker='AIX lib.a[(]lib.so.V[)]'
       # We preserve .a as extension for shared libraries through AIX4.2
       # and later when we are not doing run time linking.
-      library_names_spec='${libname}${release}.a $libname.a'
-      soname_spec='${libname}${release}${shared_ext}$major'
-    fi
+      library_names_spec='$libname$release.a $libname.a'
+      soname_spec='$libname$release$shared_ext$major'
+      ;;
+    svr4,*) # full svr4 only
+      dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)]"
+      library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
+      # We do not specify a path in Import Files, so LIBPATH fires.
+      shlibpath_overrides_runpath=yes
+      ;;
+    *,yes) # both, prefer svr4
+      dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)], lib.a[(]lib.so.V[)]"
+      library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
+      # unpreferred sharedlib libNAME.a needs extra handling
+      postinstall_cmds='test -n "$linkname" || linkname="$realname"~func_stripname "" ".so" "$linkname"~$install_shared_prog "$dir/$func_stripname_result.$libext" "$destdir/$func_stripname_result.$libext"~test -z "$tstripme" || test -z "$striplib" || $striplib "$destdir/$func_stripname_result.$libext"'
+      postuninstall_cmds='for n in $library_names $old_library; do :; done~func_stripname "" ".so" "$n"~test "$func_stripname_result" = "$n" || func_append rmfiles " $odir/$func_stripname_result.$libext"'
+      # We do not specify a path in Import Files, so LIBPATH fires.
+      shlibpath_overrides_runpath=yes
+      ;;
+    *,no) # both, prefer aix
+      dynamic_linker="AIX lib.a[(]lib.so.V[)], lib.so.V[(]$shared_archive_member_spec.o[)]"
+      library_names_spec='$libname$release.a $libname.a'
+      soname_spec='$libname$release$shared_ext$major'
+      # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling
+      postinstall_cmds='test -z "$dlname" || $install_shared_prog $dir/$dlname $destdir/$dlname~test -z "$tstripme" || test -z "$striplib" || $striplib $destdir/$dlname~test -n "$linkname" || linkname=$realname~func_stripname "" ".a" "$linkname"~(cd "$destdir" && $LN_S -f $dlname $func_stripname_result.so)'
+      postuninstall_cmds='test -z "$dlname" || func_append rmfiles " $odir/$dlname"~for n in $old_library $library_names; do :; done~func_stripname "" ".a" "$n"~func_append rmfiles " $odir/$func_stripname_result.so"'
+      ;;
+    esac
     shlibpath_var=LIBPATH
   fi
   ;;
@@ -2318,18 +2490,18 @@ amigaos*)
   powerpc)
     # Since July 2007 AmigaOS4 officially supports .so libraries.
     # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
     ;;
   m68k)
     library_names_spec='$libname.ixlibrary $libname.a'
     # Create ${libname}_ixlibrary.a entries in /sys/libs.
-    finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
+    finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
     ;;
   esac
   ;;
 
 beos*)
-  library_names_spec='${libname}${shared_ext}'
+  library_names_spec='$libname$shared_ext'
   dynamic_linker="$host_os ld.so"
   shlibpath_var=LIBRARY_PATH
   ;;
@@ -2337,8 +2509,8 @@ beos*)
 bsdi[[45]]*)
   version_type=linux # correct to gnu/linux during the next big refactor
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
   shlibpath_var=LD_LIBRARY_PATH
   sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
@@ -2350,7 +2522,7 @@ bsdi[[45]]*)
 
 cygwin* | mingw* | pw32* | cegcc*)
   version_type=windows
-  shrext_cmds=".dll"
+  shrext_cmds=.dll
   need_version=no
   need_lib_prefix=no
 
@@ -2359,8 +2531,8 @@ cygwin* | mingw* | pw32* | cegcc*)
     # gcc
     library_names_spec='$libname.dll.a'
     # DLL is installed to $(libdir)/../bin by postinstall_cmds
-    postinstall_cmds='base_file=`basename \${file}`~
-      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
+    postinstall_cmds='base_file=`basename \$file`~
+      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
       dldir=$destdir/`dirname \$dlpath`~
       test -d \$dldir || mkdir -p \$dldir~
       $install_prog $dir/$dlname \$dldir/$dlname~
@@ -2376,17 +2548,17 @@ cygwin* | mingw* | pw32* | cegcc*)
     case $host_os in
     cygwin*)
       # Cygwin DLLs use 'cyg' prefix rather than 'lib'
-      soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
+      soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
 m4_if([$1], [],[
       sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])
       ;;
     mingw* | cegcc*)
       # MinGW DLLs use traditional 'lib' prefix
-      soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
+      soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
       ;;
     pw32*)
       # pw32 DLLs use 'pw' prefix rather than 'lib'
-      library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
+      library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
       ;;
     esac
     dynamic_linker='Win32 ld.exe'
@@ -2395,8 +2567,8 @@ m4_if([$1], [],[
   *,cl*)
     # Native MSVC
     libname_spec='$name'
-    soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
-    library_names_spec='${libname}.dll.lib'
+    soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
+    library_names_spec='$libname.dll.lib'
 
     case $build_os in
     mingw*)
@@ -2423,7 +2595,7 @@ m4_if([$1], [],[
       sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
       ;;
     *)
-      sys_lib_search_path_spec="$LIB"
+      sys_lib_search_path_spec=$LIB
       if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
         # It is most probably a Windows format PATH.
         sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
@@ -2436,8 +2608,8 @@ m4_if([$1], [],[
     esac
 
     # DLL is installed to $(libdir)/../bin by postinstall_cmds
-    postinstall_cmds='base_file=`basename \${file}`~
-      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
+    postinstall_cmds='base_file=`basename \$file`~
+      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
       dldir=$destdir/`dirname \$dlpath`~
       test -d \$dldir || mkdir -p \$dldir~
       $install_prog $dir/$dlname \$dldir/$dlname'
@@ -2450,7 +2622,7 @@ m4_if([$1], [],[
 
   *)
     # Assume MSVC wrapper
-    library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
+    library_names_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext $libname.lib'
     dynamic_linker='Win32 ld.exe'
     ;;
   esac
@@ -2463,8 +2635,8 @@ darwin* | rhapsody*)
   version_type=darwin
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
-  soname_spec='${libname}${release}${major}$shared_ext'
+  library_names_spec='$libname$release$major$shared_ext $libname$shared_ext'
+  soname_spec='$libname$release$major$shared_ext'
   shlibpath_overrides_runpath=yes
   shlibpath_var=DYLD_LIBRARY_PATH
   shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
@@ -2477,8 +2649,8 @@ dgux*)
   version_type=linux # correct to gnu/linux during the next big refactor
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   shlibpath_var=LD_LIBRARY_PATH
   ;;
 
@@ -2496,12 +2668,13 @@ freebsd* | dragonfly*)
   version_type=freebsd-$objformat
   case $version_type in
     freebsd-elf*)
-      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
+      library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+      soname_spec='$libname$release$shared_ext$major'
       need_version=no
       need_lib_prefix=no
       ;;
     freebsd-*)
-      library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
+      library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
       need_version=yes
       ;;
   esac
@@ -2531,10 +2704,10 @@ haiku*)
   need_lib_prefix=no
   need_version=no
   dynamic_linker="$host_os runtime_loader"
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   shlibpath_var=LIBRARY_PATH
-  shlibpath_overrides_runpath=yes
+  shlibpath_overrides_runpath=no
   sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
   hardcode_into_libs=yes
   ;;
@@ -2552,14 +2725,15 @@ hpux9* | hpux10* | hpux11*)
     dynamic_linker="$host_os dld.so"
     shlibpath_var=LD_LIBRARY_PATH
     shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
-    if test "X$HPUX_IA64_MODE" = X32; then
+    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+    soname_spec='$libname$release$shared_ext$major'
+    if test 32 = "$HPUX_IA64_MODE"; then
       sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
+      sys_lib_dlsearch_path_spec=/usr/lib/hpux32
     else
       sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
+      sys_lib_dlsearch_path_spec=/usr/lib/hpux64
     fi
-    sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
     ;;
   hppa*64*)
     shrext_cmds='.sl'
@@ -2567,8 +2741,8 @@ hpux9* | hpux10* | hpux11*)
     dynamic_linker="$host_os dld.sl"
     shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
     shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
+    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+    soname_spec='$libname$release$shared_ext$major'
     sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
     sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
     ;;
@@ -2577,8 +2751,8 @@ hpux9* | hpux10* | hpux11*)
     dynamic_linker="$host_os dld.sl"
     shlibpath_var=SHLIB_PATH
     shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
+    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+    soname_spec='$libname$release$shared_ext$major'
     ;;
   esac
   # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
@@ -2591,8 +2765,8 @@ interix[[3-9]]*)
   version_type=linux # correct to gnu/linux during the next big refactor
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=no
@@ -2603,7 +2777,7 @@ irix5* | irix6* | nonstopux*)
   case $host_os in
     nonstopux*) version_type=nonstopux ;;
     *)
-       if test "$lt_cv_prog_gnu_ld" = yes; then
+       if test yes = "$lt_cv_prog_gnu_ld"; then
                version_type=linux # correct to gnu/linux during the next big refactor
        else
                version_type=irix
@@ -2611,8 +2785,8 @@ irix5* | irix6* | nonstopux*)
   esac
   need_lib_prefix=no
   need_version=no
-  soname_spec='${libname}${release}${shared_ext}$major'
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
+  soname_spec='$libname$release$shared_ext$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext'
   case $host_os in
   irix5* | nonstopux*)
     libsuff= shlibsuff=
@@ -2631,8 +2805,8 @@ irix5* | irix6* | nonstopux*)
   esac
   shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
   shlibpath_overrides_runpath=no
-  sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
-  sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
+  sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff"
+  sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff"
   hardcode_into_libs=yes
   ;;
 
@@ -2641,13 +2815,33 @@ linux*oldld* | linux*aout* | linux*coff*)
   dynamic_linker=no
   ;;
 
+linux*android*)
+  version_type=none # Android doesn't support versioned libraries.
+  need_lib_prefix=no
+  need_version=no
+  library_names_spec='$libname$release$shared_ext'
+  soname_spec='$libname$release$shared_ext'
+  finish_cmds=
+  shlibpath_var=LD_LIBRARY_PATH
+  shlibpath_overrides_runpath=yes
+
+  # This implies no fast_install, which is unacceptable.
+  # Some rework will be needed to allow for fast_install
+  # before this can be enabled.
+  hardcode_into_libs=yes
+
+  dynamic_linker='Android linker'
+  # Don't embed -rpath directories since the linker doesn't support them.
+  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+  ;;
+
 # This must be glibc/ELF.
 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
   version_type=linux # correct to gnu/linux during the next big refactor
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=no
@@ -2672,7 +2866,12 @@ linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
   # before this can be enabled.
   hardcode_into_libs=yes
 
-  # Append ld.so.conf contents to the search path
+  # Ideally, we could use ldconfig to report *all* directores which are
+  # searched for libraries, however this is still not possible.  Aside from not
+  # being certain /sbin/ldconfig is available, command
+  # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,
+  # even though it is searched at run-time.  Try to do the best guess by
+  # appending ld.so.conf contents (and includes) to the search path.
   if test -f /etc/ld.so.conf; then
     lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[  ]*hwcap[        ]/d;s/[:,      ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
     sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
@@ -2704,12 +2903,12 @@ netbsd*)
   need_lib_prefix=no
   need_version=no
   if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
+    library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
     finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
     dynamic_linker='NetBSD (a.out) ld.so'
   else
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
+    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+    soname_spec='$libname$release$shared_ext$major'
     dynamic_linker='NetBSD ld.elf_so'
   fi
   shlibpath_var=LD_LIBRARY_PATH
@@ -2719,7 +2918,7 @@ netbsd*)
 
 newsos6)
   version_type=linux # correct to gnu/linux during the next big refactor
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=yes
   ;;
@@ -2728,58 +2927,68 @@ newsos6)
   version_type=qnx
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=no
   hardcode_into_libs=yes
   dynamic_linker='ldqnx.so'
   ;;
 
-openbsd*)
+openbsd* | bitrig*)
   version_type=sunos
-  sys_lib_dlsearch_path_spec="/usr/lib"
+  sys_lib_dlsearch_path_spec=/usr/lib
   need_lib_prefix=no
-  # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
-  case $host_os in
-    openbsd3.3 | openbsd3.3.*) need_version=yes ;;
-    *)                         need_version=no  ;;
-  esac
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
-  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
-  shlibpath_var=LD_LIBRARY_PATH
-  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-    case $host_os in
-      openbsd2.[[89]] | openbsd2.[[89]].*)
-       shlibpath_overrides_runpath=no
-       ;;
-      *)
-       shlibpath_overrides_runpath=yes
-       ;;
-      esac
+  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
+    need_version=no
   else
-    shlibpath_overrides_runpath=yes
+    need_version=yes
   fi
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
+  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
+  shlibpath_var=LD_LIBRARY_PATH
+  shlibpath_overrides_runpath=yes
   ;;
 
 os2*)
   libname_spec='$name'
-  shrext_cmds=".dll"
+  version_type=windows
+  shrext_cmds=.dll
+  need_version=no
   need_lib_prefix=no
-  library_names_spec='$libname${shared_ext} $libname.a'
+  # OS/2 can only load a DLL with a base name of 8 characters or less.
+  soname_spec='`test -n "$os2dllname" && libname="$os2dllname";
+    v=$($ECHO $release$versuffix | tr -d .-);
+    n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _);
+    $ECHO $n$v`$shared_ext'
+  library_names_spec='${libname}_dll.$libext'
   dynamic_linker='OS/2 ld.exe'
-  shlibpath_var=LIBPATH
+  shlibpath_var=BEGINLIBPATH
+  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
+  sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
+  postinstall_cmds='base_file=`basename \$file`~
+    dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~
+    dldir=$destdir/`dirname \$dlpath`~
+    test -d \$dldir || mkdir -p \$dldir~
+    $install_prog $dir/$dlname \$dldir/$dlname~
+    chmod a+x \$dldir/$dlname~
+    if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
+      eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
+    fi'
+  postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~
+    dlpath=$dir/\$dldll~
+    $RM \$dlpath'
   ;;
 
 osf3* | osf4* | osf5*)
   version_type=osf
   need_lib_prefix=no
   need_version=no
-  soname_spec='${libname}${release}${shared_ext}$major'
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+  soname_spec='$libname$release$shared_ext$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
   shlibpath_var=LD_LIBRARY_PATH
   sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
-  sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
+  sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
   ;;
 
 rdos*)
@@ -2790,8 +2999,8 @@ solaris*)
   version_type=linux # correct to gnu/linux during the next big refactor
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=yes
   hardcode_into_libs=yes
@@ -2801,11 +3010,11 @@ solaris*)
 
 sunos4*)
   version_type=sunos
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
   finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=yes
-  if test "$with_gnu_ld" = yes; then
+  if test yes = "$with_gnu_ld"; then
     need_lib_prefix=no
   fi
   need_version=yes
@@ -2813,8 +3022,8 @@ sunos4*)
 
 sysv4 | sysv4.3*)
   version_type=linux # correct to gnu/linux during the next big refactor
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   shlibpath_var=LD_LIBRARY_PATH
   case $host_vendor in
     sni)
@@ -2835,24 +3044,24 @@ sysv4 | sysv4.3*)
   ;;
 
 sysv4*MP*)
-  if test -d /usr/nec ;then
+  if test -d /usr/necthen
     version_type=linux # correct to gnu/linux during the next big refactor
-    library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
-    soname_spec='$libname${shared_ext}.$major'
+    library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext'
+    soname_spec='$libname$shared_ext.$major'
     shlibpath_var=LD_LIBRARY_PATH
   fi
   ;;
 
 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
-  version_type=freebsd-elf
+  version_type=sco
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=yes
   hardcode_into_libs=yes
-  if test "$with_gnu_ld" = yes; then
+  if test yes = "$with_gnu_ld"; then
     sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
   else
     sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
@@ -2870,7 +3079,7 @@ tpf*)
   version_type=linux # correct to gnu/linux during the next big refactor
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=no
   hardcode_into_libs=yes
@@ -2878,8 +3087,8 @@ tpf*)
 
 uts4*)
   version_type=linux # correct to gnu/linux during the next big refactor
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   shlibpath_var=LD_LIBRARY_PATH
   ;;
 
@@ -2888,20 +3097,30 @@ uts4*)
   ;;
 esac
 AC_MSG_RESULT([$dynamic_linker])
-test "$dynamic_linker" = no && can_build_shared=no
+test no = "$dynamic_linker" && can_build_shared=no
 
 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
-if test "$GCC" = yes; then
+if test yes = "$GCC"; then
   variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
 fi
 
-if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
-  sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
+if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then
+  sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec
 fi
-if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
-  sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
+
+if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then
+  sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec
 fi
 
+# remember unaugmented sys_lib_dlsearch_path content for libtool script decls...
+configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec
+
+# ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code
+func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH"
+
+# to be used as default LT_SYS_LIBRARY_PATH value in generated libtool
+configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH
+
 _LT_DECL([], [variables_saved_for_relink], [1],
     [Variables whose values should be saved in libtool wrapper scripts and
     restored at link time])
@@ -2934,39 +3153,41 @@ _LT_DECL([], [hardcode_into_libs], [0],
     [Whether we should hardcode library paths into libraries])
 _LT_DECL([], [sys_lib_search_path_spec], [2],
     [Compile-time system search path for libraries])
-_LT_DECL([], [sys_lib_dlsearch_path_spec], [2],
-    [Run-time system search path for libraries])
+_LT_DECL([sys_lib_dlsearch_path_spec], [configure_time_dlsearch_path], [2],
+    [Detected run-time system search path for libraries])
+_LT_DECL([], [configure_time_lt_sys_library_path], [2],
+    [Explicit LT_SYS_LIBRARY_PATH set during ./configure time])
 ])# _LT_SYS_DYNAMIC_LINKER
 
 
 # _LT_PATH_TOOL_PREFIX(TOOL)
 # --------------------------
-# find a file program which can recognize shared library
+# find a file program that can recognize shared library
 AC_DEFUN([_LT_PATH_TOOL_PREFIX],
 [m4_require([_LT_DECL_EGREP])dnl
 AC_MSG_CHECKING([for $1])
 AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
 [case $MAGIC_CMD in
 [[\\/*] |  ?:[\\/]*])
-  lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
+  lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.
   ;;
 *)
-  lt_save_MAGIC_CMD="$MAGIC_CMD"
-  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+  lt_save_MAGIC_CMD=$MAGIC_CMD
+  lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
 dnl $ac_dummy forces splitting on constant user-supplied paths.
 dnl POSIX.2 word splitting is done only on the output of word expansions,
 dnl not every word.  This closes a longstanding sh security hole.
   ac_dummy="m4_if([$2], , $PATH, [$2])"
   for ac_dir in $ac_dummy; do
-    IFS="$lt_save_ifs"
+    IFS=$lt_save_ifs
     test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$1; then
-      lt_cv_path_MAGIC_CMD="$ac_dir/$1"
+    if test -f "$ac_dir/$1"; then
+      lt_cv_path_MAGIC_CMD=$ac_dir/"$1"
       if test -n "$file_magic_test_file"; then
        case $deplibs_check_method in
        "file_magic "*)
          file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
-         MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+         MAGIC_CMD=$lt_cv_path_MAGIC_CMD
          if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
            $EGREP "$file_magic_regex" > /dev/null; then
            :
@@ -2989,11 +3210,11 @@ _LT_EOF
       break
     fi
   done
-  IFS="$lt_save_ifs"
-  MAGIC_CMD="$lt_save_MAGIC_CMD"
+  IFS=$lt_save_ifs
+  MAGIC_CMD=$lt_save_MAGIC_CMD
   ;;
 esac])
-MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+MAGIC_CMD=$lt_cv_path_MAGIC_CMD
 if test -n "$MAGIC_CMD"; then
   AC_MSG_RESULT($MAGIC_CMD)
 else
@@ -3011,7 +3232,7 @@ dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
 
 # _LT_PATH_MAGIC
 # --------------
-# find a file program which can recognize a shared library
+# find a file program that can recognize a shared library
 m4_defun([_LT_PATH_MAGIC],
 [_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
 if test -z "$lt_cv_path_MAGIC_CMD"; then
@@ -3038,16 +3259,16 @@ m4_require([_LT_PROG_ECHO_BACKSLASH])dnl
 AC_ARG_WITH([gnu-ld],
     [AS_HELP_STRING([--with-gnu-ld],
        [assume the C compiler uses GNU ld @<:@default=no@:>@])],
-    [test "$withval" = no || with_gnu_ld=yes],
+    [test no = "$withval" || with_gnu_ld=yes],
     [with_gnu_ld=no])dnl
 
 ac_prog=ld
-if test "$GCC" = yes; then
+if test yes = "$GCC"; then
   # Check if gcc -print-prog-name=ld gives a path.
   AC_MSG_CHECKING([for ld used by $CC])
   case $host in
   *-*-mingw*)
-    # gcc leaves a trailing carriage return which upsets mingw
+    # gcc leaves a trailing carriage return, which upsets mingw
     ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
   *)
     ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
@@ -3061,7 +3282,7 @@ if test "$GCC" = yes; then
       while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
        ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
       done
-      test -z "$LD" && LD="$ac_prog"
+      test -z "$LD" && LD=$ac_prog
       ;;
   "")
     # If it fails, then pretend we aren't using GCC.
@@ -3072,37 +3293,37 @@ if test "$GCC" = yes; then
     with_gnu_ld=unknown
     ;;
   esac
-elif test "$with_gnu_ld" = yes; then
+elif test yes = "$with_gnu_ld"; then
   AC_MSG_CHECKING([for GNU ld])
 else
   AC_MSG_CHECKING([for non-GNU ld])
 fi
 AC_CACHE_VAL(lt_cv_path_LD,
 [if test -z "$LD"; then
-  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+  lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
   for ac_dir in $PATH; do
-    IFS="$lt_save_ifs"
+    IFS=$lt_save_ifs
     test -z "$ac_dir" && ac_dir=.
     if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
-      lt_cv_path_LD="$ac_dir/$ac_prog"
+      lt_cv_path_LD=$ac_dir/$ac_prog
       # Check to see if the program is GNU ld.  I'd rather use --version,
       # but apparently some variants of GNU ld only accept -v.
       # Break only if it was the GNU/non-GNU ld that we prefer.
       case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
       *GNU* | *'with BFD'*)
-       test "$with_gnu_ld" != no && break
+       test no != "$with_gnu_ld" && break
        ;;
       *)
-       test "$with_gnu_ld" != yes && break
+       test yes != "$with_gnu_ld" && break
        ;;
       esac
     fi
   done
-  IFS="$lt_save_ifs"
+  IFS=$lt_save_ifs
 else
-  lt_cv_path_LD="$LD" # Let the user override the test with a path.
+  lt_cv_path_LD=$LD # Let the user override the test with a path.
 fi])
-LD="$lt_cv_path_LD"
+LD=$lt_cv_path_LD
 if test -n "$LD"; then
   AC_MSG_RESULT($LD)
 else
@@ -3156,13 +3377,13 @@ esac
 reload_cmds='$LD$reload_flag -o $output$reload_objs'
 case $host_os in
   cygwin* | mingw* | pw32* | cegcc*)
-    if test "$GCC" != yes; then
+    if test yes != "$GCC"; then
       reload_cmds=false
     fi
     ;;
   darwin*)
-    if test "$GCC" = yes; then
-      reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
+    if test yes = "$GCC"; then
+      reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs'
     else
       reload_cmds='$LD$reload_flag -o $output$reload_objs'
     fi
@@ -3173,6 +3394,43 @@ _LT_TAGDECL([], [reload_cmds], [2])dnl
 ])# _LT_CMD_RELOAD
 
 
+# _LT_PATH_DD
+# -----------
+# find a working dd
+m4_defun([_LT_PATH_DD],
+[AC_CACHE_CHECK([for a working dd], [ac_cv_path_lt_DD],
+[printf 0123456789abcdef0123456789abcdef >conftest.i
+cat conftest.i conftest.i >conftest2.i
+: ${lt_DD:=$DD}
+AC_PATH_PROGS_FEATURE_CHECK([lt_DD], [dd],
+[if "$ac_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
+  cmp -s conftest.i conftest.out \
+  && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=:
+fi])
+rm -f conftest.i conftest2.i conftest.out])
+])# _LT_PATH_DD
+
+
+# _LT_CMD_TRUNCATE
+# ----------------
+# find command to truncate a binary pipe
+m4_defun([_LT_CMD_TRUNCATE],
+[m4_require([_LT_PATH_DD])
+AC_CACHE_CHECK([how to truncate binary pipes], [lt_cv_truncate_bin],
+[printf 0123456789abcdef0123456789abcdef >conftest.i
+cat conftest.i conftest.i >conftest2.i
+lt_cv_truncate_bin=
+if "$ac_cv_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
+  cmp -s conftest.i conftest.out \
+  && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1"
+fi
+rm -f conftest.i conftest2.i conftest.out
+test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"])
+_LT_DECL([lt_truncate_bin], [lt_cv_truncate_bin], [1],
+  [Command to truncate a binary pipe])
+])# _LT_CMD_TRUNCATE
+
+
 # _LT_CHECK_MAGIC_METHOD
 # ----------------------
 # how to check for library dependencies
@@ -3188,13 +3446,13 @@ lt_cv_deplibs_check_method='unknown'
 # Need to set the preceding variable on all platforms that support
 # interlibrary dependencies.
 # 'none' -- dependencies not supported.
-# `unknown' -- same as none, but documents that we really don't know.
+# 'unknown' -- same as none, but documents that we really don't know.
 # 'pass_all' -- all dependencies passed with no checks.
 # 'test_compile' -- check by making test program.
 # 'file_magic [[regex]]' -- check by looking for files in library path
-# which responds to the $file_magic_cmd with a given extended regex.
-# If you have `file' or equivalent on your system and you're not sure
-# whether `pass_all' will *always* work, you probably want this one.
+# that responds to the $file_magic_cmd with a given extended regex.
+# If you have 'file' or equivalent on your system and you're not sure
+# whether 'pass_all' will *always* work, you probably want this one.
 
 case $host_os in
 aix[[4-9]]*)
@@ -3221,8 +3479,7 @@ mingw* | pw32*)
   # Base MSYS/MinGW do not provide the 'file' command needed by
   # func_win32_libid shell function, so use a weaker test based on 'objdump',
   # unless we find 'file', for example because we are cross-compiling.
-  # func_win32_libid assumes BSD nm, so disallow it if using MS dumpbin.
-  if ( test "$lt_cv_nm_interface" = "BSD nm" && file / ) >/dev/null 2>&1; then
+  if ( file / ) >/dev/null 2>&1; then
     lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
     lt_cv_file_magic_cmd='func_win32_libid'
   else
@@ -3318,8 +3575,8 @@ newos6*)
   lt_cv_deplibs_check_method=pass_all
   ;;
 
-openbsd*)
-  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+openbsd* | bitrig*)
+  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
     lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
   else
     lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
@@ -3372,6 +3629,9 @@ sysv4 | sysv4.3*)
 tpf*)
   lt_cv_deplibs_check_method=pass_all
   ;;
+os2*)
+  lt_cv_deplibs_check_method=pass_all
+  ;;
 esac
 ])
 
@@ -3412,33 +3672,38 @@ AC_DEFUN([LT_PATH_NM],
 AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
 [if test -n "$NM"; then
   # Let the user override the test.
-  lt_cv_path_NM="$NM"
+  lt_cv_path_NM=$NM
 else
-  lt_nm_to_check="${ac_tool_prefix}nm"
+  lt_nm_to_check=${ac_tool_prefix}nm
   if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
     lt_nm_to_check="$lt_nm_to_check nm"
   fi
   for lt_tmp_nm in $lt_nm_to_check; do
-    lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+    lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
     for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
-      IFS="$lt_save_ifs"
+      IFS=$lt_save_ifs
       test -z "$ac_dir" && ac_dir=.
-      tmp_nm="$ac_dir/$lt_tmp_nm"
-      if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
+      tmp_nm=$ac_dir/$lt_tmp_nm
+      if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then
        # Check to see if the nm accepts a BSD-compat flag.
-       # Adding the `sed 1q' prevents false positives on HP-UX, which says:
+       # Adding the 'sed 1q' prevents false positives on HP-UX, which says:
        #   nm: unknown option "B" ignored
        # Tru64's nm complains that /dev/null is an invalid object file
-       case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
-       */dev/null* | *'Invalid file or object type'*)
+       # MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty
+       case $build_os in
+       mingw*) lt_bad_file=conftest.nm/nofile ;;
+       *) lt_bad_file=/dev/null ;;
+       esac
+       case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in
+       *$lt_bad_file* | *'Invalid file or object type'*)
          lt_cv_path_NM="$tmp_nm -B"
-         break
+         break 2
          ;;
        *)
          case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
          */dev/null*)
            lt_cv_path_NM="$tmp_nm -p"
-           break
+           break 2
            ;;
          *)
            lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
@@ -3449,21 +3714,21 @@ else
        esac
       fi
     done
-    IFS="$lt_save_ifs"
+    IFS=$lt_save_ifs
   done
   : ${lt_cv_path_NM=no}
 fi])
-if test "$lt_cv_path_NM" != "no"; then
-  NM="$lt_cv_path_NM"
+if test no != "$lt_cv_path_NM"; then
+  NM=$lt_cv_path_NM
 else
   # Didn't find any BSD compatible name lister, look for dumpbin.
   if test -n "$DUMPBIN"; then :
     # Let the user override the test.
   else
     AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :)
-    case `$DUMPBIN -symbols /dev/null 2>&1 | sed '1q'` in
+    case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in
     *COFF*)
-      DUMPBIN="$DUMPBIN -symbols"
+      DUMPBIN="$DUMPBIN -symbols -headers"
       ;;
     *)
       DUMPBIN=:
@@ -3471,8 +3736,8 @@ else
     esac
   fi
   AC_SUBST([DUMPBIN])
-  if test "$DUMPBIN" != ":"; then
-    NM="$DUMPBIN"
+  if test : != "$DUMPBIN"; then
+    NM=$DUMPBIN
   fi
 fi
 test -z "$NM" && NM=nm
@@ -3518,8 +3783,8 @@ lt_cv_sharedlib_from_linklib_cmd,
 
 case $host_os in
 cygwin* | mingw* | pw32* | cegcc*)
-  # two different shell functions defined in ltmain.sh
-  # decide which to use based on capabilities of $DLLTOOL
+  # two different shell functions defined in ltmain.sh;
+  # decide which one to use based on capabilities of $DLLTOOL
   case `$DLLTOOL --help 2>&1` in
   *--identify-strict*)
     lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
@@ -3531,7 +3796,7 @@ cygwin* | mingw* | pw32* | cegcc*)
   ;;
 *)
   # fallback: assume linklib IS sharedlib
-  lt_cv_sharedlib_from_linklib_cmd="$ECHO"
+  lt_cv_sharedlib_from_linklib_cmd=$ECHO
   ;;
 esac
 ])
@@ -3558,13 +3823,28 @@ AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool
     lt_cv_path_mainfest_tool=yes
   fi
   rm -f conftest*])
-if test "x$lt_cv_path_mainfest_tool" != xyes; then
+if test yes != "$lt_cv_path_mainfest_tool"; then
   MANIFEST_TOOL=:
 fi
 _LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl
 ])# _LT_PATH_MANIFEST_TOOL
 
 
+# _LT_DLL_DEF_P([FILE])
+# ---------------------
+# True iff FILE is a Windows DLL '.def' file.
+# Keep in sync with func_dll_def_p in the libtool script
+AC_DEFUN([_LT_DLL_DEF_P],
+[dnl
+  test DEF = "`$SED -n dnl
+    -e '\''s/^[[        ]]*//'\'' dnl Strip leading whitespace
+    -e '\''/^\(;.*\)*$/d'\'' dnl      Delete empty lines and comments
+    -e '\''s/^\(EXPORTS\|LIBRARY\)\([[  ]].*\)*$/DEF/p'\'' dnl
+    -e q dnl                          Only consider the first "real" line
+    $1`" dnl
+])# _LT_DLL_DEF_P
+
+
 # LT_LIB_M
 # --------
 # check for math library
@@ -3576,11 +3856,11 @@ case $host in
   # These system don't have libm, or don't need it
   ;;
 *-ncr-sysv4.3*)
-  AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
+  AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM=-lmw)
   AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
   ;;
 *)
-  AC_CHECK_LIB(m, cos, LIBM="-lm")
+  AC_CHECK_LIB(m, cos, LIBM=-lm)
   ;;
 esac
 AC_SUBST([LIBM])
@@ -3599,7 +3879,7 @@ m4_defun([_LT_COMPILER_NO_RTTI],
 
 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
 
-if test "$GCC" = yes; then
+if test yes = "$GCC"; then
   case $cc_basename in
   nvcc*)
     _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;;
@@ -3651,7 +3931,7 @@ cygwin* | mingw* | pw32* | cegcc*)
   symcode='[[ABCDGISTW]]'
   ;;
 hpux*)
-  if test "$host_cpu" = ia64; then
+  if test ia64 = "$host_cpu"; then
     symcode='[[ABCDEGRST]]'
   fi
   ;;
@@ -3684,14 +3964,44 @@ case `$NM -V 2>&1` in
   symcode='[[ABCDGIRSTW]]' ;;
 esac
 
+if test "$lt_cv_nm_interface" = "MS dumpbin"; then
+  # Gets list of data symbols to import.
+  lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'"
+  # Adjust the below global symbol transforms to fixup imported variables.
+  lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'"
+  lt_c_name_hook=" -e 's/^I .* \(.*\)$/  {\"\1\", (void *) 0},/p'"
+  lt_c_name_lib_hook="\
+  -e 's/^I .* \(lib.*\)$/  {\"\1\", (void *) 0},/p'\
+  -e 's/^I .* \(.*\)$/  {\"lib\1\", (void *) 0},/p'"
+else
+  # Disable hooks by default.
+  lt_cv_sys_global_symbol_to_import=
+  lt_cdecl_hook=
+  lt_c_name_hook=
+  lt_c_name_lib_hook=
+fi
+
 # Transform an extracted symbol line into a proper C declaration.
 # Some systems (esp. on ia64) link data and code symbols differently,
 # so use this general approach.
-lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
+lt_cv_sys_global_symbol_to_cdecl="sed -n"\
+$lt_cdecl_hook\
+" -e 's/^T .* \(.*\)$/extern int \1();/p'"\
+" -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'"
 
 # Transform an extracted symbol line into symbol name and symbol address
-lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/  {\"\2\", (void *) \&\2},/p'"
-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \(lib[[^ ]]*\)$/  {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/  {\"lib\2\", (void *) \&\2},/p'"
+lt_cv_sys_global_symbol_to_c_name_address="sed -n"\
+$lt_c_name_hook\
+" -e 's/^: \(.*\) .*$/  {\"\1\", (void *) 0},/p'"\
+" -e 's/^$symcode$symcode* .* \(.*\)$/  {\"\1\", (void *) \&\1},/p'"
+
+# Transform an extracted symbol line into symbol name with lib prefix and
+# symbol address.
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\
+$lt_c_name_lib_hook\
+" -e 's/^: \(.*\) .*$/  {\"\1\", (void *) 0},/p'"\
+" -e 's/^$symcode$symcode* .* \(lib.*\)$/  {\"\1\", (void *) \&\1},/p'"\
+" -e 's/^$symcode$symcode* .* \(.*\)$/  {\"lib\1\", (void *) \&\1},/p'"
 
 # Handle CRLF in mingw tool chain
 opt_cr=
@@ -3709,21 +4019,24 @@ for ac_symprfx in "" "_"; do
 
   # Write the raw and C identifiers.
   if test "$lt_cv_nm_interface" = "MS dumpbin"; then
-    # Fake it for dumpbin and say T for any non-static function
-    # and D for any global variable.
+    # Fake it for dumpbin and say T for any non-static function,
+    # D for any global variable and I for any imported variable.
     # Also find C++ and __fastcall symbols from MSVC++,
     # which start with @ or ?.
     lt_cv_sys_global_symbol_pipe="$AWK ['"\
 "     {last_section=section; section=\$ 3};"\
 "     /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\
 "     /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
+"     /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\
+"     /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\
+"     /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\
 "     \$ 0!~/External *\|/{next};"\
 "     / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
 "     {if(hide[section]) next};"\
-"     {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
-"     {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
-"     s[1]~/^[@?]/{print s[1], s[1]; next};"\
-"     s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
+"     {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\
+"     {split(\$ 0,a,/\||\r/); split(a[2],s)};"\
+"     s[1]~/^[@?]/{print f,s[1],s[1]; next};"\
+"     s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\
 "     ' prfx=^$ac_symprfx]"
   else
     lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[    ]]\($symcode$symcode*\)[[       ]][[    ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
@@ -3763,11 +4076,11 @@ _LT_EOF
        if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
          cat <<_LT_EOF > conftest.$ac_ext
 /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests.  */
-#if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE)
-/* DATA imports from DLLs on WIN32 con't be const, because runtime
+#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE
+/* DATA imports from DLLs on WIN32 can't be const, because runtime
    relocations are performed -- see ld's documentation on pseudo-relocs.  */
 # define LT@&t@_DLSYM_CONST
-#elif defined(__osf__)
+#elif defined __osf__
 /* This system does not cope well with relocations in const data.  */
 # define LT@&t@_DLSYM_CONST
 #else
@@ -3793,7 +4106,7 @@ lt__PROGRAM__LTX_preloaded_symbols[[]] =
 {
   { "@PROGRAM@", (void *) 0 },
 _LT_EOF
-         $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/  {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
+         $SED "s/^$symcode$symcode* .* \(.*\)$/  {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
          cat <<\_LT_EOF >> conftest.$ac_ext
   {0, (void *) 0}
 };
@@ -3813,9 +4126,9 @@ _LT_EOF
          mv conftest.$ac_objext conftstm.$ac_objext
          lt_globsym_save_LIBS=$LIBS
          lt_globsym_save_CFLAGS=$CFLAGS
-         LIBS="conftstm.$ac_objext"
+         LIBS=conftstm.$ac_objext
          CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
-         if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then
+         if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then
            pipe_works=yes
          fi
          LIBS=$lt_globsym_save_LIBS
@@ -3836,7 +4149,7 @@ _LT_EOF
   rm -rf conftest* conftst*
 
   # Do not use the global_symbol_pipe unless it works.
-  if test "$pipe_works" = yes; then
+  if test yes = "$pipe_works"; then
     break
   else
     lt_cv_sys_global_symbol_pipe=
@@ -3863,12 +4176,16 @@ _LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
     [Take the output of nm and produce a listing of raw symbols and C names])
 _LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
     [Transform the output of nm in a proper C declaration])
+_LT_DECL([global_symbol_to_import], [lt_cv_sys_global_symbol_to_import], [1],
+    [Transform the output of nm into a list of symbols to manually relocate])
 _LT_DECL([global_symbol_to_c_name_address],
     [lt_cv_sys_global_symbol_to_c_name_address], [1],
     [Transform the output of nm in a C name address pair])
 _LT_DECL([global_symbol_to_c_name_address_lib_prefix],
     [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
     [Transform the output of nm in a C name address pair when lib prefix is needed])
+_LT_DECL([nm_interface], [lt_cv_nm_interface], [1],
+    [The name lister interface])
 _LT_DECL([], [nm_file_list_spec], [1],
     [Specify filename containing input files for $NM])
 ]) # _LT_CMD_GLOBAL_SYMBOLS
@@ -3884,17 +4201,18 @@ _LT_TAGVAR(lt_prog_compiler_static, $1)=
 
 m4_if([$1], [CXX], [
   # C++ specific cases for pic, static, wl, etc.
-  if test "$GXX" = yes; then
+  if test yes = "$GXX"; then
     _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
     _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
 
     case $host_os in
     aix*)
       # All AIX code is PIC.
-      if test "$host_cpu" = ia64; then
+      if test ia64 = "$host_cpu"; then
        # AIX 5 now supports IA64 processor
        _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
       fi
+      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
       ;;
 
     amigaos*)
@@ -3905,8 +4223,8 @@ m4_if([$1], [CXX], [
         ;;
       m68k)
             # FIXME: we need at least 68020 code to build shared libraries, but
-            # adding the `-m68020' flag to GCC prevents building anything better,
-            # like `-m68040'.
+            # adding the '-m68020' flag to GCC prevents building anything better,
+            # like '-m68040'.
             _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
         ;;
       esac
@@ -3922,6 +4240,11 @@ m4_if([$1], [CXX], [
       # (--disable-auto-import) libraries
       m4_if([$1], [GCJ], [],
        [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
+      case $host_os in
+      os2*)
+       _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
+       ;;
+      esac
       ;;
     darwin* | rhapsody*)
       # PIC is the default on this platform
@@ -3971,7 +4294,7 @@ m4_if([$1], [CXX], [
     case $host_os in
       aix[[4-9]]*)
        # All AIX code is PIC.
-       if test "$host_cpu" = ia64; then
+       if test ia64 = "$host_cpu"; then
          # AIX 5 now supports IA64 processor
          _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
        else
@@ -4012,14 +4335,14 @@ m4_if([$1], [CXX], [
        case $cc_basename in
          CC*)
            _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-           _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
-           if test "$host_cpu" != ia64; then
+           _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
+           if test ia64 != "$host_cpu"; then
              _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
            fi
            ;;
          aCC*)
            _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-           _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
+           _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
            case $host_cpu in
            hppa*64*|ia64*)
              # +Z the default
@@ -4056,7 +4379,7 @@ m4_if([$1], [CXX], [
            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
            ;;
          ecpc* )
-           # old Intel C++ for x86_64 which still supported -KPIC.
+           # old Intel C++ for x86_64, which still supported -KPIC.
            _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
            _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
@@ -4201,17 +4524,18 @@ m4_if([$1], [CXX], [
   fi
 ],
 [
-  if test "$GCC" = yes; then
+  if test yes = "$GCC"; then
     _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
     _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
 
     case $host_os in
       aix*)
       # All AIX code is PIC.
-      if test "$host_cpu" = ia64; then
+      if test ia64 = "$host_cpu"; then
        # AIX 5 now supports IA64 processor
        _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
       fi
+      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
       ;;
 
     amigaos*)
@@ -4222,8 +4546,8 @@ m4_if([$1], [CXX], [
         ;;
       m68k)
             # FIXME: we need at least 68020 code to build shared libraries, but
-            # adding the `-m68020' flag to GCC prevents building anything better,
-            # like `-m68040'.
+            # adding the '-m68020' flag to GCC prevents building anything better,
+            # like '-m68040'.
             _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
         ;;
       esac
@@ -4240,6 +4564,11 @@ m4_if([$1], [CXX], [
       # (--disable-auto-import) libraries
       m4_if([$1], [GCJ], [],
        [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
+      case $host_os in
+      os2*)
+       _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
+       ;;
+      esac
       ;;
 
     darwin* | rhapsody*)
@@ -4310,7 +4639,7 @@ m4_if([$1], [CXX], [
     case $host_os in
     aix*)
       _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-      if test "$host_cpu" = ia64; then
+      if test ia64 = "$host_cpu"; then
        # AIX 5 now supports IA64 processor
        _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
       else
@@ -4318,11 +4647,30 @@ m4_if([$1], [CXX], [
       fi
       ;;
 
+    darwin* | rhapsody*)
+      # PIC is the default on this platform
+      # Common symbols not allowed in MH_DYLIB files
+      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
+      case $cc_basename in
+      nagfor*)
+        # NAG Fortran compiler
+        _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
+        _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
+        _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+        ;;
+      esac
+      ;;
+
     mingw* | cygwin* | pw32* | os2* | cegcc*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
       m4_if([$1], [GCJ], [],
        [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
+      case $host_os in
+      os2*)
+       _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
+       ;;
+      esac
       ;;
 
     hpux9* | hpux10* | hpux11*)
@@ -4338,7 +4686,7 @@ m4_if([$1], [CXX], [
        ;;
       esac
       # Is there a better lt_prog_compiler_static that works with the bundled CC?
-      _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
+      _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
       ;;
 
     irix5* | irix6* | nonstopux*)
@@ -4349,7 +4697,7 @@ m4_if([$1], [CXX], [
 
     linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
       case $cc_basename in
-      # old Intel for x86_64 which still supported -KPIC.
+      # old Intel for x86_64, which still supported -KPIC.
       ecc*)
        _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
        _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
@@ -4374,6 +4722,12 @@ m4_if([$1], [CXX], [
        _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
        _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
        ;;
+      tcc*)
+       # Fabrice Bellard et al's Tiny C Compiler
+       _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+       _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+       ;;
       pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
         # Portland Group compilers (*not* the Pentium gcc compiler,
        # which looks to be a dead project)
@@ -4471,7 +4825,7 @@ m4_if([$1], [CXX], [
       ;;
 
     sysv4*MP*)
-      if test -d /usr/nec ;then
+      if test -d /usr/necthen
        _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
        _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
       fi
@@ -4500,7 +4854,7 @@ m4_if([$1], [CXX], [
   fi
 ])
 case $host_os in
-  # For platforms which do not support PIC, -DPIC is meaningless:
+  # For platforms that do not support PIC, -DPIC is meaningless:
   *djgpp*)
     _LT_TAGVAR(lt_prog_compiler_pic, $1)=
     ;;
@@ -4566,17 +4920,21 @@ m4_if([$1], [CXX], [
   case $host_os in
   aix[[4-9]]*)
     # If we're using GNU nm, then we don't want the "-C" option.
-    # -C means demangle to AIX nm, but means don't demangle with GNU nm
-    # Also, AIX nm treats weak defined symbols like other global defined
-    # symbols, whereas GNU nm marks them as "W".
+    # -C means demangle to GNU nm, but means don't demangle to AIX nm.
+    # Without the "-l" option, or with the "-B" option, AIX nm treats
+    # weak defined symbols like other global defined symbols, whereas
+    # GNU nm marks them as "W".
+    # While the 'weak' keyword is ignored in the Export File, we need
+    # it in the Import File for the 'aix-soname' feature, so we have
+    # to replace the "-B" option with "-P" for AIX nm.
     if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
-      _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+      _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols'
     else
-      _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+      _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
     fi
     ;;
   pw32*)
-    _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
+    _LT_TAGVAR(export_symbols_cmds, $1)=$ltdll_cmds
     ;;
   cygwin* | mingw* | cegcc*)
     case $cc_basename in
@@ -4625,9 +4983,9 @@ m4_if([$1], [CXX], [
   # included in the symbol list
   _LT_TAGVAR(include_expsyms, $1)=
   # exclude_expsyms can be an extended regexp of symbols to exclude
-  # it will be wrapped by ` (' and `)$', so one must not match beginning or
-  # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
-  # as well as any symbol that contains `d'.
+  # it will be wrapped by ' (' and ')$', so one must not match beginning or
+  # end of line.  Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc',
+  # as well as any symbol that contains 'd'.
   _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
   # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
   # platforms (ab)use it in PIC code, but their linkers get confused if
@@ -4643,7 +5001,7 @@ dnl Note also adjust exclude_expsyms for C++ above.
     # FIXME: the MSVC++ port hasn't been tested in a loooong time
     # When not using gcc, we currently assume that we are using
     # Microsoft Visual C++.
-    if test "$GCC" != yes; then
+    if test yes != "$GCC"; then
       with_gnu_ld=no
     fi
     ;;
@@ -4651,7 +5009,7 @@ dnl Note also adjust exclude_expsyms for C++ above.
     # we just hope/assume this is gcc and not c89 (= MSVC++)
     with_gnu_ld=yes
     ;;
-  openbsd*)
+  openbsd* | bitrig*)
     with_gnu_ld=no
     ;;
   linux* | k*bsd*-gnu | gnu*)
@@ -4664,7 +5022,7 @@ dnl Note also adjust exclude_expsyms for C++ above.
   # On some targets, GNU ld is compatible enough with the native linker
   # that we're better off using the native interface for both.
   lt_use_gnu_ld_interface=no
-  if test "$with_gnu_ld" = yes; then
+  if test yes = "$with_gnu_ld"; then
     case $host_os in
       aix*)
        # The AIX port of GNU ld has always aspired to compatibility
@@ -4686,24 +5044,24 @@ dnl Note also adjust exclude_expsyms for C++ above.
     esac
   fi
 
-  if test "$lt_use_gnu_ld_interface" = yes; then
+  if test yes = "$lt_use_gnu_ld_interface"; then
     # If archive_cmds runs LD, not CC, wlarc should be empty
-    wlarc='${wl}'
+    wlarc='$wl'
 
     # Set some defaults for GNU ld with shared library support. These
     # are reset later if shared libraries are not supported. Putting them
     # here allows them to be overridden if necessary.
     runpath_var=LD_RUN_PATH
-    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
-    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
+    _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
     # ancient GNU ld didn't support --whole-archive et. al.
     if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
-      _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+      _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
     else
       _LT_TAGVAR(whole_archive_flag_spec, $1)=
     fi
     supports_anon_versioning=no
-    case `$LD -v 2>&1` in
+    case `$LD -v | $SED -e 's/([^)]\+)\s\+//' 2>&1` in
       *GNU\ gold*) supports_anon_versioning=yes ;;
       *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
       *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
@@ -4716,7 +5074,7 @@ dnl Note also adjust exclude_expsyms for C++ above.
     case $host_os in
     aix[[3-9]]*)
       # On AIX/PPC, the GNU linker is very broken
-      if test "$host_cpu" != ia64; then
+      if test ia64 != "$host_cpu"; then
        _LT_TAGVAR(ld_shlibs, $1)=no
        cat <<_LT_EOF 1>&2
 
@@ -4735,7 +5093,7 @@ _LT_EOF
       case $host_cpu in
       powerpc)
             # see comment about AmigaOS4 .so support
-            _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+            _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
             _LT_TAGVAR(archive_expsym_cmds, $1)=''
         ;;
       m68k)
@@ -4751,7 +5109,7 @@ _LT_EOF
        _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
        # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
        # support --undefined.  This deserves some investigation.  FIXME
-       _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+       _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
       else
        _LT_TAGVAR(ld_shlibs, $1)=no
       fi
@@ -4761,7 +5119,7 @@ _LT_EOF
       # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
       # as there is no search path for DLLs.
       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols'
+      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
       _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
       _LT_TAGVAR(always_export_symbols, $1)=no
       _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
@@ -4769,61 +5127,89 @@ _LT_EOF
       _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
 
       if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
-        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-       # If the export-symbols file already is a .def file (1st line
-       # is EXPORTS), use it as is; otherwise, prepend...
-       _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
-         cp $export_symbols $output_objdir/$soname.def;
-       else
-         echo EXPORTS > $output_objdir/$soname.def;
-         cat $export_symbols >> $output_objdir/$soname.def;
-       fi~
-       $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+       # If the export-symbols file already is a .def file, use it as
+       # is; otherwise, prepend EXPORTS...
+       _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
+          cp $export_symbols $output_objdir/$soname.def;
+        else
+          echo EXPORTS > $output_objdir/$soname.def;
+          cat $export_symbols >> $output_objdir/$soname.def;
+        fi~
+        $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
       else
        _LT_TAGVAR(ld_shlibs, $1)=no
       fi
       ;;
 
     haiku*)
-      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
       _LT_TAGVAR(link_all_deplibs, $1)=yes
       ;;
 
+    os2*)
+      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+      _LT_TAGVAR(hardcode_minus_L, $1)=yes
+      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+      shrext_cmds=.dll
+      _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
+       $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
+       $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
+       $ECHO EXPORTS >> $output_objdir/$libname.def~
+       emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
+       $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
+       emximp -o $lib $output_objdir/$libname.def'
+      _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
+       $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
+       $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
+       $ECHO EXPORTS >> $output_objdir/$libname.def~
+       prefix_cmds="$SED"~
+       if test EXPORTS = "`$SED 1q $export_symbols`"; then
+         prefix_cmds="$prefix_cmds -e 1d";
+       fi~
+       prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
+       cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
+       $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
+       emximp -o $lib $output_objdir/$libname.def'
+      _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
+      _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
+      ;;
+
     interix[[3-9]]*)
       _LT_TAGVAR(hardcode_direct, $1)=no
       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
+      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
       # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
       # Instead, shared libraries are loaded at an image base (0x10000000 by
       # default) and relocated if they conflict, which is a slow very memory
       # consuming and fragmenting process.  To avoid this, we pick a random,
       # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
       # time.  Moving up from 0x10000000 also allows more sbrk(2) space.
-      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
-      _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+      _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
       ;;
 
     gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
       tmp_diet=no
-      if test "$host_os" = linux-dietlibc; then
+      if test linux-dietlibc = "$host_os"; then
        case $cc_basename in
          diet\ *) tmp_diet=yes;;       # linux-dietlibc with static linking (!diet-dyn)
        esac
       fi
       if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
-        && test "$tmp_diet" = no
+        && test no = "$tmp_diet"
       then
        tmp_addflag=' $pic_flag'
        tmp_sharedflag='-shared'
        case $cc_basename,$host_cpu in
         pgcc*)                         # Portland Group C compiler
-         _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
+         _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
          tmp_addflag=' $pic_flag'
          ;;
        pgf77* | pgf90* | pgf95* | pgfortran*)
                                        # Portland Group f77 and f90 compilers
-         _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
+         _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
          tmp_addflag=' $pic_flag -Mnomain' ;;
        ecc*,ia64* | icc*,ia64*)        # Intel C compiler on ia64
          tmp_addflag=' -i_dynamic' ;;
@@ -4834,42 +5220,47 @@ _LT_EOF
        lf95*)                          # Lahey Fortran 8.1
          _LT_TAGVAR(whole_archive_flag_spec, $1)=
          tmp_sharedflag='--shared' ;;
+        nagfor*)                        # NAGFOR 5.3
+          tmp_sharedflag='-Wl,-shared' ;;
        xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
          tmp_sharedflag='-qmkshrobj'
          tmp_addflag= ;;
        nvcc*)  # Cuda Compiler Driver 2.2
-         _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
+         _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
          _LT_TAGVAR(compiler_needs_object, $1)=yes
          ;;
        esac
        case `$CC -V 2>&1 | sed 5q` in
        *Sun\ C*)                       # Sun C 5.9
-         _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
+         _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
          _LT_TAGVAR(compiler_needs_object, $1)=yes
          tmp_sharedflag='-G' ;;
        *Sun\ F*)                       # Sun Fortran 8.3
          tmp_sharedflag='-G' ;;
        esac
-       _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+       _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
 
-        if test "x$supports_anon_versioning" = xyes; then
+        if test yes = "$supports_anon_versioning"; then
           _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
-           cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
-           echo "local: *; };" >> $output_objdir/$libname.ver~
-           $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
+            cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+            echo "local: *; };" >> $output_objdir/$libname.ver~
+            $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
         fi
 
        case $cc_basename in
+       tcc*)
+         _LT_TAGVAR(export_dynamic_flag_spec, $1)='-rdynamic'
+         ;;
        xlf* | bgf* | bgxlf* | mpixlf*)
          # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
          _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
-         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
          _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
-         if test "x$supports_anon_versioning" = xyes; then
+         if test yes = "$supports_anon_versioning"; then
            _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
-             cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
-             echo "local: *; };" >> $output_objdir/$libname.ver~
-             $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
+              cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+              echo "local: *; };" >> $output_objdir/$libname.ver~
+              $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
          fi
          ;;
        esac
@@ -4883,8 +5274,8 @@ _LT_EOF
        _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
        wlarc=
       else
-       _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-       _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+       _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+       _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
       fi
       ;;
 
@@ -4902,8 +5293,8 @@ _LT_EOF
 
 _LT_EOF
       elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
-       _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-       _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+       _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+       _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
       else
        _LT_TAGVAR(ld_shlibs, $1)=no
       fi
@@ -4915,7 +5306,7 @@ _LT_EOF
        _LT_TAGVAR(ld_shlibs, $1)=no
        cat <<_LT_EOF 1>&2
 
-*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
+*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot
 *** reliably create shared libraries on SCO systems.  Therefore, libtool
 *** is disabling shared libraries support.  We urge you to upgrade GNU
 *** binutils to release 2.16.91.0.3 or newer.  Another option is to modify
@@ -4930,9 +5321,9 @@ _LT_EOF
          # DT_RUNPATH tag from executables and libraries.  But doing so
          # requires that you compile everything twice, which is a pain.
          if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
-           _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
-           _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-           _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+           _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
+           _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+           _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
          else
            _LT_TAGVAR(ld_shlibs, $1)=no
          fi
@@ -4949,15 +5340,15 @@ _LT_EOF
 
     *)
       if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
-       _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-       _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+       _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+       _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
       else
        _LT_TAGVAR(ld_shlibs, $1)=no
       fi
       ;;
     esac
 
-    if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then
+    if test no = "$_LT_TAGVAR(ld_shlibs, $1)"; then
       runpath_var=
       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
       _LT_TAGVAR(export_dynamic_flag_spec, $1)=
@@ -4973,7 +5364,7 @@ _LT_EOF
       # Note: this linker hardcodes the directories in LIBPATH if there
       # are no directories specified by -L.
       _LT_TAGVAR(hardcode_minus_L, $1)=yes
-      if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
+      if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then
        # Neither direct hardcoding nor static linking is supported with a
        # broken collect2.
        _LT_TAGVAR(hardcode_direct, $1)=unsupported
@@ -4981,34 +5372,57 @@ _LT_EOF
       ;;
 
     aix[[4-9]]*)
-      if test "$host_cpu" = ia64; then
+      if test ia64 = "$host_cpu"; then
        # On IA64, the linker does run time linking by default, so we don't
        # have to do anything special.
        aix_use_runtimelinking=no
        exp_sym_flag='-Bexport'
-       no_entry_flag=""
+       no_entry_flag=
       else
        # If we're using GNU nm, then we don't want the "-C" option.
-       # -C means demangle to AIX nm, but means don't demangle with GNU nm
-       # Also, AIX nm treats weak defined symbols like other global
-       # defined symbols, whereas GNU nm marks them as "W".
+       # -C means demangle to GNU nm, but means don't demangle to AIX nm.
+       # Without the "-l" option, or with the "-B" option, AIX nm treats
+       # weak defined symbols like other global defined symbols, whereas
+       # GNU nm marks them as "W".
+       # While the 'weak' keyword is ignored in the Export File, we need
+       # it in the Import File for the 'aix-soname' feature, so we have
+       # to replace the "-B" option with "-P" for AIX nm.
        if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
-         _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+         _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols'
        else
-         _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+         _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
        fi
        aix_use_runtimelinking=no
 
        # Test if we are trying to use run time linking or normal
        # AIX style linking. If -brtl is somewhere in LDFLAGS, we
-       # need to do runtime linking.
+       # have runtime linking enabled, and use it for executables.
+       # For shared libraries, we enable/disable runtime linking
+       # depending on the kind of the shared library created -
+       # when "with_aix_soname,aix_use_runtimelinking" is:
+       # "aix,no"   lib.a(lib.so.V) shared, rtl:no,  for executables
+       # "aix,yes"  lib.so          shared, rtl:yes, for executables
+       #            lib.a           static archive
+       # "both,no"  lib.so.V(shr.o) shared, rtl:yes
+       #            lib.a(lib.so.V) shared, rtl:no,  for executables
+       # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
+       #            lib.a(lib.so.V) shared, rtl:no
+       # "svr4,*"   lib.so.V(shr.o) shared, rtl:yes, for executables
+       #            lib.a           static archive
        case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
          for ld_flag in $LDFLAGS; do
-         if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
+         if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then
            aix_use_runtimelinking=yes
            break
          fi
          done
+         if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
+           # With aix-soname=svr4, we create the lib.so.V shared archives only,
+           # so we don't have lib.a shared libs to link our executables.
+           # We have to force runtime linking in this case.
+           aix_use_runtimelinking=yes
+           LDFLAGS="$LDFLAGS -Wl,-brtl"
+         fi
          ;;
        esac
 
@@ -5027,13 +5441,21 @@ _LT_EOF
       _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
       _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
       _LT_TAGVAR(link_all_deplibs, $1)=yes
-      _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
+      _LT_TAGVAR(file_list_spec, $1)='$wl-f,'
+      case $with_aix_soname,$aix_use_runtimelinking in
+      aix,*) ;; # traditional, no import file
+      svr4,* | *,yes) # use import file
+       # The Import File defines what to hardcode.
+       _LT_TAGVAR(hardcode_direct, $1)=no
+       _LT_TAGVAR(hardcode_direct_absolute, $1)=no
+       ;;
+      esac
 
-      if test "$GCC" = yes; then
+      if test yes = "$GCC"; then
        case $host_os in aix4.[[012]]|aix4.[[012]].*)
        # We only want to do this on AIX 4.2 and lower, the check
        # below for broken collect2 doesn't work under 4.3+
-         collect2name=`${CC} -print-prog-name=collect2`
+         collect2name=`$CC -print-prog-name=collect2`
          if test -f "$collect2name" &&
           strings "$collect2name" | $GREP resolve_lib_name >/dev/null
          then
@@ -5052,62 +5474,80 @@ _LT_EOF
          ;;
        esac
        shared_flag='-shared'
-       if test "$aix_use_runtimelinking" = yes; then
-         shared_flag="$shared_flag "'${wl}-G'
+       if test yes = "$aix_use_runtimelinking"; then
+         shared_flag="$shared_flag "'$wl-G'
        fi
-       _LT_TAGVAR(link_all_deplibs, $1)=no
+       # Need to ensure runtime linking is disabled for the traditional
+       # shared library, or the linker may eventually find shared libraries
+       # /with/ Import File - we do not want to mix them.
+       shared_flag_aix='-shared'
+       shared_flag_svr4='-shared $wl-G'
       else
        # not using gcc
-       if test "$host_cpu" = ia64; then
+       if test ia64 = "$host_cpu"; then
        # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
        # chokes on -Wl,-G. The following line is correct:
          shared_flag='-G'
        else
-         if test "$aix_use_runtimelinking" = yes; then
-           shared_flag='${wl}-G'
+         if test yes = "$aix_use_runtimelinking"; then
+           shared_flag='$wl-G'
          else
-           shared_flag='${wl}-bM:SRE'
+           shared_flag='$wl-bM:SRE'
          fi
+         shared_flag_aix='$wl-bM:SRE'
+         shared_flag_svr4='$wl-G'
        fi
       fi
 
-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
+      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
       # It seems that -bexpall does not export symbols beginning with
       # underscore (_), so it is better to generate a list of symbols to export.
       _LT_TAGVAR(always_export_symbols, $1)=yes
-      if test "$aix_use_runtimelinking" = yes; then
+      if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
        # Warning - without using the other runtime loading flags (-brtl),
        # -berok will link without error, but may produce a broken library.
        _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
         # Determine the default libpath from the value encoded in an
         # empty executable.
         _LT_SYS_MODULE_PATH_AIX([$1])
-        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
-        _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
+        _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag
       else
-       if test "$host_cpu" = ia64; then
-         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
+       if test ia64 = "$host_cpu"; then
+         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
          _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
-         _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
+         _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols"
        else
         # Determine the default libpath from the value encoded in an
         # empty executable.
         _LT_SYS_MODULE_PATH_AIX([$1])
-        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
+        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
          # Warning - without using the other run time loading flags,
          # -berok will link without error, but may produce a broken library.
-         _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
-         _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
-         if test "$with_gnu_ld" = yes; then
+         _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok'
+         _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok'
+         if test yes = "$with_gnu_ld"; then
            # We only use this code for GNU lds that support --whole-archive.
-           _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
+           _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
          else
            # Exported symbols can be pulled into shared objects from archives
            _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
          fi
          _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
-         # This is similar to how AIX traditionally builds its shared libraries.
-         _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
+         _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
+         # -brtl affects multiple linker settings, -berok does not and is overridden later
+         compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`'
+         if test svr4 != "$with_aix_soname"; then
+           # This is similar to how AIX traditionally builds its shared libraries.
+           _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname'
+         fi
+         if test aix != "$with_aix_soname"; then
+           _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp'
+         else
+           # used by -dlpreopen to get the symbols
+           _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV  $output_objdir/$realname.d/$soname $output_objdir'
+         fi
+         _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d'
        fi
       fi
       ;;
@@ -5116,7 +5556,7 @@ _LT_EOF
       case $host_cpu in
       powerpc)
             # see comment about AmigaOS4 .so support
-            _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+            _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
             _LT_TAGVAR(archive_expsym_cmds, $1)=''
         ;;
       m68k)
@@ -5146,16 +5586,17 @@ _LT_EOF
        # Tell ltmain to make .lib files, not .a files.
        libext=lib
        # Tell ltmain to make .dll files, not .so files.
-       shrext_cmds=".dll"
+       shrext_cmds=.dll
        # FIXME: Setting linknames here is a bad hack.
-       _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
-       _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
-           sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
-         else
-           sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
-         fi~
-         $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
-         linknames='
+       _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
+       _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
+            cp "$export_symbols" "$output_objdir/$soname.def";
+            echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
+          else
+            $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
+          fi~
+          $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
+          linknames='
        # The linker will not automatically build a static lib if we build a DLL.
        # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
        _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
@@ -5164,18 +5605,18 @@ _LT_EOF
        # Don't use ranlib
        _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
        _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
-         lt_tool_outputfile="@TOOL_OUTPUT@"~
-         case $lt_outputfile in
-           *.exe|*.EXE) ;;
-           *)
-             lt_outputfile="$lt_outputfile.exe"
-             lt_tool_outputfile="$lt_tool_outputfile.exe"
-             ;;
-         esac~
-         if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
-           $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
-           $RM "$lt_outputfile.manifest";
-         fi'
+          lt_tool_outputfile="@TOOL_OUTPUT@"~
+          case $lt_outputfile in
+            *.exe|*.EXE) ;;
+            *)
+              lt_outputfile=$lt_outputfile.exe
+              lt_tool_outputfile=$lt_tool_outputfile.exe
+              ;;
+          esac~
+          if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
+            $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
+            $RM "$lt_outputfile.manifest";
+          fi'
        ;;
       *)
        # Assume MSVC wrapper
@@ -5184,7 +5625,7 @@ _LT_EOF
        # Tell ltmain to make .lib files, not .a files.
        libext=lib
        # Tell ltmain to make .dll files, not .so files.
-       shrext_cmds=".dll"
+       shrext_cmds=.dll
        # FIXME: Setting linknames here is a bad hack.
        _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
        # The linker will automatically build a .lib file if we build a DLL.
@@ -5234,33 +5675,33 @@ _LT_EOF
       ;;
 
     hpux9*)
-      if test "$GCC" = yes; then
-       _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+      if test yes = "$GCC"; then
+       _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
       else
-       _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+       _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
       fi
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
       _LT_TAGVAR(hardcode_libdir_separator, $1)=:
       _LT_TAGVAR(hardcode_direct, $1)=yes
 
       # hardcode_minus_L: Not really in the search PATH,
       # but as the default location of the library.
       _LT_TAGVAR(hardcode_minus_L, $1)=yes
-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
       ;;
 
     hpux10*)
-      if test "$GCC" = yes && test "$with_gnu_ld" = no; then
-       _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+      if test yes,no = "$GCC,$with_gnu_ld"; then
+       _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
       else
        _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
       fi
-      if test "$with_gnu_ld" = no; then
-       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+      if test no = "$with_gnu_ld"; then
+       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
        _LT_TAGVAR(hardcode_libdir_separator, $1)=:
        _LT_TAGVAR(hardcode_direct, $1)=yes
        _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
-       _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+       _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
        # hardcode_minus_L: Not really in the search PATH,
        # but as the default location of the library.
        _LT_TAGVAR(hardcode_minus_L, $1)=yes
@@ -5268,25 +5709,25 @@ _LT_EOF
       ;;
 
     hpux11*)
-      if test "$GCC" = yes && test "$with_gnu_ld" = no; then
+      if test yes,no = "$GCC,$with_gnu_ld"; then
        case $host_cpu in
        hppa*64*)
-         _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+         _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
          ;;
        ia64*)
-         _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+         _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
          ;;
        *)
-         _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+         _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
          ;;
        esac
       else
        case $host_cpu in
        hppa*64*)
-         _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+         _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
          ;;
        ia64*)
-         _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+         _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
          ;;
        *)
        m4_if($1, [], [
@@ -5294,14 +5735,14 @@ _LT_EOF
          # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
          _LT_LINKER_OPTION([if $CC understands -b],
            _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b],
-           [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'],
+           [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'],
            [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])],
-         [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'])
+         [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'])
          ;;
        esac
       fi
-      if test "$with_gnu_ld" = no; then
-       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+      if test no = "$with_gnu_ld"; then
+       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
        _LT_TAGVAR(hardcode_libdir_separator, $1)=:
 
        case $host_cpu in
@@ -5312,7 +5753,7 @@ _LT_EOF
        *)
          _LT_TAGVAR(hardcode_direct, $1)=yes
          _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
-         _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+         _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
 
          # hardcode_minus_L: Not really in the search PATH,
          # but as the default location of the library.
@@ -5323,16 +5764,16 @@ _LT_EOF
       ;;
 
     irix5* | irix6* | nonstopux*)
-      if test "$GCC" = yes; then
-       _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+      if test yes = "$GCC"; then
+       _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
        # Try to use the -exported_symbol ld option, if it does not
        # work, assume that -exports_file does not work either and
        # implicitly export all symbols.
        # This should be the same for all languages, so no per-tag cache variable.
        AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol],
          [lt_cv_irix_exported_symbol],
-         [save_LDFLAGS="$LDFLAGS"
-          LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
+         [save_LDFLAGS=$LDFLAGS
+          LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null"
           AC_LINK_IFELSE(
             [AC_LANG_SOURCE(
                [AC_LANG_CASE([C], [[int foo (void) { return 0; }]],
@@ -5345,21 +5786,32 @@ _LT_EOF
       end]])])],
              [lt_cv_irix_exported_symbol=yes],
              [lt_cv_irix_exported_symbol=no])
-           LDFLAGS="$save_LDFLAGS"])
-       if test "$lt_cv_irix_exported_symbol" = yes; then
-          _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
+           LDFLAGS=$save_LDFLAGS])
+       if test yes = "$lt_cv_irix_exported_symbol"; then
+          _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib'
        fi
+       _LT_TAGVAR(link_all_deplibs, $1)=no
       else
-       _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
-       _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
+       _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
+       _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -exports_file $export_symbols -o $lib'
       fi
       _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
       _LT_TAGVAR(hardcode_libdir_separator, $1)=:
       _LT_TAGVAR(inherit_rpath, $1)=yes
       _LT_TAGVAR(link_all_deplibs, $1)=yes
       ;;
 
+    linux*)
+      case $cc_basename in
+      tcc*)
+       # Fabrice Bellard et al's Tiny C Compiler
+       _LT_TAGVAR(ld_shlibs, $1)=yes
+       _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+       ;;
+      esac
+      ;;
+
     netbsd* | netbsdelf*-gnu)
       if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
        _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
@@ -5374,7 +5826,7 @@ _LT_EOF
     newsos6)
       _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
       _LT_TAGVAR(hardcode_direct, $1)=yes
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
       _LT_TAGVAR(hardcode_libdir_separator, $1)=:
       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
       ;;
@@ -5382,27 +5834,19 @@ _LT_EOF
     *nto* | *qnx*)
       ;;
 
-    openbsd*)
+    openbsd* | bitrig*)
       if test -f /usr/libexec/ld.so; then
        _LT_TAGVAR(hardcode_direct, $1)=yes
        _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
        _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
-       if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+       if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
          _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-         _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
-         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-         _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+         _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols'
+         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
+         _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
        else
-         case $host_os in
-          openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
-            _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-            _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
-            ;;
-          *)
-            _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-            _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-            ;;
-         esac
+         _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
        fi
       else
        _LT_TAGVAR(ld_shlibs, $1)=no
@@ -5413,33 +5857,53 @@ _LT_EOF
       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
       _LT_TAGVAR(hardcode_minus_L, $1)=yes
       _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
-      _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~echo DATA >> $output_objdir/$libname.def~echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
-      _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
+      shrext_cmds=.dll
+      _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
+       $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
+       $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
+       $ECHO EXPORTS >> $output_objdir/$libname.def~
+       emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
+       $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
+       emximp -o $lib $output_objdir/$libname.def'
+      _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
+       $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
+       $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
+       $ECHO EXPORTS >> $output_objdir/$libname.def~
+       prefix_cmds="$SED"~
+       if test EXPORTS = "`$SED 1q $export_symbols`"; then
+         prefix_cmds="$prefix_cmds -e 1d";
+       fi~
+       prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
+       cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
+       $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
+       emximp -o $lib $output_objdir/$libname.def'
+      _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
+      _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
       ;;
 
     osf3*)
-      if test "$GCC" = yes; then
-       _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
-       _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+      if test yes = "$GCC"; then
+       _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
+       _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
       else
        _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
-       _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
+       _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
       fi
       _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
       _LT_TAGVAR(hardcode_libdir_separator, $1)=:
       ;;
 
     osf4* | osf5*)     # as osf3* with the addition of -msym flag
-      if test "$GCC" = yes; then
-       _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
-       _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $pic_flag $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+      if test yes = "$GCC"; then
+       _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
+       _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $pic_flag $libobjs $deplibs $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
+       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
       else
        _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
-       _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
+       _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
        _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~
-       $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp'
+          $CC -shared$allow_undefined_flag $wl-input $wl$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~$RM $lib.exp'
 
        # Both c and cxx compiler support -rpath directly
        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
@@ -5450,24 +5914,24 @@ _LT_EOF
 
     solaris*)
       _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
-      if test "$GCC" = yes; then
-       wlarc='${wl}'
-       _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+      if test yes = "$GCC"; then
+       wlarc='$wl'
+       _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
        _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-         $CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
+          $CC -shared $pic_flag $wl-z ${wl}text $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
       else
        case `$CC -V 2>&1` in
        *"Compilers 5.0"*)
          wlarc=''
-         _LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
+         _LT_TAGVAR(archive_cmds, $1)='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags'
          _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-         $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
+            $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
          ;;
        *)
-         wlarc='${wl}'
-         _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
+         wlarc='$wl'
+         _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags'
          _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-         $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
+            $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
          ;;
        esac
       fi
@@ -5477,11 +5941,11 @@ _LT_EOF
       solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
       *)
        # The compiler driver will combine and reorder linker options,
-       # but understands `-z linker_flag'.  GCC discards it without `$wl',
+       # but understands '-z linker_flag'.  GCC discards it without '$wl',
        # but is careful enough not to reorder.
        # Supported since Solaris 2.6 (maybe 2.5.1?)
-       if test "$GCC" = yes; then
-         _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
+       if test yes = "$GCC"; then
+         _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
        else
          _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
        fi
@@ -5491,10 +5955,10 @@ _LT_EOF
       ;;
 
     sunos4*)
-      if test "x$host_vendor" = xsequent; then
+      if test sequent = "$host_vendor"; then
        # Use $CC to link under sequent, because it throws in some extra .o
        # files that make .init and .fini sections work.
-       _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
+       _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags'
       else
        _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
       fi
@@ -5543,43 +6007,43 @@ _LT_EOF
       ;;
 
     sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
-      _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
+      _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
       _LT_TAGVAR(archive_cmds_need_lc, $1)=no
       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
       runpath_var='LD_RUN_PATH'
 
-      if test "$GCC" = yes; then
-       _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-       _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+      if test yes = "$GCC"; then
+       _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+       _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
       else
-       _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-       _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+       _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+       _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
       fi
       ;;
 
     sysv5* | sco3.2v5* | sco5v6*)
-      # Note: We can NOT use -z defs as we might desire, because we do not
+      # Note: We CANNOT use -z defs as we might desire, because we do not
       # link with -lc, and that would cause any symbols used from libc to
       # always be unresolved, which means just about no library would
       # ever link correctly.  If we're not using GNU ld we use -z text
       # though, which does catch some bad symbols but isn't as heavy-handed
       # as -z defs.
-      _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
-      _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
+      _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
+      _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
       _LT_TAGVAR(archive_cmds_need_lc, $1)=no
       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
+      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
       _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
       _LT_TAGVAR(link_all_deplibs, $1)=yes
-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
+      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
       runpath_var='LD_RUN_PATH'
 
-      if test "$GCC" = yes; then
-       _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-       _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+      if test yes = "$GCC"; then
+       _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+       _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
       else
-       _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-       _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+       _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+       _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
       fi
       ;;
 
@@ -5594,17 +6058,17 @@ _LT_EOF
       ;;
     esac
 
-    if test x$host_vendor = xsni; then
+    if test sni = "$host_vendor"; then
       case $host in
       sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
-       _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym'
+       _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Blargedynsym'
        ;;
       esac
     fi
   fi
 ])
 AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
-test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
+test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
 
 _LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
 
@@ -5621,7 +6085,7 @@ x|xyes)
   # Assume -lc should be added
   _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
 
-  if test "$enable_shared" = yes && test "$GCC" = yes; then
+  if test yes,yes = "$GCC,$enable_shared"; then
     case $_LT_TAGVAR(archive_cmds, $1) in
     *'~'*)
       # FIXME: we may have to deal with multi-command sequences.
@@ -5701,12 +6165,12 @@ _LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
 _LT_TAGDECL([], [hardcode_libdir_separator], [1],
     [Whether we need a single "-rpath" flag with a separated argument])
 _LT_TAGDECL([], [hardcode_direct], [0],
-    [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
+    [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
     DIR into the resulting binary])
 _LT_TAGDECL([], [hardcode_direct_absolute], [0],
-    [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
+    [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
     DIR into the resulting binary and the resulting library dependency is
-    "absolute", i.e impossible to change by setting ${shlibpath_var} if the
+    "absolute", i.e impossible to change by setting $shlibpath_var if the
     library is relocated])
 _LT_TAGDECL([], [hardcode_minus_L], [0],
     [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
@@ -5747,10 +6211,10 @@ dnl    [Compiler flag to generate thread safe objects])
 # ------------------------
 # Ensure that the configuration variables for a C compiler are suitably
 # defined.  These variables are subsequently used by _LT_CONFIG to write
-# the compiler configuration to `libtool'.
+# the compiler configuration to 'libtool'.
 m4_defun([_LT_LANG_C_CONFIG],
 [m4_require([_LT_DECL_EGREP])dnl
-lt_save_CC="$CC"
+lt_save_CC=$CC
 AC_LANG_PUSH(C)
 
 # Source file extension for C test sources.
@@ -5790,18 +6254,18 @@ if test -n "$compiler"; then
   LT_SYS_DLOPEN_SELF
   _LT_CMD_STRIPLIB
 
-  # Report which library types will actually be built
+  # Report what library types will actually be built
   AC_MSG_CHECKING([if libtool supports shared libraries])
   AC_MSG_RESULT([$can_build_shared])
 
   AC_MSG_CHECKING([whether to build shared libraries])
-  test "$can_build_shared" = "no" && enable_shared=no
+  test no = "$can_build_shared" && enable_shared=no
 
   # On AIX, shared libraries and static libraries use the same namespace, and
   # are all built from PIC.
   case $host_os in
   aix3*)
-    test "$enable_shared" = yes && enable_static=no
+    test yes = "$enable_shared" && enable_static=no
     if test -n "$RANLIB"; then
       archive_cmds="$archive_cmds~\$RANLIB \$lib"
       postinstall_cmds='$RANLIB $lib'
@@ -5809,8 +6273,12 @@ if test -n "$compiler"; then
     ;;
 
   aix[[4-9]]*)
-    if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
-      test "$enable_shared" = yes && enable_static=no
+    if test ia64 != "$host_cpu"; then
+      case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
+      yes,aix,yes) ;;                  # shared object as lib.so file only
+      yes,svr4,*) ;;                   # shared object as lib.so archive member only
+      yes,*) enable_static=no ;;       # shared object in lib.a archive as well
+      esac
     fi
     ;;
   esac
@@ -5818,13 +6286,13 @@ if test -n "$compiler"; then
 
   AC_MSG_CHECKING([whether to build static libraries])
   # Make sure either enable_shared or enable_static is yes.
-  test "$enable_shared" = yes || enable_static=yes
+  test yes = "$enable_shared" || enable_static=yes
   AC_MSG_RESULT([$enable_static])
 
   _LT_CONFIG($1)
 fi
 AC_LANG_POP
-CC="$lt_save_CC"
+CC=$lt_save_CC
 ])# _LT_LANG_C_CONFIG
 
 
@@ -5832,14 +6300,14 @@ CC="$lt_save_CC"
 # --------------------------
 # Ensure that the configuration variables for a C++ compiler are suitably
 # defined.  These variables are subsequently used by _LT_CONFIG to write
-# the compiler configuration to `libtool'.
+# the compiler configuration to 'libtool'.
 m4_defun([_LT_LANG_CXX_CONFIG],
 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
 m4_require([_LT_DECL_EGREP])dnl
 m4_require([_LT_PATH_MANIFEST_TOOL])dnl
-if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
-    ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
-    (test "X$CXX" != "Xg++"))) ; then
+if test -n "$CXX" && ( test no != "$CXX" &&
+    ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) ||
+    (test g++ != "$CXX"))); then
   AC_PROG_CXXCPP
 else
   _lt_caught_CXX_error=yes
@@ -5881,7 +6349,7 @@ _LT_TAGVAR(objext, $1)=$objext
 # the CXX compiler isn't working.  Some variables (like enable_shared)
 # are currently assumed to apply to all compilers on this platform,
 # and will be corrupted by setting them based on a non-working compiler.
-if test "$_lt_caught_CXX_error" != yes; then
+if test yes != "$_lt_caught_CXX_error"; then
   # Code to be used in simple compile tests
   lt_simple_compile_test_code="int some_variable = 0;"
 
@@ -5923,35 +6391,35 @@ if test "$_lt_caught_CXX_error" != yes; then
   if test -n "$compiler"; then
     # We don't want -fno-exception when compiling C++ code, so set the
     # no_builtin_flag separately
-    if test "$GXX" = yes; then
+    if test yes = "$GXX"; then
       _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
     else
       _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
     fi
 
-    if test "$GXX" = yes; then
+    if test yes = "$GXX"; then
       # Set up default GNU C++ configuration
 
       LT_PATH_LD
 
       # Check if GNU C++ uses GNU ld as the underlying linker, since the
       # archiving commands below assume that GNU ld is being used.
-      if test "$with_gnu_ld" = yes; then
-        _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
-        _LT_TAGVAR(archive_expsym_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+      if test yes = "$with_gnu_ld"; then
+        _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
+        _LT_TAGVAR(archive_expsym_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
 
-        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
-        _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
+        _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
 
         # If archive_cmds runs LD, not CC, wlarc should be empty
         # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
         #     investigate it a little bit more. (MM)
-        wlarc='${wl}'
+        wlarc='$wl'
 
         # ancient GNU ld didn't support --whole-archive et. al.
         if eval "`$CC -print-prog-name=ld` --help 2>&1" |
          $GREP 'no-whole-archive' > /dev/null; then
-          _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+          _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
         else
           _LT_TAGVAR(whole_archive_flag_spec, $1)=
         fi
@@ -5987,18 +6455,30 @@ if test "$_lt_caught_CXX_error" != yes; then
         _LT_TAGVAR(ld_shlibs, $1)=no
         ;;
       aix[[4-9]]*)
-        if test "$host_cpu" = ia64; then
+        if test ia64 = "$host_cpu"; then
           # On IA64, the linker does run time linking by default, so we don't
           # have to do anything special.
           aix_use_runtimelinking=no
           exp_sym_flag='-Bexport'
-          no_entry_flag=""
+          no_entry_flag=
         else
           aix_use_runtimelinking=no
 
           # Test if we are trying to use run time linking or normal
           # AIX style linking. If -brtl is somewhere in LDFLAGS, we
-          # need to do runtime linking.
+          # have runtime linking enabled, and use it for executables.
+          # For shared libraries, we enable/disable runtime linking
+          # depending on the kind of the shared library created -
+          # when "with_aix_soname,aix_use_runtimelinking" is:
+          # "aix,no"   lib.a(lib.so.V) shared, rtl:no,  for executables
+          # "aix,yes"  lib.so          shared, rtl:yes, for executables
+          #            lib.a           static archive
+          # "both,no"  lib.so.V(shr.o) shared, rtl:yes
+          #            lib.a(lib.so.V) shared, rtl:no,  for executables
+          # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
+          #            lib.a(lib.so.V) shared, rtl:no
+          # "svr4,*"   lib.so.V(shr.o) shared, rtl:yes, for executables
+          #            lib.a           static archive
           case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
            for ld_flag in $LDFLAGS; do
              case $ld_flag in
@@ -6008,6 +6488,13 @@ if test "$_lt_caught_CXX_error" != yes; then
                ;;
              esac
            done
+           if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
+             # With aix-soname=svr4, we create the lib.so.V shared archives only,
+             # so we don't have lib.a shared libs to link our executables.
+             # We have to force runtime linking in this case.
+             aix_use_runtimelinking=yes
+             LDFLAGS="$LDFLAGS -Wl,-brtl"
+           fi
            ;;
           esac
 
@@ -6026,13 +6513,21 @@ if test "$_lt_caught_CXX_error" != yes; then
         _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
         _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
         _LT_TAGVAR(link_all_deplibs, $1)=yes
-        _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
+        _LT_TAGVAR(file_list_spec, $1)='$wl-f,'
+        case $with_aix_soname,$aix_use_runtimelinking in
+        aix,*) ;;      # no import file
+        svr4,* | *,yes) # use import file
+          # The Import File defines what to hardcode.
+          _LT_TAGVAR(hardcode_direct, $1)=no
+          _LT_TAGVAR(hardcode_direct_absolute, $1)=no
+          ;;
+        esac
 
-        if test "$GXX" = yes; then
+        if test yes = "$GXX"; then
           case $host_os in aix4.[[012]]|aix4.[[012]].*)
           # We only want to do this on AIX 4.2 and lower, the check
           # below for broken collect2 doesn't work under 4.3+
-         collect2name=`${CC} -print-prog-name=collect2`
+         collect2name=`$CC -print-prog-name=collect2`
          if test -f "$collect2name" &&
             strings "$collect2name" | $GREP resolve_lib_name >/dev/null
          then
@@ -6050,64 +6545,84 @@ if test "$_lt_caught_CXX_error" != yes; then
          fi
           esac
           shared_flag='-shared'
-         if test "$aix_use_runtimelinking" = yes; then
-           shared_flag="$shared_flag "'${wl}-G'
+         if test yes = "$aix_use_runtimelinking"; then
+           shared_flag=$shared_flag' $wl-G'
          fi
+         # Need to ensure runtime linking is disabled for the traditional
+         # shared library, or the linker may eventually find shared libraries
+         # /with/ Import File - we do not want to mix them.
+         shared_flag_aix='-shared'
+         shared_flag_svr4='-shared $wl-G'
         else
           # not using gcc
-          if test "$host_cpu" = ia64; then
+          if test ia64 = "$host_cpu"; then
          # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
          # chokes on -Wl,-G. The following line is correct:
          shared_flag='-G'
           else
-           if test "$aix_use_runtimelinking" = yes; then
-             shared_flag='${wl}-G'
+           if test yes = "$aix_use_runtimelinking"; then
+             shared_flag='$wl-G'
            else
-             shared_flag='${wl}-bM:SRE'
+             shared_flag='$wl-bM:SRE'
            fi
+           shared_flag_aix='$wl-bM:SRE'
+           shared_flag_svr4='$wl-G'
           fi
         fi
 
-        _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
+        _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
         # It seems that -bexpall does not export symbols beginning with
         # underscore (_), so it is better to generate a list of symbols to
        # export.
         _LT_TAGVAR(always_export_symbols, $1)=yes
-        if test "$aix_use_runtimelinking" = yes; then
+       if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
           # Warning - without using the other runtime loading flags (-brtl),
           # -berok will link without error, but may produce a broken library.
-          _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
+          # The "-G" linker flag allows undefined symbols.
+          _LT_TAGVAR(no_undefined_flag, $1)='-bernotok'
           # Determine the default libpath from the value encoded in an empty
           # executable.
           _LT_SYS_MODULE_PATH_AIX([$1])
-          _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
+          _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
 
-          _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+          _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag
         else
-          if test "$host_cpu" = ia64; then
-           _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
+          if test ia64 = "$host_cpu"; then
+           _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
            _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
-           _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
+           _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols"
           else
            # Determine the default libpath from the value encoded in an
            # empty executable.
            _LT_SYS_MODULE_PATH_AIX([$1])
-           _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
+           _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
            # Warning - without using the other run time loading flags,
            # -berok will link without error, but may produce a broken library.
-           _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
-           _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
-           if test "$with_gnu_ld" = yes; then
+           _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok'
+           _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok'
+           if test yes = "$with_gnu_ld"; then
              # We only use this code for GNU lds that support --whole-archive.
-             _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
+             _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
            else
              # Exported symbols can be pulled into shared objects from archives
              _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
            fi
            _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
-           # This is similar to how AIX traditionally builds its shared
-           # libraries.
-           _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
+           _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
+           # -brtl affects multiple linker settings, -berok does not and is overridden later
+           compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`'
+           if test svr4 != "$with_aix_soname"; then
+             # This is similar to how AIX traditionally builds its shared
+             # libraries. Need -bnortl late, we may have -brtl in LDFLAGS.
+             _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname'
+           fi
+           if test aix != "$with_aix_soname"; then
+             _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp'
+           else
+             # used by -dlpreopen to get the symbols
+             _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV  $output_objdir/$realname.d/$soname $output_objdir'
+           fi
+           _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d'
           fi
         fi
         ;;
@@ -6117,7 +6632,7 @@ if test "$_lt_caught_CXX_error" != yes; then
          _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
          # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
          # support --undefined.  This deserves some investigation.  FIXME
-         _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+         _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
        else
          _LT_TAGVAR(ld_shlibs, $1)=no
        fi
@@ -6145,57 +6660,58 @@ if test "$_lt_caught_CXX_error" != yes; then
          # Tell ltmain to make .lib files, not .a files.
          libext=lib
          # Tell ltmain to make .dll files, not .so files.
-         shrext_cmds=".dll"
+         shrext_cmds=.dll
          # FIXME: Setting linknames here is a bad hack.
-         _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
-         _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
-             $SED -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
-           else
-             $SED -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
-           fi~
-           $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
-           linknames='
+         _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
+         _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
+              cp "$export_symbols" "$output_objdir/$soname.def";
+              echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
+            else
+              $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
+            fi~
+            $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
+            linknames='
          # The linker will not automatically build a static lib if we build a DLL.
          # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
          _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
          # Don't use ranlib
          _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
          _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
-           lt_tool_outputfile="@TOOL_OUTPUT@"~
-           case $lt_outputfile in
-             *.exe|*.EXE) ;;
-             *)
-               lt_outputfile="$lt_outputfile.exe"
-               lt_tool_outputfile="$lt_tool_outputfile.exe"
-               ;;
-           esac~
-           func_to_tool_file "$lt_outputfile"~
-           if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
-             $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
-             $RM "$lt_outputfile.manifest";
-           fi'
+            lt_tool_outputfile="@TOOL_OUTPUT@"~
+            case $lt_outputfile in
+              *.exe|*.EXE) ;;
+              *)
+                lt_outputfile=$lt_outputfile.exe
+                lt_tool_outputfile=$lt_tool_outputfile.exe
+                ;;
+            esac~
+            func_to_tool_file "$lt_outputfile"~
+            if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
+              $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
+              $RM "$lt_outputfile.manifest";
+            fi'
          ;;
        *)
          # g++
          # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
          # as there is no search path for DLLs.
          _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
-         _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols'
+         _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
          _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
          _LT_TAGVAR(always_export_symbols, $1)=no
          _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
 
          if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
-           _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-           # If the export-symbols file already is a .def file (1st line
-           # is EXPORTS), use it as is; otherwise, prepend...
-           _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
-             cp $export_symbols $output_objdir/$soname.def;
-           else
-             echo EXPORTS > $output_objdir/$soname.def;
-             cat $export_symbols >> $output_objdir/$soname.def;
-           fi~
-           $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+           _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+           # If the export-symbols file already is a .def file, use it as
+           # is; otherwise, prepend EXPORTS...
+           _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
+              cp $export_symbols $output_objdir/$soname.def;
+            else
+              echo EXPORTS > $output_objdir/$soname.def;
+              cat $export_symbols >> $output_objdir/$soname.def;
+            fi~
+            $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
          else
            _LT_TAGVAR(ld_shlibs, $1)=no
          fi
@@ -6206,6 +6722,34 @@ if test "$_lt_caught_CXX_error" != yes; then
         _LT_DARWIN_LINKER_FEATURES($1)
        ;;
 
+      os2*)
+       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+       _LT_TAGVAR(hardcode_minus_L, $1)=yes
+       _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+       shrext_cmds=.dll
+       _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
+         $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
+         $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
+         $ECHO EXPORTS >> $output_objdir/$libname.def~
+         emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
+         $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
+         emximp -o $lib $output_objdir/$libname.def'
+       _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
+         $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
+         $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
+         $ECHO EXPORTS >> $output_objdir/$libname.def~
+         prefix_cmds="$SED"~
+         if test EXPORTS = "`$SED 1q $export_symbols`"; then
+           prefix_cmds="$prefix_cmds -e 1d";
+         fi~
+         prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
+         cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
+         $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
+         emximp -o $lib $output_objdir/$libname.def'
+       _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
+       _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
+       ;;
+
       dgux*)
         case $cc_basename in
           ec++*)
@@ -6241,14 +6785,14 @@ if test "$_lt_caught_CXX_error" != yes; then
         ;;
 
       haiku*)
-        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
         _LT_TAGVAR(link_all_deplibs, $1)=yes
         ;;
 
       hpux9*)
-        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
         _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-        _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+        _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
         _LT_TAGVAR(hardcode_direct, $1)=yes
         _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
                                             # but as the default
@@ -6260,7 +6804,7 @@ if test "$_lt_caught_CXX_error" != yes; then
             _LT_TAGVAR(ld_shlibs, $1)=no
             ;;
           aCC*)
-            _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+            _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
             # Commands to make compiler produce verbose output that lists
             # what "hidden" libraries, object files and flags are used when
             # linking a shared library.
@@ -6269,11 +6813,11 @@ if test "$_lt_caught_CXX_error" != yes; then
             # explicitly linking system object files so we need to strip them
             # from the output so that they don't get included in the library
             # dependencies.
-            output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
+            output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
             ;;
           *)
-            if test "$GXX" = yes; then
-              _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+            if test yes = "$GXX"; then
+              _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
             else
               # FIXME: insert proper C++ library support
               _LT_TAGVAR(ld_shlibs, $1)=no
@@ -6283,15 +6827,15 @@ if test "$_lt_caught_CXX_error" != yes; then
         ;;
 
       hpux10*|hpux11*)
-        if test $with_gnu_ld = no; then
-         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+        if test no = "$with_gnu_ld"; then
+         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
          _LT_TAGVAR(hardcode_libdir_separator, $1)=:
 
           case $host_cpu in
             hppa*64*|ia64*)
               ;;
             *)
-             _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+             _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
               ;;
           esac
         fi
@@ -6317,13 +6861,13 @@ if test "$_lt_caught_CXX_error" != yes; then
           aCC*)
            case $host_cpu in
              hppa*64*)
-               _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+               _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
                ;;
              ia64*)
-               _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+               _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
                ;;
              *)
-               _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+               _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
                ;;
            esac
            # Commands to make compiler produce verbose output that lists
@@ -6334,20 +6878,20 @@ if test "$_lt_caught_CXX_error" != yes; then
            # explicitly linking system object files so we need to strip them
            # from the output so that they don't get included in the library
            # dependencies.
-           output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
+           output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
            ;;
           *)
-           if test "$GXX" = yes; then
-             if test $with_gnu_ld = no; then
+           if test yes = "$GXX"; then
+             if test no = "$with_gnu_ld"; then
                case $host_cpu in
                  hppa*64*)
-                   _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+                   _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
                    ;;
                  ia64*)
-                   _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+                   _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
                    ;;
                  *)
-                   _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+                   _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
                    ;;
                esac
              fi
@@ -6362,22 +6906,22 @@ if test "$_lt_caught_CXX_error" != yes; then
       interix[[3-9]]*)
        _LT_TAGVAR(hardcode_direct, $1)=no
        _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-       _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
+       _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
        # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
        # Instead, shared libraries are loaded at an image base (0x10000000 by
        # default) and relocated if they conflict, which is a slow very memory
        # consuming and fragmenting process.  To avoid this, we pick a random,
        # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
        # time.  Moving up from 0x10000000 also allows more sbrk(2) space.
-       _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
-       _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+       _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+       _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
        ;;
       irix5* | irix6*)
         case $cc_basename in
           CC*)
            # SGI C++
-           _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
+           _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
 
            # Archives containing C++ object files must be created using
            # "CC -ar", where "CC" is the IRIX C++ compiler.  This is
@@ -6386,17 +6930,17 @@ if test "$_lt_caught_CXX_error" != yes; then
            _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
            ;;
           *)
-           if test "$GXX" = yes; then
-             if test "$with_gnu_ld" = no; then
-               _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+           if test yes = "$GXX"; then
+             if test no = "$with_gnu_ld"; then
+               _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
              else
-               _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` -o $lib'
+               _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` -o $lib'
              fi
            fi
            _LT_TAGVAR(link_all_deplibs, $1)=yes
            ;;
         esac
-        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
         _LT_TAGVAR(hardcode_libdir_separator, $1)=:
         _LT_TAGVAR(inherit_rpath, $1)=yes
         ;;
@@ -6409,8 +6953,8 @@ if test "$_lt_caught_CXX_error" != yes; then
            # KCC will only create a shared library if the output file
            # ends with ".so" (or ".sl" for HP-UX), so rename the library
            # to its proper name (with version) after linking.
-           _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
-           _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib'
+           _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
+           _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib $wl-retain-symbols-file,$export_symbols; mv \$templib $lib'
            # Commands to make compiler produce verbose output that lists
            # what "hidden" libraries, object files and flags are used when
            # linking a shared library.
@@ -6419,10 +6963,10 @@ if test "$_lt_caught_CXX_error" != yes; then
            # explicitly linking system object files so we need to strip them
            # from the output so that they don't get included in the library
            # dependencies.
-           output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
+           output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
 
-           _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-           _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+           _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
+           _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
 
            # Archives containing C++ object files must be created using
            # "CC -Bstatic", where "CC" is the KAI C++ compiler.
@@ -6436,59 +6980,59 @@ if test "$_lt_caught_CXX_error" != yes; then
            # earlier do not add the objects themselves.
            case `$CC -V 2>&1` in
              *"Version 7."*)
-               _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
-               _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+               _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
+               _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
                ;;
              *)  # Version 8.0 or newer
                tmp_idyn=
                case $host_cpu in
                  ia64*) tmp_idyn=' -i_dynamic';;
                esac
-               _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-               _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+               _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+               _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
                ;;
            esac
            _LT_TAGVAR(archive_cmds_need_lc, $1)=no
-           _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-           _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
-           _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
+           _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
+           _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
+           _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
            ;;
           pgCC* | pgcpp*)
             # Portland Group C++ compiler
            case `$CC -V` in
            *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
              _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
-               rm -rf $tpldir~
-               $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
-               compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
+               rm -rf $tpldir~
+               $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
+               compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
              _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
-               rm -rf $tpldir~
-               $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
-               $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
-               $RANLIB $oldlib'
+                rm -rf $tpldir~
+                $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
+                $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
+                $RANLIB $oldlib'
              _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
-               rm -rf $tpldir~
-               $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
-               $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
+                rm -rf $tpldir~
+                $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
+                $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
              _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
-               rm -rf $tpldir~
-               $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
-               $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
+                rm -rf $tpldir~
+                $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
+                $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
              ;;
            *) # Version 6 and above use weak symbols
-             _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
-             _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
+             _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
+             _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
              ;;
            esac
 
-           _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
-           _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
-           _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
+           _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl--rpath $wl$libdir'
+           _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
+           _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
             ;;
          cxx*)
            # Compaq C++
-           _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
-           _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname  -o $lib ${wl}-retain-symbols-file $wl$export_symbols'
+           _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
+           _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname  -o $lib $wl-retain-symbols-file $wl$export_symbols'
 
            runpath_var=LD_RUN_PATH
            _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
@@ -6502,18 +7046,18 @@ if test "$_lt_caught_CXX_error" != yes; then
            # explicitly linking system object files so we need to strip them
            # from the output so that they don't get included in the library
            # dependencies.
-           output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "X$list" | $Xsed'
+           output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "X$list" | $Xsed'
            ;;
          xl* | mpixl* | bgxl*)
            # IBM XL 8.0 on PPC, with GNU ld
-           _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
-           _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
-           _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-           if test "x$supports_anon_versioning" = xyes; then
+           _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
+           _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
+           _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+           if test yes = "$supports_anon_versioning"; then
              _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
-               cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
-               echo "local: *; };" >> $output_objdir/$libname.ver~
-               $CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
+                cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+                echo "local: *; };" >> $output_objdir/$libname.ver~
+                $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
            fi
            ;;
          *)
@@ -6521,10 +7065,10 @@ if test "$_lt_caught_CXX_error" != yes; then
            *Sun\ C*)
              # Sun C++ 5.9
              _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
-             _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
-             _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols'
+             _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+             _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file $wl$export_symbols'
              _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
-             _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
+             _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
              _LT_TAGVAR(compiler_needs_object, $1)=yes
 
              # Not sure whether something based on
@@ -6582,22 +7126,17 @@ if test "$_lt_caught_CXX_error" != yes; then
         _LT_TAGVAR(ld_shlibs, $1)=yes
        ;;
 
-      openbsd2*)
-        # C++ shared libraries are fairly broken
-       _LT_TAGVAR(ld_shlibs, $1)=no
-       ;;
-
-      openbsd*)
+      openbsd* | bitrig*)
        if test -f /usr/libexec/ld.so; then
          _LT_TAGVAR(hardcode_direct, $1)=yes
          _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
          _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
          _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
-         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-         if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-           _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib'
-           _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
-           _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
+         if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`"; then
+           _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file,$export_symbols -o $lib'
+           _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
+           _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
          fi
          output_verbose_link_cmd=func_echo_all
        else
@@ -6613,9 +7152,9 @@ if test "$_lt_caught_CXX_error" != yes; then
            # KCC will only create a shared library if the output file
            # ends with ".so" (or ".sl" for HP-UX), so rename the library
            # to its proper name (with version) after linking.
-           _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
+           _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
 
-           _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+           _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
            _LT_TAGVAR(hardcode_libdir_separator, $1)=:
 
            # Archives containing C++ object files must be created using
@@ -6633,17 +7172,17 @@ if test "$_lt_caught_CXX_error" != yes; then
           cxx*)
            case $host in
              osf3*)
-               _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
-               _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && func_echo_all "${wl}-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
-               _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+               _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
+               _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $soname `test -n "$verstring" && func_echo_all "$wl-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
+               _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
                ;;
              *)
                _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
-               _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
+               _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
                _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
-                 echo "-hidden">> $lib.exp~
-                 $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp  `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~
-                 $RM $lib.exp'
+                  echo "-hidden">> $lib.exp~
+                  $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname $wl-input $wl$lib.exp  `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~
+                  $RM $lib.exp'
                _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
                ;;
            esac
@@ -6658,21 +7197,21 @@ if test "$_lt_caught_CXX_error" != yes; then
            # explicitly linking system object files so we need to strip them
            # from the output so that they don't get included in the library
            # dependencies.
-           output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
+           output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
            ;;
          *)
-           if test "$GXX" = yes && test "$with_gnu_ld" = no; then
-             _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
+           if test yes,no = "$GXX,$with_gnu_ld"; then
+             _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
              case $host in
                osf3*)
-                 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+                 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
                  ;;
                *)
-                 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+                 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
                  ;;
              esac
 
-             _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+             _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
              _LT_TAGVAR(hardcode_libdir_separator, $1)=:
 
              # Commands to make compiler produce verbose output that lists
@@ -6718,9 +7257,9 @@ if test "$_lt_caught_CXX_error" != yes; then
            # Sun C++ 4.2, 5.x and Centerline C++
             _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
            _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
-           _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag}  -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+           _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
            _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-             $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
+              $CC -G$allow_undefined_flag $wl-M $wl$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
 
            _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
            _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
@@ -6728,7 +7267,7 @@ if test "$_lt_caught_CXX_error" != yes; then
              solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
              *)
                # The compiler driver will combine and reorder linker options,
-               # but understands `-z linker_flag'.
+               # but understands '-z linker_flag'.
                # Supported since Solaris 2.6 (maybe 2.5.1?)
                _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
                ;;
@@ -6745,30 +7284,30 @@ if test "$_lt_caught_CXX_error" != yes; then
            ;;
           gcx*)
            # Green Hills C++ Compiler
-           _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
+           _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
 
            # The C++ compiler must be used to create the archive.
            _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
            ;;
           *)
            # GNU C++ compiler with Solaris linker
-           if test "$GXX" = yes && test "$with_gnu_ld" = no; then
-             _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
+           if test yes,no = "$GXX,$with_gnu_ld"; then
+             _LT_TAGVAR(no_undefined_flag, $1)=' $wl-z ${wl}defs'
              if $CC --version | $GREP -v '^2\.7' > /dev/null; then
-               _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
+               _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
                _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-                 $CC -shared $pic_flag -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
+                  $CC -shared $pic_flag -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
 
                # Commands to make compiler produce verbose output that lists
                # what "hidden" libraries, object files and flags are used when
                # linking a shared library.
                output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
              else
-               # g++ 2.7 appears to require `-G' NOT `-shared' on this
+               # g++ 2.7 appears to require '-G' NOT '-shared' on this
                # platform.
-               _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
+               _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
                _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-                 $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
+                  $CC -G -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
 
                # Commands to make compiler produce verbose output that lists
                # what "hidden" libraries, object files and flags are used when
@@ -6776,11 +7315,11 @@ if test "$_lt_caught_CXX_error" != yes; then
                output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
              fi
 
-             _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
+             _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $wl$libdir'
              case $host_os in
                solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
                *)
-                 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
+                 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
                  ;;
              esac
            fi
@@ -6789,52 +7328,52 @@ if test "$_lt_caught_CXX_error" != yes; then
         ;;
 
     sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
-      _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
+      _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
       _LT_TAGVAR(archive_cmds_need_lc, $1)=no
       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
       runpath_var='LD_RUN_PATH'
 
       case $cc_basename in
         CC*)
-         _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-         _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+         _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+         _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
          ;;
        *)
-         _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-         _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+         _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+         _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
          ;;
       esac
       ;;
 
       sysv5* | sco3.2v5* | sco5v6*)
-       # Note: We can NOT use -z defs as we might desire, because we do not
+       # Note: We CANNOT use -z defs as we might desire, because we do not
        # link with -lc, and that would cause any symbols used from libc to
        # always be unresolved, which means just about no library would
        # ever link correctly.  If we're not using GNU ld we use -z text
        # though, which does catch some bad symbols but isn't as heavy-handed
        # as -z defs.
-       _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
-       _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
+       _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
+       _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
        _LT_TAGVAR(archive_cmds_need_lc, $1)=no
        _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
+       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
        _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
        _LT_TAGVAR(link_all_deplibs, $1)=yes
-       _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
+       _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
        runpath_var='LD_RUN_PATH'
 
        case $cc_basename in
           CC*)
-           _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-           _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+           _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+           _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
            _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~
-             '"$_LT_TAGVAR(old_archive_cmds, $1)"
+              '"$_LT_TAGVAR(old_archive_cmds, $1)"
            _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~
-             '"$_LT_TAGVAR(reload_cmds, $1)"
+              '"$_LT_TAGVAR(reload_cmds, $1)"
            ;;
          *)
-           _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-           _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+           _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+           _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
            ;;
        esac
       ;;
@@ -6865,10 +7404,10 @@ if test "$_lt_caught_CXX_error" != yes; then
     esac
 
     AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
-    test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
+    test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
 
-    _LT_TAGVAR(GCC, $1)="$GXX"
-    _LT_TAGVAR(LD, $1)="$LD"
+    _LT_TAGVAR(GCC, $1)=$GXX
+    _LT_TAGVAR(LD, $1)=$LD
 
     ## CAVEAT EMPTOR:
     ## There is no encapsulation within the following macros, do not change
@@ -6895,7 +7434,7 @@ if test "$_lt_caught_CXX_error" != yes; then
   lt_cv_path_LD=$lt_save_path_LD
   lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
   lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
-fi # test "$_lt_caught_CXX_error" != yes
+fi # test yes != "$_lt_caught_CXX_error"
 
 AC_LANG_POP
 ])# _LT_LANG_CXX_CONFIG
@@ -6917,13 +7456,14 @@ AC_REQUIRE([_LT_DECL_SED])
 AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])
 func_stripname_cnf ()
 {
-  case ${2} in
-  .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;;
-  *)  func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;;
+  case @S|@2 in
+  .*) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%\\\\@S|@2\$%%"`;;
+  *)  func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%@S|@2\$%%"`;;
   esac
 } # func_stripname_cnf
 ])# _LT_FUNC_STRIPNAME_CNF
 
+
 # _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
 # ---------------------------------
 # Figure out "hidden" library dependencies from verbose
@@ -7007,13 +7547,13 @@ if AC_TRY_EVAL(ac_compile); then
   pre_test_object_deps_done=no
 
   for p in `eval "$output_verbose_link_cmd"`; do
-    case ${prev}${p} in
+    case $prev$p in
 
     -L* | -R* | -l*)
        # Some compilers place space between "-{L,R}" and the path.
        # Remove the space.
-       if test $p = "-L" ||
-          test $p = "-R"; then
+       if test x-L = "$p" ||
+          test x-R = "$p"; then
         prev=$p
         continue
        fi
@@ -7029,16 +7569,16 @@ if AC_TRY_EVAL(ac_compile); then
        case $p in
        =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;
        esac
-       if test "$pre_test_object_deps_done" = no; then
-        case ${prev} in
+       if test no = "$pre_test_object_deps_done"; then
+        case $prev in
         -L | -R)
           # Internal compiler library paths should come after those
           # provided the user.  The postdeps already come after the
           # user supplied libs so there is no need to process them.
           if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
-            _LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}"
+            _LT_TAGVAR(compiler_lib_search_path, $1)=$prev$p
           else
-            _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}"
+            _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} $prev$p"
           fi
           ;;
         # The "-l" case would never come before the object being
@@ -7046,9 +7586,9 @@ if AC_TRY_EVAL(ac_compile); then
         esac
        else
         if test -z "$_LT_TAGVAR(postdeps, $1)"; then
-          _LT_TAGVAR(postdeps, $1)="${prev}${p}"
+          _LT_TAGVAR(postdeps, $1)=$prev$p
         else
-          _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}"
+          _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} $prev$p"
         fi
        fi
        prev=
@@ -7063,15 +7603,15 @@ if AC_TRY_EVAL(ac_compile); then
         continue
        fi
 
-       if test "$pre_test_object_deps_done" = no; then
+       if test no = "$pre_test_object_deps_done"; then
         if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
-          _LT_TAGVAR(predep_objects, $1)="$p"
+          _LT_TAGVAR(predep_objects, $1)=$p
         else
           _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
         fi
        else
         if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
-          _LT_TAGVAR(postdep_objects, $1)="$p"
+          _LT_TAGVAR(postdep_objects, $1)=$p
         else
           _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
         fi
@@ -7102,51 +7642,6 @@ interix[[3-9]]*)
   _LT_TAGVAR(postdep_objects,$1)=
   _LT_TAGVAR(postdeps,$1)=
   ;;
-
-linux*)
-  case `$CC -V 2>&1 | sed 5q` in
-  *Sun\ C*)
-    # Sun C++ 5.9
-
-    # The more standards-conforming stlport4 library is
-    # incompatible with the Cstd library. Avoid specifying
-    # it if it's in CXXFLAGS. Ignore libCrun as
-    # -library=stlport4 depends on it.
-    case " $CXX $CXXFLAGS " in
-    *" -library=stlport4 "*)
-      solaris_use_stlport4=yes
-      ;;
-    esac
-
-    if test "$solaris_use_stlport4" != yes; then
-      _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
-    fi
-    ;;
-  esac
-  ;;
-
-solaris*)
-  case $cc_basename in
-  CC* | sunCC*)
-    # The more standards-conforming stlport4 library is
-    # incompatible with the Cstd library. Avoid specifying
-    # it if it's in CXXFLAGS. Ignore libCrun as
-    # -library=stlport4 depends on it.
-    case " $CXX $CXXFLAGS " in
-    *" -library=stlport4 "*)
-      solaris_use_stlport4=yes
-      ;;
-    esac
-
-    # Adding this requires a known-good setup of shared libraries for
-    # Sun compiler versions before 5.6, else PIC objects from an old
-    # archive will be linked into the output, leading to subtle bugs.
-    if test "$solaris_use_stlport4" != yes; then
-      _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
-    fi
-    ;;
-  esac
-  ;;
 esac
 ])
 
@@ -7155,7 +7650,7 @@ case " $_LT_TAGVAR(postdeps, $1) " in
 esac
  _LT_TAGVAR(compiler_lib_search_dirs, $1)=
 if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
- _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
+ _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | $SED -e 's! -L! !g' -e 's!^ !!'`
 fi
 _LT_TAGDECL([], [compiler_lib_search_dirs], [1],
     [The directories searched by this compiler when creating a shared library])
@@ -7175,10 +7670,10 @@ _LT_TAGDECL([], [compiler_lib_search_path], [1],
 # --------------------------
 # Ensure that the configuration variables for a Fortran 77 compiler are
 # suitably defined.  These variables are subsequently used by _LT_CONFIG
-# to write the compiler configuration to `libtool'.
+# to write the compiler configuration to 'libtool'.
 m4_defun([_LT_LANG_F77_CONFIG],
 [AC_LANG_PUSH(Fortran 77)
-if test -z "$F77" || test "X$F77" = "Xno"; then
+if test -z "$F77" || test no = "$F77"; then
   _lt_disable_F77=yes
 fi
 
@@ -7215,7 +7710,7 @@ _LT_TAGVAR(objext, $1)=$objext
 # the F77 compiler isn't working.  Some variables (like enable_shared)
 # are currently assumed to apply to all compilers on this platform,
 # and will be corrupted by setting them based on a non-working compiler.
-if test "$_lt_disable_F77" != yes; then
+if test yes != "$_lt_disable_F77"; then
   # Code to be used in simple compile tests
   lt_simple_compile_test_code="\
       subroutine t
@@ -7237,7 +7732,7 @@ if test "$_lt_disable_F77" != yes; then
   _LT_LINKER_BOILERPLATE
 
   # Allow CC to be a program name with arguments.
-  lt_save_CC="$CC"
+  lt_save_CC=$CC
   lt_save_GCC=$GCC
   lt_save_CFLAGS=$CFLAGS
   CC=${F77-"f77"}
@@ -7251,21 +7746,25 @@ if test "$_lt_disable_F77" != yes; then
     AC_MSG_RESULT([$can_build_shared])
 
     AC_MSG_CHECKING([whether to build shared libraries])
-    test "$can_build_shared" = "no" && enable_shared=no
+    test no = "$can_build_shared" && enable_shared=no
 
     # On AIX, shared libraries and static libraries use the same namespace, and
     # are all built from PIC.
     case $host_os in
       aix3*)
-        test "$enable_shared" = yes && enable_static=no
+        test yes = "$enable_shared" && enable_static=no
         if test -n "$RANLIB"; then
           archive_cmds="$archive_cmds~\$RANLIB \$lib"
           postinstall_cmds='$RANLIB $lib'
         fi
         ;;
       aix[[4-9]]*)
-       if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
-         test "$enable_shared" = yes && enable_static=no
+       if test ia64 != "$host_cpu"; then
+         case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
+         yes,aix,yes) ;;               # shared object as lib.so file only
+         yes,svr4,*) ;;                # shared object as lib.so archive member only
+         yes,*) enable_static=no ;;    # shared object in lib.a archive as well
+         esac
        fi
         ;;
     esac
@@ -7273,11 +7772,11 @@ if test "$_lt_disable_F77" != yes; then
 
     AC_MSG_CHECKING([whether to build static libraries])
     # Make sure either enable_shared or enable_static is yes.
-    test "$enable_shared" = yes || enable_static=yes
+    test yes = "$enable_shared" || enable_static=yes
     AC_MSG_RESULT([$enable_static])
 
-    _LT_TAGVAR(GCC, $1)="$G77"
-    _LT_TAGVAR(LD, $1)="$LD"
+    _LT_TAGVAR(GCC, $1)=$G77
+    _LT_TAGVAR(LD, $1)=$LD
 
     ## CAVEAT EMPTOR:
     ## There is no encapsulation within the following macros, do not change
@@ -7294,9 +7793,9 @@ if test "$_lt_disable_F77" != yes; then
   fi # test -n "$compiler"
 
   GCC=$lt_save_GCC
-  CC="$lt_save_CC"
-  CFLAGS="$lt_save_CFLAGS"
-fi # test "$_lt_disable_F77" != yes
+  CC=$lt_save_CC
+  CFLAGS=$lt_save_CFLAGS
+fi # test yes != "$_lt_disable_F77"
 
 AC_LANG_POP
 ])# _LT_LANG_F77_CONFIG
@@ -7306,11 +7805,11 @@ AC_LANG_POP
 # -------------------------
 # Ensure that the configuration variables for a Fortran compiler are
 # suitably defined.  These variables are subsequently used by _LT_CONFIG
-# to write the compiler configuration to `libtool'.
+# to write the compiler configuration to 'libtool'.
 m4_defun([_LT_LANG_FC_CONFIG],
 [AC_LANG_PUSH(Fortran)
 
-if test -z "$FC" || test "X$FC" = "Xno"; then
+if test -z "$FC" || test no = "$FC"; then
   _lt_disable_FC=yes
 fi
 
@@ -7347,7 +7846,7 @@ _LT_TAGVAR(objext, $1)=$objext
 # the FC compiler isn't working.  Some variables (like enable_shared)
 # are currently assumed to apply to all compilers on this platform,
 # and will be corrupted by setting them based on a non-working compiler.
-if test "$_lt_disable_FC" != yes; then
+if test yes != "$_lt_disable_FC"; then
   # Code to be used in simple compile tests
   lt_simple_compile_test_code="\
       subroutine t
@@ -7369,7 +7868,7 @@ if test "$_lt_disable_FC" != yes; then
   _LT_LINKER_BOILERPLATE
 
   # Allow CC to be a program name with arguments.
-  lt_save_CC="$CC"
+  lt_save_CC=$CC
   lt_save_GCC=$GCC
   lt_save_CFLAGS=$CFLAGS
   CC=${FC-"f95"}
@@ -7385,21 +7884,25 @@ if test "$_lt_disable_FC" != yes; then
     AC_MSG_RESULT([$can_build_shared])
 
     AC_MSG_CHECKING([whether to build shared libraries])
-    test "$can_build_shared" = "no" && enable_shared=no
+    test no = "$can_build_shared" && enable_shared=no
 
     # On AIX, shared libraries and static libraries use the same namespace, and
     # are all built from PIC.
     case $host_os in
       aix3*)
-        test "$enable_shared" = yes && enable_static=no
+        test yes = "$enable_shared" && enable_static=no
         if test -n "$RANLIB"; then
           archive_cmds="$archive_cmds~\$RANLIB \$lib"
           postinstall_cmds='$RANLIB $lib'
         fi
         ;;
       aix[[4-9]]*)
-       if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
-         test "$enable_shared" = yes && enable_static=no
+       if test ia64 != "$host_cpu"; then
+         case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
+         yes,aix,yes) ;;               # shared object as lib.so file only
+         yes,svr4,*) ;;                # shared object as lib.so archive member only
+         yes,*) enable_static=no ;;    # shared object in lib.a archive as well
+         esac
        fi
         ;;
     esac
@@ -7407,11 +7910,11 @@ if test "$_lt_disable_FC" != yes; then
 
     AC_MSG_CHECKING([whether to build static libraries])
     # Make sure either enable_shared or enable_static is yes.
-    test "$enable_shared" = yes || enable_static=yes
+    test yes = "$enable_shared" || enable_static=yes
     AC_MSG_RESULT([$enable_static])
 
-    _LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu"
-    _LT_TAGVAR(LD, $1)="$LD"
+    _LT_TAGVAR(GCC, $1)=$ac_cv_fc_compiler_gnu
+    _LT_TAGVAR(LD, $1)=$LD
 
     ## CAVEAT EMPTOR:
     ## There is no encapsulation within the following macros, do not change
@@ -7431,7 +7934,7 @@ if test "$_lt_disable_FC" != yes; then
   GCC=$lt_save_GCC
   CC=$lt_save_CC
   CFLAGS=$lt_save_CFLAGS
-fi # test "$_lt_disable_FC" != yes
+fi # test yes != "$_lt_disable_FC"
 
 AC_LANG_POP
 ])# _LT_LANG_FC_CONFIG
@@ -7441,7 +7944,7 @@ AC_LANG_POP
 # --------------------------
 # Ensure that the configuration variables for the GNU Java Compiler compiler
 # are suitably defined.  These variables are subsequently used by _LT_CONFIG
-# to write the compiler configuration to `libtool'.
+# to write the compiler configuration to 'libtool'.
 m4_defun([_LT_LANG_GCJ_CONFIG],
 [AC_REQUIRE([LT_PROG_GCJ])dnl
 AC_LANG_SAVE
@@ -7475,7 +7978,7 @@ CC=${GCJ-"gcj"}
 CFLAGS=$GCJFLAGS
 compiler=$CC
 _LT_TAGVAR(compiler, $1)=$CC
-_LT_TAGVAR(LD, $1)="$LD"
+_LT_TAGVAR(LD, $1)=$LD
 _LT_CC_BASENAME([$compiler])
 
 # GCJ did not exist at the time GCC didn't implicitly link libc in.
@@ -7512,7 +8015,7 @@ CFLAGS=$lt_save_CFLAGS
 # --------------------------
 # Ensure that the configuration variables for the GNU Go compiler
 # are suitably defined.  These variables are subsequently used by _LT_CONFIG
-# to write the compiler configuration to `libtool'.
+# to write the compiler configuration to 'libtool'.
 m4_defun([_LT_LANG_GO_CONFIG],
 [AC_REQUIRE([LT_PROG_GO])dnl
 AC_LANG_SAVE
@@ -7546,7 +8049,7 @@ CC=${GOC-"gccgo"}
 CFLAGS=$GOFLAGS
 compiler=$CC
 _LT_TAGVAR(compiler, $1)=$CC
-_LT_TAGVAR(LD, $1)="$LD"
+_LT_TAGVAR(LD, $1)=$LD
 _LT_CC_BASENAME([$compiler])
 
 # Go did not exist at the time GCC didn't implicitly link libc in.
@@ -7583,7 +8086,7 @@ CFLAGS=$lt_save_CFLAGS
 # -------------------------
 # Ensure that the configuration variables for the Windows resource compiler
 # are suitably defined.  These variables are subsequently used by _LT_CONFIG
-# to write the compiler configuration to `libtool'.
+# to write the compiler configuration to 'libtool'.
 m4_defun([_LT_LANG_RC_CONFIG],
 [AC_REQUIRE([LT_PROG_RC])dnl
 AC_LANG_SAVE
@@ -7599,7 +8102,7 @@ _LT_TAGVAR(objext, $1)=$objext
 lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
 
 # Code to be used in simple link tests
-lt_simple_link_test_code="$lt_simple_compile_test_code"
+lt_simple_link_test_code=$lt_simple_compile_test_code
 
 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
 _LT_TAG_COMPILER
@@ -7609,7 +8112,7 @@ _LT_COMPILER_BOILERPLATE
 _LT_LINKER_BOILERPLATE
 
 # Allow CC to be a program name with arguments.
-lt_save_CC="$CC"
+lt_save_CC=$CC
 lt_save_CFLAGS=$CFLAGS
 lt_save_GCC=$GCC
 GCC=
@@ -7638,7 +8141,7 @@ AC_DEFUN([LT_PROG_GCJ],
 [m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
   [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
     [AC_CHECK_TOOL(GCJ, gcj,)
-      test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
+      test set = "${GCJFLAGS+set}" || GCJFLAGS="-g -O2"
       AC_SUBST(GCJFLAGS)])])[]dnl
 ])
 
@@ -7749,7 +8252,7 @@ lt_ac_count=0
 # Add /usr/xpg4/bin/sed as it is typically found on Solaris
 # along with /bin/sed that truncates output.
 for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
-  test ! -f $lt_ac_sed && continue
+  test ! -f "$lt_ac_sed" && continue
   cat /dev/null > conftest.in
   lt_ac_count=0
   echo $ECHO_N "0123456789$ECHO_C" >conftest.in
@@ -7766,9 +8269,9 @@ for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
     $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
     cmp -s conftest.out conftest.nl || break
     # 10000 chars as input seems more than enough
-    test $lt_ac_count -gt 10 && break
+    test 10 -lt "$lt_ac_count" && break
     lt_ac_count=`expr $lt_ac_count + 1`
-    if test $lt_ac_count -gt $lt_ac_max; then
+    if test "$lt_ac_count" -gt "$lt_ac_max"; then
       lt_ac_max=$lt_ac_count
       lt_cv_path_SED=$lt_ac_sed
     fi
@@ -7792,27 +8295,7 @@ dnl AC_DEFUN([LT_AC_PROG_SED], [])
 # Find out whether the shell is Bourne or XSI compatible,
 # or has some other useful features.
 m4_defun([_LT_CHECK_SHELL_FEATURES],
-[AC_MSG_CHECKING([whether the shell understands some XSI constructs])
-# Try some XSI features
-xsi_shell=no
-( _lt_dummy="a/b/c"
-  test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \
-      = c,a/b,b/c, \
-    && eval 'test $(( 1 + 1 )) -eq 2 \
-    && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
-  && xsi_shell=yes
-AC_MSG_RESULT([$xsi_shell])
-_LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell'])
-
-AC_MSG_CHECKING([whether the shell understands "+="])
-lt_shell_append=no
-( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \
-    >/dev/null 2>&1 \
-  && lt_shell_append=yes
-AC_MSG_RESULT([$lt_shell_append])
-_LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append'])
-
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
+[if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
   lt_unset=unset
 else
   lt_unset=false
@@ -7836,102 +8319,9 @@ _LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
 ])# _LT_CHECK_SHELL_FEATURES
 
 
-# _LT_PROG_FUNCTION_REPLACE (FUNCNAME, REPLACEMENT-BODY)
-# ------------------------------------------------------
-# In `$cfgfile', look for function FUNCNAME delimited by `^FUNCNAME ()$' and
-# '^} FUNCNAME ', and replace its body with REPLACEMENT-BODY.
-m4_defun([_LT_PROG_FUNCTION_REPLACE],
-[dnl {
-sed -e '/^$1 ()$/,/^} # $1 /c\
-$1 ()\
-{\
-m4_bpatsubsts([$2], [$], [\\], [^\([    ]\)], [\\\1])
-} # Extended-shell $1 implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-])
-
-
-# _LT_PROG_REPLACE_SHELLFNS
-# -------------------------
-# Replace existing portable implementations of several shell functions with
-# equivalent extended shell implementations where those features are available..
-m4_defun([_LT_PROG_REPLACE_SHELLFNS],
-[if test x"$xsi_shell" = xyes; then
-  _LT_PROG_FUNCTION_REPLACE([func_dirname], [dnl
-    case ${1} in
-      */*) func_dirname_result="${1%/*}${2}" ;;
-      *  ) func_dirname_result="${3}" ;;
-    esac])
-
-  _LT_PROG_FUNCTION_REPLACE([func_basename], [dnl
-    func_basename_result="${1##*/}"])
-
-  _LT_PROG_FUNCTION_REPLACE([func_dirname_and_basename], [dnl
-    case ${1} in
-      */*) func_dirname_result="${1%/*}${2}" ;;
-      *  ) func_dirname_result="${3}" ;;
-    esac
-    func_basename_result="${1##*/}"])
-
-  _LT_PROG_FUNCTION_REPLACE([func_stripname], [dnl
-    # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
-    # positional parameters, so assign one to ordinary parameter first.
-    func_stripname_result=${3}
-    func_stripname_result=${func_stripname_result#"${1}"}
-    func_stripname_result=${func_stripname_result%"${2}"}])
-
-  _LT_PROG_FUNCTION_REPLACE([func_split_long_opt], [dnl
-    func_split_long_opt_name=${1%%=*}
-    func_split_long_opt_arg=${1#*=}])
-
-  _LT_PROG_FUNCTION_REPLACE([func_split_short_opt], [dnl
-    func_split_short_opt_arg=${1#??}
-    func_split_short_opt_name=${1%"$func_split_short_opt_arg"}])
-
-  _LT_PROG_FUNCTION_REPLACE([func_lo2o], [dnl
-    case ${1} in
-      *.lo) func_lo2o_result=${1%.lo}.${objext} ;;
-      *)    func_lo2o_result=${1} ;;
-    esac])
-
-  _LT_PROG_FUNCTION_REPLACE([func_xform], [    func_xform_result=${1%.*}.lo])
-
-  _LT_PROG_FUNCTION_REPLACE([func_arith], [    func_arith_result=$(( $[*] ))])
-
-  _LT_PROG_FUNCTION_REPLACE([func_len], [    func_len_result=${#1}])
-fi
-
-if test x"$lt_shell_append" = xyes; then
-  _LT_PROG_FUNCTION_REPLACE([func_append], [    eval "${1}+=\\${2}"])
-
-  _LT_PROG_FUNCTION_REPLACE([func_append_quoted], [dnl
-    func_quote_for_eval "${2}"
-dnl m4 expansion turns \\\\ into \\, and then the shell eval turns that into \
-    eval "${1}+=\\\\ \\$func_quote_for_eval_result"])
-
-  # Save a `func_append' function call where possible by direct use of '+='
-  sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \
-    && mv -f "$cfgfile.tmp" "$cfgfile" \
-      || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-  test 0 -eq $? || _lt_function_replace_fail=:
-else
-  # Save a `func_append' function call even when '+=' is not available
-  sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \
-    && mv -f "$cfgfile.tmp" "$cfgfile" \
-      || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-  test 0 -eq $? || _lt_function_replace_fail=:
-fi
-
-if test x"$_lt_function_replace_fail" = x":"; then
-  AC_MSG_WARN([Unable to substitute extended shell functions in $ofile])
-fi
-])
-
 # _LT_PATH_CONVERSION_FUNCTIONS
 # -----------------------------
-# Determine which file name conversion functions should be used by
+# Determine what file name conversion functions should be used by
 # func_to_host_file (and, implicitly, by func_to_host_path).  These are needed
 # for certain cross-compile configurations and native mingw.
 m4_defun([_LT_PATH_CONVERSION_FUNCTIONS],
index 5d9acd8..94b0829 100644 (file)
@@ -1,14 +1,14 @@
 # Helper functions for option handling.                    -*- Autoconf -*-
 #
-#   Copyright (C) 2004, 2005, 2007, 2008, 2009 Free Software Foundation,
-#   Inc.
+#   Copyright (C) 2004-2005, 2007-2009, 2011-2015 Free Software
+#   Foundation, Inc.
 #   Written by Gary V. Vaughan, 2004
 #
 # This file is free software; the Free Software Foundation gives
 # unlimited permission to copy and/or distribute it, with or without
 # modifications, as long as this notice is preserved.
 
-# serial 7 ltoptions.m4
+# serial 8 ltoptions.m4
 
 # This is to help aclocal find these macros, as it can't see m4_define.
 AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
@@ -29,7 +29,7 @@ m4_define([_LT_SET_OPTION],
 [m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
 m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
         _LT_MANGLE_DEFUN([$1], [$2]),
-    [m4_warning([Unknown $1 option `$2'])])[]dnl
+    [m4_warning([Unknown $1 option '$2'])])[]dnl
 ])
 
 
@@ -75,13 +75,15 @@ m4_if([$1],[LT_INIT],[
   dnl
   dnl If no reference was made to various pairs of opposing options, then
   dnl we run the default mode handler for the pair.  For example, if neither
-  dnl `shared' nor `disable-shared' was passed, we enable building of shared
+  dnl 'shared' nor 'disable-shared' was passed, we enable building of shared
   dnl archives by default:
   _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
   _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
   _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
   _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
-                  [_LT_ENABLE_FAST_INSTALL])
+                  [_LT_ENABLE_FAST_INSTALL])
+  _LT_UNLESS_OPTIONS([LT_INIT], [aix-soname=aix aix-soname=both aix-soname=svr4],
+                  [_LT_WITH_AIX_SONAME([aix])])
   ])
 ])# _LT_SET_OPTIONS
 
@@ -112,7 +114,7 @@ AU_DEFUN([AC_LIBTOOL_DLOPEN],
 [_LT_SET_OPTION([LT_INIT], [dlopen])
 AC_DIAGNOSE([obsolete],
 [$0: Remove this warning and the call to _LT_SET_OPTION when you
-put the `dlopen' option into LT_INIT's first parameter.])
+put the 'dlopen' option into LT_INIT's first parameter.])
 ])
 
 dnl aclocal-1.4 backwards compatibility:
@@ -148,7 +150,7 @@ AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
 _LT_SET_OPTION([LT_INIT], [win32-dll])
 AC_DIAGNOSE([obsolete],
 [$0: Remove this warning and the call to _LT_SET_OPTION when you
-put the `win32-dll' option into LT_INIT's first parameter.])
+put the 'win32-dll' option into LT_INIT's first parameter.])
 ])
 
 dnl aclocal-1.4 backwards compatibility:
@@ -157,9 +159,9 @@ dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
 
 # _LT_ENABLE_SHARED([DEFAULT])
 # ----------------------------
-# implement the --enable-shared flag, and supports the `shared' and
-# `disable-shared' LT_INIT options.
-# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'.
+# implement the --enable-shared flag, and supports the 'shared' and
+# 'disable-shared' LT_INIT options.
+# DEFAULT is either 'yes' or 'no'.  If omitted, it defaults to 'yes'.
 m4_define([_LT_ENABLE_SHARED],
 [m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
 AC_ARG_ENABLE([shared],
@@ -172,14 +174,14 @@ AC_ARG_ENABLE([shared],
     *)
       enable_shared=no
       # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
       for pkg in $enableval; do
-       IFS="$lt_save_ifs"
+       IFS=$lt_save_ifs
        if test "X$pkg" = "X$p"; then
          enable_shared=yes
        fi
       done
-      IFS="$lt_save_ifs"
+      IFS=$lt_save_ifs
       ;;
     esac],
     [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
@@ -211,9 +213,9 @@ dnl AC_DEFUN([AM_DISABLE_SHARED], [])
 
 # _LT_ENABLE_STATIC([DEFAULT])
 # ----------------------------
-# implement the --enable-static flag, and support the `static' and
-# `disable-static' LT_INIT options.
-# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'.
+# implement the --enable-static flag, and support the 'static' and
+# 'disable-static' LT_INIT options.
+# DEFAULT is either 'yes' or 'no'.  If omitted, it defaults to 'yes'.
 m4_define([_LT_ENABLE_STATIC],
 [m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
 AC_ARG_ENABLE([static],
@@ -226,14 +228,14 @@ AC_ARG_ENABLE([static],
     *)
      enable_static=no
       # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
       for pkg in $enableval; do
-       IFS="$lt_save_ifs"
+       IFS=$lt_save_ifs
        if test "X$pkg" = "X$p"; then
          enable_static=yes
        fi
       done
-      IFS="$lt_save_ifs"
+      IFS=$lt_save_ifs
       ;;
     esac],
     [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
@@ -265,9 +267,9 @@ dnl AC_DEFUN([AM_DISABLE_STATIC], [])
 
 # _LT_ENABLE_FAST_INSTALL([DEFAULT])
 # ----------------------------------
-# implement the --enable-fast-install flag, and support the `fast-install'
-# and `disable-fast-install' LT_INIT options.
-# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'.
+# implement the --enable-fast-install flag, and support the 'fast-install'
+# and 'disable-fast-install' LT_INIT options.
+# DEFAULT is either 'yes' or 'no'.  If omitted, it defaults to 'yes'.
 m4_define([_LT_ENABLE_FAST_INSTALL],
 [m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
 AC_ARG_ENABLE([fast-install],
@@ -280,14 +282,14 @@ AC_ARG_ENABLE([fast-install],
     *)
       enable_fast_install=no
       # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
       for pkg in $enableval; do
-       IFS="$lt_save_ifs"
+       IFS=$lt_save_ifs
        if test "X$pkg" = "X$p"; then
          enable_fast_install=yes
        fi
       done
-      IFS="$lt_save_ifs"
+      IFS=$lt_save_ifs
       ;;
     esac],
     [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
@@ -304,14 +306,14 @@ AU_DEFUN([AC_ENABLE_FAST_INSTALL],
 [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
 AC_DIAGNOSE([obsolete],
 [$0: Remove this warning and the call to _LT_SET_OPTION when you put
-the `fast-install' option into LT_INIT's first parameter.])
+the 'fast-install' option into LT_INIT's first parameter.])
 ])
 
 AU_DEFUN([AC_DISABLE_FAST_INSTALL],
 [_LT_SET_OPTION([LT_INIT], [disable-fast-install])
 AC_DIAGNOSE([obsolete],
 [$0: Remove this warning and the call to _LT_SET_OPTION when you put
-the `disable-fast-install' option into LT_INIT's first parameter.])
+the 'disable-fast-install' option into LT_INIT's first parameter.])
 ])
 
 dnl aclocal-1.4 backwards compatibility:
@@ -319,11 +321,64 @@ dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
 dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
 
 
+# _LT_WITH_AIX_SONAME([DEFAULT])
+# ----------------------------------
+# implement the --with-aix-soname flag, and support the `aix-soname=aix'
+# and `aix-soname=both' and `aix-soname=svr4' LT_INIT options. DEFAULT
+# is either `aix', `both' or `svr4'.  If omitted, it defaults to `aix'.
+m4_define([_LT_WITH_AIX_SONAME],
+[m4_define([_LT_WITH_AIX_SONAME_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl
+shared_archive_member_spec=
+case $host,$enable_shared in
+power*-*-aix[[5-9]]*,yes)
+  AC_MSG_CHECKING([which variant of shared library versioning to provide])
+  AC_ARG_WITH([aix-soname],
+    [AS_HELP_STRING([--with-aix-soname=aix|svr4|both],
+      [shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])],
+    [case $withval in
+    aix|svr4|both)
+      ;;
+    *)
+      AC_MSG_ERROR([Unknown argument to --with-aix-soname])
+      ;;
+    esac
+    lt_cv_with_aix_soname=$with_aix_soname],
+    [AC_CACHE_VAL([lt_cv_with_aix_soname],
+      [lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT)
+    with_aix_soname=$lt_cv_with_aix_soname])
+  AC_MSG_RESULT([$with_aix_soname])
+  if test aix != "$with_aix_soname"; then
+    # For the AIX way of multilib, we name the shared archive member
+    # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',
+    # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File.
+    # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag,
+    # the AIX toolchain works better with OBJECT_MODE set (default 32).
+    if test 64 = "${OBJECT_MODE-32}"; then
+      shared_archive_member_spec=shr_64
+    else
+      shared_archive_member_spec=shr
+    fi
+  fi
+  ;;
+*)
+  with_aix_soname=aix
+  ;;
+esac
+
+_LT_DECL([], [shared_archive_member_spec], [0],
+    [Shared archive member basename, for filename based shared library versioning on AIX])dnl
+])# _LT_WITH_AIX_SONAME
+
+LT_OPTION_DEFINE([LT_INIT], [aix-soname=aix], [_LT_WITH_AIX_SONAME([aix])])
+LT_OPTION_DEFINE([LT_INIT], [aix-soname=both], [_LT_WITH_AIX_SONAME([both])])
+LT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], [_LT_WITH_AIX_SONAME([svr4])])
+
+
 # _LT_WITH_PIC([MODE])
 # --------------------
-# implement the --with-pic flag, and support the `pic-only' and `no-pic'
+# implement the --with-pic flag, and support the 'pic-only' and 'no-pic'
 # LT_INIT options.
-# MODE is either `yes' or `no'.  If omitted, it defaults to `both'.
+# MODE is either 'yes' or 'no'.  If omitted, it defaults to 'both'.
 m4_define([_LT_WITH_PIC],
 [AC_ARG_WITH([pic],
     [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
@@ -334,19 +389,17 @@ m4_define([_LT_WITH_PIC],
     *)
       pic_mode=default
       # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
       for lt_pkg in $withval; do
-       IFS="$lt_save_ifs"
+       IFS=$lt_save_ifs
        if test "X$lt_pkg" = "X$lt_p"; then
          pic_mode=yes
        fi
       done
-      IFS="$lt_save_ifs"
+      IFS=$lt_save_ifs
       ;;
     esac],
-    [pic_mode=default])
-
-test -z "$pic_mode" && pic_mode=m4_default([$1], [default])
+    [pic_mode=m4_default([$1], [default])])
 
 _LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
 ])# _LT_WITH_PIC
@@ -359,7 +412,7 @@ AU_DEFUN([AC_LIBTOOL_PICMODE],
 [_LT_SET_OPTION([LT_INIT], [pic-only])
 AC_DIAGNOSE([obsolete],
 [$0: Remove this warning and the call to _LT_SET_OPTION when you
-put the `pic-only' option into LT_INIT's first parameter.])
+put the 'pic-only' option into LT_INIT's first parameter.])
 ])
 
 dnl aclocal-1.4 backwards compatibility:
index 07a8602..fa04b52 100644 (file)
@@ -1,6 +1,6 @@
 # ltversion.m4 -- version numbers                      -*- Autoconf -*-
 #
-#   Copyright (C) 2004 Free Software Foundation, Inc.
+#   Copyright (C) 2004, 2011-2015 Free Software Foundation, Inc.
 #   Written by Scott James Remnant, 2004
 #
 # This file is free software; the Free Software Foundation gives
@@ -9,15 +9,15 @@
 
 # @configure_input@
 
-# serial 3337 ltversion.m4
+# serial 4179 ltversion.m4
 # This file is part of GNU Libtool
 
-m4_define([LT_PACKAGE_VERSION], [2.4.2])
-m4_define([LT_PACKAGE_REVISION], [1.3337])
+m4_define([LT_PACKAGE_VERSION], [2.4.6])
+m4_define([LT_PACKAGE_REVISION], [2.4.6])
 
 AC_DEFUN([LTVERSION_VERSION],
-[macro_version='2.4.2'
-macro_revision='1.3337'
+[macro_version='2.4.6'
+macro_revision='2.4.6'
 _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
 _LT_DECL(, macro_revision, 0)
 ])
index 90462e1..72282d5 100644 (file)
@@ -1,5 +1,5 @@
 Name:           moonshot-ui
-Version:        0.7.2
+Version:        1.0.3
 Release:        2%{?dist}
 Summary:        Moonshot Federated Identity User Interface
 
index 7c7b026..207b964 100644 (file)
@@ -1,16 +1,15 @@
 # SOME DESCRIPTIVE TITLE.
 # Copyright (C) YEAR Free Software Foundation, Inc.
-# This file is distributed under the same license as the PACKAGE package.
+# This file is distributed under the same license as the moonshot-ui package.
 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
 #
-#: src/moonshot-identity-management-view.vala:561
-#: src/moonshot-identity-management-view.vala:829
+#: src/moonshot-identity-manager-app.vala:448
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: moonshot-ui 0.7.2\n"
+"Project-Id-Version: moonshot-ui 1.0.3\n"
 "Report-Msgid-Bugs-To: moonshot-community@jiscmail.ac.uk\n"
-"POT-Creation-Date: 2015-07-14 19:31+0000\n"
+"POT-Creation-Date: 2017-07-09 19:59+0000\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -19,127 +18,405 @@ msgstr ""
 "Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: src/moonshot-identity-management-view.vala:397
+#: src/moonshot-idcard-widget.vala:131
+msgid "Do not use a Moonshot identity for this service"
+msgstr ""
+
+#: src/moonshot-idcard-widget.vala:153 src/moonshot-identity-dialog.vala:57
+msgid "Username"
+msgstr ""
+
+#: src/moonshot-idcard-widget.vala:154
+msgid "Realm:"
+msgstr ""
+
+#: src/moonshot-idcard-widget.vala:156
+msgid "Trust anchor: Enterprise provisioned"
+msgstr ""
+
+#: src/moonshot-idcard-widget.vala:163
+msgid "Services: "
+msgstr ""
+
+#: src/moonshot-identities-manager.vala:316
+msgid "Before "
+msgstr ""
+
+#: src/moonshot-identity-dialog.vala:55
+msgid "Display Name"
+msgstr ""
+
+#: src/moonshot-identity-dialog.vala:56
+msgid "Realm"
+msgstr ""
+
+#: src/moonshot-identity-dialog.vala:58
+msgid "Password"
+msgstr ""
+
+#: src/moonshot-identity-dialog.vala:114
+msgid "Add ID Card"
+msgstr ""
+
+#: src/moonshot-identity-dialog.vala:130
+msgid "OK"
+msgstr ""
+
+#: src/moonshot-identity-dialog.vala:154 src/moonshot-password-dialog.vala:86
+msgid "Remember password"
+msgstr ""
+
+#: src/moonshot-identity-dialog.vala:226
+msgid "Trust anchor: "
+msgstr ""
+
+#: src/moonshot-identity-dialog.vala:227
+msgid "None"
+msgstr ""
+
+#: src/moonshot-identity-dialog.vala:232
+msgid "Enterprise provisioned"
+msgstr ""
+
+#: src/moonshot-identity-dialog.vala:247
+msgid "Clear Trust Anchor"
+msgstr ""
+
+#: src/moonshot-identity-dialog.vala:252
 #, c-format
+msgid "You are about to clear the trust anchor fingerprint for '%s'."
+msgstr ""
+
+#: src/moonshot-identity-dialog.vala:255 src/moonshot-identity-dialog.vala:502
 msgid ""
-"Would you like to replace ID Card '%s' using nai '%s' with the new ID Card "
-"'%s'?"
+"\n"
+"\n"
+"Are you sure you want to do this?"
+msgstr ""
+
+#: src/moonshot-identity-dialog.vala:283
+msgid "Added: "
+msgstr ""
+
+#: src/moonshot-identity-dialog.vala:293
+msgid "CA Certificate:"
+msgstr ""
+
+#: src/moonshot-identity-dialog.vala:295
+msgid "Export Certificate"
+msgstr ""
+
+#: src/moonshot-identity-dialog.vala:303
+msgid "Subject: "
+msgstr ""
+
+#: src/moonshot-identity-dialog.vala:310
+msgid "Subject-Alt: "
+msgstr ""
+
+#: src/moonshot-identity-dialog.vala:316
+msgid "Expiration date: "
+msgstr ""
+
+#: src/moonshot-identity-dialog.vala:322
+msgid "Constraint: "
 msgstr ""
 
-#: src/moonshot-identity-management-view.vala:406
+#: src/moonshot-identity-dialog.vala:348
+msgid "Missing required field: "
+msgstr ""
+
+#: src/moonshot-identity-dialog.vala:349
+msgid "Missing required fields: "
+msgstr ""
+
+#: src/moonshot-identity-dialog.vala:444
+msgid "Services:"
+msgstr ""
+
+#: src/moonshot-identity-dialog.vala:499
 #, c-format
-msgid "Would you like to update ID Card '%s' using nai '%s'?"
+msgid ""
+"You are about to remove the service\n"
+"'%s'."
 msgstr ""
 
-#: src/moonshot-identity-management-view.vala:415
+#: src/moonshot-identity-dialog.vala:525
+#: src/moonshot-identity-management-view.vala:912
+#: src/moonshot-password-dialog.vala:63
+#: src/moonshot-trust-anchor-dialog.vala:154
+msgid "Cancel"
+msgstr ""
+
+#: src/moonshot-identity-dialog.vala:526
+msgid "Save"
+msgstr ""
+
+#: src/moonshot-identity-management-view.vala:101
+msgid "Moonshot Identity Selector"
+msgstr ""
+
+#: src/moonshot-identity-management-view.vala:115
 #, c-format
-msgid "Would you like to add '%s' ID Card to the ID Card Organizer?"
+msgid ""
+"The following identities use the same Network Access Identifier (NAI),\n"
+"'%s'."
+msgstr ""
+
+#: src/moonshot-identity-management-view.vala:116
+msgid ""
+"\n"
+"\n"
+"Duplicate NAIs are not allowed. Please remove identities you don't need, or "
+"modify"
 msgstr ""
 
-#: src/moonshot-identity-management-view.vala:489
+#: src/moonshot-identity-management-view.vala:117
+msgid " user ID or issuer fields so that they are no longer the same NAI."
+msgstr ""
+
+#: src/moonshot-identity-management-view.vala:120
 #, c-format
-msgid "Are you sure you want to delete %s ID Card?"
+msgid ""
+"\n"
+"\n"
+"Display Name: '%s'\n"
+"Services:\n"
+"     %s"
 msgstr ""
 
-#: src/moonshot-identity-management-view.vala:503
+#: src/moonshot-identity-management-view.vala:367
 #, c-format
-msgid "Identity requested for service: %s"
+msgid ""
+"Would you like to replace ID Card '%s' using nai '%s' with the new ID Card "
+"'%s'?"
 msgstr ""
 
-#: src/moonshot-identity-management-view.vala:631
+#: src/moonshot-identity-management-view.vala:376
 #, c-format
-msgid "Are you sure you want to stop '%s' ID Card from being used with %s?"
+msgid "Would you like to update ID Card '%s' using nai '%s'?"
 msgstr ""
 
-#: src/moonshot-identity-management-view.vala:713
-msgid "Moonshot project UI"
+#: src/moonshot-identity-management-view.vala:385
+#, c-format
+msgid "Would you like to add '%s' ID Card to the ID Card Organizer?"
 msgstr ""
 
-#: src/moonshot-identity-management-view.vala:718
-msgid "Visit the Moonshot project web site"
+#: src/moonshot-identity-management-view.vala:423
+msgid "Edit Identity"
 msgstr ""
 
-#: src/moonshot-identity-management-view.vala:720
-msgid "translator-credits"
+#: src/moonshot-identity-management-view.vala:478
+#, c-format
+msgid "You are about to remove the identity '%s'."
 msgstr ""
 
-#: src/moonshot-identity-management-view.vala:730
-msgid "_File"
+#: src/moonshot-identity-management-view.vala:480
+msgid "Are you sure you want to do this?"
 msgstr ""
 
-#: src/moonshot-identity-management-view.vala:739
-msgid "Add ID Card"
+#: src/moonshot-identity-management-view.vala:490
+#, c-format
+msgid ""
+"Identity requested for service:\n"
+"%s"
 msgstr ""
 
-#: src/moonshot-identity-management-view.vala:741
-msgid "Add a new ID Card"
+#: src/moonshot-identity-management-view.vala:496
+msgid "Select your identity:"
 msgstr ""
 
-#: src/moonshot-identity-management-view.vala:750
-msgid "Quit"
+#: src/moonshot-identity-management-view.vala:665
+msgid "Moonshot project UI"
 msgstr ""
 
-#: src/moonshot-identity-management-view.vala:752
-msgid "Quit the application"
+#: src/moonshot-identity-management-view.vala:668
+msgid "Visit the Moonshot project web site"
 msgstr ""
 
-#: src/moonshot-identity-management-view.vala:758
+#: src/moonshot-identity-management-view.vala:686
 msgid "_Help"
 msgstr ""
 
-#: src/moonshot-identity-management-view.vala:767
+#: src/moonshot-identity-management-view.vala:699
 msgid "About"
 msgstr ""
 
-#: src/moonshot-identity-management-view.vala:769
+#: src/moonshot-identity-management-view.vala:701
 msgid "About this application"
 msgstr ""
 
-#: src/moonshot-identity-management-view.vala:799
+#: src/moonshot-identity-management-view.vala:749
+msgid "Search for an identity or service"
+msgstr ""
+
+#: src/moonshot-identity-management-view.vala:752
 msgid "Search entry"
 msgstr ""
 
-#: src/moonshot-identity-management-view.vala:799
+#: src/moonshot-identity-management-view.vala:752
 msgid "Search for a specific ID Card"
 msgstr ""
 
+#: src/moonshot-identity-management-view.vala:795
+msgid "Remember my identity choice for this service"
+msgstr ""
+
+#: src/moonshot-identity-management-view.vala:799
+msgid "Add"
+msgstr ""
+
 #: src/moonshot-identity-management-view.vala:804
-msgid "Search identity or service"
+msgid "Import"
 msgstr ""
 
-#: src/moonshot-identity-management-view.vala:811
-msgid "Clear the current search"
+#: src/moonshot-identity-management-view.vala:809
+msgid "Edit"
 msgstr ""
 
-#: src/moonshot-identity-management-view.vala:839
-msgid ""
-"No Identity: Send this identity to services which should not use Moonshot"
+#: src/moonshot-identity-management-view.vala:815
+msgid "Remove"
+msgstr ""
+
+#: src/moonshot-identity-management-view.vala:823
+msgid "Send"
+msgstr ""
+
+#: src/moonshot-identity-management-view.vala:885
+#, c-format
+msgid "Do you wish to use the %s service?"
+msgstr ""
+
+#: src/moonshot-identity-management-view.vala:887
+msgid "Select Yes to select an ID for this service, or No to cancel"
+msgstr ""
+
+#: src/moonshot-identity-management-view.vala:909
+msgid "Import File"
+msgstr ""
+
+#: src/moonshot-identity-management-view.vala:913
+msgid "Open"
+msgstr ""
+
+#: src/moonshot-identity-management-view.vala:964
+msgid "Import completed. No identities were added or updated."
+msgstr ""
+
+#: src/moonshot-identity-manager-app.vala:300
+msgid "Showed previously launched identity manager.\n"
+msgstr ""
+
+#: src/moonshot-identity-manager-app.vala:441
+#: src/moonshot-identity-manager-app.vala:453
+#, c-format
+msgid "error: %s\n"
+msgstr ""
+
+#: src/moonshot-identity-manager-app.vala:442
+#: src/moonshot-identity-manager-app.vala:454
+#, c-format
+msgid "Run '%s --help' to see a full list of available options\n"
 msgstr ""
 
-#: src/moonshot-identity-management-view.vala:844
-msgid "Login: "
+#: src/moonshot-identity-manager-app.vala:449
+msgid "unable to initialize window\n"
 msgstr ""
 
-#: src/moonshot-identity-management-view.vala:847
-msgid "Issuer:"
+#: src/moonshot-password-dialog.vala:59
+msgid "Moonshot - Password"
 msgstr ""
 
-#: src/moonshot-identity-management-view.vala:851
-msgid "Username:"
+#: src/moonshot-password-dialog.vala:64
+msgid "Connect"
 msgstr ""
 
-#: src/moonshot-identity-management-view.vala:855
+#: src/moonshot-password-dialog.vala:72
+msgid "Enter the password for "
+msgstr ""
+
+#: src/moonshot-password-dialog.vala:75
+msgid "User (NAI):"
+msgstr ""
+
+#: src/moonshot-password-dialog.vala:80
 msgid "Password:"
 msgstr ""
 
-#: src/moonshot-identity-management-view.vala:861
-msgid "Remember password"
+#: src/moonshot-trust-anchor-dialog.vala:147
+msgid "Server's trust anchor certificate (SHA-256 fingerprint):"
 msgstr ""
 
-#: src/moonshot-identity-management-view.vala:863
-msgid "Update Password"
+#: src/moonshot-trust-anchor-dialog.vala:149
+msgid "Trust Anchor"
 msgstr ""
 
-#: src/moonshot-identity-management-view.vala:888
-msgid "Services:"
+#: src/moonshot-trust-anchor-dialog.vala:155
+msgid "Confirm"
+msgstr ""
+
+#: src/moonshot-trust-anchor-dialog.vala:169
+msgid ""
+"You are using this identity for the first time with the following trust "
+"anchor:"
+msgstr ""
+
+#: src/moonshot-trust-anchor-dialog.vala:174
+#, c-format
+msgid ""
+"WARNING: The certificate we received for the authentication server for %s"
+msgstr ""
+
+#: src/moonshot-trust-anchor-dialog.vala:175
+msgid ""
+" is different than expected.  Either the server certificate has changed, or "
+"an"
+msgstr ""
+
+#: src/moonshot-trust-anchor-dialog.vala:176
+msgid ""
+" attack may be underway.  If you proceed to the wrong server, your login "
+"credentials may be compromised."
+msgstr ""
+
+#: src/moonshot-trust-anchor-dialog.vala:184
+msgid "Username: "
+msgstr ""
+
+#: src/moonshot-trust-anchor-dialog.vala:187
+msgid "Realm: "
+msgstr ""
+
+#: src/moonshot-trust-anchor-dialog.vala:190
+msgid ""
+"\n"
+"Please check with your realm administrator for the correct fingerprint"
+msgstr ""
+
+#: src/moonshot-trust-anchor-dialog.vala:191
+msgid " for your authentication server.  If it matches the above fingerprint,"
+msgstr ""
+
+#: src/moonshot-trust-anchor-dialog.vala:192
+msgid " confirm the change.  If not, then cancel."
+msgstr ""
+
+#: src/moonshot-warning-dialog.vala:71
+msgid "Do not show this message again"
+msgstr ""
+
+#: src/moonshot-warning-dialog.vala:95
+msgid "Warning"
+msgstr ""
+
+#: src/moonshot-webp-parser.vala:65
+#, c-format
+msgid ""
+"Usage %s [-f] WEB_PROVISIONING_FILE\n"
+" -f: add identities to flat file store.\n"
+msgstr ""
+
+#: src/moonshot-webp-parser.vala:72
+#, c-format
+msgid "%s does not exist\n"
 msgstr ""
diff --git a/src/moonshot-custom-vbox.c b/src/moonshot-custom-vbox.c
new file mode 100644 (file)
index 0000000..74cfc79
--- /dev/null
@@ -0,0 +1,458 @@
+/* moonshot-custom-vbox.c generated by valac 0.34.9, the Vala compiler
+ * generated from moonshot-custom-vbox.vala, do not modify */
+
+/*
+ * Copyright (c) 2011-2016, JANET(UK)
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * 3. Neither the name of JANET(UK) nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+*/
+
+#include <glib.h>
+#include <glib-object.h>
+#include <gtk/gtk.h>
+#include <stdlib.h>
+#include <string.h>
+
+
+#define TYPE_CUSTOM_VBOX (custom_vbox_get_type ())
+#define CUSTOM_VBOX(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CUSTOM_VBOX, CustomVBox))
+#define CUSTOM_VBOX_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CUSTOM_VBOX, CustomVBoxClass))
+#define IS_CUSTOM_VBOX(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CUSTOM_VBOX))
+#define IS_CUSTOM_VBOX_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CUSTOM_VBOX))
+#define CUSTOM_VBOX_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CUSTOM_VBOX, CustomVBoxClass))
+
+typedef struct _CustomVBox CustomVBox;
+typedef struct _CustomVBoxClass CustomVBoxClass;
+typedef struct _CustomVBoxPrivate CustomVBoxPrivate;
+
+#define TYPE_IDENTITY_MANAGER_VIEW (identity_manager_view_get_type ())
+#define IDENTITY_MANAGER_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerView))
+#define IDENTITY_MANAGER_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerViewClass))
+#define IS_IDENTITY_MANAGER_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_MANAGER_VIEW))
+#define IS_IDENTITY_MANAGER_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_MANAGER_VIEW))
+#define IDENTITY_MANAGER_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerViewClass))
+
+typedef struct _IdentityManagerView IdentityManagerView;
+typedef struct _IdentityManagerViewClass IdentityManagerViewClass;
+
+#define TYPE_MOONSHOT_LOGGER (moonshot_logger_get_type ())
+#define MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLogger))
+#define MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+#define IS_MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MOONSHOT_LOGGER))
+#define IS_MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MOONSHOT_LOGGER))
+#define MOONSHOT_LOGGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+
+typedef struct _MoonshotLogger MoonshotLogger;
+typedef struct _MoonshotLoggerClass MoonshotLoggerClass;
+#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
+
+#define TYPE_ID_CARD_WIDGET (id_card_widget_get_type ())
+#define ID_CARD_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ID_CARD_WIDGET, IdCardWidget))
+#define ID_CARD_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ID_CARD_WIDGET, IdCardWidgetClass))
+#define IS_ID_CARD_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ID_CARD_WIDGET))
+#define IS_ID_CARD_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ID_CARD_WIDGET))
+#define ID_CARD_WIDGET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ID_CARD_WIDGET, IdCardWidgetClass))
+
+typedef struct _IdCardWidget IdCardWidget;
+typedef struct _IdCardWidgetClass IdCardWidgetClass;
+#define _g_list_free0(var) ((var == NULL) ? NULL : (var = (g_list_free (var), NULL)))
+
+#define TYPE_ID_CARD (id_card_get_type ())
+#define ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ID_CARD, IdCard))
+#define ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ID_CARD, IdCardClass))
+#define IS_ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ID_CARD))
+#define IS_ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ID_CARD))
+#define ID_CARD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ID_CARD, IdCardClass))
+
+typedef struct _IdCard IdCard;
+typedef struct _IdCardClass IdCardClass;
+
+struct _CustomVBox {
+       GtkVBox parent_instance;
+       CustomVBoxPrivate * priv;
+};
+
+struct _CustomVBoxClass {
+       GtkVBoxClass parent_class;
+};
+
+struct _CustomVBoxPrivate {
+       IdentityManagerView* main_window;
+       gint next_pos;
+};
+
+
+static gpointer custom_vbox_parent_class = NULL;
+static MoonshotLogger* custom_vbox_logger;
+static MoonshotLogger* custom_vbox_logger = NULL;
+
+GType custom_vbox_get_type (void) G_GNUC_CONST;
+GType identity_manager_view_get_type (void) G_GNUC_CONST;
+#define CUSTOM_VBOX_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_CUSTOM_VBOX, CustomVBoxPrivate))
+enum  {
+       CUSTOM_VBOX_DUMMY_PROPERTY
+};
+GType moonshot_logger_get_type (void) G_GNUC_CONST;
+MoonshotLogger* get_logger (const gchar* name);
+CustomVBox* custom_vbox_new (IdentityManagerView* window, gboolean homogeneous, gint spacing);
+CustomVBox* custom_vbox_construct (GType object_type, IdentityManagerView* window, gboolean homogeneous, gint spacing);
+GType id_card_widget_get_type (void) G_GNUC_CONST;
+void custom_vbox_receive_expanded_event (CustomVBox* self, IdCardWidget* id_card_widget);
+void id_card_widget_collapse (IdCardWidget* self);
+void custom_vbox_receive_collapsed_event (CustomVBox* self, IdCardWidget* id_card_widget);
+void custom_vbox_add_id_card_widget (CustomVBox* self, IdCardWidget* id_card_widget);
+void id_card_widget_set_position (IdCardWidget* self, gint value);
+GType id_card_get_type (void) G_GNUC_CONST;
+IdCardWidget* custom_vbox_find_idcard_widget (CustomVBox* self, IdCard* card);
+IdCard* id_card_widget_get_id_card (IdCardWidget* self);
+void custom_vbox_clear (CustomVBox* self);
+void moonshot_logger_trace (MoonshotLogger* self, const gchar* message, GError* e);
+static void custom_vbox_finalize (GObject* obj);
+
+
+static gpointer _g_object_ref0 (gpointer self) {
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       return self ? g_object_ref (self) : NULL;
+#line 143 "moonshot-custom-vbox.c"
+}
+
+
+CustomVBox* custom_vbox_construct (GType object_type, IdentityManagerView* window, gboolean homogeneous, gint spacing) {
+       CustomVBox * self = NULL;
+       IdentityManagerView* _tmp0_ = NULL;
+       IdentityManagerView* _tmp1_ = NULL;
+       gboolean _tmp2_ = FALSE;
+       gint _tmp3_ = 0;
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       g_return_val_if_fail (window != NULL, NULL);
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       self = (CustomVBox*) g_object_new (object_type, NULL);
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       _tmp0_ = window;
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       _tmp1_ = _g_object_ref0 (_tmp0_);
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       _g_object_unref0 (self->priv->main_window);
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       self->priv->main_window = _tmp1_;
+#line 43 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       _tmp2_ = homogeneous;
+#line 43 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       gtk_box_set_homogeneous ((GtkBox*) self, _tmp2_);
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       _tmp3_ = spacing;
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       gtk_box_set_spacing ((GtkBox*) self, _tmp3_);
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       return self;
+#line 175 "moonshot-custom-vbox.c"
+}
+
+
+CustomVBox* custom_vbox_new (IdentityManagerView* window, gboolean homogeneous, gint spacing) {
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       return custom_vbox_construct (TYPE_CUSTOM_VBOX, window, homogeneous, spacing);
+#line 182 "moonshot-custom-vbox.c"
+}
+
+
+void custom_vbox_receive_expanded_event (CustomVBox* self, IdCardWidget* id_card_widget) {
+       GList* list = NULL;
+       GList* _tmp0_ = NULL;
+       GList* _tmp1_ = NULL;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       g_return_if_fail (self != NULL);
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       g_return_if_fail (id_card_widget != NULL);
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       _tmp0_ = gtk_container_get_children ((GtkContainer*) self);
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       list = _tmp0_;
+#line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       _tmp1_ = list;
+#line 200 "moonshot-custom-vbox.c"
+       {
+               GList* id_card_collection = NULL;
+               GList* id_card_it = NULL;
+#line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+               id_card_collection = _tmp1_;
+#line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+               for (id_card_it = id_card_collection; id_card_it != NULL; id_card_it = id_card_it->next) {
+#line 208 "moonshot-custom-vbox.c"
+                       GtkWidget* _tmp2_ = NULL;
+                       GtkWidget* id_card = NULL;
+#line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+                       _tmp2_ = _g_object_ref0 ((GtkWidget*) id_card_it->data);
+#line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+                       id_card = _tmp2_;
+#line 215 "moonshot-custom-vbox.c"
+                       {
+                               GtkWidget* _tmp3_ = NULL;
+                               IdCardWidget* _tmp4_ = NULL;
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+                               _tmp3_ = id_card;
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+                               _tmp4_ = id_card_widget;
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+                               if (_tmp3_ != G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, GTK_TYPE_WIDGET, GtkWidget)) {
+#line 225 "moonshot-custom-vbox.c"
+                                       GtkWidget* _tmp5_ = NULL;
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+                                       _tmp5_ = id_card;
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+                                       id_card_widget_collapse (G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, TYPE_ID_CARD_WIDGET, IdCardWidget));
+#line 231 "moonshot-custom-vbox.c"
+                               }
+#line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+                               _g_object_unref0 (id_card);
+#line 235 "moonshot-custom-vbox.c"
+                       }
+               }
+       }
+#line 56 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       gtk_container_check_resize ((GtkContainer*) self);
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       _g_list_free0 (list);
+#line 243 "moonshot-custom-vbox.c"
+}
+
+
+void custom_vbox_receive_collapsed_event (CustomVBox* self, IdCardWidget* id_card_widget) {
+#line 59 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       g_return_if_fail (self != NULL);
+#line 59 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       g_return_if_fail (id_card_widget != NULL);
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       gtk_container_check_resize ((GtkContainer*) self);
+#line 254 "moonshot-custom-vbox.c"
+}
+
+
+void custom_vbox_add_id_card_widget (CustomVBox* self, IdCardWidget* id_card_widget) {
+       IdCardWidget* _tmp0_ = NULL;
+       IdCardWidget* _tmp1_ = NULL;
+       gint _tmp2_ = 0;
+#line 64 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       g_return_if_fail (self != NULL);
+#line 64 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       g_return_if_fail (id_card_widget != NULL);
+#line 66 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       _tmp0_ = id_card_widget;
+#line 66 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       gtk_box_pack_start ((GtkBox*) self, (GtkWidget*) _tmp0_, FALSE, FALSE, (guint) 0);
+#line 67 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       _tmp1_ = id_card_widget;
+#line 67 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       _tmp2_ = self->priv->next_pos;
+#line 67 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       self->priv->next_pos = _tmp2_ + 1;
+#line 67 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       id_card_widget_set_position (_tmp1_, _tmp2_);
+#line 278 "moonshot-custom-vbox.c"
+}
+
+
+IdCardWidget* custom_vbox_find_idcard_widget (CustomVBox* self, IdCard* card) {
+       IdCardWidget* result = NULL;
+       IdCard* _tmp0_ = NULL;
+       GList* _tmp1_ = NULL;
+#line 70 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 71 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       _tmp0_ = card;
+#line 71 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       if (_tmp0_ == NULL) {
+#line 72 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+               result = NULL;
+#line 72 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+               return result;
+#line 296 "moonshot-custom-vbox.c"
+       }
+#line 74 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       _tmp1_ = gtk_container_get_children ((GtkContainer*) self);
+#line 300 "moonshot-custom-vbox.c"
+       {
+               GList* w_collection = NULL;
+               GList* w_it = NULL;
+#line 74 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+               w_collection = _tmp1_;
+#line 74 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+               for (w_it = w_collection; w_it != NULL; w_it = w_it->next) {
+#line 308 "moonshot-custom-vbox.c"
+                       GtkWidget* w = NULL;
+#line 74 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+                       w = (GtkWidget*) w_it->data;
+#line 312 "moonshot-custom-vbox.c"
+                       {
+                               IdCardWidget* widget = NULL;
+                               GtkWidget* _tmp2_ = NULL;
+                               IdCardWidget* _tmp3_ = NULL;
+                               IdCardWidget* _tmp4_ = NULL;
+                               IdCard* _tmp5_ = NULL;
+                               IdCard* _tmp6_ = NULL;
+                               IdCard* _tmp7_ = NULL;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+                               _tmp2_ = w;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+                               _tmp3_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, TYPE_ID_CARD_WIDGET, IdCardWidget));
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+                               widget = _tmp3_;
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+                               _tmp4_ = widget;
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+                               _tmp5_ = id_card_widget_get_id_card (_tmp4_);
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+                               _tmp6_ = _tmp5_;
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+                               _tmp7_ = card;
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+                               if (_tmp6_ == _tmp7_) {
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+                                       result = widget;
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+                                       _g_list_free0 (w_collection);
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+                                       return result;
+#line 343 "moonshot-custom-vbox.c"
+                               }
+#line 74 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+                               _g_object_unref0 (widget);
+#line 347 "moonshot-custom-vbox.c"
+                       }
+               }
+#line 74 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+               _g_list_free0 (w_collection);
+#line 352 "moonshot-custom-vbox.c"
+       }
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       result = NULL;
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       return result;
+#line 358 "moonshot-custom-vbox.c"
+}
+
+
+void custom_vbox_clear (CustomVBox* self) {
+       MoonshotLogger* _tmp0_ = NULL;
+       GList* children = NULL;
+       GList* _tmp1_ = NULL;
+       GList* _tmp2_ = NULL;
+#line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       g_return_if_fail (self != NULL);
+#line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       _tmp0_ = custom_vbox_logger;
+#line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       moonshot_logger_trace (_tmp0_, "clear", NULL);
+#line 87 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       _tmp1_ = gtk_container_get_children ((GtkContainer*) self);
+#line 87 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       children = _tmp1_;
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       _tmp2_ = children;
+#line 379 "moonshot-custom-vbox.c"
+       {
+               GList* id_card_widget_collection = NULL;
+               GList* id_card_widget_it = NULL;
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+               id_card_widget_collection = _tmp2_;
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+               for (id_card_widget_it = id_card_widget_collection; id_card_widget_it != NULL; id_card_widget_it = id_card_widget_it->next) {
+#line 387 "moonshot-custom-vbox.c"
+                       GtkWidget* id_card_widget = NULL;
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+                       id_card_widget = (GtkWidget*) id_card_widget_it->data;
+#line 391 "moonshot-custom-vbox.c"
+                       {
+                               GtkWidget* _tmp3_ = NULL;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+                               _tmp3_ = id_card_widget;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+                               gtk_container_remove ((GtkContainer*) self, _tmp3_);
+#line 398 "moonshot-custom-vbox.c"
+                       }
+               }
+       }
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       self->priv->next_pos = 0;
+#line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       _g_list_free0 (children);
+#line 406 "moonshot-custom-vbox.c"
+}
+
+
+static void custom_vbox_class_init (CustomVBoxClass * klass) {
+       MoonshotLogger* _tmp0_ = NULL;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       custom_vbox_parent_class = g_type_class_peek_parent (klass);
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       g_type_class_add_private (klass, sizeof (CustomVBoxPrivate));
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       G_OBJECT_CLASS (klass)->finalize = custom_vbox_finalize;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       _tmp0_ = get_logger ("CustomVBox");
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       custom_vbox_logger = _tmp0_;
+#line 422 "moonshot-custom-vbox.c"
+}
+
+
+static void custom_vbox_instance_init (CustomVBox * self) {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       self->priv = CUSTOM_VBOX_GET_PRIVATE (self);
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       self->priv->next_pos = 0;
+#line 431 "moonshot-custom-vbox.c"
+}
+
+
+static void custom_vbox_finalize (GObject* obj) {
+       CustomVBox * self;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_CUSTOM_VBOX, CustomVBox);
+#line 37 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       _g_object_unref0 (self->priv->main_window);
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-custom-vbox.vala"
+       G_OBJECT_CLASS (custom_vbox_parent_class)->finalize (obj);
+#line 443 "moonshot-custom-vbox.c"
+}
+
+
+GType custom_vbox_get_type (void) {
+       static volatile gsize custom_vbox_type_id__volatile = 0;
+       if (g_once_init_enter (&custom_vbox_type_id__volatile)) {
+               static const GTypeInfo g_define_type_info = { sizeof (CustomVBoxClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) custom_vbox_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (CustomVBox), 0, (GInstanceInitFunc) custom_vbox_instance_init, NULL };
+               GType custom_vbox_type_id;
+               custom_vbox_type_id = g_type_register_static (GTK_TYPE_VBOX, "CustomVBox", &g_define_type_info, 0);
+               g_once_init_leave (&custom_vbox_type_id__volatile, custom_vbox_type_id);
+       }
+       return custom_vbox_type_id__volatile;
+}
+
+
+
diff --git a/src/moonshot-id.c b/src/moonshot-id.c
new file mode 100644 (file)
index 0000000..2323f6d
--- /dev/null
@@ -0,0 +1,3501 @@
+/* moonshot-id.c generated by valac 0.34.9, the Vala compiler
+ * generated from moonshot-id.vala, do not modify */
+
+/*
+ * Copyright (c) 2011-2016, JANET(UK)
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * 3. Neither the name of JANET(UK) nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+*/
+
+#include <glib.h>
+#include <glib-object.h>
+#include <stdlib.h>
+#include <string.h>
+#include <gee.h>
+#include <gnome-keyring-memory.h>
+
+
+#define TYPE_TRUST_ANCHOR (trust_anchor_get_type ())
+#define TRUST_ANCHOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TRUST_ANCHOR, TrustAnchor))
+#define TRUST_ANCHOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TRUST_ANCHOR, TrustAnchorClass))
+#define IS_TRUST_ANCHOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TRUST_ANCHOR))
+#define IS_TRUST_ANCHOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TRUST_ANCHOR))
+#define TRUST_ANCHOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TRUST_ANCHOR, TrustAnchorClass))
+
+typedef struct _TrustAnchor TrustAnchor;
+typedef struct _TrustAnchorClass TrustAnchorClass;
+typedef struct _TrustAnchorPrivate TrustAnchorPrivate;
+
+#define TRUST_ANCHOR_TYPE_TRUST_ANCHOR_TYPE (trust_anchor_trust_anchor_type_get_type ())
+#define _g_free0(var) (var = (g_free (var), NULL))
+#define _g_regex_unref0(var) ((var == NULL) ? NULL : (var = (g_regex_unref (var), NULL)))
+#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))
+#define _g_date_time_unref0(var) ((var == NULL) ? NULL : (var = (g_date_time_unref (var), NULL)))
+
+#define TYPE_MOONSHOT_LOGGER (moonshot_logger_get_type ())
+#define MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLogger))
+#define MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+#define IS_MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MOONSHOT_LOGGER))
+#define IS_MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MOONSHOT_LOGGER))
+#define MOONSHOT_LOGGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+
+typedef struct _MoonshotLogger MoonshotLogger;
+typedef struct _MoonshotLoggerClass MoonshotLoggerClass;
+
+#define TYPE_RULE (rule_get_type ())
+typedef struct _Rule Rule;
+
+#define TYPE_ID_CARD (id_card_get_type ())
+#define ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ID_CARD, IdCard))
+#define ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ID_CARD, IdCardClass))
+#define IS_ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ID_CARD))
+#define IS_ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ID_CARD))
+#define ID_CARD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ID_CARD, IdCardClass))
+
+typedef struct _IdCard IdCard;
+typedef struct _IdCardClass IdCardClass;
+typedef struct _IdCardPrivate IdCardPrivate;
+
+#define ID_CARD_TYPE_DIFF_FLAGS (id_card_diff_flags_get_type ())
+#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
+
+struct _TrustAnchor {
+       GObject parent_instance;
+       TrustAnchorPrivate * priv;
+};
+
+struct _TrustAnchorClass {
+       GObjectClass parent_class;
+};
+
+struct _TrustAnchorPrivate {
+       gchar* _ca_cert;
+       gchar* _subject;
+       gchar* _subject_alt;
+       gchar* _server_cert;
+       gchar* _datetime_added;
+};
+
+typedef enum  {
+       TRUST_ANCHOR_TRUST_ANCHOR_TYPE_EMPTY,
+       TRUST_ANCHOR_TRUST_ANCHOR_TYPE_CA_CERT,
+       TRUST_ANCHOR_TRUST_ANCHOR_TYPE_SERVER_CERT
+} TrustAnchorTrustAnchorType;
+
+struct _Rule {
+       gchar* pattern;
+       gchar* always_confirm;
+};
+
+struct _IdCard {
+       GObject parent_instance;
+       IdCardPrivate * priv;
+};
+
+struct _IdCardClass {
+       GObjectClass parent_class;
+};
+
+struct _IdCardPrivate {
+       gchar* _username;
+       gchar* _issuer;
+       gchar* _display_name;
+       const gchar* _password;
+       Rule* _rules;
+       gint _rules_length1;
+       gint __rules_size_;
+       GeeArrayList* _services;
+       gboolean _temporary;
+       TrustAnchor* _trust_anchor;
+       gchar* _nai;
+       gboolean _store_password;
+       gchar* _uuid;
+};
+
+typedef enum  {
+       ID_CARD_DIFF_FLAGS_DISPLAY_NAME,
+       ID_CARD_DIFF_FLAGS_USERNAME,
+       ID_CARD_DIFF_FLAGS_PASSWORD,
+       ID_CARD_DIFF_FLAGS_ISSUER,
+       ID_CARD_DIFF_FLAGS_RULES,
+       ID_CARD_DIFF_FLAGS_SERVICES,
+       ID_CARD_DIFF_FLAGS_TRUST_ANCHOR
+} IdCardDiffFlags;
+
+
+static gpointer trust_anchor_parent_class = NULL;
+extern MoonshotLogger* id_card_logger;
+static gpointer id_card_parent_class = NULL;
+MoonshotLogger* id_card_logger = NULL;
+
+gchar* get_cert_valid_before (guchar* inbuf, gint inlen, gchar* outbuf, gint outlen);
+GType trust_anchor_get_type (void) G_GNUC_CONST;
+#define TRUST_ANCHOR_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_TRUST_ANCHOR, TrustAnchorPrivate))
+enum  {
+       TRUST_ANCHOR_DUMMY_PROPERTY,
+       TRUST_ANCHOR_CA_CERT,
+       TRUST_ANCHOR_SUBJECT,
+       TRUST_ANCHOR_SUBJECT_ALT,
+       TRUST_ANCHOR_SERVER_CERT,
+       TRUST_ANCHOR_DATETIME_ADDED
+};
+GType trust_anchor_trust_anchor_type_get_type (void) G_GNUC_CONST;
+#define TRUST_ANCHOR_CERT_HEADER "-----BEGIN CERTIFICATE-----"
+#define TRUST_ANCHOR_CERT_FOOTER "-----END CERTIFICATE-----"
+static gchar* trust_anchor_fixup (const gchar* s);
+TrustAnchor* trust_anchor_new (const gchar* ca_cert, const gchar* server_cert, const gchar* subject, const gchar* subject_alt);
+TrustAnchor* trust_anchor_construct (GType object_type, const gchar* ca_cert, const gchar* server_cert, const gchar* subject, const gchar* subject_alt);
+TrustAnchor* trust_anchor_new_empty (void);
+TrustAnchor* trust_anchor_construct_empty (GType object_type);
+gboolean trust_anchor_is_empty (TrustAnchor* self);
+const gchar* trust_anchor_get_ca_cert (TrustAnchor* self);
+const gchar* trust_anchor_get_server_cert (TrustAnchor* self);
+TrustAnchorTrustAnchorType trust_anchor_get_anchor_type (TrustAnchor* self);
+void trust_anchor_set_datetime_added (TrustAnchor* self, const gchar* datetime);
+gchar* trust_anchor_format_datetime_now (void);
+void trust_anchor_update_server_fingerprint (TrustAnchor* self, const gchar* fingerprint);
+gint trust_anchor_Compare (TrustAnchor* self, TrustAnchor* other);
+const gchar* trust_anchor_get_subject (TrustAnchor* self);
+const gchar* trust_anchor_get_subject_alt (TrustAnchor* self);
+gchar* trust_anchor_get_expiration_date (TrustAnchor* self, gchar** err_out);
+GType moonshot_logger_get_type (void) G_GNUC_CONST;
+void moonshot_logger_trace (MoonshotLogger* self, const gchar* message, GError* e);
+void moonshot_logger_error (MoonshotLogger* self, const gchar* message, GError* e);
+const gchar* trust_anchor_get_datetime_added (TrustAnchor* self);
+static void trust_anchor_finalize (GObject* obj);
+static void _vala_trust_anchor_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec);
+GType rule_get_type (void) G_GNUC_CONST;
+Rule* rule_dup (const Rule* self);
+void rule_free (Rule* self);
+void rule_copy (const Rule* self, Rule* dest);
+void rule_destroy (Rule* self);
+gint rule_Compare (Rule *self, Rule* other);
+GType id_card_get_type (void) G_GNUC_CONST;
+#define ID_CARD_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_ID_CARD, IdCardPrivate))
+enum  {
+       ID_CARD_DUMMY_PROPERTY,
+       ID_CARD_DISPLAY_NAME,
+       ID_CARD_USERNAME,
+       ID_CARD_ISSUER,
+       ID_CARD_PASSWORD,
+       ID_CARD_SERVICES,
+       ID_CARD_TEMPORARY,
+       ID_CARD_TRUST_ANCHOR,
+       ID_CARD_NAI,
+       ID_CARD_STORE_PASSWORD,
+       ID_CARD_UUID
+};
+void id_card_set_password (IdCard* self, const gchar* value);
+GType id_card_diff_flags_get_type (void) G_GNUC_CONST;
+MoonshotLogger* get_logger (const gchar* name);
+static void _vala_Rule_array_free (Rule* array, gint array_length);
+gchar* id_card_generate_uuid (void);
+#define ID_CARD_NO_IDENTITY "No Identity"
+static void id_card_update_nai (IdCard* self);
+const gchar* id_card_get_username (IdCard* self);
+const gchar* id_card_get_issuer (IdCard* self);
+gchar* id_card_get_services_string (IdCard* self, const gchar* sep);
+void id_card_update_services (IdCard* self, gchar** services, int services_length1);
+void id_card_update_services_from_list (IdCard* self, GeeArrayList* services);
+void id_card_set_trust_anchor_from_store (IdCard* self, TrustAnchor* ta);
+void id_card_clear_trust_anchor (IdCard* self);
+gboolean id_card_is_no_identity (IdCard* self);
+const gchar* id_card_get_display_name (IdCard* self);
+gint id_card_Compare (IdCard* self, IdCard* other);
+const gchar* id_card_get_password (IdCard* self);
+gint CompareRules (Rule* a, int a_length1, Rule* b, int b_length1);
+Rule* id_card_get_rules (IdCard* self, int* result_length1);
+gint CompareStringArrayList (GeeArrayList* a, GeeArrayList* b);
+TrustAnchor* id_card_get_trust_anchor (IdCard* self);
+IdCard* id_card_NewNoIdentity (void);
+IdCard* id_card_new (void);
+IdCard* id_card_construct (GType object_type);
+void id_card_set_display_name (IdCard* self, const gchar* value);
+void id_card_add_rule (IdCard* self, Rule* rule);
+static void _vala_array_add2 (Rule** array, int* length, int* size, const Rule* value);
+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_dup5 (Rule* self, int length);
+GeeArrayList* id_card_get_services (IdCard* self);
+gboolean id_card_get_temporary (IdCard* self);
+void id_card_set_temporary (IdCard* self, gboolean value);
+const gchar* id_card_get_nai (IdCard* self);
+static void id_card_set_nai (IdCard* self, const gchar* value);
+gboolean id_card_get_store_password (IdCard* self);
+void id_card_set_store_password (IdCard* self, gboolean value);
+const gchar* id_card_get_uuid (IdCard* self);
+static void id_card_finalize (GObject* obj);
+static void _vala_id_card_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec);
+static void _vala_id_card_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec);
+static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func);
+static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func);
+
+
+GType trust_anchor_trust_anchor_type_get_type (void) {
+       static volatile gsize trust_anchor_trust_anchor_type_type_id__volatile = 0;
+       if (g_once_init_enter (&trust_anchor_trust_anchor_type_type_id__volatile)) {
+               static const GEnumValue values[] = {{TRUST_ANCHOR_TRUST_ANCHOR_TYPE_EMPTY, "TRUST_ANCHOR_TRUST_ANCHOR_TYPE_EMPTY", "empty"}, {TRUST_ANCHOR_TRUST_ANCHOR_TYPE_CA_CERT, "TRUST_ANCHOR_TRUST_ANCHOR_TYPE_CA_CERT", "ca-cert"}, {TRUST_ANCHOR_TRUST_ANCHOR_TYPE_SERVER_CERT, "TRUST_ANCHOR_TRUST_ANCHOR_TYPE_SERVER_CERT", "server-cert"}, {0, NULL, NULL}};
+               GType trust_anchor_trust_anchor_type_type_id;
+               trust_anchor_trust_anchor_type_type_id = g_enum_register_static ("TrustAnchorTrustAnchorType", values);
+               g_once_init_leave (&trust_anchor_trust_anchor_type_type_id__volatile, trust_anchor_trust_anchor_type_type_id);
+       }
+       return trust_anchor_trust_anchor_type_type_id__volatile;
+}
+
+
+static gchar* string_strip (const gchar* self) {
+       gchar* result = NULL;
+       gchar* _result_ = NULL;
+       gchar* _tmp0_ = NULL;
+       const gchar* _tmp1_ = NULL;
+#line 1215 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 1216 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp0_ = g_strdup (self);
+#line 1216 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _result_ = _tmp0_;
+#line 1217 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp1_ = _result_;
+#line 1217 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_strstrip (_tmp1_);
+#line 1218 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       result = _result_;
+#line 1218 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       return result;
+#line 293 "moonshot-id.c"
+}
+
+
+static gchar* trust_anchor_fixup (const gchar* s) {
+       gchar* result = NULL;
+       gchar* _tmp0_ = NULL;
+       const gchar* _tmp1_ = NULL;
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (s != NULL, NULL);
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1_ = s;
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (_tmp1_ == NULL) {
+#line 307 "moonshot-id.c"
+               gchar* _tmp2_ = NULL;
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp2_ = g_strdup ("");
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _g_free0 (_tmp0_);
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp0_ = _tmp2_;
+#line 315 "moonshot-id.c"
+       } else {
+               const gchar* _tmp3_ = NULL;
+               gchar* _tmp4_ = NULL;
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp3_ = s;
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp4_ = string_strip (_tmp3_);
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _g_free0 (_tmp0_);
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp0_ = _tmp4_;
+#line 327 "moonshot-id.c"
+       }
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       result = _tmp0_;
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return result;
+#line 333 "moonshot-id.c"
+}
+
+
+static gchar* string_replace (const gchar* self, const gchar* old, const gchar* replacement) {
+       gchar* result = NULL;
+       GError * _inner_error_ = NULL;
+#line 1388 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 1388 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (old != NULL, NULL);
+#line 1388 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (replacement != NULL, NULL);
+#line 346 "moonshot-id.c"
+       {
+               GRegex* regex = NULL;
+               const gchar* _tmp0_ = NULL;
+               gchar* _tmp1_ = NULL;
+               gchar* _tmp2_ = NULL;
+               GRegex* _tmp3_ = NULL;
+               GRegex* _tmp4_ = NULL;
+               gchar* _tmp5_ = NULL;
+               GRegex* _tmp6_ = NULL;
+               const gchar* _tmp7_ = NULL;
+               gchar* _tmp8_ = NULL;
+               gchar* _tmp9_ = NULL;
+#line 1390 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp0_ = old;
+#line 1390 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp1_ = g_regex_escape_string (_tmp0_, -1);
+#line 1390 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp2_ = _tmp1_;
+#line 1390 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp3_ = g_regex_new (_tmp2_, 0, 0, &_inner_error_);
+#line 1390 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp4_ = _tmp3_;
+#line 1390 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _g_free0 (_tmp2_);
+#line 1390 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               regex = _tmp4_;
+#line 1390 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 1390 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       if (_inner_error_->domain == G_REGEX_ERROR) {
+#line 377 "moonshot-id.c"
+                               goto __catch2_g_regex_error;
+                       }
+#line 1390 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
+#line 1390 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       g_clear_error (&_inner_error_);
+#line 1390 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       return NULL;
+#line 386 "moonshot-id.c"
+               }
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp6_ = regex;
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp7_ = replacement;
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp8_ = g_regex_replace_literal (_tmp6_, self, (gssize) -1, 0, _tmp7_, 0, &_inner_error_);
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp5_ = _tmp8_;
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       _g_regex_unref0 (regex);
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       if (_inner_error_->domain == G_REGEX_ERROR) {
+#line 402 "moonshot-id.c"
+                               goto __catch2_g_regex_error;
+                       }
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       _g_regex_unref0 (regex);
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       g_clear_error (&_inner_error_);
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       return NULL;
+#line 413 "moonshot-id.c"
+               }
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp9_ = _tmp5_;
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp5_ = NULL;
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               result = _tmp9_;
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _g_free0 (_tmp5_);
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _g_regex_unref0 (regex);
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               return result;
+#line 427 "moonshot-id.c"
+       }
+       goto __finally2;
+       __catch2_g_regex_error:
+       {
+               GError* e = NULL;
+#line 1389 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               e = _inner_error_;
+#line 1389 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _inner_error_ = NULL;
+#line 1393 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               g_assert_not_reached ();
+#line 1389 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _g_error_free0 (e);
+#line 441 "moonshot-id.c"
+       }
+       __finally2:
+#line 1389 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 1389 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               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 1389 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               g_clear_error (&_inner_error_);
+#line 1389 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               return NULL;
+#line 452 "moonshot-id.c"
+       }
+}
+
+
+TrustAnchor* trust_anchor_construct (GType object_type, const gchar* ca_cert, const gchar* server_cert, const gchar* subject, const gchar* subject_alt) {
+       TrustAnchor * self = NULL;
+       const gchar* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+       const gchar* _tmp2_ = NULL;
+       gchar* _tmp3_ = NULL;
+       const gchar* _tmp4_ = NULL;
+       gchar* _tmp5_ = NULL;
+       const gchar* _tmp6_ = NULL;
+       gchar* _tmp7_ = NULL;
+       gchar* _tmp8_ = NULL;
+       gchar* cruft = NULL;
+       gchar* _tmp9_ = NULL;
+       const gchar* _tmp10_ = NULL;
+       gchar* _tmp11_ = NULL;
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (ca_cert != NULL, NULL);
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (server_cert != NULL, NULL);
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (subject != NULL, NULL);
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (subject_alt != NULL, NULL);
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self = (TrustAnchor*) g_object_new (object_type, NULL);
+#line 62 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = ca_cert;
+#line 62 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1_ = trust_anchor_fixup (_tmp0_);
+#line 62 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (self->priv->_ca_cert);
+#line 62 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_ca_cert = _tmp1_;
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp2_ = server_cert;
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp3_ = trust_anchor_fixup (_tmp2_);
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (self->priv->_server_cert);
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_server_cert = _tmp3_;
+#line 64 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp4_ = subject;
+#line 64 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp5_ = trust_anchor_fixup (_tmp4_);
+#line 64 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (self->priv->_subject);
+#line 64 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_subject = _tmp5_;
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp6_ = subject_alt;
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp7_ = trust_anchor_fixup (_tmp6_);
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (self->priv->_subject_alt);
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_subject_alt = _tmp7_;
+#line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp8_ = g_strdup ("");
+#line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (self->priv->_datetime_added);
+#line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_datetime_added = _tmp8_;
+#line 71 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp9_ = g_strdup ("<!-- Remove the begin and end lines from the PEM output of\n" \
+"openssl to produce this format.  Alternatively, base64 encode a DER fo" \
+"rmat certificate -->");
+#line 71 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       cruft = _tmp9_;
+#line 74 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp10_ = self->priv->_ca_cert;
+#line 74 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp11_ = string_replace (_tmp10_, cruft, "");
+#line 74 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (self->priv->_ca_cert);
+#line 74 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_ca_cert = _tmp11_;
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (cruft);
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return self;
+#line 536 "moonshot-id.c"
+}
+
+
+TrustAnchor* trust_anchor_new (const gchar* ca_cert, const gchar* server_cert, const gchar* subject, const gchar* subject_alt) {
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return trust_anchor_construct (TYPE_TRUST_ANCHOR, ca_cert, server_cert, subject, subject_alt);
+#line 543 "moonshot-id.c"
+}
+
+
+TrustAnchor* trust_anchor_construct_empty (GType object_type) {
+       TrustAnchor * self = NULL;
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self = (TrustAnchor*) g_object_new (object_type, NULL);
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return self;
+#line 553 "moonshot-id.c"
+}
+
+
+TrustAnchor* trust_anchor_new_empty (void) {
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return trust_anchor_construct_empty (TYPE_TRUST_ANCHOR);
+#line 560 "moonshot-id.c"
+}
+
+
+gboolean trust_anchor_is_empty (TrustAnchor* self) {
+       gboolean result = FALSE;
+       gboolean _tmp0_ = FALSE;
+       const gchar* _tmp1_ = NULL;
+       const gchar* _tmp2_ = NULL;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (self != NULL, FALSE);
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1_ = trust_anchor_get_ca_cert (self);
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp2_ = _tmp1_;
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (g_strcmp0 (_tmp2_, "") == 0) {
+#line 577 "moonshot-id.c"
+               const gchar* _tmp3_ = NULL;
+               const gchar* _tmp4_ = NULL;
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp3_ = trust_anchor_get_server_cert (self);
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp4_ = _tmp3_;
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp0_ = g_strcmp0 (_tmp4_, "") == 0;
+#line 586 "moonshot-id.c"
+       } else {
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp0_ = FALSE;
+#line 590 "moonshot-id.c"
+       }
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       result = _tmp0_;
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return result;
+#line 596 "moonshot-id.c"
+}
+
+
+TrustAnchorTrustAnchorType trust_anchor_get_anchor_type (TrustAnchor* self) {
+       TrustAnchorTrustAnchorType result = 0;
+       TrustAnchorTrustAnchorType _tmp0_ = 0;
+       const gchar* _tmp1_ = NULL;
+       const gchar* _tmp2_ = NULL;
+#line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (self != NULL, 0);
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1_ = trust_anchor_get_server_cert (self);
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp2_ = _tmp1_;
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (g_strcmp0 (_tmp2_, "") != 0) {
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp0_ = TRUST_ANCHOR_TRUST_ANCHOR_TYPE_SERVER_CERT;
+#line 615 "moonshot-id.c"
+       } else {
+               TrustAnchorTrustAnchorType _tmp3_ = 0;
+               const gchar* _tmp4_ = NULL;
+               const gchar* _tmp5_ = NULL;
+#line 118 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp4_ = trust_anchor_get_ca_cert (self);
+#line 118 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp5_ = _tmp4_;
+#line 118 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               if (g_strcmp0 (_tmp5_, "") != 0) {
+#line 118 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                       _tmp3_ = TRUST_ANCHOR_TRUST_ANCHOR_TYPE_CA_CERT;
+#line 628 "moonshot-id.c"
+               } else {
+#line 118 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                       _tmp3_ = TRUST_ANCHOR_TRUST_ANCHOR_TYPE_EMPTY;
+#line 632 "moonshot-id.c"
+               }
+#line 118 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp0_ = _tmp3_;
+#line 636 "moonshot-id.c"
+       }
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       result = _tmp0_;
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return result;
+#line 642 "moonshot-id.c"
+}
+
+
+void trust_anchor_set_datetime_added (TrustAnchor* self, const gchar* datetime) {
+       const gchar* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_if_fail (self != NULL);
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_if_fail (datetime != NULL);
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = datetime;
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1_ = trust_anchor_fixup (_tmp0_);
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (self->priv->_datetime_added);
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_datetime_added = _tmp1_;
+#line 661 "moonshot-id.c"
+}
+
+
+gchar* trust_anchor_format_datetime_now (void) {
+       gchar* result = NULL;
+       GDateTime* now = NULL;
+       GDateTime* _tmp0_ = NULL;
+       gchar* dt = NULL;
+       gchar* _tmp1_ = NULL;
+#line 126 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = g_date_time_new_now_utc ();
+#line 126 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       now = _tmp0_;
+#line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1_ = g_date_time_format (now, "%b %d %T %Y %Z");
+#line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       dt = _tmp1_;
+#line 128 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       result = dt;
+#line 128 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_date_time_unref0 (now);
+#line 128 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return result;
+#line 685 "moonshot-id.c"
+}
+
+
+void trust_anchor_update_server_fingerprint (TrustAnchor* self, const gchar* fingerprint) {
+       const gchar* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+       gchar* ta_datetime_added = NULL;
+       gchar* _tmp2_ = NULL;
+#line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_if_fail (self != NULL);
+#line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_if_fail (fingerprint != NULL);
+#line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = fingerprint;
+#line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1_ = g_strdup (_tmp0_);
+#line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (self->priv->_server_cert);
+#line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_server_cert = _tmp1_;
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp2_ = trust_anchor_format_datetime_now ();
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       ta_datetime_added = _tmp2_;
+#line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       trust_anchor_set_datetime_added (self, ta_datetime_added);
+#line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (ta_datetime_added);
+#line 714 "moonshot-id.c"
+}
+
+
+gint trust_anchor_Compare (TrustAnchor* self, TrustAnchor* other) {
+       gint result = 0;
+       const gchar* _tmp0_ = NULL;
+       const gchar* _tmp1_ = NULL;
+       TrustAnchor* _tmp2_ = NULL;
+       const gchar* _tmp3_ = NULL;
+       const gchar* _tmp4_ = NULL;
+       const gchar* _tmp5_ = NULL;
+       const gchar* _tmp6_ = NULL;
+       TrustAnchor* _tmp7_ = NULL;
+       const gchar* _tmp8_ = NULL;
+       const gchar* _tmp9_ = NULL;
+       const gchar* _tmp10_ = NULL;
+       const gchar* _tmp11_ = NULL;
+       TrustAnchor* _tmp12_ = NULL;
+       const gchar* _tmp13_ = NULL;
+       const gchar* _tmp14_ = NULL;
+       const gchar* _tmp15_ = NULL;
+       const gchar* _tmp16_ = NULL;
+       TrustAnchor* _tmp17_ = NULL;
+       const gchar* _tmp18_ = NULL;
+       const gchar* _tmp19_ = NULL;
+#line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (self != NULL, 0);
+#line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (other != NULL, 0);
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = trust_anchor_get_ca_cert (self);
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1_ = _tmp0_;
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp2_ = other;
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp3_ = trust_anchor_get_ca_cert (_tmp2_);
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp4_ = _tmp3_;
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (g_strcmp0 (_tmp1_, _tmp4_) != 0) {
+#line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               result = 1;
+#line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               return result;
+#line 760 "moonshot-id.c"
+       }
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp5_ = trust_anchor_get_subject (self);
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp6_ = _tmp5_;
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp7_ = other;
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp8_ = trust_anchor_get_subject (_tmp7_);
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp9_ = _tmp8_;
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (g_strcmp0 (_tmp6_, _tmp9_) != 0) {
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               result = 1;
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               return result;
+#line 778 "moonshot-id.c"
+       }
+#line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp10_ = trust_anchor_get_subject_alt (self);
+#line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp11_ = _tmp10_;
+#line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp12_ = other;
+#line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp13_ = trust_anchor_get_subject_alt (_tmp12_);
+#line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp14_ = _tmp13_;
+#line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (g_strcmp0 (_tmp11_, _tmp14_) != 0) {
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               result = 1;
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               return result;
+#line 796 "moonshot-id.c"
+       }
+#line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp15_ = trust_anchor_get_server_cert (self);
+#line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp16_ = _tmp15_;
+#line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp17_ = other;
+#line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp18_ = trust_anchor_get_server_cert (_tmp17_);
+#line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp19_ = _tmp18_;
+#line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (g_strcmp0 (_tmp16_, _tmp19_) != 0) {
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               result = 1;
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               return result;
+#line 814 "moonshot-id.c"
+       }
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       result = 0;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return result;
+#line 820 "moonshot-id.c"
+}
+
+
+static gchar* string_chomp (const gchar* self) {
+       gchar* result = NULL;
+       gchar* _result_ = NULL;
+       gchar* _tmp0_ = NULL;
+       const gchar* _tmp1_ = NULL;
+#line 1199 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 1200 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp0_ = g_strdup (self);
+#line 1200 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _result_ = _tmp0_;
+#line 1201 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp1_ = _result_;
+#line 1201 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_strchomp (_tmp1_);
+#line 1202 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       result = _result_;
+#line 1202 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       return result;
+#line 843 "moonshot-id.c"
+}
+
+
+static const gchar* string_to_string (const gchar* self) {
+       const gchar* result = NULL;
+#line 1420 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 1421 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       result = self;
+#line 1421 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       return result;
+#line 855 "moonshot-id.c"
+}
+
+
+gchar* trust_anchor_get_expiration_date (TrustAnchor* self, gchar** err_out) {
+       gchar* _vala_err_out = NULL;
+       gchar* result = NULL;
+       const gchar* _tmp0_ = NULL;
+       const gchar* _tmp1_ = NULL;
+       gchar* cert = NULL;
+       const gchar* _tmp3_ = NULL;
+       const gchar* _tmp4_ = NULL;
+       gchar* _tmp5_ = NULL;
+       const gchar* _tmp6_ = NULL;
+       gchar* _tmp7_ = NULL;
+       gchar* _tmp8_ = NULL;
+       guchar* binary = NULL;
+       const gchar* _tmp9_ = NULL;
+       size_t _tmp10_;
+       guchar* _tmp11_ = NULL;
+       gint binary_length1 = 0;
+       gint _binary_size_ = 0;
+       MoonshotLogger* _tmp12_ = NULL;
+       const gchar* _tmp13_ = NULL;
+       gint _tmp14_ = 0;
+       gint _tmp15_ = 0;
+       guchar* _tmp16_ = NULL;
+       gint _tmp16__length1 = 0;
+       gchar* _tmp17_ = NULL;
+       gchar* _tmp18_ = NULL;
+       gchar buf[64] = {0};
+       gchar* err = NULL;
+       guchar* _tmp19_ = NULL;
+       gint _tmp19__length1 = 0;
+       guchar* _tmp20_ = NULL;
+       gint _tmp20__length1 = 0;
+       gchar* _tmp21_ = NULL;
+       gchar* _tmp22_ = NULL;
+       const gchar* _tmp23_ = NULL;
+       gchar* date = NULL;
+       gchar* _tmp31_ = NULL;
+       MoonshotLogger* _tmp32_ = NULL;
+       const gchar* _tmp33_ = NULL;
+       const gchar* _tmp34_ = NULL;
+       gchar* _tmp35_ = NULL;
+       gchar* _tmp36_ = NULL;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if ((&_vala_err_out) != NULL) {
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _g_free0 (_vala_err_out);
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _vala_err_out = NULL;
+#line 909 "moonshot-id.c"
+       }
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = trust_anchor_get_ca_cert (self);
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1_ = _tmp0_;
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (g_strcmp0 (_tmp1_, "") == 0) {
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               if ((&_vala_err_out) != NULL) {
+#line 919 "moonshot-id.c"
+                       gchar* _tmp2_ = NULL;
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                       _tmp2_ = g_strdup ("Trust anchor does not have a ca_certificate");
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                       _g_free0 (_vala_err_out);
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                       _vala_err_out = _tmp2_;
+#line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                       result = NULL;
+#line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                       if (err_out) {
+#line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               *err_out = _vala_err_out;
+#line 933 "moonshot-id.c"
+                       } else {
+#line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _g_free0 (_vala_err_out);
+#line 937 "moonshot-id.c"
+                       }
+#line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                       return result;
+#line 941 "moonshot-id.c"
+               }
+       }
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp3_ = trust_anchor_get_ca_cert (self);
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp4_ = _tmp3_;
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp5_ = g_strdup (_tmp4_);
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       cert = _tmp5_;
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp6_ = cert;
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp7_ = string_chomp (_tmp6_);
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp8_ = _tmp7_;
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (_tmp8_);
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp9_ = cert;
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp11_ = g_base64_decode (_tmp9_, &_tmp10_);
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       binary = _tmp11_;
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       binary_length1 = _tmp10_;
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _binary_size_ = binary_length1;
+#line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp12_ = id_card_logger;
+#line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp13_ = cert;
+#line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp14_ = strlen (_tmp13_);
+#line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp15_ = _tmp14_;
+#line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp16_ = binary;
+#line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp16__length1 = binary_length1;
+#line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp17_ = g_strdup_printf ("get_expiration_date: encoded length=%d; decoded length=%d", _tmp15_, _tmp16__length1);
+#line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp18_ = _tmp17_;
+#line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       moonshot_logger_trace (_tmp12_, _tmp18_, NULL);
+#line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (_tmp18_);
+#line 181 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp19_ = binary;
+#line 181 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp19__length1 = binary_length1;
+#line 181 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp20_ = binary;
+#line 181 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp20__length1 = binary_length1;
+#line 181 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp21_ = get_cert_valid_before (_tmp19_, _tmp20__length1, buf, 64);
+#line 181 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp22_ = g_strdup ((const gchar*) _tmp21_);
+#line 181 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       err = _tmp22_;
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp23_ = err;
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (g_strcmp0 (_tmp23_, "") != 0) {
+#line 1008 "moonshot-id.c"
+               MoonshotLogger* _tmp24_ = NULL;
+               const gchar* _tmp25_ = NULL;
+               const gchar* _tmp26_ = NULL;
+               gchar* _tmp27_ = NULL;
+               gchar* _tmp28_ = NULL;
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp24_ = id_card_logger;
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp25_ = err;
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp26_ = string_to_string (_tmp25_);
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp27_ = g_strconcat ("get_expiration_date: get_cert_valid_before returned '", _tmp26_, "'", NULL);
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp28_ = _tmp27_;
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               moonshot_logger_error (_tmp24_, _tmp28_, NULL);
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _g_free0 (_tmp28_);
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               if ((&_vala_err_out) != NULL) {
+#line 1030 "moonshot-id.c"
+                       const gchar* _tmp29_ = NULL;
+                       gchar* _tmp30_ = NULL;
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                       _tmp29_ = err;
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                       _tmp30_ = g_strdup (_tmp29_);
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                       _g_free0 (_vala_err_out);
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                       _vala_err_out = _tmp30_;
+#line 1041 "moonshot-id.c"
+               }
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               result = NULL;
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _g_free0 (err);
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               binary = (g_free (binary), NULL);
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _g_free0 (cert);
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               if (err_out) {
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                       *err_out = _vala_err_out;
+#line 1055 "moonshot-id.c"
+               } else {
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                       _g_free0 (_vala_err_out);
+#line 1059 "moonshot-id.c"
+               }
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               return result;
+#line 1063 "moonshot-id.c"
+       }
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp31_ = g_strdup ((const gchar*) buf);
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       date = _tmp31_;
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp32_ = id_card_logger;
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp33_ = date;
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp34_ = string_to_string (_tmp33_);
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp35_ = g_strconcat ("get_expiration_date: get_cert_valid_before returned '", _tmp34_, "'", NULL);
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp36_ = _tmp35_;
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       moonshot_logger_trace (_tmp32_, _tmp36_, NULL);
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (_tmp36_);
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       result = date;
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (err);
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       binary = (g_free (binary), NULL);
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (cert);
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (err_out) {
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               *err_out = _vala_err_out;
+#line 1095 "moonshot-id.c"
+       } else {
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _g_free0 (_vala_err_out);
+#line 1099 "moonshot-id.c"
+       }
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return result;
+#line 1103 "moonshot-id.c"
+}
+
+
+const gchar* trust_anchor_get_ca_cert (TrustAnchor* self) {
+       const gchar* result;
+       const gchar* _tmp0_ = NULL;
+#line 82 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = self->priv->_ca_cert;
+#line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       result = _tmp0_;
+#line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return result;
+#line 1118 "moonshot-id.c"
+}
+
+
+const gchar* trust_anchor_get_subject (TrustAnchor* self) {
+       const gchar* result;
+       const gchar* _tmp0_ = NULL;
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = self->priv->_subject;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       result = _tmp0_;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return result;
+#line 1133 "moonshot-id.c"
+}
+
+
+const gchar* trust_anchor_get_subject_alt (TrustAnchor* self) {
+       const gchar* result;
+       const gchar* _tmp0_ = NULL;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = self->priv->_subject_alt;
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       result = _tmp0_;
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return result;
+#line 1148 "moonshot-id.c"
+}
+
+
+const gchar* trust_anchor_get_server_cert (TrustAnchor* self) {
+       const gchar* result;
+       const gchar* _tmp0_ = NULL;
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = self->priv->_server_cert;
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       result = _tmp0_;
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return result;
+#line 1163 "moonshot-id.c"
+}
+
+
+const gchar* trust_anchor_get_datetime_added (TrustAnchor* self) {
+       const gchar* result;
+       const gchar* _tmp0_ = NULL;
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = self->priv->_datetime_added;
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       result = _tmp0_;
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return result;
+#line 1178 "moonshot-id.c"
+}
+
+
+static void trust_anchor_class_init (TrustAnchorClass * klass) {
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       trust_anchor_parent_class = g_type_class_peek_parent (klass);
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_type_class_add_private (klass, sizeof (TrustAnchorPrivate));
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       G_OBJECT_CLASS (klass)->get_property = _vala_trust_anchor_get_property;
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       G_OBJECT_CLASS (klass)->finalize = trust_anchor_finalize;
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_object_class_install_property (G_OBJECT_CLASS (klass), TRUST_ANCHOR_CA_CERT, g_param_spec_string ("ca-cert", "ca-cert", "ca-cert", NULL, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_object_class_install_property (G_OBJECT_CLASS (klass), TRUST_ANCHOR_SUBJECT, g_param_spec_string ("subject", "subject", "subject", NULL, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_object_class_install_property (G_OBJECT_CLASS (klass), TRUST_ANCHOR_SUBJECT_ALT, g_param_spec_string ("subject-alt", "subject-alt", "subject-alt", NULL, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_object_class_install_property (G_OBJECT_CLASS (klass), TRUST_ANCHOR_SERVER_CERT, g_param_spec_string ("server-cert", "server-cert", "server-cert", NULL, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_object_class_install_property (G_OBJECT_CLASS (klass), TRUST_ANCHOR_DATETIME_ADDED, g_param_spec_string ("datetime-added", "datetime-added", "datetime-added", NULL, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
+#line 1201 "moonshot-id.c"
+}
+
+
+static void trust_anchor_instance_init (TrustAnchor * self) {
+       gchar* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+       gchar* _tmp2_ = NULL;
+       gchar* _tmp3_ = NULL;
+       gchar* _tmp4_ = NULL;
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv = TRUST_ANCHOR_GET_PRIVATE (self);
+#line 51 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = g_strdup ("");
+#line 51 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_ca_cert = _tmp0_;
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1_ = g_strdup ("");
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_subject = _tmp1_;
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp2_ = g_strdup ("");
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_subject_alt = _tmp2_;
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp3_ = g_strdup ("");
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_server_cert = _tmp3_;
+#line 55 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp4_ = g_strdup ("");
+#line 55 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_datetime_added = _tmp4_;
+#line 1233 "moonshot-id.c"
+}
+
+
+static void trust_anchor_finalize (GObject* obj) {
+       TrustAnchor * self;
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_TRUST_ANCHOR, TrustAnchor);
+#line 51 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (self->priv->_ca_cert);
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (self->priv->_subject);
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (self->priv->_subject_alt);
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (self->priv->_server_cert);
+#line 55 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (self->priv->_datetime_added);
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       G_OBJECT_CLASS (trust_anchor_parent_class)->finalize (obj);
+#line 1253 "moonshot-id.c"
+}
+
+
+GType trust_anchor_get_type (void) {
+       static volatile gsize trust_anchor_type_id__volatile = 0;
+       if (g_once_init_enter (&trust_anchor_type_id__volatile)) {
+               static const GTypeInfo g_define_type_info = { sizeof (TrustAnchorClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) trust_anchor_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (TrustAnchor), 0, (GInstanceInitFunc) trust_anchor_instance_init, NULL };
+               GType trust_anchor_type_id;
+               trust_anchor_type_id = g_type_register_static (G_TYPE_OBJECT, "TrustAnchor", &g_define_type_info, 0);
+               g_once_init_leave (&trust_anchor_type_id__volatile, trust_anchor_type_id);
+       }
+       return trust_anchor_type_id__volatile;
+}
+
+
+static void _vala_trust_anchor_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) {
+       TrustAnchor * self;
+       self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_TRUST_ANCHOR, TrustAnchor);
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       switch (property_id) {
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               case TRUST_ANCHOR_CA_CERT:
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               g_value_set_string (value, trust_anchor_get_ca_cert (self));
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               break;
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               case TRUST_ANCHOR_SUBJECT:
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               g_value_set_string (value, trust_anchor_get_subject (self));
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               break;
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               case TRUST_ANCHOR_SUBJECT_ALT:
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               g_value_set_string (value, trust_anchor_get_subject_alt (self));
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               break;
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               case TRUST_ANCHOR_SERVER_CERT:
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               g_value_set_string (value, trust_anchor_get_server_cert (self));
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               break;
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               case TRUST_ANCHOR_DATETIME_ADDED:
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               g_value_set_string (value, trust_anchor_get_datetime_added (self));
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               break;
+#line 1304 "moonshot-id.c"
+               default:
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               break;
+#line 1310 "moonshot-id.c"
+       }
+}
+
+
+gint rule_Compare (Rule *self, Rule* other) {
+       gint result = 0;
+       const gchar* _tmp0_ = NULL;
+       Rule _tmp1_ = {0};
+       const gchar* _tmp2_ = NULL;
+       const gchar* _tmp3_ = NULL;
+       Rule _tmp4_ = {0};
+       const gchar* _tmp5_ = NULL;
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (other != NULL, 0);
+#line 203 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = (*self).pattern;
+#line 203 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1_ = *other;
+#line 203 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp2_ = _tmp1_.pattern;
+#line 203 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (g_strcmp0 (_tmp0_, _tmp2_) != 0) {
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               result = 1;
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               return result;
+#line 1337 "moonshot-id.c"
+       }
+#line 205 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp3_ = (*self).always_confirm;
+#line 205 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp4_ = *other;
+#line 205 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp5_ = _tmp4_.always_confirm;
+#line 205 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (g_strcmp0 (_tmp3_, _tmp5_) != 0) {
+#line 206 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               result = 1;
+#line 206 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               return result;
+#line 1351 "moonshot-id.c"
+       }
+#line 207 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       result = 0;
+#line 207 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return result;
+#line 1357 "moonshot-id.c"
+}
+
+
+void rule_copy (const Rule* self, Rule* dest) {
+       const gchar* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+       const gchar* _tmp2_ = NULL;
+       gchar* _tmp3_ = NULL;
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = (*self).pattern;
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1_ = g_strdup (_tmp0_);
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 ((*dest).pattern);
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       (*dest).pattern = _tmp1_;
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp2_ = (*self).always_confirm;
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp3_ = g_strdup (_tmp2_);
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 ((*dest).always_confirm);
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       (*dest).always_confirm = _tmp3_;
+#line 1382 "moonshot-id.c"
+}
+
+
+void rule_destroy (Rule* self) {
+#line 200 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 ((*self).pattern);
+#line 201 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 ((*self).always_confirm);
+#line 1391 "moonshot-id.c"
+}
+
+
+Rule* rule_dup (const Rule* self) {
+       Rule* dup;
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       dup = g_new0 (Rule, 1);
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       rule_copy (self, dup);
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return dup;
+#line 1403 "moonshot-id.c"
+}
+
+
+void rule_free (Rule* self) {
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       rule_destroy (self);
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_free (self);
+#line 1412 "moonshot-id.c"
+}
+
+
+GType rule_get_type (void) {
+       static volatile gsize rule_type_id__volatile = 0;
+       if (g_once_init_enter (&rule_type_id__volatile)) {
+               GType rule_type_id;
+               rule_type_id = g_boxed_type_register_static ("Rule", (GBoxedCopyFunc) rule_dup, (GBoxedFreeFunc) rule_free);
+               g_once_init_leave (&rule_type_id__volatile, rule_type_id);
+       }
+       return rule_type_id__volatile;
+}
+
+
+GType id_card_diff_flags_get_type (void) {
+       static volatile gsize id_card_diff_flags_type_id__volatile = 0;
+       if (g_once_init_enter (&id_card_diff_flags_type_id__volatile)) {
+               static const GEnumValue values[] = {{ID_CARD_DIFF_FLAGS_DISPLAY_NAME, "ID_CARD_DIFF_FLAGS_DISPLAY_NAME", "display-name"}, {ID_CARD_DIFF_FLAGS_USERNAME, "ID_CARD_DIFF_FLAGS_USERNAME", "username"}, {ID_CARD_DIFF_FLAGS_PASSWORD, "ID_CARD_DIFF_FLAGS_PASSWORD", "password"}, {ID_CARD_DIFF_FLAGS_ISSUER, "ID_CARD_DIFF_FLAGS_ISSUER", "issuer"}, {ID_CARD_DIFF_FLAGS_RULES, "ID_CARD_DIFF_FLAGS_RULES", "rules"}, {ID_CARD_DIFF_FLAGS_SERVICES, "ID_CARD_DIFF_FLAGS_SERVICES", "services"}, {ID_CARD_DIFF_FLAGS_TRUST_ANCHOR, "ID_CARD_DIFF_FLAGS_TRUST_ANCHOR", "trust-anchor"}, {0, NULL, NULL}};
+               GType id_card_diff_flags_type_id;
+               id_card_diff_flags_type_id = g_enum_register_static ("IdCardDiffFlags", values);
+               g_once_init_leave (&id_card_diff_flags_type_id__volatile, id_card_diff_flags_type_id);
+       }
+       return id_card_diff_flags_type_id__volatile;
+}
+
+
+static void _vala_Rule_array_free (Rule* array, gint array_length) {
+#line 265 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (array != NULL) {
+#line 1442 "moonshot-id.c"
+               int i;
+#line 265 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               for (i = 0; i < array_length; i = i + 1) {
+#line 265 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                       rule_destroy (&array[i]);
+#line 1448 "moonshot-id.c"
+               }
+       }
+#line 265 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_free (array);
+#line 1453 "moonshot-id.c"
+}
+
+
+static void id_card_update_nai (IdCard* self) {
+       const gchar* _tmp0_ = NULL;
+       const gchar* _tmp1_ = NULL;
+       gchar* _tmp2_ = NULL;
+       gchar* _tmp3_ = NULL;
+       const gchar* _tmp4_ = NULL;
+       const gchar* _tmp5_ = NULL;
+       gchar* _tmp6_ = NULL;
+#line 242 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_if_fail (self != NULL);
+#line 243 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = id_card_get_username (self);
+#line 243 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1_ = _tmp0_;
+#line 243 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp2_ = g_strconcat (_tmp1_, "@", NULL);
+#line 243 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp3_ = _tmp2_;
+#line 243 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp4_ = id_card_get_issuer (self);
+#line 243 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp5_ = _tmp4_;
+#line 243 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp6_ = g_strconcat (_tmp3_, _tmp5_, NULL);
+#line 243 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (self->priv->_nai);
+#line 243 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_nai = _tmp6_;
+#line 243 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (_tmp3_);
+#line 1487 "moonshot-id.c"
+}
+
+
+static gchar* _vala_g_strjoinv (const gchar* separator, gchar** str_array, int str_array_length1) {
+       gchar* result = NULL;
+       const gchar* _tmp0_ = NULL;
+       gboolean _tmp1_ = FALSE;
+       gboolean _tmp2_ = FALSE;
+       gchar** _tmp3_ = NULL;
+       gint _tmp3__length1 = 0;
+#line 1062 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp0_ = separator;
+#line 1062 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       if (_tmp0_ == NULL) {
+#line 1063 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               separator = "";
+#line 1504 "moonshot-id.c"
+       }
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp3_ = str_array;
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp3__length1 = str_array_length1;
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       if (_tmp3_ != NULL) {
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp2_ = TRUE;
+#line 1514 "moonshot-id.c"
+       } else {
+               gchar** _tmp4_ = NULL;
+               gint _tmp4__length1 = 0;
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp4_ = str_array;
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp4__length1 = str_array_length1;
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp2_ = _tmp4__length1 > 0;
+#line 1524 "moonshot-id.c"
+       }
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       if (_tmp2_) {
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp1_ = TRUE;
+#line 1530 "moonshot-id.c"
+       } else {
+               gboolean _tmp5_ = FALSE;
+               gchar** _tmp6_ = NULL;
+               gint _tmp6__length1 = 0;
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp6_ = str_array;
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp6__length1 = str_array_length1;
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               if (_tmp6__length1 == -1) {
+#line 1541 "moonshot-id.c"
+                       gchar** _tmp7_ = NULL;
+                       gint _tmp7__length1 = 0;
+                       const gchar* _tmp8_ = NULL;
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       _tmp7_ = str_array;
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       _tmp7__length1 = str_array_length1;
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       _tmp8_ = _tmp7_[0];
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       _tmp5_ = _tmp8_ != NULL;
+#line 1553 "moonshot-id.c"
+               } else {
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       _tmp5_ = FALSE;
+#line 1557 "moonshot-id.c"
+               }
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp1_ = _tmp5_;
+#line 1561 "moonshot-id.c"
+       }
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       if (_tmp1_) {
+#line 1565 "moonshot-id.c"
+               gint i = 0;
+               gsize len = 0UL;
+               gint _tmp31_ = 0;
+               gint _tmp33_ = 0;
+               gint _tmp34_ = 0;
+               gsize _tmp35_ = 0UL;
+               const gchar* _tmp36_ = NULL;
+               gint _tmp37_ = 0;
+               gint _tmp38_ = 0;
+               gint _tmp39_ = 0;
+               const gchar* res = NULL;
+               gsize _tmp40_ = 0UL;
+               void* _tmp41_ = NULL;
+               void* ptr = NULL;
+               const gchar* _tmp42_ = NULL;
+               gchar** _tmp43_ = NULL;
+               gint _tmp43__length1 = 0;
+               const gchar* _tmp44_ = NULL;
+               void* _tmp45_ = NULL;
+               const gchar* _tmp62_ = NULL;
+#line 1067 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               len = (gsize) 1;
+#line 1588 "moonshot-id.c"
+               {
+                       gboolean _tmp9_ = FALSE;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       i = 0;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       _tmp9_ = TRUE;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       while (TRUE) {
+#line 1597 "moonshot-id.c"
+                               gboolean _tmp11_ = FALSE;
+                               gboolean _tmp12_ = FALSE;
+                               gchar** _tmp13_ = NULL;
+                               gint _tmp13__length1 = 0;
+                               gint _tmp21_ = 0;
+                               gchar** _tmp22_ = NULL;
+                               gint _tmp22__length1 = 0;
+                               gint _tmp23_ = 0;
+                               const gchar* _tmp24_ = NULL;
+                               gsize _tmp30_ = 0UL;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               if (!_tmp9_) {
+#line 1610 "moonshot-id.c"
+                                       gint _tmp10_ = 0;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp10_ = i;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       i = _tmp10_ + 1;
+#line 1616 "moonshot-id.c"
+                               }
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp9_ = FALSE;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp13_ = str_array;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp13__length1 = str_array_length1;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               if (_tmp13__length1 != -1) {
+#line 1626 "moonshot-id.c"
+                                       gint _tmp14_ = 0;
+                                       gchar** _tmp15_ = NULL;
+                                       gint _tmp15__length1 = 0;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp14_ = i;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp15_ = str_array;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp15__length1 = str_array_length1;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp12_ = _tmp14_ < _tmp15__length1;
+#line 1638 "moonshot-id.c"
+                               } else {
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp12_ = FALSE;
+#line 1642 "moonshot-id.c"
+                               }
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               if (_tmp12_) {
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp11_ = TRUE;
+#line 1648 "moonshot-id.c"
+                               } else {
+                                       gboolean _tmp16_ = FALSE;
+                                       gchar** _tmp17_ = NULL;
+                                       gint _tmp17__length1 = 0;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp17_ = str_array;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp17__length1 = str_array_length1;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       if (_tmp17__length1 == -1) {
+#line 1659 "moonshot-id.c"
+                                               gchar** _tmp18_ = NULL;
+                                               gint _tmp18__length1 = 0;
+                                               gint _tmp19_ = 0;
+                                               const gchar* _tmp20_ = NULL;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                               _tmp18_ = str_array;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                               _tmp18__length1 = str_array_length1;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                               _tmp19_ = i;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                               _tmp20_ = _tmp18_[_tmp19_];
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                               _tmp16_ = _tmp20_ != NULL;
+#line 1674 "moonshot-id.c"
+                                       } else {
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                               _tmp16_ = FALSE;
+#line 1678 "moonshot-id.c"
+                                       }
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp11_ = _tmp16_;
+#line 1682 "moonshot-id.c"
+                               }
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               if (!_tmp11_) {
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       break;
+#line 1688 "moonshot-id.c"
+                               }
+#line 1069 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp22_ = str_array;
+#line 1069 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp22__length1 = str_array_length1;
+#line 1069 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp23_ = i;
+#line 1069 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp24_ = _tmp22_[_tmp23_];
+#line 1069 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               if (_tmp24_ != NULL) {
+#line 1700 "moonshot-id.c"
+                                       gchar** _tmp25_ = NULL;
+                                       gint _tmp25__length1 = 0;
+                                       gint _tmp26_ = 0;
+                                       const gchar* _tmp27_ = NULL;
+                                       gint _tmp28_ = 0;
+                                       gint _tmp29_ = 0;
+#line 1069 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp25_ = str_array;
+#line 1069 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp25__length1 = str_array_length1;
+#line 1069 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp26_ = i;
+#line 1069 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp27_ = _tmp25_[_tmp26_];
+#line 1069 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp28_ = strlen ((const gchar*) _tmp27_);
+#line 1069 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp29_ = _tmp28_;
+#line 1069 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp21_ = _tmp29_;
+#line 1721 "moonshot-id.c"
+                               } else {
+#line 1069 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp21_ = 0;
+#line 1725 "moonshot-id.c"
+                               }
+#line 1069 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp30_ = len;
+#line 1069 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               len = _tmp30_ + _tmp21_;
+#line 1731 "moonshot-id.c"
+                       }
+               }
+#line 1071 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp31_ = i;
+#line 1071 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               if (_tmp31_ == 0) {
+#line 1738 "moonshot-id.c"
+                       gchar* _tmp32_ = NULL;
+#line 1072 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       _tmp32_ = g_strdup ("");
+#line 1072 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       result = _tmp32_;
+#line 1072 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       return result;
+#line 1746 "moonshot-id.c"
+               }
+#line 1074 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp33_ = i;
+#line 1074 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               str_array_length1 = _tmp33_;
+#line 1074 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp34_ = str_array_length1;
+#line 1075 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp35_ = len;
+#line 1075 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp36_ = separator;
+#line 1075 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp37_ = strlen ((const gchar*) _tmp36_);
+#line 1075 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp38_ = _tmp37_;
+#line 1075 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp39_ = i;
+#line 1075 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               len = _tmp35_ + (_tmp38_ * (_tmp39_ - 1));
+#line 1077 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp40_ = len;
+#line 1077 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp41_ = g_malloc (_tmp40_);
+#line 1077 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               res = _tmp41_;
+#line 1078 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp42_ = res;
+#line 1078 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp43_ = str_array;
+#line 1078 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp43__length1 = str_array_length1;
+#line 1078 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp44_ = _tmp43_[0];
+#line 1078 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp45_ = g_stpcpy ((void*) _tmp42_, (const gchar*) _tmp44_);
+#line 1078 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               ptr = _tmp45_;
+#line 1784 "moonshot-id.c"
+               {
+                       gboolean _tmp46_ = FALSE;
+#line 1079 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       i = 1;
+#line 1079 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       _tmp46_ = TRUE;
+#line 1079 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       while (TRUE) {
+#line 1793 "moonshot-id.c"
+                               gint _tmp48_ = 0;
+                               gchar** _tmp49_ = NULL;
+                               gint _tmp49__length1 = 0;
+                               void* _tmp50_ = NULL;
+                               const gchar* _tmp51_ = NULL;
+                               void* _tmp52_ = NULL;
+                               const gchar* _tmp53_ = NULL;
+                               gchar** _tmp54_ = NULL;
+                               gint _tmp54__length1 = 0;
+                               gint _tmp55_ = 0;
+                               const gchar* _tmp56_ = NULL;
+                               void* _tmp60_ = NULL;
+                               void* _tmp61_ = NULL;
+#line 1079 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               if (!_tmp46_) {
+#line 1809 "moonshot-id.c"
+                                       gint _tmp47_ = 0;
+#line 1079 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp47_ = i;
+#line 1079 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       i = _tmp47_ + 1;
+#line 1815 "moonshot-id.c"
+                               }
+#line 1079 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp46_ = FALSE;
+#line 1079 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp48_ = i;
+#line 1079 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp49_ = str_array;
+#line 1079 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp49__length1 = str_array_length1;
+#line 1079 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               if (!(_tmp48_ < _tmp49__length1)) {
+#line 1079 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       break;
+#line 1829 "moonshot-id.c"
+                               }
+#line 1080 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp50_ = ptr;
+#line 1080 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp51_ = separator;
+#line 1080 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp52_ = g_stpcpy (_tmp50_, (const gchar*) _tmp51_);
+#line 1080 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               ptr = _tmp52_;
+#line 1081 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp54_ = str_array;
+#line 1081 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp54__length1 = str_array_length1;
+#line 1081 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp55_ = i;
+#line 1081 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp56_ = _tmp54_[_tmp55_];
+#line 1081 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               if (_tmp56_ != NULL) {
+#line 1849 "moonshot-id.c"
+                                       gchar** _tmp57_ = NULL;
+                                       gint _tmp57__length1 = 0;
+                                       gint _tmp58_ = 0;
+                                       const gchar* _tmp59_ = NULL;
+#line 1081 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp57_ = str_array;
+#line 1081 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp57__length1 = str_array_length1;
+#line 1081 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp58_ = i;
+#line 1081 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp59_ = _tmp57_[_tmp58_];
+#line 1081 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp53_ = (const gchar*) _tmp59_;
+#line 1864 "moonshot-id.c"
+                               } else {
+#line 1081 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp53_ = "";
+#line 1868 "moonshot-id.c"
+                               }
+#line 1081 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp60_ = ptr;
+#line 1081 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp61_ = g_stpcpy (_tmp60_, _tmp53_);
+#line 1081 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               ptr = _tmp61_;
+#line 1876 "moonshot-id.c"
+                       }
+               }
+#line 1084 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp62_ = res;
+#line 1084 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               res = NULL;
+#line 1084 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               result = (gchar*) _tmp62_;
+#line 1084 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               return result;
+#line 1887 "moonshot-id.c"
+       } else {
+               gchar* _tmp63_ = NULL;
+#line 1086 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp63_ = g_strdup ("");
+#line 1086 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               result = _tmp63_;
+#line 1086 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               return result;
+#line 1896 "moonshot-id.c"
+       }
+}
+
+
+gchar* id_card_get_services_string (IdCard* self, const gchar* sep) {
+       gchar* result = NULL;
+       GeeArrayList* _tmp0_ = NULL;
+       gboolean _tmp1_ = FALSE;
+       gboolean _tmp2_ = FALSE;
+       gchar** svcs = NULL;
+       GeeArrayList* _tmp4_ = NULL;
+       gint _tmp5_ = 0;
+       gint _tmp6_ = 0;
+       gchar** _tmp7_ = NULL;
+       gint svcs_length1 = 0;
+       gint _svcs_size_ = 0;
+       const gchar* _tmp20_ = NULL;
+       gchar** _tmp21_ = NULL;
+       gint _tmp21__length1 = 0;
+       gchar* _tmp22_ = NULL;
+#line 278 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 278 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (sep != NULL, NULL);
+#line 279 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = self->priv->_services;
+#line 279 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1_ = gee_collection_get_is_empty ((GeeCollection*) _tmp0_);
+#line 279 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp2_ = _tmp1_;
+#line 279 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (_tmp2_) {
+#line 1929 "moonshot-id.c"
+               gchar* _tmp3_ = NULL;
+#line 280 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp3_ = g_strdup ("");
+#line 280 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               result = _tmp3_;
+#line 280 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               return result;
+#line 1937 "moonshot-id.c"
+       }
+#line 290 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp4_ = self->priv->_services;
+#line 290 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp5_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp4_);
+#line 290 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp6_ = _tmp5_;
+#line 290 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp7_ = g_new0 (gchar*, _tmp6_ + 1);
+#line 290 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       svcs = _tmp7_;
+#line 290 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       svcs_length1 = _tmp6_;
+#line 290 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _svcs_size_ = svcs_length1;
+#line 1953 "moonshot-id.c"
+       {
+               gint i = 0;
+#line 291 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               i = 0;
+#line 1958 "moonshot-id.c"
+               {
+                       gboolean _tmp8_ = FALSE;
+#line 291 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                       _tmp8_ = TRUE;
+#line 291 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                       while (TRUE) {
+#line 1965 "moonshot-id.c"
+                               gint _tmp10_ = 0;
+                               GeeArrayList* _tmp11_ = NULL;
+                               gint _tmp12_ = 0;
+                               gint _tmp13_ = 0;
+                               gchar** _tmp14_ = NULL;
+                               gint _tmp14__length1 = 0;
+                               gint _tmp15_ = 0;
+                               GeeArrayList* _tmp16_ = NULL;
+                               gint _tmp17_ = 0;
+                               gpointer _tmp18_ = NULL;
+                               gchar* _tmp19_ = NULL;
+#line 291 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               if (!_tmp8_) {
+#line 1979 "moonshot-id.c"
+                                       gint _tmp9_ = 0;
+#line 291 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                                       _tmp9_ = i;
+#line 291 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                                       i = _tmp9_ + 1;
+#line 1985 "moonshot-id.c"
+                               }
+#line 291 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp8_ = FALSE;
+#line 291 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp10_ = i;
+#line 291 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp11_ = self->priv->_services;
+#line 291 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp12_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp11_);
+#line 291 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp13_ = _tmp12_;
+#line 291 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               if (!(_tmp10_ < _tmp13_)) {
+#line 291 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                                       break;
+#line 2001 "moonshot-id.c"
+                               }
+#line 292 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp14_ = svcs;
+#line 292 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp14__length1 = svcs_length1;
+#line 292 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp15_ = i;
+#line 292 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp16_ = self->priv->_services;
+#line 292 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp17_ = i;
+#line 292 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp18_ = gee_abstract_list_get ((GeeAbstractList*) _tmp16_, _tmp17_);
+#line 292 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _g_free0 (_tmp14_[_tmp15_]);
+#line 292 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp14_[_tmp15_] = (gchar*) _tmp18_;
+#line 292 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp19_ = _tmp14_[_tmp15_];
+#line 2021 "moonshot-id.c"
+                       }
+               }
+       }
+#line 295 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp20_ = sep;
+#line 295 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp21_ = svcs;
+#line 295 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp21__length1 = svcs_length1;
+#line 295 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp22_ = _vala_g_strjoinv (_tmp20_, _tmp21_, _tmp21__length1);
+#line 295 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       result = _tmp22_;
+#line 295 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       svcs = (_vala_array_free (svcs, svcs_length1, (GDestroyNotify) g_free), NULL);
+#line 295 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return result;
+#line 2039 "moonshot-id.c"
+}
+
+
+void id_card_update_services (IdCard* self, gchar** services, int services_length1) {
+       GeeArrayList* _tmp0_ = NULL;
+       gchar** _tmp1_ = NULL;
+       gint _tmp1__length1 = 0;
+#line 298 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_if_fail (self != NULL);
+#line 299 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = self->priv->_services;
+#line 299 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       gee_abstract_collection_clear ((GeeAbstractCollection*) _tmp0_);
+#line 304 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1_ = services;
+#line 304 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1__length1 = services_length1;
+#line 304 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (_tmp1_ != NULL) {
+#line 2059 "moonshot-id.c"
+               gchar** _tmp2_ = NULL;
+               gint _tmp2__length1 = 0;
+#line 305 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp2_ = services;
+#line 305 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp2__length1 = services_length1;
+#line 2066 "moonshot-id.c"
+               {
+                       gchar** s_collection = NULL;
+                       gint s_collection_length1 = 0;
+                       gint _s_collection_size_ = 0;
+                       gint s_it = 0;
+#line 305 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                       s_collection = _tmp2_;
+#line 305 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                       s_collection_length1 = _tmp2__length1;
+#line 305 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                       for (s_it = 0; s_it < _tmp2__length1; s_it = s_it + 1) {
+#line 2078 "moonshot-id.c"
+                               gchar* _tmp3_ = NULL;
+                               gchar* s = NULL;
+#line 305 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp3_ = g_strdup (s_collection[s_it]);
+#line 305 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               s = _tmp3_;
+#line 2085 "moonshot-id.c"
+                               {
+                                       GeeArrayList* _tmp4_ = NULL;
+                                       const gchar* _tmp5_ = NULL;
+#line 306 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                                       _tmp4_ = self->priv->_services;
+#line 306 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                                       _tmp5_ = s;
+#line 306 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                                       gee_abstract_collection_add ((GeeAbstractCollection*) _tmp4_, _tmp5_);
+#line 305 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                                       _g_free0 (s);
+#line 2097 "moonshot-id.c"
+                               }
+                       }
+               }
+       }
+}
+
+
+void id_card_update_services_from_list (IdCard* self, GeeArrayList* services) {
+       GeeArrayList* _tmp0_ = NULL;
+       GeeArrayList* _tmp1_ = NULL;
+       GeeArrayList* _tmp2_ = NULL;
+       GeeArrayList* _tmp3_ = NULL;
+#line 311 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_if_fail (self != NULL);
+#line 311 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_if_fail (services != NULL);
+#line 312 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = services;
+#line 312 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1_ = self->priv->_services;
+#line 312 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (_tmp0_ == _tmp1_) {
+#line 314 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               return;
+#line 2122 "moonshot-id.c"
+       }
+#line 317 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp2_ = self->priv->_services;
+#line 317 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       gee_abstract_collection_clear ((GeeAbstractCollection*) _tmp2_);
+#line 319 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp3_ = services;
+#line 319 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (_tmp3_ != NULL) {
+#line 2132 "moonshot-id.c"
+               GeeArrayList* _tmp4_ = NULL;
+               GeeArrayList* _tmp5_ = NULL;
+#line 320 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp4_ = self->priv->_services;
+#line 320 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp5_ = services;
+#line 320 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               gee_array_list_add_all (_tmp4_, (GeeCollection*) _tmp5_);
+#line 2141 "moonshot-id.c"
+       }
+}
+
+
+static gpointer _g_object_ref0 (gpointer self) {
+#line 336 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return self ? g_object_ref (self) : NULL;
+#line 2149 "moonshot-id.c"
+}
+
+
+void id_card_set_trust_anchor_from_store (IdCard* self, TrustAnchor* ta) {
+       TrustAnchor* _tmp0_ = NULL;
+       TrustAnchor* _tmp1_ = NULL;
+#line 335 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_if_fail (self != NULL);
+#line 335 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_if_fail (ta != NULL);
+#line 336 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = ta;
+#line 336 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1_ = _g_object_ref0 (_tmp0_);
+#line 336 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_object_unref0 (self->priv->_trust_anchor);
+#line 336 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_trust_anchor = _tmp1_;
+#line 2168 "moonshot-id.c"
+}
+
+
+void id_card_clear_trust_anchor (IdCard* self) {
+       TrustAnchor* _tmp0_ = NULL;
+#line 339 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_if_fail (self != NULL);
+#line 340 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = trust_anchor_new_empty ();
+#line 340 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_object_unref0 (self->priv->_trust_anchor);
+#line 340 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_trust_anchor = _tmp0_;
+#line 2182 "moonshot-id.c"
+}
+
+
+gchar* id_card_generate_uuid (void) {
+       gchar* result = NULL;
+       guint32 rand1 = 0U;
+       guint32 _tmp0_ = 0U;
+       guint32 rand2 = 0U;
+       guint32 _tmp1_ = 0U;
+       gchar* _tmp2_ = NULL;
+       gchar* _tmp3_ = NULL;
+       gchar* _tmp4_ = NULL;
+       gchar* _tmp5_ = NULL;
+#line 354 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = g_random_int ();
+#line 354 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       rand1 = _tmp0_;
+#line 355 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1_ = g_random_int ();
+#line 355 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       rand2 = _tmp1_;
+#line 356 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp2_ = trust_anchor_format_datetime_now ();
+#line 356 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp3_ = _tmp2_;
+#line 356 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp4_ = g_strdup_printf ("%08X.%08X::%s", (guint) rand1, (guint) rand2, _tmp3_);
+#line 356 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp5_ = _tmp4_;
+#line 356 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (_tmp3_);
+#line 356 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       result = _tmp5_;
+#line 356 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return result;
+#line 2218 "moonshot-id.c"
+}
+
+
+gboolean id_card_is_no_identity (IdCard* self) {
+       gboolean result = FALSE;
+       const gchar* _tmp0_ = NULL;
+#line 359 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (self != NULL, FALSE);
+#line 361 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = self->priv->_display_name;
+#line 361 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       result = g_strcmp0 (_tmp0_, ID_CARD_NO_IDENTITY) == 0;
+#line 361 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return result;
+#line 2233 "moonshot-id.c"
+}
+
+
+gint id_card_Compare (IdCard* self, IdCard* other) {
+       gint result = 0;
+       gint diff = 0;
+       const gchar* _tmp0_ = NULL;
+       IdCard* _tmp1_ = NULL;
+       const gchar* _tmp2_ = NULL;
+       const gchar* _tmp4_ = NULL;
+       const gchar* _tmp5_ = NULL;
+       IdCard* _tmp6_ = NULL;
+       const gchar* _tmp7_ = NULL;
+       const gchar* _tmp8_ = NULL;
+       const gchar* _tmp10_ = NULL;
+       const gchar* _tmp11_ = NULL;
+       IdCard* _tmp12_ = NULL;
+       const gchar* _tmp13_ = NULL;
+       const gchar* _tmp14_ = NULL;
+       const gchar* _tmp16_ = NULL;
+       const gchar* _tmp17_ = NULL;
+       IdCard* _tmp18_ = NULL;
+       const gchar* _tmp19_ = NULL;
+       const gchar* _tmp20_ = NULL;
+       Rule* _tmp22_ = NULL;
+       gint _tmp22__length1 = 0;
+       Rule* _tmp23_ = NULL;
+       gint _tmp23__length1 = 0;
+       IdCard* _tmp24_ = NULL;
+       Rule* _tmp25_ = NULL;
+       gint _tmp25__length1 = 0;
+       Rule* _tmp26_ = NULL;
+       gint _tmp26__length1 = 0;
+       gint _tmp27_ = 0;
+       GeeArrayList* _tmp29_ = NULL;
+       IdCard* _tmp30_ = NULL;
+       GeeArrayList* _tmp31_ = NULL;
+       gint _tmp32_ = 0;
+       TrustAnchor* _tmp34_ = NULL;
+       TrustAnchor* _tmp35_ = NULL;
+       IdCard* _tmp36_ = NULL;
+       TrustAnchor* _tmp37_ = NULL;
+       TrustAnchor* _tmp38_ = NULL;
+       gint _tmp39_ = 0;
+       gboolean _tmp41_ = FALSE;
+       const gchar* _tmp42_ = NULL;
+       IdCard* _tmp43_ = NULL;
+       const gchar* _tmp44_ = NULL;
+#line 374 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (self != NULL, 0);
+#line 374 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (other != NULL, 0);
+#line 376 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       diff = 0;
+#line 377 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = self->priv->_display_name;
+#line 377 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1_ = other;
+#line 377 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp2_ = _tmp1_->priv->_display_name;
+#line 377 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (g_strcmp0 (_tmp0_, _tmp2_) != 0) {
+#line 2296 "moonshot-id.c"
+               gint _tmp3_ = 0;
+#line 378 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp3_ = diff;
+#line 378 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               diff = _tmp3_ | (1 << ID_CARD_DIFF_FLAGS_DISPLAY_NAME);
+#line 2302 "moonshot-id.c"
+       }
+#line 380 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp4_ = id_card_get_username (self);
+#line 380 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp5_ = _tmp4_;
+#line 380 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp6_ = other;
+#line 380 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp7_ = id_card_get_username (_tmp6_);
+#line 380 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp8_ = _tmp7_;
+#line 380 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (g_strcmp0 (_tmp5_, _tmp8_) != 0) {
+#line 2316 "moonshot-id.c"
+               gint _tmp9_ = 0;
+#line 381 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp9_ = diff;
+#line 381 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               diff = _tmp9_ | (1 << ID_CARD_DIFF_FLAGS_USERNAME);
+#line 2322 "moonshot-id.c"
+       }
+#line 383 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp10_ = id_card_get_password (self);
+#line 383 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp11_ = _tmp10_;
+#line 383 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp12_ = other;
+#line 383 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp13_ = id_card_get_password (_tmp12_);
+#line 383 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp14_ = _tmp13_;
+#line 383 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (g_strcmp0 (_tmp11_, _tmp14_) != 0) {
+#line 2336 "moonshot-id.c"
+               gint _tmp15_ = 0;
+#line 384 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp15_ = diff;
+#line 384 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               diff = _tmp15_ | (1 << ID_CARD_DIFF_FLAGS_PASSWORD);
+#line 2342 "moonshot-id.c"
+       }
+#line 386 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp16_ = id_card_get_issuer (self);
+#line 386 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp17_ = _tmp16_;
+#line 386 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp18_ = other;
+#line 386 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp19_ = id_card_get_issuer (_tmp18_);
+#line 386 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp20_ = _tmp19_;
+#line 386 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (g_strcmp0 (_tmp17_, _tmp20_) != 0) {
+#line 2356 "moonshot-id.c"
+               gint _tmp21_ = 0;
+#line 387 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp21_ = diff;
+#line 387 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               diff = _tmp21_ | (1 << ID_CARD_DIFF_FLAGS_ISSUER);
+#line 2362 "moonshot-id.c"
+       }
+#line 389 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp22_ = id_card_get_rules (self, &_tmp22__length1);
+#line 389 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp23_ = _tmp22_;
+#line 389 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp23__length1 = _tmp22__length1;
+#line 389 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp24_ = other;
+#line 389 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp25_ = id_card_get_rules (_tmp24_, &_tmp25__length1);
+#line 389 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp26_ = _tmp25_;
+#line 389 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp26__length1 = _tmp25__length1;
+#line 389 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp27_ = CompareRules (_tmp23_, _tmp23__length1, _tmp26_, _tmp26__length1);
+#line 389 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (_tmp27_ != 0) {
+#line 2382 "moonshot-id.c"
+               gint _tmp28_ = 0;
+#line 390 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp28_ = diff;
+#line 390 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               diff = _tmp28_ | (1 << ID_CARD_DIFF_FLAGS_RULES);
+#line 2388 "moonshot-id.c"
+       }
+#line 392 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp29_ = self->priv->_services;
+#line 392 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp30_ = other;
+#line 392 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp31_ = _tmp30_->priv->_services;
+#line 392 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp32_ = CompareStringArrayList (_tmp29_, _tmp31_);
+#line 392 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (_tmp32_ != 0) {
+#line 2400 "moonshot-id.c"
+               gint _tmp33_ = 0;
+#line 393 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp33_ = diff;
+#line 393 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               diff = _tmp33_ | (1 << ID_CARD_DIFF_FLAGS_SERVICES);
+#line 2406 "moonshot-id.c"
+       }
+#line 395 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp34_ = id_card_get_trust_anchor (self);
+#line 395 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp35_ = _tmp34_;
+#line 395 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp36_ = other;
+#line 395 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp37_ = id_card_get_trust_anchor (_tmp36_);
+#line 395 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp38_ = _tmp37_;
+#line 395 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp39_ = trust_anchor_Compare (_tmp35_, _tmp38_);
+#line 395 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (_tmp39_ != 0) {
+#line 2422 "moonshot-id.c"
+               gint _tmp40_ = 0;
+#line 396 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp40_ = diff;
+#line 396 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               diff = _tmp40_ | (1 << ID_CARD_DIFF_FLAGS_TRUST_ANCHOR);
+#line 2428 "moonshot-id.c"
+       }
+#line 399 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp42_ = self->priv->_display_name;
+#line 399 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp43_ = other;
+#line 399 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp44_ = _tmp43_->priv->_display_name;
+#line 399 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (g_strcmp0 (_tmp42_, _tmp44_) == 0) {
+#line 2438 "moonshot-id.c"
+               gint _tmp45_ = 0;
+#line 399 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp45_ = diff;
+#line 399 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp41_ = _tmp45_ != 0;
+#line 2444 "moonshot-id.c"
+       } else {
+#line 399 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp41_ = FALSE;
+#line 2448 "moonshot-id.c"
+       }
+#line 399 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (_tmp41_) {
+#line 2452 "moonshot-id.c"
+               MoonshotLogger* _tmp46_ = NULL;
+               const gchar* _tmp47_ = NULL;
+               gint _tmp48_ = 0;
+               gchar* _tmp49_ = NULL;
+               gchar* _tmp50_ = NULL;
+#line 400 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp46_ = id_card_logger;
+#line 400 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp47_ = self->priv->_display_name;
+#line 400 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp48_ = diff;
+#line 400 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp49_ = g_strdup_printf ("Compare: Two IDs with display_name '%s', but diff_flags=%0x", _tmp47_, (guint) _tmp48_);
+#line 400 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp50_ = _tmp49_;
+#line 400 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               moonshot_logger_trace (_tmp46_, _tmp50_, NULL);
+#line 400 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _g_free0 (_tmp50_);
+#line 2472 "moonshot-id.c"
+       }
+#line 402 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       result = diff;
+#line 402 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return result;
+#line 2478 "moonshot-id.c"
+}
+
+
+IdCard* id_card_NewNoIdentity (void) {
+       IdCard* result = NULL;
+       IdCard* card = NULL;
+       IdCard* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+#line 407 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = id_card_new ();
+#line 407 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       card = _tmp0_;
+#line 408 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       id_card_set_display_name (card, ID_CARD_NO_IDENTITY);
+#line 409 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1_ = g_strdup ("");
+#line 409 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (card->priv->_nai);
+#line 409 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       card->priv->_nai = _tmp1_;
+#line 410 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       result = card;
+#line 410 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return result;
+#line 2503 "moonshot-id.c"
+}
+
+
+static void _vala_array_add2 (Rule** array, int* length, int* size, const Rule* value) {
+#line 418 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if ((*length) == (*size)) {
+#line 418 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               *size = (*size) ? (2 * (*size)) : 4;
+#line 418 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               *array = g_renew (Rule, *array, *size);
+#line 2514 "moonshot-id.c"
+       }
+#line 418 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       (*array)[(*length)++] = *value;
+#line 2518 "moonshot-id.c"
+}
+
+
+void id_card_add_rule (IdCard* self, Rule* rule) {
+       Rule* _tmp0_ = NULL;
+       gint _tmp0__length1 = 0;
+       Rule _tmp1_ = {0};
+       Rule _tmp2_ = {0};
+#line 417 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_if_fail (self != NULL);
+#line 417 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_if_fail (rule != NULL);
+#line 418 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = self->priv->_rules;
+#line 418 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0__length1 = self->priv->_rules_length1;
+#line 418 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1_ = *rule;
+#line 418 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       rule_copy (&_tmp1_, &_tmp2_);
+#line 418 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _vala_array_add2 (&self->priv->_rules, &self->priv->_rules_length1, &self->priv->__rules_size_, &_tmp2_);
+#line 2541 "moonshot-id.c"
+}
+
+
+IdCard* id_card_construct (GType object_type) {
+       IdCard * self = NULL;
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self = (IdCard*) g_object_new (object_type, NULL);
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return self;
+#line 2551 "moonshot-id.c"
+}
+
+
+IdCard* id_card_new (void) {
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return id_card_construct (TYPE_ID_CARD);
+#line 2558 "moonshot-id.c"
+}
+
+
+const gchar* id_card_get_display_name (IdCard* self) {
+       const gchar* result;
+       const gchar* _tmp0_ = NULL;
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = self->priv->_display_name;
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       result = _tmp0_;
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return result;
+#line 2573 "moonshot-id.c"
+}
+
+
+void id_card_set_display_name (IdCard* self, const gchar* value) {
+       const gchar* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_if_fail (self != NULL);
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = value;
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1_ = g_strdup (_tmp0_);
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (self->priv->_display_name);
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_display_name = _tmp1_;
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_object_notify ((GObject *) self, "display-name");
+#line 2592 "moonshot-id.c"
+}
+
+
+const gchar* id_card_get_username (IdCard* self) {
+       const gchar* result;
+       const gchar* _tmp0_ = NULL;
+#line 223 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 224 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = self->priv->_username;
+#line 224 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       result = _tmp0_;
+#line 224 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return result;
+#line 2607 "moonshot-id.c"
+}
+
+
+void id_card_set_username (IdCard* self, const gchar* value) {
+       const gchar* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+#line 226 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_if_fail (self != NULL);
+#line 227 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = value;
+#line 227 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1_ = g_strdup (_tmp0_);
+#line 227 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (self->priv->_username);
+#line 227 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_username = _tmp1_;
+#line 228 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       id_card_update_nai (self);
+#line 226 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_object_notify ((GObject *) self, "username");
+#line 2628 "moonshot-id.c"
+}
+
+
+const gchar* id_card_get_issuer (IdCard* self) {
+       const gchar* result;
+       const gchar* _tmp0_ = NULL;
+#line 233 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 234 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = self->priv->_issuer;
+#line 234 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       result = _tmp0_;
+#line 234 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return result;
+#line 2643 "moonshot-id.c"
+}
+
+
+void id_card_set_issuer (IdCard* self, const gchar* value) {
+       const gchar* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+#line 236 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_if_fail (self != NULL);
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = value;
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1_ = g_strdup (_tmp0_);
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (self->priv->_issuer);
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_issuer = _tmp1_;
+#line 238 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       id_card_update_nai (self);
+#line 236 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_object_notify ((GObject *) self, "issuer");
+#line 2664 "moonshot-id.c"
+}
+
+
+const gchar* id_card_get_password (IdCard* self) {
+       const gchar* result;
+       const gchar* _tmp0_ = NULL;
+       const gchar* _tmp1_ = NULL;
+#line 249 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 250 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1_ = self->priv->_password;
+#line 250 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (_tmp1_ != NULL) {
+#line 2678 "moonshot-id.c"
+               const gchar* _tmp2_ = NULL;
+#line 250 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp2_ = self->priv->_password;
+#line 250 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp0_ = _tmp2_;
+#line 2684 "moonshot-id.c"
+       } else {
+#line 250 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp0_ = "";
+#line 2688 "moonshot-id.c"
+       }
+#line 250 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       result = _tmp0_;
+#line 250 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return result;
+#line 2694 "moonshot-id.c"
+}
+
+
+void id_card_set_password (IdCard* self, const gchar* value) {
+       const gchar* _tmp0_ = NULL;
+       const gchar* _tmp2_ = NULL;
+#line 252 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_if_fail (self != NULL);
+#line 253 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = self->priv->_password;
+#line 253 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (_tmp0_ != NULL) {
+#line 2707 "moonshot-id.c"
+               const gchar* _tmp1_ = NULL;
+#line 254 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp1_ = self->priv->_password;
+#line 254 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               gnome_keyring_memory_free ((void*) _tmp1_);
+#line 255 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               self->priv->_password = NULL;
+#line 2715 "moonshot-id.c"
+       }
+#line 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp2_ = value;
+#line 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (_tmp2_ != NULL) {
+#line 2721 "moonshot-id.c"
+               const gchar* _tmp3_ = NULL;
+               const gchar* _tmp4_ = NULL;
+#line 258 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp3_ = value;
+#line 258 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp4_ = gnome_keyring_memory_strdup (_tmp3_);
+#line 258 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               self->priv->_password = _tmp4_;
+#line 2730 "moonshot-id.c"
+       }
+#line 252 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_object_notify ((GObject *) self, "password");
+#line 2734 "moonshot-id.c"
+}
+
+
+Rule* id_card_get_rules (IdCard* self, int* result_length1) {
+       Rule* result;
+       Rule* _tmp0_ = NULL;
+       gint _tmp0__length1 = 0;
+       Rule* _tmp1_ = NULL;
+       gint _tmp1__length1 = 0;
+#line 267 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 267 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = self->priv->_rules;
+#line 267 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0__length1 = self->priv->_rules_length1;
+#line 267 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1_ = _tmp0_;
+#line 267 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1__length1 = _tmp0__length1;
+#line 267 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (result_length1) {
+#line 267 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               *result_length1 = _tmp1__length1;
+#line 2758 "moonshot-id.c"
+       }
+#line 267 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       result = _tmp1_;
+#line 267 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return result;
+#line 2764 "moonshot-id.c"
+}
+
+
+static Rule* _vala_array_dup5 (Rule* self, int length) {
+       Rule* result;
+       int i;
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       result = g_new0 (Rule, length);
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       for (i = 0; i < length; i++) {
+#line 2775 "moonshot-id.c"
+               Rule _tmp0_ = {0};
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               rule_copy (&self[i], &_tmp0_);
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               result[i] = _tmp0_;
+#line 2781 "moonshot-id.c"
+       }
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return result;
+#line 2785 "moonshot-id.c"
+}
+
+
+void id_card_set_rules (IdCard* self, Rule* value, int value_length1) {
+       Rule* _tmp0_ = NULL;
+       Rule* _tmp1_ = NULL;
+       gint _tmp1__length1 = 0;
+       Rule* _tmp2_ = NULL;
+       gint _tmp2__length1 = 0;
+       gint _tmp0__length1 = 0;
+       gint __tmp0__size_ = 0;
+       Rule* _tmp4_ = NULL;
+       gint _tmp4__length1 = 0;
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_if_fail (self != NULL);
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1_ = value;
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1__length1 = value_length1;
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp2_ = (_tmp1_ != NULL) ? _vala_array_dup5 (_tmp1_, _tmp1__length1) : ((gpointer) _tmp1_);
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp2__length1 = _tmp1__length1;
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = _tmp2_;
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0__length1 = _tmp2__length1;
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       __tmp0__size_ = _tmp0__length1;
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (_tmp0_ == NULL) {
+#line 2817 "moonshot-id.c"
+               Rule* _tmp3_ = NULL;
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp3_ = g_new0 (Rule, 0);
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp0_ = (_vala_Rule_array_free (_tmp0_, _tmp0__length1), NULL);
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp0_ = _tmp3_;
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               _tmp0__length1 = 0;
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               __tmp0__size_ = _tmp0__length1;
+#line 2829 "moonshot-id.c"
+       }
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp4_ = _tmp0_;
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp4__length1 = _tmp0__length1;
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = NULL;
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0__length1 = 0;
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_rules = (_vala_Rule_array_free (self->priv->_rules, self->priv->_rules_length1), NULL);
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_rules = _tmp4_;
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_rules_length1 = _tmp4__length1;
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->__rules_size_ = self->priv->_rules_length1;
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = (_vala_Rule_array_free (_tmp0_, _tmp0__length1), NULL);
+#line 2849 "moonshot-id.c"
+}
+
+
+GeeArrayList* id_card_get_services (IdCard* self) {
+       GeeArrayList* result;
+       GeeArrayList* _tmp0_ = NULL;
+#line 274 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 274 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = self->priv->_services;
+#line 274 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       result = _tmp0_;
+#line 274 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return result;
+#line 2864 "moonshot-id.c"
+}
+
+
+gboolean id_card_get_temporary (IdCard* self) {
+       gboolean result;
+       gboolean _tmp0_ = FALSE;
+#line 325 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (self != NULL, FALSE);
+#line 325 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = self->priv->_temporary;
+#line 325 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       result = _tmp0_;
+#line 325 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return result;
+#line 2879 "moonshot-id.c"
+}
+
+
+void id_card_set_temporary (IdCard* self, gboolean value) {
+       gboolean _tmp0_ = FALSE;
+#line 325 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_if_fail (self != NULL);
+#line 325 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = value;
+#line 325 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_temporary = _tmp0_;
+#line 325 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_object_notify ((GObject *) self, "temporary");
+#line 2893 "moonshot-id.c"
+}
+
+
+TrustAnchor* id_card_get_trust_anchor (IdCard* self) {
+       TrustAnchor* result;
+       TrustAnchor* _tmp0_ = NULL;
+#line 329 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 330 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = self->priv->_trust_anchor;
+#line 330 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       result = _tmp0_;
+#line 330 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return result;
+#line 2908 "moonshot-id.c"
+}
+
+
+const gchar* id_card_get_nai (IdCard* self) {
+       const gchar* result;
+       const gchar* _tmp0_ = NULL;
+#line 343 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 343 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = self->priv->_nai;
+#line 343 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       result = _tmp0_;
+#line 343 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return result;
+#line 2923 "moonshot-id.c"
+}
+
+
+static void id_card_set_nai (IdCard* self, const gchar* value) {
+       const gchar* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+#line 343 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_if_fail (self != NULL);
+#line 343 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = value;
+#line 343 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1_ = g_strdup (_tmp0_);
+#line 343 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (self->priv->_nai);
+#line 343 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_nai = _tmp1_;
+#line 343 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_object_notify ((GObject *) self, "nai");
+#line 2942 "moonshot-id.c"
+}
+
+
+gboolean id_card_get_store_password (IdCard* self) {
+       gboolean result;
+       gboolean _tmp0_ = FALSE;
+#line 345 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (self != NULL, FALSE);
+#line 345 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = self->priv->_store_password;
+#line 345 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       result = _tmp0_;
+#line 345 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return result;
+#line 2957 "moonshot-id.c"
+}
+
+
+void id_card_set_store_password (IdCard* self, gboolean value) {
+       gboolean _tmp0_ = FALSE;
+#line 345 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_if_fail (self != NULL);
+#line 345 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = value;
+#line 345 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_store_password = _tmp0_;
+#line 345 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_object_notify ((GObject *) self, "store-password");
+#line 2971 "moonshot-id.c"
+}
+
+
+const gchar* id_card_get_uuid (IdCard* self) {
+       const gchar* result;
+       const gchar* _tmp0_ = NULL;
+#line 349 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 349 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = self->priv->_uuid;
+#line 349 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       result = _tmp0_;
+#line 349 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return result;
+#line 2986 "moonshot-id.c"
+}
+
+
+static void id_card_class_init (IdCardClass * klass) {
+       MoonshotLogger* _tmp0_ = NULL;
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       id_card_parent_class = g_type_class_peek_parent (klass);
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_type_class_add_private (klass, sizeof (IdCardPrivate));
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       G_OBJECT_CLASS (klass)->get_property = _vala_id_card_get_property;
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       G_OBJECT_CLASS (klass)->set_property = _vala_id_card_set_property;
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       G_OBJECT_CLASS (klass)->finalize = id_card_finalize;
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_object_class_install_property (G_OBJECT_CLASS (klass), ID_CARD_DISPLAY_NAME, g_param_spec_string ("display-name", "display-name", "display-name", NULL, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_object_class_install_property (G_OBJECT_CLASS (klass), ID_CARD_USERNAME, g_param_spec_string ("username", "username", "username", NULL, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_object_class_install_property (G_OBJECT_CLASS (klass), ID_CARD_ISSUER, g_param_spec_string ("issuer", "issuer", "issuer", NULL, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_object_class_install_property (G_OBJECT_CLASS (klass), ID_CARD_PASSWORD, g_param_spec_string ("password", "password", "password", NULL, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_object_class_install_property (G_OBJECT_CLASS (klass), ID_CARD_SERVICES, g_param_spec_object ("services", "services", "services", GEE_TYPE_ARRAY_LIST, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_object_class_install_property (G_OBJECT_CLASS (klass), ID_CARD_TEMPORARY, g_param_spec_boolean ("temporary", "temporary", "temporary", FALSE, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_object_class_install_property (G_OBJECT_CLASS (klass), ID_CARD_TRUST_ANCHOR, g_param_spec_object ("trust-anchor", "trust-anchor", "trust-anchor", TYPE_TRUST_ANCHOR, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_object_class_install_property (G_OBJECT_CLASS (klass), ID_CARD_NAI, g_param_spec_string ("nai", "nai", "nai", NULL, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_object_class_install_property (G_OBJECT_CLASS (klass), ID_CARD_STORE_PASSWORD, g_param_spec_boolean ("store-password", "store-password", "store-password", FALSE, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_object_class_install_property (G_OBJECT_CLASS (klass), ID_CARD_UUID, g_param_spec_string ("uuid", "uuid", "uuid", NULL, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
+#line 213 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = get_logger ("IdCard");
+#line 213 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       id_card_logger = _tmp0_;
+#line 3026 "moonshot-id.c"
+}
+
+
+static void id_card_instance_init (IdCard * self) {
+       gchar* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+       gchar* _tmp2_ = NULL;
+       Rule* _tmp3_ = NULL;
+       GeeArrayList* _tmp4_ = NULL;
+       TrustAnchor* _tmp5_ = NULL;
+       gchar* _tmp6_ = NULL;
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv = ID_CARD_GET_PRIVATE (self);
+#line 217 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = g_strdup ("");
+#line 217 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_username = _tmp0_;
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1_ = g_strdup ("");
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_issuer = _tmp1_;
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp2_ = g_strdup ("");
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_display_name = _tmp2_;
+#line 265 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp3_ = g_new0 (Rule, 0);
+#line 265 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_rules = _tmp3_;
+#line 265 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_rules_length1 = 0;
+#line 265 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->__rules_size_ = self->priv->_rules_length1;
+#line 271 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp4_ = gee_array_list_new (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, (GDestroyNotify) g_free, NULL, NULL, NULL);
+#line 271 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_services = _tmp4_;
+#line 325 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_temporary = FALSE;
+#line 327 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp5_ = trust_anchor_new_empty ();
+#line 327 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_trust_anchor = _tmp5_;
+#line 345 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_store_password = FALSE;
+#line 351 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp6_ = id_card_generate_uuid ();
+#line 351 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_uuid = _tmp6_;
+#line 3076 "moonshot-id.c"
+}
+
+
+static void id_card_finalize (GObject* obj) {
+       IdCard * self;
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_ID_CARD, IdCard);
+#line 414 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       id_card_set_password (self, NULL);
+#line 217 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (self->priv->_username);
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (self->priv->_issuer);
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (self->priv->_display_name);
+#line 265 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       self->priv->_rules = (_vala_Rule_array_free (self->priv->_rules, self->priv->_rules_length1), NULL);
+#line 271 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_object_unref0 (self->priv->_services);
+#line 327 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_object_unref0 (self->priv->_trust_anchor);
+#line 343 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (self->priv->_nai);
+#line 351 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _g_free0 (self->priv->_uuid);
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       G_OBJECT_CLASS (id_card_parent_class)->finalize (obj);
+#line 3104 "moonshot-id.c"
+}
+
+
+GType id_card_get_type (void) {
+       static volatile gsize id_card_type_id__volatile = 0;
+       if (g_once_init_enter (&id_card_type_id__volatile)) {
+               static const GTypeInfo g_define_type_info = { sizeof (IdCardClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) id_card_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (IdCard), 0, (GInstanceInitFunc) id_card_instance_init, NULL };
+               GType id_card_type_id;
+               id_card_type_id = g_type_register_static (G_TYPE_OBJECT, "IdCard", &g_define_type_info, 0);
+               g_once_init_leave (&id_card_type_id__volatile, id_card_type_id);
+       }
+       return id_card_type_id__volatile;
+}
+
+
+static void _vala_id_card_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) {
+       IdCard * self;
+       self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_ID_CARD, IdCard);
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       switch (property_id) {
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               case ID_CARD_DISPLAY_NAME:
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               g_value_set_string (value, id_card_get_display_name (self));
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               break;
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               case ID_CARD_USERNAME:
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               g_value_set_string (value, id_card_get_username (self));
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               break;
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               case ID_CARD_ISSUER:
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               g_value_set_string (value, id_card_get_issuer (self));
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               break;
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               case ID_CARD_PASSWORD:
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               g_value_set_string (value, id_card_get_password (self));
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               break;
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               case ID_CARD_SERVICES:
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               g_value_set_object (value, id_card_get_services (self));
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               break;
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               case ID_CARD_TEMPORARY:
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               g_value_set_boolean (value, id_card_get_temporary (self));
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               break;
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               case ID_CARD_TRUST_ANCHOR:
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               g_value_set_object (value, id_card_get_trust_anchor (self));
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               break;
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               case ID_CARD_NAI:
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               g_value_set_string (value, id_card_get_nai (self));
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               break;
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               case ID_CARD_STORE_PASSWORD:
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               g_value_set_boolean (value, id_card_get_store_password (self));
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               break;
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               case ID_CARD_UUID:
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               g_value_set_string (value, id_card_get_uuid (self));
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               break;
+#line 3185 "moonshot-id.c"
+               default:
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               break;
+#line 3191 "moonshot-id.c"
+       }
+}
+
+
+static void _vala_id_card_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec) {
+       IdCard * self;
+       self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_ID_CARD, IdCard);
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       switch (property_id) {
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               case ID_CARD_DISPLAY_NAME:
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               id_card_set_display_name (self, g_value_get_string (value));
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               break;
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               case ID_CARD_USERNAME:
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               id_card_set_username (self, g_value_get_string (value));
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               break;
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               case ID_CARD_ISSUER:
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               id_card_set_issuer (self, g_value_get_string (value));
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               break;
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               case ID_CARD_PASSWORD:
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               id_card_set_password (self, g_value_get_string (value));
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               break;
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               case ID_CARD_TEMPORARY:
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               id_card_set_temporary (self, g_value_get_boolean (value));
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               break;
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               case ID_CARD_NAI:
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               id_card_set_nai (self, g_value_get_string (value));
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               break;
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               case ID_CARD_STORE_PASSWORD:
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               id_card_set_store_password (self, g_value_get_boolean (value));
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               break;
+#line 3243 "moonshot-id.c"
+               default:
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               break;
+#line 3249 "moonshot-id.c"
+       }
+}
+
+
+gint CompareRules (Rule* a, int a_length1, Rule* b, int b_length1) {
+       gint result = 0;
+       Rule* _tmp0_ = NULL;
+       gint _tmp0__length1 = 0;
+       Rule* _tmp1_ = NULL;
+       gint _tmp1__length1 = 0;
+#line 424 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = a;
+#line 424 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0__length1 = a_length1;
+#line 424 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1_ = b;
+#line 424 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1__length1 = b_length1;
+#line 424 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (_tmp0__length1 != _tmp1__length1) {
+#line 425 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               result = 1;
+#line 425 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               return result;
+#line 3274 "moonshot-id.c"
+       }
+       {
+               gint i = 0;
+#line 428 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               i = 0;
+#line 3280 "moonshot-id.c"
+               {
+                       gboolean _tmp2_ = FALSE;
+#line 428 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                       _tmp2_ = TRUE;
+#line 428 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                       while (TRUE) {
+#line 3287 "moonshot-id.c"
+                               gint _tmp4_ = 0;
+                               Rule* _tmp5_ = NULL;
+                               gint _tmp5__length1 = 0;
+                               Rule* _tmp6_ = NULL;
+                               gint _tmp6__length1 = 0;
+                               gint _tmp7_ = 0;
+                               Rule* _tmp8_ = NULL;
+                               gint _tmp8__length1 = 0;
+                               gint _tmp9_ = 0;
+                               Rule _tmp10_ = {0};
+                               gint _tmp11_ = 0;
+#line 428 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               if (!_tmp2_) {
+#line 3301 "moonshot-id.c"
+                                       gint _tmp3_ = 0;
+#line 428 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                                       _tmp3_ = i;
+#line 428 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                                       i = _tmp3_ + 1;
+#line 3307 "moonshot-id.c"
+                               }
+#line 428 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp2_ = FALSE;
+#line 428 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp4_ = i;
+#line 428 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp5_ = a;
+#line 428 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp5__length1 = a_length1;
+#line 428 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               if (!(_tmp4_ < _tmp5__length1)) {
+#line 428 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                                       break;
+#line 3321 "moonshot-id.c"
+                               }
+#line 429 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp6_ = a;
+#line 429 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp6__length1 = a_length1;
+#line 429 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp7_ = i;
+#line 429 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp8_ = b;
+#line 429 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp8__length1 = b_length1;
+#line 429 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp9_ = i;
+#line 429 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp10_ = _tmp8_[_tmp9_];
+#line 429 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp11_ = rule_Compare (&_tmp6_[_tmp7_], &_tmp10_);
+#line 429 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               if (_tmp11_ != 0) {
+#line 430 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                                       result = 1;
+#line 430 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                                       return result;
+#line 3345 "moonshot-id.c"
+                               }
+                       }
+               }
+       }
+#line 433 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       result = 0;
+#line 433 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return result;
+#line 3354 "moonshot-id.c"
+}
+
+
+gint CompareStringArrayList (GeeArrayList* a, GeeArrayList* b) {
+       gint result = 0;
+       GeeArrayList* _tmp0_ = NULL;
+       gint _tmp1_ = 0;
+       gint _tmp2_ = 0;
+       GeeArrayList* _tmp3_ = NULL;
+       gint _tmp4_ = 0;
+       gint _tmp5_ = 0;
+#line 436 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (a != NULL, 0);
+#line 436 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       g_return_val_if_fail (b != NULL, 0);
+#line 438 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp0_ = a;
+#line 438 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp1_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp0_);
+#line 438 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp2_ = _tmp1_;
+#line 438 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp3_ = b;
+#line 438 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp4_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp3_);
+#line 438 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       _tmp5_ = _tmp4_;
+#line 438 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       if (_tmp2_ != _tmp5_) {
+#line 439 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               result = 1;
+#line 439 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               return result;
+#line 3388 "moonshot-id.c"
+       }
+       {
+               gint i = 0;
+#line 442 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+               i = 0;
+#line 3394 "moonshot-id.c"
+               {
+                       gboolean _tmp6_ = FALSE;
+#line 442 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                       _tmp6_ = TRUE;
+#line 442 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                       while (TRUE) {
+#line 3401 "moonshot-id.c"
+                               gint _tmp8_ = 0;
+                               GeeArrayList* _tmp9_ = NULL;
+                               gint _tmp10_ = 0;
+                               gint _tmp11_ = 0;
+                               GeeArrayList* _tmp12_ = NULL;
+                               gint _tmp13_ = 0;
+                               gpointer _tmp14_ = NULL;
+                               gchar* _tmp15_ = NULL;
+                               GeeArrayList* _tmp16_ = NULL;
+                               gint _tmp17_ = 0;
+                               gpointer _tmp18_ = NULL;
+                               gchar* _tmp19_ = NULL;
+                               gboolean _tmp20_ = FALSE;
+#line 442 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               if (!_tmp6_) {
+#line 3417 "moonshot-id.c"
+                                       gint _tmp7_ = 0;
+#line 442 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                                       _tmp7_ = i;
+#line 442 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                                       i = _tmp7_ + 1;
+#line 3423 "moonshot-id.c"
+                               }
+#line 442 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp6_ = FALSE;
+#line 442 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp8_ = i;
+#line 442 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp9_ = a;
+#line 442 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp10_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp9_);
+#line 442 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp11_ = _tmp10_;
+#line 442 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               if (!(_tmp8_ < _tmp11_)) {
+#line 442 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                                       break;
+#line 3439 "moonshot-id.c"
+                               }
+#line 443 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp12_ = a;
+#line 443 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp13_ = i;
+#line 443 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp14_ = gee_abstract_list_get ((GeeAbstractList*) _tmp12_, _tmp13_);
+#line 443 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp15_ = (gchar*) _tmp14_;
+#line 443 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp16_ = b;
+#line 443 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp17_ = i;
+#line 443 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp18_ = gee_abstract_list_get ((GeeAbstractList*) _tmp16_, _tmp17_);
+#line 443 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp19_ = (gchar*) _tmp18_;
+#line 443 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _tmp20_ = g_strcmp0 (_tmp15_, _tmp19_) != 0;
+#line 443 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _g_free0 (_tmp19_);
+#line 443 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               _g_free0 (_tmp15_);
+#line 443 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                               if (_tmp20_) {
+#line 444 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                                       result = 1;
+#line 444 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+                                       return result;
+#line 3469 "moonshot-id.c"
+                               }
+                       }
+               }
+       }
+#line 447 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       result = 0;
+#line 447 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-id.vala"
+       return result;
+#line 3478 "moonshot-id.c"
+}
+
+
+static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func) {
+       if ((array != NULL) && (destroy_func != NULL)) {
+               int i;
+               for (i = 0; i < array_length; i = i + 1) {
+                       if (((gpointer*) array)[i] != NULL) {
+                               destroy_func (((gpointer*) array)[i]);
+                       }
+               }
+       }
+}
+
+
+static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func) {
+       _vala_array_destroy (array, array_length, destroy_func);
+       g_free (array);
+}
+
+
+
diff --git a/src/moonshot-idcard-store.c b/src/moonshot-idcard-store.c
new file mode 100644 (file)
index 0000000..a27a8db
--- /dev/null
@@ -0,0 +1,180 @@
+/* moonshot-idcard-store.c generated by valac 0.34.9, the Vala compiler
+ * generated from moonshot-idcard-store.vala, do not modify */
+
+/*
+ * Copyright (c) 2011-2016, JANET(UK)
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * 3. Neither the name of JANET(UK) nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+*/
+
+#include <glib.h>
+#include <glib-object.h>
+#include <gee.h>
+
+
+#define TYPE_IIDENTITY_CARD_STORE (iidentity_card_store_get_type ())
+#define IIDENTITY_CARD_STORE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IIDENTITY_CARD_STORE, IIdentityCardStore))
+#define IS_IIDENTITY_CARD_STORE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IIDENTITY_CARD_STORE))
+#define IIDENTITY_CARD_STORE_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), TYPE_IIDENTITY_CARD_STORE, IIdentityCardStoreIface))
+
+typedef struct _IIdentityCardStore IIdentityCardStore;
+typedef struct _IIdentityCardStoreIface IIdentityCardStoreIface;
+
+#define TYPE_ID_CARD (id_card_get_type ())
+#define ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ID_CARD, IdCard))
+#define ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ID_CARD, IdCardClass))
+#define IS_ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ID_CARD))
+#define IS_ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ID_CARD))
+#define ID_CARD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ID_CARD, IdCardClass))
+
+typedef struct _IdCard IdCard;
+typedef struct _IdCardClass IdCardClass;
+
+#define IIDENTITY_CARD_STORE_TYPE_STORE_TYPE (iidentity_card_store_store_type_get_type ())
+
+typedef enum  {
+       IIDENTITY_CARD_STORE_STORE_TYPE_FLAT_FILE,
+       IIDENTITY_CARD_STORE_STORE_TYPE_KEYRING
+} IIdentityCardStoreStoreType;
+
+struct _IIdentityCardStoreIface {
+       GTypeInterface parent_iface;
+       void (*add_card) (IIdentityCardStore* self, IdCard* card);
+       gboolean (*remove_card) (IIdentityCardStore* self, IdCard* card);
+       IdCard* (*update_card) (IIdentityCardStore* self, IdCard* card);
+       IIdentityCardStoreStoreType (*get_store_type) (IIdentityCardStore* self);
+       GeeLinkedList* (*get_card_list) (IIdentityCardStore* self);
+       void (*store_id_cards) (IIdentityCardStore* self);
+};
+
+
+
+GType id_card_get_type (void) G_GNUC_CONST;
+GType iidentity_card_store_store_type_get_type (void) G_GNUC_CONST;
+GType iidentity_card_store_get_type (void) G_GNUC_CONST;
+void iidentity_card_store_add_card (IIdentityCardStore* self, IdCard* card);
+gboolean iidentity_card_store_remove_card (IIdentityCardStore* self, IdCard* card);
+IdCard* iidentity_card_store_update_card (IIdentityCardStore* self, IdCard* card);
+IIdentityCardStoreStoreType iidentity_card_store_get_store_type (IIdentityCardStore* self);
+GeeLinkedList* iidentity_card_store_get_card_list (IIdentityCardStore* self);
+void iidentity_card_store_store_id_cards (IIdentityCardStore* self);
+
+
+GType iidentity_card_store_store_type_get_type (void) {
+       static volatile gsize iidentity_card_store_store_type_type_id__volatile = 0;
+       if (g_once_init_enter (&iidentity_card_store_store_type_type_id__volatile)) {
+               static const GEnumValue values[] = {{IIDENTITY_CARD_STORE_STORE_TYPE_FLAT_FILE, "IIDENTITY_CARD_STORE_STORE_TYPE_FLAT_FILE", "flat-file"}, {IIDENTITY_CARD_STORE_STORE_TYPE_KEYRING, "IIDENTITY_CARD_STORE_STORE_TYPE_KEYRING", "keyring"}, {0, NULL, NULL}};
+               GType iidentity_card_store_store_type_type_id;
+               iidentity_card_store_store_type_type_id = g_enum_register_static ("IIdentityCardStoreStoreType", values);
+               g_once_init_leave (&iidentity_card_store_store_type_type_id__volatile, iidentity_card_store_store_type_type_id);
+       }
+       return iidentity_card_store_store_type_type_id__volatile;
+}
+
+
+void iidentity_card_store_add_card (IIdentityCardStore* self, IdCard* card) {
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-store.vala"
+       g_return_if_fail (self != NULL);
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-store.vala"
+       IIDENTITY_CARD_STORE_GET_INTERFACE (self)->add_card (self, card);
+#line 107 "moonshot-idcard-store.c"
+}
+
+
+gboolean iidentity_card_store_remove_card (IIdentityCardStore* self, IdCard* card) {
+#line 41 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-store.vala"
+       g_return_val_if_fail (self != NULL, FALSE);
+#line 41 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-store.vala"
+       return IIDENTITY_CARD_STORE_GET_INTERFACE (self)->remove_card (self, card);
+#line 116 "moonshot-idcard-store.c"
+}
+
+
+IdCard* iidentity_card_store_update_card (IIdentityCardStore* self, IdCard* card) {
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-store.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-store.vala"
+       return IIDENTITY_CARD_STORE_GET_INTERFACE (self)->update_card (self, card);
+#line 125 "moonshot-idcard-store.c"
+}
+
+
+IIdentityCardStoreStoreType iidentity_card_store_get_store_type (IIdentityCardStore* self) {
+#line 43 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-store.vala"
+       g_return_val_if_fail (self != NULL, 0);
+#line 43 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-store.vala"
+       return IIDENTITY_CARD_STORE_GET_INTERFACE (self)->get_store_type (self);
+#line 134 "moonshot-idcard-store.c"
+}
+
+
+GeeLinkedList* iidentity_card_store_get_card_list (IIdentityCardStore* self) {
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-store.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-store.vala"
+       return IIDENTITY_CARD_STORE_GET_INTERFACE (self)->get_card_list (self);
+#line 143 "moonshot-idcard-store.c"
+}
+
+
+void iidentity_card_store_store_id_cards (IIdentityCardStore* self) {
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-store.vala"
+       g_return_if_fail (self != NULL);
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-store.vala"
+       IIDENTITY_CARD_STORE_GET_INTERFACE (self)->store_id_cards (self);
+#line 152 "moonshot-idcard-store.c"
+}
+
+
+static void iidentity_card_store_base_init (IIdentityCardStoreIface * iface) {
+#line 33 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-store.vala"
+       static gboolean initialized = FALSE;
+#line 33 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-store.vala"
+       if (!initialized) {
+#line 33 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-store.vala"
+               initialized = TRUE;
+#line 163 "moonshot-idcard-store.c"
+       }
+}
+
+
+GType iidentity_card_store_get_type (void) {
+       static volatile gsize iidentity_card_store_type_id__volatile = 0;
+       if (g_once_init_enter (&iidentity_card_store_type_id__volatile)) {
+               static const GTypeInfo g_define_type_info = { sizeof (IIdentityCardStoreIface), (GBaseInitFunc) iidentity_card_store_base_init, (GBaseFinalizeFunc) NULL, (GClassInitFunc) NULL, (GClassFinalizeFunc) NULL, NULL, 0, 0, (GInstanceInitFunc) NULL, NULL };
+               GType iidentity_card_store_type_id;
+               iidentity_card_store_type_id = g_type_register_static (G_TYPE_INTERFACE, "IIdentityCardStore", &g_define_type_info, 0);
+               g_type_interface_add_prerequisite (iidentity_card_store_type_id, G_TYPE_OBJECT);
+               g_once_init_leave (&iidentity_card_store_type_id__volatile, iidentity_card_store_type_id);
+       }
+       return iidentity_card_store_type_id__volatile;
+}
+
+
+
diff --git a/src/moonshot-idcard-widget.c b/src/moonshot-idcard-widget.c
new file mode 100644 (file)
index 0000000..9cd3b60
--- /dev/null
@@ -0,0 +1,1096 @@
+/* moonshot-idcard-widget.c generated by valac 0.34.9, the Vala compiler
+ * generated from moonshot-idcard-widget.vala, do not modify */
+
+/*
+ * Copyright (c) 2011-2016, JANET(UK)
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * 3. Neither the name of JANET(UK) nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+*/
+
+#include <glib.h>
+#include <glib-object.h>
+#include <gtk/gtk.h>
+#include <gdk/gdk.h>
+#include <string.h>
+#include <stdlib.h>
+#include <glib/gi18n-lib.h>
+#include <float.h>
+#include <math.h>
+#include <pango/pango.h>
+#include <gdk-pixbuf/gdk-pixbuf.h>
+
+
+#define TYPE_ID_CARD_WIDGET (id_card_widget_get_type ())
+#define ID_CARD_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ID_CARD_WIDGET, IdCardWidget))
+#define ID_CARD_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ID_CARD_WIDGET, IdCardWidgetClass))
+#define IS_ID_CARD_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ID_CARD_WIDGET))
+#define IS_ID_CARD_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ID_CARD_WIDGET))
+#define ID_CARD_WIDGET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ID_CARD_WIDGET, IdCardWidgetClass))
+
+typedef struct _IdCardWidget IdCardWidget;
+typedef struct _IdCardWidgetClass IdCardWidgetClass;
+typedef struct _IdCardWidgetPrivate IdCardWidgetPrivate;
+
+#define TYPE_IDENTITY_MANAGER_VIEW (identity_manager_view_get_type ())
+#define IDENTITY_MANAGER_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerView))
+#define IDENTITY_MANAGER_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerViewClass))
+#define IS_IDENTITY_MANAGER_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_MANAGER_VIEW))
+#define IS_IDENTITY_MANAGER_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_MANAGER_VIEW))
+#define IDENTITY_MANAGER_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerViewClass))
+
+typedef struct _IdentityManagerView IdentityManagerView;
+typedef struct _IdentityManagerViewClass IdentityManagerViewClass;
+
+#define TYPE_ID_CARD (id_card_get_type ())
+#define ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ID_CARD, IdCard))
+#define ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ID_CARD, IdCardClass))
+#define IS_ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ID_CARD))
+#define IS_ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ID_CARD))
+#define ID_CARD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ID_CARD, IdCardClass))
+
+typedef struct _IdCard IdCard;
+typedef struct _IdCardClass IdCardClass;
+#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
+#define _g_free0(var) (var = (g_free (var), NULL))
+
+#define TYPE_TRUST_ANCHOR (trust_anchor_get_type ())
+#define TRUST_ANCHOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TRUST_ANCHOR, TrustAnchor))
+#define TRUST_ANCHOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TRUST_ANCHOR, TrustAnchorClass))
+#define IS_TRUST_ANCHOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TRUST_ANCHOR))
+#define IS_TRUST_ANCHOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TRUST_ANCHOR))
+#define TRUST_ANCHOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TRUST_ANCHOR, TrustAnchorClass))
+
+typedef struct _TrustAnchor TrustAnchor;
+typedef struct _TrustAnchorClass TrustAnchorClass;
+
+struct _IdCardWidget {
+       GtkBox parent_instance;
+       IdCardWidgetPrivate * priv;
+       gint _position;
+};
+
+struct _IdCardWidgetClass {
+       GtkBoxClass parent_class;
+};
+
+struct _IdCardWidgetPrivate {
+       IdentityManagerView* manager_view;
+       IdCard* _id_card;
+       GtkVBox* main_vbox;
+       GtkHBox* hbox;
+       GtkEventBox* event_box;
+       gboolean is_selected;
+       GtkArrow* arrow;
+       GtkVBox* details;
+};
+
+
+static gpointer id_card_widget_parent_class = NULL;
+
+GType id_card_widget_get_type (void) G_GNUC_CONST;
+GType identity_manager_view_get_type (void) G_GNUC_CONST;
+GType id_card_get_type (void) G_GNUC_CONST;
+#define ID_CARD_WIDGET_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_ID_CARD_WIDGET, IdCardWidgetPrivate))
+enum  {
+       ID_CARD_WIDGET_DUMMY_PROPERTY,
+       ID_CARD_WIDGET_ID_CARD,
+       ID_CARD_WIDGET_POSITION
+};
+#define ID_CARD_WIDGET_ARROW_SHADOW GTK_SHADOW_NONE
+void id_card_widget_select (IdCardWidget* self);
+void id_card_widget_expand (IdCardWidget* self);
+void id_card_widget_unselect (IdCardWidget* self);
+void id_card_widget_collapse (IdCardWidget* self);
+static void id_card_widget_set_idcard_color (IdCardWidget* self);
+static gboolean id_card_widget_button_press_cb (IdCardWidget* self);
+gint id_card_widget_get_position (IdCardWidget* self);
+static void id_card_widget_make_id_card_label (IdCardWidget* self, GtkLabel* label);
+gboolean identity_manager_view_selection_in_progress (IdentityManagerView* self);
+IdCard* id_card_widget_get_id_card (IdCardWidget* self);
+gboolean id_card_is_no_identity (IdCard* self);
+const gchar* id_card_get_display_name (IdCard* self);
+IdCardWidget* id_card_widget_new (IdCard* id_card, IdentityManagerView* manager_view);
+IdCardWidget* id_card_widget_construct (GType object_type, IdCard* id_card, IdentityManagerView* manager_view);
+void id_card_widget_set_id_card (IdCardWidget* self, IdCard* value);
+const gchar* id_card_get_username (IdCard* self);
+const gchar* id_card_get_issuer (IdCard* self);
+GType trust_anchor_get_type (void) G_GNUC_CONST;
+TrustAnchor* id_card_get_trust_anchor (IdCard* self);
+gboolean trust_anchor_is_empty (TrustAnchor* self);
+gchar* id_card_get_services_string (IdCard* self, const gchar* sep);
+GdkPixbuf* get_pixbuf (IdCard* id);
+static gboolean _id_card_widget_button_press_cb_gtk_widget_button_press_event (GtkWidget* _sender, GdkEventButton* event, gpointer self);
+void id_card_widget_set_position (IdCardWidget* self, gint value);
+static void id_card_widget_finalize (GObject* obj);
+static void _vala_id_card_widget_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec);
+static void _vala_id_card_widget_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec);
+
+
+void id_card_widget_select (IdCardWidget* self) {
+#line 60 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_return_if_fail (self != NULL);
+#line 62 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       id_card_widget_expand (self);
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_signal_emit_by_name (self, "expanded");
+#line 163 "moonshot-idcard-widget.c"
+}
+
+
+void id_card_widget_unselect (IdCardWidget* self) {
+#line 66 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_return_if_fail (self != NULL);
+#line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       id_card_widget_collapse (self);
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_signal_emit_by_name (self, "collapsed");
+#line 174 "moonshot-idcard-widget.c"
+}
+
+
+void id_card_widget_expand (IdCardWidget* self) {
+       GtkVBox* _tmp0_ = NULL;
+       GtkArrow* _tmp1_ = NULL;
+#line 72 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_return_if_fail (self != NULL);
+#line 74 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       self->priv->is_selected = TRUE;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp0_ = self->priv->details;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       gtk_widget_show_all ((GtkWidget*) _tmp0_);
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       id_card_widget_set_idcard_color (self);
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp1_ = self->priv->arrow;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       gtk_arrow_set (_tmp1_, GTK_ARROW_DOWN, ID_CARD_WIDGET_ARROW_SHADOW);
+#line 195 "moonshot-idcard-widget.c"
+}
+
+
+void id_card_widget_collapse (IdCardWidget* self) {
+       GtkVBox* _tmp0_ = NULL;
+       GtkArrow* _tmp1_ = NULL;
+#line 81 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_return_if_fail (self != NULL);
+#line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       self->priv->is_selected = FALSE;
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp0_ = self->priv->details;
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       gtk_widget_hide ((GtkWidget*) _tmp0_);
+#line 86 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       id_card_widget_set_idcard_color (self);
+#line 87 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp1_ = self->priv->arrow;
+#line 87 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       gtk_arrow_set (_tmp1_, GTK_ARROW_RIGHT, ID_CARD_WIDGET_ARROW_SHADOW);
+#line 216 "moonshot-idcard-widget.c"
+}
+
+
+static gboolean id_card_widget_button_press_cb (IdCardWidget* self) {
+       gboolean result = FALSE;
+       gboolean _tmp0_ = FALSE;
+#line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_return_val_if_fail (self != NULL, FALSE);
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp0_ = self->priv->is_selected;
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       if (_tmp0_) {
+#line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               id_card_widget_unselect (self);
+#line 231 "moonshot-idcard-widget.c"
+       } else {
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               id_card_widget_select (self);
+#line 235 "moonshot-idcard-widget.c"
+       }
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       result = FALSE;
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       return result;
+#line 241 "moonshot-idcard-widget.c"
+}
+
+
+static void id_card_widget_set_idcard_color (IdCardWidget* self) {
+       GdkColor color = {0};
+       gboolean _tmp0_ = FALSE;
+       GtkEventBox* _tmp5_ = NULL;
+       GdkColor _tmp6_ = {0};
+       GtkArrow* _tmp7_ = NULL;
+       GdkColor _tmp8_ = {0};
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_return_if_fail (self != NULL);
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       memset (&color, 0, sizeof (GdkColor));
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp0_ = self->priv->is_selected;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       if (_tmp0_) {
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               color.red = (guint16) (0xd9 << 8);
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               color.green = (guint16) (0xf7 << 8);
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               color.blue = (guint16) 65535;
+#line 266 "moonshot-idcard-widget.c"
+       } else {
+               gint _tmp1_ = 0;
+               gint _tmp2_ = 0;
+#line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp1_ = id_card_widget_get_position (self);
+#line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp2_ = _tmp1_;
+#line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               if ((_tmp2_ % 2) == 0) {
+#line 276 "moonshot-idcard-widget.c"
+                       guint16 _tmp3_ = 0U;
+                       guint16 _tmp4_ = 0U;
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+                       color.blue = (guint16) (0xf2 << 8);
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+                       _tmp3_ = color.blue;
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+                       color.green = _tmp3_;
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+                       _tmp4_ = color.green;
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+                       color.red = _tmp4_;
+#line 289 "moonshot-idcard-widget.c"
+               } else {
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+                       color.red = (guint16) 65535;
+#line 118 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+                       color.green = (guint16) 65535;
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+                       color.blue = (guint16) 65535;
+#line 297 "moonshot-idcard-widget.c"
+               }
+       }
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp5_ = self->priv->event_box;
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp6_ = color;
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       gtk_widget_modify_bg ((GtkWidget*) _tmp5_, GTK_STATE_NORMAL, &_tmp6_);
+#line 124 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp7_ = self->priv->arrow;
+#line 124 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp8_ = color;
+#line 124 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       gtk_widget_modify_bg ((GtkWidget*) _tmp7_, GTK_STATE_NORMAL, &_tmp8_);
+#line 312 "moonshot-idcard-widget.c"
+}
+
+
+static void id_card_widget_make_id_card_label (IdCardWidget* self, GtkLabel* label) {
+       const gchar* _tmp0_ = NULL;
+       gboolean _tmp1_ = FALSE;
+       IdentityManagerView* _tmp2_ = NULL;
+       gboolean _tmp3_ = FALSE;
+       gchar* display_name = NULL;
+       gchar* _tmp10_ = NULL;
+       gchar* label_text = NULL;
+       gchar* _tmp11_ = NULL;
+       GtkLabel* _tmp12_ = NULL;
+#line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_return_if_fail (self != NULL);
+#line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_return_if_fail (label != NULL);
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp2_ = self->priv->manager_view;
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp3_ = identity_manager_view_selection_in_progress (_tmp2_);
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       if (_tmp3_) {
+#line 336 "moonshot-idcard-widget.c"
+               IdCard* _tmp4_ = NULL;
+               gboolean _tmp5_ = FALSE;
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp4_ = self->priv->_id_card;
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp5_ = id_card_is_no_identity (_tmp4_);
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp1_ = _tmp5_;
+#line 345 "moonshot-idcard-widget.c"
+       } else {
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp1_ = FALSE;
+#line 349 "moonshot-idcard-widget.c"
+       }
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       if (_tmp1_) {
+#line 353 "moonshot-idcard-widget.c"
+               const gchar* _tmp6_ = NULL;
+#line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp6_ = _ ("Do not use a Moonshot identity for this service");
+#line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp0_ = _tmp6_;
+#line 359 "moonshot-idcard-widget.c"
+       } else {
+               IdCard* _tmp7_ = NULL;
+               const gchar* _tmp8_ = NULL;
+               const gchar* _tmp9_ = NULL;
+#line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp7_ = self->priv->_id_card;
+#line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp8_ = id_card_get_display_name (_tmp7_);
+#line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp9_ = _tmp8_;
+#line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp0_ = _tmp9_;
+#line 372 "moonshot-idcard-widget.c"
+       }
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp10_ = g_strdup (_tmp0_);
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       display_name = _tmp10_;
+#line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp11_ = g_markup_printf_escaped ("<span rise='8000'><big>%s</big></span>", display_name);
+#line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       label_text = _tmp11_;
+#line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp12_ = label;
+#line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       gtk_label_set_markup (_tmp12_, label_text);
+#line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _g_free0 (label_text);
+#line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _g_free0 (display_name);
+#line 390 "moonshot-idcard-widget.c"
+}
+
+
+static gpointer _g_object_ref0 (gpointer self) {
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       return self ? g_object_ref (self) : NULL;
+#line 397 "moonshot-idcard-widget.c"
+}
+
+
+static gboolean _id_card_widget_button_press_cb_gtk_widget_button_press_event (GtkWidget* _sender, GdkEventButton* event, gpointer self) {
+       gboolean result;
+       result = id_card_widget_button_press_cb ((IdCardWidget*) self);
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       return result;
+#line 406 "moonshot-idcard-widget.c"
+}
+
+
+IdCardWidget* id_card_widget_construct (GType object_type, IdCard* id_card, IdentityManagerView* manager_view) {
+       IdCardWidget * self = NULL;
+       IdCard* _tmp0_ = NULL;
+       IdentityManagerView* _tmp1_ = NULL;
+       IdentityManagerView* _tmp2_ = NULL;
+       GtkLabel* display_name_label = NULL;
+       GtkLabel* _tmp3_ = NULL;
+       GtkLabel* _tmp4_ = NULL;
+       GtkLabel* _tmp5_ = NULL;
+       GtkLabel* _tmp6_ = NULL;
+       GtkVBox* details_wrapper = NULL;
+       GtkVBox* _tmp7_ = NULL;
+       GtkVBox* _tmp8_ = NULL;
+       GtkLabel* _tmp9_ = NULL;
+       GtkVBox* _tmp10_ = NULL;
+       GtkVBox* _tmp11_ = NULL;
+       GtkVBox* _tmp12_ = NULL;
+       IdCard* _tmp13_ = NULL;
+       gboolean _tmp14_ = FALSE;
+       GtkHBox* services_hbox = NULL;
+       GtkHBox* _tmp49_ = NULL;
+       GtkLabel* services_label = NULL;
+       const gchar* _tmp50_ = NULL;
+       GtkLabel* _tmp51_ = NULL;
+       GtkLabel* _tmp52_ = NULL;
+       gchar* services_text = NULL;
+       IdCard* _tmp53_ = NULL;
+       gchar* _tmp54_ = NULL;
+       GtkLabel* service_list = NULL;
+       const gchar* _tmp55_ = NULL;
+       GtkLabel* _tmp56_ = NULL;
+       GtkLabel* _tmp57_ = NULL;
+       GtkLabel* _tmp58_ = NULL;
+       GtkLabel* _tmp59_ = NULL;
+       GtkHBox* _tmp60_ = NULL;
+       GtkLabel* _tmp61_ = NULL;
+       GtkHBox* _tmp62_ = NULL;
+       GtkLabel* _tmp63_ = NULL;
+       GtkVBox* _tmp64_ = NULL;
+       GtkHBox* _tmp65_ = NULL;
+       GtkHBox* _tmp66_ = NULL;
+       GtkImage* image = NULL;
+       IdCard* _tmp67_ = NULL;
+       GdkPixbuf* _tmp68_ = NULL;
+       GdkPixbuf* _tmp69_ = NULL;
+       GtkImage* _tmp70_ = NULL;
+       GtkImage* _tmp71_ = NULL;
+       IdCard* _tmp72_ = NULL;
+       gboolean _tmp73_ = FALSE;
+       GtkHBox* _tmp76_ = NULL;
+       GtkImage* _tmp77_ = NULL;
+       GtkHBox* _tmp78_ = NULL;
+       GtkVBox* _tmp79_ = NULL;
+       GtkArrow* _tmp80_ = NULL;
+       GtkArrow* _tmp81_ = NULL;
+       GtkHBox* _tmp82_ = NULL;
+       GtkArrow* _tmp83_ = NULL;
+       GtkVBox* _tmp84_ = NULL;
+       GtkVBox* _tmp85_ = NULL;
+       GtkHBox* _tmp86_ = NULL;
+       GtkVBox* _tmp87_ = NULL;
+       GtkEventBox* _tmp88_ = NULL;
+       GtkEventBox* _tmp89_ = NULL;
+       GtkVBox* _tmp90_ = NULL;
+       GtkEventBox* _tmp91_ = NULL;
+       GtkEventBox* _tmp92_ = NULL;
+       GtkEventBox* _tmp93_ = NULL;
+       GtkVBox* _tmp94_ = NULL;
+#line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_return_val_if_fail (id_card != NULL, NULL);
+#line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_return_val_if_fail (manager_view != NULL, NULL);
+#line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       self = (IdCardWidget*) g_object_new (object_type, NULL);
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp0_ = id_card;
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       id_card_widget_set_id_card (self, _tmp0_);
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp1_ = manager_view;
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp2_ = _g_object_ref0 (_tmp1_);
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _g_object_unref0 (self->priv->manager_view);
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       self->priv->manager_view = _tmp2_;
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp3_ = (GtkLabel*) gtk_label_new (NULL);
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_object_ref_sink (_tmp3_);
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       display_name_label = _tmp3_;
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp4_ = display_name_label;
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       gtk_misc_set_alignment ((GtkMisc*) _tmp4_, (gfloat) 0, (gfloat) 0.5);
+#line 144 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp5_ = display_name_label;
+#line 144 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       gtk_label_set_ellipsize (_tmp5_, PANGO_ELLIPSIZE_END);
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp6_ = display_name_label;
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       id_card_widget_make_id_card_label (self, _tmp6_);
+#line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp7_ = (GtkVBox*) gtk_vbox_new (FALSE, 0);
+#line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_object_ref_sink (_tmp7_);
+#line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       details_wrapper = _tmp7_;
+#line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp8_ = details_wrapper;
+#line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp9_ = display_name_label;
+#line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       gtk_box_pack_start ((GtkBox*) _tmp8_, (GtkWidget*) _tmp9_, FALSE, FALSE, (guint) 0);
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp10_ = (GtkVBox*) gtk_vbox_new (FALSE, 0);
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_object_ref_sink (_tmp10_);
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _g_object_unref0 (self->priv->details);
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       self->priv->details = _tmp10_;
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp11_ = details_wrapper;
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp12_ = self->priv->details;
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       gtk_box_pack_start ((GtkBox*) _tmp11_, (GtkWidget*) _tmp12_, FALSE, FALSE, (guint) 0);
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp13_ = self->priv->_id_card;
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp14_ = id_card_is_no_identity (_tmp13_);
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       if (!_tmp14_) {
+#line 546 "moonshot-idcard-widget.c"
+               gchar* upper_details_text = NULL;
+               const gchar* _tmp15_ = NULL;
+               gchar* _tmp16_ = NULL;
+               gchar* _tmp17_ = NULL;
+               IdCard* _tmp18_ = NULL;
+               const gchar* _tmp19_ = NULL;
+               const gchar* _tmp20_ = NULL;
+               gchar* _tmp21_ = NULL;
+               gchar* _tmp22_ = NULL;
+               const gchar* _tmp23_ = NULL;
+               const gchar* _tmp24_ = NULL;
+               gchar* _tmp25_ = NULL;
+               gchar* _tmp26_ = NULL;
+               gchar* _tmp27_ = NULL;
+               gchar* _tmp28_ = NULL;
+               IdCard* _tmp29_ = NULL;
+               const gchar* _tmp30_ = NULL;
+               const gchar* _tmp31_ = NULL;
+               gchar* _tmp32_ = NULL;
+               gchar* _tmp33_ = NULL;
+               gchar* _tmp34_ = NULL;
+               IdCard* _tmp35_ = NULL;
+               TrustAnchor* _tmp36_ = NULL;
+               TrustAnchor* _tmp37_ = NULL;
+               gboolean _tmp38_ = FALSE;
+               GtkLabel* upper_details = NULL;
+               const gchar* _tmp44_ = NULL;
+               GtkLabel* _tmp45_ = NULL;
+               GtkLabel* _tmp46_ = NULL;
+               GtkVBox* _tmp47_ = NULL;
+               GtkLabel* _tmp48_ = NULL;
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp15_ = _ ("Username");
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp16_ = g_strconcat (_tmp15_, ":  ", NULL);
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp17_ = _tmp16_;
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp18_ = id_card;
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp19_ = id_card_get_username (_tmp18_);
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp20_ = _tmp19_;
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp21_ = g_strconcat (_tmp17_, _tmp20_, NULL);
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp22_ = _tmp21_;
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _g_free0 (_tmp17_);
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               upper_details_text = _tmp22_;
+#line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp23_ = upper_details_text;
+#line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp24_ = _ ("Realm:");
+#line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp25_ = g_strconcat ("\n", _tmp24_, NULL);
+#line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp26_ = _tmp25_;
+#line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp27_ = g_strconcat (_tmp26_, "  ", NULL);
+#line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp28_ = _tmp27_;
+#line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp29_ = id_card;
+#line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp30_ = id_card_get_issuer (_tmp29_);
+#line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp31_ = _tmp30_;
+#line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp32_ = g_strconcat (_tmp28_, _tmp31_, NULL);
+#line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp33_ = _tmp32_;
+#line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp34_ = g_strconcat (_tmp23_, _tmp33_, NULL);
+#line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _g_free0 (upper_details_text);
+#line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               upper_details_text = _tmp34_;
+#line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _g_free0 (_tmp33_);
+#line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _g_free0 (_tmp28_);
+#line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _g_free0 (_tmp26_);
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp35_ = id_card;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp36_ = id_card_get_trust_anchor (_tmp35_);
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp37_ = _tmp36_;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp38_ = trust_anchor_is_empty (_tmp37_);
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               if (!_tmp38_) {
+#line 642 "moonshot-idcard-widget.c"
+                       const gchar* _tmp39_ = NULL;
+                       const gchar* _tmp40_ = NULL;
+                       gchar* _tmp41_ = NULL;
+                       gchar* _tmp42_ = NULL;
+                       gchar* _tmp43_ = NULL;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+                       _tmp39_ = upper_details_text;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+                       _tmp40_ = _ ("Trust anchor: Enterprise provisioned");
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+                       _tmp41_ = g_strconcat ("\n", _tmp40_, NULL);
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+                       _tmp42_ = _tmp41_;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+                       _tmp43_ = g_strconcat (_tmp39_, _tmp42_, NULL);
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+                       _g_free0 (upper_details_text);
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+                       upper_details_text = _tmp43_;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+                       _g_free0 (_tmp42_);
+#line 664 "moonshot-idcard-widget.c"
+               }
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp44_ = upper_details_text;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp45_ = (GtkLabel*) gtk_label_new (_tmp44_);
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               g_object_ref_sink (_tmp45_);
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               upper_details = _tmp45_;
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp46_ = upper_details;
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               gtk_misc_set_alignment ((GtkMisc*) _tmp46_, (gfloat) 0, (gfloat) 0);
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp47_ = self->priv->details;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp48_ = upper_details;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               gtk_box_pack_start ((GtkBox*) _tmp47_, (GtkWidget*) _tmp48_, TRUE, TRUE, (guint) 0);
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _g_object_unref0 (upper_details);
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _g_free0 (upper_details_text);
+#line 688 "moonshot-idcard-widget.c"
+       }
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp49_ = (GtkHBox*) gtk_hbox_new (FALSE, 6);
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_object_ref_sink (_tmp49_);
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       services_hbox = _tmp49_;
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp50_ = _ ("Services: ");
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp51_ = (GtkLabel*) gtk_label_new (_tmp50_);
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_object_ref_sink (_tmp51_);
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       services_label = _tmp51_;
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp52_ = services_label;
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       gtk_misc_set_alignment ((GtkMisc*) _tmp52_, (gfloat) 0, (gfloat) 0);
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp53_ = self->priv->_id_card;
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp54_ = id_card_get_services_string (_tmp53_, "\n");
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       services_text = _tmp54_;
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp55_ = services_text;
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp56_ = (GtkLabel*) gtk_label_new (_tmp55_);
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_object_ref_sink (_tmp56_);
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       service_list = _tmp56_;
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp57_ = service_list;
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       gtk_misc_set_alignment ((GtkMisc*) _tmp57_, (gfloat) 0, (gfloat) 0);
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp58_ = service_list;
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       gtk_label_set_ellipsize (_tmp58_, PANGO_ELLIPSIZE_END);
+#line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp59_ = service_list;
+#line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       gtk_label_set_max_width_chars (_tmp59_, 50);
+#line 171 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp60_ = services_hbox;
+#line 171 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp61_ = services_label;
+#line 171 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       gtk_box_pack_start ((GtkBox*) _tmp60_, (GtkWidget*) _tmp61_, FALSE, FALSE, (guint) 0);
+#line 172 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp62_ = services_hbox;
+#line 172 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp63_ = service_list;
+#line 172 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       gtk_box_pack_start ((GtkBox*) _tmp62_, (GtkWidget*) _tmp63_, FALSE, FALSE, (guint) 0);
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp64_ = self->priv->details;
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp65_ = services_hbox;
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       gtk_box_pack_start ((GtkBox*) _tmp64_, (GtkWidget*) _tmp65_, TRUE, TRUE, (guint) 0);
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp66_ = (GtkHBox*) gtk_hbox_new (FALSE, 6);
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_object_ref_sink (_tmp66_);
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _g_object_unref0 (self->priv->hbox);
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       self->priv->hbox = _tmp66_;
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp67_ = id_card;
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp68_ = get_pixbuf (_tmp67_);
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp69_ = _tmp68_;
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp70_ = (GtkImage*) gtk_image_new_from_pixbuf (_tmp69_);
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_object_ref_sink (_tmp70_);
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp71_ = _tmp70_;
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _g_object_unref0 (_tmp69_);
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       image = _tmp71_;
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp72_ = self->priv->_id_card;
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp73_ = id_card_is_no_identity (_tmp72_);
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       if (_tmp73_) {
+#line 782 "moonshot-idcard-widget.c"
+               GtkImage* _tmp74_ = NULL;
+               GtkImage* _tmp75_ = NULL;
+#line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp74_ = image;
+#line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               gtk_image_clear (_tmp74_);
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               _tmp75_ = image;
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               gtk_misc_set_padding ((GtkMisc*) _tmp75_, 24, 24);
+#line 793 "moonshot-idcard-widget.c"
+       }
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp76_ = self->priv->hbox;
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp77_ = image;
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       gtk_box_pack_start ((GtkBox*) _tmp76_, (GtkWidget*) _tmp77_, FALSE, FALSE, (guint) 0);
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp78_ = self->priv->hbox;
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp79_ = details_wrapper;
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       gtk_box_pack_start ((GtkBox*) _tmp78_, (GtkWidget*) _tmp79_, TRUE, TRUE, (guint) 0);
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp80_ = (GtkArrow*) gtk_arrow_new (GTK_ARROW_RIGHT, ID_CARD_WIDGET_ARROW_SHADOW);
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_object_ref_sink (_tmp80_);
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _g_object_unref0 (self->priv->arrow);
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       self->priv->arrow = _tmp80_;
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp81_ = self->priv->arrow;
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       gtk_misc_set_alignment ((GtkMisc*) _tmp81_, (gfloat) 0.5, (gfloat) 0);
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp82_ = self->priv->hbox;
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp83_ = self->priv->arrow;
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       gtk_box_pack_start ((GtkBox*) _tmp82_, (GtkWidget*) _tmp83_, FALSE, FALSE, (guint) 0);
+#line 188 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp84_ = (GtkVBox*) gtk_vbox_new (FALSE, 12);
+#line 188 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_object_ref_sink (_tmp84_);
+#line 188 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _g_object_unref0 (self->priv->main_vbox);
+#line 188 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       self->priv->main_vbox = _tmp84_;
+#line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp85_ = self->priv->main_vbox;
+#line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp86_ = self->priv->hbox;
+#line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       gtk_box_pack_start ((GtkBox*) _tmp85_, (GtkWidget*) _tmp86_, TRUE, TRUE, (guint) 0);
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp87_ = self->priv->main_vbox;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       gtk_container_set_border_width ((GtkContainer*) _tmp87_, (guint) 12);
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp88_ = (GtkEventBox*) gtk_event_box_new ();
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_object_ref_sink (_tmp88_);
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _g_object_unref0 (self->priv->event_box);
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       self->priv->event_box = _tmp88_;
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp89_ = self->priv->event_box;
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp90_ = self->priv->main_vbox;
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       gtk_container_add ((GtkContainer*) _tmp89_, (GtkWidget*) _tmp90_);
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp91_ = self->priv->event_box;
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_signal_connect_object ((GtkWidget*) _tmp91_, "button-press-event", (GCallback) _id_card_widget_button_press_cb_gtk_widget_button_press_event, self, 0);
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp92_ = self->priv->event_box;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       gtk_widget_set_visible ((GtkWidget*) _tmp92_, FALSE);
+#line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp93_ = self->priv->event_box;
+#line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       gtk_box_pack_start ((GtkBox*) self, (GtkWidget*) _tmp93_, TRUE, TRUE, (guint) 0);
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       gtk_widget_show_all ((GtkWidget*) self);
+#line 199 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp94_ = self->priv->details;
+#line 199 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       gtk_widget_hide ((GtkWidget*) _tmp94_);
+#line 201 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       id_card_widget_set_idcard_color (self);
+#line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _g_object_unref0 (image);
+#line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _g_object_unref0 (service_list);
+#line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _g_free0 (services_text);
+#line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _g_object_unref0 (services_label);
+#line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _g_object_unref0 (services_hbox);
+#line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _g_object_unref0 (details_wrapper);
+#line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _g_object_unref0 (display_name_label);
+#line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       return self;
+#line 893 "moonshot-idcard-widget.c"
+}
+
+
+IdCardWidget* id_card_widget_new (IdCard* id_card, IdentityManagerView* manager_view) {
+#line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       return id_card_widget_construct (TYPE_ID_CARD_WIDGET, id_card, manager_view);
+#line 900 "moonshot-idcard-widget.c"
+}
+
+
+IdCard* id_card_widget_get_id_card (IdCardWidget* self) {
+       IdCard* result;
+       IdCard* _tmp0_ = NULL;
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp0_ = self->priv->_id_card;
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       result = _tmp0_;
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       return result;
+#line 915 "moonshot-idcard-widget.c"
+}
+
+
+void id_card_widget_set_id_card (IdCardWidget* self, IdCard* value) {
+       IdCard* _tmp0_ = NULL;
+       IdCard* _tmp1_ = NULL;
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_return_if_fail (self != NULL);
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp0_ = value;
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp1_ = _g_object_ref0 (_tmp0_);
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _g_object_unref0 (self->priv->_id_card);
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       self->priv->_id_card = _tmp1_;
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_object_notify ((GObject *) self, "id-card");
+#line 934 "moonshot-idcard-widget.c"
+}
+
+
+gint id_card_widget_get_position (IdCardWidget* self) {
+       gint result;
+       gint _tmp0_ = 0;
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_return_val_if_fail (self != NULL, 0);
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp0_ = self->_position;
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       result = _tmp0_;
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       return result;
+#line 949 "moonshot-idcard-widget.c"
+}
+
+
+void id_card_widget_set_position (IdCardWidget* self, gint value) {
+       gint _tmp0_ = 0;
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_return_if_fail (self != NULL);
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _tmp0_ = value;
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       self->_position = _tmp0_;
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       id_card_widget_set_idcard_color (self);
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_object_notify ((GObject *) self, "position");
+#line 965 "moonshot-idcard-widget.c"
+}
+
+
+static void id_card_widget_class_init (IdCardWidgetClass * klass) {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       id_card_widget_parent_class = g_type_class_peek_parent (klass);
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_type_class_add_private (klass, sizeof (IdCardWidgetPrivate));
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       G_OBJECT_CLASS (klass)->get_property = _vala_id_card_widget_get_property;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       G_OBJECT_CLASS (klass)->set_property = _vala_id_card_widget_set_property;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       G_OBJECT_CLASS (klass)->finalize = id_card_widget_finalize;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_object_class_install_property (G_OBJECT_CLASS (klass), ID_CARD_WIDGET_ID_CARD, g_param_spec_object ("id-card", "id-card", "id-card", TYPE_ID_CARD, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_object_class_install_property (G_OBJECT_CLASS (klass), ID_CARD_WIDGET_POSITION, g_param_spec_int ("position", "position", "position", G_MININT, G_MAXINT, 0, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_signal_new ("expanded", TYPE_ID_CARD_WIDGET, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       g_signal_new ("collapsed", TYPE_ID_CARD_WIDGET, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
+#line 988 "moonshot-idcard-widget.c"
+}
+
+
+static void id_card_widget_instance_init (IdCardWidget * self) {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       self->priv = ID_CARD_WIDGET_GET_PRIVATE (self);
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       self->priv->_id_card = NULL;
+#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       self->priv->is_selected = FALSE;
+#line 51 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       self->_position = 0;
+#line 1001 "moonshot-idcard-widget.c"
+}
+
+
+static void id_card_widget_finalize (GObject* obj) {
+       IdCardWidget * self;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_ID_CARD_WIDGET, IdCardWidget);
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _g_object_unref0 (self->priv->manager_view);
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _g_object_unref0 (self->priv->_id_card);
+#line 43 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _g_object_unref0 (self->priv->main_vbox);
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _g_object_unref0 (self->priv->hbox);
+#line 45 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _g_object_unref0 (self->priv->event_box);
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _g_object_unref0 (self->priv->arrow);
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       _g_object_unref0 (self->priv->details);
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       G_OBJECT_CLASS (id_card_widget_parent_class)->finalize (obj);
+#line 1025 "moonshot-idcard-widget.c"
+}
+
+
+GType id_card_widget_get_type (void) {
+       static volatile gsize id_card_widget_type_id__volatile = 0;
+       if (g_once_init_enter (&id_card_widget_type_id__volatile)) {
+               static const GTypeInfo g_define_type_info = { sizeof (IdCardWidgetClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) id_card_widget_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (IdCardWidget), 0, (GInstanceInitFunc) id_card_widget_instance_init, NULL };
+               GType id_card_widget_type_id;
+               id_card_widget_type_id = g_type_register_static (GTK_TYPE_BOX, "IdCardWidget", &g_define_type_info, 0);
+               g_once_init_leave (&id_card_widget_type_id__volatile, id_card_widget_type_id);
+       }
+       return id_card_widget_type_id__volatile;
+}
+
+
+static void _vala_id_card_widget_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) {
+       IdCardWidget * self;
+       self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_ID_CARD_WIDGET, IdCardWidget);
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       switch (property_id) {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               case ID_CARD_WIDGET_ID_CARD:
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               g_value_set_object (value, id_card_widget_get_id_card (self));
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               break;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               case ID_CARD_WIDGET_POSITION:
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               g_value_set_int (value, id_card_widget_get_position (self));
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               break;
+#line 1058 "moonshot-idcard-widget.c"
+               default:
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               break;
+#line 1064 "moonshot-idcard-widget.c"
+       }
+}
+
+
+static void _vala_id_card_widget_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec) {
+       IdCardWidget * self;
+       self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_ID_CARD_WIDGET, IdCardWidget);
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+       switch (property_id) {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               case ID_CARD_WIDGET_ID_CARD:
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               id_card_widget_set_id_card (self, g_value_get_object (value));
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               break;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               case ID_CARD_WIDGET_POSITION:
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               id_card_widget_set_position (self, g_value_get_int (value));
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               break;
+#line 1086 "moonshot-idcard-widget.c"
+               default:
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-idcard-widget.vala"
+               break;
+#line 1092 "moonshot-idcard-widget.c"
+       }
+}
+
+
+
diff --git a/src/moonshot-identities-manager.c b/src/moonshot-identities-manager.c
new file mode 100644 (file)
index 0000000..323a336
--- /dev/null
@@ -0,0 +1,3260 @@
+/* moonshot-identities-manager.c generated by valac 0.34.9, the Vala compiler
+ * generated from moonshot-identities-manager.vala, do not modify */
+
+/*
+ * Copyright (c) 2011-2016, JANET(UK)
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * 3. Neither the name of JANET(UK) nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+*/
+
+#include <glib.h>
+#include <glib-object.h>
+#include <stdlib.h>
+#include <string.h>
+#include <gnome-keyring-memory.h>
+#include <gee.h>
+#include <glib/gi18n-lib.h>
+#include <gobject/gvaluecollector.h>
+
+
+#define TYPE_PASSWORD (password_get_type ())
+#define PASSWORD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_PASSWORD, Password))
+#define PASSWORD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_PASSWORD, PasswordClass))
+#define IS_PASSWORD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_PASSWORD))
+#define IS_PASSWORD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_PASSWORD))
+#define PASSWORD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_PASSWORD, PasswordClass))
+
+typedef struct _Password Password;
+typedef struct _PasswordClass PasswordClass;
+typedef struct _PasswordPrivate PasswordPrivate;
+typedef struct _ParamSpecPassword ParamSpecPassword;
+
+#define TYPE_PASSWORD_HASH_TABLE (password_hash_table_get_type ())
+#define PASSWORD_HASH_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_PASSWORD_HASH_TABLE, PasswordHashTable))
+#define PASSWORD_HASH_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_PASSWORD_HASH_TABLE, PasswordHashTableClass))
+#define IS_PASSWORD_HASH_TABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_PASSWORD_HASH_TABLE))
+#define IS_PASSWORD_HASH_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_PASSWORD_HASH_TABLE))
+#define PASSWORD_HASH_TABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_PASSWORD_HASH_TABLE, PasswordHashTableClass))
+
+typedef struct _PasswordHashTable PasswordHashTable;
+typedef struct _PasswordHashTableClass PasswordHashTableClass;
+typedef struct _PasswordHashTablePrivate PasswordHashTablePrivate;
+#define _g_hash_table_unref0(var) ((var == NULL) ? NULL : (var = (g_hash_table_unref (var), NULL)))
+
+#define TYPE_ID_CARD (id_card_get_type ())
+#define ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ID_CARD, IdCard))
+#define ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ID_CARD, IdCardClass))
+#define IS_ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ID_CARD))
+#define IS_ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ID_CARD))
+#define ID_CARD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ID_CARD, IdCardClass))
+
+typedef struct _IdCard IdCard;
+typedef struct _IdCardClass IdCardClass;
+
+#define TYPE_IIDENTITY_CARD_STORE (iidentity_card_store_get_type ())
+#define IIDENTITY_CARD_STORE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IIDENTITY_CARD_STORE, IIdentityCardStore))
+#define IS_IIDENTITY_CARD_STORE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IIDENTITY_CARD_STORE))
+#define IIDENTITY_CARD_STORE_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), TYPE_IIDENTITY_CARD_STORE, IIdentityCardStoreIface))
+
+typedef struct _IIdentityCardStore IIdentityCardStore;
+typedef struct _IIdentityCardStoreIface IIdentityCardStoreIface;
+
+#define IIDENTITY_CARD_STORE_TYPE_STORE_TYPE (iidentity_card_store_store_type_get_type ())
+#define _g_free0(var) (var = (g_free (var), NULL))
+
+#define TYPE_IDENTITY_MANAGER_MODEL (identity_manager_model_get_type ())
+#define IDENTITY_MANAGER_MODEL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_MANAGER_MODEL, IdentityManagerModel))
+#define IDENTITY_MANAGER_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_MANAGER_MODEL, IdentityManagerModelClass))
+#define IS_IDENTITY_MANAGER_MODEL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_MANAGER_MODEL))
+#define IS_IDENTITY_MANAGER_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_MANAGER_MODEL))
+#define IDENTITY_MANAGER_MODEL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_MANAGER_MODEL, IdentityManagerModelClass))
+
+typedef struct _IdentityManagerModel IdentityManagerModel;
+typedef struct _IdentityManagerModelClass IdentityManagerModelClass;
+typedef struct _IdentityManagerModelPrivate IdentityManagerModelPrivate;
+
+#define TYPE_IDENTITY_MANAGER_APP (identity_manager_app_get_type ())
+#define IDENTITY_MANAGER_APP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_MANAGER_APP, IdentityManagerApp))
+#define IDENTITY_MANAGER_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_MANAGER_APP, IdentityManagerAppClass))
+#define IS_IDENTITY_MANAGER_APP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_MANAGER_APP))
+#define IS_IDENTITY_MANAGER_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_MANAGER_APP))
+#define IDENTITY_MANAGER_APP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_MANAGER_APP, IdentityManagerAppClass))
+
+typedef struct _IdentityManagerApp IdentityManagerApp;
+typedef struct _IdentityManagerAppClass IdentityManagerAppClass;
+
+#define TYPE_MOONSHOT_LOGGER (moonshot_logger_get_type ())
+#define MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLogger))
+#define MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+#define IS_MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MOONSHOT_LOGGER))
+#define IS_MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MOONSHOT_LOGGER))
+#define MOONSHOT_LOGGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+
+typedef struct _MoonshotLogger MoonshotLogger;
+typedef struct _MoonshotLoggerClass MoonshotLoggerClass;
+#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
+#define _identity_manager_app_unref0(var) ((var == NULL) ? NULL : (var = (identity_manager_app_unref (var), NULL)))
+
+#define TYPE_TRUST_ANCHOR (trust_anchor_get_type ())
+#define TRUST_ANCHOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TRUST_ANCHOR, TrustAnchor))
+#define TRUST_ANCHOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TRUST_ANCHOR, TrustAnchorClass))
+#define IS_TRUST_ANCHOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TRUST_ANCHOR))
+#define IS_TRUST_ANCHOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TRUST_ANCHOR))
+#define TRUST_ANCHOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TRUST_ANCHOR, TrustAnchorClass))
+
+typedef struct _TrustAnchor TrustAnchor;
+typedef struct _TrustAnchorClass TrustAnchorClass;
+
+#define TYPE_KEYRING_STORE (keyring_store_get_type ())
+#define KEYRING_STORE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_KEYRING_STORE, KeyringStore))
+#define KEYRING_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_KEYRING_STORE, KeyringStoreClass))
+#define IS_KEYRING_STORE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_KEYRING_STORE))
+#define IS_KEYRING_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_KEYRING_STORE))
+#define KEYRING_STORE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_KEYRING_STORE, KeyringStoreClass))
+
+typedef struct _KeyringStore KeyringStore;
+typedef struct _KeyringStoreClass KeyringStoreClass;
+
+#define TYPE_LOCAL_FLAT_FILE_STORE (local_flat_file_store_get_type ())
+#define LOCAL_FLAT_FILE_STORE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_LOCAL_FLAT_FILE_STORE, LocalFlatFileStore))
+#define LOCAL_FLAT_FILE_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_LOCAL_FLAT_FILE_STORE, LocalFlatFileStoreClass))
+#define IS_LOCAL_FLAT_FILE_STORE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_LOCAL_FLAT_FILE_STORE))
+#define IS_LOCAL_FLAT_FILE_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_LOCAL_FLAT_FILE_STORE))
+#define LOCAL_FLAT_FILE_STORE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_LOCAL_FLAT_FILE_STORE, LocalFlatFileStoreClass))
+
+typedef struct _LocalFlatFileStore LocalFlatFileStore;
+typedef struct _LocalFlatFileStoreClass LocalFlatFileStoreClass;
+
+#define TYPE_RULE (rule_get_type ())
+typedef struct _Rule Rule;
+
+struct _Password {
+       GTypeInstance parent_instance;
+       volatile int ref_count;
+       PasswordPrivate * priv;
+};
+
+struct _PasswordClass {
+       GTypeClass parent_class;
+       void (*finalize) (Password *self);
+};
+
+struct _PasswordPrivate {
+       const gchar* _password;
+};
+
+struct _ParamSpecPassword {
+       GParamSpec parent_instance;
+};
+
+struct _PasswordHashTable {
+       GObject parent_instance;
+       PasswordHashTablePrivate * priv;
+};
+
+struct _PasswordHashTableClass {
+       GObjectClass parent_class;
+};
+
+struct _PasswordHashTablePrivate {
+       GHashTable* password_table;
+};
+
+typedef enum  {
+       IIDENTITY_CARD_STORE_STORE_TYPE_FLAT_FILE,
+       IIDENTITY_CARD_STORE_STORE_TYPE_KEYRING
+} IIdentityCardStoreStoreType;
+
+struct _IIdentityCardStoreIface {
+       GTypeInterface parent_iface;
+       void (*add_card) (IIdentityCardStore* self, IdCard* card);
+       gboolean (*remove_card) (IIdentityCardStore* self, IdCard* card);
+       IdCard* (*update_card) (IIdentityCardStore* self, IdCard* card);
+       IIdentityCardStoreStoreType (*get_store_type) (IIdentityCardStore* self);
+       GeeLinkedList* (*get_card_list) (IIdentityCardStore* self);
+       void (*store_id_cards) (IIdentityCardStore* self);
+};
+
+struct _IdentityManagerModel {
+       GObject parent_instance;
+       IdentityManagerModelPrivate * priv;
+};
+
+struct _IdentityManagerModelClass {
+       GObjectClass parent_class;
+};
+
+struct _IdentityManagerModelPrivate {
+       PasswordHashTable* password_table;
+       IIdentityCardStore* store;
+       IdentityManagerApp* parent;
+};
+
+struct _Rule {
+       gchar* pattern;
+       gchar* always_confirm;
+};
+
+
+static gpointer password_parent_class = NULL;
+static gpointer password_hash_table_parent_class = NULL;
+static gpointer identity_manager_model_parent_class = NULL;
+static MoonshotLogger* identity_manager_model_logger;
+static MoonshotLogger* identity_manager_model_logger = NULL;
+
+gpointer password_ref (gpointer instance);
+void password_unref (gpointer instance);
+GParamSpec* param_spec_password (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
+void value_set_password (GValue* value, gpointer v_object);
+void value_take_password (GValue* value, gpointer v_object);
+gpointer value_get_password (const GValue* value);
+GType password_get_type (void) G_GNUC_CONST;
+#define PASSWORD_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_PASSWORD, PasswordPrivate))
+enum  {
+       PASSWORD_DUMMY_PROPERTY
+};
+void password_set_password (Password* self, const gchar* value);
+Password* password_new (const gchar* in_password);
+Password* password_construct (GType object_type, const gchar* in_password);
+const gchar* password_get_password (Password* self);
+static void password_finalize (Password* obj);
+GType password_hash_table_get_type (void) G_GNUC_CONST;
+#define PASSWORD_HASH_TABLE_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_PASSWORD_HASH_TABLE, PasswordHashTablePrivate))
+enum  {
+       PASSWORD_HASH_TABLE_DUMMY_PROPERTY
+};
+GType id_card_get_type (void) G_GNUC_CONST;
+GType iidentity_card_store_store_type_get_type (void) G_GNUC_CONST;
+GType iidentity_card_store_get_type (void) G_GNUC_CONST;
+static gchar* password_hash_table_ComputeHashKey (IdCard* card, IIdentityCardStore* store);
+const gchar* id_card_get_nai (IdCard* self);
+IIdentityCardStoreStoreType iidentity_card_store_get_store_type (IIdentityCardStore* self);
+void password_hash_table_CachePassword (PasswordHashTable* self, IdCard* card, IIdentityCardStore* store);
+const gchar* id_card_get_password (IdCard* self);
+void password_hash_table_RemovePassword (PasswordHashTable* self, IdCard* card, IIdentityCardStore* store);
+void password_hash_table_RetrievePassword (PasswordHashTable* self, IdCard* card, IIdentityCardStore* store);
+void id_card_set_password (IdCard* self, const gchar* value);
+PasswordHashTable* password_hash_table_new (void);
+PasswordHashTable* password_hash_table_construct (GType object_type);
+static void _g_free0_ (gpointer var);
+static void _password_unref0_ (gpointer var);
+static void password_hash_table_finalize (GObject* obj);
+GType identity_manager_model_get_type (void) G_GNUC_CONST;
+gpointer identity_manager_app_ref (gpointer instance);
+void identity_manager_app_unref (gpointer instance);
+GParamSpec* param_spec_identity_manager_app (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
+void value_set_identity_manager_app (GValue* value, gpointer v_object);
+void value_take_identity_manager_app (GValue* value, gpointer v_object);
+gpointer value_get_identity_manager_app (const GValue* value);
+GType identity_manager_app_get_type (void) G_GNUC_CONST;
+#define IDENTITY_MANAGER_MODEL_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_IDENTITY_MANAGER_MODEL, IdentityManagerModelPrivate))
+enum  {
+       IDENTITY_MANAGER_MODEL_DUMMY_PROPERTY
+};
+GType moonshot_logger_get_type (void) G_GNUC_CONST;
+MoonshotLogger* get_logger (const gchar* name);
+#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 __lambda4_ (IdentityManagerModel* self, IdCard* a, IdCard* b);
+gboolean id_card_is_no_identity (IdCard* self);
+const gchar* id_card_get_display_name (IdCard* self);
+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);
+static gboolean identity_manager_model_remove_duplicates (IdentityManagerModel* self, IdCard* new_card, GeeArrayList** old_duplicates);
+void moonshot_logger_trace (MoonshotLogger* self, const gchar* message, GError* e);
+static gboolean identity_manager_model_remove_card_internal (IdentityManagerModel* self, IdCard* card);
+GType trust_anchor_get_type (void) G_GNUC_CONST;
+TrustAnchor* id_card_get_trust_anchor (IdCard* self);
+gint trust_anchor_Compare (TrustAnchor* self, TrustAnchor* other);
+void trust_anchor_set_datetime_added (TrustAnchor* self, const gchar* datetime);
+const gchar* trust_anchor_get_datetime_added (TrustAnchor* self);
+gboolean identity_manager_model_find_duplicate_nai_sets (IdentityManagerModel* self, GeeArrayList** duplicates);
+IdCard* identity_manager_model_find_id_card (IdentityManagerModel* self, const gchar* nai, gboolean force_flat_file_store);
+IIdentityCardStoreStoreType identity_manager_model_get_store_type (IdentityManagerModel* self);
+void identity_manager_model_set_store_type (IdentityManagerModel* self, IIdentityCardStoreStoreType type);
+void identity_manager_model_add_card (IdentityManagerModel* self, IdCard* card, gboolean force_flat_file_store, GeeArrayList** old_duplicates);
+gboolean id_card_get_temporary (IdCard* self);
+void id_card_set_display_name (IdCard* self, const gchar* value);
+gchar* id_card_get_services_string (IdCard* self, const gchar* sep);
+void iidentity_card_store_add_card (IIdentityCardStore* self, IdCard* card);
+IdCard* identity_manager_model_update_card (IdentityManagerModel* self, IdCard* card);
+IdCard* iidentity_card_store_update_card (IIdentityCardStore* self, IdCard* card);
+gboolean iidentity_card_store_remove_card (IIdentityCardStore* self, IdCard* card);
+gboolean identity_manager_model_remove_card (IdentityManagerModel* self, IdCard* card);
+void moonshot_logger_warn (MoonshotLogger* self, const gchar* message, GError* e);
+KeyringStore* keyring_store_new (void);
+KeyringStore* keyring_store_construct (GType object_type);
+GType keyring_store_get_type (void) G_GNUC_CONST;
+LocalFlatFileStore* local_flat_file_store_new (void);
+LocalFlatFileStore* local_flat_file_store_construct (GType object_type);
+GType local_flat_file_store_get_type (void) G_GNUC_CONST;
+gchar* trust_anchor_format_datetime_now (void);
+gboolean trust_anchor_is_empty (TrustAnchor* self);
+void iidentity_card_store_store_id_cards (IIdentityCardStore* self);
+gboolean identity_manager_model_HasNonTrivialIdentities (IdentityManagerModel* self);
+GeeArrayList* id_card_get_services (IdCard* self);
+GType rule_get_type (void) G_GNUC_CONST;
+Rule* rule_dup (const Rule* self);
+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);
+IdentityManagerModel* identity_manager_model_new (IdentityManagerApp* parent_app, IIdentityCardStoreStoreType store_type);
+IdentityManagerModel* identity_manager_model_construct (GType object_type, IdentityManagerApp* parent_app, IIdentityCardStoreStoreType store_type);
+const gchar* iidentity_card_store_store_type_to_string (IIdentityCardStoreStoreType self);
+static void identity_manager_model_finalize (GObject* obj);
+
+
+Password* password_construct (GType object_type, const gchar* in_password) {
+       Password* self = NULL;
+       const gchar* _tmp0_ = NULL;
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_val_if_fail (in_password != NULL, NULL);
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       self = (Password*) g_type_create_instance (object_type);
+#line 55 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp0_ = in_password;
+#line 55 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       password_set_password (self, _tmp0_);
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       return self;
+#line 351 "moonshot-identities-manager.c"
+}
+
+
+Password* password_new (const gchar* in_password) {
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       return password_construct (TYPE_PASSWORD, in_password);
+#line 358 "moonshot-identities-manager.c"
+}
+
+
+const gchar* password_get_password (Password* self) {
+       const gchar* result;
+       const gchar* _tmp0_ = NULL;
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 39 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp0_ = self->priv->_password;
+#line 39 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       result = _tmp0_;
+#line 39 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       return result;
+#line 373 "moonshot-identities-manager.c"
+}
+
+
+void password_set_password (Password* self, const gchar* value) {
+       const gchar* _tmp0_ = NULL;
+       const gchar* _tmp2_ = NULL;
+#line 41 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_if_fail (self != NULL);
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp0_ = self->priv->_password;
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (_tmp0_ != NULL) {
+#line 386 "moonshot-identities-manager.c"
+               const gchar* _tmp1_ = NULL;
+#line 43 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp1_ = self->priv->_password;
+#line 43 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               gnome_keyring_memory_free ((void*) _tmp1_);
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               self->priv->_password = NULL;
+#line 394 "moonshot-identities-manager.c"
+       }
+#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp2_ = value;
+#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (_tmp2_ != NULL) {
+#line 400 "moonshot-identities-manager.c"
+               const gchar* _tmp3_ = NULL;
+               const gchar* _tmp4_ = NULL;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp3_ = value;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp4_ = gnome_keyring_memory_strdup (_tmp3_);
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               self->priv->_password = _tmp4_;
+#line 409 "moonshot-identities-manager.c"
+       }
+}
+
+
+static void value_password_init (GValue* value) {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       value->data[0].v_pointer = NULL;
+#line 417 "moonshot-identities-manager.c"
+}
+
+
+static void value_password_free_value (GValue* value) {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (value->data[0].v_pointer) {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               password_unref (value->data[0].v_pointer);
+#line 426 "moonshot-identities-manager.c"
+       }
+}
+
+
+static void value_password_copy_value (const GValue* src_value, GValue* dest_value) {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (src_value->data[0].v_pointer) {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               dest_value->data[0].v_pointer = password_ref (src_value->data[0].v_pointer);
+#line 436 "moonshot-identities-manager.c"
+       } else {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               dest_value->data[0].v_pointer = NULL;
+#line 440 "moonshot-identities-manager.c"
+       }
+}
+
+
+static gpointer value_password_peek_pointer (const GValue* value) {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       return value->data[0].v_pointer;
+#line 448 "moonshot-identities-manager.c"
+}
+
+
+static gchar* value_password_collect_value (GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (collect_values[0].v_pointer) {
+#line 455 "moonshot-identities-manager.c"
+               Password* object;
+               object = collect_values[0].v_pointer;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               if (object->parent_instance.g_class == NULL) {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL);
+#line 462 "moonshot-identities-manager.c"
+               } else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.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 466 "moonshot-identities-manager.c"
+               }
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               value->data[0].v_pointer = password_ref (object);
+#line 470 "moonshot-identities-manager.c"
+       } else {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               value->data[0].v_pointer = NULL;
+#line 474 "moonshot-identities-manager.c"
+       }
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       return NULL;
+#line 478 "moonshot-identities-manager.c"
+}
+
+
+static gchar* value_password_lcopy_value (const GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) {
+       Password** object_p;
+       object_p = collect_values[0].v_pointer;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (!object_p) {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value));
+#line 489 "moonshot-identities-manager.c"
+       }
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (!value->data[0].v_pointer) {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               *object_p = NULL;
+#line 495 "moonshot-identities-manager.c"
+       } else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               *object_p = value->data[0].v_pointer;
+#line 499 "moonshot-identities-manager.c"
+       } else {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               *object_p = password_ref (value->data[0].v_pointer);
+#line 503 "moonshot-identities-manager.c"
+       }
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       return NULL;
+#line 507 "moonshot-identities-manager.c"
+}
+
+
+GParamSpec* param_spec_password (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags) {
+       ParamSpecPassword* spec;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_val_if_fail (g_type_is_a (object_type, TYPE_PASSWORD), NULL);
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags);
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       G_PARAM_SPEC (spec)->value_type = object_type;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       return G_PARAM_SPEC (spec);
+#line 521 "moonshot-identities-manager.c"
+}
+
+
+gpointer value_get_password (const GValue* value) {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_PASSWORD), NULL);
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       return value->data[0].v_pointer;
+#line 530 "moonshot-identities-manager.c"
+}
+
+
+void value_set_password (GValue* value, gpointer v_object) {
+       Password* old;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_PASSWORD));
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       old = value->data[0].v_pointer;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (v_object) {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_PASSWORD));
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               value->data[0].v_pointer = v_object;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               password_ref (value->data[0].v_pointer);
+#line 550 "moonshot-identities-manager.c"
+       } else {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               value->data[0].v_pointer = NULL;
+#line 554 "moonshot-identities-manager.c"
+       }
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (old) {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               password_unref (old);
+#line 560 "moonshot-identities-manager.c"
+       }
+}
+
+
+void value_take_password (GValue* value, gpointer v_object) {
+       Password* old;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_PASSWORD));
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       old = value->data[0].v_pointer;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (v_object) {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_PASSWORD));
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               value->data[0].v_pointer = v_object;
+#line 579 "moonshot-identities-manager.c"
+       } else {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               value->data[0].v_pointer = NULL;
+#line 583 "moonshot-identities-manager.c"
+       }
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (old) {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               password_unref (old);
+#line 589 "moonshot-identities-manager.c"
+       }
+}
+
+
+static void password_class_init (PasswordClass * klass) {
+#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"
+       ((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 601 "moonshot-identities-manager.c"
+}
+
+
+static void password_instance_init (Password * self) {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       self->priv = PASSWORD_GET_PRIVATE (self);
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       self->ref_count = 1;
+#line 610 "moonshot-identities-manager.c"
+}
+
+
+static void password_finalize (Password* obj) {
+       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 622 "moonshot-identities-manager.c"
+}
+
+
+GType password_get_type (void) {
+       static volatile gsize password_type_id__volatile = 0;
+       if (g_once_init_enter (&password_type_id__volatile)) {
+               static const GTypeValueTable g_define_type_value_table = { value_password_init, value_password_free_value, value_password_copy_value, value_password_peek_pointer, "p", value_password_collect_value, "p", value_password_lcopy_value };
+               static const GTypeInfo g_define_type_info = { sizeof (PasswordClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) password_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (Password), 0, (GInstanceInitFunc) password_instance_init, &g_define_type_value_table };
+               static const GTypeFundamentalInfo g_define_type_fundamental_info = { (G_TYPE_FLAG_CLASSED | G_TYPE_FLAG_INSTANTIATABLE | G_TYPE_FLAG_DERIVABLE | G_TYPE_FLAG_DEEP_DERIVABLE) };
+               GType password_type_id;
+               password_type_id = g_type_register_fundamental (g_type_fundamental_next (), "Password", &g_define_type_info, &g_define_type_fundamental_info, 0);
+               g_once_init_leave (&password_type_id__volatile, password_type_id);
+       }
+       return password_type_id__volatile;
+}
+
+
+gpointer password_ref (gpointer instance) {
+       Password* self;
+       self = instance;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_atomic_int_inc (&self->ref_count);
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       return instance;
+#line 647 "moonshot-identities-manager.c"
+}
+
+
+void password_unref (gpointer instance) {
+       Password* self;
+       self = instance;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (g_atomic_int_dec_and_test (&self->ref_count)) {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               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 660 "moonshot-identities-manager.c"
+       }
+}
+
+
+static gchar* password_hash_table_ComputeHashKey (IdCard* card, IIdentityCardStore* store) {
+       gchar* result = NULL;
+       IdCard* _tmp0_ = NULL;
+       const gchar* _tmp1_ = NULL;
+       const gchar* _tmp2_ = NULL;
+       IIdentityCardStore* _tmp3_ = NULL;
+       IIdentityCardStoreStoreType _tmp4_ = 0;
+       gchar* _tmp5_ = NULL;
+#line 66 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_val_if_fail (card != NULL, NULL);
+#line 66 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_val_if_fail (store != NULL, NULL);
+#line 67 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp0_ = card;
+#line 67 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp1_ = id_card_get_nai (_tmp0_);
+#line 67 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp2_ = _tmp1_;
+#line 67 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp3_ = store;
+#line 67 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp4_ = iidentity_card_store_get_store_type (_tmp3_);
+#line 67 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp5_ = g_strdup_printf ("%s_store_%d", _tmp2_, (gint) _tmp4_);
+#line 67 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       result = _tmp5_;
+#line 67 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       return result;
+#line 693 "moonshot-identities-manager.c"
+}
+
+
+void password_hash_table_CachePassword (PasswordHashTable* self, IdCard* card, IIdentityCardStore* store) {
+       GHashTable* _tmp0_ = NULL;
+       IdCard* _tmp1_ = NULL;
+       IIdentityCardStore* _tmp2_ = NULL;
+       gchar* _tmp3_ = NULL;
+       IdCard* _tmp4_ = NULL;
+       const gchar* _tmp5_ = NULL;
+       const gchar* _tmp6_ = NULL;
+       Password* _tmp7_ = NULL;
+#line 70 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_if_fail (self != NULL);
+#line 70 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_if_fail (card != NULL);
+#line 70 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_if_fail (store != NULL);
+#line 71 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp0_ = self->priv->password_table;
+#line 71 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp1_ = card;
+#line 71 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp2_ = store;
+#line 71 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp3_ = password_hash_table_ComputeHashKey (_tmp1_, _tmp2_);
+#line 71 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp4_ = card;
+#line 71 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp5_ = id_card_get_password (_tmp4_);
+#line 71 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp6_ = _tmp5_;
+#line 71 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp7_ = password_new (_tmp6_);
+#line 71 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_hash_table_replace (_tmp0_, _tmp3_, _tmp7_);
+#line 730 "moonshot-identities-manager.c"
+}
+
+
+void password_hash_table_RemovePassword (PasswordHashTable* self, IdCard* card, IIdentityCardStore* store) {
+       GHashTable* _tmp0_ = NULL;
+       IdCard* _tmp1_ = NULL;
+       IIdentityCardStore* _tmp2_ = NULL;
+       gchar* _tmp3_ = NULL;
+       gchar* _tmp4_ = NULL;
+#line 74 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_if_fail (self != NULL);
+#line 74 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_if_fail (card != NULL);
+#line 74 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_if_fail (store != NULL);
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp0_ = self->priv->password_table;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp1_ = card;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp2_ = store;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp3_ = password_hash_table_ComputeHashKey (_tmp1_, _tmp2_);
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp4_ = _tmp3_;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_hash_table_remove (_tmp0_, _tmp4_);
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _g_free0 (_tmp4_);
+#line 760 "moonshot-identities-manager.c"
+}
+
+
+void password_hash_table_RetrievePassword (PasswordHashTable* self, IdCard* card, IIdentityCardStore* store) {
+       Password* password = NULL;
+       GHashTable* _tmp0_ = NULL;
+       IdCard* _tmp1_ = NULL;
+       IIdentityCardStore* _tmp2_ = NULL;
+       gchar* _tmp3_ = NULL;
+       gchar* _tmp4_ = NULL;
+       gconstpointer _tmp5_ = NULL;
+       Password* _tmp6_ = NULL;
+       Password* _tmp7_ = NULL;
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_if_fail (self != NULL);
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_if_fail (card != NULL);
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_if_fail (store != NULL);
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp0_ = self->priv->password_table;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp1_ = card;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp2_ = store;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp3_ = password_hash_table_ComputeHashKey (_tmp1_, _tmp2_);
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp4_ = _tmp3_;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp5_ = g_hash_table_lookup (_tmp0_, _tmp4_);
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp6_ = (Password*) _tmp5_;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _g_free0 (_tmp4_);
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       password = _tmp6_;
+#line 79 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp7_ = password;
+#line 79 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (_tmp7_ != NULL) {
+#line 802 "moonshot-identities-manager.c"
+               IdCard* _tmp8_ = NULL;
+               Password* _tmp9_ = NULL;
+               const gchar* _tmp10_ = NULL;
+               const gchar* _tmp11_ = NULL;
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp8_ = card;
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp9_ = password;
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp10_ = password_get_password (_tmp9_);
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp11_ = _tmp10_;
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               id_card_set_password (_tmp8_, _tmp11_);
+#line 817 "moonshot-identities-manager.c"
+       }
+}
+
+
+static void _g_free0_ (gpointer var) {
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       var = (g_free (var), NULL);
+#line 825 "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 832 "moonshot-identities-manager.c"
+}
+
+
+PasswordHashTable* password_hash_table_construct (GType object_type) {
+       PasswordHashTable * self = NULL;
+       GHashFunc _tmp0_ = NULL;
+       GEqualFunc _tmp1_ = NULL;
+       GHashTable* _tmp2_ = NULL;
+#line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       self = (PasswordHashTable*) g_object_new (object_type, NULL);
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp0_ = g_str_hash;
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp1_ = g_str_equal;
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp2_ = g_hash_table_new_full (_tmp0_, _tmp1_, _g_free0_, _password_unref0_);
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _g_hash_table_unref0 (self->priv->password_table);
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       self->priv->password_table = _tmp2_;
+#line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       return self;
+#line 855 "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 862 "moonshot-identities-manager.c"
+}
+
+
+static void password_hash_table_class_init (PasswordHashTableClass * klass) {
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       password_hash_table_parent_class = g_type_class_peek_parent (klass);
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       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 873 "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 880 "moonshot-identities-manager.c"
+}
+
+
+static void password_hash_table_finalize (GObject* obj) {
+       PasswordHashTable * self;
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_PASSWORD_HASH_TABLE, PasswordHashTable);
+#line 64 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _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 892 "moonshot-identities-manager.c"
+}
+
+
+GType password_hash_table_get_type (void) {
+       static volatile gsize password_hash_table_type_id__volatile = 0;
+       if (g_once_init_enter (&password_hash_table_type_id__volatile)) {
+               static const GTypeInfo g_define_type_info = { sizeof (PasswordHashTableClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) password_hash_table_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (PasswordHashTable), 0, (GInstanceInitFunc) password_hash_table_instance_init, NULL };
+               GType password_hash_table_type_id;
+               password_hash_table_type_id = g_type_register_static (G_TYPE_OBJECT, "PasswordHashTable", &g_define_type_info, 0);
+               g_once_init_leave (&password_hash_table_type_id__volatile, password_hash_table_type_id);
+       }
+       return password_hash_table_type_id__volatile;
+}
+
+
+static gpointer _g_object_ref0 (gpointer self) {
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       return self ? g_object_ref (self) : NULL;
+#line 911 "moonshot-identities-manager.c"
+}
+
+
+static gint __lambda4_ (IdentityManagerModel* self, IdCard* a, IdCard* b) {
+       gint result = 0;
+       IdCard* id_a = NULL;
+       IdCard* _tmp0_ = NULL;
+       IdCard* _tmp1_ = NULL;
+       IdCard* id_b = NULL;
+       IdCard* _tmp2_ = NULL;
+       IdCard* _tmp3_ = NULL;
+       gboolean _tmp4_ = FALSE;
+       IdCard* _tmp5_ = NULL;
+       gboolean _tmp6_ = FALSE;
+       GCompareFunc _tmp14_ = NULL;
+       IdCard* _tmp15_ = NULL;
+       const gchar* _tmp16_ = NULL;
+       const gchar* _tmp17_ = NULL;
+       IdCard* _tmp18_ = NULL;
+       const gchar* _tmp19_ = NULL;
+       const gchar* _tmp20_ = NULL;
+       gint _tmp21_ = 0;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_val_if_fail (a != NULL, 0);
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_val_if_fail (b != NULL, 0);
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp0_ = a;
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp1_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, TYPE_ID_CARD, IdCard));
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       id_a = _tmp1_;
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp2_ = b;
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp3_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, TYPE_ID_CARD, IdCard));
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       id_b = _tmp3_;
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp5_ = id_a;
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp6_ = id_card_is_no_identity (_tmp5_);
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (_tmp6_) {
+#line 956 "moonshot-identities-manager.c"
+               IdCard* _tmp7_ = NULL;
+               gboolean _tmp8_ = FALSE;
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp7_ = id_b;
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp8_ = id_card_is_no_identity (_tmp7_);
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp4_ = !_tmp8_;
+#line 965 "moonshot-identities-manager.c"
+       } else {
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp4_ = FALSE;
+#line 969 "moonshot-identities-manager.c"
+       }
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (_tmp4_) {
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               result = -1;
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _g_object_unref0 (id_b);
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _g_object_unref0 (id_a);
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               return result;
+#line 981 "moonshot-identities-manager.c"
+       } else {
+               gboolean _tmp9_ = FALSE;
+               IdCard* _tmp10_ = NULL;
+               gboolean _tmp11_ = FALSE;
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp10_ = id_b;
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp11_ = id_card_is_no_identity (_tmp10_);
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               if (_tmp11_) {
+#line 992 "moonshot-identities-manager.c"
+                       IdCard* _tmp12_ = NULL;
+                       gboolean _tmp13_ = FALSE;
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp12_ = id_a;
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp13_ = id_card_is_no_identity (_tmp12_);
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp9_ = !_tmp13_;
+#line 1001 "moonshot-identities-manager.c"
+               } else {
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp9_ = FALSE;
+#line 1005 "moonshot-identities-manager.c"
+               }
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               if (_tmp9_) {
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       result = 1;
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _g_object_unref0 (id_b);
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _g_object_unref0 (id_a);
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       return result;
+#line 1017 "moonshot-identities-manager.c"
+               }
+       }
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp14_ = g_strcmp0;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp15_ = id_a;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp16_ = id_card_get_display_name (_tmp15_);
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp17_ = _tmp16_;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp18_ = id_b;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp19_ = id_card_get_display_name (_tmp18_);
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp20_ = _tmp19_;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp21_ = _tmp14_ (_tmp17_, _tmp20_);
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       result = _tmp21_;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _g_object_unref0 (id_b);
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _g_object_unref0 (id_a);
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       return result;
+#line 1044 "moonshot-identities-manager.c"
+}
+
+
+static gint ___lambda4__gcompare_data_func (gconstpointer a, gconstpointer b, gpointer self) {
+       gint result;
+       result = __lambda4_ ((IdentityManagerModel*) self, (IdCard*) a, (IdCard*) b);
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       return result;
+#line 1053 "moonshot-identities-manager.c"
+}
+
+
+GeeLinkedList* identity_manager_model_get_card_list (IdentityManagerModel* self) {
+       GeeLinkedList* result = NULL;
+       GeeLinkedList* identities = NULL;
+       IIdentityCardStore* _tmp0_ = NULL;
+       GeeLinkedList* _tmp1_ = NULL;
+       GeeLinkedList* _tmp2_ = NULL;
+       gboolean _tmp3_ = FALSE;
+       GeeLinkedList* _tmp4_ = NULL;
+       gboolean _tmp5_ = FALSE;
+       gboolean _tmp6_ = FALSE;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp0_ = self->priv->store;
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp1_ = iidentity_card_store_get_card_list (_tmp0_);
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       identities = _tmp1_;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp2_ = identities;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       gee_list_sort ((GeeList*) _tmp2_, ___lambda4__gcompare_data_func, g_object_ref (self), g_object_unref);
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp4_ = identities;
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp5_ = gee_collection_get_is_empty ((GeeCollection*) _tmp4_);
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp6_ = _tmp5_;
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (_tmp6_) {
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp3_ = TRUE;
+#line 1089 "moonshot-identities-manager.c"
+       } else {
+               GeeLinkedList* _tmp7_ = NULL;
+               gpointer _tmp8_ = NULL;
+               IdCard* _tmp9_ = NULL;
+               gboolean _tmp10_ = FALSE;
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp7_ = identities;
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp8_ = gee_abstract_list_get ((GeeAbstractList*) _tmp7_, 0);
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp9_ = (IdCard*) _tmp8_;
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp10_ = id_card_is_no_identity (_tmp9_);
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp3_ = !_tmp10_;
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _g_object_unref0 (_tmp9_);
+#line 1107 "moonshot-identities-manager.c"
+       }
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (_tmp3_) {
+#line 1111 "moonshot-identities-manager.c"
+               GeeLinkedList* _tmp11_ = NULL;
+               IdCard* _tmp12_ = NULL;
+               IdCard* _tmp13_ = NULL;
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp11_ = identities;
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp12_ = id_card_NewNoIdentity ();
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp13_ = _tmp12_;
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               gee_abstract_list_insert ((GeeAbstractList*) _tmp11_, 0, _tmp13_);
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _g_object_unref0 (_tmp13_);
+#line 1125 "moonshot-identities-manager.c"
+       }
+       {
+               GeeLinkedList* _id_card_list = NULL;
+               GeeLinkedList* _tmp14_ = NULL;
+               GeeLinkedList* _tmp15_ = NULL;
+               gint _id_card_size = 0;
+               GeeLinkedList* _tmp16_ = NULL;
+               gint _tmp17_ = 0;
+               gint _tmp18_ = 0;
+               gint _id_card_index = 0;
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp14_ = identities;
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp15_ = _g_object_ref0 (_tmp14_);
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _id_card_list = _tmp15_;
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp16_ = _id_card_list;
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp17_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp16_);
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp18_ = _tmp17_;
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _id_card_size = _tmp18_;
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _id_card_index = -1;
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               while (TRUE) {
+#line 1154 "moonshot-identities-manager.c"
+                       gint _tmp19_ = 0;
+                       gint _tmp20_ = 0;
+                       gint _tmp21_ = 0;
+                       IdCard* id_card = NULL;
+                       GeeLinkedList* _tmp22_ = NULL;
+                       gint _tmp23_ = 0;
+                       gpointer _tmp24_ = NULL;
+                       IdCard* _tmp25_ = NULL;
+                       gboolean _tmp26_ = FALSE;
+                       gboolean _tmp27_ = FALSE;
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp19_ = _id_card_index;
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _id_card_index = _tmp19_ + 1;
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp20_ = _id_card_index;
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp21_ = _id_card_size;
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       if (!(_tmp20_ < _tmp21_)) {
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               break;
+#line 1177 "moonshot-identities-manager.c"
+                       }
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp22_ = _id_card_list;
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp23_ = _id_card_index;
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp24_ = gee_abstract_list_get ((GeeAbstractList*) _tmp22_, _tmp23_);
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       id_card = (IdCard*) _tmp24_;
+#line 109 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp25_ = id_card;
+#line 109 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp26_ = id_card_get_store_password (_tmp25_);
+#line 109 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp27_ = _tmp26_;
+#line 109 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       if (!_tmp27_) {
+#line 1195 "moonshot-identities-manager.c"
+                               PasswordHashTable* _tmp28_ = NULL;
+                               IdCard* _tmp29_ = NULL;
+                               IIdentityCardStore* _tmp30_ = NULL;
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp28_ = self->priv->password_table;
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp29_ = id_card;
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp30_ = self->priv->store;
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               password_hash_table_RetrievePassword (_tmp28_, _tmp29_, _tmp30_);
+#line 1207 "moonshot-identities-manager.c"
+                       }
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _g_object_unref0 (id_card);
+#line 1211 "moonshot-identities-manager.c"
+               }
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _g_object_unref0 (_id_card_list);
+#line 1215 "moonshot-identities-manager.c"
+       }
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       result = identities;
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       return result;
+#line 1221 "moonshot-identities-manager.c"
+}
+
+
+gboolean identity_manager_model_display_name_is_valid (IdentityManagerModel* self, const gchar* name, gchar** candidate) {
+       gchar* _vala_candidate = NULL;
+       gboolean result = FALSE;
+#line 118 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_val_if_fail (self != NULL, FALSE);
+#line 118 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_val_if_fail (name != NULL, FALSE);
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if ((&_vala_candidate) != NULL) {
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _g_free0 (_vala_candidate);
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _vala_candidate = NULL;
+#line 1238 "moonshot-identities-manager.c"
+       }
+       {
+               GeeLinkedList* _id_card_list = NULL;
+               IIdentityCardStore* _tmp0_ = NULL;
+               GeeLinkedList* _tmp1_ = NULL;
+               gint _id_card_size = 0;
+               GeeLinkedList* _tmp2_ = NULL;
+               gint _tmp3_ = 0;
+               gint _tmp4_ = 0;
+               gint _id_card_index = 0;
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp0_ = self->priv->store;
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp1_ = iidentity_card_store_get_card_list (_tmp0_);
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _id_card_list = _tmp1_;
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp2_ = _id_card_list;
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp3_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp2_);
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp4_ = _tmp3_;
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _id_card_size = _tmp4_;
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _id_card_index = -1;
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               while (TRUE) {
+#line 1267 "moonshot-identities-manager.c"
+                       gint _tmp5_ = 0;
+                       gint _tmp6_ = 0;
+                       gint _tmp7_ = 0;
+                       IdCard* id_card = 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 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp5_ = _id_card_index;
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _id_card_index = _tmp5_ + 1;
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp6_ = _id_card_index;
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp7_ = _id_card_size;
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       if (!(_tmp6_ < _tmp7_)) {
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               break;
+#line 1291 "moonshot-identities-manager.c"
+                       }
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp8_ = _id_card_list;
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp9_ = _id_card_index;
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp10_ = gee_abstract_list_get ((GeeAbstractList*) _tmp8_, _tmp9_);
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       id_card = (IdCard*) _tmp10_;
+#line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp11_ = id_card;
+#line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp12_ = id_card_get_display_name (_tmp11_);
+#line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp13_ = _tmp12_;
+#line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp14_ = name;
+#line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       if (g_strcmp0 (_tmp13_, _tmp14_) == 0) {
+#line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               if ((&_vala_candidate) != NULL) {
+#line 1313 "moonshot-identities-manager.c"
+                                       {
+                                               gint i = 0;
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                                               i = 0;
+#line 1318 "moonshot-identities-manager.c"
+                                               {
+                                                       gboolean _tmp15_ = FALSE;
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                                                       _tmp15_ = TRUE;
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                                                       while (TRUE) {
+#line 1325 "moonshot-identities-manager.c"
+                                                               gint _tmp17_ = 0;
+                                                               gchar* tmp = NULL;
+                                                               const gchar* _tmp18_ = NULL;
+                                                               gint _tmp19_ = 0;
+                                                               gchar* _tmp20_ = NULL;
+                                                               const gchar* _tmp21_ = NULL;
+                                                               gboolean _tmp22_ = FALSE;
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                                                               if (!_tmp15_) {
+#line 1335 "moonshot-identities-manager.c"
+                                                                       gint _tmp16_ = 0;
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                                                                       _tmp16_ = i;
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                                                                       i = _tmp16_ + 1;
+#line 1341 "moonshot-identities-manager.c"
+                                                               }
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                                                               _tmp15_ = FALSE;
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                                                               _tmp17_ = i;
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                                                               if (!(_tmp17_ < 1000)) {
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                                                                       break;
+#line 1351 "moonshot-identities-manager.c"
+                                                               }
+#line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                                                               _tmp18_ = name;
+#line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                                                               _tmp19_ = i;
+#line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                                                               _tmp20_ = g_strdup_printf ("%s %d", _tmp18_, _tmp19_);
+#line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                                                               tmp = _tmp20_;
+#line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                                                               _tmp21_ = tmp;
+#line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                                                               _tmp22_ = identity_manager_model_display_name_is_valid (self, _tmp21_, NULL);
+#line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                                                               if (_tmp22_) {
+#line 1367 "moonshot-identities-manager.c"
+                                                                       const gchar* _tmp23_ = NULL;
+                                                                       gchar* _tmp24_ = NULL;
+#line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                                                                       _tmp23_ = tmp;
+#line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                                                                       _tmp24_ = g_strdup (_tmp23_);
+#line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                                                                       _g_free0 (_vala_candidate);
+#line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                                                                       _vala_candidate = _tmp24_;
+#line 135 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                                                                       _g_free0 (tmp);
+#line 135 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                                                                       break;
+#line 1382 "moonshot-identities-manager.c"
+                                                               }
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                                                               _g_free0 (tmp);
+#line 1386 "moonshot-identities-manager.c"
+                                                       }
+                                               }
+                                       }
+                               }
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               result = FALSE;
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _g_object_unref0 (id_card);
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _g_object_unref0 (_id_card_list);
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               if (candidate) {
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                                       *candidate = _vala_candidate;
+#line 1401 "moonshot-identities-manager.c"
+                               } else {
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                                       _g_free0 (_vala_candidate);
+#line 1405 "moonshot-identities-manager.c"
+                               }
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               return result;
+#line 1409 "moonshot-identities-manager.c"
+                       }
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _g_object_unref0 (id_card);
+#line 1413 "moonshot-identities-manager.c"
+               }
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _g_object_unref0 (_id_card_list);
+#line 1417 "moonshot-identities-manager.c"
+       }
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       result = TRUE;
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (candidate) {
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               *candidate = _vala_candidate;
+#line 1425 "moonshot-identities-manager.c"
+       } else {
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _g_free0 (_vala_candidate);
+#line 1429 "moonshot-identities-manager.c"
+       }
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       return result;
+#line 1433 "moonshot-identities-manager.c"
+}
+
+
+static gboolean identity_manager_model_remove_duplicates (IdentityManagerModel* self, IdCard* new_card, GeeArrayList** old_duplicates) {
+       GeeArrayList* _vala_old_duplicates = NULL;
+       gboolean result = FALSE;
+       GeeArrayList* dups = NULL;
+       GeeArrayList* _tmp0_ = NULL;
+       GeeLinkedList* cards = NULL;
+       IIdentityCardStore* _tmp1_ = NULL;
+       GeeLinkedList* _tmp2_ = NULL;
+       GeeArrayList* _tmp61_ = NULL;
+       gint _tmp62_ = 0;
+       gint _tmp63_ = 0;
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_val_if_fail (self != NULL, FALSE);
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_val_if_fail (new_card != NULL, FALSE);
+#line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp0_ = gee_array_list_new (TYPE_ID_CARD, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL);
+#line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       dups = _tmp0_;
+#line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp1_ = self->priv->store;
+#line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp2_ = iidentity_card_store_get_card_list (_tmp1_);
+#line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       cards = _tmp2_;
+#line 1462 "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 _tmp7_ = 0;
+               gint _id_card_index = 0;
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp3_ = cards;
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp4_ = _g_object_ref0 (_tmp3_);
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _id_card_list = _tmp4_;
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp5_ = _id_card_list;
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp6_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp5_);
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp7_ = _tmp6_;
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _id_card_size = _tmp7_;
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _id_card_index = -1;
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               while (TRUE) {
+#line 1490 "moonshot-identities-manager.c"
+                       gint _tmp8_ = 0;
+                       gint _tmp9_ = 0;
+                       gint _tmp10_ = 0;
+                       IdCard* id_card = NULL;
+                       GeeLinkedList* _tmp11_ = NULL;
+                       gint _tmp12_ = 0;
+                       gpointer _tmp13_ = NULL;
+                       gboolean _tmp14_ = FALSE;
+                       IdCard* _tmp15_ = NULL;
+                       IdCard* _tmp16_ = NULL;
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp8_ = _id_card_index;
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _id_card_index = _tmp8_ + 1;
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp9_ = _id_card_index;
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp10_ = _id_card_size;
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       if (!(_tmp9_ < _tmp10_)) {
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               break;
+#line 1513 "moonshot-identities-manager.c"
+                       }
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp11_ = _id_card_list;
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp12_ = _id_card_index;
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp13_ = gee_abstract_list_get ((GeeAbstractList*) _tmp11_, _tmp12_);
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       id_card = (IdCard*) _tmp13_;
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp15_ = new_card;
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp16_ = id_card;
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       if (_tmp15_ != _tmp16_) {
+#line 1529 "moonshot-identities-manager.c"
+                               IdCard* _tmp17_ = NULL;
+                               const gchar* _tmp18_ = NULL;
+                               const gchar* _tmp19_ = NULL;
+                               IdCard* _tmp20_ = NULL;
+                               const gchar* _tmp21_ = NULL;
+                               const gchar* _tmp22_ = NULL;
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp17_ = id_card;
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp18_ = id_card_get_nai (_tmp17_);
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp19_ = _tmp18_;
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp20_ = new_card;
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp21_ = id_card_get_nai (_tmp20_);
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp22_ = _tmp21_;
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp14_ = g_strcmp0 (_tmp19_, _tmp22_) == 0;
+#line 1550 "moonshot-identities-manager.c"
+                       } else {
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp14_ = FALSE;
+#line 1554 "moonshot-identities-manager.c"
+                       }
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       if (_tmp14_) {
+#line 1558 "moonshot-identities-manager.c"
+                               GeeArrayList* _tmp23_ = NULL;
+                               IdCard* _tmp24_ = NULL;
+#line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp23_ = dups;
+#line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp24_ = id_card;
+#line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               gee_abstract_collection_add ((GeeAbstractCollection*) _tmp23_, _tmp24_);
+#line 1567 "moonshot-identities-manager.c"
+                       }
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _g_object_unref0 (id_card);
+#line 1571 "moonshot-identities-manager.c"
+               }
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _g_object_unref0 (_id_card_list);
+#line 1575 "moonshot-identities-manager.c"
+       }
+       {
+               GeeArrayList* _id_card_list = NULL;
+               GeeArrayList* _tmp25_ = NULL;
+               GeeArrayList* _tmp26_ = NULL;
+               gint _id_card_size = 0;
+               GeeArrayList* _tmp27_ = NULL;
+               gint _tmp28_ = 0;
+               gint _tmp29_ = 0;
+               gint _id_card_index = 0;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp25_ = dups;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp26_ = _g_object_ref0 (_tmp25_);
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _id_card_list = _tmp26_;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp27_ = _id_card_list;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp28_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp27_);
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp29_ = _tmp28_;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _id_card_size = _tmp29_;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _id_card_index = -1;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               while (TRUE) {
+#line 1604 "moonshot-identities-manager.c"
+                       gint _tmp30_ = 0;
+                       gint _tmp31_ = 0;
+                       gint _tmp32_ = 0;
+                       IdCard* id_card = NULL;
+                       GeeArrayList* _tmp33_ = NULL;
+                       gint _tmp34_ = 0;
+                       gpointer _tmp35_ = NULL;
+                       MoonshotLogger* _tmp36_ = NULL;
+                       IdCard* _tmp37_ = NULL;
+                       const gchar* _tmp38_ = NULL;
+                       const gchar* _tmp39_ = NULL;
+                       gchar* _tmp40_ = NULL;
+                       gchar* _tmp41_ = NULL;
+                       IdCard* _tmp42_ = NULL;
+                       IdCard* _tmp43_ = NULL;
+                       TrustAnchor* _tmp44_ = NULL;
+                       TrustAnchor* _tmp45_ = NULL;
+                       IdCard* _tmp46_ = NULL;
+                       TrustAnchor* _tmp47_ = NULL;
+                       TrustAnchor* _tmp48_ = NULL;
+                       gint _tmp49_ = 0;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp30_ = _id_card_index;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _id_card_index = _tmp30_ + 1;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp31_ = _id_card_index;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp32_ = _id_card_size;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       if (!(_tmp31_ < _tmp32_)) {
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               break;
+#line 1638 "moonshot-identities-manager.c"
+                       }
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp33_ = _id_card_list;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp34_ = _id_card_index;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp35_ = gee_abstract_list_get ((GeeAbstractList*) _tmp33_, _tmp34_);
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       id_card = (IdCard*) _tmp35_;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp36_ = identity_manager_model_logger;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp37_ = new_card;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp38_ = id_card_get_nai (_tmp37_);
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp39_ = _tmp38_;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp40_ = g_strdup_printf ("removing duplicate id for '%s'\n", _tmp39_);
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp41_ = _tmp40_;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       moonshot_logger_trace (_tmp36_, _tmp41_, NULL);
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _g_free0 (_tmp41_);
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp42_ = id_card;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       identity_manager_model_remove_card_internal (self, _tmp42_);
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp43_ = new_card;
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp44_ = id_card_get_trust_anchor (_tmp43_);
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp45_ = _tmp44_;
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp46_ = id_card;
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp47_ = id_card_get_trust_anchor (_tmp46_);
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp48_ = _tmp47_;
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp49_ = trust_anchor_Compare (_tmp45_, _tmp48_);
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       if (_tmp49_ == 0) {
+#line 1684 "moonshot-identities-manager.c"
+                               MoonshotLogger* _tmp50_ = NULL;
+                               IdCard* _tmp51_ = NULL;
+                               TrustAnchor* _tmp52_ = NULL;
+                               TrustAnchor* _tmp53_ = NULL;
+                               IdCard* _tmp54_ = NULL;
+                               TrustAnchor* _tmp55_ = NULL;
+                               TrustAnchor* _tmp56_ = NULL;
+                               const gchar* _tmp57_ = NULL;
+                               const gchar* _tmp58_ = NULL;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp50_ = identity_manager_model_logger;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               moonshot_logger_trace (_tmp50_, "Old and new cards have same trust anchor. Re-using the datetime_added " \
+"field from the old card.", NULL);
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp51_ = new_card;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp52_ = id_card_get_trust_anchor (_tmp51_);
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp53_ = _tmp52_;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp54_ = id_card;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp55_ = id_card_get_trust_anchor (_tmp54_);
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp56_ = _tmp55_;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp57_ = trust_anchor_get_datetime_added (_tmp56_);
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp58_ = _tmp57_;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               trust_anchor_set_datetime_added (_tmp53_, _tmp58_);
+#line 1716 "moonshot-identities-manager.c"
+                       }
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _g_object_unref0 (id_card);
+#line 1720 "moonshot-identities-manager.c"
+               }
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _g_object_unref0 (_id_card_list);
+#line 1724 "moonshot-identities-manager.c"
+       }
+#line 165 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if ((&_vala_old_duplicates) != NULL) {
+#line 1728 "moonshot-identities-manager.c"
+               GeeArrayList* _tmp59_ = NULL;
+               GeeArrayList* _tmp60_ = NULL;
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp59_ = dups;
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp60_ = _g_object_ref0 (_tmp59_);
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _g_object_unref0 (_vala_old_duplicates);
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _vala_old_duplicates = _tmp60_;
+#line 1739 "moonshot-identities-manager.c"
+       }
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp61_ = dups;
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp62_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp61_);
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp63_ = _tmp62_;
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       result = _tmp63_ > 0;
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _g_object_unref0 (cards);
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _g_object_unref0 (dups);
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (old_duplicates) {
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               *old_duplicates = _vala_old_duplicates;
+#line 1757 "moonshot-identities-manager.c"
+       } else {
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _g_object_unref0 (_vala_old_duplicates);
+#line 1761 "moonshot-identities-manager.c"
+       }
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       return result;
+#line 1765 "moonshot-identities-manager.c"
+}
+
+
+static const gchar* string_to_string (const gchar* self) {
+       const gchar* result = NULL;
+#line 1420 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 1421 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       result = self;
+#line 1421 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       return result;
+#line 1777 "moonshot-identities-manager.c"
+}
+
+
+gboolean identity_manager_model_find_duplicate_nai_sets (IdentityManagerModel* self, GeeArrayList** duplicates) {
+       GeeArrayList* _vala_duplicates = NULL;
+       gboolean result = FALSE;
+       GeeHashMap* nais = NULL;
+       GeeHashMap* _tmp0_ = NULL;
+       GeeArrayList* _tmp1_ = NULL;
+       GeeLinkedList* card_list = NULL;
+       GeeLinkedList* _tmp2_ = NULL;
+       GeeLinkedList* _tmp3_ = NULL;
+       gboolean found = FALSE;
+       GeeArrayList* _tmp46_ = NULL;
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_val_if_fail (self != NULL, FALSE);
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp0_ = gee_hash_map_new (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, (GDestroyNotify) g_free, GEE_TYPE_ARRAY_LIST, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       nais = _tmp0_;
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp1_ = gee_array_list_new (GEE_TYPE_ARRAY_LIST, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL);
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _g_object_unref0 (_vala_duplicates);
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _vala_duplicates = _tmp1_;
+#line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp2_ = identity_manager_model_get_card_list (self);
+#line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       card_list = _tmp2_;
+#line 179 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp3_ = card_list;
+#line 179 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (_tmp3_ == NULL) {
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               result = FALSE;
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _g_object_unref0 (card_list);
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _g_object_unref0 (nais);
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               if (duplicates) {
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       *duplicates = _vala_duplicates;
+#line 1822 "moonshot-identities-manager.c"
+               } else {
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _g_object_unref0 (_vala_duplicates);
+#line 1826 "moonshot-identities-manager.c"
+               }
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               return result;
+#line 1830 "moonshot-identities-manager.c"
+       }
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       found = FALSE;
+#line 1834 "moonshot-identities-manager.c"
+       {
+               GeeLinkedList* _id_card_list = NULL;
+               GeeLinkedList* _tmp4_ = NULL;
+               GeeLinkedList* _tmp5_ = NULL;
+               gint _id_card_size = 0;
+               GeeLinkedList* _tmp6_ = NULL;
+               gint _tmp7_ = 0;
+               gint _tmp8_ = 0;
+               gint _id_card_index = 0;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp4_ = card_list;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp5_ = _g_object_ref0 (_tmp4_);
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _id_card_list = _tmp5_;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp6_ = _id_card_list;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp7_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp6_);
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp8_ = _tmp7_;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _id_card_size = _tmp8_;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _id_card_index = -1;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               while (TRUE) {
+#line 1862 "moonshot-identities-manager.c"
+                       gint _tmp9_ = 0;
+                       gint _tmp10_ = 0;
+                       gint _tmp11_ = 0;
+                       IdCard* id_card = NULL;
+                       GeeLinkedList* _tmp12_ = NULL;
+                       gint _tmp13_ = 0;
+                       gpointer _tmp14_ = NULL;
+                       MoonshotLogger* _tmp15_ = NULL;
+                       IdCard* _tmp16_ = NULL;
+                       const gchar* _tmp17_ = NULL;
+                       const gchar* _tmp18_ = NULL;
+                       const gchar* _tmp19_ = NULL;
+                       IdCard* _tmp20_ = NULL;
+                       const gchar* _tmp21_ = NULL;
+                       const gchar* _tmp22_ = NULL;
+                       const gchar* _tmp23_ = NULL;
+                       gchar* _tmp24_ = NULL;
+                       gchar* _tmp25_ = NULL;
+                       GeeHashMap* _tmp26_ = NULL;
+                       IdCard* _tmp27_ = NULL;
+                       const gchar* _tmp28_ = NULL;
+                       const gchar* _tmp29_ = NULL;
+                       gboolean _tmp30_ = FALSE;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp9_ = _id_card_index;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _id_card_index = _tmp9_ + 1;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp10_ = _id_card_index;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp11_ = _id_card_size;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       if (!(_tmp10_ < _tmp11_)) {
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               break;
+#line 1898 "moonshot-identities-manager.c"
+                       }
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp12_ = _id_card_list;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp13_ = _id_card_index;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp14_ = gee_abstract_list_get ((GeeAbstractList*) _tmp12_, _tmp13_);
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       id_card = (IdCard*) _tmp14_;
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp15_ = identity_manager_model_logger;
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp16_ = id_card;
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp17_ = id_card_get_display_name (_tmp16_);
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp18_ = _tmp17_;
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp19_ = string_to_string (_tmp18_);
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp20_ = id_card;
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp21_ = id_card_get_nai (_tmp20_);
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp22_ = _tmp21_;
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp23_ = string_to_string (_tmp22_);
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp24_ = g_strconcat ("load_id_cards: Loading card with display name '", _tmp19_, "' and nai '", _tmp23_, "'", NULL);
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp25_ = _tmp24_;
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       moonshot_logger_trace (_tmp15_, _tmp25_, NULL);
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _g_free0 (_tmp25_);
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp26_ = nais;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp27_ = id_card;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp28_ = id_card_get_nai (_tmp27_);
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp29_ = _tmp28_;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp30_ = gee_abstract_map_has_key ((GeeAbstractMap*) _tmp26_, _tmp29_);
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       if (_tmp30_) {
+#line 1946 "moonshot-identities-manager.c"
+                               GeeArrayList* list = NULL;
+                               GeeHashMap* _tmp31_ = NULL;
+                               IdCard* _tmp32_ = NULL;
+                               const gchar* _tmp33_ = NULL;
+                               const gchar* _tmp34_ = NULL;
+                               gpointer _tmp35_ = NULL;
+                               GeeArrayList* _tmp36_ = NULL;
+                               IdCard* _tmp37_ = NULL;
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp31_ = nais;
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp32_ = id_card;
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp33_ = id_card_get_nai (_tmp32_);
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp34_ = _tmp33_;
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp35_ = gee_abstract_map_get ((GeeAbstractMap*) _tmp31_, _tmp34_);
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               list = (GeeArrayList*) _tmp35_;
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp36_ = list;
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp37_ = id_card;
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               gee_abstract_collection_add ((GeeAbstractCollection*) _tmp36_, _tmp37_);
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _g_object_unref0 (list);
+#line 1975 "moonshot-identities-manager.c"
+                       } else {
+                               GeeArrayList* list = NULL;
+                               GeeArrayList* _tmp38_ = NULL;
+                               GeeArrayList* _tmp39_ = NULL;
+                               IdCard* _tmp40_ = NULL;
+                               GeeHashMap* _tmp41_ = NULL;
+                               IdCard* _tmp42_ = NULL;
+                               const gchar* _tmp43_ = NULL;
+                               const gchar* _tmp44_ = NULL;
+                               GeeArrayList* _tmp45_ = NULL;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp38_ = gee_array_list_new (TYPE_ID_CARD, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL);
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               list = _tmp38_;
+#line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp39_ = list;
+#line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp40_ = id_card;
+#line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               gee_abstract_collection_add ((GeeAbstractCollection*) _tmp39_, _tmp40_);
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp41_ = nais;
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp42_ = id_card;
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp43_ = id_card_get_nai (_tmp42_);
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp44_ = _tmp43_;
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp45_ = list;
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               gee_abstract_map_set ((GeeAbstractMap*) _tmp41_, _tmp44_, _tmp45_);
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _g_object_unref0 (list);
+#line 2010 "moonshot-identities-manager.c"
+                       }
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _g_object_unref0 (id_card);
+#line 2014 "moonshot-identities-manager.c"
+               }
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _g_object_unref0 (_id_card_list);
+#line 2018 "moonshot-identities-manager.c"
+       }
+#line 201 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp46_ = gee_array_list_new (GEE_TYPE_ARRAY_LIST, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL);
+#line 201 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _g_object_unref0 (_vala_duplicates);
+#line 201 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _vala_duplicates = _tmp46_;
+#line 2026 "moonshot-identities-manager.c"
+       {
+               GeeIterator* _entry_it = NULL;
+               GeeHashMap* _tmp47_ = NULL;
+               GeeSet* _tmp48_ = NULL;
+               GeeSet* _tmp49_ = NULL;
+               GeeSet* _tmp50_ = NULL;
+               GeeIterator* _tmp51_ = NULL;
+               GeeIterator* _tmp52_ = NULL;
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp47_ = nais;
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp48_ = gee_abstract_map_get_entries ((GeeAbstractMap*) _tmp47_);
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp49_ = _tmp48_;
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp50_ = _tmp49_;
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp51_ = gee_iterable_iterator ((GeeIterable*) _tmp50_);
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp52_ = _tmp51_;
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _g_object_unref0 (_tmp50_);
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _entry_it = _tmp52_;
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               while (TRUE) {
+#line 2053 "moonshot-identities-manager.c"
+                       GeeIterator* _tmp53_ = NULL;
+                       gboolean _tmp54_ = FALSE;
+                       GeeMapEntry* entry = NULL;
+                       GeeIterator* _tmp55_ = NULL;
+                       gpointer _tmp56_ = NULL;
+                       GeeArrayList* list = NULL;
+                       GeeMapEntry* _tmp57_ = NULL;
+                       gconstpointer _tmp58_ = NULL;
+                       GeeArrayList* _tmp59_ = NULL;
+                       GeeArrayList* _tmp60_ = NULL;
+                       GeeArrayList* _tmp61_ = NULL;
+                       gint _tmp62_ = 0;
+                       gint _tmp63_ = 0;
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp53_ = _entry_it;
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp54_ = gee_iterator_next (_tmp53_);
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       if (!_tmp54_) {
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               break;
+#line 2075 "moonshot-identities-manager.c"
+                       }
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp55_ = _entry_it;
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp56_ = gee_iterator_get (_tmp55_);
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       entry = (GeeMapEntry*) _tmp56_;
+#line 203 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp57_ = entry;
+#line 203 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp58_ = gee_map_entry_get_value (_tmp57_);
+#line 203 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp59_ = _tmp58_;
+#line 203 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp60_ = _g_object_ref0 ((GeeArrayList*) _tmp59_);
+#line 203 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       list = _tmp60_;
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp61_ = list;
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp62_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp61_);
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp63_ = _tmp62_;
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       if (_tmp63_ > 1) {
+#line 2101 "moonshot-identities-manager.c"
+                               GeeArrayList* _tmp64_ = NULL;
+                               GeeArrayList* _tmp65_ = NULL;
+#line 205 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp64_ = _vala_duplicates;
+#line 205 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp65_ = list;
+#line 205 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               gee_abstract_collection_add ((GeeAbstractCollection*) _tmp64_, _tmp65_);
+#line 206 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               found = TRUE;
+#line 2112 "moonshot-identities-manager.c"
+                       }
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _g_object_unref0 (list);
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _g_object_unref0 (entry);
+#line 2118 "moonshot-identities-manager.c"
+               }
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _g_object_unref0 (_entry_it);
+#line 2122 "moonshot-identities-manager.c"
+       }
+#line 209 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       result = found;
+#line 209 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _g_object_unref0 (card_list);
+#line 209 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _g_object_unref0 (nais);
+#line 209 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (duplicates) {
+#line 209 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               *duplicates = _vala_duplicates;
+#line 2134 "moonshot-identities-manager.c"
+       } else {
+#line 209 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _g_object_unref0 (_vala_duplicates);
+#line 2138 "moonshot-identities-manager.c"
+       }
+#line 209 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       return result;
+#line 2142 "moonshot-identities-manager.c"
+}
+
+
+IdCard* identity_manager_model_find_id_card (IdentityManagerModel* self, const gchar* nai, gboolean force_flat_file_store) {
+       IdCard* result = NULL;
+       IdCard* retval = NULL;
+       IIdentityCardStoreStoreType saved_store_type = 0;
+       IIdentityCardStoreStoreType _tmp0_ = 0;
+       gboolean _tmp1_ = FALSE;
+       IIdentityCardStoreStoreType _tmp18_ = 0;
+       gboolean _tmp19_ = FALSE;
+       gboolean _tmp20_ = FALSE;
+#line 213 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 214 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       retval = NULL;
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp0_ = identity_manager_model_get_store_type (self);
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       saved_store_type = _tmp0_;
+#line 216 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp1_ = force_flat_file_store;
+#line 216 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (_tmp1_) {
+#line 217 "/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 2169 "moonshot-identities-manager.c"
+       }
+       {
+               GeeLinkedList* _id_list = NULL;
+               GeeLinkedList* _tmp2_ = NULL;
+               gint _id_size = 0;
+               GeeLinkedList* _tmp3_ = NULL;
+               gint _tmp4_ = 0;
+               gint _tmp5_ = 0;
+               gint _id_index = 0;
+#line 219 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp2_ = identity_manager_model_get_card_list (self);
+#line 219 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _id_list = _tmp2_;
+#line 219 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp3_ = _id_list;
+#line 219 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp4_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp3_);
+#line 219 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp5_ = _tmp4_;
+#line 219 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _id_size = _tmp5_;
+#line 219 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _id_index = -1;
+#line 219 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               while (TRUE) {
+#line 2195 "moonshot-identities-manager.c"
+                       gint _tmp6_ = 0;
+                       gint _tmp7_ = 0;
+                       gint _tmp8_ = 0;
+                       IdCard* id = NULL;
+                       GeeLinkedList* _tmp9_ = NULL;
+                       gint _tmp10_ = 0;
+                       gpointer _tmp11_ = NULL;
+                       IdCard* _tmp12_ = NULL;
+                       const gchar* _tmp13_ = NULL;
+                       const gchar* _tmp14_ = NULL;
+                       const gchar* _tmp15_ = NULL;
+#line 219 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp6_ = _id_index;
+#line 219 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _id_index = _tmp6_ + 1;
+#line 219 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp7_ = _id_index;
+#line 219 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp8_ = _id_size;
+#line 219 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       if (!(_tmp7_ < _tmp8_)) {
+#line 219 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               break;
+#line 2219 "moonshot-identities-manager.c"
+                       }
+#line 219 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp9_ = _id_list;
+#line 219 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp10_ = _id_index;
+#line 219 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp11_ = gee_abstract_list_get ((GeeAbstractList*) _tmp9_, _tmp10_);
+#line 219 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       id = (IdCard*) _tmp11_;
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp12_ = id;
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp13_ = id_card_get_nai (_tmp12_);
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp14_ = _tmp13_;
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp15_ = nai;
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       if (g_strcmp0 (_tmp14_, _tmp15_) == 0) {
+#line 2239 "moonshot-identities-manager.c"
+                               IdCard* _tmp16_ = NULL;
+                               IdCard* _tmp17_ = NULL;
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp16_ = id;
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp17_ = _g_object_ref0 (_tmp16_);
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _g_object_unref0 (retval);
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               retval = _tmp17_;
+#line 222 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _g_object_unref0 (id);
+#line 222 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               break;
+#line 2254 "moonshot-identities-manager.c"
+                       }
+#line 219 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _g_object_unref0 (id);
+#line 2258 "moonshot-identities-manager.c"
+               }
+#line 219 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _g_object_unref0 (_id_list);
+#line 2262 "moonshot-identities-manager.c"
+       }
+#line 225 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp18_ = saved_store_type;
+#line 225 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       identity_manager_model_set_store_type (self, _tmp18_);
+#line 226 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp20_ = force_flat_file_store;
+#line 226 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (_tmp20_) {
+#line 2272 "moonshot-identities-manager.c"
+               IIdentityCardStoreStoreType _tmp21_ = 0;
+#line 227 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp21_ = saved_store_type;
+#line 227 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp19_ = _tmp21_ != IIDENTITY_CARD_STORE_STORE_TYPE_FLAT_FILE;
+#line 2278 "moonshot-identities-manager.c"
+       } else {
+#line 226 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp19_ = FALSE;
+#line 2282 "moonshot-identities-manager.c"
+       }
+#line 226 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (_tmp19_) {
+#line 228 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               g_signal_emit_by_name (self, "card-list-changed");
+#line 2288 "moonshot-identities-manager.c"
+       }
+#line 229 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       result = retval;
+#line 229 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       return result;
+#line 2294 "moonshot-identities-manager.c"
+}
+
+
+void identity_manager_model_add_card (IdentityManagerModel* self, IdCard* card, gboolean force_flat_file_store, GeeArrayList** old_duplicates) {
+       GeeArrayList* _vala_old_duplicates = NULL;
+       IdCard* _tmp0_ = NULL;
+       gboolean _tmp1_ = FALSE;
+       gboolean _tmp2_ = FALSE;
+       gchar* candidate = NULL;
+       IIdentityCardStoreStoreType saved_store_type = 0;
+       IIdentityCardStoreStoreType _tmp4_ = 0;
+       gboolean _tmp5_ = FALSE;
+       IdCard* _tmp6_ = NULL;
+       GeeArrayList* _tmp7_ = NULL;
+       IdCard* _tmp8_ = NULL;
+       const gchar* _tmp9_ = NULL;
+       const gchar* _tmp10_ = NULL;
+       gchar* _tmp11_ = NULL;
+       gboolean _tmp12_ = FALSE;
+       IdCard* _tmp15_ = NULL;
+       gboolean _tmp16_ = FALSE;
+       gboolean _tmp17_ = FALSE;
+       MoonshotLogger* _tmp21_ = NULL;
+       IdCard* _tmp22_ = NULL;
+       const gchar* _tmp23_ = NULL;
+       const gchar* _tmp24_ = NULL;
+       IdCard* _tmp25_ = NULL;
+       gchar* _tmp26_ = NULL;
+       gchar* _tmp27_ = NULL;
+       gchar* _tmp28_ = NULL;
+       gchar* _tmp29_ = NULL;
+       IIdentityCardStore* _tmp30_ = NULL;
+       IdCard* _tmp31_ = NULL;
+       IIdentityCardStoreStoreType _tmp32_ = 0;
+#line 232 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_if_fail (self != NULL);
+#line 232 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_if_fail (card != NULL);
+#line 233 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp0_ = card;
+#line 233 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp1_ = id_card_get_temporary (_tmp0_);
+#line 233 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp2_ = _tmp1_;
+#line 233 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (_tmp2_) {
+#line 2341 "moonshot-identities-manager.c"
+               MoonshotLogger* _tmp3_ = NULL;
+#line 234 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp3_ = identity_manager_model_logger;
+#line 234 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               moonshot_logger_trace (_tmp3_, "add_card: card is temporary; returning.", NULL);
+#line 235 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               if (old_duplicates) {
+#line 235 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       *old_duplicates = _vala_old_duplicates;
+#line 2351 "moonshot-identities-manager.c"
+               } else {
+#line 235 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _g_object_unref0 (_vala_old_duplicates);
+#line 2355 "moonshot-identities-manager.c"
+               }
+#line 235 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               return;
+#line 2359 "moonshot-identities-manager.c"
+       }
+#line 239 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp4_ = identity_manager_model_get_store_type (self);
+#line 239 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       saved_store_type = _tmp4_;
+#line 241 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp5_ = force_flat_file_store;
+#line 241 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (_tmp5_) {
+#line 242 "/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 2371 "moonshot-identities-manager.c"
+       }
+#line 244 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp6_ = card;
+#line 244 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       identity_manager_model_remove_duplicates (self, _tmp6_, &_tmp7_);
+#line 244 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _g_object_unref0 (_vala_old_duplicates);
+#line 244 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _vala_old_duplicates = _tmp7_;
+#line 246 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp8_ = card;
+#line 246 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp9_ = id_card_get_display_name (_tmp8_);
+#line 246 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp10_ = _tmp9_;
+#line 246 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp12_ = identity_manager_model_display_name_is_valid (self, _tmp10_, &_tmp11_);
+#line 246 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _g_free0 (candidate);
+#line 246 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       candidate = _tmp11_;
+#line 246 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (!_tmp12_) {
+#line 2395 "moonshot-identities-manager.c"
+               IdCard* _tmp13_ = NULL;
+               const gchar* _tmp14_ = NULL;
+#line 248 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp13_ = card;
+#line 248 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp14_ = candidate;
+#line 248 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               id_card_set_display_name (_tmp13_, _tmp14_);
+#line 2404 "moonshot-identities-manager.c"
+       }
+#line 251 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp15_ = card;
+#line 251 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp16_ = id_card_get_store_password (_tmp15_);
+#line 251 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp17_ = _tmp16_;
+#line 251 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (!_tmp17_) {
+#line 2414 "moonshot-identities-manager.c"
+               PasswordHashTable* _tmp18_ = NULL;
+               IdCard* _tmp19_ = NULL;
+               IIdentityCardStore* _tmp20_ = NULL;
+#line 252 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp18_ = self->priv->password_table;
+#line 252 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp19_ = card;
+#line 252 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp20_ = self->priv->store;
+#line 252 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               password_hash_table_CachePassword (_tmp18_, _tmp19_, _tmp20_);
+#line 2426 "moonshot-identities-manager.c"
+       }
+#line 254 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp21_ = identity_manager_model_logger;
+#line 254 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp22_ = card;
+#line 254 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp23_ = id_card_get_display_name (_tmp22_);
+#line 254 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp24_ = _tmp23_;
+#line 254 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp25_ = card;
+#line 254 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp26_ = id_card_get_services_string (_tmp25_, "; ");
+#line 254 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp27_ = _tmp26_;
+#line 254 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp28_ = g_strdup_printf ("add_card: Adding card '%s' with services: '%s'", _tmp24_, _tmp27_);
+#line 254 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp29_ = _tmp28_;
+#line 254 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       moonshot_logger_trace (_tmp21_, _tmp29_, NULL);
+#line 254 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _g_free0 (_tmp29_);
+#line 254 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _g_free0 (_tmp27_);
+#line 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp30_ = self->priv->store;
+#line 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp31_ = card;
+#line 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       iidentity_card_store_add_card (_tmp30_, _tmp31_);
+#line 258 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp32_ = saved_store_type;
+#line 258 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       identity_manager_model_set_store_type (self, _tmp32_);
+#line 259 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_signal_emit_by_name (self, "card-list-changed");
+#line 232 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _g_free0 (candidate);
+#line 232 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (old_duplicates) {
+#line 232 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               *old_duplicates = _vala_old_duplicates;
+#line 2470 "moonshot-identities-manager.c"
+       } else {
+#line 232 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _g_object_unref0 (_vala_old_duplicates);
+#line 2474 "moonshot-identities-manager.c"
+       }
+}
+
+
+IdCard* identity_manager_model_update_card (IdentityManagerModel* self, IdCard* card) {
+       IdCard* result = NULL;
+       MoonshotLogger* _tmp0_ = NULL;
+       IdCard* retval = NULL;
+       IdCard* _tmp1_ = NULL;
+       gboolean _tmp2_ = FALSE;
+       gboolean _tmp3_ = FALSE;
+       IdCard* _tmp6_ = NULL;
+       gboolean _tmp7_ = FALSE;
+       gboolean _tmp8_ = FALSE;
+       IIdentityCardStore* _tmp15_ = NULL;
+       IdCard* _tmp16_ = NULL;
+       IdCard* _tmp17_ = NULL;
+#line 262 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 262 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_val_if_fail (card != NULL, NULL);
+#line 263 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp0_ = identity_manager_model_logger;
+#line 263 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       moonshot_logger_trace (_tmp0_, "update_card", NULL);
+#line 266 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp1_ = card;
+#line 266 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp2_ = id_card_get_temporary (_tmp1_);
+#line 266 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp3_ = _tmp2_;
+#line 266 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (_tmp3_) {
+#line 2508 "moonshot-identities-manager.c"
+               IdCard* _tmp4_ = NULL;
+               IdCard* _tmp5_ = NULL;
+#line 267 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp4_ = card;
+#line 267 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp5_ = _g_object_ref0 (_tmp4_);
+#line 267 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _g_object_unref0 (retval);
+#line 267 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               retval = _tmp5_;
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               result = retval;
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               return result;
+#line 2523 "moonshot-identities-manager.c"
+       }
+#line 271 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp6_ = card;
+#line 271 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp7_ = id_card_get_store_password (_tmp6_);
+#line 271 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp8_ = _tmp7_;
+#line 271 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (!_tmp8_) {
+#line 2533 "moonshot-identities-manager.c"
+               PasswordHashTable* _tmp9_ = NULL;
+               IdCard* _tmp10_ = NULL;
+               IIdentityCardStore* _tmp11_ = NULL;
+#line 272 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp9_ = self->priv->password_table;
+#line 272 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp10_ = card;
+#line 272 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp11_ = self->priv->store;
+#line 272 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               password_hash_table_CachePassword (_tmp9_, _tmp10_, _tmp11_);
+#line 2545 "moonshot-identities-manager.c"
+       } else {
+               PasswordHashTable* _tmp12_ = NULL;
+               IdCard* _tmp13_ = NULL;
+               IIdentityCardStore* _tmp14_ = NULL;
+#line 274 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp12_ = self->priv->password_table;
+#line 274 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp13_ = card;
+#line 274 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp14_ = self->priv->store;
+#line 274 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               password_hash_table_RemovePassword (_tmp12_, _tmp13_, _tmp14_);
+#line 2558 "moonshot-identities-manager.c"
+       }
+#line 275 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp15_ = self->priv->store;
+#line 275 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp16_ = card;
+#line 275 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp17_ = iidentity_card_store_update_card (_tmp15_, _tmp16_);
+#line 275 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _g_object_unref0 (retval);
+#line 275 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       retval = _tmp17_;
+#line 276 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_signal_emit_by_name (self, "card-list-changed");
+#line 277 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       result = retval;
+#line 277 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       return result;
+#line 2576 "moonshot-identities-manager.c"
+}
+
+
+static gboolean identity_manager_model_remove_card_internal (IdentityManagerModel* self, IdCard* card) {
+       gboolean result = FALSE;
+       IdCard* _tmp0_ = NULL;
+       gboolean _tmp1_ = FALSE;
+       gboolean _tmp2_ = FALSE;
+       PasswordHashTable* _tmp3_ = NULL;
+       IdCard* _tmp4_ = NULL;
+       IIdentityCardStore* _tmp5_ = NULL;
+       IIdentityCardStore* _tmp6_ = NULL;
+       IdCard* _tmp7_ = NULL;
+       gboolean _tmp8_ = FALSE;
+#line 280 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_val_if_fail (self != NULL, FALSE);
+#line 280 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_val_if_fail (card != NULL, FALSE);
+#line 281 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp0_ = card;
+#line 281 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp1_ = id_card_get_temporary (_tmp0_);
+#line 281 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp2_ = _tmp1_;
+#line 281 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (_tmp2_) {
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               result = FALSE;
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               return result;
+#line 2607 "moonshot-identities-manager.c"
+       }
+#line 283 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp3_ = self->priv->password_table;
+#line 283 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp4_ = card;
+#line 283 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp5_ = self->priv->store;
+#line 283 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       password_hash_table_RemovePassword (_tmp3_, _tmp4_, _tmp5_);
+#line 284 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp6_ = self->priv->store;
+#line 284 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp7_ = card;
+#line 284 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp8_ = iidentity_card_store_remove_card (_tmp6_, _tmp7_);
+#line 284 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       result = _tmp8_;
+#line 284 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       return result;
+#line 2627 "moonshot-identities-manager.c"
+}
+
+
+gboolean identity_manager_model_remove_card (IdentityManagerModel* self, IdCard* card) {
+       gboolean result = FALSE;
+       IdCard* _tmp0_ = NULL;
+       gboolean _tmp1_ = FALSE;
+       MoonshotLogger* _tmp9_ = NULL;
+       IdCard* _tmp10_ = NULL;
+       const gchar* _tmp11_ = NULL;
+       const gchar* _tmp12_ = NULL;
+       const gchar* _tmp13_ = NULL;
+       gchar* _tmp14_ = NULL;
+       gchar* _tmp15_ = NULL;
+#line 287 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_val_if_fail (self != NULL, FALSE);
+#line 287 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_val_if_fail (card != NULL, FALSE);
+#line 288 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp0_ = card;
+#line 288 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp1_ = identity_manager_model_remove_card_internal (self, _tmp0_);
+#line 288 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (_tmp1_) {
+#line 2652 "moonshot-identities-manager.c"
+               MoonshotLogger* _tmp2_ = NULL;
+               IdCard* _tmp3_ = NULL;
+               const gchar* _tmp4_ = NULL;
+               const gchar* _tmp5_ = NULL;
+               const gchar* _tmp6_ = NULL;
+               gchar* _tmp7_ = NULL;
+               gchar* _tmp8_ = NULL;
+#line 289 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp2_ = identity_manager_model_logger;
+#line 289 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp3_ = card;
+#line 289 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp4_ = id_card_get_display_name (_tmp3_);
+#line 289 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp5_ = _tmp4_;
+#line 289 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp6_ = string_to_string (_tmp5_);
+#line 289 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp7_ = g_strconcat ("remove_card: Removed '", _tmp6_, "'", NULL);
+#line 289 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp8_ = _tmp7_;
+#line 289 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               moonshot_logger_trace (_tmp2_, _tmp8_, NULL);
+#line 289 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _g_free0 (_tmp8_);
+#line 290 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               g_signal_emit_by_name (self, "card-list-changed");
+#line 291 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               result = TRUE;
+#line 291 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               return result;
+#line 2684 "moonshot-identities-manager.c"
+       }
+#line 293 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp9_ = identity_manager_model_logger;
+#line 293 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp10_ = card;
+#line 293 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp11_ = id_card_get_display_name (_tmp10_);
+#line 293 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp12_ = _tmp11_;
+#line 293 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp13_ = string_to_string (_tmp12_);
+#line 293 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp14_ = g_strconcat ("remove_card: Couldn't remove '", _tmp13_, "'", NULL);
+#line 293 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp15_ = _tmp14_;
+#line 293 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       moonshot_logger_warn (_tmp9_, _tmp15_, NULL);
+#line 293 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _g_free0 (_tmp15_);
+#line 294 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       result = FALSE;
+#line 294 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       return result;
+#line 2708 "moonshot-identities-manager.c"
+}
+
+
+void identity_manager_model_set_store_type (IdentityManagerModel* self, IIdentityCardStoreStoreType type) {
+       gboolean _tmp0_ = FALSE;
+       IIdentityCardStore* _tmp1_ = NULL;
+       IIdentityCardStoreStoreType _tmp5_ = 0;
+       gchar* before_now = NULL;
+       const gchar* _tmp8_ = NULL;
+       gchar* _tmp9_ = NULL;
+       gchar* _tmp10_ = NULL;
+       gchar* _tmp11_ = NULL;
+       gchar* _tmp12_ = NULL;
+       gboolean save_needed = FALSE;
+       gboolean _tmp45_ = FALSE;
+#line 299 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_if_fail (self != NULL);
+#line 300 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp1_ = self->priv->store;
+#line 300 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (_tmp1_ != NULL) {
+#line 2730 "moonshot-identities-manager.c"
+               IIdentityCardStore* _tmp2_ = NULL;
+               IIdentityCardStoreStoreType _tmp3_ = 0;
+               IIdentityCardStoreStoreType _tmp4_ = 0;
+#line 300 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp2_ = self->priv->store;
+#line 300 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp3_ = iidentity_card_store_get_store_type (_tmp2_);
+#line 300 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp4_ = type;
+#line 300 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp0_ = _tmp3_ == _tmp4_;
+#line 2742 "moonshot-identities-manager.c"
+       } else {
+#line 300 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp0_ = FALSE;
+#line 2746 "moonshot-identities-manager.c"
+       }
+#line 300 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (_tmp0_) {
+#line 301 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               return;
+#line 2752 "moonshot-identities-manager.c"
+       }
+#line 302 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp5_ = type;
+#line 302 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       switch (_tmp5_) {
+#line 302 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               case IIDENTITY_CARD_STORE_STORE_TYPE_KEYRING:
+#line 2760 "moonshot-identities-manager.c"
+               {
+                       KeyringStore* _tmp6_ = NULL;
+#line 305 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp6_ = keyring_store_new ();
+#line 305 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _g_object_unref0 (self->priv->store);
+#line 305 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       self->priv->store = (IIdentityCardStore*) _tmp6_;
+#line 306 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       break;
+#line 2771 "moonshot-identities-manager.c"
+               }
+               default:
+#line 302 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               case IIDENTITY_CARD_STORE_STORE_TYPE_FLAT_FILE:
+#line 2776 "moonshot-identities-manager.c"
+               {
+                       LocalFlatFileStore* _tmp7_ = NULL;
+#line 310 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp7_ = local_flat_file_store_new ();
+#line 310 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _g_object_unref0 (self->priv->store);
+#line 310 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       self->priv->store = (IIdentityCardStore*) _tmp7_;
+#line 311 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       break;
+#line 2787 "moonshot-identities-manager.c"
+               }
+       }
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp8_ = _ ("Before ");
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp9_ = trust_anchor_format_datetime_now ();
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp10_ = _tmp9_;
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp11_ = g_strconcat (_tmp8_, _tmp10_, NULL);
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp12_ = _tmp11_;
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _g_free0 (_tmp10_);
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       before_now = _tmp12_;
+#line 317 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       save_needed = FALSE;
+#line 2806 "moonshot-identities-manager.c"
+       {
+               GeeLinkedList* _id_list = NULL;
+               IIdentityCardStore* _tmp13_ = NULL;
+               GeeLinkedList* _tmp14_ = NULL;
+               gint _id_size = 0;
+               GeeLinkedList* _tmp15_ = NULL;
+               gint _tmp16_ = 0;
+               gint _tmp17_ = 0;
+               gint _id_index = 0;
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp13_ = self->priv->store;
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp14_ = iidentity_card_store_get_card_list (_tmp13_);
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _id_list = _tmp14_;
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp15_ = _id_list;
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp16_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp15_);
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp17_ = _tmp16_;
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _id_size = _tmp17_;
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _id_index = -1;
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               while (TRUE) {
+#line 2834 "moonshot-identities-manager.c"
+                       gint _tmp18_ = 0;
+                       gint _tmp19_ = 0;
+                       gint _tmp20_ = 0;
+                       IdCard* id = NULL;
+                       GeeLinkedList* _tmp21_ = NULL;
+                       gint _tmp22_ = 0;
+                       gpointer _tmp23_ = NULL;
+                       gboolean _tmp24_ = FALSE;
+                       IdCard* _tmp25_ = NULL;
+                       TrustAnchor* _tmp26_ = NULL;
+                       TrustAnchor* _tmp27_ = NULL;
+                       gboolean _tmp28_ = FALSE;
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp18_ = _id_index;
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _id_index = _tmp18_ + 1;
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp19_ = _id_index;
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp20_ = _id_size;
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       if (!(_tmp19_ < _tmp20_)) {
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               break;
+#line 2859 "moonshot-identities-manager.c"
+                       }
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp21_ = _id_list;
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp22_ = _id_index;
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp23_ = gee_abstract_list_get ((GeeAbstractList*) _tmp21_, _tmp22_);
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       id = (IdCard*) _tmp23_;
+#line 319 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp25_ = id;
+#line 319 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp26_ = id_card_get_trust_anchor (_tmp25_);
+#line 319 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp27_ = _tmp26_;
+#line 319 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp28_ = trust_anchor_is_empty (_tmp27_);
+#line 319 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       if (!_tmp28_) {
+#line 2879 "moonshot-identities-manager.c"
+                               IdCard* _tmp29_ = NULL;
+                               TrustAnchor* _tmp30_ = NULL;
+                               TrustAnchor* _tmp31_ = NULL;
+                               const gchar* _tmp32_ = NULL;
+                               const gchar* _tmp33_ = NULL;
+#line 319 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp29_ = id;
+#line 319 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp30_ = id_card_get_trust_anchor (_tmp29_);
+#line 319 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp31_ = _tmp30_;
+#line 319 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp32_ = trust_anchor_get_datetime_added (_tmp31_);
+#line 319 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp33_ = _tmp32_;
+#line 319 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp24_ = g_strcmp0 (_tmp33_, "") == 0;
+#line 2897 "moonshot-identities-manager.c"
+                       } else {
+#line 319 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp24_ = FALSE;
+#line 2901 "moonshot-identities-manager.c"
+                       }
+#line 319 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       if (_tmp24_) {
+#line 2905 "moonshot-identities-manager.c"
+                               MoonshotLogger* _tmp34_ = NULL;
+                               IdCard* _tmp35_ = NULL;
+                               const gchar* _tmp36_ = NULL;
+                               const gchar* _tmp37_ = NULL;
+                               const gchar* _tmp38_ = NULL;
+                               gchar* _tmp39_ = NULL;
+                               gchar* _tmp40_ = NULL;
+                               IdCard* _tmp41_ = NULL;
+                               TrustAnchor* _tmp42_ = NULL;
+                               TrustAnchor* _tmp43_ = NULL;
+                               const gchar* _tmp44_ = NULL;
+#line 320 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp34_ = identity_manager_model_logger;
+#line 320 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp35_ = id;
+#line 320 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp36_ = id_card_get_display_name (_tmp35_);
+#line 320 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp37_ = _tmp36_;
+#line 320 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp38_ = before_now;
+#line 320 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp39_ = g_strdup_printf ("set_store_type : Set ta_datetime_added for old trust anchor on '%s' to" \
+" '%s'", _tmp37_, _tmp38_);
+#line 320 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp40_ = _tmp39_;
+#line 320 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               moonshot_logger_trace (_tmp34_, _tmp40_, NULL);
+#line 320 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _g_free0 (_tmp40_);
+#line 321 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp41_ = id;
+#line 321 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp42_ = id_card_get_trust_anchor (_tmp41_);
+#line 321 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp43_ = _tmp42_;
+#line 321 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp44_ = before_now;
+#line 321 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               trust_anchor_set_datetime_added (_tmp43_, _tmp44_);
+#line 322 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               save_needed = TRUE;
+#line 2947 "moonshot-identities-manager.c"
+                       }
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _g_object_unref0 (id);
+#line 2951 "moonshot-identities-manager.c"
+               }
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _g_object_unref0 (_id_list);
+#line 2955 "moonshot-identities-manager.c"
+       }
+#line 325 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp45_ = save_needed;
+#line 325 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       if (_tmp45_) {
+#line 2961 "moonshot-identities-manager.c"
+               IIdentityCardStore* _tmp46_ = NULL;
+#line 326 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp46_ = self->priv->store;
+#line 326 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               iidentity_card_store_store_id_cards (_tmp46_);
+#line 2967 "moonshot-identities-manager.c"
+       }
+#line 299 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _g_free0 (before_now);
+#line 2971 "moonshot-identities-manager.c"
+}
+
+
+IIdentityCardStoreStoreType identity_manager_model_get_store_type (IdentityManagerModel* self) {
+       IIdentityCardStoreStoreType result = 0;
+       IIdentityCardStore* _tmp0_ = NULL;
+       IIdentityCardStoreStoreType _tmp1_ = 0;
+#line 330 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_val_if_fail (self != NULL, 0);
+#line 331 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp0_ = self->priv->store;
+#line 331 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp1_ = iidentity_card_store_get_store_type (_tmp0_);
+#line 331 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       result = _tmp1_;
+#line 331 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       return result;
+#line 2989 "moonshot-identities-manager.c"
+}
+
+
+gboolean identity_manager_model_HasNonTrivialIdentities (IdentityManagerModel* self) {
+       gboolean result = FALSE;
+#line 334 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_val_if_fail (self != NULL, FALSE);
+#line 2997 "moonshot-identities-manager.c"
+       {
+               GeeLinkedList* _card_list = NULL;
+               IIdentityCardStore* _tmp0_ = NULL;
+               GeeLinkedList* _tmp1_ = NULL;
+               gint _card_size = 0;
+               GeeLinkedList* _tmp2_ = NULL;
+               gint _tmp3_ = 0;
+               gint _tmp4_ = 0;
+               gint _card_index = 0;
+#line 335 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp0_ = self->priv->store;
+#line 335 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp1_ = iidentity_card_store_get_card_list (_tmp0_);
+#line 335 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _card_list = _tmp1_;
+#line 335 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp2_ = _card_list;
+#line 335 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp3_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp2_);
+#line 335 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _tmp4_ = _tmp3_;
+#line 335 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _card_size = _tmp4_;
+#line 335 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _card_index = -1;
+#line 335 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               while (TRUE) {
+#line 3025 "moonshot-identities-manager.c"
+                       gint _tmp5_ = 0;
+                       gint _tmp6_ = 0;
+                       gint _tmp7_ = 0;
+                       IdCard* card = NULL;
+                       GeeLinkedList* _tmp8_ = NULL;
+                       gint _tmp9_ = 0;
+                       gpointer _tmp10_ = NULL;
+                       gboolean _tmp11_ = FALSE;
+                       gboolean _tmp12_ = FALSE;
+                       IdCard* _tmp13_ = NULL;
+                       gboolean _tmp14_ = FALSE;
+#line 335 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp5_ = _card_index;
+#line 335 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _card_index = _tmp5_ + 1;
+#line 335 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp6_ = _card_index;
+#line 335 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp7_ = _card_size;
+#line 335 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       if (!(_tmp6_ < _tmp7_)) {
+#line 335 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               break;
+#line 3049 "moonshot-identities-manager.c"
+                       }
+#line 335 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp8_ = _card_list;
+#line 335 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp9_ = _card_index;
+#line 335 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp10_ = gee_abstract_list_get ((GeeAbstractList*) _tmp8_, _tmp9_);
+#line 335 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       card = (IdCard*) _tmp10_;
+#line 338 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp13_ = card;
+#line 338 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _tmp14_ = id_card_is_no_identity (_tmp13_);
+#line 338 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       if (!_tmp14_) {
+#line 338 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp12_ = TRUE;
+#line 3067 "moonshot-identities-manager.c"
+                       } else {
+                               IdCard* _tmp15_ = NULL;
+                               GeeArrayList* _tmp16_ = NULL;
+                               GeeArrayList* _tmp17_ = NULL;
+                               gint _tmp18_ = 0;
+                               gint _tmp19_ = 0;
+#line 339 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp15_ = card;
+#line 339 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp16_ = id_card_get_services (_tmp15_);
+#line 339 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp17_ = _tmp16_;
+#line 339 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp18_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp17_);
+#line 339 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp19_ = _tmp18_;
+#line 339 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp12_ = _tmp19_ > 0;
+#line 3086 "moonshot-identities-manager.c"
+                       }
+#line 338 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       if (_tmp12_) {
+#line 338 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp11_ = TRUE;
+#line 3092 "moonshot-identities-manager.c"
+                       } else {
+                               IdCard* _tmp20_ = NULL;
+                               Rule* _tmp21_ = NULL;
+                               gint _tmp21__length1 = 0;
+                               Rule* _tmp22_ = NULL;
+                               gint _tmp22__length1 = 0;
+#line 340 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp20_ = card;
+#line 340 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp21_ = id_card_get_rules (_tmp20_, &_tmp21__length1);
+#line 340 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp22_ = _tmp21_;
+#line 340 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp22__length1 = _tmp21__length1;
+#line 340 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _tmp11_ = _tmp22__length1 > 0;
+#line 3109 "moonshot-identities-manager.c"
+                       }
+#line 338 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       if (_tmp11_) {
+#line 341 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               result = TRUE;
+#line 341 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _g_object_unref0 (card);
+#line 341 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               _g_object_unref0 (_card_list);
+#line 341 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                               return result;
+#line 3121 "moonshot-identities-manager.c"
+                       }
+#line 335 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+                       _g_object_unref0 (card);
+#line 3125 "moonshot-identities-manager.c"
+               }
+#line 335 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+               _g_object_unref0 (_card_list);
+#line 3129 "moonshot-identities-manager.c"
+       }
+#line 344 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       result = FALSE;
+#line 344 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       return result;
+#line 3135 "moonshot-identities-manager.c"
+}
+
+
+static gpointer _identity_manager_app_ref0 (gpointer self) {
+#line 352 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       return self ? identity_manager_app_ref (self) : NULL;
+#line 3142 "moonshot-identities-manager.c"
+}
+
+
+IdentityManagerModel* identity_manager_model_construct (GType object_type, IdentityManagerApp* parent_app, IIdentityCardStoreStoreType store_type) {
+       IdentityManagerModel * self = NULL;
+       MoonshotLogger* _tmp0_ = NULL;
+       IIdentityCardStoreStoreType _tmp1_ = 0;
+       GEnumValue* _tmp2_;
+       gchar* _tmp3_ = NULL;
+       gchar* _tmp4_ = NULL;
+       IdentityManagerApp* _tmp5_ = NULL;
+       IdentityManagerApp* _tmp6_ = NULL;
+       PasswordHashTable* _tmp7_ = NULL;
+       IIdentityCardStoreStoreType _tmp8_ = 0;
+#line 350 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_return_val_if_fail (parent_app != NULL, NULL);
+#line 350 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       self = (IdentityManagerModel*) g_object_new (object_type, NULL);
+#line 351 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp0_ = identity_manager_model_logger;
+#line 351 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp1_ = store_type;
+#line 351 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp2_ = g_enum_get_value (g_type_class_ref (IIDENTITY_CARD_STORE_TYPE_STORE_TYPE), _tmp1_);
+#line 351 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp3_ = g_strconcat ("IdentityManagerModel: store_type=", (_tmp2_ != NULL) ? _tmp2_->value_name : NULL, NULL);
+#line 351 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp4_ = _tmp3_;
+#line 351 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       moonshot_logger_trace (_tmp0_, _tmp4_, NULL);
+#line 351 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _g_free0 (_tmp4_);
+#line 352 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp5_ = parent_app;
+#line 352 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp6_ = _identity_manager_app_ref0 (_tmp5_);
+#line 352 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _identity_manager_app_unref0 (self->priv->parent);
+#line 352 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       self->priv->parent = _tmp6_;
+#line 353 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp7_ = password_hash_table_new ();
+#line 353 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _g_object_unref0 (self->priv->password_table);
+#line 353 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       self->priv->password_table = _tmp7_;
+#line 354 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp8_ = store_type;
+#line 354 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       identity_manager_model_set_store_type (self, _tmp8_);
+#line 350 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       return self;
+#line 3195 "moonshot-identities-manager.c"
+}
+
+
+IdentityManagerModel* identity_manager_model_new (IdentityManagerApp* parent_app, IIdentityCardStoreStoreType store_type) {
+#line 350 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       return identity_manager_model_construct (TYPE_IDENTITY_MANAGER_MODEL, parent_app, store_type);
+#line 3202 "moonshot-identities-manager.c"
+}
+
+
+static void identity_manager_model_class_init (IdentityManagerModelClass * klass) {
+       MoonshotLogger* _tmp0_ = NULL;
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       identity_manager_model_parent_class = g_type_class_peek_parent (klass);
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       g_type_class_add_private (klass, sizeof (IdentityManagerModelPrivate));
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       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 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _tmp0_ = get_logger ("IdentityManagerModel");
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       identity_manager_model_logger = _tmp0_;
+#line 3220 "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 3227 "moonshot-identities-manager.c"
+}
+
+
+static void identity_manager_model_finalize (GObject* obj) {
+       IdentityManagerModel * self;
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_IDENTITY_MANAGER_MODEL, IdentityManagerModel);
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _g_object_unref0 (self->priv->password_table);
+#line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _g_object_unref0 (self->priv->store);
+#line 348 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identities-manager.vala"
+       _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 3243 "moonshot-identities-manager.c"
+}
+
+
+GType identity_manager_model_get_type (void) {
+       static volatile gsize identity_manager_model_type_id__volatile = 0;
+       if (g_once_init_enter (&identity_manager_model_type_id__volatile)) {
+               static const GTypeInfo g_define_type_info = { sizeof (IdentityManagerModelClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) identity_manager_model_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (IdentityManagerModel), 0, (GInstanceInitFunc) identity_manager_model_instance_init, NULL };
+               GType identity_manager_model_type_id;
+               identity_manager_model_type_id = g_type_register_static (G_TYPE_OBJECT, "IdentityManagerModel", &g_define_type_info, 0);
+               g_once_init_leave (&identity_manager_model_type_id__volatile, identity_manager_model_type_id);
+       }
+       return identity_manager_model_type_id__volatile;
+}
+
+
+
diff --git a/src/moonshot-identity-dialog.c b/src/moonshot-identity-dialog.c
new file mode 100644 (file)
index 0000000..4f06f89
--- /dev/null
@@ -0,0 +1,4030 @@
+/* moonshot-identity-dialog.c generated by valac 0.34.9, the Vala compiler
+ * generated from moonshot-identity-dialog.vala, do not modify */
+
+/*
+ * Copyright (c) 2016, JANET(UK)
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * 3. Neither the name of JANET(UK) nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+*/
+
+#include <glib.h>
+#include <glib-object.h>
+#include <stdlib.h>
+#include <string.h>
+#include <gtk/gtk.h>
+#include <gee.h>
+#include <gdk/gdk.h>
+#include <glib/gi18n-lib.h>
+#include <float.h>
+#include <math.h>
+#include <atk/atk.h>
+#include <gio/gio.h>
+
+
+#define TYPE_IDENTITY_DIALOG (identity_dialog_get_type ())
+#define IDENTITY_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_DIALOG, IdentityDialog))
+#define IDENTITY_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_DIALOG, IdentityDialogClass))
+#define IS_IDENTITY_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_DIALOG))
+#define IS_IDENTITY_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_DIALOG))
+#define IDENTITY_DIALOG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_DIALOG, IdentityDialogClass))
+
+typedef struct _IdentityDialog IdentityDialog;
+typedef struct _IdentityDialogClass IdentityDialogClass;
+typedef struct _IdentityDialogPrivate IdentityDialogPrivate;
+
+#define TYPE_ID_CARD (id_card_get_type ())
+#define ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ID_CARD, IdCard))
+#define ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ID_CARD, IdCardClass))
+#define IS_ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ID_CARD))
+#define IS_ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ID_CARD))
+#define ID_CARD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ID_CARD, IdCardClass))
+
+typedef struct _IdCard IdCard;
+typedef struct _IdCardClass IdCardClass;
+
+#define TYPE_MOONSHOT_LOGGER (moonshot_logger_get_type ())
+#define MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLogger))
+#define MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+#define IS_MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MOONSHOT_LOGGER))
+#define IS_MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MOONSHOT_LOGGER))
+#define MOONSHOT_LOGGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+
+typedef struct _MoonshotLogger MoonshotLogger;
+typedef struct _MoonshotLoggerClass MoonshotLoggerClass;
+#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
+
+#define TYPE_IDENTITY_MANAGER_VIEW (identity_manager_view_get_type ())
+#define IDENTITY_MANAGER_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerView))
+#define IDENTITY_MANAGER_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerViewClass))
+#define IS_IDENTITY_MANAGER_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_MANAGER_VIEW))
+#define IS_IDENTITY_MANAGER_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_MANAGER_VIEW))
+#define IDENTITY_MANAGER_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerViewClass))
+
+typedef struct _IdentityManagerView IdentityManagerView;
+typedef struct _IdentityManagerViewClass IdentityManagerViewClass;
+#define _g_free0(var) (var = (g_free (var), NULL))
+typedef struct _Block4Data Block4Data;
+
+#define TYPE_TRUST_ANCHOR (trust_anchor_get_type ())
+#define TRUST_ANCHOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TRUST_ANCHOR, TrustAnchor))
+#define TRUST_ANCHOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TRUST_ANCHOR, TrustAnchorClass))
+#define IS_TRUST_ANCHOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TRUST_ANCHOR))
+#define IS_TRUST_ANCHOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TRUST_ANCHOR))
+#define TRUST_ANCHOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TRUST_ANCHOR, TrustAnchorClass))
+
+typedef struct _TrustAnchor TrustAnchor;
+typedef struct _TrustAnchorClass TrustAnchorClass;
+#define _g_list_free0(var) ((var == NULL) ? NULL : (var = (g_list_free (var), NULL)))
+
+#define TRUST_ANCHOR_TYPE_TRUST_ANCHOR_TYPE (trust_anchor_trust_anchor_type_get_type ())
+typedef struct _Block5Data Block5Data;
+typedef struct _Block6Data Block6Data;
+#define _g_regex_unref0(var) ((var == NULL) ? NULL : (var = (g_regex_unref (var), NULL)))
+#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))
+
+struct _IdentityDialog {
+       GtkDialog parent_instance;
+       IdentityDialogPrivate * priv;
+       gboolean complete;
+       gboolean clear_trust_anchor;
+};
+
+struct _IdentityDialogClass {
+       GtkDialogClass parent_class;
+};
+
+struct _IdentityDialogPrivate {
+       GtkEntry* displayname_entry;
+       GtkLabel* displayname_label;
+       GtkEntry* realm_entry;
+       GtkLabel* realm_label;
+       GtkEntry* username_entry;
+       GtkLabel* username_label;
+       GtkEntry* password_entry;
+       GtkLabel* password_label;
+       GtkCheckButton* remember_checkbutton;
+       GtkLabel* message_label;
+       IdCard* card;
+       GeeArrayList* services;
+       GtkLabel* selected_item;
+};
+
+struct _Block4Data {
+       int _ref_count_;
+       IdentityDialog* self;
+       gint ncolumns;
+       gchar* ta_label_prefix;
+       gchar* none;
+       GtkLabel* ta_label;
+       GtkAttachOptions fill_and_expand;
+       GtkTable* ta_table;
+       IdCard* id;
+};
+
+typedef enum  {
+       TRUST_ANCHOR_TRUST_ANCHOR_TYPE_EMPTY,
+       TRUST_ANCHOR_TRUST_ANCHOR_TYPE_CA_CERT,
+       TRUST_ANCHOR_TRUST_ANCHOR_TYPE_SERVER_CERT
+} TrustAnchorTrustAnchorType;
+
+struct _Block5Data {
+       int _ref_count_;
+       IdentityDialog* self;
+       GtkButton* remove_button;
+       GtkTable* services_table;
+};
+
+struct _Block6Data {
+       int _ref_count_;
+       Block5Data * _data5_;
+       GtkLabel* label;
+};
+
+
+extern gchar* export_directory;
+gchar* export_directory = NULL;
+static gpointer identity_dialog_parent_class = NULL;
+static GdkColor identity_dialog_white;
+static GdkColor identity_dialog_white = {0};
+static GdkColor identity_dialog_selected_color;
+static GdkColor identity_dialog_selected_color = {0};
+static MoonshotLogger* identity_dialog_logger;
+static MoonshotLogger* identity_dialog_logger = NULL;
+
+#define CANCEL GTK_STOCK_CANCEL
+GType identity_dialog_get_type (void) G_GNUC_CONST;
+GType id_card_get_type (void) G_GNUC_CONST;
+#define IDENTITY_DIALOG_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_IDENTITY_DIALOG, IdentityDialogPrivate))
+enum  {
+       IDENTITY_DIALOG_DUMMY_PROPERTY,
+       IDENTITY_DIALOG_DISPLAY_NAME,
+       IDENTITY_DIALOG_ISSUER,
+       IDENTITY_DIALOG_USERNAME,
+       IDENTITY_DIALOG_PASSWORD,
+       IDENTITY_DIALOG_STORE_PASSWORD
+};
+void make_color (guint16 red, guint16 green, guint16 blue, GdkColor* result);
+GType moonshot_logger_get_type (void) G_GNUC_CONST;
+MoonshotLogger* get_logger (const gchar* name);
+#define IDENTITY_DIALOG_displayname_labeltext _ ("Display Name")
+#define IDENTITY_DIALOG_realm_labeltext _ ("Realm")
+#define IDENTITY_DIALOG_username_labeltext _ ("Username")
+#define IDENTITY_DIALOG_password_labeltext _ ("Password")
+void identity_dialog_clear_password (IdentityDialog* self);
+void clear_password_entry (GtkEntry* entry);
+GeeArrayList* identity_dialog_get_services (IdentityDialog* self);
+GType identity_manager_view_get_type (void) G_GNUC_CONST;
+IdentityDialog* identity_dialog_new (IdentityManagerView* parent);
+IdentityDialog* identity_dialog_construct (GType object_type, IdentityManagerView* parent);
+IdentityDialog* identity_dialog_new_with_idcard (IdCard* a_card, const gchar* title, IdentityManagerView* parent);
+IdentityDialog* identity_dialog_construct_with_idcard (GType object_type, IdCard* a_card, const gchar* title, IdentityManagerView* parent);
+IdCard* id_card_new (void);
+IdCard* id_card_construct (GType object_type);
+const gchar* id_card_get_display_name (IdCard* self);
+const gchar* id_card_get_issuer (IdCard* self);
+const gchar* id_card_get_username (IdCard* self);
+gboolean id_card_get_store_password (IdCard* self);
+const gchar* id_card_get_password (IdCard* self);
+void set_atk_relation (GtkWidget* widget, GtkWidget* target_widget, AtkRelationType relationship);
+static void identity_dialog_add_as_vbox (GtkBox* content_area, GtkLabel* label, GtkEntry* entry);
+static void identity_dialog_on_response (IdentityDialog* self, GtkDialog* source, gint response_id);
+static void _identity_dialog_on_response_gtk_dialog_response (GtkDialog* _sender, gint response_id, gpointer self);
+GeeArrayList* id_card_get_services (IdCard* self);
+static GtkWidget* identity_dialog_make_trust_anchor_box (IdentityDialog* self, IdCard* id);
+static GtkVBox* identity_dialog_make_services_vbox (IdentityDialog* self);
+gboolean id_card_is_no_identity (IdCard* self);
+static void __lambda12_ (IdentityDialog* self);
+void moonshot_logger_trace (MoonshotLogger* self, const gchar* message, GError* e);
+static void ___lambda12__gtk_object_destroy (GtkObject* _sender, gpointer self);
+void set_bg_color (GtkWidget* w);
+static Block4Data* block4_data_ref (Block4Data* _data4_);
+static void block4_data_unref (void * _userdata_);
+GType trust_anchor_get_type (void) G_GNUC_CONST;
+TrustAnchor* id_card_get_trust_anchor (IdCard* self);
+gboolean trust_anchor_is_empty (TrustAnchor* self);
+static void __lambda8_ (Block4Data* _data4_, GtkButton* w);
+gboolean warning_dialog_confirm (GtkWindow* parent, const gchar* message, const gchar* dialog_name);
+static void ___lambda8__gtk_button_clicked (GtkButton* _sender, gpointer self);
+const gchar* trust_anchor_get_datetime_added (TrustAnchor* self);
+GType trust_anchor_trust_anchor_type_get_type (void) G_GNUC_CONST;
+TrustAnchorTrustAnchorType trust_anchor_get_anchor_type (TrustAnchor* self);
+GtkWidget* make_ta_fingerprint_widget (const gchar* server_cert, const gchar* label_text);
+const gchar* trust_anchor_get_server_cert (TrustAnchor* self);
+static void ___lambda9_ (Block4Data* _data4_, GtkButton* w);
+static void identity_dialog_export_certificate (IdentityDialog* self, IdCard* id);
+static void ____lambda9__gtk_button_clicked (GtkButton* _sender, gpointer self);
+const gchar* trust_anchor_get_subject (TrustAnchor* self);
+const gchar* trust_anchor_get_subject_alt (TrustAnchor* self);
+gchar* trust_anchor_get_expiration_date (TrustAnchor* self, gchar** err_out);
+static gchar* identity_dialog_update_preamble (const gchar* preamble);
+static gchar* identity_dialog_update_message (const gchar* old_message, const gchar* new_item);
+static void identity_dialog_check_field (const gchar* field, GtkLabel* label, const gchar* fieldname, gchar** preamble, gchar** message);
+static gboolean identity_dialog_check_fields (IdentityDialog* self);
+gboolean identity_dialog_get_store_password (IdentityDialog* self);
+const gchar* identity_dialog_get_password (IdentityDialog* self);
+const gchar* identity_dialog_get_display_name (IdentityDialog* self);
+const gchar* identity_dialog_get_username (IdentityDialog* self);
+const gchar* identity_dialog_get_issuer (IdentityDialog* self);
+static Block5Data* block5_data_ref (Block5Data* _data5_);
+static void block5_data_unref (void * _userdata_);
+static Block6Data* block6_data_ref (Block6Data* _data6_);
+static void block6_data_unref (void * _userdata_);
+static gboolean ____lambda10_ (Block6Data* _data6_);
+const gchar* gtk_state_type_to_string (GtkStateType self);
+static gboolean _____lambda10__gtk_widget_button_press_event (GtkWidget* _sender, GdkEventButton* event, gpointer self);
+static void __lambda11_ (Block5Data* _data5_, GtkButton* remove_button);
+static void ___lambda11__gtk_button_clicked (GtkButton* _sender, gpointer self);
+const gchar* trust_anchor_get_ca_cert (TrustAnchor* self);
+static void identity_dialog_finalize (GObject* obj);
+static void _vala_identity_dialog_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec);
+
+
+/**
+     * Don't leave passwords in memory longer than necessary.
+     * This may not actually erase the password data bytes, but it seems to be the best we can do.
+     */
+void identity_dialog_clear_password (IdentityDialog* self) {
+       GtkEntry* _tmp0_ = NULL;
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_if_fail (self != NULL);
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp0_ = self->priv->password_entry;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       clear_password_entry (_tmp0_);
+#line 281 "moonshot-identity-dialog.c"
+}
+
+
+static gpointer _g_object_ref0 (gpointer self) {
+#line 109 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       return self ? g_object_ref (self) : NULL;
+#line 288 "moonshot-identity-dialog.c"
+}
+
+
+GeeArrayList* identity_dialog_get_services (IdentityDialog* self) {
+       GeeArrayList* result = NULL;
+       GeeArrayList* _tmp0_ = NULL;
+       GeeArrayList* _tmp1_ = NULL;
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 109 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp0_ = self->priv->services;
+#line 109 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp1_ = _g_object_ref0 (_tmp0_);
+#line 109 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       result = _tmp1_;
+#line 109 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       return result;
+#line 306 "moonshot-identity-dialog.c"
+}
+
+
+IdentityDialog* identity_dialog_construct (GType object_type, IdentityManagerView* parent) {
+       IdentityDialog * self = NULL;
+       const gchar* _tmp0_ = NULL;
+       IdentityManagerView* _tmp1_ = NULL;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_val_if_fail (parent != NULL, NULL);
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp0_ = _ ("Add ID Card");
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp1_ = parent;
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       self = (IdentityDialog*) identity_dialog_construct_with_idcard (object_type, NULL, _tmp0_, _tmp1_);
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       return self;
+#line 324 "moonshot-identity-dialog.c"
+}
+
+
+IdentityDialog* identity_dialog_new (IdentityManagerView* parent) {
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       return identity_dialog_construct (TYPE_IDENTITY_DIALOG, parent);
+#line 331 "moonshot-identity-dialog.c"
+}
+
+
+static const gchar* string_to_string (const gchar* self) {
+       const gchar* result = NULL;
+#line 1420 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 1421 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       result = self;
+#line 1421 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       return result;
+#line 343 "moonshot-identity-dialog.c"
+}
+
+
+static void _identity_dialog_on_response_gtk_dialog_response (GtkDialog* _sender, gint response_id, gpointer self) {
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       identity_dialog_on_response ((IdentityDialog*) self, _sender, response_id);
+#line 350 "moonshot-identity-dialog.c"
+}
+
+
+static void __lambda12_ (IdentityDialog* self) {
+       MoonshotLogger* _tmp0_ = NULL;
+#line 210 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp0_ = identity_dialog_logger;
+#line 210 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       moonshot_logger_trace (_tmp0_, "Destroying IdentityDialog; clearing its password.", NULL);
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       identity_dialog_clear_password (self);
+#line 362 "moonshot-identity-dialog.c"
+}
+
+
+static void ___lambda12__gtk_object_destroy (GtkObject* _sender, gpointer self) {
+#line 209 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       __lambda12_ ((IdentityDialog*) self);
+#line 369 "moonshot-identity-dialog.c"
+}
+
+
+IdentityDialog* identity_dialog_construct_with_idcard (GType object_type, IdCard* a_card, const gchar* title, IdentityManagerView* parent) {
+       IdentityDialog * self = NULL;
+       gboolean is_new_card = FALSE;
+       IdCard* _tmp0_ = NULL;
+       IdCard* _tmp1_ = NULL;
+       IdCard* _tmp2_ = NULL;
+       IdCard* _tmp3_ = NULL;
+       IdCard* _tmp5_ = NULL;
+       const gchar* _tmp6_ = NULL;
+       IdentityManagerView* _tmp7_ = NULL;
+       const gchar* _tmp8_ = NULL;
+       GtkBox* content_area = NULL;
+       GtkWidget* _tmp9_ = NULL;
+       GtkBox* _tmp10_ = NULL;
+       const gchar* _tmp11_ = NULL;
+       gchar* _tmp12_ = NULL;
+       gchar* _tmp13_ = NULL;
+       GtkLabel* _tmp14_ = NULL;
+       GtkLabel* _tmp15_ = NULL;
+       GtkEntry* _tmp16_ = NULL;
+       GtkEntry* _tmp17_ = NULL;
+       IdCard* _tmp18_ = NULL;
+       const gchar* _tmp19_ = NULL;
+       const gchar* _tmp20_ = NULL;
+       GtkEntry* _tmp21_ = NULL;
+       const gchar* _tmp22_ = NULL;
+       gchar* _tmp23_ = NULL;
+       gchar* _tmp24_ = NULL;
+       GtkLabel* _tmp25_ = NULL;
+       GtkLabel* _tmp26_ = NULL;
+       GtkEntry* _tmp27_ = NULL;
+       GtkEntry* _tmp28_ = NULL;
+       IdCard* _tmp29_ = NULL;
+       const gchar* _tmp30_ = NULL;
+       const gchar* _tmp31_ = NULL;
+       GtkEntry* _tmp32_ = NULL;
+       const gchar* _tmp33_ = NULL;
+       gchar* _tmp34_ = NULL;
+       gchar* _tmp35_ = NULL;
+       GtkLabel* _tmp36_ = NULL;
+       GtkLabel* _tmp37_ = NULL;
+       GtkEntry* _tmp38_ = NULL;
+       GtkEntry* _tmp39_ = NULL;
+       IdCard* _tmp40_ = NULL;
+       const gchar* _tmp41_ = NULL;
+       const gchar* _tmp42_ = NULL;
+       GtkEntry* _tmp43_ = NULL;
+       const gchar* _tmp44_ = NULL;
+       gchar* _tmp45_ = NULL;
+       gchar* _tmp46_ = NULL;
+       GtkLabel* _tmp47_ = NULL;
+       GtkLabel* _tmp48_ = NULL;
+       const gchar* _tmp49_ = NULL;
+       GtkCheckButton* _tmp50_ = NULL;
+       GtkCheckButton* _tmp51_ = NULL;
+       IdCard* _tmp52_ = NULL;
+       gboolean _tmp53_ = FALSE;
+       gboolean _tmp54_ = FALSE;
+       GtkEntry* _tmp55_ = NULL;
+       GtkEntry* _tmp56_ = NULL;
+       GtkEntry* _tmp57_ = NULL;
+       GtkEntry* _tmp58_ = NULL;
+       GtkEntry* _tmp59_ = NULL;
+       IdCard* _tmp60_ = NULL;
+       const gchar* _tmp61_ = NULL;
+       const gchar* _tmp62_ = NULL;
+       GtkLabel* _tmp63_ = NULL;
+       GtkLabel* _tmp64_ = NULL;
+       GtkLabel* _tmp65_ = NULL;
+       GtkEntry* _tmp66_ = NULL;
+       GtkLabel* _tmp67_ = NULL;
+       GtkEntry* _tmp68_ = NULL;
+       GtkLabel* _tmp69_ = NULL;
+       GtkEntry* _tmp70_ = NULL;
+       GtkLabel* _tmp71_ = NULL;
+       GtkEntry* _tmp72_ = NULL;
+       GtkBox* _tmp73_ = NULL;
+       GtkLabel* _tmp74_ = NULL;
+       GtkBox* _tmp75_ = NULL;
+       GtkLabel* _tmp76_ = NULL;
+       GtkEntry* _tmp77_ = NULL;
+       GtkBox* _tmp78_ = NULL;
+       GtkLabel* _tmp79_ = NULL;
+       GtkEntry* _tmp80_ = NULL;
+       GtkBox* _tmp81_ = NULL;
+       GtkLabel* _tmp82_ = NULL;
+       GtkEntry* _tmp83_ = NULL;
+       GtkBox* _tmp84_ = NULL;
+       GtkLabel* _tmp85_ = NULL;
+       GtkEntry* _tmp86_ = NULL;
+       GtkHBox* remember_hbox = NULL;
+       GtkHBox* _tmp87_ = NULL;
+       GtkHBox* _tmp88_ = NULL;
+       GtkHBox* _tmp89_ = NULL;
+       GtkHBox* _tmp90_ = NULL;
+       GtkHBox* _tmp91_ = NULL;
+       GtkCheckButton* _tmp92_ = NULL;
+       GtkBox* _tmp93_ = NULL;
+       GtkHBox* _tmp94_ = NULL;
+       GtkBox* _tmp95_ = NULL;
+       GeeArrayList* _tmp96_ = NULL;
+       GeeArrayList* _tmp97_ = NULL;
+       IdCard* _tmp98_ = NULL;
+       GeeArrayList* _tmp99_ = NULL;
+       GeeArrayList* _tmp100_ = NULL;
+       gboolean _tmp101_ = FALSE;
+       IdCard* _tmp113_ = NULL;
+       gboolean _tmp114_ = FALSE;
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_val_if_fail (title != NULL, NULL);
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_val_if_fail (parent != NULL, NULL);
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       self = (IdentityDialog*) g_object_new (object_type, NULL);
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       is_new_card = FALSE;
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp0_ = a_card;
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       if (_tmp0_ == NULL) {
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               is_new_card = TRUE;
+#line 495 "moonshot-identity-dialog.c"
+       }
+#line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp2_ = a_card;
+#line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp3_ = _g_object_ref0 (_tmp2_);
+#line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp1_ = _tmp3_;
+#line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       if (_tmp1_ == NULL) {
+#line 505 "moonshot-identity-dialog.c"
+               IdCard* _tmp4_ = NULL;
+#line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp4_ = id_card_new ();
+#line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_object_unref0 (_tmp1_);
+#line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp1_ = _tmp4_;
+#line 513 "moonshot-identity-dialog.c"
+       }
+#line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp5_ = _tmp1_;
+#line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp1_ = NULL;
+#line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (self->priv->card);
+#line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       self->priv->card = _tmp5_;
+#line 126 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp6_ = title;
+#line 126 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_window_set_title ((GtkWindow*) self, _tmp6_);
+#line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_window_set_modal ((GtkWindow*) self, TRUE);
+#line 128 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp7_ = parent;
+#line 128 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_window_set_transient_for ((GtkWindow*) self, (GtkWindow*) _tmp7_);
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp8_ = _ ("OK");
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_dialog_add_buttons ((GtkDialog*) self, CANCEL, GTK_RESPONSE_CANCEL, _tmp8_, GTK_RESPONSE_OK, NULL);
+#line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp9_ = gtk_dialog_get_content_area ((GtkDialog*) self);
+#line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp10_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp9_, GTK_TYPE_BOX, GtkBox));
+#line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       content_area = _tmp10_;
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp11_ = string_to_string (IDENTITY_DIALOG_displayname_labeltext);
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp12_ = g_strconcat (_tmp11_, ":", NULL);
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp13_ = _tmp12_;
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp14_ = (GtkLabel*) gtk_label_new (_tmp13_);
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_ref_sink (_tmp14_);
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (self->priv->displayname_label);
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       self->priv->displayname_label = _tmp14_;
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_free0 (_tmp13_);
+#line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp15_ = self->priv->displayname_label;
+#line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_misc_set_alignment ((GtkMisc*) _tmp15_, (gfloat) 0, (gfloat) 0.5);
+#line 135 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp16_ = (GtkEntry*) gtk_entry_new ();
+#line 135 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_ref_sink (_tmp16_);
+#line 135 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (self->priv->displayname_entry);
+#line 135 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       self->priv->displayname_entry = _tmp16_;
+#line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp17_ = self->priv->displayname_entry;
+#line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp18_ = self->priv->card;
+#line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp19_ = id_card_get_display_name (_tmp18_);
+#line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp20_ = _tmp19_;
+#line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_entry_set_text (_tmp17_, _tmp20_);
+#line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp21_ = self->priv->displayname_entry;
+#line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_entry_set_width_chars (_tmp21_, 40);
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp22_ = string_to_string (IDENTITY_DIALOG_realm_labeltext);
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp23_ = g_strconcat (_tmp22_, ":", NULL);
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp24_ = _tmp23_;
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp25_ = (GtkLabel*) gtk_label_new (_tmp24_);
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_ref_sink (_tmp25_);
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (self->priv->realm_label);
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       self->priv->realm_label = _tmp25_;
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_free0 (_tmp24_);
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp26_ = self->priv->realm_label;
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_misc_set_alignment ((GtkMisc*) _tmp26_, (gfloat) 0, (gfloat) 0.5);
+#line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp27_ = (GtkEntry*) gtk_entry_new ();
+#line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_ref_sink (_tmp27_);
+#line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (self->priv->realm_entry);
+#line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       self->priv->realm_entry = _tmp27_;
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp28_ = self->priv->realm_entry;
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp29_ = self->priv->card;
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp30_ = id_card_get_issuer (_tmp29_);
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp31_ = _tmp30_;
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_entry_set_text (_tmp28_, _tmp31_);
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp32_ = self->priv->realm_entry;
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_entry_set_width_chars (_tmp32_, 60);
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp33_ = string_to_string (IDENTITY_DIALOG_username_labeltext);
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp34_ = g_strconcat (_tmp33_, ":", NULL);
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp35_ = _tmp34_;
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp36_ = (GtkLabel*) gtk_label_new (_tmp35_);
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_ref_sink (_tmp36_);
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (self->priv->username_label);
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       self->priv->username_label = _tmp36_;
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_free0 (_tmp35_);
+#line 146 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp37_ = self->priv->username_label;
+#line 146 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_misc_set_alignment ((GtkMisc*) _tmp37_, (gfloat) 0, (gfloat) 0.5);
+#line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp38_ = (GtkEntry*) gtk_entry_new ();
+#line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_ref_sink (_tmp38_);
+#line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (self->priv->username_entry);
+#line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       self->priv->username_entry = _tmp38_;
+#line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp39_ = self->priv->username_entry;
+#line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp40_ = self->priv->card;
+#line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp41_ = id_card_get_username (_tmp40_);
+#line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp42_ = _tmp41_;
+#line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_entry_set_text (_tmp39_, _tmp42_);
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp43_ = self->priv->username_entry;
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_entry_set_width_chars (_tmp43_, 40);
+#line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp44_ = string_to_string (IDENTITY_DIALOG_password_labeltext);
+#line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp45_ = g_strconcat (_tmp44_, ":", NULL);
+#line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp46_ = _tmp45_;
+#line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp47_ = (GtkLabel*) gtk_label_new (_tmp46_);
+#line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_ref_sink (_tmp47_);
+#line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (self->priv->password_label);
+#line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       self->priv->password_label = _tmp47_;
+#line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_free0 (_tmp46_);
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp48_ = self->priv->password_label;
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_misc_set_alignment ((GtkMisc*) _tmp48_, (gfloat) 0, (gfloat) 0.5);
+#line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp49_ = _ ("Remember password");
+#line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp50_ = (GtkCheckButton*) gtk_check_button_new_with_label (_tmp49_);
+#line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_ref_sink (_tmp50_);
+#line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (self->priv->remember_checkbutton);
+#line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       self->priv->remember_checkbutton = _tmp50_;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp51_ = self->priv->remember_checkbutton;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp52_ = self->priv->card;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp53_ = id_card_get_store_password (_tmp52_);
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp54_ = _tmp53_;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_toggle_button_set_active ((GtkToggleButton*) _tmp51_, _tmp54_);
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp55_ = (GtkEntry*) gtk_entry_new ();
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_ref_sink (_tmp55_);
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (self->priv->password_entry);
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       self->priv->password_entry = _tmp55_;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp56_ = self->priv->password_entry;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_entry_set_invisible_char (_tmp56_, (gunichar) '*');
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp57_ = self->priv->password_entry;
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_entry_set_visibility (_tmp57_, FALSE);
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp58_ = self->priv->password_entry;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_entry_set_width_chars (_tmp58_, 40);
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp59_ = self->priv->password_entry;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp60_ = self->priv->card;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp61_ = id_card_get_password (_tmp60_);
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp62_ = _tmp61_;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_entry_set_text (_tmp59_, _tmp62_);
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp63_ = (GtkLabel*) gtk_label_new ("");
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_ref_sink (_tmp63_);
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (self->priv->message_label);
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       self->priv->message_label = _tmp63_;
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp64_ = self->priv->message_label;
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_widget_set_visible ((GtkWidget*) _tmp64_, FALSE);
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp65_ = self->priv->displayname_label;
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp66_ = self->priv->displayname_entry;
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       set_atk_relation ((GtkWidget*) _tmp65_, (GtkWidget*) _tmp66_, ATK_RELATION_LABEL_FOR);
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp67_ = self->priv->realm_label;
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp68_ = self->priv->realm_entry;
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       set_atk_relation ((GtkWidget*) _tmp67_, (GtkWidget*) _tmp68_, ATK_RELATION_LABEL_FOR);
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp69_ = self->priv->username_label;
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp70_ = self->priv->username_entry;
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       set_atk_relation ((GtkWidget*) _tmp69_, (GtkWidget*) _tmp70_, ATK_RELATION_LABEL_FOR);
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp71_ = self->priv->password_label;
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp72_ = self->priv->password_entry;
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       set_atk_relation ((GtkWidget*) _tmp71_, (GtkWidget*) _tmp72_, ATK_RELATION_LABEL_FOR);
+#line 171 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp73_ = content_area;
+#line 171 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp74_ = self->priv->message_label;
+#line 171 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_box_pack_start (_tmp73_, (GtkWidget*) _tmp74_, FALSE, FALSE, (guint) 6);
+#line 172 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp75_ = content_area;
+#line 172 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp76_ = self->priv->displayname_label;
+#line 172 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp77_ = self->priv->displayname_entry;
+#line 172 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       identity_dialog_add_as_vbox (_tmp75_, _tmp76_, _tmp77_);
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp78_ = content_area;
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp79_ = self->priv->username_label;
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp80_ = self->priv->username_entry;
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       identity_dialog_add_as_vbox (_tmp78_, _tmp79_, _tmp80_);
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp81_ = content_area;
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp82_ = self->priv->realm_label;
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp83_ = self->priv->realm_entry;
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       identity_dialog_add_as_vbox (_tmp81_, _tmp82_, _tmp83_);
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp84_ = content_area;
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp85_ = self->priv->password_label;
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp86_ = self->priv->password_entry;
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       identity_dialog_add_as_vbox (_tmp84_, _tmp85_, _tmp86_);
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp87_ = (GtkHBox*) gtk_hbox_new (FALSE, 40);
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_ref_sink (_tmp87_);
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       remember_hbox = _tmp87_;
+#line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp88_ = remember_hbox;
+#line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp89_ = (GtkHBox*) gtk_hbox_new (FALSE, 0);
+#line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_ref_sink (_tmp89_);
+#line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp90_ = _tmp89_;
+#line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_box_pack_start ((GtkBox*) _tmp88_, (GtkWidget*) _tmp90_, FALSE, FALSE, (guint) 0);
+#line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (_tmp90_);
+#line 179 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp91_ = remember_hbox;
+#line 179 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp92_ = self->priv->remember_checkbutton;
+#line 179 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_box_pack_start ((GtkBox*) _tmp91_, (GtkWidget*) _tmp92_, FALSE, FALSE, (guint) 0);
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp93_ = content_area;
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp94_ = remember_hbox;
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_box_pack_start (_tmp93_, (GtkWidget*) _tmp94_, FALSE, FALSE, (guint) 2);
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_signal_connect_object ((GtkDialog*) self, "response", (GCallback) _identity_dialog_on_response_gtk_dialog_response, self, 0);
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp95_ = content_area;
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_container_set_border_width ((GtkContainer*) _tmp95_, (guint) 6);
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp96_ = gee_array_list_new (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, (GDestroyNotify) g_free, NULL, NULL, NULL);
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (self->priv->services);
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       self->priv->services = _tmp96_;
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp97_ = self->priv->services;
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp98_ = self->priv->card;
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp99_ = id_card_get_services (_tmp98_);
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp100_ = _tmp99_;
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gee_array_list_add_all (_tmp97_, (GeeCollection*) _tmp100_);
+#line 188 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp101_ = is_new_card;
+#line 188 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       if (!_tmp101_) {
+#line 869 "moonshot-identity-dialog.c"
+               GtkWidget* trust_anchor_box = NULL;
+               IdCard* _tmp102_ = NULL;
+               GtkWidget* _tmp103_ = NULL;
+               GtkBox* _tmp104_ = NULL;
+               GtkWidget* _tmp105_ = NULL;
+               GtkVBox* services_vbox = NULL;
+               GtkVBox* _tmp106_ = NULL;
+               GtkBox* _tmp107_ = NULL;
+               GtkVBox* _tmp108_ = NULL;
+               GtkAlignment* services_vbox_bottom_spacer = NULL;
+               GtkAlignment* _tmp109_ = NULL;
+               GtkAlignment* _tmp110_ = NULL;
+               GtkBox* _tmp111_ = NULL;
+               GtkAlignment* _tmp112_ = NULL;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp102_ = self->priv->card;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp103_ = identity_dialog_make_trust_anchor_box (self, _tmp102_);
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               trust_anchor_box = _tmp103_;
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp104_ = content_area;
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp105_ = trust_anchor_box;
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               gtk_box_pack_start (_tmp104_, _tmp105_, FALSE, FALSE, (guint) 15);
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp106_ = identity_dialog_make_services_vbox (self);
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               services_vbox = _tmp106_;
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp107_ = content_area;
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp108_ = services_vbox;
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               gtk_box_pack_start (_tmp107_, (GtkWidget*) _tmp108_, TRUE, TRUE, (guint) 0);
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp109_ = (GtkAlignment*) gtk_alignment_new ((gfloat) 0, (gfloat) 0, (gfloat) 0, (gfloat) 0);
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               g_object_ref_sink (_tmp109_);
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               services_vbox_bottom_spacer = _tmp109_;
+#line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp110_ = services_vbox_bottom_spacer;
+#line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               gtk_widget_set_size_request ((GtkWidget*) _tmp110_, 0, 12);
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp111_ = content_area;
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp112_ = services_vbox_bottom_spacer;
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               gtk_box_pack_start (_tmp111_, (GtkWidget*) _tmp112_, FALSE, FALSE, (guint) 0);
+#line 188 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_object_unref0 (services_vbox_bottom_spacer);
+#line 188 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_object_unref0 (services_vbox);
+#line 188 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_object_unref0 (trust_anchor_box);
+#line 928 "moonshot-identity-dialog.c"
+       }
+#line 200 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp113_ = self->priv->card;
+#line 200 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp114_ = id_card_is_no_identity (_tmp113_);
+#line 200 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       if (_tmp114_) {
+#line 936 "moonshot-identity-dialog.c"
+               GtkEntry* _tmp115_ = NULL;
+               GtkEntry* _tmp116_ = NULL;
+               GtkEntry* _tmp117_ = NULL;
+               GtkEntry* _tmp118_ = NULL;
+               GtkCheckButton* _tmp119_ = NULL;
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp115_ = self->priv->displayname_entry;
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               gtk_widget_set_sensitive ((GtkWidget*) _tmp115_, FALSE);
+#line 203 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp116_ = self->priv->realm_entry;
+#line 203 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               gtk_widget_set_sensitive ((GtkWidget*) _tmp116_, FALSE);
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp117_ = self->priv->username_entry;
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               gtk_widget_set_sensitive ((GtkWidget*) _tmp117_, FALSE);
+#line 205 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp118_ = self->priv->password_entry;
+#line 205 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               gtk_widget_set_sensitive ((GtkWidget*) _tmp118_, FALSE);
+#line 206 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp119_ = self->priv->remember_checkbutton;
+#line 206 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               gtk_widget_set_sensitive ((GtkWidget*) _tmp119_, FALSE);
+#line 962 "moonshot-identity-dialog.c"
+       }
+#line 209 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_signal_connect_object ((GtkObject*) self, "destroy", (GCallback) ___lambda12__gtk_object_destroy, self, 0);
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_container_set_border_width ((GtkContainer*) self, (guint) 6);
+#line 216 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_window_set_resizable ((GtkWindow*) self, FALSE);
+#line 217 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       set_bg_color ((GtkWidget*) self);
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_widget_show_all ((GtkWidget*) self);
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (remember_hbox);
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (content_area);
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (_tmp1_);
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       return self;
+#line 982 "moonshot-identity-dialog.c"
+}
+
+
+IdentityDialog* identity_dialog_new_with_idcard (IdCard* a_card, const gchar* title, IdentityManagerView* parent) {
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       return identity_dialog_construct_with_idcard (TYPE_IDENTITY_DIALOG, a_card, title, parent);
+#line 989 "moonshot-identity-dialog.c"
+}
+
+
+static Block4Data* block4_data_ref (Block4Data* _data4_) {
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_atomic_int_inc (&_data4_->_ref_count_);
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       return _data4_;
+#line 998 "moonshot-identity-dialog.c"
+}
+
+
+static void block4_data_unref (void * _userdata_) {
+       Block4Data* _data4_;
+       _data4_ = (Block4Data*) _userdata_;
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       if (g_atomic_int_dec_and_test (&_data4_->_ref_count_)) {
+#line 1007 "moonshot-identity-dialog.c"
+               IdentityDialog* self;
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               self = _data4_->self;
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_object_unref0 (_data4_->ta_table);
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_object_unref0 (_data4_->ta_label);
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_free0 (_data4_->none);
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_free0 (_data4_->ta_label_prefix);
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_object_unref0 (_data4_->id);
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_object_unref0 (self);
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               g_slice_free (Block4Data, _data4_);
+#line 1025 "moonshot-identity-dialog.c"
+       }
+}
+
+
+static void __lambda8_ (Block4Data* _data4_, GtkButton* w) {
+       IdentityDialog* self;
+       gboolean _result_ = FALSE;
+       const gchar* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+       gchar* _tmp2_ = NULL;
+       gchar* _tmp3_ = NULL;
+       gchar* _tmp4_ = NULL;
+       IdCard* _tmp5_ = NULL;
+       const gchar* _tmp6_ = NULL;
+       const gchar* _tmp7_ = NULL;
+       gchar* _tmp8_ = NULL;
+       gchar* _tmp9_ = NULL;
+       const gchar* _tmp10_ = NULL;
+       gchar* _tmp11_ = NULL;
+       gchar* _tmp12_ = NULL;
+       gboolean _tmp13_ = FALSE;
+       gboolean _tmp14_ = FALSE;
+       gboolean _tmp15_ = FALSE;
+#line 248 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       self = _data4_->self;
+#line 248 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_if_fail (w != NULL);
+#line 249 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp0_ = _ ("You are about to clear the trust anchor fingerprint for '%s'.");
+#line 249 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp1_ = g_strconcat ("<span font-weight='heavy'>", _tmp0_, NULL);
+#line 249 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp2_ = _tmp1_;
+#line 249 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp3_ = g_strconcat (_tmp2_, "</span>", NULL);
+#line 249 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp4_ = _tmp3_;
+#line 249 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp5_ = _data4_->id;
+#line 249 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp6_ = id_card_get_display_name (_tmp5_);
+#line 249 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp7_ = _tmp6_;
+#line 249 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp8_ = g_markup_printf_escaped (_tmp4_, _tmp7_);
+#line 249 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp9_ = _tmp8_;
+#line 249 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp10_ = _ ("\n\nAre you sure you want to do this?");
+#line 249 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp11_ = g_strconcat (_tmp9_, _tmp10_, NULL);
+#line 249 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp12_ = _tmp11_;
+#line 249 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp13_ = warning_dialog_confirm ((GtkWindow*) self, _tmp12_, "clear_trust_anchor");
+#line 249 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp14_ = _tmp13_;
+#line 249 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_free0 (_tmp12_);
+#line 249 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_free0 (_tmp9_);
+#line 249 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_free0 (_tmp4_);
+#line 249 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_free0 (_tmp2_);
+#line 249 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _result_ = _tmp14_;
+#line 258 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp15_ = _result_;
+#line 258 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       if (_tmp15_) {
+#line 1097 "moonshot-identity-dialog.c"
+               GList* children = NULL;
+               GtkTable* _tmp16_ = NULL;
+               GList* _tmp17_ = NULL;
+               GList* _tmp18_ = NULL;
+               GtkTable* _tmp21_ = NULL;
+               gint _tmp22_ = 0;
+               GtkLabel* _tmp23_ = NULL;
+               const gchar* _tmp24_ = NULL;
+               const gchar* _tmp25_ = NULL;
+               gchar* _tmp26_ = NULL;
+               gchar* _tmp27_ = NULL;
+               GtkTable* _tmp28_ = NULL;
+               GtkLabel* _tmp29_ = NULL;
+               GtkAttachOptions _tmp30_ = 0;
+               GtkAttachOptions _tmp31_ = 0;
+#line 260 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               self->clear_trust_anchor = TRUE;
+#line 265 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp16_ = _data4_->ta_table;
+#line 265 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp17_ = gtk_container_get_children ((GtkContainer*) _tmp16_);
+#line 265 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               children = _tmp17_;
+#line 266 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp18_ = children;
+#line 1123 "moonshot-identity-dialog.c"
+               {
+                       GList* child_collection = NULL;
+                       GList* child_it = NULL;
+#line 266 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       child_collection = _tmp18_;
+#line 266 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       for (child_it = child_collection; child_it != NULL; child_it = child_it->next) {
+#line 1131 "moonshot-identity-dialog.c"
+                               GtkWidget* child = NULL;
+#line 266 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                               child = (GtkWidget*) child_it->data;
+#line 1135 "moonshot-identity-dialog.c"
+                               {
+                                       GtkTable* _tmp19_ = NULL;
+                                       GtkWidget* _tmp20_ = NULL;
+#line 267 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                                       _tmp19_ = _data4_->ta_table;
+#line 267 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                                       _tmp20_ = child;
+#line 267 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                                       gtk_container_remove ((GtkContainer*) _tmp19_, _tmp20_);
+#line 1145 "moonshot-identity-dialog.c"
+                               }
+                       }
+               }
+#line 270 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp21_ = _data4_->ta_table;
+#line 270 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp22_ = _data4_->ncolumns;
+#line 270 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               gtk_table_resize (_tmp21_, (guint) 1, (guint) _tmp22_);
+#line 271 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp23_ = _data4_->ta_label;
+#line 271 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp24_ = _data4_->ta_label_prefix;
+#line 271 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp25_ = _data4_->none;
+#line 271 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp26_ = g_strconcat (_tmp24_, _tmp25_, NULL);
+#line 271 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp27_ = _tmp26_;
+#line 271 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               gtk_label_set_text (_tmp23_, _tmp27_);
+#line 271 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_free0 (_tmp27_);
+#line 272 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp28_ = _data4_->ta_table;
+#line 272 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp29_ = _data4_->ta_label;
+#line 272 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp30_ = _data4_->fill_and_expand;
+#line 272 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp31_ = _data4_->fill_and_expand;
+#line 272 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               gtk_table_attach (_tmp28_, (GtkWidget*) _tmp29_, (guint) 0, (guint) 1, (guint) 0, (guint) 1, _tmp30_, _tmp31_, (guint) 0, (guint) 0);
+#line 258 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_list_free0 (children);
+#line 1181 "moonshot-identity-dialog.c"
+       }
+}
+
+
+static void ___lambda8__gtk_button_clicked (GtkButton* _sender, gpointer self) {
+#line 248 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       __lambda8_ (self, _sender);
+#line 1189 "moonshot-identity-dialog.c"
+}
+
+
+static void ___lambda9_ (Block4Data* _data4_, GtkButton* w) {
+       IdentityDialog* self;
+       IdCard* _tmp0_ = NULL;
+#line 296 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       self = _data4_->self;
+#line 296 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_if_fail (w != NULL);
+#line 296 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp0_ = _data4_->id;
+#line 296 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       identity_dialog_export_certificate (self, _tmp0_);
+#line 1204 "moonshot-identity-dialog.c"
+}
+
+
+static void ____lambda9__gtk_button_clicked (GtkButton* _sender, gpointer self) {
+#line 296 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       ___lambda9_ (self, _sender);
+#line 1211 "moonshot-identity-dialog.c"
+}
+
+
+static GtkWidget* identity_dialog_make_trust_anchor_box (IdentityDialog* self, IdCard* id) {
+       GtkWidget* result = NULL;
+       Block4Data* _data4_;
+       IdCard* _tmp0_ = NULL;
+       IdCard* _tmp1_ = NULL;
+       gint nrows = 0;
+       const gchar* _tmp2_ = NULL;
+       gchar* _tmp3_ = NULL;
+       const gchar* _tmp4_ = NULL;
+       gchar* _tmp5_ = NULL;
+       GtkHBox* trust_anchor_box = NULL;
+       GtkHBox* _tmp6_ = NULL;
+       const gchar* _tmp7_ = NULL;
+       IdCard* _tmp8_ = NULL;
+       TrustAnchor* _tmp9_ = NULL;
+       TrustAnchor* _tmp10_ = NULL;
+       gboolean _tmp11_ = FALSE;
+       const gchar* _tmp14_ = NULL;
+       gchar* _tmp15_ = NULL;
+       gchar* _tmp16_ = NULL;
+       GtkLabel* _tmp17_ = NULL;
+       GtkLabel* _tmp18_ = NULL;
+       GtkLabel* _tmp19_ = NULL;
+       IdCard* _tmp20_ = NULL;
+       TrustAnchor* _tmp21_ = NULL;
+       TrustAnchor* _tmp22_ = NULL;
+       gboolean _tmp23_ = FALSE;
+       GtkAttachOptions fill = 0;
+       gint _tmp26_ = 0;
+       gint _tmp27_ = 0;
+       GtkTable* _tmp28_ = NULL;
+       gint row = 0;
+       GtkButton* ta_clear_button = NULL;
+       const gchar* _tmp29_ = NULL;
+       GtkButton* _tmp30_ = NULL;
+       GtkButton* _tmp31_ = NULL;
+       GtkTable* _tmp32_ = NULL;
+       GtkLabel* _tmp33_ = NULL;
+       gint _tmp34_ = 0;
+       gint _tmp35_ = 0;
+       GtkAttachOptions _tmp36_ = 0;
+       GtkAttachOptions _tmp37_ = 0;
+       GtkTable* _tmp38_ = NULL;
+       GtkButton* _tmp39_ = NULL;
+       gint _tmp40_ = 0;
+       gint _tmp41_ = 0;
+       GtkAttachOptions _tmp42_ = 0;
+       GtkAttachOptions _tmp43_ = 0;
+       gint _tmp44_ = 0;
+       GtkLabel* added_label = NULL;
+       IdCard* _tmp45_ = NULL;
+       TrustAnchor* _tmp46_ = NULL;
+       TrustAnchor* _tmp47_ = NULL;
+       const gchar* _tmp48_ = NULL;
+       const gchar* _tmp49_ = NULL;
+       gchar* _tmp50_ = NULL;
+       gchar* _tmp51_ = NULL;
+       const gchar* _tmp52_ = NULL;
+       GtkLabel* _tmp53_ = NULL;
+       GtkLabel* _tmp54_ = NULL;
+       GtkLabel* _tmp55_ = NULL;
+       GtkTable* _tmp56_ = NULL;
+       GtkLabel* _tmp57_ = NULL;
+       gint _tmp58_ = 0;
+       gint _tmp59_ = 0;
+       GtkAttachOptions _tmp60_ = 0;
+       GtkAttachOptions _tmp61_ = 0;
+       gint _tmp62_ = 0;
+       IdCard* _tmp63_ = NULL;
+       TrustAnchor* _tmp64_ = NULL;
+       TrustAnchor* _tmp65_ = NULL;
+       TrustAnchorTrustAnchorType _tmp66_ = 0;
+       GtkHBox* _tmp172_ = NULL;
+       GtkTable* _tmp173_ = NULL;
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_val_if_fail (id != NULL, NULL);
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _data4_ = g_slice_new0 (Block4Data);
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _data4_->_ref_count_ = 1;
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _data4_->self = g_object_ref (self);
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp0_ = id;
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp1_ = _g_object_ref0 (_tmp0_);
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (_data4_->id);
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _data4_->id = _tmp1_;
+#line 224 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       nrows = 7;
+#line 225 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _data4_->ncolumns = 2;
+#line 226 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp2_ = _ ("Trust anchor: ");
+#line 226 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp3_ = g_strdup (_tmp2_);
+#line 226 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _data4_->ta_label_prefix = _tmp3_;
+#line 227 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp4_ = _ ("None");
+#line 227 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp5_ = g_strdup (_tmp4_);
+#line 227 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _data4_->none = _tmp5_;
+#line 229 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp6_ = (GtkHBox*) gtk_hbox_new (FALSE, 0);
+#line 229 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_ref_sink (_tmp6_);
+#line 229 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       trust_anchor_box = _tmp6_;
+#line 232 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp8_ = _data4_->id;
+#line 232 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp9_ = id_card_get_trust_anchor (_tmp8_);
+#line 232 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp10_ = _tmp9_;
+#line 232 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp11_ = trust_anchor_is_empty (_tmp10_);
+#line 232 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       if (_tmp11_) {
+#line 1339 "moonshot-identity-dialog.c"
+               const gchar* _tmp12_ = NULL;
+#line 232 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp12_ = _data4_->none;
+#line 232 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp7_ = _tmp12_;
+#line 1345 "moonshot-identity-dialog.c"
+       } else {
+               const gchar* _tmp13_ = NULL;
+#line 232 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp13_ = _ ("Enterprise provisioned");
+#line 232 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp7_ = _tmp13_;
+#line 1352 "moonshot-identity-dialog.c"
+       }
+#line 231 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp14_ = _data4_->ta_label_prefix;
+#line 231 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp15_ = g_strconcat (_tmp14_, _tmp7_, NULL);
+#line 231 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp16_ = _tmp15_;
+#line 231 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp17_ = (GtkLabel*) gtk_label_new (_tmp16_);
+#line 231 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_ref_sink (_tmp17_);
+#line 231 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp18_ = _tmp17_;
+#line 231 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_free0 (_tmp16_);
+#line 231 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _data4_->ta_label = _tmp18_;
+#line 233 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp19_ = _data4_->ta_label;
+#line 233 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_misc_set_alignment ((GtkMisc*) _tmp19_, (gfloat) 0, 0.5f);
+#line 235 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp20_ = _data4_->id;
+#line 235 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp21_ = id_card_get_trust_anchor (_tmp20_);
+#line 235 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp22_ = _tmp21_;
+#line 235 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp23_ = trust_anchor_is_empty (_tmp22_);
+#line 235 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       if (_tmp23_) {
+#line 1384 "moonshot-identity-dialog.c"
+               GtkHBox* _tmp24_ = NULL;
+               GtkLabel* _tmp25_ = NULL;
+#line 236 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp24_ = trust_anchor_box;
+#line 236 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp25_ = _data4_->ta_label;
+#line 236 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               gtk_box_pack_start ((GtkBox*) _tmp24_, (GtkWidget*) _tmp25_, FALSE, FALSE, (guint) 0);
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               result = (GtkWidget*) trust_anchor_box;
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               block4_data_unref (_data4_);
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _data4_ = NULL;
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               return result;
+#line 1401 "moonshot-identity-dialog.c"
+       }
+#line 241 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _data4_->fill_and_expand = GTK_EXPAND | GTK_FILL;
+#line 242 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       fill = GTK_FILL;
+#line 244 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp26_ = nrows;
+#line 244 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp27_ = _data4_->ncolumns;
+#line 244 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp28_ = (GtkTable*) gtk_table_new ((guint) _tmp26_, (guint) _tmp27_, FALSE);
+#line 244 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_ref_sink (_tmp28_);
+#line 244 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _data4_->ta_table = _tmp28_;
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       row = 0;
+#line 247 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp29_ = _ ("Clear Trust Anchor");
+#line 247 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp30_ = (GtkButton*) gtk_button_new_with_label (_tmp29_);
+#line 247 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_ref_sink (_tmp30_);
+#line 247 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       ta_clear_button = _tmp30_;
+#line 248 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp31_ = ta_clear_button;
+#line 248 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_signal_connect_data (_tmp31_, "clicked", (GCallback) ___lambda8__gtk_button_clicked, block4_data_ref (_data4_), (GClosureNotify) block4_data_unref, 0);
+#line 279 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp32_ = _data4_->ta_table;
+#line 279 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp33_ = _data4_->ta_label;
+#line 279 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp34_ = row;
+#line 279 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp35_ = row;
+#line 279 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp36_ = _data4_->fill_and_expand;
+#line 279 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp37_ = _data4_->fill_and_expand;
+#line 279 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_table_attach (_tmp32_, (GtkWidget*) _tmp33_, (guint) 0, (guint) 1, (guint) _tmp34_, (guint) (_tmp35_ + 1), _tmp36_, _tmp37_, (guint) 0, (guint) 0);
+#line 280 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp38_ = _data4_->ta_table;
+#line 280 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp39_ = ta_clear_button;
+#line 280 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp40_ = row;
+#line 280 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp41_ = row;
+#line 280 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp42_ = fill;
+#line 280 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp43_ = fill;
+#line 280 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_table_attach (_tmp38_, (GtkWidget*) _tmp39_, (guint) 1, (guint) 2, (guint) _tmp40_, (guint) (_tmp41_ + 1), _tmp42_, _tmp43_, (guint) 0, (guint) 0);
+#line 281 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp44_ = row;
+#line 281 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       row = _tmp44_ + 1;
+#line 283 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp45_ = _data4_->id;
+#line 283 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp46_ = id_card_get_trust_anchor (_tmp45_);
+#line 283 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp47_ = _tmp46_;
+#line 283 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp48_ = trust_anchor_get_datetime_added (_tmp47_);
+#line 283 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp49_ = _tmp48_;
+#line 283 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp50_ = g_strconcat ("Added: ", _tmp49_, NULL);
+#line 283 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp51_ = _tmp50_;
+#line 283 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp52_ = _ (_tmp51_);
+#line 283 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp53_ = (GtkLabel*) gtk_label_new (_tmp52_);
+#line 283 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_ref_sink (_tmp53_);
+#line 283 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp54_ = _tmp53_;
+#line 283 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_free0 (_tmp51_);
+#line 283 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       added_label = _tmp54_;
+#line 284 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp55_ = added_label;
+#line 284 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_misc_set_alignment ((GtkMisc*) _tmp55_, (gfloat) 0, 0.5f);
+#line 285 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp56_ = _data4_->ta_table;
+#line 285 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp57_ = added_label;
+#line 285 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp58_ = row;
+#line 285 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp59_ = row;
+#line 285 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp60_ = _data4_->fill_and_expand;
+#line 285 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp61_ = _data4_->fill_and_expand;
+#line 285 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_table_attach (_tmp56_, (GtkWidget*) _tmp57_, (guint) 0, (guint) 1, (guint) _tmp58_, (guint) (_tmp59_ + 1), _tmp60_, _tmp61_, (guint) 20, (guint) 5);
+#line 286 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp62_ = row;
+#line 286 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       row = _tmp62_ + 1;
+#line 288 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp63_ = _data4_->id;
+#line 288 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp64_ = id_card_get_trust_anchor (_tmp63_);
+#line 288 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp65_ = _tmp64_;
+#line 288 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp66_ = trust_anchor_get_anchor_type (_tmp65_);
+#line 288 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       if (_tmp66_ == TRUST_ANCHOR_TRUST_ANCHOR_TYPE_SERVER_CERT) {
+#line 1521 "moonshot-identity-dialog.c"
+               GtkWidget* fingerprint = NULL;
+               IdCard* _tmp67_ = NULL;
+               TrustAnchor* _tmp68_ = NULL;
+               TrustAnchor* _tmp69_ = NULL;
+               const gchar* _tmp70_ = NULL;
+               const gchar* _tmp71_ = NULL;
+               GtkWidget* _tmp72_ = NULL;
+               GtkTable* _tmp73_ = NULL;
+               GtkWidget* _tmp74_ = NULL;
+               gint _tmp75_ = 0;
+               gint _tmp76_ = 0;
+               GtkAttachOptions _tmp77_ = 0;
+               GtkAttachOptions _tmp78_ = 0;
+#line 289 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp67_ = _data4_->id;
+#line 289 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp68_ = id_card_get_trust_anchor (_tmp67_);
+#line 289 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp69_ = _tmp68_;
+#line 289 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp70_ = trust_anchor_get_server_cert (_tmp69_);
+#line 289 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp71_ = _tmp70_;
+#line 289 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp72_ = make_ta_fingerprint_widget (_tmp71_, NULL);
+#line 289 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               fingerprint = _tmp72_;
+#line 290 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp73_ = _data4_->ta_table;
+#line 290 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp74_ = fingerprint;
+#line 290 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp75_ = row;
+#line 290 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp76_ = row;
+#line 290 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp77_ = _data4_->fill_and_expand;
+#line 290 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp78_ = _data4_->fill_and_expand;
+#line 290 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               gtk_table_attach (_tmp73_, _tmp74_, (guint) 0, (guint) 2, (guint) _tmp75_, (guint) (_tmp76_ + 2), _tmp77_, _tmp78_, (guint) 5, (guint) 5);
+#line 288 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_object_unref0 (fingerprint);
+#line 1565 "moonshot-identity-dialog.c"
+       } else {
+               GtkLabel* ca_cert_label = NULL;
+               const gchar* _tmp79_ = NULL;
+               GtkLabel* _tmp80_ = NULL;
+               GtkLabel* _tmp81_ = NULL;
+               GtkButton* export_button = NULL;
+               const gchar* _tmp82_ = NULL;
+               GtkButton* _tmp83_ = NULL;
+               GtkButton* _tmp84_ = NULL;
+               GtkTable* _tmp85_ = NULL;
+               GtkLabel* _tmp86_ = NULL;
+               gint _tmp87_ = 0;
+               gint _tmp88_ = 0;
+               GtkAttachOptions _tmp89_ = 0;
+               GtkAttachOptions _tmp90_ = 0;
+               GtkTable* _tmp91_ = NULL;
+               GtkButton* _tmp92_ = NULL;
+               gint _tmp93_ = 0;
+               gint _tmp94_ = 0;
+               GtkAttachOptions _tmp95_ = 0;
+               GtkAttachOptions _tmp96_ = 0;
+               gint _tmp97_ = 0;
+               IdCard* _tmp98_ = NULL;
+               TrustAnchor* _tmp99_ = NULL;
+               TrustAnchor* _tmp100_ = NULL;
+               const gchar* _tmp101_ = NULL;
+               const gchar* _tmp102_ = NULL;
+               IdCard* _tmp121_ = NULL;
+               TrustAnchor* _tmp122_ = NULL;
+               TrustAnchor* _tmp123_ = NULL;
+               const gchar* _tmp124_ = NULL;
+               const gchar* _tmp125_ = NULL;
+               GtkLabel* expiration_label = NULL;
+               const gchar* _tmp144_ = NULL;
+               IdCard* _tmp145_ = NULL;
+               TrustAnchor* _tmp146_ = NULL;
+               TrustAnchor* _tmp147_ = NULL;
+               gchar* _tmp148_ = NULL;
+               gchar* _tmp149_ = NULL;
+               gchar* _tmp150_ = NULL;
+               gchar* _tmp151_ = NULL;
+               GtkLabel* _tmp152_ = NULL;
+               GtkLabel* _tmp153_ = NULL;
+               GtkLabel* _tmp154_ = NULL;
+               GtkTable* _tmp155_ = NULL;
+               GtkLabel* _tmp156_ = NULL;
+               gint _tmp157_ = 0;
+               gint _tmp158_ = 0;
+               GtkAttachOptions _tmp159_ = 0;
+               GtkAttachOptions _tmp160_ = 0;
+               gint _tmp161_ = 0;
+               GtkLabel* constraint_label = NULL;
+               const gchar* _tmp162_ = NULL;
+               GtkLabel* _tmp163_ = NULL;
+               GtkLabel* _tmp164_ = NULL;
+               GtkTable* _tmp165_ = NULL;
+               GtkLabel* _tmp166_ = NULL;
+               gint _tmp167_ = 0;
+               gint _tmp168_ = 0;
+               GtkAttachOptions _tmp169_ = 0;
+               GtkAttachOptions _tmp170_ = 0;
+               gint _tmp171_ = 0;
+#line 293 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp79_ = _ ("CA Certificate:");
+#line 293 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp80_ = (GtkLabel*) gtk_label_new (_tmp79_);
+#line 293 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               g_object_ref_sink (_tmp80_);
+#line 293 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               ca_cert_label = _tmp80_;
+#line 294 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp81_ = ca_cert_label;
+#line 294 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               gtk_misc_set_alignment ((GtkMisc*) _tmp81_, (gfloat) 0, 0.5f);
+#line 295 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp82_ = _ ("Export Certificate");
+#line 295 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp83_ = (GtkButton*) gtk_button_new_with_label (_tmp82_);
+#line 295 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               g_object_ref_sink (_tmp83_);
+#line 295 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               export_button = _tmp83_;
+#line 296 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp84_ = export_button;
+#line 296 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               g_signal_connect_data (_tmp84_, "clicked", (GCallback) ____lambda9__gtk_button_clicked, block4_data_ref (_data4_), (GClosureNotify) block4_data_unref, 0);
+#line 298 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp85_ = _data4_->ta_table;
+#line 298 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp86_ = ca_cert_label;
+#line 298 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp87_ = row;
+#line 298 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp88_ = row;
+#line 298 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp89_ = _data4_->fill_and_expand;
+#line 298 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp90_ = _data4_->fill_and_expand;
+#line 298 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               gtk_table_attach (_tmp85_, (GtkWidget*) _tmp86_, (guint) 0, (guint) 1, (guint) _tmp87_, (guint) (_tmp88_ + 1), _tmp89_, _tmp90_, (guint) 20, (guint) 0);
+#line 299 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp91_ = _data4_->ta_table;
+#line 299 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp92_ = export_button;
+#line 299 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp93_ = row;
+#line 299 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp94_ = row;
+#line 299 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp95_ = fill;
+#line 299 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp96_ = fill;
+#line 299 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               gtk_table_attach (_tmp91_, (GtkWidget*) _tmp92_, (guint) 1, (guint) 2, (guint) _tmp93_, (guint) (_tmp94_ + 1), _tmp95_, _tmp96_, (guint) 0, (guint) 0);
+#line 300 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp97_ = row;
+#line 300 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               row = _tmp97_ + 1;
+#line 302 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp98_ = _data4_->id;
+#line 302 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp99_ = id_card_get_trust_anchor (_tmp98_);
+#line 302 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp100_ = _tmp99_;
+#line 302 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp101_ = trust_anchor_get_subject (_tmp100_);
+#line 302 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp102_ = _tmp101_;
+#line 302 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               if (g_strcmp0 (_tmp102_, "") != 0) {
+#line 1696 "moonshot-identity-dialog.c"
+                       GtkLabel* subject_label = NULL;
+                       const gchar* _tmp103_ = NULL;
+                       IdCard* _tmp104_ = NULL;
+                       TrustAnchor* _tmp105_ = NULL;
+                       TrustAnchor* _tmp106_ = NULL;
+                       const gchar* _tmp107_ = NULL;
+                       const gchar* _tmp108_ = NULL;
+                       gchar* _tmp109_ = NULL;
+                       gchar* _tmp110_ = NULL;
+                       GtkLabel* _tmp111_ = NULL;
+                       GtkLabel* _tmp112_ = NULL;
+                       GtkLabel* _tmp113_ = NULL;
+                       GtkTable* _tmp114_ = NULL;
+                       GtkLabel* _tmp115_ = NULL;
+                       gint _tmp116_ = 0;
+                       gint _tmp117_ = 0;
+                       GtkAttachOptions _tmp118_ = 0;
+                       GtkAttachOptions _tmp119_ = 0;
+                       gint _tmp120_ = 0;
+#line 303 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp103_ = _ ("Subject: ");
+#line 303 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp104_ = _data4_->id;
+#line 303 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp105_ = id_card_get_trust_anchor (_tmp104_);
+#line 303 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp106_ = _tmp105_;
+#line 303 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp107_ = trust_anchor_get_subject (_tmp106_);
+#line 303 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp108_ = _tmp107_;
+#line 303 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp109_ = g_strconcat (_tmp103_, _tmp108_, NULL);
+#line 303 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp110_ = _tmp109_;
+#line 303 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp111_ = (GtkLabel*) gtk_label_new (_tmp110_);
+#line 303 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       g_object_ref_sink (_tmp111_);
+#line 303 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp112_ = _tmp111_;
+#line 303 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _g_free0 (_tmp110_);
+#line 303 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       subject_label = _tmp112_;
+#line 304 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp113_ = subject_label;
+#line 304 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       gtk_misc_set_alignment ((GtkMisc*) _tmp113_, (gfloat) 0, 0.5f);
+#line 305 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp114_ = _data4_->ta_table;
+#line 305 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp115_ = subject_label;
+#line 305 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp116_ = row;
+#line 305 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp117_ = row;
+#line 305 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp118_ = _data4_->fill_and_expand;
+#line 305 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp119_ = _data4_->fill_and_expand;
+#line 305 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       gtk_table_attach (_tmp114_, (GtkWidget*) _tmp115_, (guint) 0, (guint) 1, (guint) _tmp116_, (guint) (_tmp117_ + 1), _tmp118_, _tmp119_, (guint) 40, (guint) 5);
+#line 306 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp120_ = row;
+#line 306 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       row = _tmp120_ + 1;
+#line 302 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _g_object_unref0 (subject_label);
+#line 1766 "moonshot-identity-dialog.c"
+               }
+#line 309 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp121_ = _data4_->id;
+#line 309 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp122_ = id_card_get_trust_anchor (_tmp121_);
+#line 309 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp123_ = _tmp122_;
+#line 309 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp124_ = trust_anchor_get_subject_alt (_tmp123_);
+#line 309 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp125_ = _tmp124_;
+#line 309 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               if (g_strcmp0 (_tmp125_, "") != 0) {
+#line 1780 "moonshot-identity-dialog.c"
+                       GtkLabel* subject_alt_label = NULL;
+                       const gchar* _tmp126_ = NULL;
+                       IdCard* _tmp127_ = NULL;
+                       TrustAnchor* _tmp128_ = NULL;
+                       TrustAnchor* _tmp129_ = NULL;
+                       const gchar* _tmp130_ = NULL;
+                       const gchar* _tmp131_ = NULL;
+                       gchar* _tmp132_ = NULL;
+                       gchar* _tmp133_ = NULL;
+                       GtkLabel* _tmp134_ = NULL;
+                       GtkLabel* _tmp135_ = NULL;
+                       GtkLabel* _tmp136_ = NULL;
+                       GtkTable* _tmp137_ = NULL;
+                       GtkLabel* _tmp138_ = NULL;
+                       gint _tmp139_ = 0;
+                       gint _tmp140_ = 0;
+                       GtkAttachOptions _tmp141_ = 0;
+                       GtkAttachOptions _tmp142_ = 0;
+                       gint _tmp143_ = 0;
+#line 310 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp126_ = _ ("Subject-Alt: ");
+#line 310 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp127_ = _data4_->id;
+#line 310 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp128_ = id_card_get_trust_anchor (_tmp127_);
+#line 310 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp129_ = _tmp128_;
+#line 310 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp130_ = trust_anchor_get_subject_alt (_tmp129_);
+#line 310 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp131_ = _tmp130_;
+#line 310 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp132_ = g_strconcat (_tmp126_, _tmp131_, NULL);
+#line 310 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp133_ = _tmp132_;
+#line 310 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp134_ = (GtkLabel*) gtk_label_new (_tmp133_);
+#line 310 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       g_object_ref_sink (_tmp134_);
+#line 310 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp135_ = _tmp134_;
+#line 310 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _g_free0 (_tmp133_);
+#line 310 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       subject_alt_label = _tmp135_;
+#line 311 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp136_ = subject_alt_label;
+#line 311 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       gtk_misc_set_alignment ((GtkMisc*) _tmp136_, (gfloat) 0, 0.5f);
+#line 312 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp137_ = _data4_->ta_table;
+#line 312 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp138_ = subject_alt_label;
+#line 312 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp139_ = row;
+#line 312 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp140_ = row;
+#line 312 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp141_ = _data4_->fill_and_expand;
+#line 312 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp142_ = _data4_->fill_and_expand;
+#line 312 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       gtk_table_attach (_tmp137_, (GtkWidget*) _tmp138_, (guint) 0, (guint) 1, (guint) _tmp139_, (guint) (_tmp140_ + 1), _tmp141_, _tmp142_, (guint) 40, (guint) 5);
+#line 313 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp143_ = row;
+#line 313 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       row = _tmp143_ + 1;
+#line 309 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _g_object_unref0 (subject_alt_label);
+#line 1850 "moonshot-identity-dialog.c"
+               }
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp144_ = _ ("Expiration date: ");
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp145_ = _data4_->id;
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp146_ = id_card_get_trust_anchor (_tmp145_);
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp147_ = _tmp146_;
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp148_ = trust_anchor_get_expiration_date (_tmp147_, NULL);
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp149_ = _tmp148_;
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp150_ = g_strconcat (_tmp144_, _tmp149_, NULL);
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp151_ = _tmp150_;
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp152_ = (GtkLabel*) gtk_label_new (_tmp151_);
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               g_object_ref_sink (_tmp152_);
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp153_ = _tmp152_;
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_free0 (_tmp151_);
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_free0 (_tmp149_);
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               expiration_label = _tmp153_;
+#line 317 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp154_ = expiration_label;
+#line 317 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               gtk_misc_set_alignment ((GtkMisc*) _tmp154_, (gfloat) 0, 0.5f);
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp155_ = _data4_->ta_table;
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp156_ = expiration_label;
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp157_ = row;
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp158_ = row;
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp159_ = _data4_->fill_and_expand;
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp160_ = _data4_->fill_and_expand;
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               gtk_table_attach (_tmp155_, (GtkWidget*) _tmp156_, (guint) 0, (guint) 1, (guint) _tmp157_, (guint) (_tmp158_ + 1), _tmp159_, _tmp160_, (guint) 40, (guint) 5);
+#line 319 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp161_ = row;
+#line 319 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               row = _tmp161_ + 1;
+#line 322 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp162_ = _ ("Constraint: ");
+#line 322 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp163_ = (GtkLabel*) gtk_label_new (_tmp162_);
+#line 322 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               g_object_ref_sink (_tmp163_);
+#line 322 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               constraint_label = _tmp163_;
+#line 323 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp164_ = constraint_label;
+#line 323 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               gtk_misc_set_alignment ((GtkMisc*) _tmp164_, (gfloat) 0, 0.5f);
+#line 324 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp165_ = _data4_->ta_table;
+#line 324 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp166_ = constraint_label;
+#line 324 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp167_ = row;
+#line 324 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp168_ = row;
+#line 324 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp169_ = _data4_->fill_and_expand;
+#line 324 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp170_ = _data4_->fill_and_expand;
+#line 324 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               gtk_table_attach (_tmp165_, (GtkWidget*) _tmp166_, (guint) 0, (guint) 1, (guint) _tmp167_, (guint) (_tmp168_ + 1), _tmp169_, _tmp170_, (guint) 20, (guint) 0);
+#line 325 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp171_ = row;
+#line 325 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               row = _tmp171_ + 1;
+#line 288 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_object_unref0 (constraint_label);
+#line 288 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_object_unref0 (expiration_label);
+#line 288 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_object_unref0 (export_button);
+#line 288 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_object_unref0 (ca_cert_label);
+#line 1940 "moonshot-identity-dialog.c"
+       }
+#line 328 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp172_ = trust_anchor_box;
+#line 328 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp173_ = _data4_->ta_table;
+#line 328 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_box_pack_start ((GtkBox*) _tmp172_, (GtkWidget*) _tmp173_, FALSE, FALSE, (guint) 0);
+#line 329 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       result = (GtkWidget*) trust_anchor_box;
+#line 329 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (added_label);
+#line 329 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (ta_clear_button);
+#line 329 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       block4_data_unref (_data4_);
+#line 329 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _data4_ = NULL;
+#line 329 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       return result;
+#line 1960 "moonshot-identity-dialog.c"
+}
+
+
+static void identity_dialog_add_as_vbox (GtkBox* content_area, GtkLabel* label, GtkEntry* entry) {
+       GtkVBox* vbox = NULL;
+       GtkVBox* _tmp0_ = NULL;
+       GtkLabel* _tmp1_ = NULL;
+       GtkEntry* _tmp2_ = NULL;
+       GtkHBox* hbox = NULL;
+       GtkHBox* _tmp3_ = NULL;
+       GtkBox* _tmp4_ = NULL;
+#line 332 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_if_fail (content_area != NULL);
+#line 332 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_if_fail (label != NULL);
+#line 332 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_if_fail (entry != NULL);
+#line 334 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp0_ = (GtkVBox*) gtk_vbox_new (FALSE, 2);
+#line 334 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_ref_sink (_tmp0_);
+#line 334 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       vbox = _tmp0_;
+#line 336 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp1_ = label;
+#line 336 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_box_pack_start ((GtkBox*) vbox, (GtkWidget*) _tmp1_, FALSE, FALSE, (guint) 0);
+#line 337 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp2_ = entry;
+#line 337 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_box_pack_start ((GtkBox*) vbox, (GtkWidget*) _tmp2_, FALSE, FALSE, (guint) 0);
+#line 340 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp3_ = (GtkHBox*) gtk_hbox_new (FALSE, 0);
+#line 340 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_ref_sink (_tmp3_);
+#line 340 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       hbox = _tmp3_;
+#line 341 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_box_pack_start ((GtkBox*) hbox, (GtkWidget*) vbox, FALSE, FALSE, (guint) 0);
+#line 342 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp4_ = content_area;
+#line 342 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_box_pack_start (_tmp4_, (GtkWidget*) hbox, FALSE, FALSE, (guint) 6);
+#line 332 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (hbox);
+#line 332 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (vbox);
+#line 2008 "moonshot-identity-dialog.c"
+}
+
+
+static gchar* identity_dialog_update_preamble (const gchar* preamble) {
+       gchar* result = NULL;
+       const gchar* _tmp0_ = NULL;
+       const gchar* _tmp3_ = NULL;
+       gchar* _tmp4_ = NULL;
+#line 345 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_val_if_fail (preamble != NULL, NULL);
+#line 347 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp0_ = preamble;
+#line 347 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       if (g_strcmp0 (_tmp0_, "") == 0) {
+#line 2023 "moonshot-identity-dialog.c"
+               const gchar* _tmp1_ = NULL;
+               gchar* _tmp2_ = NULL;
+#line 348 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp1_ = _ ("Missing required field: ");
+#line 348 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp2_ = g_strdup (_tmp1_);
+#line 348 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               result = _tmp2_;
+#line 348 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               return result;
+#line 2034 "moonshot-identity-dialog.c"
+       }
+#line 349 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp3_ = _ ("Missing required fields: ");
+#line 349 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp4_ = g_strdup (_tmp3_);
+#line 349 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       result = _tmp4_;
+#line 349 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       return result;
+#line 2044 "moonshot-identity-dialog.c"
+}
+
+
+static gchar* identity_dialog_update_message (const gchar* old_message, const gchar* new_item) {
+       gchar* result = NULL;
+       gchar* message = NULL;
+       const gchar* _tmp0_ = NULL;
+#line 352 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_val_if_fail (old_message != NULL, NULL);
+#line 352 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_val_if_fail (new_item != NULL, NULL);
+#line 355 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp0_ = old_message;
+#line 355 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       if (g_strcmp0 (_tmp0_, "") == 0) {
+#line 2060 "moonshot-identity-dialog.c"
+               const gchar* _tmp1_ = NULL;
+               gchar* _tmp2_ = NULL;
+#line 356 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp1_ = new_item;
+#line 356 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp2_ = g_strdup (_tmp1_);
+#line 356 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_free0 (message);
+#line 356 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               message = _tmp2_;
+#line 2071 "moonshot-identity-dialog.c"
+       } else {
+               const gchar* _tmp3_ = NULL;
+               gchar* _tmp4_ = NULL;
+               gchar* _tmp5_ = NULL;
+               const gchar* _tmp6_ = NULL;
+               gchar* _tmp7_ = NULL;
+#line 358 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp3_ = old_message;
+#line 358 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp4_ = g_strconcat (_tmp3_, ", ", NULL);
+#line 358 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp5_ = _tmp4_;
+#line 358 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp6_ = new_item;
+#line 358 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp7_ = g_strconcat (_tmp5_, _tmp6_, NULL);
+#line 358 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_free0 (message);
+#line 358 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               message = _tmp7_;
+#line 358 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_free0 (_tmp5_);
+#line 2094 "moonshot-identity-dialog.c"
+       }
+#line 359 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       result = message;
+#line 359 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       return result;
+#line 2100 "moonshot-identity-dialog.c"
+}
+
+
+static void identity_dialog_check_field (const gchar* field, GtkLabel* label, const gchar* fieldname, gchar** preamble, gchar** message) {
+       const gchar* _tmp0_ = NULL;
+       GtkLabel* _tmp6_ = NULL;
+       const gchar* _tmp7_ = NULL;
+       const gchar* _tmp8_ = NULL;
+       gchar* _tmp9_ = NULL;
+       gchar* _tmp10_ = NULL;
+       const gchar* _tmp11_ = NULL;
+       gchar* _tmp12_ = NULL;
+       const gchar* _tmp13_ = NULL;
+       const gchar* _tmp14_ = NULL;
+       gchar* _tmp15_ = NULL;
+#line 362 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_if_fail (field != NULL);
+#line 362 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_if_fail (label != NULL);
+#line 362 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_if_fail (fieldname != NULL);
+#line 362 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_if_fail (*preamble != NULL);
+#line 362 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_if_fail (*message != NULL);
+#line 364 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp0_ = field;
+#line 364 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       if (g_strcmp0 (_tmp0_, "") != 0) {
+#line 2130 "moonshot-identity-dialog.c"
+               GtkLabel* _tmp1_ = NULL;
+               const gchar* _tmp2_ = NULL;
+               const gchar* _tmp3_ = NULL;
+               gchar* _tmp4_ = NULL;
+               gchar* _tmp5_ = NULL;
+#line 365 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp1_ = label;
+#line 365 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp2_ = fieldname;
+#line 365 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp3_ = string_to_string (_tmp2_);
+#line 365 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp4_ = g_strconcat (_tmp3_, ":", NULL);
+#line 365 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp5_ = _tmp4_;
+#line 365 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               gtk_label_set_markup (_tmp1_, _tmp5_);
+#line 365 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_free0 (_tmp5_);
+#line 366 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               return;
+#line 2152 "moonshot-identity-dialog.c"
+       }
+#line 368 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp6_ = label;
+#line 368 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp7_ = fieldname;
+#line 368 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp8_ = string_to_string (_tmp7_);
+#line 368 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp9_ = g_strconcat ("<span foreground=\"red\">", _tmp8_, ":</span>", NULL);
+#line 368 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp10_ = _tmp9_;
+#line 368 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_label_set_markup (_tmp6_, _tmp10_);
+#line 368 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_free0 (_tmp10_);
+#line 369 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp11_ = *preamble;
+#line 369 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp12_ = identity_dialog_update_preamble (_tmp11_);
+#line 369 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_free0 (*preamble);
+#line 369 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       *preamble = _tmp12_;
+#line 370 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp13_ = *message;
+#line 370 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp14_ = fieldname;
+#line 370 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp15_ = identity_dialog_update_message (_tmp13_, _tmp14_);
+#line 370 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_free0 (*message);
+#line 370 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       *message = _tmp15_;
+#line 2186 "moonshot-identity-dialog.c"
+}
+
+
+static gboolean identity_dialog_check_fields (IdentityDialog* self) {
+       gboolean result = FALSE;
+       gchar* preamble = NULL;
+       gchar* _tmp0_ = NULL;
+       gchar* message = NULL;
+       gchar* _tmp1_ = NULL;
+       const gchar* _tmp2_ = NULL;
+       gboolean _tmp3_ = FALSE;
+       gboolean _tmp4_ = FALSE;
+       gchar* password_test = NULL;
+       gchar* _tmp7_ = NULL;
+       IdCard* _tmp8_ = NULL;
+       gboolean _tmp9_ = FALSE;
+       const gchar* _tmp21_ = NULL;
+#line 373 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_val_if_fail (self != NULL, FALSE);
+#line 375 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp0_ = g_strdup ("");
+#line 375 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       preamble = _tmp0_;
+#line 376 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp1_ = g_strdup ("");
+#line 376 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       message = _tmp1_;
+#line 377 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp3_ = identity_dialog_get_store_password (self);
+#line 377 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp4_ = _tmp3_;
+#line 377 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       if (_tmp4_) {
+#line 2220 "moonshot-identity-dialog.c"
+               const gchar* _tmp5_ = NULL;
+               const gchar* _tmp6_ = NULL;
+#line 377 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp5_ = identity_dialog_get_password (self);
+#line 377 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp6_ = _tmp5_;
+#line 377 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp2_ = _tmp6_;
+#line 2229 "moonshot-identity-dialog.c"
+       } else {
+#line 377 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp2_ = "not required";
+#line 2233 "moonshot-identity-dialog.c"
+       }
+#line 377 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp7_ = g_strdup (_tmp2_);
+#line 377 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       password_test = _tmp7_;
+#line 378 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp8_ = self->priv->card;
+#line 378 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp9_ = id_card_is_no_identity (_tmp8_);
+#line 378 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       if (!_tmp9_) {
+#line 2245 "moonshot-identity-dialog.c"
+               const gchar* _tmp10_ = NULL;
+               const gchar* _tmp11_ = NULL;
+               GtkLabel* _tmp12_ = NULL;
+               const gchar* _tmp13_ = NULL;
+               const gchar* _tmp14_ = NULL;
+               GtkLabel* _tmp15_ = NULL;
+               const gchar* _tmp16_ = NULL;
+               const gchar* _tmp17_ = NULL;
+               GtkLabel* _tmp18_ = NULL;
+               const gchar* _tmp19_ = NULL;
+               GtkLabel* _tmp20_ = NULL;
+#line 380 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp10_ = identity_dialog_get_display_name (self);
+#line 380 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp11_ = _tmp10_;
+#line 380 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp12_ = self->priv->displayname_label;
+#line 380 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               identity_dialog_check_field (_tmp11_, _tmp12_, IDENTITY_DIALOG_displayname_labeltext, &preamble, &message);
+#line 381 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp13_ = identity_dialog_get_username (self);
+#line 381 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp14_ = _tmp13_;
+#line 381 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp15_ = self->priv->username_label;
+#line 381 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               identity_dialog_check_field (_tmp14_, _tmp15_, IDENTITY_DIALOG_username_labeltext, &preamble, &message);
+#line 382 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp16_ = identity_dialog_get_issuer (self);
+#line 382 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp17_ = _tmp16_;
+#line 382 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp18_ = self->priv->realm_label;
+#line 382 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               identity_dialog_check_field (_tmp17_, _tmp18_, IDENTITY_DIALOG_realm_labeltext, &preamble, &message);
+#line 383 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp19_ = password_test;
+#line 383 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp20_ = self->priv->password_label;
+#line 383 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               identity_dialog_check_field (_tmp19_, _tmp20_, IDENTITY_DIALOG_password_labeltext, &preamble, &message);
+#line 2287 "moonshot-identity-dialog.c"
+       }
+#line 385 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp21_ = message;
+#line 385 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       if (g_strcmp0 (_tmp21_, "") != 0) {
+#line 2293 "moonshot-identity-dialog.c"
+               GtkLabel* _tmp22_ = NULL;
+               GtkLabel* _tmp23_ = NULL;
+               const gchar* _tmp24_ = NULL;
+               const gchar* _tmp25_ = NULL;
+               const gchar* _tmp26_ = NULL;
+               const gchar* _tmp27_ = NULL;
+               gchar* _tmp28_ = NULL;
+               gchar* _tmp29_ = NULL;
+#line 386 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp22_ = self->priv->message_label;
+#line 386 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               gtk_widget_set_visible ((GtkWidget*) _tmp22_, TRUE);
+#line 387 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp23_ = self->priv->message_label;
+#line 387 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp24_ = preamble;
+#line 387 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp25_ = string_to_string (_tmp24_);
+#line 387 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp26_ = message;
+#line 387 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp27_ = string_to_string (_tmp26_);
+#line 387 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp28_ = g_strconcat ("<span foreground=\"red\">", _tmp25_, _tmp27_, "</span>", NULL);
+#line 387 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp29_ = _tmp28_;
+#line 387 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               gtk_label_set_markup (_tmp23_, _tmp29_);
+#line 387 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_free0 (_tmp29_);
+#line 388 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               result = FALSE;
+#line 388 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_free0 (password_test);
+#line 388 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_free0 (message);
+#line 388 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_free0 (preamble);
+#line 388 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               return result;
+#line 2334 "moonshot-identity-dialog.c"
+       }
+#line 390 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       result = TRUE;
+#line 390 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_free0 (password_test);
+#line 390 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_free0 (message);
+#line 390 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_free0 (preamble);
+#line 390 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       return result;
+#line 2346 "moonshot-identity-dialog.c"
+}
+
+
+static void identity_dialog_on_response (IdentityDialog* self, GtkDialog* source, gint response_id) {
+       gint _tmp0_ = 0;
+#line 393 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_if_fail (self != NULL);
+#line 393 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_if_fail (source != NULL);
+#line 395 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp0_ = response_id;
+#line 395 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       switch (_tmp0_) {
+#line 395 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               case GTK_RESPONSE_OK:
+#line 2362 "moonshot-identity-dialog.c"
+               {
+                       gboolean _tmp1_ = FALSE;
+#line 397 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp1_ = identity_dialog_check_fields (self);
+#line 397 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       self->complete = _tmp1_;
+#line 398 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       break;
+#line 2371 "moonshot-identity-dialog.c"
+               }
+#line 395 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               case GTK_RESPONSE_CANCEL:
+#line 2375 "moonshot-identity-dialog.c"
+               {
+#line 400 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       self->complete = TRUE;
+#line 401 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       break;
+#line 2381 "moonshot-identity-dialog.c"
+               }
+               default:
+#line 395 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               break;
+#line 2386 "moonshot-identity-dialog.c"
+       }
+}
+
+
+static Block5Data* block5_data_ref (Block5Data* _data5_) {
+#line 405 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_atomic_int_inc (&_data5_->_ref_count_);
+#line 405 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       return _data5_;
+#line 2396 "moonshot-identity-dialog.c"
+}
+
+
+static void block5_data_unref (void * _userdata_) {
+       Block5Data* _data5_;
+       _data5_ = (Block5Data*) _userdata_;
+#line 405 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       if (g_atomic_int_dec_and_test (&_data5_->_ref_count_)) {
+#line 2405 "moonshot-identity-dialog.c"
+               IdentityDialog* self;
+#line 405 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               self = _data5_->self;
+#line 405 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_object_unref0 (_data5_->services_table);
+#line 405 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_object_unref0 (_data5_->remove_button);
+#line 405 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_object_unref0 (self);
+#line 405 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               g_slice_free (Block5Data, _data5_);
+#line 2417 "moonshot-identity-dialog.c"
+       }
+}
+
+
+static Block6Data* block6_data_ref (Block6Data* _data6_) {
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_atomic_int_inc (&_data6_->_ref_count_);
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       return _data6_;
+#line 2427 "moonshot-identity-dialog.c"
+}
+
+
+static void block6_data_unref (void * _userdata_) {
+       Block6Data* _data6_;
+       _data6_ = (Block6Data*) _userdata_;
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       if (g_atomic_int_dec_and_test (&_data6_->_ref_count_)) {
+#line 2436 "moonshot-identity-dialog.c"
+               IdentityDialog* self;
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               self = _data6_->_data5_->self;
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_object_unref0 (_data6_->label);
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               block5_data_unref (_data6_->_data5_);
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _data6_->_data5_ = NULL;
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               g_slice_free (Block6Data, _data6_);
+#line 2448 "moonshot-identity-dialog.c"
+       }
+}
+
+
+static gboolean ____lambda10_ (Block6Data* _data6_) {
+       Block5Data* _data5_;
+       IdentityDialog* self;
+       gboolean result = FALSE;
+       GtkStateType state = 0;
+       GtkLabel* _tmp0_ = NULL;
+       GtkStateType _tmp1_ = 0;
+       MoonshotLogger* _tmp2_ = NULL;
+       GtkStateType _tmp3_ = 0;
+       GEnumValue* _tmp4_;
+       gchar* _tmp5_ = NULL;
+       gchar* _tmp6_ = NULL;
+       gchar* _tmp7_ = NULL;
+       gchar* _tmp8_ = NULL;
+       gchar* _tmp9_ = NULL;
+       gchar* _tmp10_ = NULL;
+       gchar* _tmp11_ = NULL;
+       gchar* _tmp12_ = NULL;
+       GtkLabel* _tmp13_ = NULL;
+       GtkLabel* _tmp14_ = NULL;
+#line 461 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _data5_ = _data6_->_data5_;
+#line 461 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       self = _data5_->self;
+#line 463 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp0_ = _data6_->label;
+#line 463 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp1_ = gtk_widget_get_state ((GtkWidget*) _tmp0_);
+#line 463 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       state = _tmp1_;
+#line 464 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp2_ = identity_dialog_logger;
+#line 464 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp3_ = state;
+#line 464 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp4_ = g_enum_get_value (g_type_class_ref (GTK_TYPE_STATE_TYPE), _tmp3_);
+#line 464 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp5_ = g_strconcat ("button_press_callback: Label state=", (_tmp4_ != NULL) ? _tmp4_->value_name : NULL, NULL);
+#line 464 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp6_ = _tmp5_;
+#line 464 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp7_ = g_strconcat (_tmp6_, " setting bg to ", NULL);
+#line 464 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp8_ = _tmp7_;
+#line 464 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp9_ = gdk_color_to_string (&identity_dialog_white);
+#line 464 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp10_ = _tmp9_;
+#line 464 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp11_ = g_strconcat (_tmp8_, _tmp10_, NULL);
+#line 464 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp12_ = _tmp11_;
+#line 464 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       moonshot_logger_trace (_tmp2_, _tmp12_, NULL);
+#line 464 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_free0 (_tmp12_);
+#line 464 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_free0 (_tmp10_);
+#line 464 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_free0 (_tmp8_);
+#line 464 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_free0 (_tmp6_);
+#line 466 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp13_ = self->priv->selected_item;
+#line 466 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp14_ = _data6_->label;
+#line 466 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       if (_tmp13_ == _tmp14_) {
+#line 2521 "moonshot-identity-dialog.c"
+               GtkLabel* _tmp15_ = NULL;
+               GtkContainer* _tmp16_ = NULL;
+               GtkContainer* _tmp17_ = NULL;
+               GtkStateType _tmp18_ = 0;
+               GdkColor _tmp19_ = {0};
+               GtkButton* _tmp20_ = NULL;
+#line 469 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp15_ = self->priv->selected_item;
+#line 469 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp16_ = gtk_widget_get_parent ((GtkWidget*) _tmp15_);
+#line 469 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp17_ = _tmp16_;
+#line 469 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp18_ = state;
+#line 469 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp19_ = identity_dialog_white;
+#line 469 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               gtk_widget_modify_bg ((GtkWidget*) _tmp17_, _tmp18_, &_tmp19_);
+#line 470 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_object_unref0 (self->priv->selected_item);
+#line 470 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               self->priv->selected_item = NULL;
+#line 471 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp20_ = _data5_->remove_button;
+#line 471 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               gtk_widget_set_sensitive ((GtkWidget*) _tmp20_, FALSE);
+#line 2548 "moonshot-identity-dialog.c"
+       } else {
+               GtkLabel* _tmp21_ = NULL;
+               GtkLabel* _tmp27_ = NULL;
+               GtkLabel* _tmp28_ = NULL;
+               GtkLabel* _tmp29_ = NULL;
+               GtkContainer* _tmp30_ = NULL;
+               GtkContainer* _tmp31_ = NULL;
+               GtkStateType _tmp32_ = 0;
+               GdkColor _tmp33_ = {0};
+               GtkButton* _tmp34_ = NULL;
+#line 475 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp21_ = self->priv->selected_item;
+#line 475 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               if (_tmp21_ != NULL) {
+#line 2563 "moonshot-identity-dialog.c"
+                       GtkLabel* _tmp22_ = NULL;
+                       GtkContainer* _tmp23_ = NULL;
+                       GtkContainer* _tmp24_ = NULL;
+                       GtkStateType _tmp25_ = 0;
+                       GdkColor _tmp26_ = {0};
+#line 478 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp22_ = self->priv->selected_item;
+#line 478 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp23_ = gtk_widget_get_parent ((GtkWidget*) _tmp22_);
+#line 478 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp24_ = _tmp23_;
+#line 478 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp25_ = state;
+#line 478 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp26_ = identity_dialog_white;
+#line 478 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       gtk_widget_modify_bg ((GtkWidget*) _tmp24_, _tmp25_, &_tmp26_);
+#line 479 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _g_object_unref0 (self->priv->selected_item);
+#line 479 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       self->priv->selected_item = NULL;
+#line 2585 "moonshot-identity-dialog.c"
+               }
+#line 483 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp27_ = _data6_->label;
+#line 483 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp28_ = _g_object_ref0 (_tmp27_);
+#line 483 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_object_unref0 (self->priv->selected_item);
+#line 483 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               self->priv->selected_item = _tmp28_;
+#line 484 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp29_ = self->priv->selected_item;
+#line 484 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp30_ = gtk_widget_get_parent ((GtkWidget*) _tmp29_);
+#line 484 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp31_ = _tmp30_;
+#line 484 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp32_ = state;
+#line 484 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp33_ = identity_dialog_selected_color;
+#line 484 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               gtk_widget_modify_bg ((GtkWidget*) _tmp31_, _tmp32_, &_tmp33_);
+#line 485 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp34_ = _data5_->remove_button;
+#line 485 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               gtk_widget_set_sensitive ((GtkWidget*) _tmp34_, TRUE);
+#line 2611 "moonshot-identity-dialog.c"
+       }
+#line 487 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       result = FALSE;
+#line 487 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       return result;
+#line 2617 "moonshot-identity-dialog.c"
+}
+
+
+static gboolean _____lambda10__gtk_widget_button_press_event (GtkWidget* _sender, GdkEventButton* event, gpointer self) {
+       gboolean result;
+       result = ____lambda10_ (self);
+#line 461 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       return result;
+#line 2626 "moonshot-identity-dialog.c"
+}
+
+
+static void __lambda11_ (Block5Data* _data5_, GtkButton* remove_button) {
+       IdentityDialog* self;
+       gboolean _result_ = FALSE;
+       const gchar* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+       gchar* _tmp2_ = NULL;
+       gchar* _tmp3_ = NULL;
+       gchar* _tmp4_ = NULL;
+       GtkLabel* _tmp5_ = NULL;
+       const gchar* _tmp6_ = NULL;
+       const gchar* _tmp7_ = NULL;
+       gchar* _tmp8_ = NULL;
+       gchar* _tmp9_ = NULL;
+       const gchar* _tmp10_ = NULL;
+       gchar* _tmp11_ = NULL;
+       gchar* _tmp12_ = NULL;
+       gboolean _tmp13_ = FALSE;
+       gboolean _tmp14_ = FALSE;
+       gboolean _tmp15_ = FALSE;
+#line 494 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       self = _data5_->self;
+#line 494 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_if_fail (remove_button != NULL);
+#line 496 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp0_ = _ ("You are about to remove the service\n'%s'.");
+#line 496 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp1_ = g_strconcat ("<span font-weight='heavy'>", _tmp0_, NULL);
+#line 496 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp2_ = _tmp1_;
+#line 496 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp3_ = g_strconcat (_tmp2_, "</span>", NULL);
+#line 496 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp4_ = _tmp3_;
+#line 496 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp5_ = self->priv->selected_item;
+#line 496 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp6_ = gtk_label_get_label (_tmp5_);
+#line 496 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp7_ = _tmp6_;
+#line 496 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp8_ = g_markup_printf_escaped (_tmp4_, _tmp7_);
+#line 496 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp9_ = _tmp8_;
+#line 496 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp10_ = _ ("\n\nAre you sure you want to do this?");
+#line 496 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp11_ = g_strconcat (_tmp9_, _tmp10_, NULL);
+#line 496 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp12_ = _tmp11_;
+#line 496 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp13_ = warning_dialog_confirm ((GtkWindow*) self, _tmp12_, "delete_service");
+#line 496 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp14_ = _tmp13_;
+#line 496 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_free0 (_tmp12_);
+#line 496 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_free0 (_tmp9_);
+#line 496 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_free0 (_tmp4_);
+#line 496 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_free0 (_tmp2_);
+#line 496 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _result_ = _tmp14_;
+#line 505 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp15_ = _result_;
+#line 505 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       if (_tmp15_) {
+#line 2697 "moonshot-identity-dialog.c"
+               IdCard* _tmp16_ = NULL;
+#line 507 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp16_ = self->priv->card;
+#line 507 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               if (_tmp16_ != NULL) {
+#line 2703 "moonshot-identity-dialog.c"
+                       GeeArrayList* _tmp17_ = NULL;
+                       GtkLabel* _tmp18_ = NULL;
+                       const gchar* _tmp19_ = NULL;
+                       const gchar* _tmp20_ = NULL;
+                       GtkTable* _tmp21_ = NULL;
+                       GtkLabel* _tmp22_ = NULL;
+                       GtkContainer* _tmp23_ = NULL;
+                       GtkContainer* _tmp24_ = NULL;
+                       GtkButton* _tmp25_ = NULL;
+#line 508 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp17_ = self->priv->services;
+#line 508 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp18_ = self->priv->selected_item;
+#line 508 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp19_ = gtk_label_get_label (_tmp18_);
+#line 508 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp20_ = _tmp19_;
+#line 508 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       gee_abstract_collection_remove ((GeeAbstractCollection*) _tmp17_, _tmp20_);
+#line 509 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp21_ = _data5_->services_table;
+#line 509 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp22_ = self->priv->selected_item;
+#line 509 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp23_ = gtk_widget_get_parent ((GtkWidget*) _tmp22_);
+#line 509 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp24_ = _tmp23_;
+#line 509 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       gtk_container_remove ((GtkContainer*) _tmp21_, (GtkWidget*) _tmp24_);
+#line 510 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _g_object_unref0 (self->priv->selected_item);
+#line 510 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       self->priv->selected_item = NULL;
+#line 511 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp25_ = remove_button;
+#line 511 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       gtk_widget_set_sensitive ((GtkWidget*) _tmp25_, FALSE);
+#line 2741 "moonshot-identity-dialog.c"
+               }
+       }
+}
+
+
+static void ___lambda11__gtk_button_clicked (GtkButton* _sender, gpointer self) {
+#line 494 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       __lambda11_ (self, _sender);
+#line 2750 "moonshot-identity-dialog.c"
+}
+
+
+static GtkVBox* identity_dialog_make_services_vbox (IdentityDialog* self) {
+       GtkVBox* result = NULL;
+       Block5Data* _data5_;
+       MoonshotLogger* _tmp0_ = NULL;
+       GtkAlignment* services_vbox_alignment = NULL;
+       GtkAlignment* _tmp1_ = NULL;
+       GtkScrolledWindow* services_vscroll = NULL;
+       GtkScrolledWindow* _tmp2_ = NULL;
+       GtkScrolledWindow* _tmp3_ = NULL;
+       GtkScrolledWindow* _tmp4_ = NULL;
+       GtkScrolledWindow* _tmp5_ = NULL;
+       GtkScrolledWindow* _tmp6_ = NULL;
+       GtkAlignment* _tmp7_ = NULL;
+       GtkButton* _tmp8_ = NULL;
+       GtkButton* _tmp9_ = NULL;
+       IdCard* _tmp10_ = NULL;
+       GeeArrayList* _tmp11_ = NULL;
+       GeeArrayList* _tmp12_ = NULL;
+       gint _tmp13_ = 0;
+       gint _tmp14_ = 0;
+       GtkTable* _tmp15_ = NULL;
+       GtkTable* _tmp16_ = NULL;
+       GtkTable* _tmp17_ = NULL;
+       GtkTable* _tmp18_ = NULL;
+       GtkHBox* table_button_hbox = NULL;
+       GtkHBox* _tmp19_ = NULL;
+       GtkHBox* _tmp20_ = NULL;
+       GtkScrolledWindow* _tmp21_ = NULL;
+       GtkVBox* fixed_height = NULL;
+       GtkVBox* _tmp22_ = NULL;
+       GtkVBox* _tmp23_ = NULL;
+       GtkButton* _tmp24_ = NULL;
+       GtkHBox* _tmp25_ = NULL;
+       GtkVBox* _tmp26_ = NULL;
+       GtkEventBox* table_bg = NULL;
+       GtkEventBox* _tmp27_ = NULL;
+       GtkEventBox* _tmp28_ = NULL;
+       GtkEventBox* _tmp29_ = NULL;
+       GtkTable* _tmp30_ = NULL;
+       GtkAlignment* _tmp31_ = NULL;
+       GtkEventBox* _tmp32_ = NULL;
+       GtkLabel* services_vbox_title = NULL;
+       const gchar* _tmp33_ = NULL;
+       GtkLabel* _tmp34_ = NULL;
+       GtkLabel* _tmp35_ = NULL;
+       GtkVBox* services_vbox = NULL;
+       GtkVBox* _tmp36_ = NULL;
+       GtkVBox* _tmp37_ = NULL;
+       GtkLabel* _tmp38_ = NULL;
+       GtkVBox* _tmp39_ = NULL;
+       GtkHBox* _tmp40_ = NULL;
+       gint i = 0;
+       GtkButton* _tmp67_ = NULL;
+#line 405 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 405 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _data5_ = g_slice_new0 (Block5Data);
+#line 405 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _data5_->_ref_count_ = 1;
+#line 405 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _data5_->self = g_object_ref (self);
+#line 407 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp0_ = identity_dialog_logger;
+#line 407 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       moonshot_logger_trace (_tmp0_, "make_services_vbox", NULL);
+#line 409 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp1_ = (GtkAlignment*) gtk_alignment_new ((gfloat) 0, (gfloat) 0, (gfloat) 1, (gfloat) 0);
+#line 409 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_ref_sink (_tmp1_);
+#line 409 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       services_vbox_alignment = _tmp1_;
+#line 410 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp2_ = (GtkScrolledWindow*) gtk_scrolled_window_new (NULL, NULL);
+#line 410 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_ref_sink (_tmp2_);
+#line 410 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       services_vscroll = _tmp2_;
+#line 411 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp3_ = services_vscroll;
+#line 411 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_scrolled_window_set_policy (_tmp3_, GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
+#line 412 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp4_ = services_vscroll;
+#line 412 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_scrolled_window_set_shadow_type (_tmp4_, GTK_SHADOW_IN);
+#line 413 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp5_ = services_vscroll;
+#line 413 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_widget_set_size_request ((GtkWidget*) _tmp5_, 0, 60);
+#line 414 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp6_ = services_vscroll;
+#line 414 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp7_ = services_vbox_alignment;
+#line 414 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_scrolled_window_add_with_viewport (_tmp6_, (GtkWidget*) _tmp7_);
+#line 417 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp8_ = (GtkButton*) gtk_button_new_from_stock (GTK_STOCK_REMOVE);
+#line 417 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_ref_sink (_tmp8_);
+#line 417 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _data5_->remove_button = _tmp8_;
+#line 421 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp9_ = _data5_->remove_button;
+#line 421 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_widget_set_sensitive ((GtkWidget*) _tmp9_, FALSE);
+#line 424 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp10_ = self->priv->card;
+#line 424 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp11_ = id_card_get_services (_tmp10_);
+#line 424 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp12_ = _tmp11_;
+#line 424 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp13_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp12_);
+#line 424 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp14_ = _tmp13_;
+#line 424 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp15_ = (GtkTable*) gtk_table_new ((guint) _tmp14_, (guint) 1, FALSE);
+#line 424 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_ref_sink (_tmp15_);
+#line 424 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _data5_->services_table = _tmp15_;
+#line 425 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp16_ = _data5_->services_table;
+#line 425 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_table_set_row_spacings (_tmp16_, (guint) 1);
+#line 426 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp17_ = _data5_->services_table;
+#line 426 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_table_set_col_spacings (_tmp17_, (guint) 0);
+#line 427 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp18_ = _data5_->services_table;
+#line 427 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       set_bg_color ((GtkWidget*) _tmp18_);
+#line 429 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp19_ = (GtkHBox*) gtk_hbox_new (FALSE, 6);
+#line 429 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_ref_sink (_tmp19_);
+#line 429 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       table_button_hbox = _tmp19_;
+#line 430 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp20_ = table_button_hbox;
+#line 430 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp21_ = services_vscroll;
+#line 430 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_box_pack_start ((GtkBox*) _tmp20_, (GtkWidget*) _tmp21_, TRUE, TRUE, (guint) 4);
+#line 433 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp22_ = (GtkVBox*) gtk_vbox_new (FALSE, 0);
+#line 433 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_ref_sink (_tmp22_);
+#line 433 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       fixed_height = _tmp22_;
+#line 434 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp23_ = fixed_height;
+#line 434 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp24_ = _data5_->remove_button;
+#line 434 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_box_pack_start ((GtkBox*) _tmp23_, (GtkWidget*) _tmp24_, FALSE, FALSE, (guint) 0);
+#line 435 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp25_ = table_button_hbox;
+#line 435 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp26_ = fixed_height;
+#line 435 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_box_pack_start ((GtkBox*) _tmp25_, (GtkWidget*) _tmp26_, FALSE, FALSE, (guint) 0);
+#line 439 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp27_ = (GtkEventBox*) gtk_event_box_new ();
+#line 439 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_ref_sink (_tmp27_);
+#line 439 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       table_bg = _tmp27_;
+#line 440 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp28_ = table_bg;
+#line 440 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       set_bg_color ((GtkWidget*) _tmp28_);
+#line 441 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp29_ = table_bg;
+#line 441 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp30_ = _data5_->services_table;
+#line 441 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_container_add ((GtkContainer*) _tmp29_, (GtkWidget*) _tmp30_);
+#line 442 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp31_ = services_vbox_alignment;
+#line 442 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp32_ = table_bg;
+#line 442 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_container_add ((GtkContainer*) _tmp31_, (GtkWidget*) _tmp32_);
+#line 444 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp33_ = _ ("Services:");
+#line 444 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp34_ = (GtkLabel*) gtk_label_new (_tmp33_);
+#line 444 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_ref_sink (_tmp34_);
+#line 444 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       services_vbox_title = _tmp34_;
+#line 445 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp35_ = services_vbox_title;
+#line 445 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_misc_set_alignment ((GtkMisc*) _tmp35_, (gfloat) 0, 0.5f);
+#line 447 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp36_ = (GtkVBox*) gtk_vbox_new (FALSE, 6);
+#line 447 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_ref_sink (_tmp36_);
+#line 447 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       services_vbox = _tmp36_;
+#line 448 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp37_ = services_vbox;
+#line 448 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp38_ = services_vbox_title;
+#line 448 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_box_pack_start ((GtkBox*) _tmp37_, (GtkWidget*) _tmp38_, FALSE, FALSE, (guint) 0);
+#line 449 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp39_ = services_vbox;
+#line 449 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp40_ = table_button_hbox;
+#line 449 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_box_pack_start ((GtkBox*) _tmp39_, (GtkWidget*) _tmp40_, TRUE, TRUE, (guint) 0);
+#line 451 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       i = 0;
+#line 2971 "moonshot-identity-dialog.c"
+       {
+               GeeArrayList* _service_list = NULL;
+               GeeArrayList* _tmp41_ = NULL;
+               GeeArrayList* _tmp42_ = NULL;
+               gint _service_size = 0;
+               GeeArrayList* _tmp43_ = NULL;
+               gint _tmp44_ = 0;
+               gint _tmp45_ = 0;
+               gint _service_index = 0;
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp41_ = self->priv->services;
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp42_ = _g_object_ref0 (_tmp41_);
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _service_list = _tmp42_;
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp43_ = _service_list;
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp44_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp43_);
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp45_ = _tmp44_;
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _service_size = _tmp45_;
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _service_index = -1;
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               while (TRUE) {
+#line 2999 "moonshot-identity-dialog.c"
+                       Block6Data* _data6_;
+                       gint _tmp46_ = 0;
+                       gint _tmp47_ = 0;
+                       gint _tmp48_ = 0;
+                       gchar* service = NULL;
+                       GeeArrayList* _tmp49_ = NULL;
+                       gint _tmp50_ = 0;
+                       gpointer _tmp51_ = NULL;
+                       const gchar* _tmp52_ = NULL;
+                       GtkLabel* _tmp53_ = NULL;
+                       GtkLabel* _tmp54_ = NULL;
+                       GtkLabel* _tmp55_ = NULL;
+                       GtkEventBox* event_box = NULL;
+                       GtkEventBox* _tmp56_ = NULL;
+                       GtkEventBox* _tmp57_ = NULL;
+                       GdkColor _tmp58_ = {0};
+                       GtkEventBox* _tmp59_ = NULL;
+                       GtkLabel* _tmp60_ = NULL;
+                       GtkEventBox* _tmp61_ = NULL;
+                       GtkTable* _tmp62_ = NULL;
+                       GtkEventBox* _tmp63_ = NULL;
+                       gint _tmp64_ = 0;
+                       gint _tmp65_ = 0;
+                       gint _tmp66_ = 0;
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _data6_ = g_slice_new0 (Block6Data);
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _data6_->_ref_count_ = 1;
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _data6_->_data5_ = block5_data_ref (_data5_);
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp46_ = _service_index;
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _service_index = _tmp46_ + 1;
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp47_ = _service_index;
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp48_ = _service_size;
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       if (!(_tmp47_ < _tmp48_)) {
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                               block6_data_unref (_data6_);
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                               _data6_ = NULL;
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                               break;
+#line 3046 "moonshot-identity-dialog.c"
+                       }
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp49_ = _service_list;
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp50_ = _service_index;
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp51_ = gee_abstract_list_get ((GeeAbstractList*) _tmp49_, _tmp50_);
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       service = (gchar*) _tmp51_;
+#line 454 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp52_ = service;
+#line 454 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp53_ = (GtkLabel*) gtk_label_new (_tmp52_);
+#line 454 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       g_object_ref_sink (_tmp53_);
+#line 454 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _data6_->label = _tmp53_;
+#line 455 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp54_ = _data6_->label;
+#line 455 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       gtk_misc_set_alignment ((GtkMisc*) _tmp54_, (gfloat) 0, (gfloat) 0);
+#line 456 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp55_ = _data6_->label;
+#line 456 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       g_object_set ((GtkMisc*) _tmp55_, "xpad", 3, NULL);
+#line 458 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp56_ = (GtkEventBox*) gtk_event_box_new ();
+#line 458 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       g_object_ref_sink (_tmp56_);
+#line 458 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       event_box = _tmp56_;
+#line 459 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp57_ = event_box;
+#line 459 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp58_ = identity_dialog_white;
+#line 459 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       gtk_widget_modify_bg ((GtkWidget*) _tmp57_, GTK_STATE_NORMAL, &_tmp58_);
+#line 460 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp59_ = event_box;
+#line 460 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp60_ = _data6_->label;
+#line 460 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       gtk_container_add ((GtkContainer*) _tmp59_, (GtkWidget*) _tmp60_);
+#line 461 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp61_ = event_box;
+#line 461 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       g_signal_connect_data ((GtkWidget*) _tmp61_, "button-press-event", (GCallback) _____lambda10__gtk_widget_button_press_event, block6_data_ref (_data6_), (GClosureNotify) block6_data_unref, 0);
+#line 490 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp62_ = _data5_->services_table;
+#line 490 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp63_ = event_box;
+#line 490 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp64_ = i;
+#line 490 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp65_ = i;
+#line 490 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       gtk_table_attach_defaults (_tmp62_, (GtkWidget*) _tmp63_, (guint) 0, (guint) 1, (guint) _tmp64_, (guint) (_tmp65_ + 1));
+#line 491 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp66_ = i;
+#line 491 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       i = _tmp66_ + 1;
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _g_object_unref0 (event_box);
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _g_free0 (service);
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       block6_data_unref (_data6_);
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _data6_ = NULL;
+#line 3116 "moonshot-identity-dialog.c"
+               }
+#line 452 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_object_unref0 (_service_list);
+#line 3120 "moonshot-identity-dialog.c"
+       }
+#line 494 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp67_ = _data5_->remove_button;
+#line 494 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_signal_connect_data (_tmp67_, "clicked", (GCallback) ___lambda11__gtk_button_clicked, block5_data_ref (_data5_), (GClosureNotify) block5_data_unref, 0);
+#line 517 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       result = services_vbox;
+#line 517 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (services_vbox_title);
+#line 517 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (table_bg);
+#line 517 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (fixed_height);
+#line 517 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (table_button_hbox);
+#line 517 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (services_vscroll);
+#line 517 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (services_vbox_alignment);
+#line 517 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       block5_data_unref (_data5_);
+#line 517 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _data5_ = NULL;
+#line 517 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       return result;
+#line 3146 "moonshot-identity-dialog.c"
+}
+
+
+static gchar* string_replace (const gchar* self, const gchar* old, const gchar* replacement) {
+       gchar* result = NULL;
+       GError * _inner_error_ = NULL;
+#line 1388 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 1388 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (old != NULL, NULL);
+#line 1388 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (replacement != NULL, NULL);
+#line 3159 "moonshot-identity-dialog.c"
+       {
+               GRegex* regex = NULL;
+               const gchar* _tmp0_ = NULL;
+               gchar* _tmp1_ = NULL;
+               gchar* _tmp2_ = NULL;
+               GRegex* _tmp3_ = NULL;
+               GRegex* _tmp4_ = NULL;
+               gchar* _tmp5_ = NULL;
+               GRegex* _tmp6_ = NULL;
+               const gchar* _tmp7_ = NULL;
+               gchar* _tmp8_ = NULL;
+               gchar* _tmp9_ = NULL;
+#line 1390 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp0_ = old;
+#line 1390 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp1_ = g_regex_escape_string (_tmp0_, -1);
+#line 1390 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp2_ = _tmp1_;
+#line 1390 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp3_ = g_regex_new (_tmp2_, 0, 0, &_inner_error_);
+#line 1390 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp4_ = _tmp3_;
+#line 1390 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _g_free0 (_tmp2_);
+#line 1390 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               regex = _tmp4_;
+#line 1390 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 1390 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       if (_inner_error_->domain == G_REGEX_ERROR) {
+#line 3190 "moonshot-identity-dialog.c"
+                               goto __catch10_g_regex_error;
+                       }
+#line 1390 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
+#line 1390 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       g_clear_error (&_inner_error_);
+#line 1390 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       return NULL;
+#line 3199 "moonshot-identity-dialog.c"
+               }
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp6_ = regex;
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp7_ = replacement;
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp8_ = g_regex_replace_literal (_tmp6_, self, (gssize) -1, 0, _tmp7_, 0, &_inner_error_);
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp5_ = _tmp8_;
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       _g_regex_unref0 (regex);
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       if (_inner_error_->domain == G_REGEX_ERROR) {
+#line 3215 "moonshot-identity-dialog.c"
+                               goto __catch10_g_regex_error;
+                       }
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       _g_regex_unref0 (regex);
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       g_clear_error (&_inner_error_);
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       return NULL;
+#line 3226 "moonshot-identity-dialog.c"
+               }
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp9_ = _tmp5_;
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp5_ = NULL;
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               result = _tmp9_;
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _g_free0 (_tmp5_);
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _g_regex_unref0 (regex);
+#line 1391 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               return result;
+#line 3240 "moonshot-identity-dialog.c"
+       }
+       goto __finally10;
+       __catch10_g_regex_error:
+       {
+               GError* e = NULL;
+#line 1389 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               e = _inner_error_;
+#line 1389 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _inner_error_ = NULL;
+#line 1393 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               g_assert_not_reached ();
+#line 1389 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _g_error_free0 (e);
+#line 3254 "moonshot-identity-dialog.c"
+       }
+       __finally10:
+#line 1389 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 1389 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               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 1389 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               g_clear_error (&_inner_error_);
+#line 1389 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               return NULL;
+#line 3265 "moonshot-identity-dialog.c"
+       }
+}
+
+
+static gchar* string_slice (const gchar* self, glong start, glong end) {
+       gchar* result = NULL;
+       glong string_length = 0L;
+       gint _tmp0_ = 0;
+       gint _tmp1_ = 0;
+       glong _tmp2_ = 0L;
+       glong _tmp5_ = 0L;
+       gboolean _tmp8_ = FALSE;
+       glong _tmp9_ = 0L;
+       gboolean _tmp12_ = FALSE;
+       glong _tmp13_ = 0L;
+       glong _tmp16_ = 0L;
+       glong _tmp17_ = 0L;
+       glong _tmp18_ = 0L;
+       glong _tmp19_ = 0L;
+       glong _tmp20_ = 0L;
+       gchar* _tmp21_ = NULL;
+#line 1336 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 1337 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp0_ = strlen (self);
+#line 1337 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp1_ = _tmp0_;
+#line 1337 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       string_length = (glong) _tmp1_;
+#line 1338 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp2_ = start;
+#line 1338 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       if (_tmp2_ < ((glong) 0)) {
+#line 3299 "moonshot-identity-dialog.c"
+               glong _tmp3_ = 0L;
+               glong _tmp4_ = 0L;
+#line 1339 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp3_ = string_length;
+#line 1339 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp4_ = start;
+#line 1339 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               start = _tmp3_ + _tmp4_;
+#line 3308 "moonshot-identity-dialog.c"
+       }
+#line 1341 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp5_ = end;
+#line 1341 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       if (_tmp5_ < ((glong) 0)) {
+#line 3314 "moonshot-identity-dialog.c"
+               glong _tmp6_ = 0L;
+               glong _tmp7_ = 0L;
+#line 1342 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp6_ = string_length;
+#line 1342 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp7_ = end;
+#line 1342 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               end = _tmp6_ + _tmp7_;
+#line 3323 "moonshot-identity-dialog.c"
+       }
+#line 1344 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp9_ = start;
+#line 1344 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       if (_tmp9_ >= ((glong) 0)) {
+#line 3329 "moonshot-identity-dialog.c"
+               glong _tmp10_ = 0L;
+               glong _tmp11_ = 0L;
+#line 1344 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp10_ = start;
+#line 1344 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp11_ = string_length;
+#line 1344 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp8_ = _tmp10_ <= _tmp11_;
+#line 3338 "moonshot-identity-dialog.c"
+       } else {
+#line 1344 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp8_ = FALSE;
+#line 3342 "moonshot-identity-dialog.c"
+       }
+#line 1344 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (_tmp8_, NULL);
+#line 1345 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp13_ = end;
+#line 1345 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       if (_tmp13_ >= ((glong) 0)) {
+#line 3350 "moonshot-identity-dialog.c"
+               glong _tmp14_ = 0L;
+               glong _tmp15_ = 0L;
+#line 1345 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp14_ = end;
+#line 1345 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp15_ = string_length;
+#line 1345 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp12_ = _tmp14_ <= _tmp15_;
+#line 3359 "moonshot-identity-dialog.c"
+       } else {
+#line 1345 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp12_ = FALSE;
+#line 3363 "moonshot-identity-dialog.c"
+       }
+#line 1345 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (_tmp12_, NULL);
+#line 1346 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp16_ = start;
+#line 1346 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp17_ = end;
+#line 1346 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (_tmp16_ <= _tmp17_, NULL);
+#line 1347 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp18_ = start;
+#line 1347 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp19_ = end;
+#line 1347 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp20_ = start;
+#line 1347 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp21_ = g_strndup (((gchar*) self) + _tmp18_, (gsize) (_tmp19_ - _tmp20_));
+#line 1347 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       result = _tmp21_;
+#line 1347 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       return result;
+#line 3385 "moonshot-identity-dialog.c"
+}
+
+
+static guint8* string_get_data (const gchar* self, int* result_length1) {
+       guint8* result;
+       guint8* res = NULL;
+       gint res_length1 = 0;
+       gint _res_size_ = 0;
+       gint _tmp0_ = 0;
+       gint _tmp1_ = 0;
+       gint _tmp2_ = 0;
+       guint8* _tmp3_ = NULL;
+       gint _tmp3__length1 = 0;
+       guint8* _tmp4_ = NULL;
+       gint _tmp4__length1 = 0;
+#line 1406 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 1407 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       res = (guint8*) self;
+#line 1407 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       res_length1 = -1;
+#line 1407 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _res_size_ = res_length1;
+#line 1408 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp0_ = strlen (self);
+#line 1408 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp1_ = _tmp0_;
+#line 1408 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       res_length1 = (gint) _tmp1_;
+#line 1408 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp2_ = res_length1;
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp3_ = res;
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp3__length1 = res_length1;
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp4_ = _tmp3_;
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp4__length1 = _tmp3__length1;
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       if (result_length1) {
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               *result_length1 = _tmp4__length1;
+#line 3429 "moonshot-identity-dialog.c"
+       }
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       result = _tmp4_;
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       return result;
+#line 3435 "moonshot-identity-dialog.c"
+}
+
+
+static void identity_dialog_export_certificate (IdentityDialog* self, IdCard* id) {
+       GtkFileChooserDialog* dialog = NULL;
+       const gchar* _tmp0_ = NULL;
+       const gchar* _tmp1_ = NULL;
+       GtkFileChooserDialog* _tmp2_ = NULL;
+       GtkFileChooserDialog* _tmp3_ = NULL;
+       const gchar* _tmp4_ = NULL;
+       gchar* default_filename = NULL;
+       IdCard* _tmp7_ = NULL;
+       const gchar* _tmp8_ = NULL;
+       const gchar* _tmp9_ = NULL;
+       gchar* _tmp10_ = NULL;
+       gchar* _tmp11_ = NULL;
+       gchar* _tmp12_ = NULL;
+       gchar* _tmp13_ = NULL;
+       GtkFileChooserDialog* _tmp14_ = NULL;
+       const gchar* _tmp15_ = NULL;
+       GtkFileChooserDialog* _tmp16_ = NULL;
+       gint _tmp17_ = 0;
+       GtkFileChooserDialog* _tmp62_ = NULL;
+       GError * _inner_error_ = NULL;
+#line 520 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_if_fail (self != NULL);
+#line 520 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_if_fail (id != NULL);
+#line 522 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp0_ = _ ("Cancel");
+#line 522 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp1_ = _ ("Save");
+#line 522 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp2_ = (GtkFileChooserDialog*) gtk_file_chooser_dialog_new ("Save File", (GtkWindow*) self, GTK_FILE_CHOOSER_ACTION_SAVE, _tmp0_, GTK_RESPONSE_CANCEL, _tmp1_, GTK_RESPONSE_ACCEPT, NULL, NULL);
+#line 522 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_ref_sink (_tmp2_);
+#line 522 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       dialog = _tmp2_;
+#line 528 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp3_ = dialog;
+#line 528 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_file_chooser_set_do_overwrite_confirmation ((GtkFileChooser*) _tmp3_, TRUE);
+#line 529 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp4_ = export_directory;
+#line 529 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       if (_tmp4_ != NULL) {
+#line 3482 "moonshot-identity-dialog.c"
+               GtkFileChooserDialog* _tmp5_ = NULL;
+               const gchar* _tmp6_ = NULL;
+#line 530 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp5_ = dialog;
+#line 530 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp6_ = export_directory;
+#line 530 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               gtk_file_chooser_set_current_folder ((GtkFileChooser*) _tmp5_, _tmp6_);
+#line 3491 "moonshot-identity-dialog.c"
+       }
+#line 533 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp7_ = id;
+#line 533 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp8_ = id_card_get_display_name (_tmp7_);
+#line 533 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp9_ = _tmp8_;
+#line 533 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp10_ = g_strconcat (_tmp9_, ".pem", NULL);
+#line 533 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp11_ = _tmp10_;
+#line 533 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp12_ = string_replace (_tmp11_, G_DIR_SEPARATOR_S, "_");
+#line 533 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp13_ = _tmp12_;
+#line 533 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_free0 (_tmp11_);
+#line 533 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       default_filename = _tmp13_;
+#line 535 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp14_ = dialog;
+#line 535 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp15_ = default_filename;
+#line 535 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_file_chooser_set_current_name ((GtkFileChooser*) _tmp14_, _tmp15_);
+#line 536 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp16_ = dialog;
+#line 536 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp17_ = gtk_dialog_run ((GtkDialog*) _tmp16_);
+#line 536 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       if (_tmp17_ == ((gint) GTK_RESPONSE_ACCEPT)) {
+#line 540 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               static const char CERT_HEADER[] = "-----BEGIN CERTIFICATE-----\n";
+#line 541 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               static const char CERT_FOOTER[] = "\n-----END CERTIFICATE-----\n";
+#line 3527 "moonshot-identity-dialog.c"
+               gchar* cert = NULL;
+               IdCard* _tmp18_ = NULL;
+               TrustAnchor* _tmp19_ = NULL;
+               TrustAnchor* _tmp20_ = NULL;
+               const gchar* _tmp21_ = NULL;
+               const gchar* _tmp22_ = NULL;
+               gchar* _tmp23_ = NULL;
+               gchar* newcert = NULL;
+               gchar* _tmp24_ = NULL;
+               const gchar* _tmp40_ = NULL;
+               gint _tmp41_ = 0;
+               gint _tmp42_ = 0;
+               const gchar* _tmp46_ = NULL;
+               gchar* _tmp47_ = NULL;
+               gchar* filename = NULL;
+               GtkFileChooserDialog* _tmp48_ = NULL;
+               gchar* _tmp49_ = NULL;
+               GFile* file = NULL;
+               const gchar* _tmp50_ = NULL;
+               GFile* _tmp51_ = NULL;
+               GFileOutputStream* stream = NULL;
+               GFile* _tmp52_ = NULL;
+               GFileOutputStream* _tmp53_ = NULL;
+               GFileOutputStream* _tmp54_ = NULL;
+               const gchar* _tmp55_ = NULL;
+               guint8* _tmp56_ = NULL;
+               gint _tmp56__length1 = 0;
+               guint8* _tmp57_ = NULL;
+               gint _tmp57__length1 = 0;
+               GFile* _tmp58_ = NULL;
+               GFile* _tmp59_ = NULL;
+               GFile* _tmp60_ = NULL;
+               gchar* _tmp61_ = NULL;
+#line 544 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp18_ = id;
+#line 544 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp19_ = id_card_get_trust_anchor (_tmp18_);
+#line 544 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp20_ = _tmp19_;
+#line 544 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp21_ = trust_anchor_get_ca_cert (_tmp20_);
+#line 544 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp22_ = _tmp21_;
+#line 544 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp23_ = string_replace (_tmp22_, "\n", "");
+#line 544 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               cert = _tmp23_;
+#line 547 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp24_ = g_strdup (CERT_HEADER);
+#line 547 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               newcert = _tmp24_;
+#line 548 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               while (TRUE) {
+#line 3581 "moonshot-identity-dialog.c"
+                       const gchar* _tmp25_ = NULL;
+                       gint _tmp26_ = 0;
+                       gint _tmp27_ = 0;
+                       const gchar* _tmp28_ = NULL;
+                       const gchar* _tmp29_ = NULL;
+                       gchar* _tmp30_ = NULL;
+                       gchar* _tmp31_ = NULL;
+                       gchar* _tmp32_ = NULL;
+                       const gchar* _tmp33_ = NULL;
+                       gchar* _tmp34_ = NULL;
+                       const gchar* _tmp35_ = NULL;
+                       const gchar* _tmp36_ = NULL;
+                       gint _tmp37_ = 0;
+                       gint _tmp38_ = 0;
+                       gchar* _tmp39_ = NULL;
+#line 548 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp25_ = cert;
+#line 548 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp26_ = strlen (_tmp25_);
+#line 548 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp27_ = _tmp26_;
+#line 548 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       if (!(_tmp27_ > 63)) {
+#line 548 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                               break;
+#line 3607 "moonshot-identity-dialog.c"
+                       }
+#line 549 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp28_ = newcert;
+#line 549 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp29_ = cert;
+#line 549 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp30_ = string_slice (_tmp29_, (glong) 0, (glong) 64);
+#line 549 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp31_ = _tmp30_;
+#line 549 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp32_ = g_strconcat (_tmp28_, _tmp31_, NULL);
+#line 549 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _g_free0 (newcert);
+#line 549 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       newcert = _tmp32_;
+#line 549 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _g_free0 (_tmp31_);
+#line 550 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp33_ = newcert;
+#line 550 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp34_ = g_strconcat (_tmp33_, "\n", NULL);
+#line 550 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _g_free0 (newcert);
+#line 550 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       newcert = _tmp34_;
+#line 551 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp35_ = cert;
+#line 551 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp36_ = cert;
+#line 551 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp37_ = strlen (_tmp36_);
+#line 551 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp38_ = _tmp37_;
+#line 551 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp39_ = string_slice (_tmp35_, (glong) 64, (glong) _tmp38_);
+#line 551 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _g_free0 (cert);
+#line 551 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       cert = _tmp39_;
+#line 3647 "moonshot-identity-dialog.c"
+               }
+#line 553 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp40_ = cert;
+#line 553 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp41_ = strlen (_tmp40_);
+#line 553 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp42_ = _tmp41_;
+#line 553 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               if (_tmp42_ > 0) {
+#line 3657 "moonshot-identity-dialog.c"
+                       const gchar* _tmp43_ = NULL;
+                       const gchar* _tmp44_ = NULL;
+                       gchar* _tmp45_ = NULL;
+#line 554 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp43_ = newcert;
+#line 554 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp44_ = cert;
+#line 554 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _tmp45_ = g_strconcat (_tmp43_, _tmp44_, NULL);
+#line 554 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _g_free0 (newcert);
+#line 554 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       newcert = _tmp45_;
+#line 3671 "moonshot-identity-dialog.c"
+               }
+#line 556 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp46_ = newcert;
+#line 556 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp47_ = g_strconcat (_tmp46_, CERT_FOOTER, NULL);
+#line 556 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_free0 (newcert);
+#line 556 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               newcert = _tmp47_;
+#line 558 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp48_ = dialog;
+#line 558 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp49_ = gtk_file_chooser_get_filename ((GtkFileChooser*) _tmp48_);
+#line 558 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               filename = _tmp49_;
+#line 559 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp50_ = filename;
+#line 559 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp51_ = g_file_new_for_path (_tmp50_);
+#line 559 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               file = _tmp51_;
+#line 560 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp52_ = file;
+#line 560 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp53_ = g_file_replace (_tmp52_, NULL, FALSE, G_FILE_CREATE_PRIVATE, NULL, &_inner_error_);
+#line 560 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               stream = _tmp53_;
+#line 560 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 560 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _g_object_unref0 (file);
+#line 560 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _g_free0 (filename);
+#line 560 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _g_free0 (newcert);
+#line 560 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _g_free0 (cert);
+#line 560 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _g_free0 (default_filename);
+#line 560 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _g_object_unref0 (dialog);
+#line 560 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.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 560 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       g_clear_error (&_inner_error_);
+#line 560 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       return;
+#line 3719 "moonshot-identity-dialog.c"
+               }
+#line 561 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp54_ = stream;
+#line 561 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp55_ = newcert;
+#line 561 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp56_ = string_get_data (_tmp55_, &_tmp56__length1);
+#line 561 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp57_ = _tmp56_;
+#line 561 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp57__length1 = _tmp56__length1;
+#line 561 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               g_output_stream_write ((GOutputStream*) _tmp54_, _tmp57_, (gsize) _tmp57__length1, NULL, &_inner_error_);
+#line 561 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 561 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _g_object_unref0 (stream);
+#line 561 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _g_object_unref0 (file);
+#line 561 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _g_free0 (filename);
+#line 561 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _g_free0 (newcert);
+#line 561 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _g_free0 (cert);
+#line 561 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _g_free0 (default_filename);
+#line 561 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       _g_object_unref0 (dialog);
+#line 561 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.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 561 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       g_clear_error (&_inner_error_);
+#line 561 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+                       return;
+#line 3755 "moonshot-identity-dialog.c"
+               }
+#line 564 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp58_ = file;
+#line 564 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp59_ = g_file_get_parent (_tmp58_);
+#line 564 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp60_ = _tmp59_;
+#line 564 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _tmp61_ = g_file_get_path (_tmp60_);
+#line 564 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_free0 (export_directory);
+#line 564 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               export_directory = _tmp61_;
+#line 564 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_object_unref0 (_tmp60_);
+#line 536 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_object_unref0 (stream);
+#line 536 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_object_unref0 (file);
+#line 536 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_free0 (filename);
+#line 536 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_free0 (newcert);
+#line 536 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               _g_free0 (cert);
+#line 3781 "moonshot-identity-dialog.c"
+       }
+#line 566 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp62_ = dialog;
+#line 566 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       gtk_object_destroy ((GtkObject*) _tmp62_);
+#line 520 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_free0 (default_filename);
+#line 520 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (dialog);
+#line 3791 "moonshot-identity-dialog.c"
+}
+
+
+const gchar* identity_dialog_get_display_name (IdentityDialog* self) {
+       const gchar* result;
+       GtkEntry* _tmp0_ = NULL;
+       const gchar* _tmp1_ = NULL;
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp0_ = self->priv->displayname_entry;
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp1_ = gtk_entry_get_text (_tmp0_);
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       result = _tmp1_;
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       return result;
+#line 3809 "moonshot-identity-dialog.c"
+}
+
+
+const gchar* identity_dialog_get_issuer (IdentityDialog* self) {
+       const gchar* result;
+       GtkEntry* _tmp0_ = NULL;
+       const gchar* _tmp1_ = NULL;
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp0_ = self->priv->realm_entry;
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp1_ = gtk_entry_get_text (_tmp0_);
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       result = _tmp1_;
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       return result;
+#line 3827 "moonshot-identity-dialog.c"
+}
+
+
+const gchar* identity_dialog_get_username (IdentityDialog* self) {
+       const gchar* result;
+       GtkEntry* _tmp0_ = NULL;
+       const gchar* _tmp1_ = NULL;
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp0_ = self->priv->username_entry;
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp1_ = gtk_entry_get_text (_tmp0_);
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       result = _tmp1_;
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       return result;
+#line 3845 "moonshot-identity-dialog.c"
+}
+
+
+const gchar* identity_dialog_get_password (IdentityDialog* self) {
+       const gchar* result;
+       GtkEntry* _tmp0_ = NULL;
+       const gchar* _tmp1_ = NULL;
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp0_ = self->priv->password_entry;
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp1_ = gtk_entry_get_text (_tmp0_);
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       result = _tmp1_;
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       return result;
+#line 3863 "moonshot-identity-dialog.c"
+}
+
+
+gboolean identity_dialog_get_store_password (IdentityDialog* self) {
+       gboolean result;
+       GtkCheckButton* _tmp0_ = NULL;
+       gboolean _tmp1_ = FALSE;
+       gboolean _tmp2_ = FALSE;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_return_val_if_fail (self != NULL, FALSE);
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp0_ = self->priv->remember_checkbutton;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp1_ = gtk_toggle_button_get_active ((GtkToggleButton*) _tmp0_);
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp2_ = _tmp1_;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       result = _tmp2_;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       return result;
+#line 3884 "moonshot-identity-dialog.c"
+}
+
+
+static void identity_dialog_class_init (IdentityDialogClass * klass) {
+       GdkColor _tmp0_ = {0};
+       GdkColor _tmp1_ = {0};
+       MoonshotLogger* _tmp2_ = NULL;
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       identity_dialog_parent_class = g_type_class_peek_parent (klass);
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_type_class_add_private (klass, sizeof (IdentityDialogPrivate));
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       G_OBJECT_CLASS (klass)->get_property = _vala_identity_dialog_get_property;
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       G_OBJECT_CLASS (klass)->finalize = identity_dialog_finalize;
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_class_install_property (G_OBJECT_CLASS (klass), IDENTITY_DIALOG_DISPLAY_NAME, g_param_spec_string ("display-name", "display-name", "display-name", NULL, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_class_install_property (G_OBJECT_CLASS (klass), IDENTITY_DIALOG_ISSUER, g_param_spec_string ("issuer", "issuer", "issuer", NULL, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_class_install_property (G_OBJECT_CLASS (klass), IDENTITY_DIALOG_USERNAME, g_param_spec_string ("username", "username", "username", NULL, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_class_install_property (G_OBJECT_CLASS (klass), IDENTITY_DIALOG_PASSWORD, g_param_spec_string ("password", "password", "password", NULL, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       g_object_class_install_property (G_OBJECT_CLASS (klass), IDENTITY_DIALOG_STORE_PASSWORD, g_param_spec_boolean ("store-password", "store-password", "store-password", FALSE, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
+#line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       make_color ((guint16) 65535, (guint16) 65535, (guint16) 65535, &_tmp0_);
+#line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       identity_dialog_white = _tmp0_;
+#line 51 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       make_color ((guint16) (0xd9 << 8), (guint16) (0xf7 << 8), (guint16) 65535, &_tmp1_);
+#line 51 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       identity_dialog_selected_color = _tmp1_;
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _tmp2_ = get_logger ("IdentityDialog");
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       identity_dialog_logger = _tmp2_;
+#line 3922 "moonshot-identity-dialog.c"
+}
+
+
+static void identity_dialog_instance_init (IdentityDialog * self) {
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       self->priv = IDENTITY_DIALOG_GET_PRIVATE (self);
+#line 74 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       self->priv->selected_item = NULL;
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       self->clear_trust_anchor = FALSE;
+#line 3933 "moonshot-identity-dialog.c"
+}
+
+
+static void identity_dialog_finalize (GObject* obj) {
+       IdentityDialog * self;
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_IDENTITY_DIALOG, IdentityDialog);
+#line 60 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (self->priv->displayname_entry);
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (self->priv->displayname_label);
+#line 62 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (self->priv->realm_entry);
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (self->priv->realm_label);
+#line 64 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (self->priv->username_entry);
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (self->priv->username_label);
+#line 66 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (self->priv->password_entry);
+#line 67 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (self->priv->password_label);
+#line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (self->priv->remember_checkbutton);
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (self->priv->message_label);
+#line 71 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (self->priv->card);
+#line 72 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (self->priv->services);
+#line 74 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       _g_object_unref0 (self->priv->selected_item);
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       G_OBJECT_CLASS (identity_dialog_parent_class)->finalize (obj);
+#line 3969 "moonshot-identity-dialog.c"
+}
+
+
+GType identity_dialog_get_type (void) {
+       static volatile gsize identity_dialog_type_id__volatile = 0;
+       if (g_once_init_enter (&identity_dialog_type_id__volatile)) {
+               static const GTypeInfo g_define_type_info = { sizeof (IdentityDialogClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) identity_dialog_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (IdentityDialog), 0, (GInstanceInitFunc) identity_dialog_instance_init, NULL };
+               GType identity_dialog_type_id;
+               identity_dialog_type_id = g_type_register_static (GTK_TYPE_DIALOG, "IdentityDialog", &g_define_type_info, 0);
+               g_once_init_leave (&identity_dialog_type_id__volatile, identity_dialog_type_id);
+       }
+       return identity_dialog_type_id__volatile;
+}
+
+
+static void _vala_identity_dialog_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) {
+       IdentityDialog * self;
+       self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_IDENTITY_DIALOG, IdentityDialog);
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+       switch (property_id) {
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               case IDENTITY_DIALOG_DISPLAY_NAME:
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               g_value_set_string (value, identity_dialog_get_display_name (self));
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               break;
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               case IDENTITY_DIALOG_ISSUER:
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               g_value_set_string (value, identity_dialog_get_issuer (self));
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               break;
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               case IDENTITY_DIALOG_USERNAME:
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               g_value_set_string (value, identity_dialog_get_username (self));
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               break;
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               case IDENTITY_DIALOG_PASSWORD:
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               g_value_set_string (value, identity_dialog_get_password (self));
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               break;
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               case IDENTITY_DIALOG_STORE_PASSWORD:
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               g_value_set_boolean (value, identity_dialog_get_store_password (self));
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               break;
+#line 4020 "moonshot-identity-dialog.c"
+               default:
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-dialog.vala"
+               break;
+#line 4026 "moonshot-identity-dialog.c"
+       }
+}
+
+
+
diff --git a/src/moonshot-identity-management-view.c b/src/moonshot-identity-management-view.c
new file mode 100644 (file)
index 0000000..efe242b
--- /dev/null
@@ -0,0 +1,5756 @@
+/* moonshot-identity-management-view.c generated by valac 0.34.9, the Vala compiler
+ * generated from moonshot-identity-management-view.vala, do not modify */
+
+/*
+ * Copyright (c) 2011-2016, JANET(UK)
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * 3. Neither the name of JANET(UK) nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+*/
+
+#include <glib.h>
+#include <glib-object.h>
+#include <gtk/gtk.h>
+#include <stdlib.h>
+#include <string.h>
+#include <gdk/gdk.h>
+#include <glib/gi18n-lib.h>
+#include <gee.h>
+#include <gdk-pixbuf/gdk-pixbuf.h>
+#include <float.h>
+#include <math.h>
+#include "config.h"
+#include <stdio.h>
+#include <atk/atk.h>
+#include <gio/gio.h>
+
+
+#define TYPE_IDENTITY_MANAGER_VIEW (identity_manager_view_get_type ())
+#define IDENTITY_MANAGER_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerView))
+#define IDENTITY_MANAGER_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerViewClass))
+#define IS_IDENTITY_MANAGER_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_MANAGER_VIEW))
+#define IS_IDENTITY_MANAGER_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_MANAGER_VIEW))
+#define IDENTITY_MANAGER_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerViewClass))
+
+typedef struct _IdentityManagerView IdentityManagerView;
+typedef struct _IdentityManagerViewClass IdentityManagerViewClass;
+typedef struct _IdentityManagerViewPrivate IdentityManagerViewPrivate;
+
+#define TYPE_IDENTITY_MANAGER_APP (identity_manager_app_get_type ())
+#define IDENTITY_MANAGER_APP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_MANAGER_APP, IdentityManagerApp))
+#define IDENTITY_MANAGER_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_MANAGER_APP, IdentityManagerAppClass))
+#define IS_IDENTITY_MANAGER_APP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_MANAGER_APP))
+#define IS_IDENTITY_MANAGER_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_MANAGER_APP))
+#define IDENTITY_MANAGER_APP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_MANAGER_APP, IdentityManagerAppClass))
+
+typedef struct _IdentityManagerApp IdentityManagerApp;
+typedef struct _IdentityManagerAppClass IdentityManagerAppClass;
+
+#define TYPE_IDENTITY_MANAGER_MODEL (identity_manager_model_get_type ())
+#define IDENTITY_MANAGER_MODEL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_MANAGER_MODEL, IdentityManagerModel))
+#define IDENTITY_MANAGER_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_MANAGER_MODEL, IdentityManagerModelClass))
+#define IS_IDENTITY_MANAGER_MODEL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_MANAGER_MODEL))
+#define IS_IDENTITY_MANAGER_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_MANAGER_MODEL))
+#define IDENTITY_MANAGER_MODEL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_MANAGER_MODEL, IdentityManagerModelClass))
+
+typedef struct _IdentityManagerModel IdentityManagerModel;
+typedef struct _IdentityManagerModelClass IdentityManagerModelClass;
+
+#define TYPE_CUSTOM_VBOX (custom_vbox_get_type ())
+#define CUSTOM_VBOX(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CUSTOM_VBOX, CustomVBox))
+#define CUSTOM_VBOX_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CUSTOM_VBOX, CustomVBoxClass))
+#define IS_CUSTOM_VBOX(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CUSTOM_VBOX))
+#define IS_CUSTOM_VBOX_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CUSTOM_VBOX))
+#define CUSTOM_VBOX_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CUSTOM_VBOX, CustomVBoxClass))
+
+typedef struct _CustomVBox CustomVBox;
+typedef struct _CustomVBoxClass CustomVBoxClass;
+
+#define TYPE_ID_CARD (id_card_get_type ())
+#define ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ID_CARD, IdCard))
+#define ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ID_CARD, IdCardClass))
+#define IS_ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ID_CARD))
+#define IS_ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ID_CARD))
+#define ID_CARD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ID_CARD, IdCardClass))
+
+typedef struct _IdCard IdCard;
+typedef struct _IdCardClass IdCardClass;
+
+#define TYPE_IDENTITY_REQUEST (identity_request_get_type ())
+#define IDENTITY_REQUEST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_REQUEST, IdentityRequest))
+#define IDENTITY_REQUEST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_REQUEST, IdentityRequestClass))
+#define IS_IDENTITY_REQUEST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_REQUEST))
+#define IS_IDENTITY_REQUEST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_REQUEST))
+#define IDENTITY_REQUEST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_REQUEST, IdentityRequestClass))
+
+typedef struct _IdentityRequest IdentityRequest;
+typedef struct _IdentityRequestClass IdentityRequestClass;
+
+#define IDENTITY_MANAGER_VIEW_TYPE_COLUMNS (identity_manager_view_columns_get_type ())
+
+#define TYPE_MOONSHOT_LOGGER (moonshot_logger_get_type ())
+#define MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLogger))
+#define MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+#define IS_MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MOONSHOT_LOGGER))
+#define IS_MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MOONSHOT_LOGGER))
+#define MOONSHOT_LOGGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+
+typedef struct _MoonshotLogger MoonshotLogger;
+typedef struct _MoonshotLoggerClass MoonshotLoggerClass;
+#define _identity_manager_app_unref0(var) ((var == NULL) ? NULL : (var = (identity_manager_app_unref (var), NULL)))
+#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
+#define __g_queue_free__g_object_unref0_0(var) ((var == NULL) ? NULL : (var = (_g_queue_free__g_object_unref0_ (var), NULL)))
+#define _g_free0(var) (var = (g_free (var), NULL))
+typedef struct _IdentityManagerAppPrivate IdentityManagerAppPrivate;
+
+#define TYPE_ID_CARD_WIDGET (id_card_widget_get_type ())
+#define ID_CARD_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ID_CARD_WIDGET, IdCardWidget))
+#define ID_CARD_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ID_CARD_WIDGET, IdCardWidgetClass))
+#define IS_ID_CARD_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ID_CARD_WIDGET))
+#define IS_ID_CARD_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ID_CARD_WIDGET))
+#define ID_CARD_WIDGET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ID_CARD_WIDGET, IdCardWidgetClass))
+
+typedef struct _IdCardWidget IdCardWidget;
+typedef struct _IdCardWidgetClass IdCardWidgetClass;
+
+#define TYPE_IDENTITY_DIALOG (identity_dialog_get_type ())
+#define IDENTITY_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_DIALOG, IdentityDialog))
+#define IDENTITY_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_DIALOG, IdentityDialogClass))
+#define IS_IDENTITY_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_DIALOG))
+#define IS_IDENTITY_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_DIALOG))
+#define IDENTITY_DIALOG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_DIALOG, IdentityDialogClass))
+
+typedef struct _IdentityDialog IdentityDialog;
+typedef struct _IdentityDialogClass IdentityDialogClass;
+typedef struct _IdentityDialogPrivate IdentityDialogPrivate;
+
+#define ID_CARD_TYPE_DIFF_FLAGS (id_card_diff_flags_get_type ())
+#define _g_list_free0(var) ((var == NULL) ? NULL : (var = (g_list_free (var), NULL)))
+typedef struct _IdentityRequestPrivate IdentityRequestPrivate;
+
+#define TYPE_ADD_PASSWORD_DIALOG (add_password_dialog_get_type ())
+#define ADD_PASSWORD_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ADD_PASSWORD_DIALOG, AddPasswordDialog))
+#define ADD_PASSWORD_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ADD_PASSWORD_DIALOG, AddPasswordDialogClass))
+#define IS_ADD_PASSWORD_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ADD_PASSWORD_DIALOG))
+#define IS_ADD_PASSWORD_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ADD_PASSWORD_DIALOG))
+#define ADD_PASSWORD_DIALOG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ADD_PASSWORD_DIALOG, AddPasswordDialogClass))
+
+typedef struct _AddPasswordDialog AddPasswordDialog;
+typedef struct _AddPasswordDialogClass AddPasswordDialogClass;
+typedef struct _Block3Data Block3Data;
+#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))
+
+#define WEB_PROVISIONING_TYPE_PARSER (web_provisioning_parser_get_type ())
+#define WEB_PROVISIONING_PARSER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), WEB_PROVISIONING_TYPE_PARSER, WebProvisioningParser))
+#define WEB_PROVISIONING_PARSER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), WEB_PROVISIONING_TYPE_PARSER, WebProvisioningParserClass))
+#define WEB_PROVISIONING_IS_PARSER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), WEB_PROVISIONING_TYPE_PARSER))
+#define WEB_PROVISIONING_IS_PARSER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), WEB_PROVISIONING_TYPE_PARSER))
+#define WEB_PROVISIONING_PARSER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), WEB_PROVISIONING_TYPE_PARSER, WebProvisioningParserClass))
+
+typedef struct _WebProvisioningParser WebProvisioningParser;
+typedef struct _WebProvisioningParserClass WebProvisioningParserClass;
+
+#define TYPE_TRUST_ANCHOR (trust_anchor_get_type ())
+#define TRUST_ANCHOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TRUST_ANCHOR, TrustAnchor))
+#define TRUST_ANCHOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TRUST_ANCHOR, TrustAnchorClass))
+#define IS_TRUST_ANCHOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TRUST_ANCHOR))
+#define IS_TRUST_ANCHOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TRUST_ANCHOR))
+#define TRUST_ANCHOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TRUST_ANCHOR, TrustAnchorClass))
+
+typedef struct _TrustAnchor TrustAnchor;
+typedef struct _TrustAnchorClass TrustAnchorClass;
+
+struct _IdentityManagerView {
+       GtkWindow parent_instance;
+       IdentityManagerViewPrivate * priv;
+       IdentityManagerApp* parent_app;
+       IdentityManagerModel* identities_manager;
+       GtkCheckButton* remember_identity_binding;
+};
+
+struct _IdentityManagerViewClass {
+       GtkWindowClass parent_class;
+};
+
+struct _IdentityManagerViewPrivate {
+       gboolean use_flat_file_store;
+       GtkUIManager* ui_manager;
+       GtkEntry* search_entry;
+       CustomVBox* custom_vbox;
+       GtkVBox* service_prompt_vbox;
+       GtkButton* edit_button;
+       GtkButton* remove_button;
+       GtkButton* send_button;
+       GtkListStore* listmodel;
+       GtkTreeModelFilter* filter;
+       GSList* candidates;
+       GQueue* request_queue;
+       IdCard* selected_card;
+       gchar* import_directory;
+};
+
+typedef enum  {
+       IDENTITY_MANAGER_VIEW_COLUMNS_IDCARD_COL,
+       IDENTITY_MANAGER_VIEW_COLUMNS_LOGO_COL,
+       IDENTITY_MANAGER_VIEW_COLUMNS_ISSUER_COL,
+       IDENTITY_MANAGER_VIEW_COLUMNS_USERNAME_COL,
+       IDENTITY_MANAGER_VIEW_COLUMNS_PASSWORD_COL,
+       IDENTITY_MANAGER_VIEW_COLUMNS_N_COLUMNS
+} IdentityManagerViewColumns;
+
+struct _IdentityManagerApp {
+       GTypeInstance parent_instance;
+       volatile int ref_count;
+       IdentityManagerAppPrivate * priv;
+       IdentityManagerModel* model;
+       IdCard* default_id_card;
+       gboolean explicitly_launched;
+       IdentityManagerView* view;
+};
+
+struct _IdentityManagerAppClass {
+       GTypeClass parent_class;
+       void (*finalize) (IdentityManagerApp *self);
+};
+
+struct _IdentityDialog {
+       GtkDialog parent_instance;
+       IdentityDialogPrivate * priv;
+       gboolean complete;
+       gboolean clear_trust_anchor;
+};
+
+struct _IdentityDialogClass {
+       GtkDialogClass parent_class;
+};
+
+typedef enum  {
+       ID_CARD_DIFF_FLAGS_DISPLAY_NAME,
+       ID_CARD_DIFF_FLAGS_USERNAME,
+       ID_CARD_DIFF_FLAGS_PASSWORD,
+       ID_CARD_DIFF_FLAGS_ISSUER,
+       ID_CARD_DIFF_FLAGS_RULES,
+       ID_CARD_DIFF_FLAGS_SERVICES,
+       ID_CARD_DIFF_FLAGS_TRUST_ANCHOR
+} IdCardDiffFlags;
+
+struct _IdentityRequest {
+       GObject parent_instance;
+       IdentityRequestPrivate * priv;
+       IdCard* id_card;
+       gboolean complete;
+       gboolean select_default;
+       gchar* nai;
+       gchar* password;
+       gchar* service;
+       GSList* candidates;
+};
+
+struct _IdentityRequestClass {
+       GObjectClass parent_class;
+};
+
+struct _Block3Data {
+       int _ref_count_;
+       IdentityManagerView* self;
+       GtkAboutDialog* about;
+};
+
+
+static gpointer identity_manager_view_parent_class = NULL;
+static MoonshotLogger* identity_manager_view_logger;
+static MoonshotLogger* identity_manager_view_logger = NULL;
+static gint identity_manager_view_LATEST_EDIT_YEAR;
+static gint identity_manager_view_LATEST_EDIT_YEAR = 2016;
+extern GdkColor identity_manager_view_white;
+GdkColor identity_manager_view_white = {0};
+
+GType identity_manager_view_get_type (void) G_GNUC_CONST;
+gpointer identity_manager_app_ref (gpointer instance);
+void identity_manager_app_unref (gpointer instance);
+GParamSpec* param_spec_identity_manager_app (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
+void value_set_identity_manager_app (GValue* value, gpointer v_object);
+void value_take_identity_manager_app (GValue* value, gpointer v_object);
+gpointer value_get_identity_manager_app (const GValue* value);
+GType identity_manager_app_get_type (void) G_GNUC_CONST;
+GType identity_manager_model_get_type (void) G_GNUC_CONST;
+GType custom_vbox_get_type (void) G_GNUC_CONST;
+GType id_card_get_type (void) G_GNUC_CONST;
+GType identity_request_get_type (void) G_GNUC_CONST;
+#define IDENTITY_MANAGER_VIEW_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerViewPrivate))
+enum  {
+       IDENTITY_MANAGER_VIEW_DUMMY_PROPERTY
+};
+static GType identity_manager_view_columns_get_type (void) G_GNUC_CONST G_GNUC_UNUSED;
+GType moonshot_logger_get_type (void) G_GNUC_CONST;
+MoonshotLogger* get_logger (const gchar* name);
+void make_color (guint16 red, guint16 green, guint16 blue, GdkColor* result);
+static void _g_object_unref0_ (gpointer var);
+static void _g_queue_free__g_object_unref0_ (GQueue* self);
+#define IDENTITY_MANAGER_VIEW_WINDOW_WIDTH 700
+#define IDENTITY_MANAGER_VIEW_WINDOW_HEIGHT 500
+#define IDENTITY_MANAGER_VIEW_menu_layout "<menubar name='MenuBar'>" "        <menu name='HelpMenu' action='HelpMenuAction'>" "             <menuitem name='About' action='AboutAction' />" "        </menu>" "</menubar>"
+IdentityManagerView* identity_manager_view_new (IdentityManagerApp* app, gboolean use_flat_file_store);
+IdentityManagerView* identity_manager_view_construct (GType object_type, IdentityManagerApp* app, gboolean use_flat_file_store);
+static void identity_manager_view_build_ui (IdentityManagerView* self);
+static void identity_manager_view_setup_list_model (IdentityManagerView* self);
+static void identity_manager_view_load_id_cards (IdentityManagerView* self);
+static void identity_manager_view_connect_signals (IdentityManagerView* self);
+static void identity_manager_view_report_duplicate_nais (IdentityManagerView* self);
+gboolean identity_manager_model_find_duplicate_nai_sets (IdentityManagerModel* self, GeeArrayList** duplicates);
+const gchar* id_card_get_nai (IdCard* self);
+const gchar* id_card_get_display_name (IdCard* self);
+gchar* id_card_get_services_string (IdCard* self, const gchar* sep);
+static void identity_manager_view_on_card_list_changed (IdentityManagerView* self);
+void moonshot_logger_trace (MoonshotLogger* self, const gchar* message, GError* e);
+static gboolean identity_manager_view_visible_func (IdentityManagerView* self, GtkTreeModel* model, GtkTreeIter* iter);
+const gchar* id_card_get_issuer (IdCard* self);
+GeeArrayList* id_card_get_services (IdCard* self);
+static gboolean _identity_manager_view_visible_func_gtk_tree_model_filter_visible_func (GtkTreeModel* model, GtkTreeIter* iter, gpointer self);
+static void identity_manager_view_search_entry_text_changed_cb (IdentityManagerView* self);
+static void identity_manager_view_redraw_id_card_widgets (IdentityManagerView* self);
+static gboolean identity_manager_view_search_entry_key_press_event_cb (IdentityManagerView* self, GdkEventKey* e);
+void custom_vbox_clear (CustomVBox* self);
+GeeLinkedList* identity_manager_model_get_card_list (IdentityManagerModel* self);
+static void identity_manager_view_add_id_card_data (IdentityManagerView* self, IdCard* id_card);
+GType id_card_widget_get_type (void) G_GNUC_CONST;
+static IdCardWidget* identity_manager_view_add_id_card_widget (IdentityManagerView* self, IdCard* id_card);
+GType identity_dialog_get_type (void) G_GNUC_CONST;
+static IdCard* identity_manager_view_update_id_card_data (IdentityManagerView* self, IdentityDialog* dialog, IdCard* id_card);
+const gchar* identity_dialog_get_display_name (IdentityDialog* self);
+void id_card_set_display_name (IdCard* self, const gchar* value);
+const gchar* identity_dialog_get_issuer (IdentityDialog* self);
+void id_card_set_issuer (IdCard* self, const gchar* value);
+const gchar* identity_dialog_get_username (IdentityDialog* self);
+void id_card_set_username (IdCard* self, const gchar* value);
+const gchar* identity_dialog_get_password (IdentityDialog* self);
+void id_card_set_password (IdCard* self, const gchar* value);
+gboolean identity_dialog_get_store_password (IdentityDialog* self);
+void id_card_set_store_password (IdCard* self, gboolean value);
+void id_card_update_services_from_list (IdCard* self, GeeArrayList* services);
+GeeArrayList* identity_dialog_get_services (IdentityDialog* self);
+void id_card_clear_trust_anchor (IdCard* self);
+GdkPixbuf* get_pixbuf (IdCard* id);
+const gchar* id_card_get_username (IdCard* self);
+const gchar* id_card_get_password (IdCard* self);
+IdCardWidget* id_card_widget_new (IdCard* id_card, IdentityManagerView* manager_view);
+IdCardWidget* id_card_widget_construct (GType object_type, IdCard* id_card, IdentityManagerView* manager_view);
+void custom_vbox_add_id_card_widget (CustomVBox* self, IdCardWidget* id_card_widget);
+static void identity_manager_view_widget_selected_cb (IdentityManagerView* self, IdCardWidget* id_card_widget);
+static void _identity_manager_view_widget_selected_cb_id_card_widget_expanded (IdCardWidget* _sender, gpointer self);
+static void identity_manager_view_widget_unselected_cb (IdentityManagerView* self, IdCardWidget* id_card_widget);
+static void _identity_manager_view_widget_unselected_cb_id_card_widget_collapsed (IdCardWidget* _sender, gpointer self);
+void id_card_widget_expand (IdCardWidget* self);
+IdCard* id_card_widget_get_id_card (IdCardWidget* self);
+gboolean id_card_is_no_identity (IdCard* self);
+void custom_vbox_receive_expanded_event (CustomVBox* self, IdCardWidget* id_card_widget);
+gboolean identity_manager_view_selection_in_progress (IdentityManagerView* self);
+void custom_vbox_receive_collapsed_event (CustomVBox* self, IdCardWidget* id_card_widget);
+gboolean identity_manager_view_add_identity (IdentityManagerView* self, IdCard* id_card, gboolean force_flat_file_store, GeeArrayList** old_duplicates);
+IdCard* identity_manager_model_find_id_card (IdentityManagerModel* self, const gchar* nai, gboolean force_flat_file_store);
+gint id_card_Compare (IdCard* self, IdCard* other);
+GType id_card_diff_flags_get_type (void) G_GNUC_CONST;
+void identity_manager_model_add_card (IdentityManagerModel* self, IdCard* card, gboolean force_flat_file_store, GeeArrayList** old_duplicates);
+static void identity_manager_view_add_identity_cb (IdentityManagerView* self);
+IdentityDialog* identity_dialog_new (IdentityManagerView* parent);
+IdentityDialog* identity_dialog_construct (GType object_type, IdentityManagerView* parent);
+IdCard* id_card_new (void);
+IdCard* id_card_construct (GType object_type);
+static void identity_manager_view_edit_identity_cb (IdentityManagerView* self, IdCard* card);
+IdentityDialog* identity_dialog_new_with_idcard (IdCard* a_card, const gchar* title, IdentityManagerView* parent);
+IdentityDialog* identity_dialog_construct_with_idcard (GType object_type, IdCard* a_card, const gchar* title, IdentityManagerView* parent);
+IdCard* identity_manager_model_update_card (IdentityManagerModel* self, IdCard* card);
+static void identity_manager_view_remove_identity (IdentityManagerView* self, IdCard* id_card);
+gboolean identity_manager_model_remove_card (IdentityManagerModel* self, IdCard* card);
+static void identity_manager_view_remove_identity_cb (IdentityManagerView* self, IdCard* id_card);
+gboolean warning_dialog_confirm (GtkWindow* parent, const gchar* message, const gchar* dialog_name);
+static void identity_manager_view_set_prompting_service (IdentityManagerView* self, const gchar* service);
+static void identity_manager_view_clear_selection_prompts (IdentityManagerView* self);
+void identity_manager_view_queue_identity_request (IdentityManagerView* self, IdentityRequest* request);
+IdCardWidget* custom_vbox_find_idcard_widget (CustomVBox* self, IdCard* card);
+void identity_manager_view_make_visible (IdentityManagerView* self);
+IdCard* identity_manager_view_check_add_password (IdentityManagerView* self, IdCard* identity, IdentityRequest* request, IdentityManagerModel* model);
+GType add_password_dialog_get_type (void) G_GNUC_CONST;
+AddPasswordDialog* add_password_dialog_new (IdCard* id_card, IdentityRequest* request);
+AddPasswordDialog* add_password_dialog_construct (GType object_type, IdCard* id_card, IdentityRequest* request);
+const gchar* add_password_dialog_get_password (AddPasswordDialog* self);
+void add_password_dialog_clear_password (AddPasswordDialog* self);
+gboolean add_password_dialog_get_remember (AddPasswordDialog* self);
+void id_card_set_temporary (IdCard* self, gboolean value);
+static void identity_manager_view_send_identity_cb (IdentityManagerView* self, IdCard* id);
+void identity_request_return_identity (IdentityRequest* self, IdCard* id_card, gboolean update_card);
+static void identity_manager_view_on_about_action (IdentityManagerView* self);
+static Block3Data* block3_data_ref (Block3Data* _data3_);
+static void block3_data_unref (void * _userdata_);
+static void __lambda6_ (Block3Data* _data3_, GtkDialog* a, gint b);
+static void ___lambda6__gtk_dialog_response (GtkDialog* _sender, gint response_id, gpointer self);
+void set_bg_color (GtkWidget* w);
+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);
+static void _identity_manager_view_on_about_action_gtk_action_callback (GtkAction* action, gpointer self);
+static void _vala_array_add2 (GtkActionEntry** array, int* length, int* size, const GtkActionEntry* value);
+static void identity_manager_view_create_ui_manager (IdentityManagerView* self);
+void moonshot_logger_error (MoonshotLogger* self, const gchar* message, GError* e);
+static void identity_manager_view_set_atk_name_description (IdentityManagerView* self, GtkWidget* widget, const gchar* name, const gchar* description);
+GdkPixbuf* find_icon_sized (const gchar* name, GtkIconSize icon_size);
+static void _identity_manager_view_search_entry_text_changed_cb_g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self);
+static gboolean _identity_manager_view_search_entry_key_press_event_cb_gtk_widget_key_press_event (GtkWidget* _sender, GdkEventKey* event, gpointer self);
+CustomVBox* custom_vbox_new (IdentityManagerView* window, gboolean homogeneous, gint spacing);
+CustomVBox* custom_vbox_construct (GType object_type, IdentityManagerView* window, gboolean homogeneous, gint spacing);
+static void __lambda7_ (IdentityManagerView* self, GtkButton* w);
+static void ___lambda7__gtk_button_clicked (GtkButton* _sender, gpointer self);
+static GtkWidget* identity_manager_view_make_rigid (GtkButton* button);
+static void __lambda13_ (IdentityManagerView* self, GtkButton* w);
+static void identity_manager_view_import_identities_cb (IdentityManagerView* self);
+static void ___lambda13__gtk_button_clicked (GtkButton* _sender, gpointer self);
+static void __lambda14_ (IdentityManagerView* self, GtkButton* w);
+static void ___lambda14__gtk_button_clicked (GtkButton* _sender, gpointer self);
+static void __lambda15_ (IdentityManagerView* self, GtkButton* w);
+static void ___lambda15__gtk_button_clicked (GtkButton* _sender, gpointer self);
+static void __lambda16_ (IdentityManagerView* self, GtkButton* w);
+static void ___lambda16__gtk_button_clicked (GtkButton* _sender, gpointer self);
+static void __lambda17_ (IdentityManagerView* self);
+static void ___lambda17__gtk_object_destroy (GtkObject* _sender, gpointer self);
+static void _identity_manager_view_on_card_list_changed_identity_manager_model_card_list_changed (IdentityManagerModel* _sender, gpointer self);
+static gboolean __lambda18_ (IdentityManagerView* self);
+static gboolean identity_manager_view_confirm_quit (IdentityManagerView* self);
+static gboolean ___lambda18__gtk_widget_delete_event (GtkWidget* _sender, GdkEvent* event, gpointer self);
+GType web_provisioning_parser_get_type (void) G_GNUC_CONST;
+WebProvisioningParser* web_provisioning_parser_new (const gchar* path);
+WebProvisioningParser* web_provisioning_parser_construct (GType object_type, const gchar* path);
+void web_provisioning_parser_parse (WebProvisioningParser* self);
+IdCard** web_provisioning_parser_get_cards (WebProvisioningParser* self, int* result_length1);
+GType trust_anchor_get_type (void) G_GNUC_CONST;
+TrustAnchor* id_card_get_trust_anchor (IdCard* self);
+gboolean trust_anchor_is_empty (TrustAnchor* self);
+gchar* trust_anchor_format_datetime_now (void);
+void trust_anchor_set_datetime_added (TrustAnchor* self, const gchar* datetime);
+const gchar* trust_anchor_get_ca_cert (TrustAnchor* self);
+const gchar* trust_anchor_get_server_cert (TrustAnchor* self);
+static void identity_manager_view_finalize (GObject* obj);
+static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func);
+static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func);
+static gint _vala_array_length (gpointer array);
+
+
+static GType identity_manager_view_columns_get_type (void) {
+       static volatile gsize identity_manager_view_columns_type_id__volatile = 0;
+       if (g_once_init_enter (&identity_manager_view_columns_type_id__volatile)) {
+               static const GEnumValue values[] = {{IDENTITY_MANAGER_VIEW_COLUMNS_IDCARD_COL, "IDENTITY_MANAGER_VIEW_COLUMNS_IDCARD_COL", "idcard-col"}, {IDENTITY_MANAGER_VIEW_COLUMNS_LOGO_COL, "IDENTITY_MANAGER_VIEW_COLUMNS_LOGO_COL", "logo-col"}, {IDENTITY_MANAGER_VIEW_COLUMNS_ISSUER_COL, "IDENTITY_MANAGER_VIEW_COLUMNS_ISSUER_COL", "issuer-col"}, {IDENTITY_MANAGER_VIEW_COLUMNS_USERNAME_COL, "IDENTITY_MANAGER_VIEW_COLUMNS_USERNAME_COL", "username-col"}, {IDENTITY_MANAGER_VIEW_COLUMNS_PASSWORD_COL, "IDENTITY_MANAGER_VIEW_COLUMNS_PASSWORD_COL", "password-col"}, {IDENTITY_MANAGER_VIEW_COLUMNS_N_COLUMNS, "IDENTITY_MANAGER_VIEW_COLUMNS_N_COLUMNS", "n-columns"}, {0, NULL, NULL}};
+               GType identity_manager_view_columns_type_id;
+               identity_manager_view_columns_type_id = g_enum_register_static ("IdentityManagerViewColumns", values);
+               g_once_init_leave (&identity_manager_view_columns_type_id__volatile, identity_manager_view_columns_type_id);
+       }
+       return identity_manager_view_columns_type_id__volatile;
+}
+
+
+static void _g_object_unref0_ (gpointer var) {
+#line 67 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       (var == NULL) ? NULL : (var = (g_object_unref (var), NULL));
+#line 477 "moonshot-identity-management-view.c"
+}
+
+
+static void _g_queue_free__g_object_unref0_ (GQueue* self) {
+#line 67 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_queue_foreach (self, (GFunc) _g_object_unref0_, NULL);
+#line 67 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_queue_free (self);
+#line 486 "moonshot-identity-management-view.c"
+}
+
+
+static gpointer _identity_manager_app_ref0 (gpointer self) {
+#line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       return self ? identity_manager_app_ref (self) : NULL;
+#line 493 "moonshot-identity-management-view.c"
+}
+
+
+static gpointer _g_object_ref0 (gpointer self) {
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       return self ? g_object_ref (self) : NULL;
+#line 500 "moonshot-identity-management-view.c"
+}
+
+
+IdentityManagerView* identity_manager_view_construct (GType object_type, IdentityManagerApp* app, gboolean use_flat_file_store) {
+       IdentityManagerView * self = NULL;
+       IdentityManagerApp* _tmp0_ = NULL;
+       IdentityManagerApp* _tmp1_ = NULL;
+       gboolean _tmp2_ = FALSE;
+       IdentityManagerApp* _tmp3_ = NULL;
+       IdentityManagerModel* _tmp4_ = NULL;
+       IdentityManagerModel* _tmp5_ = NULL;
+       GQueue* _tmp6_ = NULL;
+       const gchar* _tmp7_ = NULL;
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_val_if_fail (app != NULL, NULL);
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       self = (IdentityManagerView*) g_object_new (object_type, NULL);
+#line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = app;
+#line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp1_ = _identity_manager_app_ref0 (_tmp0_);
+#line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _identity_manager_app_unref0 (self->parent_app);
+#line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       self->parent_app = _tmp1_;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp2_ = use_flat_file_store;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       self->priv->use_flat_file_store = _tmp2_;
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp3_ = self->parent_app;
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp4_ = _tmp3_->model;
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp5_ = _g_object_ref0 (_tmp4_);
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (self->identities_manager);
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       self->identities_manager = _tmp5_;
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp6_ = g_queue_new ();
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       __g_queue_free__g_object_unref0_0 (self->priv->request_queue);
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       self->priv->request_queue = _tmp6_;
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp7_ = _ ("Moonshot Identity Selector");
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_window_set_title ((GtkWindow*) self, _tmp7_);
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_window_set_position ((GtkWindow*) self, GTK_WIN_POS_CENTER);
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_window_set_default_size ((GtkWindow*) self, IDENTITY_MANAGER_VIEW_WINDOW_WIDTH, IDENTITY_MANAGER_VIEW_WINDOW_HEIGHT);
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       identity_manager_view_build_ui (self);
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       identity_manager_view_setup_list_model (self);
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       identity_manager_view_load_id_cards (self);
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       identity_manager_view_connect_signals (self);
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       identity_manager_view_report_duplicate_nais (self);
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       return self;
+#line 566 "moonshot-identity-management-view.c"
+}
+
+
+IdentityManagerView* identity_manager_view_new (IdentityManagerApp* app, gboolean use_flat_file_store) {
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       return identity_manager_view_construct (TYPE_IDENTITY_MANAGER_VIEW, app, use_flat_file_store);
+#line 573 "moonshot-identity-management-view.c"
+}
+
+
+static void identity_manager_view_report_duplicate_nais (IdentityManagerView* self) {
+       GeeArrayList* duplicates = NULL;
+       IdentityManagerModel* _tmp0_ = NULL;
+       GeeArrayList* _tmp1_ = NULL;
+#line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (self != NULL);
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = self->identities_manager;
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       identity_manager_model_find_duplicate_nai_sets (_tmp0_, &_tmp1_);
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (duplicates);
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       duplicates = _tmp1_;
+#line 591 "moonshot-identity-management-view.c"
+       {
+               GeeArrayList* _list_list = NULL;
+               GeeArrayList* _tmp2_ = NULL;
+               GeeArrayList* _tmp3_ = NULL;
+               gint _list_size = 0;
+               GeeArrayList* _tmp4_ = NULL;
+               gint _tmp5_ = 0;
+               gint _tmp6_ = 0;
+               gint _list_index = 0;
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp2_ = duplicates;
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp3_ = _g_object_ref0 (_tmp2_);
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _list_list = _tmp3_;
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp4_ = _list_list;
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp5_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp4_);
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp6_ = _tmp5_;
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _list_size = _tmp6_;
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _list_index = -1;
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               while (TRUE) {
+#line 619 "moonshot-identity-management-view.c"
+                       gint _tmp7_ = 0;
+                       gint _tmp8_ = 0;
+                       gint _tmp9_ = 0;
+                       GeeArrayList* list = NULL;
+                       GeeArrayList* _tmp10_ = NULL;
+                       gint _tmp11_ = 0;
+                       gpointer _tmp12_ = NULL;
+                       gchar* message = NULL;
+                       const gchar* _tmp13_ = NULL;
+                       GeeArrayList* _tmp14_ = NULL;
+                       gpointer _tmp15_ = NULL;
+                       IdCard* _tmp16_ = NULL;
+                       const gchar* _tmp17_ = NULL;
+                       const gchar* _tmp18_ = NULL;
+                       gchar* _tmp19_ = NULL;
+                       gchar* _tmp20_ = NULL;
+                       const gchar* _tmp21_ = NULL;
+                       gchar* _tmp22_ = NULL;
+                       gchar* _tmp23_ = NULL;
+                       const gchar* _tmp24_ = NULL;
+                       gchar* _tmp25_ = NULL;
+                       gchar* _tmp26_ = NULL;
+                       GtkMessageDialog* msg_dialog = NULL;
+                       const gchar* _tmp49_ = NULL;
+                       GtkMessageDialog* _tmp50_ = NULL;
+                       GtkMessageDialog* _tmp51_ = NULL;
+                       GtkMessageDialog* _tmp52_ = NULL;
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp7_ = _list_index;
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _list_index = _tmp7_ + 1;
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp8_ = _list_index;
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp9_ = _list_size;
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       if (!(_tmp8_ < _tmp9_)) {
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               break;
+#line 659 "moonshot-identity-management-view.c"
+                       }
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp10_ = _list_list;
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp11_ = _list_index;
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp12_ = gee_abstract_list_get ((GeeAbstractList*) _tmp10_, _tmp11_);
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       list = (GeeArrayList*) _tmp12_;
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp13_ = _ ("The following identities use the same Network Access Identifier (NAI)," \
+"\n" \
+"'%s'.");
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp14_ = list;
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp15_ = gee_abstract_list_get ((GeeAbstractList*) _tmp14_, 0);
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp16_ = (IdCard*) _tmp15_;
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp17_ = id_card_get_nai (_tmp16_);
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp18_ = _tmp17_;
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp19_ = g_strdup_printf (_tmp13_, _tmp18_);
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp20_ = _tmp19_;
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp21_ = _ ("\n" \
+"\n" \
+"Duplicate NAIs are not allowed. Please remove identities you don't nee" \
+"d, or modify");
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp22_ = g_strconcat (_tmp20_, _tmp21_, NULL);
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp23_ = _tmp22_;
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp24_ = _ (" user ID or issuer fields so that they are no longer the same NAI.");
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp25_ = g_strconcat (_tmp23_, _tmp24_, NULL);
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp26_ = _tmp25_;
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _g_free0 (_tmp23_);
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _g_free0 (_tmp20_);
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _g_object_unref0 (_tmp16_);
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       message = _tmp26_;
+#line 705 "moonshot-identity-management-view.c"
+                       {
+                               GeeArrayList* _card_list = NULL;
+                               GeeArrayList* _tmp27_ = NULL;
+                               GeeArrayList* _tmp28_ = NULL;
+                               gint _card_size = 0;
+                               GeeArrayList* _tmp29_ = NULL;
+                               gint _tmp30_ = 0;
+                               gint _tmp31_ = 0;
+                               gint _card_index = 0;
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp27_ = list;
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp28_ = _g_object_ref0 (_tmp27_);
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _card_list = _tmp28_;
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp29_ = _card_list;
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp30_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp29_);
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp31_ = _tmp30_;
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _card_size = _tmp31_;
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _card_index = -1;
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               while (TRUE) {
+#line 733 "moonshot-identity-management-view.c"
+                                       gint _tmp32_ = 0;
+                                       gint _tmp33_ = 0;
+                                       gint _tmp34_ = 0;
+                                       IdCard* card = NULL;
+                                       GeeArrayList* _tmp35_ = NULL;
+                                       gint _tmp36_ = 0;
+                                       gpointer _tmp37_ = NULL;
+                                       const gchar* _tmp38_ = NULL;
+                                       const gchar* _tmp39_ = NULL;
+                                       IdCard* _tmp40_ = NULL;
+                                       const gchar* _tmp41_ = NULL;
+                                       const gchar* _tmp42_ = NULL;
+                                       IdCard* _tmp43_ = NULL;
+                                       gchar* _tmp44_ = NULL;
+                                       gchar* _tmp45_ = NULL;
+                                       gchar* _tmp46_ = NULL;
+                                       gchar* _tmp47_ = NULL;
+                                       gchar* _tmp48_ = NULL;
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp32_ = _card_index;
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _card_index = _tmp32_ + 1;
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp33_ = _card_index;
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp34_ = _card_size;
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       if (!(_tmp33_ < _tmp34_)) {
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               break;
+#line 764 "moonshot-identity-management-view.c"
+                                       }
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp35_ = _card_list;
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp36_ = _card_index;
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp37_ = gee_abstract_list_get ((GeeAbstractList*) _tmp35_, _tmp36_);
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       card = (IdCard*) _tmp37_;
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp38_ = message;
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp39_ = _ ("\n\nDisplay Name: '%s'\nServices:\n     %s");
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp40_ = card;
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp41_ = id_card_get_display_name (_tmp40_);
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp42_ = _tmp41_;
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp43_ = card;
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp44_ = id_card_get_services_string (_tmp43_, ",\n     ");
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp45_ = _tmp44_;
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp46_ = g_strdup_printf (_tmp39_, _tmp42_, _tmp45_);
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp47_ = _tmp46_;
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp48_ = g_strconcat (_tmp38_, _tmp47_, NULL);
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _g_free0 (message);
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       message = _tmp48_;
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _g_free0 (_tmp47_);
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _g_free0 (_tmp45_);
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _g_object_unref0 (card);
+#line 806 "moonshot-identity-management-view.c"
+                               }
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _g_object_unref0 (_card_list);
+#line 810 "moonshot-identity-management-view.c"
+                       }
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp49_ = message;
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp50_ = (GtkMessageDialog*) gtk_message_dialog_new ((GtkWindow*) self, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_OK, "%s", _tmp49_);
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       g_object_ref_sink (_tmp50_);
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       msg_dialog = _tmp50_;
+#line 128 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp51_ = msg_dialog;
+#line 128 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       gtk_dialog_run ((GtkDialog*) _tmp51_);
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp52_ = msg_dialog;
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       gtk_object_destroy ((GtkObject*) _tmp52_);
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _g_object_unref0 (msg_dialog);
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _g_free0 (message);
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _g_object_unref0 (list);
+#line 834 "moonshot-identity-management-view.c"
+               }
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_object_unref0 (_list_list);
+#line 838 "moonshot-identity-management-view.c"
+       }
+#line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (duplicates);
+#line 842 "moonshot-identity-management-view.c"
+}
+
+
+static void identity_manager_view_on_card_list_changed (IdentityManagerView* self) {
+       MoonshotLogger* _tmp0_ = NULL;
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (self != NULL);
+#line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = identity_manager_view_logger;
+#line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       moonshot_logger_trace (_tmp0_, "on_card_list_changed", NULL);
+#line 135 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       identity_manager_view_load_id_cards (self);
+#line 856 "moonshot-identity-management-view.c"
+}
+
+
+static gboolean string_contains (const gchar* self, const gchar* needle) {
+       gboolean result = FALSE;
+       const gchar* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+#line 1384 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (self != NULL, FALSE);
+#line 1384 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (needle != NULL, FALSE);
+#line 1385 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp0_ = needle;
+#line 1385 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp1_ = strstr ((gchar*) self, (gchar*) _tmp0_);
+#line 1385 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       result = _tmp1_ != NULL;
+#line 1385 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       return result;
+#line 876 "moonshot-identity-management-view.c"
+}
+
+
+static gboolean identity_manager_view_visible_func (IdentityManagerView* self, GtkTreeModel* model, GtkTreeIter* iter) {
+       gboolean result = FALSE;
+       IdCard* id_card = NULL;
+       GtkTreeModel* _tmp0_ = NULL;
+       GtkTreeIter _tmp1_ = {0};
+       IdCard* _tmp2_ = NULL;
+       GSList* _tmp3_ = NULL;
+       gchar* entry_text = NULL;
+       GtkEntry* _tmp9_ = NULL;
+       const gchar* _tmp10_ = NULL;
+       gchar* _tmp11_ = NULL;
+       gboolean _tmp12_ = FALSE;
+       const gchar* _tmp13_ = NULL;
+       const gchar* _tmp15_ = NULL;
+       gchar** _tmp16_ = NULL;
+       gchar** _tmp17_ = NULL;
+#line 138 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_val_if_fail (self != NULL, FALSE);
+#line 138 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_val_if_fail (model != NULL, FALSE);
+#line 138 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_val_if_fail (iter != NULL, FALSE);
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = model;
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp1_ = *iter;
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_tree_model_get (_tmp0_, &_tmp1_, IDENTITY_MANAGER_VIEW_COLUMNS_IDCARD_COL, &id_card, -1);
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp2_ = id_card;
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (_tmp2_ == NULL) {
+#line 146 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               result = FALSE;
+#line 146 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_object_unref0 (id_card);
+#line 146 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               return result;
+#line 918 "moonshot-identity-management-view.c"
+       }
+#line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp3_ = self->priv->candidates;
+#line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (_tmp3_ != NULL) {
+#line 924 "moonshot-identity-management-view.c"
+               gboolean is_candidate = FALSE;
+               GSList* _tmp4_ = NULL;
+               gboolean _tmp8_ = FALSE;
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               is_candidate = FALSE;
+#line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp4_ = self->priv->candidates;
+#line 932 "moonshot-identity-management-view.c"
+               {
+                       GSList* candidate_collection = NULL;
+                       GSList* candidate_it = NULL;
+#line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       candidate_collection = _tmp4_;
+#line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       for (candidate_it = candidate_collection; candidate_it != NULL; candidate_it = candidate_it->next) {
+#line 940 "moonshot-identity-management-view.c"
+                               IdCard* _tmp5_ = NULL;
+                               IdCard* candidate = NULL;
+#line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp5_ = _g_object_ref0 ((IdCard*) candidate_it->data);
+#line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               candidate = _tmp5_;
+#line 947 "moonshot-identity-management-view.c"
+                               {
+                                       IdCard* _tmp6_ = NULL;
+                                       IdCard* _tmp7_ = NULL;
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp6_ = candidate;
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp7_ = id_card;
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       if (_tmp6_ == _tmp7_) {
+#line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               is_candidate = TRUE;
+#line 959 "moonshot-identity-management-view.c"
+                                       }
+#line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _g_object_unref0 (candidate);
+#line 963 "moonshot-identity-management-view.c"
+                               }
+                       }
+               }
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp8_ = is_candidate;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               if (!_tmp8_) {
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       result = FALSE;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _g_object_unref0 (id_card);
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       return result;
+#line 977 "moonshot-identity-management-view.c"
+               }
+       }
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp9_ = self->priv->search_entry;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp10_ = gtk_entry_get_text (_tmp9_);
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp11_ = g_strdup (_tmp10_);
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       entry_text = _tmp11_;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp13_ = entry_text;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (_tmp13_ == NULL) {
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp12_ = TRUE;
+#line 994 "moonshot-identity-management-view.c"
+       } else {
+               const gchar* _tmp14_ = NULL;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp14_ = entry_text;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp12_ = g_strcmp0 (_tmp14_, "") == 0;
+#line 1001 "moonshot-identity-management-view.c"
+       }
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (_tmp12_) {
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               result = TRUE;
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_free0 (entry_text);
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_object_unref0 (id_card);
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               return result;
+#line 1013 "moonshot-identity-management-view.c"
+       }
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp15_ = entry_text;
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp17_ = _tmp16_ = g_strsplit (_tmp15_, " ", 0);
+#line 1019 "moonshot-identity-management-view.c"
+       {
+               gchar** search_text_collection = NULL;
+               gint search_text_collection_length1 = 0;
+               gint _search_text_collection_size_ = 0;
+               gint search_text_it = 0;
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               search_text_collection = _tmp17_;
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               search_text_collection_length1 = _vala_array_length (_tmp16_);
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               for (search_text_it = 0; search_text_it < _vala_array_length (_tmp16_); search_text_it = search_text_it + 1) {
+#line 1031 "moonshot-identity-management-view.c"
+                       gchar* _tmp18_ = NULL;
+                       gchar* search_text = NULL;
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp18_ = g_strdup (search_text_collection[search_text_it]);
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       search_text = _tmp18_;
+#line 1038 "moonshot-identity-management-view.c"
+                       {
+                               const gchar* _tmp19_ = NULL;
+                               gchar* search_text_casefold = NULL;
+                               const gchar* _tmp20_ = NULL;
+                               gchar* _tmp21_ = NULL;
+                               IdCard* _tmp22_ = NULL;
+                               const gchar* _tmp23_ = NULL;
+                               const gchar* _tmp24_ = NULL;
+                               IdCard* _tmp32_ = NULL;
+                               const gchar* _tmp33_ = NULL;
+                               const gchar* _tmp34_ = NULL;
+                               IdCard* _tmp42_ = NULL;
+                               GeeArrayList* _tmp43_ = NULL;
+                               GeeArrayList* _tmp44_ = NULL;
+                               gint _tmp45_ = 0;
+                               gint _tmp46_ = 0;
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp19_ = search_text;
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               if (g_strcmp0 (_tmp19_, "") == 0) {
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _g_free0 (search_text);
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       continue;
+#line 1063 "moonshot-identity-management-view.c"
+                               }
+#line 172 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp20_ = search_text;
+#line 172 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp21_ = g_utf8_casefold (_tmp20_, (gssize) -1);
+#line 172 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               search_text_casefold = _tmp21_;
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp22_ = id_card;
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp23_ = id_card_get_issuer (_tmp22_);
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp24_ = _tmp23_;
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               if (_tmp24_ != NULL) {
+#line 1079 "moonshot-identity-management-view.c"
+                                       gchar* issuer_casefold = NULL;
+                                       IdCard* _tmp25_ = NULL;
+                                       const gchar* _tmp26_ = NULL;
+                                       const gchar* _tmp27_ = NULL;
+                                       gchar* _tmp28_ = NULL;
+                                       const gchar* _tmp29_ = NULL;
+                                       const gchar* _tmp30_ = NULL;
+                                       gboolean _tmp31_ = FALSE;
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp25_ = id_card;
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp26_ = id_card_get_issuer (_tmp25_);
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp27_ = _tmp26_;
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp28_ = g_strdup (_tmp27_);
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       issuer_casefold = _tmp28_;
+#line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp29_ = issuer_casefold;
+#line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp30_ = search_text_casefold;
+#line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp31_ = string_contains (_tmp29_, _tmp30_);
+#line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       if (_tmp31_) {
+#line 179 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               result = TRUE;
+#line 179 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _g_free0 (issuer_casefold);
+#line 179 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _g_free0 (search_text_casefold);
+#line 179 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _g_free0 (search_text);
+#line 179 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               search_text_collection = (_vala_array_free (search_text_collection, search_text_collection_length1, (GDestroyNotify) g_free), NULL);
+#line 179 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _g_free0 (entry_text);
+#line 179 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _g_object_unref0 (id_card);
+#line 179 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               return result;
+#line 1122 "moonshot-identity-management-view.c"
+                                       }
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _g_free0 (issuer_casefold);
+#line 1126 "moonshot-identity-management-view.c"
+                               }
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp32_ = id_card;
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp33_ = id_card_get_display_name (_tmp32_);
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp34_ = _tmp33_;
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               if (_tmp34_ != NULL) {
+#line 1136 "moonshot-identity-management-view.c"
+                                       gchar* display_name_casefold = NULL;
+                                       IdCard* _tmp35_ = NULL;
+                                       const gchar* _tmp36_ = NULL;
+                                       const gchar* _tmp37_ = NULL;
+                                       gchar* _tmp38_ = NULL;
+                                       const gchar* _tmp39_ = NULL;
+                                       const gchar* _tmp40_ = NULL;
+                                       gboolean _tmp41_ = FALSE;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp35_ = id_card;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp36_ = id_card_get_display_name (_tmp35_);
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp37_ = _tmp36_;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp38_ = g_utf8_casefold (_tmp37_, (gssize) -1);
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       display_name_casefold = _tmp38_;
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp39_ = display_name_casefold;
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp40_ = search_text_casefold;
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp41_ = string_contains (_tmp39_, _tmp40_);
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       if (_tmp41_) {
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               result = TRUE;
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _g_free0 (display_name_casefold);
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _g_free0 (search_text_casefold);
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _g_free0 (search_text);
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               search_text_collection = (_vala_array_free (search_text_collection, search_text_collection_length1, (GDestroyNotify) g_free), NULL);
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _g_free0 (entry_text);
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _g_object_unref0 (id_card);
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               return result;
+#line 1179 "moonshot-identity-management-view.c"
+                                       }
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _g_free0 (display_name_casefold);
+#line 1183 "moonshot-identity-management-view.c"
+                               }
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp42_ = id_card;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp43_ = id_card_get_services (_tmp42_);
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp44_ = _tmp43_;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp45_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp44_);
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp46_ = _tmp45_;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               if (_tmp46_ > 0) {
+#line 1197 "moonshot-identity-management-view.c"
+                                       {
+                                               GeeArrayList* _service_list = NULL;
+                                               IdCard* _tmp47_ = NULL;
+                                               GeeArrayList* _tmp48_ = NULL;
+                                               GeeArrayList* _tmp49_ = NULL;
+                                               GeeArrayList* _tmp50_ = NULL;
+                                               gint _service_size = 0;
+                                               GeeArrayList* _tmp51_ = NULL;
+                                               gint _tmp52_ = 0;
+                                               gint _tmp53_ = 0;
+                                               gint _service_index = 0;
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp47_ = id_card;
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp48_ = id_card_get_services (_tmp47_);
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp49_ = _tmp48_;
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp50_ = _g_object_ref0 (_tmp49_);
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _service_list = _tmp50_;
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp51_ = _service_list;
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp52_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp51_);
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp53_ = _tmp52_;
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _service_size = _tmp53_;
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _service_index = -1;
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               while (TRUE) {
+#line 1231 "moonshot-identity-management-view.c"
+                                                       gint _tmp54_ = 0;
+                                                       gint _tmp55_ = 0;
+                                                       gint _tmp56_ = 0;
+                                                       gchar* service = NULL;
+                                                       GeeArrayList* _tmp57_ = NULL;
+                                                       gint _tmp58_ = 0;
+                                                       gpointer _tmp59_ = NULL;
+                                                       gchar* service_casefold = NULL;
+                                                       const gchar* _tmp60_ = NULL;
+                                                       gchar* _tmp61_ = NULL;
+                                                       const gchar* _tmp62_ = NULL;
+                                                       const gchar* _tmp63_ = NULL;
+                                                       gboolean _tmp64_ = FALSE;
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                                       _tmp54_ = _service_index;
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                                       _service_index = _tmp54_ + 1;
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                                       _tmp55_ = _service_index;
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                                       _tmp56_ = _service_size;
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                                       if (!(_tmp55_ < _tmp56_)) {
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                                               break;
+#line 1257 "moonshot-identity-management-view.c"
+                                                       }
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                                       _tmp57_ = _service_list;
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                                       _tmp58_ = _service_index;
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                                       _tmp59_ = gee_abstract_list_get ((GeeAbstractList*) _tmp57_, _tmp58_);
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                                       service = (gchar*) _tmp59_;
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                                       _tmp60_ = service;
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                                       _tmp61_ = g_utf8_casefold (_tmp60_, (gssize) -1);
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                                       service_casefold = _tmp61_;
+#line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                                       _tmp62_ = service_casefold;
+#line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                                       _tmp63_ = search_text_casefold;
+#line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                                       _tmp64_ = string_contains (_tmp62_, _tmp63_);
+#line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                                       if (_tmp64_) {
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                                               result = TRUE;
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                                               _g_free0 (service_casefold);
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                                               _g_free0 (service);
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                                               _g_object_unref0 (_service_list);
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                                               _g_free0 (search_text_casefold);
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                                               _g_free0 (search_text);
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                                               search_text_collection = (_vala_array_free (search_text_collection, search_text_collection_length1, (GDestroyNotify) g_free), NULL);
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                                               _g_free0 (entry_text);
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                                               _g_object_unref0 (id_card);
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                                               return result;
+#line 1301 "moonshot-identity-management-view.c"
+                                                       }
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                                       _g_free0 (service_casefold);
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                                       _g_free0 (service);
+#line 1307 "moonshot-identity-management-view.c"
+                                               }
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _g_object_unref0 (_service_list);
+#line 1311 "moonshot-identity-management-view.c"
+                                       }
+                               }
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _g_free0 (search_text_casefold);
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _g_free0 (search_text);
+#line 1318 "moonshot-identity-management-view.c"
+                       }
+               }
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               search_text_collection = (_vala_array_free (search_text_collection, search_text_collection_length1, (GDestroyNotify) g_free), NULL);
+#line 1323 "moonshot-identity-management-view.c"
+       }
+#line 201 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       result = FALSE;
+#line 201 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_free0 (entry_text);
+#line 201 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (id_card);
+#line 201 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       return result;
+#line 1333 "moonshot-identity-management-view.c"
+}
+
+
+static gboolean _identity_manager_view_visible_func_gtk_tree_model_filter_visible_func (GtkTreeModel* model, GtkTreeIter* iter, gpointer self) {
+       gboolean result;
+       result = identity_manager_view_visible_func ((IdentityManagerView*) self, model, iter);
+#line 213 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       return result;
+#line 1342 "moonshot-identity-management-view.c"
+}
+
+
+static void identity_manager_view_setup_list_model (IdentityManagerView* self) {
+       GtkListStore* _tmp0_ = NULL;
+       GtkListStore* _tmp1_ = NULL;
+       GtkTreeModelFilter* _tmp2_ = NULL;
+       GtkTreeModelFilter* _tmp3_ = NULL;
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (self != NULL);
+#line 206 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = gtk_list_store_new ((gint) IDENTITY_MANAGER_VIEW_COLUMNS_N_COLUMNS, TYPE_ID_CARD, gdk_pixbuf_get_type (), G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING);
+#line 206 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       self->priv->listmodel = _tmp0_;
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp1_ = self->priv->listmodel;
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp2_ = (GtkTreeModelFilter*) gtk_tree_model_filter_new ((GtkTreeModel*) _tmp1_, NULL);
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (self->priv->filter);
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       self->priv->filter = _tmp2_;
+#line 213 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp3_ = self->priv->filter;
+#line 213 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_tree_model_filter_set_visible_func (_tmp3_, _identity_manager_view_visible_func_gtk_tree_model_filter_visible_func, g_object_ref (self), g_object_unref);
+#line 1369 "moonshot-identity-management-view.c"
+}
+
+
+static void identity_manager_view_search_entry_text_changed_cb (IdentityManagerView* self) {
+       GtkTreeModelFilter* _tmp0_ = NULL;
+#line 216 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (self != NULL);
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = self->priv->filter;
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_tree_model_filter_refilter (_tmp0_);
+#line 219 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       identity_manager_view_redraw_id_card_widgets (self);
+#line 1383 "moonshot-identity-management-view.c"
+}
+
+
+static gboolean identity_manager_view_search_entry_key_press_event_cb (IdentityManagerView* self, GdkEventKey* e) {
+       gboolean result = FALSE;
+       GdkEventKey _tmp0_ = {0};
+       guint _tmp1_ = 0U;
+       const gchar* _tmp2_ = NULL;
+#line 222 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_val_if_fail (self != NULL, FALSE);
+#line 222 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_val_if_fail (e != NULL, FALSE);
+#line 224 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = *e;
+#line 224 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp1_ = _tmp0_.keyval;
+#line 224 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp2_ = gdk_keyval_name (_tmp1_);
+#line 224 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (g_strcmp0 (_tmp2_, "Escape") == 0) {
+#line 1404 "moonshot-identity-management-view.c"
+               GtkEntry* _tmp3_ = NULL;
+#line 225 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp3_ = self->priv->search_entry;
+#line 225 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               gtk_entry_set_text (_tmp3_, "");
+#line 1410 "moonshot-identity-management-view.c"
+       }
+#line 229 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       result = FALSE;
+#line 229 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       return result;
+#line 1416 "moonshot-identity-management-view.c"
+}
+
+
+static const gchar* string_to_string (const gchar* self) {
+       const gchar* result = NULL;
+#line 1420 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 1421 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       result = self;
+#line 1421 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       return result;
+#line 1428 "moonshot-identity-management-view.c"
+}
+
+
+static void identity_manager_view_load_id_cards (IdentityManagerView* self) {
+       MoonshotLogger* _tmp0_ = NULL;
+       CustomVBox* _tmp1_ = NULL;
+       GtkListStore* _tmp2_ = NULL;
+       GeeLinkedList* card_list = NULL;
+       IdentityManagerModel* _tmp3_ = NULL;
+       GeeLinkedList* _tmp4_ = NULL;
+       GeeLinkedList* _tmp5_ = NULL;
+#line 232 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (self != NULL);
+#line 233 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = identity_manager_view_logger;
+#line 233 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       moonshot_logger_trace (_tmp0_, "load_id_cards", NULL);
+#line 235 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp1_ = self->priv->custom_vbox;
+#line 235 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       custom_vbox_clear (_tmp1_);
+#line 236 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp2_ = self->priv->listmodel;
+#line 236 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_list_store_clear (_tmp2_);
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp3_ = self->identities_manager;
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp4_ = identity_manager_model_get_card_list (_tmp3_);
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       card_list = _tmp4_;
+#line 238 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp5_ = card_list;
+#line 238 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (_tmp5_ == NULL) {
+#line 239 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_object_unref0 (card_list);
+#line 239 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               return;
+#line 1468 "moonshot-identity-management-view.c"
+       }
+       {
+               GeeLinkedList* _id_card_list = NULL;
+               GeeLinkedList* _tmp6_ = NULL;
+               GeeLinkedList* _tmp7_ = NULL;
+               gint _id_card_size = 0;
+               GeeLinkedList* _tmp8_ = NULL;
+               gint _tmp9_ = 0;
+               gint _tmp10_ = 0;
+               gint _id_card_index = 0;
+#line 242 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp6_ = card_list;
+#line 242 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp7_ = _g_object_ref0 (_tmp6_);
+#line 242 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _id_card_list = _tmp7_;
+#line 242 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp8_ = _id_card_list;
+#line 242 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp9_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp8_);
+#line 242 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp10_ = _tmp9_;
+#line 242 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _id_card_size = _tmp10_;
+#line 242 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _id_card_index = -1;
+#line 242 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               while (TRUE) {
+#line 1497 "moonshot-identity-management-view.c"
+                       gint _tmp11_ = 0;
+                       gint _tmp12_ = 0;
+                       gint _tmp13_ = 0;
+                       IdCard* id_card = NULL;
+                       GeeLinkedList* _tmp14_ = NULL;
+                       gint _tmp15_ = 0;
+                       gpointer _tmp16_ = NULL;
+                       MoonshotLogger* _tmp17_ = NULL;
+                       IdCard* _tmp18_ = NULL;
+                       const gchar* _tmp19_ = NULL;
+                       const gchar* _tmp20_ = NULL;
+                       const gchar* _tmp21_ = NULL;
+                       gchar* _tmp22_ = NULL;
+                       gchar* _tmp23_ = NULL;
+                       IdCard* _tmp24_ = NULL;
+                       IdCard* _tmp25_ = NULL;
+                       IdCardWidget* _tmp26_ = NULL;
+                       IdCardWidget* _tmp27_ = NULL;
+#line 242 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp11_ = _id_card_index;
+#line 242 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _id_card_index = _tmp11_ + 1;
+#line 242 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp12_ = _id_card_index;
+#line 242 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp13_ = _id_card_size;
+#line 242 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       if (!(_tmp12_ < _tmp13_)) {
+#line 242 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               break;
+#line 1528 "moonshot-identity-management-view.c"
+                       }
+#line 242 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp14_ = _id_card_list;
+#line 242 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp15_ = _id_card_index;
+#line 242 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp16_ = gee_abstract_list_get ((GeeAbstractList*) _tmp14_, _tmp15_);
+#line 242 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       id_card = (IdCard*) _tmp16_;
+#line 243 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp17_ = identity_manager_view_logger;
+#line 243 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp18_ = id_card;
+#line 243 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp19_ = id_card_get_display_name (_tmp18_);
+#line 243 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp20_ = _tmp19_;
+#line 243 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp21_ = string_to_string (_tmp20_);
+#line 243 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp22_ = g_strconcat ("load_id_cards: Loading card with display name '", _tmp21_, "'", NULL);
+#line 243 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp23_ = _tmp22_;
+#line 243 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       moonshot_logger_trace (_tmp17_, _tmp23_, NULL);
+#line 243 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _g_free0 (_tmp23_);
+#line 244 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp24_ = id_card;
+#line 244 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       identity_manager_view_add_id_card_data (self, _tmp24_);
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp25_ = id_card;
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp26_ = identity_manager_view_add_id_card_widget (self, _tmp25_);
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp27_ = _tmp26_;
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _g_object_unref0 (_tmp27_);
+#line 242 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _g_object_unref0 (id_card);
+#line 1570 "moonshot-identity-management-view.c"
+               }
+#line 242 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_object_unref0 (_id_card_list);
+#line 1574 "moonshot-identity-management-view.c"
+       }
+#line 232 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (card_list);
+#line 1578 "moonshot-identity-management-view.c"
+}
+
+
+static IdCard* identity_manager_view_update_id_card_data (IdentityManagerView* self, IdentityDialog* dialog, IdCard* id_card) {
+       IdCard* result = NULL;
+       IdCard* _tmp0_ = NULL;
+       IdentityDialog* _tmp1_ = NULL;
+       const gchar* _tmp2_ = NULL;
+       const gchar* _tmp3_ = NULL;
+       IdCard* _tmp4_ = NULL;
+       IdentityDialog* _tmp5_ = NULL;
+       const gchar* _tmp6_ = NULL;
+       const gchar* _tmp7_ = NULL;
+       IdCard* _tmp8_ = NULL;
+       IdentityDialog* _tmp9_ = NULL;
+       const gchar* _tmp10_ = NULL;
+       const gchar* _tmp11_ = NULL;
+       IdCard* _tmp12_ = NULL;
+       IdentityDialog* _tmp13_ = NULL;
+       const gchar* _tmp14_ = NULL;
+       const gchar* _tmp15_ = NULL;
+       IdCard* _tmp16_ = NULL;
+       IdentityDialog* _tmp17_ = NULL;
+       gboolean _tmp18_ = FALSE;
+       gboolean _tmp19_ = FALSE;
+       IdCard* _tmp20_ = NULL;
+       IdentityDialog* _tmp21_ = NULL;
+       GeeArrayList* _tmp22_ = NULL;
+       GeeArrayList* _tmp23_ = NULL;
+       IdentityDialog* _tmp24_ = NULL;
+       gboolean _tmp25_ = FALSE;
+       IdCard* _tmp27_ = NULL;
+       IdCard* _tmp28_ = NULL;
+#line 249 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 249 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_val_if_fail (dialog != NULL, NULL);
+#line 249 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_val_if_fail (id_card != NULL, NULL);
+#line 251 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = id_card;
+#line 251 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp1_ = dialog;
+#line 251 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp2_ = identity_dialog_get_display_name (_tmp1_);
+#line 251 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp3_ = _tmp2_;
+#line 251 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       id_card_set_display_name (_tmp0_, _tmp3_);
+#line 252 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp4_ = id_card;
+#line 252 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp5_ = dialog;
+#line 252 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp6_ = identity_dialog_get_issuer (_tmp5_);
+#line 252 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp7_ = _tmp6_;
+#line 252 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       id_card_set_issuer (_tmp4_, _tmp7_);
+#line 253 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp8_ = id_card;
+#line 253 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp9_ = dialog;
+#line 253 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp10_ = identity_dialog_get_username (_tmp9_);
+#line 253 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp11_ = _tmp10_;
+#line 253 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       id_card_set_username (_tmp8_, _tmp11_);
+#line 254 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp12_ = id_card;
+#line 254 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp13_ = dialog;
+#line 254 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp14_ = identity_dialog_get_password (_tmp13_);
+#line 254 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp15_ = _tmp14_;
+#line 254 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       id_card_set_password (_tmp12_, _tmp15_);
+#line 255 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp16_ = id_card;
+#line 255 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp17_ = dialog;
+#line 255 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp18_ = identity_dialog_get_store_password (_tmp17_);
+#line 255 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp19_ = _tmp18_;
+#line 255 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       id_card_set_store_password (_tmp16_, _tmp19_);
+#line 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp20_ = id_card;
+#line 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp21_ = dialog;
+#line 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp22_ = identity_dialog_get_services (_tmp21_);
+#line 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp23_ = _tmp22_;
+#line 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       id_card_update_services_from_list (_tmp20_, _tmp23_);
+#line 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (_tmp23_);
+#line 259 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp24_ = dialog;
+#line 259 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp25_ = _tmp24_->clear_trust_anchor;
+#line 259 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (_tmp25_) {
+#line 1686 "moonshot-identity-management-view.c"
+               IdCard* _tmp26_ = NULL;
+#line 260 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp26_ = id_card;
+#line 260 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               id_card_clear_trust_anchor (_tmp26_);
+#line 1692 "moonshot-identity-management-view.c"
+       }
+#line 263 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp27_ = id_card;
+#line 263 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp28_ = _g_object_ref0 (_tmp27_);
+#line 263 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       result = _tmp28_;
+#line 263 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       return result;
+#line 1702 "moonshot-identity-management-view.c"
+}
+
+
+static void identity_manager_view_add_id_card_data (IdentityManagerView* self, IdCard* id_card) {
+       GtkTreeIter iter = {0};
+       GdkPixbuf* pixbuf = NULL;
+       GtkListStore* _tmp0_ = NULL;
+       GtkTreeIter _tmp1_ = {0};
+       IdCard* _tmp2_ = NULL;
+       GdkPixbuf* _tmp3_ = NULL;
+       GtkListStore* _tmp4_ = NULL;
+       GtkTreeIter _tmp5_ = {0};
+       IdCard* _tmp6_ = NULL;
+       IdCard* _tmp7_ = NULL;
+       const gchar* _tmp8_ = NULL;
+       const gchar* _tmp9_ = NULL;
+       IdCard* _tmp10_ = NULL;
+       const gchar* _tmp11_ = NULL;
+       const gchar* _tmp12_ = NULL;
+       IdCard* _tmp13_ = NULL;
+       const gchar* _tmp14_ = NULL;
+       const gchar* _tmp15_ = NULL;
+#line 266 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (self != NULL);
+#line 266 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (id_card != NULL);
+#line 270 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = self->priv->listmodel;
+#line 270 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_list_store_append (_tmp0_, &_tmp1_);
+#line 270 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       iter = _tmp1_;
+#line 271 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp2_ = id_card;
+#line 271 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp3_ = get_pixbuf (_tmp2_);
+#line 271 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (pixbuf);
+#line 271 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       pixbuf = _tmp3_;
+#line 272 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp4_ = self->priv->listmodel;
+#line 272 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp5_ = iter;
+#line 272 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp6_ = id_card;
+#line 272 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp7_ = id_card;
+#line 272 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp8_ = id_card_get_issuer (_tmp7_);
+#line 272 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp9_ = _tmp8_;
+#line 272 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp10_ = id_card;
+#line 272 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp11_ = id_card_get_username (_tmp10_);
+#line 272 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp12_ = _tmp11_;
+#line 272 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp13_ = id_card;
+#line 272 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp14_ = id_card_get_password (_tmp13_);
+#line 272 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp15_ = _tmp14_;
+#line 272 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_list_store_set (_tmp4_, &_tmp5_, IDENTITY_MANAGER_VIEW_COLUMNS_IDCARD_COL, _tmp6_, IDENTITY_MANAGER_VIEW_COLUMNS_LOGO_COL, pixbuf, IDENTITY_MANAGER_VIEW_COLUMNS_ISSUER_COL, _tmp9_, IDENTITY_MANAGER_VIEW_COLUMNS_USERNAME_COL, _tmp12_, IDENTITY_MANAGER_VIEW_COLUMNS_PASSWORD_COL, _tmp15_, -1);
+#line 266 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (pixbuf);
+#line 1771 "moonshot-identity-management-view.c"
+}
+
+
+static void _identity_manager_view_widget_selected_cb_id_card_widget_expanded (IdCardWidget* _sender, gpointer self) {
+#line 294 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       identity_manager_view_widget_selected_cb ((IdentityManagerView*) self, _sender);
+#line 1778 "moonshot-identity-management-view.c"
+}
+
+
+static void _identity_manager_view_widget_unselected_cb_id_card_widget_collapsed (IdCardWidget* _sender, gpointer self) {
+#line 295 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       identity_manager_view_widget_unselected_cb ((IdentityManagerView*) self, _sender);
+#line 1785 "moonshot-identity-management-view.c"
+}
+
+
+static IdCardWidget* identity_manager_view_add_id_card_widget (IdentityManagerView* self, IdCard* id_card) {
+       IdCardWidget* result = NULL;
+       IdCard* _tmp0_ = NULL;
+       const gchar* _tmp2_ = NULL;
+       IdCard* _tmp3_ = NULL;
+       MoonshotLogger* _tmp7_ = NULL;
+       IdCard* _tmp8_ = NULL;
+       const gchar* _tmp9_ = NULL;
+       const gchar* _tmp10_ = NULL;
+       gchar* _tmp11_ = NULL;
+       gchar* _tmp12_ = NULL;
+       IdCardWidget* id_card_widget = NULL;
+       IdCard* _tmp13_ = NULL;
+       IdCardWidget* _tmp14_ = NULL;
+       CustomVBox* _tmp15_ = NULL;
+       IdCardWidget* _tmp16_ = NULL;
+       IdCardWidget* _tmp17_ = NULL;
+       IdCardWidget* _tmp18_ = NULL;
+       gboolean _tmp19_ = FALSE;
+       IdCard* _tmp20_ = NULL;
+#line 280 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 280 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_val_if_fail (id_card != NULL, NULL);
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = id_card;
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (_tmp0_ == NULL) {
+#line 1817 "moonshot-identity-management-view.c"
+               MoonshotLogger* _tmp1_ = NULL;
+#line 283 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp1_ = identity_manager_view_logger;
+#line 283 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               moonshot_logger_trace (_tmp1_, "add_id_card_widget: id_card == null; returning.", NULL);
+#line 284 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               result = NULL;
+#line 284 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               return result;
+#line 1827 "moonshot-identity-management-view.c"
+       }
+#line 289 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp3_ = self->priv->selected_card;
+#line 289 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (_tmp3_ == NULL) {
+#line 289 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp2_ = "[null selection]";
+#line 1835 "moonshot-identity-management-view.c"
+       } else {
+               IdCard* _tmp4_ = NULL;
+               const gchar* _tmp5_ = NULL;
+               const gchar* _tmp6_ = NULL;
+#line 289 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp4_ = self->priv->selected_card;
+#line 289 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp5_ = id_card_get_nai (_tmp4_);
+#line 289 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp6_ = _tmp5_;
+#line 289 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp2_ = _tmp6_;
+#line 1848 "moonshot-identity-management-view.c"
+       }
+#line 287 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp7_ = identity_manager_view_logger;
+#line 287 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp8_ = id_card;
+#line 287 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp9_ = id_card_get_nai (_tmp8_);
+#line 287 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp10_ = _tmp9_;
+#line 287 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp11_ = g_strdup_printf ("add_id_card_widget: id_card.nai='%s'; selected nai='%s'", _tmp10_, _tmp2_);
+#line 287 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp12_ = _tmp11_;
+#line 287 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       moonshot_logger_trace (_tmp7_, _tmp12_, NULL);
+#line 287 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_free0 (_tmp12_);
+#line 292 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp13_ = id_card;
+#line 292 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp14_ = id_card_widget_new (_tmp13_, self);
+#line 292 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_object_ref_sink (_tmp14_);
+#line 292 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       id_card_widget = _tmp14_;
+#line 293 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp15_ = self->priv->custom_vbox;
+#line 293 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp16_ = id_card_widget;
+#line 293 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       custom_vbox_add_id_card_widget (_tmp15_, _tmp16_);
+#line 294 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp17_ = id_card_widget;
+#line 294 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_signal_connect_object (_tmp17_, "expanded", (GCallback) _identity_manager_view_widget_selected_cb_id_card_widget_expanded, self, 0);
+#line 295 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp18_ = id_card_widget;
+#line 295 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_signal_connect_object (_tmp18_, "collapsed", (GCallback) _identity_manager_view_widget_unselected_cb_id_card_widget_collapsed, self, 0);
+#line 297 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp20_ = self->priv->selected_card;
+#line 297 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (_tmp20_ != NULL) {
+#line 1892 "moonshot-identity-management-view.c"
+               IdCard* _tmp21_ = NULL;
+               const gchar* _tmp22_ = NULL;
+               const gchar* _tmp23_ = NULL;
+               IdCard* _tmp24_ = NULL;
+               const gchar* _tmp25_ = NULL;
+               const gchar* _tmp26_ = NULL;
+#line 297 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp21_ = self->priv->selected_card;
+#line 297 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp22_ = id_card_get_nai (_tmp21_);
+#line 297 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp23_ = _tmp22_;
+#line 297 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp24_ = id_card;
+#line 297 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp25_ = id_card_get_nai (_tmp24_);
+#line 297 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp26_ = _tmp25_;
+#line 297 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp19_ = g_strcmp0 (_tmp23_, _tmp26_) == 0;
+#line 1913 "moonshot-identity-management-view.c"
+       } else {
+#line 297 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp19_ = FALSE;
+#line 1917 "moonshot-identity-management-view.c"
+       }
+#line 297 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (_tmp19_) {
+#line 1921 "moonshot-identity-management-view.c"
+               MoonshotLogger* _tmp27_ = NULL;
+               IdCardWidget* _tmp28_ = NULL;
+               IdCard* _tmp29_ = NULL;
+               IdCard* _tmp30_ = NULL;
+#line 298 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp27_ = identity_manager_view_logger;
+#line 298 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               moonshot_logger_trace (_tmp27_, "add_id_card_widget: Expanding selected idcard widget", NULL);
+#line 299 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp28_ = id_card_widget;
+#line 299 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               id_card_widget_expand (_tmp28_);
+#line 309 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp29_ = id_card;
+#line 309 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp30_ = _g_object_ref0 (_tmp29_);
+#line 309 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_object_unref0 (self->priv->selected_card);
+#line 309 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               self->priv->selected_card = _tmp30_;
+#line 1942 "moonshot-identity-management-view.c"
+       }
+#line 311 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       result = id_card_widget;
+#line 311 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       return result;
+#line 1948 "moonshot-identity-management-view.c"
+}
+
+
+static void identity_manager_view_widget_selected_cb (IdentityManagerView* self, IdCardWidget* id_card_widget) {
+       MoonshotLogger* _tmp0_ = NULL;
+       IdCardWidget* _tmp1_ = NULL;
+       IdCard* _tmp2_ = NULL;
+       IdCard* _tmp3_ = NULL;
+       const gchar* _tmp4_ = NULL;
+       const gchar* _tmp5_ = NULL;
+       const gchar* _tmp6_ = NULL;
+       gchar* _tmp7_ = NULL;
+       gchar* _tmp8_ = NULL;
+       IdCardWidget* _tmp9_ = NULL;
+       IdCard* _tmp10_ = NULL;
+       IdCard* _tmp11_ = NULL;
+       IdCard* _tmp12_ = NULL;
+       gboolean allow_removes = FALSE;
+       IdCardWidget* _tmp13_ = NULL;
+       IdCard* _tmp14_ = NULL;
+       IdCard* _tmp15_ = NULL;
+       gboolean _tmp16_ = FALSE;
+       GtkButton* _tmp17_ = NULL;
+       gboolean _tmp18_ = FALSE;
+       GtkButton* _tmp19_ = NULL;
+       CustomVBox* _tmp20_ = NULL;
+       IdCardWidget* _tmp21_ = NULL;
+       gboolean _tmp22_ = FALSE;
+#line 314 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (self != NULL);
+#line 314 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (id_card_widget != NULL);
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = identity_manager_view_logger;
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp1_ = id_card_widget;
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp2_ = id_card_widget_get_id_card (_tmp1_);
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp3_ = _tmp2_;
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp4_ = id_card_get_display_name (_tmp3_);
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp5_ = _tmp4_;
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp6_ = string_to_string (_tmp5_);
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp7_ = g_strconcat ("widget_selected_cb: id_card_widget.id_card.display_name='", _tmp6_, "'", NULL);
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp8_ = _tmp7_;
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       moonshot_logger_trace (_tmp0_, _tmp8_, NULL);
+#line 316 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_free0 (_tmp8_);
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp9_ = id_card_widget;
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp10_ = id_card_widget_get_id_card (_tmp9_);
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp11_ = _tmp10_;
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp12_ = _g_object_ref0 (_tmp11_);
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (self->priv->selected_card);
+#line 318 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       self->priv->selected_card = _tmp12_;
+#line 319 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp13_ = id_card_widget;
+#line 319 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp14_ = id_card_widget_get_id_card (_tmp13_);
+#line 319 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp15_ = _tmp14_;
+#line 319 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp16_ = id_card_is_no_identity (_tmp15_);
+#line 319 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       allow_removes = !_tmp16_;
+#line 320 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp17_ = self->priv->remove_button;
+#line 320 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp18_ = allow_removes;
+#line 320 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_widget_set_sensitive ((GtkWidget*) _tmp17_, _tmp18_);
+#line 321 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp19_ = self->priv->edit_button;
+#line 321 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_widget_set_sensitive ((GtkWidget*) _tmp19_, TRUE);
+#line 322 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp20_ = self->priv->custom_vbox;
+#line 322 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp21_ = id_card_widget;
+#line 322 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       custom_vbox_receive_expanded_event (_tmp20_, _tmp21_);
+#line 324 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp22_ = identity_manager_view_selection_in_progress (self);
+#line 324 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (_tmp22_) {
+#line 2045 "moonshot-identity-management-view.c"
+               GtkButton* _tmp23_ = NULL;
+#line 325 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp23_ = self->priv->send_button;
+#line 325 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               gtk_widget_set_sensitive ((GtkWidget*) _tmp23_, TRUE);
+#line 2051 "moonshot-identity-management-view.c"
+       }
+}
+
+
+static void identity_manager_view_widget_unselected_cb (IdentityManagerView* self, IdCardWidget* id_card_widget) {
+       MoonshotLogger* _tmp0_ = NULL;
+       IdCardWidget* _tmp1_ = NULL;
+       IdCard* _tmp2_ = NULL;
+       IdCard* _tmp3_ = NULL;
+       const gchar* _tmp4_ = NULL;
+       const gchar* _tmp5_ = NULL;
+       const gchar* _tmp6_ = NULL;
+       gchar* _tmp7_ = NULL;
+       gchar* _tmp8_ = NULL;
+       GtkButton* _tmp9_ = NULL;
+       GtkButton* _tmp10_ = NULL;
+       CustomVBox* _tmp11_ = NULL;
+       IdCardWidget* _tmp12_ = NULL;
+       GtkButton* _tmp13_ = NULL;
+#line 328 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (self != NULL);
+#line 328 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (id_card_widget != NULL);
+#line 330 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = identity_manager_view_logger;
+#line 330 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp1_ = id_card_widget;
+#line 330 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp2_ = id_card_widget_get_id_card (_tmp1_);
+#line 330 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp3_ = _tmp2_;
+#line 330 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp4_ = id_card_get_display_name (_tmp3_);
+#line 330 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp5_ = _tmp4_;
+#line 330 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp6_ = string_to_string (_tmp5_);
+#line 330 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp7_ = g_strconcat ("widget_unselected_cb: id_card_widget.id_card.display_name='", _tmp6_, "'", NULL);
+#line 330 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp8_ = _tmp7_;
+#line 330 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       moonshot_logger_trace (_tmp0_, _tmp8_, NULL);
+#line 330 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_free0 (_tmp8_);
+#line 332 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (self->priv->selected_card);
+#line 332 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       self->priv->selected_card = NULL;
+#line 333 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp9_ = self->priv->remove_button;
+#line 333 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_widget_set_sensitive ((GtkWidget*) _tmp9_, FALSE);
+#line 334 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp10_ = self->priv->edit_button;
+#line 334 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_widget_set_sensitive ((GtkWidget*) _tmp10_, FALSE);
+#line 335 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp11_ = self->priv->custom_vbox;
+#line 335 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp12_ = id_card_widget;
+#line 335 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       custom_vbox_receive_collapsed_event (_tmp11_, _tmp12_);
+#line 337 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp13_ = self->priv->send_button;
+#line 337 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_widget_set_sensitive ((GtkWidget*) _tmp13_, FALSE);
+#line 2119 "moonshot-identity-management-view.c"
+}
+
+
+static gchar* bool_to_string (gboolean self) {
+       gchar* result = NULL;
+#line 37 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       if (self) {
+#line 2127 "moonshot-identity-management-view.c"
+               gchar* _tmp0_ = NULL;
+#line 38 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp0_ = g_strdup ("true");
+#line 38 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               result = _tmp0_;
+#line 38 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               return result;
+#line 2135 "moonshot-identity-management-view.c"
+       } else {
+               gchar* _tmp1_ = NULL;
+#line 40 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp1_ = g_strdup ("false");
+#line 40 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               result = _tmp1_;
+#line 40 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               return result;
+#line 2144 "moonshot-identity-management-view.c"
+       }
+}
+
+
+gboolean identity_manager_view_add_identity (IdentityManagerView* self, IdCard* id_card, gboolean force_flat_file_store, GeeArrayList** old_duplicates) {
+       GeeArrayList* _vala_old_duplicates = NULL;
+       gboolean result = FALSE;
+       GtkMessageDialog* dialog = NULL;
+       IdCard* prev_id = NULL;
+       IdentityManagerModel* _tmp0_ = NULL;
+       IdCard* _tmp1_ = NULL;
+       const gchar* _tmp2_ = NULL;
+       const gchar* _tmp3_ = NULL;
+       gboolean _tmp4_ = FALSE;
+       IdCard* _tmp5_ = NULL;
+       const gchar* _tmp6_ = NULL;
+       IdCard* _tmp7_ = NULL;
+       MoonshotLogger* _tmp11_ = NULL;
+       gboolean _tmp12_ = FALSE;
+       gchar* _tmp13_ = NULL;
+       gchar* _tmp14_ = NULL;
+       IdCard* _tmp15_ = NULL;
+       const gchar* _tmp16_ = NULL;
+       const gchar* _tmp17_ = NULL;
+       gchar* _tmp18_ = NULL;
+       gchar* _tmp19_ = NULL;
+       IdCard* _tmp20_ = NULL;
+       gint ret = 0;
+       GtkMessageDialog* _tmp57_ = NULL;
+       gint _tmp58_ = 0;
+       GtkMessageDialog* _tmp59_ = NULL;
+       gint _tmp60_ = 0;
+#line 340 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_val_if_fail (self != NULL, FALSE);
+#line 340 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_val_if_fail (id_card != NULL, FALSE);
+#line 350 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = self->identities_manager;
+#line 350 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp1_ = id_card;
+#line 350 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp2_ = id_card_get_nai (_tmp1_);
+#line 350 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp3_ = _tmp2_;
+#line 350 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp4_ = force_flat_file_store;
+#line 350 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp5_ = identity_manager_model_find_id_card (_tmp0_, _tmp3_, _tmp4_);
+#line 350 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       prev_id = _tmp5_;
+#line 352 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp7_ = prev_id;
+#line 352 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (_tmp7_ != NULL) {
+#line 2199 "moonshot-identity-management-view.c"
+               IdCard* _tmp8_ = NULL;
+               const gchar* _tmp9_ = NULL;
+               const gchar* _tmp10_ = NULL;
+#line 352 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp8_ = prev_id;
+#line 352 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp9_ = id_card_get_display_name (_tmp8_);
+#line 352 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp10_ = _tmp9_;
+#line 352 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp6_ = _tmp10_;
+#line 2211 "moonshot-identity-management-view.c"
+       } else {
+#line 352 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp6_ = "null";
+#line 2215 "moonshot-identity-management-view.c"
+       }
+#line 351 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp11_ = identity_manager_view_logger;
+#line 351 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp12_ = force_flat_file_store;
+#line 351 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp13_ = bool_to_string (_tmp12_);
+#line 351 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp14_ = _tmp13_;
+#line 351 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp15_ = id_card;
+#line 351 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp16_ = id_card_get_display_name (_tmp15_);
+#line 351 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp17_ = _tmp16_;
+#line 351 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp18_ = g_strdup_printf ("add_identity(flat=%s, card='%s'): find_id_card returned %s", _tmp14_, _tmp17_, _tmp6_);
+#line 351 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp19_ = _tmp18_;
+#line 351 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       moonshot_logger_trace (_tmp11_, _tmp19_, NULL);
+#line 351 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_free0 (_tmp19_);
+#line 351 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_free0 (_tmp14_);
+#line 353 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp20_ = prev_id;
+#line 353 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (_tmp20_ != NULL) {
+#line 2245 "moonshot-identity-management-view.c"
+               gint flags = 0;
+               IdCard* _tmp21_ = NULL;
+               IdCard* _tmp22_ = NULL;
+               gint _tmp23_ = 0;
+               MoonshotLogger* _tmp24_ = NULL;
+               gint _tmp25_ = 0;
+               gchar* _tmp26_ = NULL;
+               gchar* _tmp27_ = NULL;
+               gchar* _tmp28_ = NULL;
+               gchar* _tmp29_ = NULL;
+               gint _tmp30_ = 0;
+#line 354 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp21_ = prev_id;
+#line 354 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp22_ = id_card;
+#line 354 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp23_ = id_card_Compare (_tmp21_, _tmp22_);
+#line 354 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               flags = _tmp23_;
+#line 355 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp24_ = identity_manager_view_logger;
+#line 355 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp25_ = flags;
+#line 355 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp26_ = g_strdup_printf ("%i", _tmp25_);
+#line 355 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp27_ = _tmp26_;
+#line 355 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp28_ = g_strconcat ("add_identity: compare returned ", _tmp27_, NULL);
+#line 355 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp29_ = _tmp28_;
+#line 355 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               moonshot_logger_trace (_tmp24_, _tmp29_, NULL);
+#line 355 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_free0 (_tmp29_);
+#line 355 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_free0 (_tmp27_);
+#line 356 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp30_ = flags;
+#line 356 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               if (_tmp30_ == 0) {
+#line 357 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       if ((&_vala_old_duplicates) != NULL) {
+#line 2289 "moonshot-identity-management-view.c"
+                               GeeArrayList* _tmp31_ = NULL;
+#line 358 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp31_ = gee_array_list_new (TYPE_ID_CARD, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL);
+#line 358 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _g_object_unref0 (_vala_old_duplicates);
+#line 358 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _vala_old_duplicates = _tmp31_;
+#line 2297 "moonshot-identity-management-view.c"
+                       }
+#line 361 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       result = FALSE;
+#line 361 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _g_object_unref0 (prev_id);
+#line 361 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _g_object_unref0 (dialog);
+#line 361 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       if (old_duplicates) {
+#line 361 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               *old_duplicates = _vala_old_duplicates;
+#line 2309 "moonshot-identity-management-view.c"
+                       } else {
+#line 361 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _g_object_unref0 (_vala_old_duplicates);
+#line 2313 "moonshot-identity-management-view.c"
+                       }
+#line 361 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       return result;
+#line 2317 "moonshot-identity-management-view.c"
+               } else {
+                       gint _tmp32_ = 0;
+#line 362 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp32_ = flags;
+#line 362 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       if ((_tmp32_ & (1 << ID_CARD_DIFF_FLAGS_DISPLAY_NAME)) != 0) {
+#line 2324 "moonshot-identity-management-view.c"
+                               const gchar* _tmp33_ = NULL;
+                               IdCard* _tmp34_ = NULL;
+                               const gchar* _tmp35_ = NULL;
+                               const gchar* _tmp36_ = NULL;
+                               IdCard* _tmp37_ = NULL;
+                               const gchar* _tmp38_ = NULL;
+                               const gchar* _tmp39_ = NULL;
+                               IdCard* _tmp40_ = NULL;
+                               const gchar* _tmp41_ = NULL;
+                               const gchar* _tmp42_ = NULL;
+                               GtkMessageDialog* _tmp43_ = NULL;
+#line 363 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp33_ = _ ("Would you like to replace ID Card '%s' using nai '%s' with the new ID " \
+"Card '%s'?");
+#line 363 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp34_ = prev_id;
+#line 363 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp35_ = id_card_get_display_name (_tmp34_);
+#line 363 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp36_ = _tmp35_;
+#line 363 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp37_ = prev_id;
+#line 363 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp38_ = id_card_get_nai (_tmp37_);
+#line 363 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp39_ = _tmp38_;
+#line 363 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp40_ = id_card;
+#line 363 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp41_ = id_card_get_display_name (_tmp40_);
+#line 363 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp42_ = _tmp41_;
+#line 363 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp43_ = (GtkMessageDialog*) gtk_message_dialog_new ((GtkWindow*) self, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_QUESTION, GTK_BUTTONS_YES_NO, _tmp33_, _tmp36_, _tmp39_, _tmp42_);
+#line 363 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               g_object_ref_sink (_tmp43_);
+#line 363 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _g_object_unref0 (dialog);
+#line 363 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               dialog = _tmp43_;
+#line 2364 "moonshot-identity-management-view.c"
+                       } else {
+                               const gchar* _tmp44_ = NULL;
+                               IdCard* _tmp45_ = NULL;
+                               const gchar* _tmp46_ = NULL;
+                               const gchar* _tmp47_ = NULL;
+                               IdCard* _tmp48_ = NULL;
+                               const gchar* _tmp49_ = NULL;
+                               const gchar* _tmp50_ = NULL;
+                               GtkMessageDialog* _tmp51_ = NULL;
+#line 372 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp44_ = _ ("Would you like to update ID Card '%s' using nai '%s'?");
+#line 372 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp45_ = id_card;
+#line 372 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp46_ = id_card_get_display_name (_tmp45_);
+#line 372 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp47_ = _tmp46_;
+#line 372 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp48_ = id_card;
+#line 372 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp49_ = id_card_get_nai (_tmp48_);
+#line 372 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp50_ = _tmp49_;
+#line 372 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp51_ = (GtkMessageDialog*) gtk_message_dialog_new ((GtkWindow*) self, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_QUESTION, GTK_BUTTONS_YES_NO, _tmp44_, _tmp47_, _tmp50_);
+#line 372 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               g_object_ref_sink (_tmp51_);
+#line 372 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _g_object_unref0 (dialog);
+#line 372 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               dialog = _tmp51_;
+#line 2396 "moonshot-identity-management-view.c"
+                       }
+               }
+       } else {
+               const gchar* _tmp52_ = NULL;
+               IdCard* _tmp53_ = NULL;
+               const gchar* _tmp54_ = NULL;
+               const gchar* _tmp55_ = NULL;
+               GtkMessageDialog* _tmp56_ = NULL;
+#line 381 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp52_ = _ ("Would you like to add '%s' ID Card to the ID Card Organizer?");
+#line 381 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp53_ = id_card;
+#line 381 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp54_ = id_card_get_display_name (_tmp53_);
+#line 381 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp55_ = _tmp54_;
+#line 381 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp56_ = (GtkMessageDialog*) gtk_message_dialog_new ((GtkWindow*) self, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_QUESTION, GTK_BUTTONS_YES_NO, _tmp52_, _tmp55_);
+#line 381 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               g_object_ref_sink (_tmp56_);
+#line 381 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_object_unref0 (dialog);
+#line 381 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               dialog = _tmp56_;
+#line 2421 "moonshot-identity-management-view.c"
+       }
+#line 388 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp57_ = dialog;
+#line 388 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp58_ = gtk_dialog_run ((GtkDialog*) _tmp57_);
+#line 388 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       ret = _tmp58_;
+#line 389 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp59_ = dialog;
+#line 389 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_object_destroy ((GtkObject*) _tmp59_);
+#line 392 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp60_ = ret;
+#line 392 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (_tmp60_ == ((gint) GTK_RESPONSE_YES)) {
+#line 2437 "moonshot-identity-management-view.c"
+               IdentityManagerModel* _tmp61_ = NULL;
+               IdCard* _tmp62_ = NULL;
+               gboolean _tmp63_ = FALSE;
+               GeeArrayList* _tmp64_ = NULL;
+#line 393 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp61_ = self->identities_manager;
+#line 393 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp62_ = id_card;
+#line 393 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp63_ = force_flat_file_store;
+#line 393 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               identity_manager_model_add_card (_tmp61_, _tmp62_, _tmp63_, &_tmp64_);
+#line 393 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_object_unref0 (_vala_old_duplicates);
+#line 393 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _vala_old_duplicates = _tmp64_;
+#line 394 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               result = TRUE;
+#line 394 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_object_unref0 (prev_id);
+#line 394 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_object_unref0 (dialog);
+#line 394 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               if (old_duplicates) {
+#line 394 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       *old_duplicates = _vala_old_duplicates;
+#line 2464 "moonshot-identity-management-view.c"
+               } else {
+#line 394 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _g_object_unref0 (_vala_old_duplicates);
+#line 2468 "moonshot-identity-management-view.c"
+               }
+#line 394 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               return result;
+#line 2472 "moonshot-identity-management-view.c"
+       } else {
+#line 397 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               if ((&_vala_old_duplicates) != NULL) {
+#line 2476 "moonshot-identity-management-view.c"
+                       GeeArrayList* _tmp65_ = NULL;
+#line 398 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp65_ = gee_array_list_new (TYPE_ID_CARD, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL);
+#line 398 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _g_object_unref0 (_vala_old_duplicates);
+#line 398 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _vala_old_duplicates = _tmp65_;
+#line 2484 "moonshot-identity-management-view.c"
+               }
+#line 400 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               result = FALSE;
+#line 400 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_object_unref0 (prev_id);
+#line 400 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_object_unref0 (dialog);
+#line 400 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               if (old_duplicates) {
+#line 400 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       *old_duplicates = _vala_old_duplicates;
+#line 2496 "moonshot-identity-management-view.c"
+               } else {
+#line 400 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _g_object_unref0 (_vala_old_duplicates);
+#line 2500 "moonshot-identity-management-view.c"
+               }
+#line 400 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               return result;
+#line 2504 "moonshot-identity-management-view.c"
+       }
+#line 340 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (prev_id);
+#line 340 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (dialog);
+#line 340 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (old_duplicates) {
+#line 340 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               *old_duplicates = _vala_old_duplicates;
+#line 2514 "moonshot-identity-management-view.c"
+       } else {
+#line 340 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_object_unref0 (_vala_old_duplicates);
+#line 2518 "moonshot-identity-management-view.c"
+       }
+}
+
+
+static void identity_manager_view_add_identity_cb (IdentityManagerView* self) {
+       IdentityDialog* dialog = NULL;
+       IdentityDialog* _tmp0_ = NULL;
+       gint _result_ = 0;
+       gint _tmp5_ = 0;
+       IdentityDialog* _tmp12_ = NULL;
+#line 404 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (self != NULL);
+#line 406 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = identity_dialog_new (self);
+#line 406 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_object_ref_sink (_tmp0_);
+#line 406 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       dialog = _tmp0_;
+#line 407 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _result_ = (gint) GTK_RESPONSE_CANCEL;
+#line 408 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       while (TRUE) {
+#line 2541 "moonshot-identity-management-view.c"
+               IdentityDialog* _tmp1_ = NULL;
+               gboolean _tmp2_ = FALSE;
+               IdentityDialog* _tmp3_ = NULL;
+               gint _tmp4_ = 0;
+#line 408 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp1_ = dialog;
+#line 408 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp2_ = _tmp1_->complete;
+#line 408 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               if (!(!_tmp2_)) {
+#line 408 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       break;
+#line 2554 "moonshot-identity-management-view.c"
+               }
+#line 409 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp3_ = dialog;
+#line 409 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp4_ = gtk_dialog_run ((GtkDialog*) _tmp3_);
+#line 409 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _result_ = _tmp4_;
+#line 2562 "moonshot-identity-management-view.c"
+       }
+#line 411 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp5_ = _result_;
+#line 411 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       switch (_tmp5_) {
+#line 411 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               case GTK_RESPONSE_OK:
+#line 2570 "moonshot-identity-management-view.c"
+               {
+                       IdentityManagerModel* _tmp6_ = NULL;
+                       IdentityDialog* _tmp7_ = NULL;
+                       IdCard* _tmp8_ = NULL;
+                       IdCard* _tmp9_ = NULL;
+                       IdCard* _tmp10_ = NULL;
+                       IdCard* _tmp11_ = NULL;
+#line 413 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp6_ = self->identities_manager;
+#line 413 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp7_ = dialog;
+#line 413 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp8_ = id_card_new ();
+#line 413 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp9_ = _tmp8_;
+#line 413 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp10_ = identity_manager_view_update_id_card_data (self, _tmp7_, _tmp9_);
+#line 413 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp11_ = _tmp10_;
+#line 413 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       identity_manager_model_add_card (_tmp6_, _tmp11_, FALSE, NULL);
+#line 413 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _g_object_unref0 (_tmp11_);
+#line 413 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _g_object_unref0 (_tmp9_);
+#line 414 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       break;
+#line 2598 "moonshot-identity-management-view.c"
+               }
+               default:
+               {
+#line 416 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       break;
+#line 2604 "moonshot-identity-management-view.c"
+               }
+       }
+#line 418 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp12_ = dialog;
+#line 418 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_object_destroy ((GtkObject*) _tmp12_);
+#line 404 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (dialog);
+#line 2613 "moonshot-identity-management-view.c"
+}
+
+
+static void identity_manager_view_edit_identity_cb (IdentityManagerView* self, IdCard* card) {
+       IdentityDialog* dialog = NULL;
+       IdCard* _tmp0_ = NULL;
+       const gchar* _tmp1_ = NULL;
+       IdentityDialog* _tmp2_ = NULL;
+       gint _result_ = 0;
+       gint _tmp7_ = 0;
+       IdentityDialog* _tmp15_ = NULL;
+#line 421 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (self != NULL);
+#line 421 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (card != NULL);
+#line 423 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = card;
+#line 423 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp1_ = _ ("Edit Identity");
+#line 423 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp2_ = identity_dialog_new_with_idcard (_tmp0_, _tmp1_, self);
+#line 423 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_object_ref_sink (_tmp2_);
+#line 423 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       dialog = _tmp2_;
+#line 424 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _result_ = (gint) GTK_RESPONSE_CANCEL;
+#line 425 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       while (TRUE) {
+#line 2643 "moonshot-identity-management-view.c"
+               IdentityDialog* _tmp3_ = NULL;
+               gboolean _tmp4_ = FALSE;
+               IdentityDialog* _tmp5_ = NULL;
+               gint _tmp6_ = 0;
+#line 425 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp3_ = dialog;
+#line 425 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp4_ = _tmp3_->complete;
+#line 425 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               if (!(!_tmp4_)) {
+#line 425 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       break;
+#line 2656 "moonshot-identity-management-view.c"
+               }
+#line 426 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp5_ = dialog;
+#line 426 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp6_ = gtk_dialog_run ((GtkDialog*) _tmp5_);
+#line 426 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _result_ = _tmp6_;
+#line 2664 "moonshot-identity-management-view.c"
+       }
+#line 428 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp7_ = _result_;
+#line 428 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       switch (_tmp7_) {
+#line 428 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               case GTK_RESPONSE_OK:
+#line 2672 "moonshot-identity-management-view.c"
+               {
+                       IdentityManagerModel* _tmp8_ = NULL;
+                       IdentityDialog* _tmp9_ = NULL;
+                       IdCard* _tmp10_ = NULL;
+                       IdCard* _tmp11_ = NULL;
+                       IdCard* _tmp12_ = NULL;
+                       IdCard* _tmp13_ = NULL;
+                       IdCard* _tmp14_ = NULL;
+#line 430 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp8_ = self->identities_manager;
+#line 430 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp9_ = dialog;
+#line 430 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp10_ = card;
+#line 430 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp11_ = identity_manager_view_update_id_card_data (self, _tmp9_, _tmp10_);
+#line 430 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp12_ = _tmp11_;
+#line 430 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp13_ = identity_manager_model_update_card (_tmp8_, _tmp12_);
+#line 430 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp14_ = _tmp13_;
+#line 430 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _g_object_unref0 (_tmp14_);
+#line 430 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _g_object_unref0 (_tmp12_);
+#line 433 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       identity_manager_view_report_duplicate_nais (self);
+#line 434 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       break;
+#line 2703 "moonshot-identity-management-view.c"
+               }
+               default:
+               {
+#line 436 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       break;
+#line 2709 "moonshot-identity-management-view.c"
+               }
+       }
+#line 438 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp15_ = dialog;
+#line 438 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_object_destroy ((GtkObject*) _tmp15_);
+#line 421 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (dialog);
+#line 2718 "moonshot-identity-management-view.c"
+}
+
+
+static void identity_manager_view_remove_identity (IdentityManagerView* self, IdCard* id_card) {
+       MoonshotLogger* _tmp0_ = NULL;
+       IdCard* _tmp1_ = NULL;
+       const gchar* _tmp2_ = NULL;
+       const gchar* _tmp3_ = NULL;
+       const gchar* _tmp4_ = NULL;
+       gchar* _tmp5_ = NULL;
+       gchar* _tmp6_ = NULL;
+       IdentityManagerModel* _tmp7_ = NULL;
+       IdCard* _tmp8_ = NULL;
+       GtkButton* _tmp9_ = NULL;
+       GtkButton* _tmp10_ = NULL;
+       GtkButton* _tmp11_ = NULL;
+#line 441 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (self != NULL);
+#line 441 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (id_card != NULL);
+#line 443 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = identity_manager_view_logger;
+#line 443 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp1_ = id_card;
+#line 443 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp2_ = id_card_get_display_name (_tmp1_);
+#line 443 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp3_ = _tmp2_;
+#line 443 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp4_ = string_to_string (_tmp3_);
+#line 443 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp5_ = g_strconcat ("remove_identity: id_card.display_name='", _tmp4_, "'", NULL);
+#line 443 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp6_ = _tmp5_;
+#line 443 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       moonshot_logger_trace (_tmp0_, _tmp6_, NULL);
+#line 443 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_free0 (_tmp6_);
+#line 445 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (self->priv->selected_card);
+#line 445 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       self->priv->selected_card = NULL;
+#line 446 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp7_ = self->identities_manager;
+#line 446 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp8_ = id_card;
+#line 446 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       identity_manager_model_remove_card (_tmp7_, _tmp8_);
+#line 449 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp9_ = self->priv->edit_button;
+#line 449 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_widget_set_sensitive ((GtkWidget*) _tmp9_, FALSE);
+#line 450 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp10_ = self->priv->remove_button;
+#line 450 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_widget_set_sensitive ((GtkWidget*) _tmp10_, FALSE);
+#line 451 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp11_ = self->priv->send_button;
+#line 451 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_widget_set_sensitive ((GtkWidget*) _tmp11_, FALSE);
+#line 2779 "moonshot-identity-management-view.c"
+}
+
+
+static void identity_manager_view_redraw_id_card_widgets (IdentityManagerView* self) {
+       GtkTreeIter iter = {0};
+       IdCard* id_card = NULL;
+       CustomVBox* _tmp0_ = NULL;
+       GtkTreeModelFilter* _tmp1_ = NULL;
+       GtkTreeIter _tmp2_ = {0};
+       gboolean _tmp3_ = FALSE;
+#line 454 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (self != NULL);
+#line 459 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = self->priv->custom_vbox;
+#line 459 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       custom_vbox_clear (_tmp0_);
+#line 461 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp1_ = self->priv->filter;
+#line 461 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp3_ = gtk_tree_model_get_iter_first ((GtkTreeModel*) _tmp1_, &_tmp2_);
+#line 461 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       iter = _tmp2_;
+#line 461 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (_tmp3_) {
+#line 2804 "moonshot-identity-management-view.c"
+               {
+                       gboolean _tmp4_ = FALSE;
+#line 463 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp4_ = TRUE;
+#line 463 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       while (TRUE) {
+#line 2811 "moonshot-identity-management-view.c"
+                               GtkTreeModelFilter* _tmp7_ = NULL;
+                               GtkTreeIter _tmp8_ = {0};
+                               IdCard* _tmp9_ = NULL;
+                               IdCardWidget* _tmp10_ = NULL;
+                               IdCardWidget* _tmp11_ = NULL;
+#line 463 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               if (!_tmp4_) {
+#line 2819 "moonshot-identity-management-view.c"
+                                       GtkTreeModelFilter* _tmp5_ = NULL;
+                                       gboolean _tmp6_ = FALSE;
+#line 470 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp5_ = self->priv->filter;
+#line 470 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp6_ = gtk_tree_model_iter_next ((GtkTreeModel*) _tmp5_, &iter);
+#line 470 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       if (!_tmp6_) {
+#line 470 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               break;
+#line 2830 "moonshot-identity-management-view.c"
+                                       }
+                               }
+#line 463 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp4_ = FALSE;
+#line 465 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp7_ = self->priv->filter;
+#line 465 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp8_ = iter;
+#line 465 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               gtk_tree_model_get ((GtkTreeModel*) _tmp7_, &_tmp8_, IDENTITY_MANAGER_VIEW_COLUMNS_IDCARD_COL, &id_card, -1);
+#line 468 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp9_ = id_card;
+#line 468 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp10_ = identity_manager_view_add_id_card_widget (self, _tmp9_);
+#line 468 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp11_ = _tmp10_;
+#line 468 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _g_object_unref0 (_tmp11_);
+#line 2849 "moonshot-identity-management-view.c"
+                       }
+               }
+       }
+#line 454 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (id_card);
+#line 2855 "moonshot-identity-management-view.c"
+}
+
+
+static void identity_manager_view_remove_identity_cb (IdentityManagerView* self, IdCard* id_card) {
+       gboolean remove = FALSE;
+       const gchar* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+       gchar* _tmp2_ = NULL;
+       gchar* _tmp3_ = NULL;
+       gchar* _tmp4_ = NULL;
+       IdCard* _tmp5_ = NULL;
+       const gchar* _tmp6_ = NULL;
+       const gchar* _tmp7_ = NULL;
+       gchar* _tmp8_ = NULL;
+       gchar* _tmp9_ = NULL;
+       gchar* _tmp10_ = NULL;
+       gchar* _tmp11_ = NULL;
+       const gchar* _tmp12_ = NULL;
+       gchar* _tmp13_ = NULL;
+       gchar* _tmp14_ = NULL;
+       gboolean _tmp15_ = FALSE;
+       gboolean _tmp16_ = FALSE;
+       gboolean _tmp17_ = FALSE;
+#line 474 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (self != NULL);
+#line 474 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (id_card != NULL);
+#line 476 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = _ ("You are about to remove the identity '%s'.");
+#line 476 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp1_ = g_strconcat ("<span font-weight='heavy'>", _tmp0_, NULL);
+#line 476 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp2_ = _tmp1_;
+#line 476 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp3_ = g_strconcat (_tmp2_, "</span>", NULL);
+#line 476 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp4_ = _tmp3_;
+#line 476 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp5_ = id_card;
+#line 476 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp6_ = id_card_get_display_name (_tmp5_);
+#line 476 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp7_ = _tmp6_;
+#line 476 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp8_ = g_markup_printf_escaped (_tmp4_, _tmp7_);
+#line 476 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp9_ = _tmp8_;
+#line 476 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp10_ = g_strconcat (_tmp9_, "\n\n", NULL);
+#line 476 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp11_ = _tmp10_;
+#line 476 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp12_ = _ ("Are you sure you want to do this?");
+#line 476 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp13_ = g_strconcat (_tmp11_, _tmp12_, NULL);
+#line 476 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp14_ = _tmp13_;
+#line 476 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp15_ = warning_dialog_confirm ((GtkWindow*) self, _tmp14_, "delete_idcard");
+#line 476 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp16_ = _tmp15_;
+#line 476 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_free0 (_tmp14_);
+#line 476 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_free0 (_tmp11_);
+#line 476 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_free0 (_tmp9_);
+#line 476 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_free0 (_tmp4_);
+#line 476 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_free0 (_tmp2_);
+#line 476 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       remove = _tmp16_;
+#line 482 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp17_ = remove;
+#line 482 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (_tmp17_) {
+#line 2933 "moonshot-identity-management-view.c"
+               IdCard* _tmp18_ = NULL;
+#line 483 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp18_ = id_card;
+#line 483 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               identity_manager_view_remove_identity (self, _tmp18_);
+#line 2939 "moonshot-identity-management-view.c"
+       }
+}
+
+
+static void identity_manager_view_set_prompting_service (IdentityManagerView* self, const gchar* service) {
+       GtkLabel* prompting_service = NULL;
+       const gchar* _tmp0_ = NULL;
+       const gchar* _tmp1_ = NULL;
+       gchar* _tmp2_ = NULL;
+       gchar* _tmp3_ = NULL;
+       GtkLabel* _tmp4_ = NULL;
+       GtkLabel* _tmp5_ = NULL;
+       GtkLabel* selection_prompt = NULL;
+       const gchar* _tmp6_ = NULL;
+       GtkLabel* _tmp7_ = NULL;
+       GtkVBox* _tmp8_ = NULL;
+       GtkVBox* _tmp9_ = NULL;
+       GtkVBox* _tmp10_ = NULL;
+#line 486 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (self != NULL);
+#line 486 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (service != NULL);
+#line 488 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       identity_manager_view_clear_selection_prompts (self);
+#line 490 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = _ ("Identity requested for service:\n%s");
+#line 490 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp1_ = service;
+#line 490 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp2_ = g_strdup_printf (_tmp0_, _tmp1_);
+#line 490 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp3_ = _tmp2_;
+#line 490 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp4_ = (GtkLabel*) gtk_label_new (_tmp3_);
+#line 490 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_object_ref_sink (_tmp4_);
+#line 490 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp5_ = _tmp4_;
+#line 490 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_free0 (_tmp3_);
+#line 490 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       prompting_service = _tmp5_;
+#line 491 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_label_set_line_wrap (prompting_service, TRUE);
+#line 494 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_misc_set_alignment ((GtkMisc*) prompting_service, (gfloat) 0, (gfloat) 0.5);
+#line 496 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp6_ = _ ("Select your identity:");
+#line 496 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp7_ = (GtkLabel*) gtk_label_new (_tmp6_);
+#line 496 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_object_ref_sink (_tmp7_);
+#line 496 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       selection_prompt = _tmp7_;
+#line 497 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_misc_set_alignment ((GtkMisc*) selection_prompt, (gfloat) 0, (gfloat) 1);
+#line 499 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp8_ = self->priv->service_prompt_vbox;
+#line 499 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_box_pack_start ((GtkBox*) _tmp8_, (GtkWidget*) prompting_service, FALSE, FALSE, (guint) 12);
+#line 500 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp9_ = self->priv->service_prompt_vbox;
+#line 500 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_box_pack_start ((GtkBox*) _tmp9_, (GtkWidget*) selection_prompt, FALSE, FALSE, (guint) 2);
+#line 501 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp10_ = self->priv->service_prompt_vbox;
+#line 501 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_widget_show_all ((GtkWidget*) _tmp10_);
+#line 486 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (selection_prompt);
+#line 486 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (prompting_service);
+#line 3012 "moonshot-identity-management-view.c"
+}
+
+
+static void identity_manager_view_clear_selection_prompts (IdentityManagerView* self) {
+       GList* list = NULL;
+       GtkVBox* _tmp0_ = NULL;
+       GList* _tmp1_ = NULL;
+       GList* _tmp2_ = NULL;
+#line 504 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (self != NULL);
+#line 506 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = self->priv->service_prompt_vbox;
+#line 506 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp1_ = gtk_container_get_children ((GtkContainer*) _tmp0_);
+#line 506 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       list = _tmp1_;
+#line 507 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp2_ = list;
+#line 3031 "moonshot-identity-management-view.c"
+       {
+               GList* w_collection = NULL;
+               GList* w_it = NULL;
+#line 507 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               w_collection = _tmp2_;
+#line 507 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               for (w_it = w_collection; w_it != NULL; w_it = w_it->next) {
+#line 3039 "moonshot-identity-management-view.c"
+                       GtkWidget* _tmp3_ = NULL;
+                       GtkWidget* w = NULL;
+#line 507 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp3_ = _g_object_ref0 ((GtkWidget*) w_it->data);
+#line 507 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       w = _tmp3_;
+#line 3046 "moonshot-identity-management-view.c"
+                       {
+                               GtkVBox* _tmp4_ = NULL;
+                               GtkWidget* _tmp5_ = NULL;
+#line 509 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp4_ = self->priv->service_prompt_vbox;
+#line 509 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp5_ = w;
+#line 509 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               gtk_container_remove ((GtkContainer*) _tmp4_, _tmp5_);
+#line 507 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _g_object_unref0 (w);
+#line 3058 "moonshot-identity-management-view.c"
+                       }
+               }
+       }
+#line 504 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_list_free0 (list);
+#line 3064 "moonshot-identity-management-view.c"
+}
+
+
+void identity_manager_view_queue_identity_request (IdentityManagerView* self, IdentityRequest* request) {
+       gboolean queue_was_empty = FALSE;
+       gboolean _tmp0_ = FALSE;
+       GQueue* _tmp1_ = NULL;
+       IdentityRequest* _tmp2_ = NULL;
+       IdentityRequest* _tmp3_ = NULL;
+       gboolean _tmp4_ = FALSE;
+#line 514 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (self != NULL);
+#line 514 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (request != NULL);
+#line 516 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = identity_manager_view_selection_in_progress (self);
+#line 516 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       queue_was_empty = !_tmp0_;
+#line 517 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp1_ = self->priv->request_queue;
+#line 517 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp2_ = request;
+#line 517 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp3_ = _g_object_ref0 (_tmp2_);
+#line 517 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_queue_push_tail (_tmp1_, _tmp3_);
+#line 519 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp4_ = queue_was_empty;
+#line 519 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (_tmp4_) {
+#line 3095 "moonshot-identity-management-view.c"
+               IdentityRequest* _tmp5_ = NULL;
+               GSList* _tmp6_ = NULL;
+               GtkTreeModelFilter* _tmp7_ = NULL;
+               IdentityRequest* _tmp8_ = NULL;
+               const gchar* _tmp9_ = NULL;
+               GtkCheckButton* _tmp10_ = NULL;
+               CustomVBox* _tmp11_ = NULL;
+               IdCard* _tmp12_ = NULL;
+               IdCardWidget* _tmp13_ = NULL;
+               IdCardWidget* _tmp14_ = NULL;
+               gboolean _tmp15_ = FALSE;
+#line 521 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp5_ = request;
+#line 521 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp6_ = _tmp5_->candidates;
+#line 521 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               self->priv->candidates = _tmp6_;
+#line 522 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp7_ = self->priv->filter;
+#line 522 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               gtk_tree_model_filter_refilter (_tmp7_);
+#line 523 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               identity_manager_view_redraw_id_card_widgets (self);
+#line 524 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp8_ = request;
+#line 524 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp9_ = _tmp8_->service;
+#line 524 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               identity_manager_view_set_prompting_service (self, _tmp9_);
+#line 525 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp10_ = self->remember_identity_binding;
+#line 525 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               gtk_widget_show ((GtkWidget*) _tmp10_);
+#line 527 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp11_ = self->priv->custom_vbox;
+#line 527 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp12_ = self->priv->selected_card;
+#line 527 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp13_ = custom_vbox_find_idcard_widget (_tmp11_, _tmp12_);
+#line 527 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp14_ = _tmp13_;
+#line 527 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp15_ = _tmp14_ != NULL;
+#line 527 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_object_unref0 (_tmp14_);
+#line 527 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               if (_tmp15_) {
+#line 3143 "moonshot-identity-management-view.c"
+                       GtkButton* _tmp16_ = NULL;
+#line 529 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp16_ = self->priv->send_button;
+#line 529 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       gtk_widget_set_sensitive ((GtkWidget*) _tmp16_, TRUE);
+#line 3149 "moonshot-identity-management-view.c"
+               }
+#line 532 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               identity_manager_view_make_visible (self);
+#line 3153 "moonshot-identity-management-view.c"
+       }
+}
+
+
+/** Makes the window visible, or at least, notifies the user that the window
+     * wants to be visible.
+     *
+     * This differs from show() in that show() does not guarantee that the 
+     * window will be moved to the foreground. Actually, neither does this
+     * method, because the user's settings and window manager may affect the
+     * behavior significantly.
+     */
+void identity_manager_view_make_visible (IdentityManagerView* self) {
+#line 545 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (self != NULL);
+#line 547 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_window_set_urgency_hint ((GtkWindow*) self, TRUE);
+#line 548 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_window_present ((GtkWindow*) self);
+#line 3173 "moonshot-identity-management-view.c"
+}
+
+
+IdCard* identity_manager_view_check_add_password (IdentityManagerView* self, IdCard* identity, IdentityRequest* request, IdentityManagerModel* model) {
+       IdCard* result = NULL;
+       MoonshotLogger* _tmp0_ = NULL;
+       IdCard* retval = NULL;
+       IdCard* _tmp1_ = NULL;
+       IdCard* _tmp2_ = NULL;
+       gboolean _tmp3_ = FALSE;
+       IdCard* _tmp4_ = NULL;
+       const gchar* _tmp5_ = NULL;
+       const gchar* _tmp6_ = NULL;
+       gboolean idcard_has_pw = FALSE;
+       gboolean _tmp10_ = FALSE;
+       IdentityRequest* _tmp11_ = NULL;
+       const gchar* _tmp12_ = NULL;
+       gboolean request_has_pw = FALSE;
+       gboolean _tmp15_ = FALSE;
+       gboolean _tmp16_ = FALSE;
+#line 551 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 551 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_val_if_fail (identity != NULL, NULL);
+#line 551 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_val_if_fail (request != NULL, NULL);
+#line 551 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_val_if_fail (model != NULL, NULL);
+#line 553 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = identity_manager_view_logger;
+#line 553 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       moonshot_logger_trace (_tmp0_, "check_add_password", NULL);
+#line 554 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp1_ = identity;
+#line 554 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp2_ = _g_object_ref0 (_tmp1_);
+#line 554 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       retval = _tmp2_;
+#line 555 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp4_ = identity;
+#line 555 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp5_ = id_card_get_password (_tmp4_);
+#line 555 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp6_ = _tmp5_;
+#line 555 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (_tmp6_ != NULL) {
+#line 3220 "moonshot-identity-management-view.c"
+               IdCard* _tmp7_ = NULL;
+               const gchar* _tmp8_ = NULL;
+               const gchar* _tmp9_ = NULL;
+#line 555 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp7_ = identity;
+#line 555 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp8_ = id_card_get_password (_tmp7_);
+#line 555 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp9_ = _tmp8_;
+#line 555 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp3_ = g_strcmp0 (_tmp9_, "") != 0;
+#line 3232 "moonshot-identity-management-view.c"
+       } else {
+#line 555 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp3_ = FALSE;
+#line 3236 "moonshot-identity-management-view.c"
+       }
+#line 555 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       idcard_has_pw = _tmp3_;
+#line 556 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp11_ = request;
+#line 556 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp12_ = _tmp11_->password;
+#line 556 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (_tmp12_ != NULL) {
+#line 3246 "moonshot-identity-management-view.c"
+               IdentityRequest* _tmp13_ = NULL;
+               const gchar* _tmp14_ = NULL;
+#line 556 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp13_ = request;
+#line 556 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp14_ = _tmp13_->password;
+#line 556 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp10_ = g_strcmp0 (_tmp14_, "") != 0;
+#line 3255 "moonshot-identity-management-view.c"
+       } else {
+#line 556 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp10_ = FALSE;
+#line 3259 "moonshot-identity-management-view.c"
+       }
+#line 556 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       request_has_pw = _tmp10_;
+#line 557 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp16_ = idcard_has_pw;
+#line 557 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (!_tmp16_) {
+#line 3267 "moonshot-identity-management-view.c"
+               IdCard* _tmp17_ = NULL;
+               gboolean _tmp18_ = FALSE;
+#line 557 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp17_ = identity;
+#line 557 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp18_ = id_card_is_no_identity (_tmp17_);
+#line 557 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp15_ = !_tmp18_;
+#line 3276 "moonshot-identity-management-view.c"
+       } else {
+#line 557 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp15_ = FALSE;
+#line 3280 "moonshot-identity-management-view.c"
+       }
+#line 557 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (_tmp15_) {
+#line 3284 "moonshot-identity-management-view.c"
+               gboolean _tmp19_ = FALSE;
+#line 558 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp19_ = request_has_pw;
+#line 558 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               if (_tmp19_) {
+#line 3290 "moonshot-identity-management-view.c"
+                       IdCard* _tmp20_ = NULL;
+                       IdentityRequest* _tmp21_ = NULL;
+                       const gchar* _tmp22_ = NULL;
+                       IdentityManagerModel* _tmp23_ = NULL;
+                       IdCard* _tmp24_ = NULL;
+                       IdCard* _tmp25_ = NULL;
+#line 559 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp20_ = identity;
+#line 559 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp21_ = request;
+#line 559 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp22_ = _tmp21_->password;
+#line 559 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       id_card_set_password (_tmp20_, _tmp22_);
+#line 560 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp23_ = model;
+#line 560 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp24_ = identity;
+#line 560 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp25_ = identity_manager_model_update_card (_tmp23_, _tmp24_);
+#line 560 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _g_object_unref0 (retval);
+#line 560 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       retval = _tmp25_;
+#line 3315 "moonshot-identity-management-view.c"
+               } else {
+                       AddPasswordDialog* dialog = NULL;
+                       IdCard* _tmp26_ = NULL;
+                       IdentityRequest* _tmp27_ = NULL;
+                       AddPasswordDialog* _tmp28_ = NULL;
+                       gint _result_ = 0;
+                       AddPasswordDialog* _tmp29_ = NULL;
+                       gint _tmp30_ = 0;
+                       gint _tmp31_ = 0;
+                       AddPasswordDialog* _tmp48_ = NULL;
+                       AddPasswordDialog* _tmp49_ = NULL;
+#line 562 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp26_ = identity;
+#line 562 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp27_ = request;
+#line 562 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp28_ = add_password_dialog_new (_tmp26_, _tmp27_);
+#line 562 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       g_object_ref_sink (_tmp28_);
+#line 562 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       dialog = _tmp28_;
+#line 563 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp29_ = dialog;
+#line 563 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp30_ = gtk_dialog_run ((GtkDialog*) _tmp29_);
+#line 563 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _result_ = _tmp30_;
+#line 565 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp31_ = _result_;
+#line 565 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       switch (_tmp31_) {
+#line 565 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               case GTK_RESPONSE_OK:
+#line 3349 "moonshot-identity-management-view.c"
+                               {
+                                       IdCard* _tmp32_ = NULL;
+                                       AddPasswordDialog* _tmp33_ = NULL;
+                                       const gchar* _tmp34_ = NULL;
+                                       const gchar* _tmp35_ = NULL;
+                                       AddPasswordDialog* _tmp36_ = NULL;
+                                       IdCard* _tmp37_ = NULL;
+                                       AddPasswordDialog* _tmp38_ = NULL;
+                                       gboolean _tmp39_ = FALSE;
+                                       gboolean _tmp40_ = FALSE;
+                                       AddPasswordDialog* _tmp41_ = NULL;
+                                       gboolean _tmp42_ = FALSE;
+                                       gboolean _tmp43_ = FALSE;
+                                       IdentityManagerModel* _tmp45_ = NULL;
+                                       IdCard* _tmp46_ = NULL;
+                                       IdCard* _tmp47_ = NULL;
+#line 567 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp32_ = identity;
+#line 567 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp33_ = dialog;
+#line 567 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp34_ = add_password_dialog_get_password (_tmp33_);
+#line 567 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp35_ = _tmp34_;
+#line 567 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       id_card_set_password (_tmp32_, _tmp35_);
+#line 570 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp36_ = dialog;
+#line 570 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       add_password_dialog_clear_password (_tmp36_);
+#line 571 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp37_ = identity;
+#line 571 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp38_ = dialog;
+#line 571 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp39_ = add_password_dialog_get_remember (_tmp38_);
+#line 571 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp40_ = _tmp39_;
+#line 571 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       id_card_set_store_password (_tmp37_, _tmp40_);
+#line 572 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp41_ = dialog;
+#line 572 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp42_ = add_password_dialog_get_remember (_tmp41_);
+#line 572 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp43_ = _tmp42_;
+#line 572 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       if (_tmp43_) {
+#line 3398 "moonshot-identity-management-view.c"
+                                               IdCard* _tmp44_ = NULL;
+#line 573 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp44_ = identity;
+#line 573 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               id_card_set_temporary (_tmp44_, FALSE);
+#line 3404 "moonshot-identity-management-view.c"
+                                       }
+#line 574 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp45_ = model;
+#line 574 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp46_ = identity;
+#line 574 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp47_ = identity_manager_model_update_card (_tmp45_, _tmp46_);
+#line 574 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _g_object_unref0 (retval);
+#line 574 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       retval = _tmp47_;
+#line 575 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       break;
+#line 3418 "moonshot-identity-management-view.c"
+                               }
+                               default:
+                               {
+#line 577 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       identity = NULL;
+#line 578 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       break;
+#line 3426 "moonshot-identity-management-view.c"
+                               }
+                       }
+#line 581 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp48_ = dialog;
+#line 581 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       add_password_dialog_clear_password (_tmp48_);
+#line 582 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp49_ = dialog;
+#line 582 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       gtk_object_destroy ((GtkObject*) _tmp49_);
+#line 558 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _g_object_unref0 (dialog);
+#line 3439 "moonshot-identity-management-view.c"
+               }
+       }
+#line 585 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       result = retval;
+#line 585 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       return result;
+#line 3446 "moonshot-identity-management-view.c"
+}
+
+
+static void identity_manager_view_send_identity_cb (IdentityManagerView* self, IdCard* id) {
+       gboolean _tmp0_ = FALSE;
+       IdentityRequest* request = NULL;
+       GQueue* _tmp1_ = NULL;
+       gpointer _tmp2_ = NULL;
+       IdCard* identity = NULL;
+       IdCard* _tmp3_ = NULL;
+       IdentityRequest* _tmp4_ = NULL;
+       IdentityManagerModel* _tmp5_ = NULL;
+       IdCard* _tmp6_ = NULL;
+       GtkButton* _tmp7_ = NULL;
+       gboolean _tmp8_ = FALSE;
+       GtkTreeModelFilter* _tmp18_ = NULL;
+       gboolean _tmp19_ = FALSE;
+       IdCard* _tmp20_ = NULL;
+       IdentityRequest* _tmp26_ = NULL;
+       IdCard* _tmp27_ = NULL;
+       GtkCheckButton* _tmp28_ = NULL;
+       gboolean _tmp29_ = FALSE;
+       gboolean _tmp30_ = FALSE;
+       GtkCheckButton* _tmp31_ = NULL;
+       GtkCheckButton* _tmp32_ = NULL;
+#line 588 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (self != NULL);
+#line 588 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (id != NULL);
+#line 590 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = identity_manager_view_selection_in_progress (self);
+#line 590 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (_tmp0_);
+#line 592 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp1_ = self->priv->request_queue;
+#line 592 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp2_ = g_queue_pop_head (_tmp1_);
+#line 592 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       request = (IdentityRequest*) _tmp2_;
+#line 593 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp3_ = id;
+#line 593 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp4_ = request;
+#line 593 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp5_ = self->identities_manager;
+#line 593 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp6_ = identity_manager_view_check_add_password (self, _tmp3_, _tmp4_, _tmp5_);
+#line 593 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       identity = _tmp6_;
+#line 594 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp7_ = self->priv->send_button;
+#line 594 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_widget_set_sensitive ((GtkWidget*) _tmp7_, FALSE);
+#line 596 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       self->priv->candidates = NULL;
+#line 598 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp8_ = identity_manager_view_selection_in_progress (self);
+#line 598 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (!_tmp8_) {
+#line 3506 "moonshot-identity-management-view.c"
+               IdentityManagerApp* _tmp9_ = NULL;
+               gboolean _tmp10_ = FALSE;
+#line 600 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               self->priv->candidates = NULL;
+#line 601 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               identity_manager_view_clear_selection_prompts (self);
+#line 602 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp9_ = self->parent_app;
+#line 602 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp10_ = _tmp9_->explicitly_launched;
+#line 602 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               if (!_tmp10_) {
+#line 607 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       gtk_widget_hide ((GtkWidget*) self);
+#line 3521 "moonshot-identity-management-view.c"
+               }
+       } else {
+               IdentityRequest* next = NULL;
+               GQueue* _tmp11_ = NULL;
+               gconstpointer _tmp12_ = NULL;
+               IdentityRequest* _tmp13_ = NULL;
+               IdentityRequest* _tmp14_ = NULL;
+               GSList* _tmp15_ = NULL;
+               IdentityRequest* _tmp16_ = NULL;
+               const gchar* _tmp17_ = NULL;
+#line 610 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp11_ = self->priv->request_queue;
+#line 610 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp12_ = g_queue_peek_head (_tmp11_);
+#line 610 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp13_ = _g_object_ref0 ((IdentityRequest*) _tmp12_);
+#line 610 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               next = _tmp13_;
+#line 611 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp14_ = next;
+#line 611 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp15_ = _tmp14_->candidates;
+#line 611 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               self->priv->candidates = _tmp15_;
+#line 612 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp16_ = next;
+#line 612 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp17_ = _tmp16_->service;
+#line 612 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               identity_manager_view_set_prompting_service (self, _tmp17_);
+#line 598 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_object_unref0 (next);
+#line 3554 "moonshot-identity-management-view.c"
+       }
+#line 614 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp18_ = self->priv->filter;
+#line 614 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_tree_model_filter_refilter (_tmp18_);
+#line 615 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       identity_manager_view_redraw_id_card_widgets (self);
+#line 617 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp20_ = identity;
+#line 617 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (_tmp20_ != NULL) {
+#line 3566 "moonshot-identity-management-view.c"
+               IdCard* _tmp21_ = NULL;
+               gboolean _tmp22_ = FALSE;
+#line 617 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp21_ = identity;
+#line 617 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp22_ = id_card_is_no_identity (_tmp21_);
+#line 617 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp19_ = !_tmp22_;
+#line 3575 "moonshot-identity-management-view.c"
+       } else {
+#line 617 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp19_ = FALSE;
+#line 3579 "moonshot-identity-management-view.c"
+       }
+#line 617 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (_tmp19_) {
+#line 3583 "moonshot-identity-management-view.c"
+               IdentityManagerApp* _tmp23_ = NULL;
+               IdCard* _tmp24_ = NULL;
+               IdCard* _tmp25_ = NULL;
+#line 618 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp23_ = self->parent_app;
+#line 618 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp24_ = identity;
+#line 618 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp25_ = _g_object_ref0 (_tmp24_);
+#line 618 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_object_unref0 (_tmp23_->default_id_card);
+#line 618 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp23_->default_id_card = _tmp25_;
+#line 3597 "moonshot-identity-management-view.c"
+       }
+#line 620 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp26_ = request;
+#line 620 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp27_ = identity;
+#line 620 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp28_ = self->remember_identity_binding;
+#line 620 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp29_ = gtk_toggle_button_get_active ((GtkToggleButton*) _tmp28_);
+#line 620 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp30_ = _tmp29_;
+#line 620 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       identity_request_return_identity (_tmp26_, _tmp27_, _tmp30_);
+#line 622 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp31_ = self->remember_identity_binding;
+#line 622 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_toggle_button_set_active ((GtkToggleButton*) _tmp31_, TRUE);
+#line 623 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp32_ = self->remember_identity_binding;
+#line 623 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_widget_hide ((GtkWidget*) _tmp32_);
+#line 588 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (identity);
+#line 588 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (request);
+#line 3623 "moonshot-identity-management-view.c"
+}
+
+
+static Block3Data* block3_data_ref (Block3Data* _data3_) {
+#line 626 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_atomic_int_inc (&_data3_->_ref_count_);
+#line 626 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       return _data3_;
+#line 3632 "moonshot-identity-management-view.c"
+}
+
+
+static void block3_data_unref (void * _userdata_) {
+       Block3Data* _data3_;
+       _data3_ = (Block3Data*) _userdata_;
+#line 626 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (g_atomic_int_dec_and_test (&_data3_->_ref_count_)) {
+#line 3641 "moonshot-identity-management-view.c"
+               IdentityManagerView* self;
+#line 626 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               self = _data3_->self;
+#line 626 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_object_unref0 (_data3_->about);
+#line 626 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_object_unref0 (self);
+#line 626 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               g_slice_free (Block3Data, _data3_);
+#line 3651 "moonshot-identity-management-view.c"
+       }
+}
+
+
+static void __lambda6_ (Block3Data* _data3_, GtkDialog* a, gint b) {
+       IdentityManagerView* self;
+#line 675 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       self = _data3_->self;
+#line 675 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (a != NULL);
+#line 675 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_object_destroy ((GtkObject*) _data3_->about);
+#line 3664 "moonshot-identity-management-view.c"
+}
+
+
+static void ___lambda6__gtk_dialog_response (GtkDialog* _sender, gint response_id, gpointer self) {
+#line 675 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       __lambda6_ (self, _sender, response_id);
+#line 3671 "moonshot-identity-management-view.c"
+}
+
+
+static void identity_manager_view_on_about_action (IdentityManagerView* self) {
+       Block3Data* _data3_;
+       gchar* copyright = NULL;
+       gint _tmp0_ = 0;
+       gchar* _tmp1_ = NULL;
+       gchar* license = NULL;
+       gint _tmp2_ = 0;
+       gchar* _tmp3_ = NULL;
+       GtkAboutDialog* _tmp4_ = NULL;
+       const gchar* _tmp5_ = NULL;
+       const gchar* _tmp6_ = NULL;
+#line 626 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (self != NULL);
+#line 626 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _data3_ = g_slice_new0 (Block3Data);
+#line 626 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _data3_->_ref_count_ = 1;
+#line 626 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _data3_->self = g_object_ref (self);
+#line 628 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = identity_manager_view_LATEST_EDIT_YEAR;
+#line 628 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp1_ = g_strdup_printf ("Copyright (c) 2011, %d JANET", _tmp0_);
+#line 628 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       copyright = _tmp1_;
+#line 630 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp2_ = identity_manager_view_LATEST_EDIT_YEAR;
+#line 630 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp3_ = g_strdup_printf ("\n" \
+"Copyright (c) 2011, %d JANET(UK)\n" \
+"All rights reserved.\n" \
+"\n" \
+"Redistribution and use in source and binary forms, with or without\n" \
+"modification, are permitted provided that the following conditions\n" \
+"are met:\n" \
+"\n" \
+"1. Redistributions of source code must retain the above copyright\n" \
+"   notice, this list of conditions and the following disclaimer.\n" \
+"\n" \
+"2. Redistributions in binary form must reproduce the above copyright\n" \
+"   notice, this list of conditions and the following disclaimer in the" \
+"\n" \
+"   documentation and/or other materials provided with the distribution" \
+".\n" \
+"\n" \
+"3. Neither the name of JANET(UK) nor the names of its contributors\n" \
+"   may be used to endorse or promote products derived from this softwa" \
+"re\n" \
+"   without specific prior written permission.\n" \
+"\n" \
+"THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \\" \
+"\"AS IS\\\"\n" \
+"AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, " \
+"THE\n" \
+"IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PUR" \
+"POSE\n" \
+"ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS" \
+" BE LIABLE\n" \
+"FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUEN" \
+"TIAL\n" \
+"DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOOD" \
+"S\n" \
+"OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)\n" \
+"HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, ST" \
+"RICT\n" \
+"LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY " \
+"WAY\n" \
+"OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF" \
+"\n" \
+"SUCH DAMAGE.\n", _tmp2_);
+#line 630 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       license = _tmp3_;
+#line 663 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp4_ = (GtkAboutDialog*) gtk_about_dialog_new ();
+#line 663 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_object_ref_sink (_tmp4_);
+#line 663 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _data3_->about = _tmp4_;
+#line 665 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp5_ = _ ("Moonshot project UI");
+#line 665 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_about_dialog_set_comments (_data3_->about, _tmp5_);
+#line 666 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_about_dialog_set_copyright (_data3_->about, copyright);
+#line 667 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_about_dialog_set_website (_data3_->about, PACKAGE_URL);
+#line 668 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp6_ = _ ("Visit the Moonshot project web site");
+#line 668 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_about_dialog_set_website_label (_data3_->about, _tmp6_);
+#line 671 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_about_dialog_set_version (_data3_->about, PACKAGE_VERSION);
+#line 672 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_about_dialog_set_license (_data3_->about, license);
+#line 673 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_window_set_modal ((GtkWindow*) _data3_->about, TRUE);
+#line 674 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_window_set_transient_for ((GtkWindow*) _data3_->about, (GtkWindow*) self);
+#line 675 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_signal_connect_data ((GtkDialog*) _data3_->about, "response", (GCallback) ___lambda6__gtk_dialog_response, block3_data_ref (_data3_), (GClosureNotify) block3_data_unref, 0);
+#line 676 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       set_bg_color ((GtkWidget*) _data3_->about);
+#line 678 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_dialog_run ((GtkDialog*) _data3_->about);
+#line 626 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_free0 (license);
+#line 626 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_free0 (copyright);
+#line 626 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       block3_data_unref (_data3_);
+#line 626 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _data3_ = NULL;
+#line 3746 "moonshot-identity-management-view.c"
+}
+
+
+static void _vala_array_add1 (GtkActionEntry** array, int* length, int* size, const GtkActionEntry* value) {
+#line 691 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if ((*length) == (*size)) {
+#line 691 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               *size = (*size) ? (2 * (*size)) : 4;
+#line 691 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               *array = g_renew (GtkActionEntry, *array, *size);
+#line 3757 "moonshot-identity-management-view.c"
+       }
+#line 691 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       (*array)[(*length)++] = *value;
+#line 3761 "moonshot-identity-management-view.c"
+}
+
+
+static void _identity_manager_view_on_about_action_gtk_action_callback (GtkAction* action, gpointer self) {
+#line 693 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       identity_manager_view_on_about_action ((IdentityManagerView*) self);
+#line 3768 "moonshot-identity-management-view.c"
+}
+
+
+static void _vala_array_add2 (GtkActionEntry** array, int* length, int* size, const GtkActionEntry* value) {
+#line 705 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if ((*length) == (*size)) {
+#line 705 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               *size = (*size) ? (2 * (*size)) : 4;
+#line 705 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               *array = g_renew (GtkActionEntry, *array, *size);
+#line 3779 "moonshot-identity-management-view.c"
+       }
+#line 705 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       (*array)[(*length)++] = *value;
+#line 3783 "moonshot-identity-management-view.c"
+}
+
+
+static GtkActionEntry* identity_manager_view_create_actions (IdentityManagerView* self, int* result_length1) {
+       GtkActionEntry* result = NULL;
+       GtkActionEntry* actions = NULL;
+       GtkActionEntry* _tmp0_ = NULL;
+       gint actions_length1 = 0;
+       gint _actions_size_ = 0;
+       GtkActionEntry helpmenu = {0};
+       GtkActionEntry _tmp1_ = {0};
+       GtkActionEntry _tmp2_ = {0};
+       const gchar* _tmp3_ = NULL;
+       const gchar* _tmp4_ = NULL;
+       GtkActionEntry* _tmp5_ = NULL;
+       gint _tmp5__length1 = 0;
+       GtkActionEntry _tmp6_ = {0};
+       GtkActionEntry about = {0};
+       GtkActionEntry _tmp7_ = {0};
+       GtkActionEntry _tmp8_ = {0};
+       const gchar* _tmp9_ = NULL;
+       const gchar* _tmp10_ = NULL;
+       GtkActionEntry* _tmp11_ = NULL;
+       gint _tmp11__length1 = 0;
+       GtkActionEntry _tmp12_ = {0};
+       GtkActionEntry* _tmp13_ = NULL;
+       gint _tmp13__length1 = 0;
+#line 681 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 682 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = g_new0 (GtkActionEntry, 0);
+#line 682 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       actions = _tmp0_;
+#line 682 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       actions_length1 = 0;
+#line 682 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _actions_size_ = actions_length1;
+#line 684 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp1_.name = "HelpMenuAction";
+#line 684 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp1_.stock_id = NULL;
+#line 684 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp1_.label = "_Help";
+#line 684 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp1_.accelerator = NULL;
+#line 684 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp1_.tooltip = NULL;
+#line 684 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp1_.callback = (GCallback) NULL;
+#line 684 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       helpmenu = _tmp1_;
+#line 690 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp2_ = helpmenu;
+#line 690 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp3_ = _tmp2_.label;
+#line 690 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp4_ = g_dgettext (NULL, _tmp3_);
+#line 690 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       helpmenu.label = _tmp4_;
+#line 691 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp5_ = actions;
+#line 691 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp5__length1 = actions_length1;
+#line 691 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp6_ = helpmenu;
+#line 691 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _vala_array_add1 (&actions, &actions_length1, &_actions_size_, &_tmp6_);
+#line 693 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp7_.name = "AboutAction";
+#line 693 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp7_.stock_id = GTK_STOCK_ABOUT;
+#line 693 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp7_.label = "About";
+#line 693 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp7_.accelerator = NULL;
+#line 693 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp7_.tooltip = "About this application";
+#line 693 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp7_.callback = (GCallback) _identity_manager_view_on_about_action_gtk_action_callback;
+#line 693 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       about = _tmp7_;
+#line 704 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp8_ = about;
+#line 704 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp9_ = _tmp8_.label;
+#line 704 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp10_ = g_dgettext (NULL, _tmp9_);
+#line 704 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       about.label = _tmp10_;
+#line 705 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp11_ = actions;
+#line 705 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp11__length1 = actions_length1;
+#line 705 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp12_ = about;
+#line 705 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _vala_array_add2 (&actions, &actions_length1, &_actions_size_, &_tmp12_);
+#line 707 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp13_ = actions;
+#line 707 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp13__length1 = actions_length1;
+#line 707 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (result_length1) {
+#line 707 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               *result_length1 = _tmp13__length1;
+#line 3889 "moonshot-identity-management-view.c"
+       }
+#line 707 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       result = _tmp13_;
+#line 707 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       return result;
+#line 3895 "moonshot-identity-management-view.c"
+}
+
+
+static void identity_manager_view_create_ui_manager (IdentityManagerView* self) {
+       GtkActionGroup* action_group = NULL;
+       GtkActionGroup* _tmp0_ = NULL;
+       gint _tmp1_ = 0;
+       GtkActionEntry* _tmp2_ = NULL;
+       GtkActionEntry* _tmp3_ = NULL;
+       gint _tmp3__length1 = 0;
+       GtkUIManager* _tmp4_ = NULL;
+       GtkUIManager* _tmp14_ = NULL;
+       GError * _inner_error_ = NULL;
+#line 711 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (self != NULL);
+#line 713 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = gtk_action_group_new ("GeneralActionGroup");
+#line 713 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       action_group = _tmp0_;
+#line 714 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp2_ = identity_manager_view_create_actions (self, &_tmp1_);
+#line 714 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp3_ = _tmp2_;
+#line 714 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp3__length1 = _tmp1_;
+#line 714 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_action_group_add_actions (action_group, _tmp3_, _tmp1_, self);
+#line 714 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp3_ = (g_free (_tmp3_), NULL);
+#line 715 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp4_ = self->priv->ui_manager;
+#line 715 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_ui_manager_insert_action_group (_tmp4_, action_group, 0);
+#line 3929 "moonshot-identity-management-view.c"
+       {
+               GtkUIManager* _tmp5_ = NULL;
+#line 718 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp5_ = self->priv->ui_manager;
+#line 718 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               gtk_ui_manager_add_ui_from_string (_tmp5_, IDENTITY_MANAGER_VIEW_menu_layout, (gssize) -1, &_inner_error_);
+#line 718 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 3938 "moonshot-identity-management-view.c"
+                       goto __catch5_g_error;
+               }
+       }
+       goto __finally5;
+       __catch5_g_error:
+       {
+               GError* e = NULL;
+               FILE* _tmp6_ = NULL;
+               GError* _tmp7_ = NULL;
+               const gchar* _tmp8_ = NULL;
+               MoonshotLogger* _tmp9_ = NULL;
+               GError* _tmp10_ = NULL;
+               const gchar* _tmp11_ = NULL;
+               gchar* _tmp12_ = NULL;
+               gchar* _tmp13_ = NULL;
+#line 716 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               e = _inner_error_;
+#line 716 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _inner_error_ = NULL;
+#line 722 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp6_ = stderr;
+#line 722 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp7_ = e;
+#line 722 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp8_ = _tmp7_->message;
+#line 722 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               fprintf (_tmp6_, "%s\n", _tmp8_);
+#line 723 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp9_ = identity_manager_view_logger;
+#line 723 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp10_ = e;
+#line 723 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp11_ = _tmp10_->message;
+#line 723 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp12_ = g_strconcat ("create_ui_manager: Caught error: ", _tmp11_, NULL);
+#line 723 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp13_ = _tmp12_;
+#line 723 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               moonshot_logger_error (_tmp9_, _tmp13_, NULL);
+#line 723 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_free0 (_tmp13_);
+#line 716 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_error_free0 (e);
+#line 3982 "moonshot-identity-management-view.c"
+       }
+       __finally5:
+#line 716 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 716 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_object_unref0 (action_group);
+#line 716 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.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 716 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               g_clear_error (&_inner_error_);
+#line 716 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               return;
+#line 3995 "moonshot-identity-management-view.c"
+       }
+#line 725 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp14_ = self->priv->ui_manager;
+#line 725 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_ui_manager_ensure_update (_tmp14_);
+#line 711 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (action_group);
+#line 4003 "moonshot-identity-management-view.c"
+}
+
+
+static void _identity_manager_view_search_entry_text_changed_cb_g_object_notify (GObject* _sender, GParamSpec* pspec, gpointer self) {
+#line 762 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       identity_manager_view_search_entry_text_changed_cb ((IdentityManagerView*) self);
+#line 4010 "moonshot-identity-management-view.c"
+}
+
+
+static gboolean _identity_manager_view_search_entry_key_press_event_cb_gtk_widget_key_press_event (GtkWidget* _sender, GdkEventKey* event, gpointer self) {
+       gboolean result;
+       result = identity_manager_view_search_entry_key_press_event_cb ((IdentityManagerView*) self, event);
+#line 763 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       return result;
+#line 4019 "moonshot-identity-management-view.c"
+}
+
+
+static void __lambda7_ (IdentityManagerView* self, GtkButton* w) {
+#line 800 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (w != NULL);
+#line 800 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       identity_manager_view_add_identity_cb (self);
+#line 4028 "moonshot-identity-management-view.c"
+}
+
+
+static void ___lambda7__gtk_button_clicked (GtkButton* _sender, gpointer self) {
+#line 800 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       __lambda7_ ((IdentityManagerView*) self, _sender);
+#line 4035 "moonshot-identity-management-view.c"
+}
+
+
+static void __lambda13_ (IdentityManagerView* self, GtkButton* w) {
+#line 805 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (w != NULL);
+#line 805 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       identity_manager_view_import_identities_cb (self);
+#line 4044 "moonshot-identity-management-view.c"
+}
+
+
+static void ___lambda13__gtk_button_clicked (GtkButton* _sender, gpointer self) {
+#line 805 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       __lambda13_ ((IdentityManagerView*) self, _sender);
+#line 4051 "moonshot-identity-management-view.c"
+}
+
+
+static void __lambda14_ (IdentityManagerView* self, GtkButton* w) {
+       IdCard* _tmp0_ = NULL;
+#line 810 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (w != NULL);
+#line 810 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = self->priv->selected_card;
+#line 810 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       identity_manager_view_edit_identity_cb (self, _tmp0_);
+#line 4063 "moonshot-identity-management-view.c"
+}
+
+
+static void ___lambda14__gtk_button_clicked (GtkButton* _sender, gpointer self) {
+#line 810 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       __lambda14_ ((IdentityManagerView*) self, _sender);
+#line 4070 "moonshot-identity-management-view.c"
+}
+
+
+static void __lambda15_ (IdentityManagerView* self, GtkButton* w) {
+       IdCard* _tmp0_ = NULL;
+#line 816 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (w != NULL);
+#line 816 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = self->priv->selected_card;
+#line 816 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       identity_manager_view_remove_identity_cb (self, _tmp0_);
+#line 4082 "moonshot-identity-management-view.c"
+}
+
+
+static void ___lambda15__gtk_button_clicked (GtkButton* _sender, gpointer self) {
+#line 816 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       __lambda15_ ((IdentityManagerView*) self, _sender);
+#line 4089 "moonshot-identity-management-view.c"
+}
+
+
+static void __lambda16_ (IdentityManagerView* self, GtkButton* w) {
+       IdCard* _tmp0_ = NULL;
+#line 824 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (w != NULL);
+#line 824 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = self->priv->selected_card;
+#line 824 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       identity_manager_view_send_identity_cb (self, _tmp0_);
+#line 4101 "moonshot-identity-management-view.c"
+}
+
+
+static void ___lambda16__gtk_button_clicked (GtkButton* _sender, gpointer self) {
+#line 824 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       __lambda16_ ((IdentityManagerView*) self, _sender);
+#line 4108 "moonshot-identity-management-view.c"
+}
+
+
+static void identity_manager_view_build_ui (IdentityManagerView* self) {
+       gint num_rows = 0;
+       gint num_cols = 0;
+       gint button_width = 0;
+       GtkTable* top_table = NULL;
+       gint _tmp0_ = 0;
+       GtkTable* _tmp1_ = NULL;
+       GtkTable* _tmp2_ = NULL;
+       GtkAttachOptions fill_and_expand = 0;
+       GtkAttachOptions fill = 0;
+       gint row = 0;
+       GtkVBox* _tmp3_ = NULL;
+       GtkTable* _tmp4_ = NULL;
+       GtkVBox* _tmp5_ = NULL;
+       gint _tmp6_ = 0;
+       gint _tmp7_ = 0;
+       GtkAttachOptions _tmp8_ = 0;
+       GtkAttachOptions _tmp9_ = 0;
+       gint _tmp10_ = 0;
+       gchar* search_tooltip_text = NULL;
+       const gchar* _tmp11_ = NULL;
+       gchar* _tmp12_ = NULL;
+       GtkEntry* _tmp13_ = NULL;
+       GtkEntry* _tmp14_ = NULL;
+       const gchar* _tmp15_ = NULL;
+       const gchar* _tmp16_ = NULL;
+       GtkEntry* _tmp17_ = NULL;
+       GdkPixbuf* _tmp18_ = NULL;
+       GdkPixbuf* _tmp19_ = NULL;
+       GtkEntry* _tmp20_ = NULL;
+       const gchar* _tmp21_ = NULL;
+       GtkEntry* _tmp22_ = NULL;
+       const gchar* _tmp23_ = NULL;
+       GtkEntry* _tmp24_ = NULL;
+       GtkEntry* _tmp25_ = NULL;
+       GtkEntry* _tmp26_ = NULL;
+       GtkEntry* _tmp27_ = NULL;
+       gchar* search_label_markup = NULL;
+       const gchar* _tmp28_ = NULL;
+       gchar* _tmp29_ = NULL;
+       gchar* _tmp30_ = NULL;
+       gchar* _tmp31_ = NULL;
+       gchar* _tmp32_ = NULL;
+       GtkLabel* full_search_label = NULL;
+       GtkLabel* _tmp33_ = NULL;
+       GtkLabel* _tmp34_ = NULL;
+       const gchar* _tmp35_ = NULL;
+       GtkLabel* _tmp36_ = NULL;
+       GtkVBox* search_vbox = NULL;
+       GtkVBox* _tmp37_ = NULL;
+       GtkVBox* _tmp38_ = NULL;
+       GtkEntry* _tmp39_ = NULL;
+       GtkAlignment* search_spacer = NULL;
+       GtkAlignment* _tmp40_ = NULL;
+       GtkAlignment* _tmp41_ = NULL;
+       GtkVBox* _tmp42_ = NULL;
+       GtkAlignment* _tmp43_ = NULL;
+       GtkVBox* _tmp44_ = NULL;
+       GtkLabel* _tmp45_ = NULL;
+       GtkTable* _tmp46_ = NULL;
+       GtkVBox* _tmp47_ = NULL;
+       gint _tmp48_ = 0;
+       gint _tmp49_ = 0;
+       gint _tmp50_ = 0;
+       gint _tmp51_ = 0;
+       GtkAttachOptions _tmp52_ = 0;
+       GtkAttachOptions _tmp53_ = 0;
+       gint _tmp54_ = 0;
+       CustomVBox* _tmp55_ = NULL;
+       GtkViewport* viewport = NULL;
+       GtkViewport* _tmp56_ = NULL;
+       GtkViewport* _tmp57_ = NULL;
+       GtkViewport* _tmp58_ = NULL;
+       GtkViewport* _tmp59_ = NULL;
+       CustomVBox* _tmp60_ = NULL;
+       GtkScrolledWindow* id_scrollwin = NULL;
+       GtkScrolledWindow* _tmp61_ = NULL;
+       GtkScrolledWindow* _tmp62_ = NULL;
+       GtkScrolledWindow* _tmp63_ = NULL;
+       GtkScrolledWindow* _tmp64_ = NULL;
+       GtkViewport* _tmp65_ = NULL;
+       GtkTable* _tmp66_ = NULL;
+       GtkScrolledWindow* _tmp67_ = NULL;
+       gint _tmp68_ = 0;
+       gint _tmp69_ = 0;
+       gint _tmp70_ = 0;
+       GtkAttachOptions _tmp71_ = 0;
+       GtkAttachOptions _tmp72_ = 0;
+       const gchar* _tmp73_ = NULL;
+       GtkCheckButton* _tmp74_ = NULL;
+       GtkCheckButton* _tmp75_ = NULL;
+       GtkTable* _tmp76_ = NULL;
+       GtkCheckButton* _tmp77_ = NULL;
+       gint _tmp78_ = 0;
+       gint _tmp79_ = 0;
+       gint _tmp80_ = 0;
+       GtkAttachOptions _tmp81_ = 0;
+       GtkAttachOptions _tmp82_ = 0;
+       GtkButton* add_button = NULL;
+       const gchar* _tmp83_ = NULL;
+       GtkButton* _tmp84_ = NULL;
+       GtkButton* _tmp85_ = NULL;
+       GtkTable* _tmp86_ = NULL;
+       GtkButton* _tmp87_ = NULL;
+       GtkWidget* _tmp88_ = NULL;
+       GtkWidget* _tmp89_ = NULL;
+       gint _tmp90_ = 0;
+       gint _tmp91_ = 0;
+       gint _tmp92_ = 0;
+       gint _tmp93_ = 0;
+       gint _tmp94_ = 0;
+       GtkAttachOptions _tmp95_ = 0;
+       GtkAttachOptions _tmp96_ = 0;
+       gint _tmp97_ = 0;
+       GtkButton* import_button = NULL;
+       const gchar* _tmp98_ = NULL;
+       GtkButton* _tmp99_ = NULL;
+       GtkButton* _tmp100_ = NULL;
+       GtkTable* _tmp101_ = NULL;
+       GtkButton* _tmp102_ = NULL;
+       GtkWidget* _tmp103_ = NULL;
+       GtkWidget* _tmp104_ = NULL;
+       gint _tmp105_ = 0;
+       gint _tmp106_ = 0;
+       gint _tmp107_ = 0;
+       gint _tmp108_ = 0;
+       gint _tmp109_ = 0;
+       GtkAttachOptions _tmp110_ = 0;
+       GtkAttachOptions _tmp111_ = 0;
+       gint _tmp112_ = 0;
+       const gchar* _tmp113_ = NULL;
+       GtkButton* _tmp114_ = NULL;
+       GtkButton* _tmp115_ = NULL;
+       GtkButton* _tmp116_ = NULL;
+       GtkTable* _tmp117_ = NULL;
+       GtkButton* _tmp118_ = NULL;
+       GtkWidget* _tmp119_ = NULL;
+       GtkWidget* _tmp120_ = NULL;
+       gint _tmp121_ = 0;
+       gint _tmp122_ = 0;
+       gint _tmp123_ = 0;
+       gint _tmp124_ = 0;
+       gint _tmp125_ = 0;
+       GtkAttachOptions _tmp126_ = 0;
+       GtkAttachOptions _tmp127_ = 0;
+       gint _tmp128_ = 0;
+       const gchar* _tmp129_ = NULL;
+       GtkButton* _tmp130_ = NULL;
+       GtkButton* _tmp131_ = NULL;
+       GtkButton* _tmp132_ = NULL;
+       GtkTable* _tmp133_ = NULL;
+       GtkButton* _tmp134_ = NULL;
+       GtkWidget* _tmp135_ = NULL;
+       GtkWidget* _tmp136_ = NULL;
+       gint _tmp137_ = 0;
+       gint _tmp138_ = 0;
+       gint _tmp139_ = 0;
+       gint _tmp140_ = 0;
+       gint _tmp141_ = 0;
+       GtkAttachOptions _tmp142_ = 0;
+       GtkAttachOptions _tmp143_ = 0;
+       gint _tmp144_ = 0;
+       gint _tmp145_ = 0;
+       const gchar* _tmp146_ = NULL;
+       GtkButton* _tmp147_ = NULL;
+       GtkButton* _tmp148_ = NULL;
+       GtkButton* _tmp149_ = NULL;
+       GtkTable* _tmp150_ = NULL;
+       GtkButton* _tmp151_ = NULL;
+       GtkWidget* _tmp152_ = NULL;
+       GtkWidget* _tmp153_ = NULL;
+       gint _tmp154_ = 0;
+       gint _tmp155_ = 0;
+       gint _tmp156_ = 0;
+       gint _tmp157_ = 0;
+       gint _tmp158_ = 0;
+       GtkAttachOptions _tmp159_ = 0;
+       GtkAttachOptions _tmp160_ = 0;
+       gint _tmp161_ = 0;
+       GtkVBox* main_vbox = NULL;
+       GtkVBox* _tmp162_ = NULL;
+       GtkWidget* menubar = NULL;
+       GtkUIManager* _tmp163_ = NULL;
+       GtkWidget* _tmp164_ = NULL;
+       GtkWidget* _tmp165_ = NULL;
+       GtkVBox* _tmp166_ = NULL;
+       GtkWidget* _tmp167_ = NULL;
+       GtkWidget* _tmp168_ = NULL;
+       GtkVBox* _tmp169_ = NULL;
+       GtkTable* _tmp170_ = NULL;
+       GtkVBox* _tmp171_ = NULL;
+       GtkVBox* _tmp172_ = NULL;
+       gboolean _tmp173_ = FALSE;
+#line 728 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (self != NULL);
+#line 730 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       set_bg_color ((GtkWidget*) self);
+#line 732 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       identity_manager_view_create_ui_manager (self);
+#line 734 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       num_rows = 18;
+#line 735 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       num_cols = 8;
+#line 736 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       button_width = 1;
+#line 738 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = num_rows;
+#line 738 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp1_ = (GtkTable*) gtk_table_new ((guint) _tmp0_, (guint) 10, FALSE);
+#line 738 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_object_ref_sink (_tmp1_);
+#line 738 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       top_table = _tmp1_;
+#line 739 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp2_ = top_table;
+#line 739 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_container_set_border_width ((GtkContainer*) _tmp2_, (guint) 12);
+#line 741 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       fill_and_expand = GTK_EXPAND | GTK_FILL;
+#line 742 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       fill = GTK_FILL;
+#line 743 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       row = 0;
+#line 745 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp3_ = (GtkVBox*) gtk_vbox_new (FALSE, 0);
+#line 745 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_object_ref_sink (_tmp3_);
+#line 745 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (self->priv->service_prompt_vbox);
+#line 745 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       self->priv->service_prompt_vbox = _tmp3_;
+#line 746 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp4_ = top_table;
+#line 746 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp5_ = self->priv->service_prompt_vbox;
+#line 746 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp6_ = row;
+#line 746 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp7_ = row;
+#line 746 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp8_ = fill_and_expand;
+#line 746 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp9_ = fill_and_expand;
+#line 746 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_table_attach (_tmp4_, (GtkWidget*) _tmp5_, (guint) 0, (guint) 1, (guint) _tmp6_, (guint) (_tmp7_ + 1), _tmp8_, _tmp9_, (guint) 12, (guint) 0);
+#line 747 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp10_ = row;
+#line 747 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       row = _tmp10_ + 1;
+#line 749 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp11_ = _ ("Search for an identity or service");
+#line 749 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp12_ = g_strdup (_tmp11_);
+#line 749 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       search_tooltip_text = _tmp12_;
+#line 750 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp13_ = (GtkEntry*) gtk_entry_new ();
+#line 750 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_object_ref_sink (_tmp13_);
+#line 750 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (self->priv->search_entry);
+#line 750 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       self->priv->search_entry = _tmp13_;
+#line 752 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp14_ = self->priv->search_entry;
+#line 752 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp15_ = _ ("Search entry");
+#line 752 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp16_ = _ ("Search for a specific ID Card");
+#line 752 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       identity_manager_view_set_atk_name_description (self, (GtkWidget*) _tmp14_, _tmp15_, _tmp16_);
+#line 753 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp17_ = self->priv->search_entry;
+#line 753 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp18_ = find_icon_sized ("edit-find", GTK_ICON_SIZE_MENU);
+#line 753 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp19_ = _tmp18_;
+#line 753 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_entry_set_icon_from_pixbuf (_tmp17_, GTK_ENTRY_ICON_SECONDARY, _tmp19_);
+#line 753 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (_tmp19_);
+#line 755 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp20_ = self->priv->search_entry;
+#line 755 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp21_ = search_tooltip_text;
+#line 755 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_entry_set_icon_tooltip_text (_tmp20_, GTK_ENTRY_ICON_SECONDARY, _tmp21_);
+#line 758 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp22_ = self->priv->search_entry;
+#line 758 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp23_ = search_tooltip_text;
+#line 758 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_widget_set_tooltip_text ((GtkWidget*) _tmp22_, _tmp23_);
+#line 760 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp24_ = self->priv->search_entry;
+#line 760 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_entry_set_icon_sensitive (_tmp24_, GTK_ENTRY_ICON_SECONDARY, FALSE);
+#line 762 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp25_ = self->priv->search_entry;
+#line 762 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_signal_connect_object ((GObject*) _tmp25_, "notify::text", (GCallback) _identity_manager_view_search_entry_text_changed_cb_g_object_notify, self, 0);
+#line 763 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp26_ = self->priv->search_entry;
+#line 763 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_signal_connect_object ((GtkWidget*) _tmp26_, "key-press-event", (GCallback) _identity_manager_view_search_entry_key_press_event_cb_gtk_widget_key_press_event, self, 0);
+#line 764 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp27_ = self->priv->search_entry;
+#line 764 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_entry_set_width_chars (_tmp27_, 24);
+#line 766 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp28_ = search_tooltip_text;
+#line 766 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp29_ = g_strconcat ("<small>", _tmp28_, NULL);
+#line 766 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp30_ = _tmp29_;
+#line 766 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp31_ = g_strconcat (_tmp30_, "</small>", NULL);
+#line 766 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp32_ = _tmp31_;
+#line 766 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_free0 (_tmp30_);
+#line 766 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       search_label_markup = _tmp32_;
+#line 767 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp33_ = (GtkLabel*) gtk_label_new (NULL);
+#line 767 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_object_ref_sink (_tmp33_);
+#line 767 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       full_search_label = _tmp33_;
+#line 768 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp34_ = full_search_label;
+#line 768 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp35_ = search_label_markup;
+#line 768 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_label_set_markup (_tmp34_, _tmp35_);
+#line 769 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp36_ = full_search_label;
+#line 769 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_misc_set_alignment ((GtkMisc*) _tmp36_, (gfloat) 1, (gfloat) 0);
+#line 771 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp37_ = (GtkVBox*) gtk_vbox_new (FALSE, 0);
+#line 771 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_object_ref_sink (_tmp37_);
+#line 771 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       search_vbox = _tmp37_;
+#line 772 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp38_ = search_vbox;
+#line 772 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp39_ = self->priv->search_entry;
+#line 772 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_box_pack_start ((GtkBox*) _tmp38_, (GtkWidget*) _tmp39_, FALSE, FALSE, (guint) 0);
+#line 773 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp40_ = (GtkAlignment*) gtk_alignment_new ((gfloat) 0, (gfloat) 0, (gfloat) 0, (gfloat) 0);
+#line 773 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_object_ref_sink (_tmp40_);
+#line 773 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       search_spacer = _tmp40_;
+#line 774 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp41_ = search_spacer;
+#line 774 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_widget_set_size_request ((GtkWidget*) _tmp41_, 0, 2);
+#line 775 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp42_ = search_vbox;
+#line 775 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp43_ = search_spacer;
+#line 775 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_box_pack_start ((GtkBox*) _tmp42_, (GtkWidget*) _tmp43_, FALSE, FALSE, (guint) 0);
+#line 776 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp44_ = search_vbox;
+#line 776 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp45_ = full_search_label;
+#line 776 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_box_pack_start ((GtkBox*) _tmp44_, (GtkWidget*) _tmp45_, FALSE, FALSE, (guint) 0);
+#line 779 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp46_ = top_table;
+#line 779 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp47_ = search_vbox;
+#line 779 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp48_ = num_cols;
+#line 779 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp49_ = button_width;
+#line 779 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp50_ = row;
+#line 779 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp51_ = row;
+#line 779 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp52_ = fill_and_expand;
+#line 779 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp53_ = fill;
+#line 779 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_table_attach (_tmp46_, (GtkWidget*) _tmp47_, (guint) 5, (guint) (_tmp48_ - _tmp49_), (guint) (_tmp50_ - 1), (guint) (_tmp51_ + 1), _tmp52_, _tmp53_, (guint) 0, (guint) 12);
+#line 780 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp54_ = row;
+#line 780 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       row = _tmp54_ + 1;
+#line 782 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp55_ = custom_vbox_new (self, FALSE, 2);
+#line 782 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_object_ref_sink (_tmp55_);
+#line 782 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (self->priv->custom_vbox);
+#line 782 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       self->priv->custom_vbox = _tmp55_;
+#line 784 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp56_ = (GtkViewport*) gtk_viewport_new (NULL, NULL);
+#line 784 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_object_ref_sink (_tmp56_);
+#line 784 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       viewport = _tmp56_;
+#line 785 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp57_ = viewport;
+#line 785 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_container_set_border_width ((GtkContainer*) _tmp57_, (guint) 2);
+#line 786 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp58_ = viewport;
+#line 786 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_viewport_set_shadow_type (_tmp58_, GTK_SHADOW_NONE);
+#line 787 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp59_ = viewport;
+#line 787 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp60_ = self->priv->custom_vbox;
+#line 787 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_container_add ((GtkContainer*) _tmp59_, (GtkWidget*) _tmp60_);
+#line 788 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp61_ = (GtkScrolledWindow*) gtk_scrolled_window_new (NULL, NULL);
+#line 788 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_object_ref_sink (_tmp61_);
+#line 788 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       id_scrollwin = _tmp61_;
+#line 789 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp62_ = id_scrollwin;
+#line 789 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_scrolled_window_set_policy (_tmp62_, GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
+#line 790 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp63_ = id_scrollwin;
+#line 790 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_scrolled_window_set_shadow_type (_tmp63_, GTK_SHADOW_IN);
+#line 791 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp64_ = id_scrollwin;
+#line 791 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp65_ = viewport;
+#line 791 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_scrolled_window_add_with_viewport (_tmp64_, (GtkWidget*) _tmp65_);
+#line 792 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp66_ = top_table;
+#line 792 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp67_ = id_scrollwin;
+#line 792 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp68_ = num_cols;
+#line 792 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp69_ = row;
+#line 792 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp70_ = num_rows;
+#line 792 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp71_ = fill_and_expand;
+#line 792 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp72_ = fill_and_expand;
+#line 792 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_table_attach (_tmp66_, (GtkWidget*) _tmp67_, (guint) 0, (guint) (_tmp68_ - 1), (guint) _tmp69_, (guint) (_tmp70_ - 1), _tmp71_, _tmp72_, (guint) 6, (guint) 0);
+#line 795 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp73_ = _ ("Remember my identity choice for this service");
+#line 795 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp74_ = (GtkCheckButton*) gtk_check_button_new_with_label (_tmp73_);
+#line 795 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_object_ref_sink (_tmp74_);
+#line 795 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (self->remember_identity_binding);
+#line 795 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       self->remember_identity_binding = _tmp74_;
+#line 796 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp75_ = self->remember_identity_binding;
+#line 796 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_toggle_button_set_active ((GtkToggleButton*) _tmp75_, TRUE);
+#line 797 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp76_ = top_table;
+#line 797 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp77_ = self->remember_identity_binding;
+#line 797 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp78_ = num_cols;
+#line 797 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp79_ = num_rows;
+#line 797 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp80_ = num_rows;
+#line 797 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp81_ = fill_and_expand;
+#line 797 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp82_ = fill_and_expand;
+#line 797 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_table_attach (_tmp76_, (GtkWidget*) _tmp77_, (guint) 0, (guint) (_tmp78_ / 2), (guint) (_tmp79_ - 1), (guint) _tmp80_, _tmp81_, _tmp82_, (guint) 3, (guint) 0);
+#line 799 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp83_ = _ ("Add");
+#line 799 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp84_ = (GtkButton*) gtk_button_new_with_label (_tmp83_);
+#line 799 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_object_ref_sink (_tmp84_);
+#line 799 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       add_button = _tmp84_;
+#line 800 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp85_ = add_button;
+#line 800 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_signal_connect_object (_tmp85_, "clicked", (GCallback) ___lambda7__gtk_button_clicked, self, 0);
+#line 801 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp86_ = top_table;
+#line 801 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp87_ = add_button;
+#line 801 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp88_ = identity_manager_view_make_rigid (_tmp87_);
+#line 801 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp89_ = _tmp88_;
+#line 801 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp90_ = num_cols;
+#line 801 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp91_ = button_width;
+#line 801 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp92_ = num_cols;
+#line 801 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp93_ = row;
+#line 801 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp94_ = row;
+#line 801 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp95_ = fill;
+#line 801 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp96_ = fill;
+#line 801 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_table_attach (_tmp86_, _tmp89_, (guint) (_tmp90_ - _tmp91_), (guint) _tmp92_, (guint) _tmp93_, (guint) (_tmp94_ + 1), _tmp95_, _tmp96_, (guint) 0, (guint) 0);
+#line 801 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (_tmp89_);
+#line 802 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp97_ = row;
+#line 802 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       row = _tmp97_ + 1;
+#line 804 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp98_ = _ ("Import");
+#line 804 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp99_ = (GtkButton*) gtk_button_new_with_label (_tmp98_);
+#line 804 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_object_ref_sink (_tmp99_);
+#line 804 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       import_button = _tmp99_;
+#line 805 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp100_ = import_button;
+#line 805 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_signal_connect_object (_tmp100_, "clicked", (GCallback) ___lambda13__gtk_button_clicked, self, 0);
+#line 806 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp101_ = top_table;
+#line 806 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp102_ = import_button;
+#line 806 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp103_ = identity_manager_view_make_rigid (_tmp102_);
+#line 806 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp104_ = _tmp103_;
+#line 806 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp105_ = num_cols;
+#line 806 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp106_ = button_width;
+#line 806 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp107_ = num_cols;
+#line 806 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp108_ = row;
+#line 806 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp109_ = row;
+#line 806 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp110_ = fill;
+#line 806 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp111_ = fill;
+#line 806 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_table_attach (_tmp101_, _tmp104_, (guint) (_tmp105_ - _tmp106_), (guint) _tmp107_, (guint) _tmp108_, (guint) (_tmp109_ + 1), _tmp110_, _tmp111_, (guint) 0, (guint) 0);
+#line 806 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (_tmp104_);
+#line 807 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp112_ = row;
+#line 807 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       row = _tmp112_ + 1;
+#line 809 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp113_ = _ ("Edit");
+#line 809 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp114_ = (GtkButton*) gtk_button_new_with_label (_tmp113_);
+#line 809 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_object_ref_sink (_tmp114_);
+#line 809 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (self->priv->edit_button);
+#line 809 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       self->priv->edit_button = _tmp114_;
+#line 810 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp115_ = self->priv->edit_button;
+#line 810 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_signal_connect_object (_tmp115_, "clicked", (GCallback) ___lambda14__gtk_button_clicked, self, 0);
+#line 811 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp116_ = self->priv->edit_button;
+#line 811 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_widget_set_sensitive ((GtkWidget*) _tmp116_, FALSE);
+#line 812 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp117_ = top_table;
+#line 812 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp118_ = self->priv->edit_button;
+#line 812 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp119_ = identity_manager_view_make_rigid (_tmp118_);
+#line 812 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp120_ = _tmp119_;
+#line 812 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp121_ = num_cols;
+#line 812 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp122_ = button_width;
+#line 812 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp123_ = num_cols;
+#line 812 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp124_ = row;
+#line 812 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp125_ = row;
+#line 812 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp126_ = fill;
+#line 812 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp127_ = fill;
+#line 812 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_table_attach (_tmp117_, _tmp120_, (guint) (_tmp121_ - _tmp122_), (guint) _tmp123_, (guint) _tmp124_, (guint) (_tmp125_ + 1), _tmp126_, _tmp127_, (guint) 0, (guint) 0);
+#line 812 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (_tmp120_);
+#line 813 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp128_ = row;
+#line 813 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       row = _tmp128_ + 1;
+#line 815 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp129_ = _ ("Remove");
+#line 815 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp130_ = (GtkButton*) gtk_button_new_with_label (_tmp129_);
+#line 815 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_object_ref_sink (_tmp130_);
+#line 815 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (self->priv->remove_button);
+#line 815 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       self->priv->remove_button = _tmp130_;
+#line 816 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp131_ = self->priv->remove_button;
+#line 816 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_signal_connect_object (_tmp131_, "clicked", (GCallback) ___lambda15__gtk_button_clicked, self, 0);
+#line 817 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp132_ = self->priv->remove_button;
+#line 817 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_widget_set_sensitive ((GtkWidget*) _tmp132_, FALSE);
+#line 818 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp133_ = top_table;
+#line 818 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp134_ = self->priv->remove_button;
+#line 818 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp135_ = identity_manager_view_make_rigid (_tmp134_);
+#line 818 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp136_ = _tmp135_;
+#line 818 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp137_ = num_cols;
+#line 818 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp138_ = button_width;
+#line 818 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp139_ = num_cols;
+#line 818 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp140_ = row;
+#line 818 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp141_ = row;
+#line 818 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp142_ = fill;
+#line 818 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp143_ = fill;
+#line 818 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_table_attach (_tmp133_, _tmp136_, (guint) (_tmp137_ - _tmp138_), (guint) _tmp139_, (guint) _tmp140_, (guint) (_tmp141_ + 1), _tmp142_, _tmp143_, (guint) 0, (guint) 0);
+#line 818 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (_tmp136_);
+#line 819 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp144_ = row;
+#line 819 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       row = _tmp144_ + 1;
+#line 822 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp145_ = row;
+#line 822 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       row = _tmp145_ + 1;
+#line 823 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp146_ = _ ("Send");
+#line 823 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp147_ = (GtkButton*) gtk_button_new_with_label (_tmp146_);
+#line 823 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_object_ref_sink (_tmp147_);
+#line 823 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (self->priv->send_button);
+#line 823 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       self->priv->send_button = _tmp147_;
+#line 824 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp148_ = self->priv->send_button;
+#line 824 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_signal_connect_object (_tmp148_, "clicked", (GCallback) ___lambda16__gtk_button_clicked, self, 0);
+#line 826 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp149_ = self->priv->send_button;
+#line 826 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_widget_set_sensitive ((GtkWidget*) _tmp149_, FALSE);
+#line 827 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp150_ = top_table;
+#line 827 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp151_ = self->priv->send_button;
+#line 827 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp152_ = identity_manager_view_make_rigid (_tmp151_);
+#line 827 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp153_ = _tmp152_;
+#line 827 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp154_ = num_cols;
+#line 827 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp155_ = button_width;
+#line 827 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp156_ = num_cols;
+#line 827 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp157_ = row;
+#line 827 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp158_ = row;
+#line 827 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp159_ = fill;
+#line 827 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp160_ = fill;
+#line 827 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_table_attach (_tmp150_, _tmp153_, (guint) (_tmp154_ - _tmp155_), (guint) _tmp156_, (guint) _tmp157_, (guint) (_tmp158_ + 1), _tmp159_, _tmp160_, (guint) 0, (guint) 0);
+#line 827 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (_tmp153_);
+#line 828 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp161_ = row;
+#line 828 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       row = _tmp161_ + 1;
+#line 830 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp162_ = (GtkVBox*) gtk_vbox_new (FALSE, 0);
+#line 830 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_object_ref_sink (_tmp162_);
+#line 830 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       main_vbox = _tmp162_;
+#line 844 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp163_ = self->priv->ui_manager;
+#line 844 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp164_ = gtk_ui_manager_get_widget (_tmp163_, "/MenuBar");
+#line 844 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp165_ = _g_object_ref0 (_tmp164_);
+#line 844 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       menubar = _tmp165_;
+#line 845 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp166_ = main_vbox;
+#line 845 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp167_ = menubar;
+#line 845 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_box_pack_start ((GtkBox*) _tmp166_, _tmp167_, FALSE, FALSE, (guint) 0);
+#line 846 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp168_ = menubar;
+#line 846 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       set_bg_color (_tmp168_);
+#line 848 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp169_ = main_vbox;
+#line 848 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp170_ = top_table;
+#line 848 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_box_pack_start ((GtkBox*) _tmp169_, (GtkWidget*) _tmp170_, TRUE, TRUE, (guint) 6);
+#line 850 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp171_ = main_vbox;
+#line 850 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_container_add ((GtkContainer*) self, (GtkWidget*) _tmp171_);
+#line 851 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp172_ = main_vbox;
+#line 851 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_widget_show_all ((GtkWidget*) _tmp172_);
+#line 853 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp173_ = identity_manager_view_selection_in_progress (self);
+#line 853 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (!_tmp173_) {
+#line 4875 "moonshot-identity-management-view.c"
+               GtkCheckButton* _tmp174_ = NULL;
+#line 854 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp174_ = self->remember_identity_binding;
+#line 854 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               gtk_widget_hide ((GtkWidget*) _tmp174_);
+#line 4881 "moonshot-identity-management-view.c"
+       }
+#line 728 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (menubar);
+#line 728 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (main_vbox);
+#line 728 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (import_button);
+#line 728 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (add_button);
+#line 728 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (id_scrollwin);
+#line 728 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (viewport);
+#line 728 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (search_spacer);
+#line 728 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (search_vbox);
+#line 728 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (full_search_label);
+#line 728 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_free0 (search_label_markup);
+#line 728 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_free0 (search_tooltip_text);
+#line 728 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (top_table);
+#line 4907 "moonshot-identity-management-view.c"
+}
+
+
+gboolean identity_manager_view_selection_in_progress (IdentityManagerView* self) {
+       gboolean result = FALSE;
+       GQueue* _tmp0_ = NULL;
+       gboolean _tmp1_ = FALSE;
+#line 857 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_val_if_fail (self != NULL, FALSE);
+#line 858 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = self->priv->request_queue;
+#line 858 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp1_ = g_queue_is_empty (_tmp0_);
+#line 858 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       result = !_tmp1_;
+#line 858 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       return result;
+#line 4925 "moonshot-identity-management-view.c"
+}
+
+
+static void identity_manager_view_set_atk_name_description (IdentityManagerView* self, GtkWidget* widget, const gchar* name, const gchar* description) {
+       AtkObject* atk_widget = NULL;
+       GtkWidget* _tmp0_ = NULL;
+       AtkObject* _tmp1_ = NULL;
+       AtkObject* _tmp2_ = NULL;
+       const gchar* _tmp3_ = NULL;
+       const gchar* _tmp4_ = NULL;
+#line 861 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (self != NULL);
+#line 861 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (widget != NULL);
+#line 861 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (name != NULL);
+#line 861 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (description != NULL);
+#line 863 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = widget;
+#line 863 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp1_ = gtk_widget_get_accessible (_tmp0_);
+#line 863 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp2_ = _g_object_ref0 (_tmp1_);
+#line 863 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       atk_widget = _tmp2_;
+#line 865 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp3_ = name;
+#line 865 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       atk_object_set_name (atk_widget, _tmp3_);
+#line 866 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp4_ = description;
+#line 866 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       atk_object_set_description (atk_widget, _tmp4_);
+#line 861 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (atk_widget);
+#line 4962 "moonshot-identity-management-view.c"
+}
+
+
+static void __lambda17_ (IdentityManagerView* self) {
+       MoonshotLogger* _tmp0_ = NULL;
+#line 872 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = identity_manager_view_logger;
+#line 872 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       moonshot_logger_trace (_tmp0_, "Destroy event; calling Gtk.main_quit()", NULL);
+#line 873 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_main_quit ();
+#line 4974 "moonshot-identity-management-view.c"
+}
+
+
+static void ___lambda17__gtk_object_destroy (GtkObject* _sender, gpointer self) {
+#line 871 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       __lambda17_ ((IdentityManagerView*) self);
+#line 4981 "moonshot-identity-management-view.c"
+}
+
+
+static void _identity_manager_view_on_card_list_changed_identity_manager_model_card_list_changed (IdentityManagerModel* _sender, gpointer self) {
+#line 875 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       identity_manager_view_on_card_list_changed ((IdentityManagerView*) self);
+#line 4988 "moonshot-identity-management-view.c"
+}
+
+
+static gboolean __lambda18_ (IdentityManagerView* self) {
+       gboolean result = FALSE;
+       gboolean _tmp0_ = FALSE;
+#line 876 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = identity_manager_view_confirm_quit (self);
+#line 876 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       result = _tmp0_;
+#line 876 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       return result;
+#line 5001 "moonshot-identity-management-view.c"
+}
+
+
+static gboolean ___lambda18__gtk_widget_delete_event (GtkWidget* _sender, GdkEvent* event, gpointer self) {
+       gboolean result;
+       result = __lambda18_ ((IdentityManagerView*) self);
+#line 876 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       return result;
+#line 5010 "moonshot-identity-management-view.c"
+}
+
+
+static void identity_manager_view_connect_signals (IdentityManagerView* self) {
+       IdentityManagerModel* _tmp0_ = NULL;
+#line 869 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (self != NULL);
+#line 871 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_signal_connect_object ((GtkObject*) self, "destroy", (GCallback) ___lambda17__gtk_object_destroy, self, 0);
+#line 875 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = self->identities_manager;
+#line 875 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_signal_connect_object (_tmp0_, "card-list-changed", (GCallback) _identity_manager_view_on_card_list_changed_identity_manager_model_card_list_changed, self, 0);
+#line 876 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_signal_connect_object ((GtkWidget*) self, "delete-event", (GCallback) ___lambda18__gtk_widget_delete_event, self, 0);
+#line 5026 "moonshot-identity-management-view.c"
+}
+
+
+static gboolean identity_manager_view_confirm_quit (IdentityManagerView* self) {
+       gboolean result = FALSE;
+       MoonshotLogger* _tmp0_ = NULL;
+       gboolean _tmp1_ = FALSE;
+       gchar* _tmp2_ = NULL;
+       gchar* _tmp3_ = NULL;
+       gchar* _tmp4_ = NULL;
+       gchar* _tmp5_ = NULL;
+       gboolean _tmp6_ = FALSE;
+#line 879 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_val_if_fail (self != NULL, FALSE);
+#line 880 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = identity_manager_view_logger;
+#line 880 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp1_ = identity_manager_view_selection_in_progress (self);
+#line 880 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp2_ = bool_to_string (_tmp1_);
+#line 880 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp3_ = _tmp2_;
+#line 880 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp4_ = g_strconcat ("delete_event intercepted; selection_in_progress()=", _tmp3_, NULL);
+#line 880 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp5_ = _tmp4_;
+#line 880 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       moonshot_logger_trace (_tmp0_, _tmp5_, NULL);
+#line 880 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_free0 (_tmp5_);
+#line 880 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_free0 (_tmp3_);
+#line 882 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp6_ = identity_manager_view_selection_in_progress (self);
+#line 882 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (_tmp6_) {
+#line 5063 "moonshot-identity-management-view.c"
+               gboolean _result_ = FALSE;
+               const gchar* _tmp7_ = NULL;
+               gchar* _tmp8_ = NULL;
+               gchar* _tmp9_ = NULL;
+               gchar* _tmp10_ = NULL;
+               gchar* _tmp11_ = NULL;
+               GQueue* _tmp12_ = NULL;
+               gconstpointer _tmp13_ = NULL;
+               const gchar* _tmp14_ = NULL;
+               gchar* _tmp15_ = NULL;
+               gchar* _tmp16_ = NULL;
+               gchar* _tmp17_ = NULL;
+               gchar* _tmp18_ = NULL;
+               const gchar* _tmp19_ = NULL;
+               gchar* _tmp20_ = NULL;
+               gchar* _tmp21_ = NULL;
+               gboolean _tmp22_ = FALSE;
+               gboolean _tmp23_ = FALSE;
+               gboolean _tmp24_ = FALSE;
+#line 883 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp7_ = _ ("Do you wish to use the %s service?");
+#line 883 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp8_ = g_strconcat ("<span font-weight='heavy'>", _tmp7_, NULL);
+#line 883 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp9_ = _tmp8_;
+#line 883 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp10_ = g_strconcat (_tmp9_, "</span>", NULL);
+#line 883 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp11_ = _tmp10_;
+#line 883 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp12_ = self->priv->request_queue;
+#line 883 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp13_ = g_queue_peek_head (_tmp12_);
+#line 883 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp14_ = ((IdentityRequest*) _tmp13_)->service;
+#line 883 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp15_ = g_markup_printf_escaped (_tmp11_, _tmp14_);
+#line 883 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp16_ = _tmp15_;
+#line 883 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp17_ = g_strconcat (_tmp16_, "\n\n", NULL);
+#line 883 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp18_ = _tmp17_;
+#line 883 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp19_ = _ ("Select Yes to select an ID for this service, or No to cancel");
+#line 883 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp20_ = g_strconcat (_tmp18_, _tmp19_, NULL);
+#line 883 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp21_ = _tmp20_;
+#line 883 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp22_ = warning_dialog_confirm ((GtkWindow*) self, _tmp21_, "close_moonshot_window");
+#line 883 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp23_ = _tmp22_;
+#line 883 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_free0 (_tmp21_);
+#line 883 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_free0 (_tmp18_);
+#line 883 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_free0 (_tmp16_);
+#line 883 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_free0 (_tmp11_);
+#line 883 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_free0 (_tmp9_);
+#line 883 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _result_ = _tmp23_;
+#line 889 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp24_ = _result_;
+#line 889 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               if (_tmp24_) {
+#line 891 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       result = TRUE;
+#line 891 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       return result;
+#line 5137 "moonshot-identity-management-view.c"
+               }
+       }
+#line 896 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       result = FALSE;
+#line 896 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       return result;
+#line 5144 "moonshot-identity-management-view.c"
+}
+
+
+static GtkWidget* identity_manager_view_make_rigid (GtkButton* button) {
+       GtkWidget* result = NULL;
+       GtkVBox* fixed_height = NULL;
+       GtkVBox* _tmp0_ = NULL;
+       GtkButton* _tmp1_ = NULL;
+#line 899 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_val_if_fail (button != NULL, NULL);
+#line 902 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = (GtkVBox*) gtk_vbox_new (FALSE, 0);
+#line 902 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_object_ref_sink (_tmp0_);
+#line 902 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       fixed_height = _tmp0_;
+#line 903 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp1_ = button;
+#line 903 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_box_pack_start ((GtkBox*) fixed_height, (GtkWidget*) _tmp1_, FALSE, FALSE, (guint) 0);
+#line 905 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       result = (GtkWidget*) fixed_height;
+#line 905 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       return result;
+#line 5169 "moonshot-identity-management-view.c"
+}
+
+
+static void identity_manager_view_import_identities_cb (IdentityManagerView* self) {
+       GtkFileChooserDialog* dialog = NULL;
+       const gchar* _tmp0_ = NULL;
+       const gchar* _tmp1_ = NULL;
+       const gchar* _tmp2_ = NULL;
+       GtkFileChooserDialog* _tmp3_ = NULL;
+       const gchar* _tmp4_ = NULL;
+       GtkFileChooserDialog* _tmp7_ = NULL;
+       gint _tmp8_ = 0;
+       GtkFileChooserDialog* _tmp85_ = NULL;
+#line 908 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_return_if_fail (self != NULL);
+#line 909 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = _ ("Import File");
+#line 909 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp1_ = _ ("Cancel");
+#line 909 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp2_ = _ ("Open");
+#line 909 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp3_ = (GtkFileChooserDialog*) gtk_file_chooser_dialog_new (_tmp0_, (GtkWindow*) self, GTK_FILE_CHOOSER_ACTION_OPEN, _tmp1_, GTK_RESPONSE_CANCEL, _tmp2_, GTK_RESPONSE_ACCEPT, NULL, NULL);
+#line 909 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_object_ref_sink (_tmp3_);
+#line 909 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       dialog = _tmp3_;
+#line 916 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp4_ = self->priv->import_directory;
+#line 916 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (_tmp4_ != NULL) {
+#line 5201 "moonshot-identity-management-view.c"
+               GtkFileChooserDialog* _tmp5_ = NULL;
+               const gchar* _tmp6_ = NULL;
+#line 917 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp5_ = dialog;
+#line 917 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp6_ = self->priv->import_directory;
+#line 917 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               gtk_file_chooser_set_current_folder ((GtkFileChooser*) _tmp5_, _tmp6_);
+#line 5210 "moonshot-identity-management-view.c"
+       }
+#line 920 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp7_ = dialog;
+#line 920 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp8_ = gtk_dialog_run ((GtkDialog*) _tmp7_);
+#line 920 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       if (_tmp8_ == ((gint) GTK_RESPONSE_ACCEPT)) {
+#line 5218 "moonshot-identity-management-view.c"
+               gchar* filename = NULL;
+               GtkFileChooserDialog* _tmp9_ = NULL;
+               gchar* _tmp10_ = NULL;
+               GFile* file = NULL;
+               const gchar* _tmp11_ = NULL;
+               GFile* _tmp12_ = NULL;
+               GFile* _tmp13_ = NULL;
+               GFile* _tmp14_ = NULL;
+               GFile* _tmp15_ = NULL;
+               gchar* _tmp16_ = NULL;
+               gint import_count = 0;
+               WebProvisioningParser* webp = NULL;
+               const gchar* _tmp17_ = NULL;
+               WebProvisioningParser* _tmp18_ = NULL;
+               GtkFileChooserDialog* _tmp19_ = NULL;
+               WebProvisioningParser* _tmp20_ = NULL;
+               MoonshotLogger* _tmp21_ = NULL;
+               WebProvisioningParser* _tmp22_ = NULL;
+               IdCard** _tmp23_ = NULL;
+               gint _tmp23__length1 = 0;
+               IdCard** _tmp24_ = NULL;
+               gint _tmp24__length1 = 0;
+               gchar* _tmp25_ = NULL;
+               gchar* _tmp26_ = NULL;
+               gchar* _tmp27_ = NULL;
+               gchar* _tmp28_ = NULL;
+               WebProvisioningParser* _tmp29_ = NULL;
+               IdCard** _tmp30_ = NULL;
+               gint _tmp30__length1 = 0;
+               IdCard** _tmp31_ = NULL;
+               gint _tmp31__length1 = 0;
+               gint _tmp80_ = 0;
+#line 923 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp9_ = dialog;
+#line 923 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp10_ = gtk_file_chooser_get_filename ((GtkFileChooser*) _tmp9_);
+#line 923 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               filename = _tmp10_;
+#line 924 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp11_ = filename;
+#line 924 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp12_ = g_file_new_for_path (_tmp11_);
+#line 924 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               file = _tmp12_;
+#line 925 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp13_ = file;
+#line 925 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp14_ = g_file_get_parent (_tmp13_);
+#line 925 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp15_ = _tmp14_;
+#line 925 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp16_ = g_file_get_path (_tmp15_);
+#line 925 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_free0 (self->priv->import_directory);
+#line 925 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               self->priv->import_directory = _tmp16_;
+#line 925 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_object_unref0 (_tmp15_);
+#line 927 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               import_count = 0;
+#line 929 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp17_ = filename;
+#line 929 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp18_ = web_provisioning_parser_new (_tmp17_);
+#line 929 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               webp = _tmp18_;
+#line 930 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp19_ = dialog;
+#line 930 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               gtk_object_destroy ((GtkObject*) _tmp19_);
+#line 931 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp20_ = webp;
+#line 931 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               web_provisioning_parser_parse (_tmp20_);
+#line 932 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp21_ = identity_manager_view_logger;
+#line 932 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp22_ = webp;
+#line 932 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp23_ = web_provisioning_parser_get_cards (_tmp22_, &_tmp23__length1);
+#line 932 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp24_ = _tmp23_;
+#line 932 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp24__length1 = _tmp23__length1;
+#line 932 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp25_ = g_strdup_printf ("%i", _tmp24__length1);
+#line 932 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp26_ = _tmp25_;
+#line 932 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp27_ = g_strconcat ("import_identities_cb: Have ", _tmp26_, " IdCards", NULL);
+#line 932 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp28_ = _tmp27_;
+#line 932 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               moonshot_logger_trace (_tmp21_, _tmp28_, NULL);
+#line 932 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_free0 (_tmp28_);
+#line 932 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_free0 (_tmp26_);
+#line 933 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp29_ = webp;
+#line 933 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp30_ = web_provisioning_parser_get_cards (_tmp29_, &_tmp30__length1);
+#line 933 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp31_ = _tmp30_;
+#line 933 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp31__length1 = _tmp30__length1;
+#line 5325 "moonshot-identity-management-view.c"
+               {
+                       IdCard** card_collection = NULL;
+                       gint card_collection_length1 = 0;
+                       gint _card_collection_size_ = 0;
+                       gint card_it = 0;
+#line 933 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       card_collection = _tmp31_;
+#line 933 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       card_collection_length1 = _tmp31__length1;
+#line 933 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       for (card_it = 0; card_it < _tmp31__length1; card_it = card_it + 1) {
+#line 5337 "moonshot-identity-management-view.c"
+                               IdCard* _tmp32_ = NULL;
+                               IdCard* card = NULL;
+#line 933 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               _tmp32_ = _g_object_ref0 (card_collection[card_it]);
+#line 933 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                               card = _tmp32_;
+#line 5344 "moonshot-identity-management-view.c"
+                               {
+                                       IdCard* _tmp33_ = NULL;
+                                       IdCard* _tmp35_ = NULL;
+                                       TrustAnchor* _tmp36_ = NULL;
+                                       TrustAnchor* _tmp37_ = NULL;
+                                       gboolean _tmp38_ = FALSE;
+                                       gboolean _result_ = FALSE;
+                                       IdCard* _tmp61_ = NULL;
+                                       gboolean _tmp62_ = FALSE;
+                                       gboolean _tmp63_ = FALSE;
+                                       gboolean _tmp64_ = FALSE;
+#line 936 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp33_ = card;
+#line 936 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       if (_tmp33_ == NULL) {
+#line 5360 "moonshot-identity-management-view.c"
+                                               MoonshotLogger* _tmp34_ = NULL;
+#line 937 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp34_ = identity_manager_view_logger;
+#line 937 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               moonshot_logger_trace (_tmp34_, "import_identities_cb: Skipping null IdCard", NULL);
+#line 938 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _g_object_unref0 (card);
+#line 938 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               continue;
+#line 5370 "moonshot-identity-management-view.c"
+                                       }
+#line 941 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp35_ = card;
+#line 941 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp36_ = id_card_get_trust_anchor (_tmp35_);
+#line 941 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp37_ = _tmp36_;
+#line 941 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp38_ = trust_anchor_is_empty (_tmp37_);
+#line 941 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       if (!_tmp38_) {
+#line 5382 "moonshot-identity-management-view.c"
+                                               gchar* ta_datetime_added = NULL;
+                                               gchar* _tmp39_ = NULL;
+                                               IdCard* _tmp40_ = NULL;
+                                               TrustAnchor* _tmp41_ = NULL;
+                                               TrustAnchor* _tmp42_ = NULL;
+                                               const gchar* _tmp43_ = NULL;
+                                               MoonshotLogger* _tmp44_ = NULL;
+                                               IdCard* _tmp45_ = NULL;
+                                               const gchar* _tmp46_ = NULL;
+                                               const gchar* _tmp47_ = NULL;
+                                               const gchar* _tmp48_ = NULL;
+                                               IdCard* _tmp49_ = NULL;
+                                               TrustAnchor* _tmp50_ = NULL;
+                                               TrustAnchor* _tmp51_ = NULL;
+                                               const gchar* _tmp52_ = NULL;
+                                               const gchar* _tmp53_ = NULL;
+                                               IdCard* _tmp54_ = NULL;
+                                               TrustAnchor* _tmp55_ = NULL;
+                                               TrustAnchor* _tmp56_ = NULL;
+                                               const gchar* _tmp57_ = NULL;
+                                               const gchar* _tmp58_ = NULL;
+                                               gchar* _tmp59_ = NULL;
+                                               gchar* _tmp60_ = NULL;
+#line 942 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp39_ = trust_anchor_format_datetime_now ();
+#line 942 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               ta_datetime_added = _tmp39_;
+#line 943 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp40_ = card;
+#line 943 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp41_ = id_card_get_trust_anchor (_tmp40_);
+#line 943 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp42_ = _tmp41_;
+#line 943 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp43_ = ta_datetime_added;
+#line 943 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               trust_anchor_set_datetime_added (_tmp42_, _tmp43_);
+#line 944 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp44_ = identity_manager_view_logger;
+#line 944 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp45_ = card;
+#line 944 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp46_ = id_card_get_display_name (_tmp45_);
+#line 944 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp47_ = _tmp46_;
+#line 944 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp48_ = ta_datetime_added;
+#line 944 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp49_ = card;
+#line 944 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp50_ = id_card_get_trust_anchor (_tmp49_);
+#line 944 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp51_ = _tmp50_;
+#line 944 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp52_ = trust_anchor_get_ca_cert (_tmp51_);
+#line 944 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp53_ = _tmp52_;
+#line 944 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp54_ = card;
+#line 944 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp55_ = id_card_get_trust_anchor (_tmp54_);
+#line 944 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp56_ = _tmp55_;
+#line 944 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp57_ = trust_anchor_get_server_cert (_tmp56_);
+#line 944 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp58_ = _tmp57_;
+#line 944 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp59_ = g_strdup_printf ("import_identities_cb : Set ta_datetime_added for '%s' to '%s'; ca_cert" \
+"='%s'; server_cert='%s'", _tmp47_, _tmp48_, _tmp53_, _tmp58_);
+#line 944 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp60_ = _tmp59_;
+#line 944 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               moonshot_logger_trace (_tmp44_, _tmp60_, NULL);
+#line 944 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _g_free0 (_tmp60_);
+#line 941 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _g_free0 (ta_datetime_added);
+#line 5460 "moonshot-identity-management-view.c"
+                                       }
+#line 949 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp61_ = card;
+#line 949 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp62_ = self->priv->use_flat_file_store;
+#line 949 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp63_ = identity_manager_view_add_identity (self, _tmp61_, _tmp62_, NULL);
+#line 949 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _result_ = _tmp63_;
+#line 950 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _tmp64_ = _result_;
+#line 950 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       if (_tmp64_) {
+#line 5474 "moonshot-identity-management-view.c"
+                                               MoonshotLogger* _tmp65_ = NULL;
+                                               IdCard* _tmp66_ = NULL;
+                                               const gchar* _tmp67_ = NULL;
+                                               const gchar* _tmp68_ = NULL;
+                                               const gchar* _tmp69_ = NULL;
+                                               gchar* _tmp70_ = NULL;
+                                               gchar* _tmp71_ = NULL;
+                                               gint _tmp72_ = 0;
+#line 951 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp65_ = identity_manager_view_logger;
+#line 951 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp66_ = card;
+#line 951 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp67_ = id_card_get_display_name (_tmp66_);
+#line 951 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp68_ = _tmp67_;
+#line 951 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp69_ = string_to_string (_tmp68_);
+#line 951 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp70_ = g_strconcat ("import_identities_cb: Added or updated '", _tmp69_, "'", NULL);
+#line 951 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp71_ = _tmp70_;
+#line 951 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               moonshot_logger_trace (_tmp65_, _tmp71_, NULL);
+#line 951 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _g_free0 (_tmp71_);
+#line 952 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp72_ = import_count;
+#line 952 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               import_count = _tmp72_ + 1;
+#line 5505 "moonshot-identity-management-view.c"
+                                       } else {
+                                               MoonshotLogger* _tmp73_ = NULL;
+                                               IdCard* _tmp74_ = NULL;
+                                               const gchar* _tmp75_ = NULL;
+                                               const gchar* _tmp76_ = NULL;
+                                               const gchar* _tmp77_ = NULL;
+                                               gchar* _tmp78_ = NULL;
+                                               gchar* _tmp79_ = NULL;
+#line 955 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp73_ = identity_manager_view_logger;
+#line 955 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp74_ = card;
+#line 955 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp75_ = id_card_get_display_name (_tmp74_);
+#line 955 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp76_ = _tmp75_;
+#line 955 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp77_ = string_to_string (_tmp76_);
+#line 955 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp78_ = g_strconcat ("import_identities_cb: Did not add or update '", _tmp77_, "'", NULL);
+#line 955 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _tmp79_ = _tmp78_;
+#line 955 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               moonshot_logger_trace (_tmp73_, _tmp79_, NULL);
+#line 955 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                               _g_free0 (_tmp79_);
+#line 5532 "moonshot-identity-management-view.c"
+                                       }
+#line 933 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                                       _g_object_unref0 (card);
+#line 5536 "moonshot-identity-management-view.c"
+                               }
+                       }
+               }
+#line 958 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _tmp80_ = import_count;
+#line 958 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               if (_tmp80_ == 0) {
+#line 5544 "moonshot-identity-management-view.c"
+                       GtkMessageDialog* msg_dialog = NULL;
+                       const gchar* _tmp81_ = NULL;
+                       GtkMessageDialog* _tmp82_ = NULL;
+                       GtkMessageDialog* _tmp83_ = NULL;
+                       GtkMessageDialog* _tmp84_ = NULL;
+#line 959 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp81_ = _ ("Import completed. No identities were added or updated.");
+#line 959 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp82_ = (GtkMessageDialog*) gtk_message_dialog_new ((GtkWindow*) self, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_OK, "%s", _tmp81_);
+#line 959 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       g_object_ref_sink (_tmp82_);
+#line 959 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       msg_dialog = _tmp82_;
+#line 965 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp83_ = msg_dialog;
+#line 965 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       gtk_dialog_run ((GtkDialog*) _tmp83_);
+#line 966 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _tmp84_ = msg_dialog;
+#line 966 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       gtk_object_destroy ((GtkObject*) _tmp84_);
+#line 958 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+                       _g_object_unref0 (msg_dialog);
+#line 5568 "moonshot-identity-management-view.c"
+               }
+#line 920 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_object_unref0 (webp);
+#line 920 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_object_unref0 (file);
+#line 920 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+               _g_free0 (filename);
+#line 5576 "moonshot-identity-management-view.c"
+       }
+#line 969 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp85_ = dialog;
+#line 969 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       gtk_object_destroy ((GtkObject*) _tmp85_);
+#line 908 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (dialog);
+#line 5584 "moonshot-identity-management-view.c"
+}
+
+
+static void identity_manager_view_class_init (IdentityManagerViewClass * klass) {
+       MoonshotLogger* _tmp0_ = NULL;
+       GdkColor _tmp1_ = {0};
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       identity_manager_view_parent_class = g_type_class_peek_parent (klass);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       g_type_class_add_private (klass, sizeof (IdentityManagerViewPrivate));
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       G_OBJECT_CLASS (klass)->finalize = identity_manager_view_finalize;
+#line 37 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = get_logger ("IdentityManagerView");
+#line 37 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       identity_manager_view_logger = _tmp0_;
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       make_color ((guint16) 65535, (guint16) 65535, (guint16) 65535, &_tmp1_);
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       identity_manager_view_white = _tmp1_;
+#line 5605 "moonshot-identity-management-view.c"
+}
+
+
+static void identity_manager_view_instance_init (IdentityManagerView * self) {
+       GtkUIManager* _tmp0_ = NULL;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       self->priv = IDENTITY_MANAGER_VIEW_GET_PRIVATE (self);
+#line 39 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       self->priv->use_flat_file_store = FALSE;
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _tmp0_ = gtk_ui_manager_new ();
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       self->priv->ui_manager = _tmp0_;
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       self->remember_identity_binding = NULL;
+#line 71 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       self->priv->selected_card = NULL;
+#line 73 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       self->priv->import_directory = NULL;
+#line 5625 "moonshot-identity-management-view.c"
+}
+
+
+static void identity_manager_view_finalize (GObject* obj) {
+       IdentityManagerView * self;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerView);
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _identity_manager_app_unref0 (self->parent_app);
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (self->priv->ui_manager);
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (self->priv->search_entry);
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (self->priv->custom_vbox);
+#line 55 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (self->priv->service_prompt_vbox);
+#line 56 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (self->priv->edit_button);
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (self->priv->remove_button);
+#line 59 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (self->priv->send_button);
+#line 62 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (self->priv->filter);
+#line 64 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (self->identities_manager);
+#line 67 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       __g_queue_free__g_object_unref0_0 (self->priv->request_queue);
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (self->remember_identity_binding);
+#line 71 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_object_unref0 (self->priv->selected_card);
+#line 73 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       _g_free0 (self->priv->import_directory);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-management-view.vala"
+       G_OBJECT_CLASS (identity_manager_view_parent_class)->finalize (obj);
+#line 5663 "moonshot-identity-management-view.c"
+}
+
+
+GType identity_manager_view_get_type (void) {
+       static volatile gsize identity_manager_view_type_id__volatile = 0;
+       if (g_once_init_enter (&identity_manager_view_type_id__volatile)) {
+               static const GTypeInfo g_define_type_info = { sizeof (IdentityManagerViewClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) identity_manager_view_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (IdentityManagerView), 0, (GInstanceInitFunc) identity_manager_view_instance_init, NULL };
+               GType identity_manager_view_type_id;
+               identity_manager_view_type_id = g_type_register_static (GTK_TYPE_WINDOW, "IdentityManagerView", &g_define_type_info, 0);
+               g_once_init_leave (&identity_manager_view_type_id__volatile, identity_manager_view_type_id);
+       }
+       return identity_manager_view_type_id__volatile;
+}
+
+
+static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func) {
+       if ((array != NULL) && (destroy_func != NULL)) {
+               int i;
+               for (i = 0; i < array_length; i = i + 1) {
+                       if (((gpointer*) array)[i] != NULL) {
+                               destroy_func (((gpointer*) array)[i]);
+                       }
+               }
+       }
+}
+
+
+static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func) {
+       _vala_array_destroy (array, array_length, destroy_func);
+       g_free (array);
+}
+
+
+static gint _vala_array_length (gpointer array) {
+       int length;
+       length = 0;
+       if (array) {
+               while (((gpointer*) array)[length]) {
+                       length++;
+               }
+       }
+       return length;
+}
+
+
+
diff --git a/src/moonshot-identity-manager-app.c b/src/moonshot-identity-manager-app.c
new file mode 100644 (file)
index 0000000..ab4e712
--- /dev/null
@@ -0,0 +1,3264 @@
+/* moonshot-identity-manager-app.c generated by valac 0.34.9, the Vala compiler
+ * generated from moonshot-identity-manager-app.vala, do not modify */
+
+/*
+ * Copyright (c) 2011-2016, JANET(UK)
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * 3. Neither the name of JANET(UK) nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+*/
+
+#include <glib.h>
+#include <glib-object.h>
+#include <gio/gio.h>
+#include <string.h>
+#include <gtk/gtk.h>
+#include <stdlib.h>
+#include <gnome-keyring.h>
+#include <gee.h>
+#include <stdio.h>
+#include <glib/gi18n-lib.h>
+#include "config.h"
+#include <gobject/gvaluecollector.h>
+
+
+#define TYPE_IIDENTITY_MANAGER (iidentity_manager_get_type ())
+#define IIDENTITY_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IIDENTITY_MANAGER, IIdentityManager))
+#define IS_IIDENTITY_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IIDENTITY_MANAGER))
+#define IIDENTITY_MANAGER_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), TYPE_IIDENTITY_MANAGER, IIdentityManagerIface))
+
+typedef struct _IIdentityManager IIdentityManager;
+typedef struct _IIdentityManagerIface IIdentityManagerIface;
+
+#define TYPE_IIDENTITY_MANAGER_PROXY (iidentity_manager_proxy_get_type ())
+typedef GDBusProxy IIdentityManagerProxy;
+typedef GDBusProxyClass IIdentityManagerProxyClass;
+
+#define TYPE_IDENTITY_MANAGER_APP (identity_manager_app_get_type ())
+#define IDENTITY_MANAGER_APP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_MANAGER_APP, IdentityManagerApp))
+#define IDENTITY_MANAGER_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_MANAGER_APP, IdentityManagerAppClass))
+#define IS_IDENTITY_MANAGER_APP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_MANAGER_APP))
+#define IS_IDENTITY_MANAGER_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_MANAGER_APP))
+#define IDENTITY_MANAGER_APP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_MANAGER_APP, IdentityManagerAppClass))
+
+typedef struct _IdentityManagerApp IdentityManagerApp;
+typedef struct _IdentityManagerAppClass IdentityManagerAppClass;
+typedef struct _IdentityManagerAppPrivate IdentityManagerAppPrivate;
+
+#define TYPE_IDENTITY_MANAGER_MODEL (identity_manager_model_get_type ())
+#define IDENTITY_MANAGER_MODEL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_MANAGER_MODEL, IdentityManagerModel))
+#define IDENTITY_MANAGER_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_MANAGER_MODEL, IdentityManagerModelClass))
+#define IS_IDENTITY_MANAGER_MODEL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_MANAGER_MODEL))
+#define IS_IDENTITY_MANAGER_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_MANAGER_MODEL))
+#define IDENTITY_MANAGER_MODEL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_MANAGER_MODEL, IdentityManagerModelClass))
+
+typedef struct _IdentityManagerModel IdentityManagerModel;
+typedef struct _IdentityManagerModelClass IdentityManagerModelClass;
+
+#define TYPE_ID_CARD (id_card_get_type ())
+#define ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ID_CARD, IdCard))
+#define ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ID_CARD, IdCardClass))
+#define IS_ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ID_CARD))
+#define IS_ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ID_CARD))
+#define ID_CARD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ID_CARD, IdCardClass))
+
+typedef struct _IdCard IdCard;
+typedef struct _IdCardClass IdCardClass;
+
+#define TYPE_IDENTITY_MANAGER_VIEW (identity_manager_view_get_type ())
+#define IDENTITY_MANAGER_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerView))
+#define IDENTITY_MANAGER_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerViewClass))
+#define IS_IDENTITY_MANAGER_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_MANAGER_VIEW))
+#define IS_IDENTITY_MANAGER_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_MANAGER_VIEW))
+#define IDENTITY_MANAGER_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerViewClass))
+
+typedef struct _IdentityManagerView IdentityManagerView;
+typedef struct _IdentityManagerViewClass IdentityManagerViewClass;
+
+#define TYPE_MOONSHOT_SERVER (moonshot_server_get_type ())
+#define MOONSHOT_SERVER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MOONSHOT_SERVER, MoonshotServer))
+#define MOONSHOT_SERVER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MOONSHOT_SERVER, MoonshotServerClass))
+#define IS_MOONSHOT_SERVER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MOONSHOT_SERVER))
+#define IS_MOONSHOT_SERVER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MOONSHOT_SERVER))
+#define MOONSHOT_SERVER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MOONSHOT_SERVER, MoonshotServerClass))
+
+typedef struct _MoonshotServer MoonshotServer;
+typedef struct _MoonshotServerClass MoonshotServerClass;
+
+#define TYPE_MOONSHOT_LOGGER (moonshot_logger_get_type ())
+#define MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLogger))
+#define MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+#define IS_MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MOONSHOT_LOGGER))
+#define IS_MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MOONSHOT_LOGGER))
+#define MOONSHOT_LOGGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+
+typedef struct _MoonshotLogger MoonshotLogger;
+typedef struct _MoonshotLoggerClass MoonshotLoggerClass;
+#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
+
+#define IIDENTITY_CARD_STORE_TYPE_STORE_TYPE (iidentity_card_store_store_type_get_type ())
+
+#define TYPE_IDENTITY_REQUEST (identity_request_get_type ())
+#define IDENTITY_REQUEST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_REQUEST, IdentityRequest))
+#define IDENTITY_REQUEST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_REQUEST, IdentityRequestClass))
+#define IS_IDENTITY_REQUEST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_REQUEST))
+#define IS_IDENTITY_REQUEST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_REQUEST))
+#define IDENTITY_REQUEST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_REQUEST, IdentityRequestClass))
+
+typedef struct _IdentityRequest IdentityRequest;
+typedef struct _IdentityRequestClass IdentityRequestClass;
+typedef struct _Block1Data Block1Data;
+#define _identity_manager_app_unref0(var) ((var == NULL) ? NULL : (var = (identity_manager_app_unref (var), NULL)))
+typedef struct _IdentityRequestPrivate IdentityRequestPrivate;
+#define _g_free0(var) (var = (g_free (var), NULL))
+
+#define TYPE_RULE (rule_get_type ())
+typedef struct _Rule Rule;
+#define _g_pattern_spec_free0(var) ((var == NULL) ? NULL : (var = (g_pattern_spec_free (var), NULL)))
+#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))
+typedef struct _Block2Data Block2Data;
+typedef struct _ParamSpecIdentityManagerApp ParamSpecIdentityManagerApp;
+#define _g_option_context_free0(var) ((var == NULL) ? NULL : (var = (g_option_context_free (var), NULL)))
+#define _g_main_loop_unref0(var) ((var == NULL) ? NULL : (var = (g_main_loop_unref (var), NULL)))
+
+struct _IIdentityManagerIface {
+       GTypeInterface parent_iface;
+       gboolean (*show_ui) (IIdentityManager* self, GError** error);
+};
+
+struct _IdentityManagerApp {
+       GTypeInstance parent_instance;
+       volatile int ref_count;
+       IdentityManagerAppPrivate * priv;
+       IdentityManagerModel* model;
+       IdCard* default_id_card;
+       gboolean explicitly_launched;
+       IdentityManagerView* view;
+};
+
+struct _IdentityManagerAppClass {
+       GTypeClass parent_class;
+       void (*finalize) (IdentityManagerApp *self);
+};
+
+struct _IdentityManagerAppPrivate {
+       MoonshotServer* ipc_server;
+       gboolean name_is_owned;
+       gboolean show_requested;
+       gboolean _use_flat_file_store;
+       gboolean _headless;
+};
+
+typedef enum  {
+       IIDENTITY_CARD_STORE_STORE_TYPE_FLAT_FILE,
+       IIDENTITY_CARD_STORE_STORE_TYPE_KEYRING
+} IIdentityCardStoreStoreType;
+
+struct _Block1Data {
+       int _ref_count_;
+       IdentityManagerApp* self;
+       IdCard* identity;
+       IdentityRequest* request;
+};
+
+struct _IdentityRequest {
+       GObject parent_instance;
+       IdentityRequestPrivate * priv;
+       IdCard* id_card;
+       gboolean complete;
+       gboolean select_default;
+       gchar* nai;
+       gchar* password;
+       gchar* service;
+       GSList* candidates;
+};
+
+struct _IdentityRequestClass {
+       GObjectClass parent_class;
+};
+
+struct _Rule {
+       gchar* pattern;
+       gchar* always_confirm;
+};
+
+struct _Block2Data {
+       int _ref_count_;
+       IdentityManagerApp* self;
+       gboolean shown;
+       gchar* our_name;
+};
+
+struct _ParamSpecIdentityManagerApp {
+       GParamSpec parent_instance;
+};
+
+
+static gpointer identity_manager_app_parent_class = NULL;
+extern MoonshotLogger* identity_manager_app_logger;
+MoonshotLogger* identity_manager_app_logger = NULL;
+extern gboolean explicitly_launched;
+gboolean explicitly_launched = TRUE;
+extern gboolean use_flat_file_store;
+gboolean use_flat_file_store = FALSE;
+extern gboolean gtk_available;
+
+GType iidentity_manager_proxy_get_type (void) G_GNUC_CONST;
+guint iidentity_manager_register_object (void* object, GDBusConnection* connection, const gchar* path, GError** error);
+GType iidentity_manager_get_type (void) G_GNUC_CONST;
+gboolean iidentity_manager_show_ui (IIdentityManager* self, GError** error);
+static void iidentity_manager_proxy_g_signal (GDBusProxy* proxy, const gchar* sender_name, const gchar* signal_name, GVariant* parameters);
+static gboolean iidentity_manager_proxy_show_ui (IIdentityManager* self, GError** error);
+static void iidentity_manager_proxy_iidentity_manager_interface_init (IIdentityManagerIface* iface);
+static void _dbus_iidentity_manager_show_ui (IIdentityManager* self, GVariant* _parameters_, GDBusMethodInvocation* invocation);
+static void iidentity_manager_dbus_interface_method_call (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* method_name, GVariant* parameters, GDBusMethodInvocation* invocation, gpointer user_data);
+static GVariant* iidentity_manager_dbus_interface_get_property (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* property_name, GError** error, gpointer user_data);
+static gboolean iidentity_manager_dbus_interface_set_property (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* property_name, GVariant* value, GError** error, gpointer user_data);
+static void _iidentity_manager_unregister_object (gpointer user_data);
+gpointer identity_manager_app_ref (gpointer instance);
+void identity_manager_app_unref (gpointer instance);
+GParamSpec* param_spec_identity_manager_app (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
+void value_set_identity_manager_app (GValue* value, gpointer v_object);
+void value_take_identity_manager_app (GValue* value, gpointer v_object);
+gpointer value_get_identity_manager_app (const GValue* value);
+GType identity_manager_app_get_type (void) G_GNUC_CONST;
+GType identity_manager_model_get_type (void) G_GNUC_CONST;
+GType id_card_get_type (void) G_GNUC_CONST;
+GType identity_manager_view_get_type (void) G_GNUC_CONST;
+GType moonshot_server_get_type (void) G_GNUC_CONST;
+guint moonshot_server_register_object (void* object, GDBusConnection* connection, const gchar* path, GError** error);
+#define IDENTITY_MANAGER_APP_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_IDENTITY_MANAGER_APP, IdentityManagerAppPrivate))
+enum  {
+       IDENTITY_MANAGER_APP_DUMMY_PROPERTY
+};
+GType moonshot_logger_get_type (void) G_GNUC_CONST;
+MoonshotLogger* get_logger (const gchar* name);
+void identity_manager_app_show (IdentityManagerApp* self);
+void identity_manager_view_make_visible (IdentityManagerView* self);
+IdentityManagerApp* identity_manager_app_new (gboolean headless, gboolean use_flat_file_store);
+IdentityManagerApp* identity_manager_app_construct (GType object_type, gboolean headless, gboolean use_flat_file_store);
+static void identity_manager_app_set_headless (IdentityManagerApp* self, gboolean value);
+gboolean UserForcesFlatFileStore (void);
+static void identity_manager_app_set_use_flat_file_store (IdentityManagerApp* self, gboolean value);
+GType iidentity_card_store_store_type_get_type (void) G_GNUC_CONST;
+IdentityManagerModel* identity_manager_model_new (IdentityManagerApp* parent_app, IIdentityCardStoreStoreType store_type);
+IdentityManagerModel* identity_manager_model_construct (GType object_type, IdentityManagerApp* parent_app, IIdentityCardStoreStoreType store_type);
+gboolean identity_manager_model_HasNonTrivialIdentities (IdentityManagerModel* self);
+void identity_manager_model_set_store_type (IdentityManagerModel* self, IIdentityCardStoreStoreType type);
+IdentityManagerView* identity_manager_view_new (IdentityManagerApp* app, gboolean use_flat_file_store);
+IdentityManagerView* identity_manager_view_construct (GType object_type, IdentityManagerApp* app, gboolean use_flat_file_store);
+GeeLinkedList* identity_manager_model_get_card_list (IdentityManagerModel* self);
+static void identity_manager_app_init_ipc_server (IdentityManagerApp* self);
+gboolean identity_manager_app_add_identity (IdentityManagerApp* self, IdCard* id, gboolean force_flat_file_store, GeeArrayList** old_duplicates);
+void moonshot_logger_trace (MoonshotLogger* self, const gchar* message, GError* e);
+gboolean identity_manager_view_add_identity (IdentityManagerView* self, IdCard* id_card, gboolean force_flat_file_store, GeeArrayList** old_duplicates);
+void identity_manager_model_add_card (IdentityManagerModel* self, IdCard* card, gboolean force_flat_file_store, GeeArrayList** old_duplicates);
+GType identity_request_get_type (void) G_GNUC_CONST;
+void identity_manager_app_select_identity (IdentityManagerApp* self, IdentityRequest* request);
+static Block1Data* block1_data_ref (Block1Data* _data1_);
+static void block1_data_unref (void * _userdata_);
+const gchar* id_card_get_nai (IdCard* self);
+const gchar* id_card_get_display_name (IdCard* self);
+GeeArrayList* id_card_get_services (IdCard* self);
+GType rule_get_type (void) G_GNUC_CONST;
+Rule* rule_dup (const Rule* self);
+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 gboolean identity_manager_app_match_service_pattern (IdentityManagerApp* self, const gchar* service, const gchar* pattern);
+IdCard* id_card_new (void);
+IdCard* id_card_construct (GType object_type);
+void id_card_set_display_name (IdCard* self, const gchar* value);
+void id_card_set_username (IdCard* self, const gchar* value);
+void id_card_set_issuer (IdCard* self, const gchar* value);
+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 __lambda5_ (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, gboolean update_card);
+static gboolean ___lambda5__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 ___lambda23_ (IdentityManagerApp* self, GDBusConnection* conn, const gchar* name);
+static void ____lambda23__gbus_name_acquired_callback (GDBusConnection* connection, const gchar* name, gpointer self);
+static void ___lambda24_ (IdentityManagerApp* self, GDBusConnection* conn, const gchar* name);
+void moonshot_logger_error (MoonshotLogger* self, const gchar* message, GError* e);
+static void ____lambda24__gbus_name_lost_callback (GDBusConnection* connection, const gchar* name, gpointer self);
+static Block2Data* block2_data_ref (Block2Data* _data2_);
+static void block2_data_unref (void * _userdata_);
+static void __lambda25_ (Block2Data* _data2_, GDBusConnection* conn, const gchar* name);
+static void ___lambda25__gbus_name_acquired_callback (GDBusConnection* connection, const gchar* name, gpointer self);
+static void __lambda26_ (Block2Data* _data2_);
+static void ___lambda26__gbus_name_lost_callback (GDBusConnection* connection, const gchar* name, gpointer self);
+gboolean identity_manager_app_get_use_flat_file_store (IdentityManagerApp* self);
+gboolean identity_manager_app_get_headless (IdentityManagerApp* 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);
+static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func);
+static gint _vala_array_length (gpointer array);
+
+static const GDBusArgInfo _iidentity_manager_dbus_arg_info_show_ui_result = {-1, "result", "b"};
+static const GDBusArgInfo * const _iidentity_manager_dbus_arg_info_show_ui_in[] = {NULL};
+static const GDBusArgInfo * const _iidentity_manager_dbus_arg_info_show_ui_out[] = {&_iidentity_manager_dbus_arg_info_show_ui_result, NULL};
+static const GDBusMethodInfo _iidentity_manager_dbus_method_info_show_ui = {-1, "ShowUi", (GDBusArgInfo **) (&_iidentity_manager_dbus_arg_info_show_ui_in), (GDBusArgInfo **) (&_iidentity_manager_dbus_arg_info_show_ui_out)};
+static const GDBusMethodInfo * const _iidentity_manager_dbus_method_info[] = {&_iidentity_manager_dbus_method_info_show_ui, NULL};
+static const GDBusSignalInfo * const _iidentity_manager_dbus_signal_info[] = {NULL};
+static const GDBusPropertyInfo * const _iidentity_manager_dbus_property_info[] = {NULL};
+static const GDBusInterfaceInfo _iidentity_manager_dbus_interface_info = {-1, "org.janet.Moonshot", (GDBusMethodInfo **) (&_iidentity_manager_dbus_method_info), (GDBusSignalInfo **) (&_iidentity_manager_dbus_signal_info), (GDBusPropertyInfo **) (&_iidentity_manager_dbus_property_info)};
+static const GDBusInterfaceVTable _iidentity_manager_dbus_interface_vtable = {iidentity_manager_dbus_interface_method_call, iidentity_manager_dbus_interface_get_property, iidentity_manager_dbus_interface_set_property};
+const GOptionEntry options[3] = {{"dbus-launched", (gchar) 0, (gint) G_OPTION_FLAG_REVERSE, G_OPTION_ARG_NONE, &explicitly_launched, "launch for dbus rpc use", NULL}, {"flat-file-store", (gchar) 0, 0, G_OPTION_ARG_NONE, &use_flat_file_store, "force use of flat file identity store (used by default only for headle" \
+"ss operation)", NULL}, {NULL}};
+
+gboolean iidentity_manager_show_ui (IIdentityManager* self, GError** error) {
+#line 41 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_return_val_if_fail (self != NULL, FALSE);
+#line 41 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       return IIDENTITY_MANAGER_GET_INTERFACE (self)->show_ui (self, error);
+#line 347 "moonshot-identity-manager-app.c"
+}
+
+
+static void iidentity_manager_base_init (IIdentityManagerIface * iface) {
+#line 37 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       static gboolean initialized = FALSE;
+#line 37 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (!initialized) {
+#line 37 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               initialized = TRUE;
+#line 358 "moonshot-identity-manager-app.c"
+       }
+}
+
+
+GType iidentity_manager_get_type (void) {
+       static volatile gsize iidentity_manager_type_id__volatile = 0;
+       if (g_once_init_enter (&iidentity_manager_type_id__volatile)) {
+               static const GTypeInfo g_define_type_info = { sizeof (IIdentityManagerIface), (GBaseInitFunc) iidentity_manager_base_init, (GBaseFinalizeFunc) NULL, (GClassInitFunc) NULL, (GClassFinalizeFunc) NULL, NULL, 0, 0, (GInstanceInitFunc) NULL, NULL };
+               GType iidentity_manager_type_id;
+               iidentity_manager_type_id = g_type_register_static (G_TYPE_INTERFACE, "IIdentityManager", &g_define_type_info, 0);
+               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);
+       }
+       return iidentity_manager_type_id__volatile;
+}
+
+
+G_DEFINE_TYPE_EXTENDED (IIdentityManagerProxy, iidentity_manager_proxy, G_TYPE_DBUS_PROXY, 0, G_IMPLEMENT_INTERFACE (TYPE_IIDENTITY_MANAGER, iidentity_manager_proxy_iidentity_manager_interface_init) )
+static void iidentity_manager_proxy_class_init (IIdentityManagerProxyClass* klass) {
+       G_DBUS_PROXY_CLASS (klass)->g_signal = iidentity_manager_proxy_g_signal;
+}
+
+
+static void iidentity_manager_proxy_g_signal (GDBusProxy* proxy, const gchar* sender_name, const gchar* signal_name, GVariant* parameters) {
+}
+
+
+static void iidentity_manager_proxy_init (IIdentityManagerProxy* self) {
+}
+
+
+static gboolean iidentity_manager_proxy_show_ui (IIdentityManager* self, GError** error) {
+       GDBusMessage *_message;
+       GVariant *_arguments;
+       GVariantBuilder _arguments_builder;
+       GDBusMessage *_reply_message;
+       GVariant *_reply;
+       GVariantIter _reply_iter;
+       gboolean _result = FALSE;
+       GVariant* _tmp2_;
+       G_IO_ERROR;
+       _message = g_dbus_message_new_method_call (g_dbus_proxy_get_name ((GDBusProxy *) self), g_dbus_proxy_get_object_path ((GDBusProxy *) self), "org.janet.Moonshot", "ShowUi");
+       g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
+       _arguments = g_variant_builder_end (&_arguments_builder);
+       g_dbus_message_set_body (_message, _arguments);
+       _reply_message = g_dbus_connection_send_message_with_reply_sync (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, NULL, error);
+       g_object_unref (_message);
+       if (!_reply_message) {
+               gboolean _tmp0_ = FALSE;
+               return _tmp0_;
+       }
+       if (g_dbus_message_to_gerror (_reply_message, error)) {
+               gboolean _tmp1_ = FALSE;
+               g_object_unref (_reply_message);
+               return _tmp1_;
+       }
+       _reply = g_dbus_message_get_body (_reply_message);
+       g_variant_iter_init (&_reply_iter, _reply);
+       _tmp2_ = g_variant_iter_next_value (&_reply_iter);
+       _result = g_variant_get_boolean (_tmp2_);
+       g_variant_unref (_tmp2_);
+       g_object_unref (_reply_message);
+       return _result;
+}
+
+
+static void iidentity_manager_proxy_iidentity_manager_interface_init (IIdentityManagerIface* iface) {
+       iface->show_ui = iidentity_manager_proxy_show_ui;
+}
+
+
+static void _dbus_iidentity_manager_show_ui (IIdentityManager* self, GVariant* _parameters_, GDBusMethodInvocation* invocation) {
+       GError* error = NULL;
+       GVariantIter _arguments_iter;
+       GDBusMessage* _reply_message = NULL;
+       GVariant* _reply;
+       GVariantBuilder _reply_builder;
+       gboolean result;
+       g_variant_iter_init (&_arguments_iter, _parameters_);
+       result = iidentity_manager_show_ui (self, &error);
+       if (error) {
+               g_dbus_method_invocation_return_gerror (invocation, error);
+               return;
+       }
+       _reply_message = g_dbus_message_new_method_reply (g_dbus_method_invocation_get_message (invocation));
+       g_variant_builder_init (&_reply_builder, G_VARIANT_TYPE_TUPLE);
+       g_variant_builder_add_value (&_reply_builder, g_variant_new_boolean (result));
+       _reply = g_variant_builder_end (&_reply_builder);
+       g_dbus_message_set_body (_reply_message, _reply);
+       g_dbus_connection_send_message (g_dbus_method_invocation_get_connection (invocation), _reply_message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
+       g_object_unref (invocation);
+       g_object_unref (_reply_message);
+}
+
+
+static void iidentity_manager_dbus_interface_method_call (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* method_name, GVariant* parameters, GDBusMethodInvocation* invocation, gpointer user_data) {
+       gpointer* data;
+       gpointer object;
+       data = user_data;
+       object = data[0];
+       if (strcmp (method_name, "ShowUi") == 0) {
+               _dbus_iidentity_manager_show_ui (object, parameters, invocation);
+       } else {
+               g_object_unref (invocation);
+       }
+}
+
+
+static GVariant* iidentity_manager_dbus_interface_get_property (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* property_name, GError** error, gpointer user_data) {
+       gpointer* data;
+       gpointer object;
+       data = user_data;
+       object = data[0];
+       return NULL;
+}
+
+
+static gboolean iidentity_manager_dbus_interface_set_property (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* property_name, GVariant* value, GError** error, gpointer user_data) {
+       gpointer* data;
+       gpointer object;
+       data = user_data;
+       object = data[0];
+       return FALSE;
+}
+
+
+guint iidentity_manager_register_object (gpointer object, GDBusConnection* connection, const gchar* path, GError** error) {
+       guint result;
+       gpointer *data;
+       data = g_new (gpointer, 3);
+       data[0] = g_object_ref (object);
+       data[1] = g_object_ref (connection);
+       data[2] = g_strdup (path);
+       result = g_dbus_connection_register_object (connection, path, (GDBusInterfaceInfo *) (&_iidentity_manager_dbus_interface_info), &_iidentity_manager_dbus_interface_vtable, data, _iidentity_manager_unregister_object, error);
+       if (!result) {
+               return 0;
+       }
+       return result;
+}
+
+
+static void _iidentity_manager_unregister_object (gpointer user_data) {
+       gpointer* data;
+       data = user_data;
+       g_object_unref (data[0]);
+       g_object_unref (data[1]);
+       g_free (data[2]);
+       g_free (data);
+}
+
+
+/** If we're successfully registered with DBus, then show the UI. Otherwise, wait until we're registered. */
+void identity_manager_app_show (IdentityManagerApp* self) {
+       gboolean _tmp0_ = FALSE;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_return_if_fail (self != NULL);
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp0_ = self->priv->name_is_owned;
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (_tmp0_) {
+#line 523 "moonshot-identity-manager-app.c"
+               IdentityManagerView* _tmp1_ = NULL;
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp1_ = self->view;
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               if (_tmp1_ != NULL) {
+#line 529 "moonshot-identity-manager-app.c"
+                       IdentityManagerView* _tmp2_ = NULL;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp2_ = self->view;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       identity_manager_view_make_visible (_tmp2_);
+#line 535 "moonshot-identity-manager-app.c"
+               }
+       } else {
+#line 82 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               self->priv->show_requested = TRUE;
+#line 540 "moonshot-identity-manager-app.c"
+       }
+}
+
+
+IdentityManagerApp* identity_manager_app_construct (GType object_type, gboolean headless, gboolean use_flat_file_store) {
+       IdentityManagerApp* self = NULL;
+       gboolean _tmp0_ = FALSE;
+       gboolean _tmp1_ = FALSE;
+       gboolean _tmp2_ = FALSE;
+       gboolean _tmp3_ = FALSE;
+       gboolean _tmp4_ = FALSE;
+       gboolean _tmp5_ = FALSE;
+       gboolean keyring_available = FALSE;
+       IIdentityCardStoreStoreType store_type = 0;
+       gboolean _tmp7_ = FALSE;
+       gboolean _tmp8_ = FALSE;
+       gboolean _tmp9_ = FALSE;
+       IIdentityCardStoreStoreType _tmp12_ = 0;
+       IdentityManagerModel* _tmp13_ = NULL;
+       gboolean _tmp14_ = FALSE;
+       gboolean _tmp15_ = FALSE;
+       gboolean _tmp16_ = FALSE;
+       gboolean _tmp17_ = FALSE;
+       gboolean _tmp23_ = FALSE;
+       GeeLinkedList* card_list = NULL;
+       IdentityManagerModel* _tmp26_ = NULL;
+       GeeLinkedList* _tmp27_ = NULL;
+       GeeLinkedList* _tmp28_ = NULL;
+       gint _tmp29_ = 0;
+       gint _tmp30_ = 0;
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       self = (IdentityManagerApp*) g_type_create_instance (object_type);
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp0_ = headless;
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       identity_manager_app_set_headless (self, _tmp0_);
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp1_ = use_flat_file_store;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp2_ = UserForcesFlatFileStore ();
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       use_flat_file_store = _tmp1_ | _tmp2_;
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp3_ = use_flat_file_store;
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       identity_manager_app_set_use_flat_file_store (self, _tmp3_);
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp5_ = use_flat_file_store;
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (!_tmp5_) {
+#line 591 "moonshot-identity-manager-app.c"
+               gboolean _tmp6_ = FALSE;
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp6_ = gnome_keyring_is_available ();
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp4_ = _tmp6_;
+#line 597 "moonshot-identity-manager-app.c"
+       } else {
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp4_ = FALSE;
+#line 601 "moonshot-identity-manager-app.c"
+       }
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       keyring_available = _tmp4_;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp9_ = headless;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (_tmp9_) {
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp8_ = TRUE;
+#line 611 "moonshot-identity-manager-app.c"
+       } else {
+               gboolean _tmp10_ = FALSE;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp10_ = use_flat_file_store;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp8_ = _tmp10_;
+#line 618 "moonshot-identity-manager-app.c"
+       }
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (_tmp8_) {
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp7_ = TRUE;
+#line 624 "moonshot-identity-manager-app.c"
+       } else {
+               gboolean _tmp11_ = FALSE;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp11_ = keyring_available;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp7_ = !_tmp11_;
+#line 631 "moonshot-identity-manager-app.c"
+       }
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (_tmp7_) {
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               store_type = IIDENTITY_CARD_STORE_STORE_TYPE_FLAT_FILE;
+#line 637 "moonshot-identity-manager-app.c"
+       } else {
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               store_type = IIDENTITY_CARD_STORE_STORE_TYPE_KEYRING;
+#line 641 "moonshot-identity-manager-app.c"
+       }
+#line 109 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp12_ = store_type;
+#line 109 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp13_ = identity_manager_model_new (self, _tmp12_);
+#line 109 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _g_object_unref0 (self->model);
+#line 109 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       self->model = _tmp13_;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp17_ = headless;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (_tmp17_) {
+#line 655 "moonshot-identity-manager-app.c"
+               gboolean _tmp18_ = FALSE;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp18_ = keyring_available;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp16_ = _tmp18_;
+#line 661 "moonshot-identity-manager-app.c"
+       } else {
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp16_ = FALSE;
+#line 665 "moonshot-identity-manager-app.c"
+       }
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (_tmp16_) {
+#line 669 "moonshot-identity-manager-app.c"
+               gboolean _tmp19_ = FALSE;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp19_ = use_flat_file_store;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp15_ = !_tmp19_;
+#line 675 "moonshot-identity-manager-app.c"
+       } else {
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp15_ = FALSE;
+#line 679 "moonshot-identity-manager-app.c"
+       }
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (_tmp15_) {
+#line 683 "moonshot-identity-manager-app.c"
+               IdentityManagerModel* _tmp20_ = NULL;
+               gboolean _tmp21_ = FALSE;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp20_ = self->model;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp21_ = identity_manager_model_HasNonTrivialIdentities (_tmp20_);
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp14_ = !_tmp21_;
+#line 692 "moonshot-identity-manager-app.c"
+       } else {
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp14_ = FALSE;
+#line 696 "moonshot-identity-manager-app.c"
+       }
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (_tmp14_) {
+#line 700 "moonshot-identity-manager-app.c"
+               IdentityManagerModel* _tmp22_ = NULL;
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp22_ = self->model;
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               identity_manager_model_set_store_type (_tmp22_, IIDENTITY_CARD_STORE_STORE_TYPE_KEYRING);
+#line 706 "moonshot-identity-manager-app.c"
+       }
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp23_ = headless;
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (!_tmp23_) {
+#line 712 "moonshot-identity-manager-app.c"
+               gboolean _tmp24_ = FALSE;
+               IdentityManagerView* _tmp25_ = NULL;
+#line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp24_ = use_flat_file_store;
+#line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp25_ = identity_manager_view_new (self, _tmp24_);
+#line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               g_object_ref_sink (_tmp25_);
+#line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _g_object_unref0 (self->view);
+#line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               self->view = _tmp25_;
+#line 725 "moonshot-identity-manager-app.c"
+       }
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp26_ = self->model;
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp27_ = identity_manager_model_get_card_list (_tmp26_);
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       card_list = _tmp27_;
+#line 118 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp28_ = card_list;
+#line 118 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp29_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp28_);
+#line 118 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp30_ = _tmp29_;
+#line 118 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (_tmp30_ > 0) {
+#line 741 "moonshot-identity-manager-app.c"
+               GeeLinkedList* _tmp31_ = NULL;
+               gpointer _tmp32_ = NULL;
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp31_ = card_list;
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp32_ = gee_linked_list_last (_tmp31_);
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _g_object_unref0 (self->default_id_card);
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               self->default_id_card = (IdCard*) _tmp32_;
+#line 752 "moonshot-identity-manager-app.c"
+       }
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       identity_manager_app_init_ipc_server (self);
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _g_object_unref0 (card_list);
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       return self;
+#line 760 "moonshot-identity-manager-app.c"
+}
+
+
+IdentityManagerApp* identity_manager_app_new (gboolean headless, gboolean use_flat_file_store) {
+#line 91 "/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 767 "moonshot-identity-manager-app.c"
+}
+
+
+gboolean identity_manager_app_add_identity (IdentityManagerApp* self, IdCard* id, gboolean force_flat_file_store, GeeArrayList** old_duplicates) {
+       GeeArrayList* _vala_old_duplicates = NULL;
+       gboolean result = FALSE;
+       IdentityManagerView* _tmp0_ = NULL;
+#line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_return_val_if_fail (self != NULL, FALSE);
+#line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_return_val_if_fail (id != NULL, FALSE);
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp0_ = self->view;
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (_tmp0_ != NULL) {
+#line 783 "moonshot-identity-manager-app.c"
+               MoonshotLogger* _tmp1_ = NULL;
+               IdentityManagerView* _tmp2_ = NULL;
+               IdCard* _tmp3_ = NULL;
+               gboolean _tmp4_ = FALSE;
+               GeeArrayList* _tmp5_ = NULL;
+               gboolean _tmp6_ = FALSE;
+#line 135 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp1_ = identity_manager_app_logger;
+#line 135 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               moonshot_logger_trace (_tmp1_, "add_identity: calling view.add_identity", NULL);
+#line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp2_ = self->view;
+#line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp3_ = id;
+#line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp4_ = force_flat_file_store;
+#line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp6_ = identity_manager_view_add_identity (_tmp2_, _tmp3_, _tmp4_, &_tmp5_);
+#line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _g_object_unref0 (_vala_old_duplicates);
+#line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _vala_old_duplicates = _tmp5_;
+#line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               result = _tmp6_;
+#line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               if (old_duplicates) {
+#line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       *old_duplicates = _vala_old_duplicates;
+#line 812 "moonshot-identity-manager-app.c"
+               } else {
+#line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _g_object_unref0 (_vala_old_duplicates);
+#line 816 "moonshot-identity-manager-app.c"
+               }
+#line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               return result;
+#line 820 "moonshot-identity-manager-app.c"
+       } else {
+               MoonshotLogger* _tmp7_ = NULL;
+               IdentityManagerModel* _tmp8_ = NULL;
+               IdCard* _tmp9_ = NULL;
+               gboolean _tmp10_ = FALSE;
+               GeeArrayList* _tmp11_ = NULL;
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp7_ = identity_manager_app_logger;
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               moonshot_logger_trace (_tmp7_, "add_identity: calling model.add_card", NULL);
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp8_ = self->model;
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp9_ = id;
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp10_ = force_flat_file_store;
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               identity_manager_model_add_card (_tmp8_, _tmp9_, _tmp10_, &_tmp11_);
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _g_object_unref0 (_vala_old_duplicates);
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _vala_old_duplicates = _tmp11_;
+#line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               result = TRUE;
+#line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               if (old_duplicates) {
+#line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       *old_duplicates = _vala_old_duplicates;
+#line 849 "moonshot-identity-manager-app.c"
+               } else {
+#line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _g_object_unref0 (_vala_old_duplicates);
+#line 853 "moonshot-identity-manager-app.c"
+               }
+#line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               return result;
+#line 857 "moonshot-identity-manager-app.c"
+       }
+#line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (old_duplicates) {
+#line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               *old_duplicates = _vala_old_duplicates;
+#line 863 "moonshot-identity-manager-app.c"
+       } else {
+#line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _g_object_unref0 (_vala_old_duplicates);
+#line 867 "moonshot-identity-manager-app.c"
+       }
+}
+
+
+static gpointer _g_object_ref0 (gpointer self) {
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       return self ? g_object_ref (self) : NULL;
+#line 875 "moonshot-identity-manager-app.c"
+}
+
+
+static Block1Data* block1_data_ref (Block1Data* _data1_) {
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_atomic_int_inc (&_data1_->_ref_count_);
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       return _data1_;
+#line 884 "moonshot-identity-manager-app.c"
+}
+
+
+static void block1_data_unref (void * _userdata_) {
+       Block1Data* _data1_;
+       _data1_ = (Block1Data*) _userdata_;
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (g_atomic_int_dec_and_test (&_data1_->_ref_count_)) {
+#line 893 "moonshot-identity-manager-app.c"
+               IdentityManagerApp* self;
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               self = _data1_->self;
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _g_object_unref0 (_data1_->identity);
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _g_object_unref0 (_data1_->request);
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _identity_manager_app_unref0 (self);
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               g_slice_free (Block1Data, _data1_);
+#line 905 "moonshot-identity-manager-app.c"
+       }
+}
+
+
+static const gchar* string_to_string (const gchar* self) {
+       const gchar* result = NULL;
+#line 1420 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 1421 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       result = self;
+#line 1421 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       return result;
+#line 918 "moonshot-identity-manager-app.c"
+}
+
+
+static gboolean __lambda5_ (Block1Data* _data1_) {
+       IdentityManagerApp* self;
+       gboolean result = FALSE;
+       IdentityManagerView* _tmp0_ = NULL;
+       IdentityRequest* _tmp7_ = NULL;
+       IdCard* _tmp8_ = NULL;
+#line 243 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       self = _data1_->self;
+#line 244 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp0_ = self->view;
+#line 244 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (_tmp0_ != NULL) {
+#line 934 "moonshot-identity-manager-app.c"
+               MoonshotLogger* _tmp1_ = NULL;
+               IdentityManagerView* _tmp2_ = NULL;
+               IdCard* _tmp3_ = NULL;
+               IdentityRequest* _tmp4_ = NULL;
+               IdentityManagerModel* _tmp5_ = NULL;
+               IdCard* _tmp6_ = NULL;
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp1_ = identity_manager_app_logger;
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               moonshot_logger_trace (_tmp1_, "select_identity (Idle handler): calling check_add_password", NULL);
+#line 246 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp2_ = self->view;
+#line 246 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp3_ = _data1_->identity;
+#line 246 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp4_ = _data1_->request;
+#line 246 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp5_ = self->model;
+#line 246 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp6_ = identity_manager_view_check_add_password (_tmp2_, _tmp3_, _tmp4_, _tmp5_);
+#line 246 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _g_object_unref0 (_data1_->identity);
+#line 246 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _data1_->identity = _tmp6_;
+#line 959 "moonshot-identity-manager-app.c"
+       }
+#line 248 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp7_ = _data1_->request;
+#line 248 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp8_ = _data1_->identity;
+#line 248 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       identity_request_return_identity (_tmp7_, _tmp8_, TRUE);
+#line 253 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       result = FALSE;
+#line 253 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       return result;
+#line 971 "moonshot-identity-manager-app.c"
+}
+
+
+static gboolean ___lambda5__gsource_func (gpointer self) {
+       gboolean result;
+       result = __lambda5_ (self);
+#line 242 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       return result;
+#line 980 "moonshot-identity-manager-app.c"
+}
+
+
+void identity_manager_app_select_identity (IdentityManagerApp* self, IdentityRequest* request) {
+       Block1Data* _data1_;
+       IdentityRequest* _tmp0_ = NULL;
+       IdentityRequest* _tmp1_ = NULL;
+       const gchar* _tmp2_ = NULL;
+       IdentityRequest* _tmp3_ = NULL;
+       const gchar* _tmp4_ = NULL;
+       MoonshotLogger* _tmp5_ = NULL;
+       gchar* _tmp6_ = NULL;
+       gchar* _tmp7_ = NULL;
+       IdentityRequest* _tmp8_ = NULL;
+       gboolean _tmp9_ = FALSE;
+       IdCard* _tmp12_ = NULL;
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_return_if_fail (self != NULL);
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_return_if_fail (request != NULL);
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _data1_ = g_slice_new0 (Block1Data);
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _data1_->_ref_count_ = 1;
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _data1_->self = identity_manager_app_ref (self);
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp0_ = request;
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp1_ = _g_object_ref0 (_tmp0_);
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _g_object_unref0 (_data1_->request);
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _data1_->request = _tmp1_;
+#line 146 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp3_ = _data1_->request;
+#line 146 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp4_ = _tmp3_->nai;
+#line 146 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp2_ = _tmp4_;
+#line 146 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (_tmp2_ == NULL) {
+#line 146 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp2_ = "[null]";
+#line 1025 "moonshot-identity-manager-app.c"
+       }
+#line 146 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp5_ = identity_manager_app_logger;
+#line 146 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp6_ = g_strdup_printf ("select_identity: request.nai=%s", _tmp2_);
+#line 146 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp7_ = _tmp6_;
+#line 146 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       moonshot_logger_trace (_tmp5_, _tmp7_, NULL);
+#line 146 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _g_free0 (_tmp7_);
+#line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _data1_->identity = NULL;
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp8_ = _data1_->request;
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp9_ = _tmp8_->select_default;
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (_tmp9_) {
+#line 1045 "moonshot-identity-manager-app.c"
+               IdCard* _tmp10_ = NULL;
+               IdCard* _tmp11_ = NULL;
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp10_ = self->default_id_card;
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp11_ = _g_object_ref0 (_tmp10_);
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _g_object_unref0 (_data1_->identity);
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _data1_->identity = _tmp11_;
+#line 1056 "moonshot-identity-manager-app.c"
+       }
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp12_ = _data1_->identity;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (_tmp12_ == NULL) {
+#line 1062 "moonshot-identity-manager-app.c"
+               gboolean _tmp13_ = FALSE;
+               IdentityRequest* _tmp14_ = NULL;
+               const gchar* _tmp15_ = NULL;
+               gboolean has_nai = FALSE;
+               gboolean _tmp18_ = FALSE;
+               IdentityRequest* _tmp19_ = NULL;
+               const gchar* _tmp20_ = NULL;
+               gboolean has_srv = FALSE;
+               gboolean confirm = FALSE;
+               gboolean _tmp69_ = FALSE;
+               gboolean _tmp70_ = FALSE;
+               IdCard* _tmp71_ = NULL;
+               gboolean _tmp90_ = FALSE;
+               IdCard* _tmp91_ = NULL;
+               gboolean _tmp128_ = FALSE;
+               IdCard* _tmp129_ = NULL;
+               IdCard* _tmp151_ = NULL;
+               gboolean _tmp165_ = FALSE;
+               gboolean _tmp166_ = FALSE;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp14_ = _data1_->request;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp15_ = _tmp14_->nai;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               if (_tmp15_ != NULL) {
+#line 1088 "moonshot-identity-manager-app.c"
+                       IdentityRequest* _tmp16_ = NULL;
+                       const gchar* _tmp17_ = NULL;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp16_ = _data1_->request;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp17_ = _tmp16_->nai;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp13_ = g_strcmp0 (_tmp17_, "") != 0;
+#line 1097 "moonshot-identity-manager-app.c"
+               } else {
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp13_ = FALSE;
+#line 1101 "moonshot-identity-manager-app.c"
+               }
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               has_nai = _tmp13_;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp19_ = _data1_->request;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp20_ = _tmp19_->service;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               if (_tmp20_ != NULL) {
+#line 1111 "moonshot-identity-manager-app.c"
+                       IdentityRequest* _tmp21_ = NULL;
+                       const gchar* _tmp22_ = NULL;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp21_ = _data1_->request;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp22_ = _tmp21_->service;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp18_ = g_strcmp0 (_tmp22_, "") != 0;
+#line 1120 "moonshot-identity-manager-app.c"
+               } else {
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp18_ = FALSE;
+#line 1124 "moonshot-identity-manager-app.c"
+               }
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               has_srv = _tmp18_;
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               confirm = FALSE;
+#line 1130 "moonshot-identity-manager-app.c"
+               {
+                       GeeLinkedList* _id_list = NULL;
+                       IdentityManagerModel* _tmp23_ = NULL;
+                       GeeLinkedList* _tmp24_ = NULL;
+                       gint _id_size = 0;
+                       GeeLinkedList* _tmp25_ = NULL;
+                       gint _tmp26_ = 0;
+                       gint _tmp27_ = 0;
+                       gint _id_index = 0;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp23_ = self->model;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp24_ = identity_manager_model_get_card_list (_tmp23_);
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _id_list = _tmp24_;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp25_ = _id_list;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp26_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp25_);
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp27_ = _tmp26_;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _id_size = _tmp27_;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _id_index = -1;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       while (TRUE) {
+#line 1158 "moonshot-identity-manager-app.c"
+                               gint _tmp28_ = 0;
+                               gint _tmp29_ = 0;
+                               gint _tmp30_ = 0;
+                               IdCard* id = NULL;
+                               GeeLinkedList* _tmp31_ = NULL;
+                               gint _tmp32_ = 0;
+                               gpointer _tmp33_ = NULL;
+                               gboolean _tmp34_ = FALSE;
+                               gboolean _tmp35_ = FALSE;
+                               gboolean _tmp49_ = FALSE;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _tmp28_ = _id_index;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _id_index = _tmp28_ + 1;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _tmp29_ = _id_index;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _tmp30_ = _id_size;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               if (!(_tmp29_ < _tmp30_)) {
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       break;
+#line 1181 "moonshot-identity-manager-app.c"
+                               }
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _tmp31_ = _id_list;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _tmp32_ = _id_index;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _tmp33_ = gee_abstract_list_get ((GeeAbstractList*) _tmp31_, _tmp32_);
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               id = (IdCard*) _tmp33_;
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _tmp35_ = has_nai;
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               if (_tmp35_) {
+#line 1195 "moonshot-identity-manager-app.c"
+                                       IdentityRequest* _tmp36_ = NULL;
+                                       const gchar* _tmp37_ = NULL;
+                                       IdCard* _tmp38_ = NULL;
+                                       const gchar* _tmp39_ = NULL;
+                                       const gchar* _tmp40_ = NULL;
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp36_ = _data1_->request;
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp37_ = _tmp36_->nai;
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp38_ = id;
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp39_ = id_card_get_nai (_tmp38_);
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp40_ = _tmp39_;
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp34_ = g_strcmp0 (_tmp37_, _tmp40_) == 0;
+#line 1213 "moonshot-identity-manager-app.c"
+                               } else {
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp34_ = FALSE;
+#line 1217 "moonshot-identity-manager-app.c"
+                               }
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               if (_tmp34_) {
+#line 1221 "moonshot-identity-manager-app.c"
+                                       MoonshotLogger* _tmp41_ = NULL;
+                                       IdCard* _tmp42_ = NULL;
+                                       const gchar* _tmp43_ = NULL;
+                                       const gchar* _tmp44_ = NULL;
+                                       gchar* _tmp45_ = NULL;
+                                       gchar* _tmp46_ = NULL;
+                                       IdCard* _tmp47_ = NULL;
+                                       IdCard* _tmp48_ = NULL;
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp41_ = identity_manager_app_logger;
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp42_ = id;
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp43_ = id_card_get_display_name (_tmp42_);
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp44_ = _tmp43_;
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp45_ = g_strconcat ("select_identity: request has nai; returning ", _tmp44_, NULL);
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp46_ = _tmp45_;
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       moonshot_logger_trace (_tmp41_, _tmp46_, NULL);
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _g_free0 (_tmp46_);
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp47_ = id;
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp48_ = _g_object_ref0 (_tmp47_);
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _g_object_unref0 (_data1_->identity);
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _data1_->identity = _tmp48_;
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _g_object_unref0 (id);
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       break;
+#line 1258 "moonshot-identity-manager-app.c"
+                               }
+#line 172 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _tmp49_ = has_srv;
+#line 172 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               if (_tmp49_) {
+#line 1264 "moonshot-identity-manager-app.c"
+                                       IdCard* _tmp50_ = NULL;
+                                       GeeArrayList* _tmp51_ = NULL;
+                                       GeeArrayList* _tmp52_ = NULL;
+                                       IdentityRequest* _tmp53_ = NULL;
+                                       const gchar* _tmp54_ = NULL;
+                                       gboolean _tmp55_ = FALSE;
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp50_ = id;
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp51_ = id_card_get_services (_tmp50_);
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp52_ = _tmp51_;
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp53_ = _data1_->request;
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp54_ = _tmp53_->service;
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp55_ = gee_abstract_collection_contains ((GeeAbstractCollection*) _tmp52_, _tmp54_);
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       if (_tmp55_) {
+#line 1285 "moonshot-identity-manager-app.c"
+                                               MoonshotLogger* _tmp56_ = NULL;
+                                               IdentityRequest* _tmp57_ = NULL;
+                                               const gchar* _tmp58_ = NULL;
+                                               const gchar* _tmp59_ = NULL;
+                                               IdCard* _tmp60_ = NULL;
+                                               const gchar* _tmp61_ = NULL;
+                                               const gchar* _tmp62_ = NULL;
+                                               const gchar* _tmp63_ = NULL;
+                                               gchar* _tmp64_ = NULL;
+                                               gchar* _tmp65_ = NULL;
+                                               IdentityRequest* _tmp66_ = NULL;
+                                               IdCard* _tmp67_ = NULL;
+                                               IdCard* _tmp68_ = NULL;
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                               _tmp56_ = identity_manager_app_logger;
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                               _tmp57_ = _data1_->request;
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                               _tmp58_ = _tmp57_->service;
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                               _tmp59_ = string_to_string (_tmp58_);
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                               _tmp60_ = id;
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                               _tmp61_ = id_card_get_display_name (_tmp60_);
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                               _tmp62_ = _tmp61_;
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                               _tmp63_ = string_to_string (_tmp62_);
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                               _tmp64_ = g_strconcat ("select_identity: request has service '", _tmp59_, "; matched on '", _tmp63_, "'", NULL);
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                               _tmp65_ = _tmp64_;
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                               moonshot_logger_trace (_tmp56_, _tmp65_, NULL);
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                               _g_free0 (_tmp65_);
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                               _tmp66_ = _data1_->request;
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                               _tmp67_ = id;
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                               _tmp68_ = _g_object_ref0 (_tmp67_);
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                               _tmp66_->candidates = g_slist_append (_tmp66_->candidates, _tmp68_);
+#line 1331 "moonshot-identity-manager-app.c"
+                                       }
+                               }
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _g_object_unref0 (id);
+#line 1336 "moonshot-identity-manager-app.c"
+                       }
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _g_object_unref0 (_id_list);
+#line 1340 "moonshot-identity-manager-app.c"
+               }
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp71_ = _data1_->identity;
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               if (_tmp71_ == NULL) {
+#line 1346 "moonshot-identity-manager-app.c"
+                       gboolean _tmp72_ = FALSE;
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp72_ = has_srv;
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp70_ = _tmp72_;
+#line 1352 "moonshot-identity-manager-app.c"
+               } else {
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp70_ = FALSE;
+#line 1356 "moonshot-identity-manager-app.c"
+               }
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               if (_tmp70_) {
+#line 1360 "moonshot-identity-manager-app.c"
+                       IdentityRequest* _tmp73_ = NULL;
+                       GSList* _tmp74_ = NULL;
+                       guint _tmp75_ = 0U;
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp73_ = _data1_->request;
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp74_ = _tmp73_->candidates;
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp75_ = g_slist_length (_tmp74_);
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp69_ = _tmp75_ > ((guint) 1);
+#line 1372 "moonshot-identity-manager-app.c"
+               } else {
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp69_ = FALSE;
+#line 1376 "moonshot-identity-manager-app.c"
+               }
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               if (_tmp69_) {
+#line 1380 "moonshot-identity-manager-app.c"
+                       MoonshotLogger* _tmp76_ = NULL;
+                       IdentityRequest* _tmp77_ = NULL;
+                       const gchar* _tmp78_ = NULL;
+                       const gchar* _tmp79_ = NULL;
+                       gchar* _tmp80_ = NULL;
+                       gchar* _tmp81_ = NULL;
+                       IdentityRequest* _tmp82_ = NULL;
+                       GSList* _tmp83_ = NULL;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp76_ = identity_manager_app_logger;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp77_ = _data1_->request;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp78_ = _tmp77_->service;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp79_ = string_to_string (_tmp78_);
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp80_ = g_strconcat ("select_identity: multiple candidates; removing service '", _tmp79_, " from all.", NULL);
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp81_ = _tmp80_;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       moonshot_logger_trace (_tmp76_, _tmp81_, NULL);
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _g_free0 (_tmp81_);
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp82_ = _data1_->request;
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp83_ = _tmp82_->candidates;
+#line 1409 "moonshot-identity-manager-app.c"
+                       {
+                               GSList* id_collection = NULL;
+                               GSList* id_it = NULL;
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               id_collection = _tmp83_;
+#line 185 "/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 1417 "moonshot-identity-manager-app.c"
+                                       IdCard* _tmp84_ = NULL;
+                                       IdCard* id = NULL;
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp84_ = _g_object_ref0 ((IdCard*) id_it->data);
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       id = _tmp84_;
+#line 1424 "moonshot-identity-manager-app.c"
+                                       {
+                                               IdCard* _tmp85_ = NULL;
+                                               GeeArrayList* _tmp86_ = NULL;
+                                               GeeArrayList* _tmp87_ = NULL;
+                                               IdentityRequest* _tmp88_ = NULL;
+                                               const gchar* _tmp89_ = NULL;
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                               _tmp85_ = id;
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                               _tmp86_ = id_card_get_services (_tmp85_);
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                               _tmp87_ = _tmp86_;
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                               _tmp88_ = _data1_->request;
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                               _tmp89_ = _tmp88_->service;
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                               gee_abstract_collection_remove ((GeeAbstractCollection*) _tmp87_, _tmp89_);
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                               _g_object_unref0 (id);
+#line 1445 "moonshot-identity-manager-app.c"
+                                       }
+                               }
+                       }
+               }
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp91_ = _data1_->identity;
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               if (_tmp91_ == NULL) {
+#line 1454 "moonshot-identity-manager-app.c"
+                       IdentityRequest* _tmp92_ = NULL;
+                       GSList* _tmp93_ = NULL;
+                       guint _tmp94_ = 0U;
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp92_ = _data1_->request;
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp93_ = _tmp92_->candidates;
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp94_ = g_slist_length (_tmp93_);
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp90_ = _tmp94_ == ((guint) 0);
+#line 1466 "moonshot-identity-manager-app.c"
+               } else {
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp90_ = FALSE;
+#line 1470 "moonshot-identity-manager-app.c"
+               }
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               if (_tmp90_) {
+#line 1474 "moonshot-identity-manager-app.c"
+                       MoonshotLogger* _tmp95_ = NULL;
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp95_ = identity_manager_app_logger;
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       moonshot_logger_trace (_tmp95_, "select_identity: No candidates; using service matching rules.", NULL);
+#line 1480 "moonshot-identity-manager-app.c"
+                       {
+                               GeeLinkedList* _id_list = NULL;
+                               IdentityManagerModel* _tmp96_ = NULL;
+                               GeeLinkedList* _tmp97_ = NULL;
+                               gint _id_size = 0;
+                               GeeLinkedList* _tmp98_ = NULL;
+                               gint _tmp99_ = 0;
+                               gint _tmp100_ = 0;
+                               gint _id_index = 0;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _tmp96_ = self->model;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _tmp97_ = identity_manager_model_get_card_list (_tmp96_);
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _id_list = _tmp97_;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _tmp98_ = _id_list;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _tmp99_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp98_);
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _tmp100_ = _tmp99_;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _id_size = _tmp100_;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _id_index = -1;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               while (TRUE) {
+#line 1508 "moonshot-identity-manager-app.c"
+                                       gint _tmp101_ = 0;
+                                       gint _tmp102_ = 0;
+                                       gint _tmp103_ = 0;
+                                       IdCard* id = NULL;
+                                       GeeLinkedList* _tmp104_ = NULL;
+                                       gint _tmp105_ = 0;
+                                       gpointer _tmp106_ = NULL;
+                                       IdCard* _tmp107_ = NULL;
+                                       Rule* _tmp108_ = NULL;
+                                       gint _tmp108__length1 = 0;
+                                       Rule* _tmp109_ = NULL;
+                                       gint _tmp109__length1 = 0;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp101_ = _id_index;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _id_index = _tmp101_ + 1;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp102_ = _id_index;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp103_ = _id_size;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       if (!(_tmp102_ < _tmp103_)) {
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                               break;
+#line 1533 "moonshot-identity-manager-app.c"
+                                       }
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp104_ = _id_list;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp105_ = _id_index;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp106_ = gee_abstract_list_get ((GeeAbstractList*) _tmp104_, _tmp105_);
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       id = (IdCard*) _tmp106_;
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp107_ = id;
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp108_ = id_card_get_rules (_tmp107_, &_tmp108__length1);
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp109_ = _tmp108_;
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _tmp109__length1 = _tmp108__length1;
+#line 1551 "moonshot-identity-manager-app.c"
+                                       {
+                                               Rule* rule_collection = NULL;
+                                               gint rule_collection_length1 = 0;
+                                               gint _rule_collection_size_ = 0;
+                                               gint rule_it = 0;
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                               rule_collection = _tmp109_;
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                               rule_collection_length1 = _tmp109__length1;
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                               for (rule_it = 0; rule_it < _tmp109__length1; rule_it = rule_it + 1) {
+#line 1563 "moonshot-identity-manager-app.c"
+                                                       Rule _tmp110_ = {0};
+                                                       Rule rule = {0};
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                                       rule_copy (&rule_collection[rule_it], &_tmp110_);
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                                       rule = _tmp110_;
+#line 1570 "moonshot-identity-manager-app.c"
+                                                       {
+                                                               IdentityRequest* _tmp111_ = NULL;
+                                                               const gchar* _tmp112_ = NULL;
+                                                               Rule _tmp113_ = {0};
+                                                               const gchar* _tmp114_ = NULL;
+                                                               gboolean _tmp115_ = FALSE;
+                                                               MoonshotLogger* _tmp116_ = NULL;
+                                                               IdCard* _tmp117_ = NULL;
+                                                               const gchar* _tmp118_ = NULL;
+                                                               const gchar* _tmp119_ = NULL;
+                                                               const gchar* _tmp120_ = NULL;
+                                                               gchar* _tmp121_ = NULL;
+                                                               gchar* _tmp122_ = NULL;
+                                                               IdentityRequest* _tmp123_ = NULL;
+                                                               IdCard* _tmp124_ = NULL;
+                                                               IdCard* _tmp125_ = NULL;
+                                                               Rule _tmp126_ = {0};
+                                                               const gchar* _tmp127_ = NULL;
+#line 199 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                                               _tmp111_ = _data1_->request;
+#line 199 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                                               _tmp112_ = _tmp111_->service;
+#line 199 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                                               _tmp113_ = rule;
+#line 199 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                                               _tmp114_ = _tmp113_.pattern;
+#line 199 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                                               _tmp115_ = identity_manager_app_match_service_pattern (self, _tmp112_, _tmp114_);
+#line 199 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                                               if (!_tmp115_) {
+#line 200 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                                                       rule_destroy (&rule);
+#line 200 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                                                       continue;
+#line 1605 "moonshot-identity-manager-app.c"
+                                                               }
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                                               _tmp116_ = identity_manager_app_logger;
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                                               _tmp117_ = id;
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                                               _tmp118_ = id_card_get_display_name (_tmp117_);
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                                               _tmp119_ = _tmp118_;
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                                               _tmp120_ = string_to_string (_tmp119_);
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                                               _tmp121_ = g_strconcat ("select_identity: ID ", _tmp120_, " matched on service matching rules.", NULL);
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                                               _tmp122_ = _tmp121_;
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                                               moonshot_logger_trace (_tmp116_, _tmp122_, NULL);
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                                               _g_free0 (_tmp122_);
+#line 203 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                                               _tmp123_ = _data1_->request;
+#line 203 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                                               _tmp124_ = id;
+#line 203 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                                               _tmp125_ = _g_object_ref0 (_tmp124_);
+#line 203 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                                               _tmp123_->candidates = g_slist_append (_tmp123_->candidates, _tmp125_);
+#line 205 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                                               _tmp126_ = rule;
+#line 205 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                                               _tmp127_ = _tmp126_.always_confirm;
+#line 205 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                                               if (g_strcmp0 (_tmp127_, "true") == 0) {
+#line 206 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                                                       confirm = TRUE;
+#line 1641 "moonshot-identity-manager-app.c"
+                                                               }
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                                               rule_destroy (&rule);
+#line 1645 "moonshot-identity-manager-app.c"
+                                                       }
+                                               }
+                                       }
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                                       _g_object_unref0 (id);
+#line 1651 "moonshot-identity-manager-app.c"
+                               }
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _g_object_unref0 (_id_list);
+#line 1655 "moonshot-identity-manager-app.c"
+                       }
+               }
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp129_ = _data1_->identity;
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               if (_tmp129_ == NULL) {
+#line 1662 "moonshot-identity-manager-app.c"
+                       gboolean _tmp130_ = FALSE;
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp130_ = has_nai;
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp128_ = _tmp130_;
+#line 1668 "moonshot-identity-manager-app.c"
+               } else {
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp128_ = FALSE;
+#line 1672 "moonshot-identity-manager-app.c"
+               }
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               if (_tmp128_) {
+#line 1676 "moonshot-identity-manager-app.c"
+                       MoonshotLogger* _tmp131_ = NULL;
+                       gchar** components = NULL;
+                       IdentityRequest* _tmp132_ = NULL;
+                       const gchar* _tmp133_ = NULL;
+                       gchar** _tmp134_ = NULL;
+                       gchar** _tmp135_ = NULL;
+                       gint components_length1 = 0;
+                       gint _components_size_ = 0;
+                       IdCard* _tmp136_ = NULL;
+                       IdCard* _tmp137_ = NULL;
+                       IdentityRequest* _tmp138_ = NULL;
+                       const gchar* _tmp139_ = NULL;
+                       IdCard* _tmp140_ = NULL;
+                       gchar** _tmp141_ = NULL;
+                       gint _tmp141__length1 = 0;
+                       const gchar* _tmp142_ = NULL;
+                       gchar** _tmp143_ = NULL;
+                       gint _tmp143__length1 = 0;
+                       IdCard* _tmp147_ = NULL;
+                       IdentityRequest* _tmp148_ = NULL;
+                       const gchar* _tmp149_ = NULL;
+                       IdCard* _tmp150_ = NULL;
+#line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp131_ = identity_manager_app_logger;
+#line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       moonshot_logger_trace (_tmp131_, "select_identity: Creating temp identity", NULL);
+#line 214 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp132_ = _data1_->request;
+#line 214 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp133_ = _tmp132_->nai;
+#line 214 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp135_ = _tmp134_ = g_strsplit (_tmp133_, "@", 2);
+#line 214 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       components = _tmp135_;
+#line 214 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       components_length1 = _vala_array_length (_tmp134_);
+#line 214 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _components_size_ = components_length1;
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp136_ = id_card_new ();
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _g_object_unref0 (_data1_->identity);
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _data1_->identity = _tmp136_;
+#line 216 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp137_ = _data1_->identity;
+#line 216 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp138_ = _data1_->request;
+#line 216 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp139_ = _tmp138_->nai;
+#line 216 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       id_card_set_display_name (_tmp137_, _tmp139_);
+#line 217 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp140_ = _data1_->identity;
+#line 217 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp141_ = components;
+#line 217 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp141__length1 = components_length1;
+#line 217 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp142_ = _tmp141_[0];
+#line 217 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       id_card_set_username (_tmp140_, _tmp142_);
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp143_ = components;
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp143__length1 = components_length1;
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       if (_tmp143__length1 > 1) {
+#line 1745 "moonshot-identity-manager-app.c"
+                               IdCard* _tmp144_ = NULL;
+                               gchar** _tmp145_ = NULL;
+                               gint _tmp145__length1 = 0;
+                               const gchar* _tmp146_ = NULL;
+#line 219 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _tmp144_ = _data1_->identity;
+#line 219 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _tmp145_ = components;
+#line 219 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _tmp145__length1 = components_length1;
+#line 219 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _tmp146_ = _tmp145_[1];
+#line 219 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               id_card_set_issuer (_tmp144_, _tmp146_);
+#line 1760 "moonshot-identity-manager-app.c"
+                       }
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp147_ = _data1_->identity;
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp148_ = _data1_->request;
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp149_ = _tmp148_->password;
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       id_card_set_password (_tmp147_, _tmp149_);
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp150_ = _data1_->identity;
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       id_card_set_temporary (_tmp150_, 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 1776 "moonshot-identity-manager-app.c"
+               }
+#line 223 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp151_ = _data1_->identity;
+#line 223 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               if (_tmp151_ == NULL) {
+#line 1782 "moonshot-identity-manager-app.c"
+                       IdentityRequest* _tmp152_ = NULL;
+                       GSList* _tmp153_ = NULL;
+                       guint _tmp154_ = 0U;
+#line 224 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp152_ = _data1_->request;
+#line 224 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp153_ = _tmp152_->candidates;
+#line 224 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp154_ = g_slist_length (_tmp153_);
+#line 224 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       if (_tmp154_ != ((guint) 1)) {
+#line 1794 "moonshot-identity-manager-app.c"
+                               MoonshotLogger* _tmp155_ = NULL;
+                               IdentityRequest* _tmp156_ = NULL;
+                               GSList* _tmp157_ = NULL;
+                               guint _tmp158_ = 0U;
+                               gchar* _tmp159_ = NULL;
+                               gchar* _tmp160_ = NULL;
+#line 225 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _tmp155_ = identity_manager_app_logger;
+#line 225 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _tmp156_ = _data1_->request;
+#line 225 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _tmp157_ = _tmp156_->candidates;
+#line 225 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _tmp158_ = g_slist_length (_tmp157_);
+#line 225 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _tmp159_ = g_strdup_printf ("select_identity: Have %u candidates; user must make selection.", _tmp158_);
+#line 225 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _tmp160_ = _tmp159_;
+#line 225 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               moonshot_logger_trace (_tmp155_, _tmp160_, NULL);
+#line 225 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _g_free0 (_tmp160_);
+#line 226 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               confirm = TRUE;
+#line 1819 "moonshot-identity-manager-app.c"
+                       } else {
+                               IdentityRequest* _tmp161_ = NULL;
+                               GSList* _tmp162_ = NULL;
+                               gconstpointer _tmp163_ = NULL;
+                               IdCard* _tmp164_ = NULL;
+#line 228 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _tmp161_ = _data1_->request;
+#line 228 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _tmp162_ = _tmp161_->candidates;
+#line 228 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _tmp163_ = g_slist_nth_data (_tmp162_, (guint) 0);
+#line 228 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _tmp164_ = _g_object_ref0 ((IdCard*) _tmp163_);
+#line 228 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _g_object_unref0 (_data1_->identity);
+#line 228 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _data1_->identity = _tmp164_;
+#line 1837 "moonshot-identity-manager-app.c"
+                       }
+               }
+#line 232 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp166_ = confirm;
+#line 232 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               if (_tmp166_) {
+#line 1844 "moonshot-identity-manager-app.c"
+                       IdentityManagerView* _tmp167_ = NULL;
+#line 232 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp167_ = self->view;
+#line 232 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp165_ = _tmp167_ != NULL;
+#line 1850 "moonshot-identity-manager-app.c"
+               } else {
+#line 232 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp165_ = FALSE;
+#line 1854 "moonshot-identity-manager-app.c"
+               }
+#line 232 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               if (_tmp165_) {
+#line 1858 "moonshot-identity-manager-app.c"
+                       gboolean _tmp168_ = FALSE;
+                       IdentityManagerView* _tmp169_ = NULL;
+                       IdentityRequest* _tmp170_ = NULL;
+#line 234 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp168_ = self->explicitly_launched;
+#line 234 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       if (!_tmp168_) {
+#line 235 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               identity_manager_app_show (self);
+#line 1868 "moonshot-identity-manager-app.c"
+                       }
+#line 236 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp169_ = self->view;
+#line 236 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp170_ = _data1_->request;
+#line 236 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       identity_manager_view_queue_identity_request (_tmp169_, _tmp170_);
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       block1_data_unref (_data1_);
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _data1_ = NULL;
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       return;
+#line 1882 "moonshot-identity-manager-app.c"
+               }
+       }
+#line 242 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_idle_add_full (G_PRIORITY_DEFAULT_IDLE, ___lambda5__gsource_func, block1_data_ref (_data1_), block1_data_unref);
+#line 256 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       block1_data_unref (_data1_);
+#line 256 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _data1_ = NULL;
+#line 256 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       return;
+#line 1893 "moonshot-identity-manager-app.c"
+}
+
+
+static gboolean identity_manager_app_match_service_pattern (IdentityManagerApp* self, const gchar* service, const gchar* pattern) {
+       gboolean result = FALSE;
+       GPatternSpec* pspec = NULL;
+       const gchar* _tmp0_ = NULL;
+       GPatternSpec* _tmp1_ = NULL;
+       const gchar* _tmp2_ = NULL;
+       gboolean _tmp3_ = FALSE;
+#line 259 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_return_val_if_fail (self != NULL, FALSE);
+#line 259 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_return_val_if_fail (service != NULL, FALSE);
+#line 259 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_return_val_if_fail (pattern != NULL, FALSE);
+#line 260 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp0_ = pattern;
+#line 260 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp1_ = g_pattern_spec_new (_tmp0_);
+#line 260 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       pspec = _tmp1_;
+#line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp2_ = service;
+#line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp3_ = g_pattern_match_string (pspec, _tmp2_);
+#line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       result = _tmp3_;
+#line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _g_pattern_spec_free0 (pspec);
+#line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       return result;
+#line 1926 "moonshot-identity-manager-app.c"
+}
+
+
+static void _identity_manager_app_bus_acquired_cb_gbus_acquired_callback (GDBusConnection* connection, const gchar* name, gpointer self) {
+#line 328 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       identity_manager_app_bus_acquired_cb ((IdentityManagerApp*) self, connection);
+#line 1933 "moonshot-identity-manager-app.c"
+}
+
+
+static void ___lambda23_ (IdentityManagerApp* self, GDBusConnection* conn, const gchar* name) {
+       const gchar* _tmp0_ = NULL;
+       GDBusConnection* _tmp1_ = NULL;
+       MoonshotLogger* _tmp2_ = NULL;
+       gchar* _tmp3_ = NULL;
+       gchar* _tmp4_ = NULL;
+#line 332 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_return_if_fail (conn != NULL);
+#line 332 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_return_if_fail (name != NULL);
+#line 332 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp1_ = conn;
+#line 332 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (_tmp1_ == NULL) {
+#line 332 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp0_ = "null";
+#line 1953 "moonshot-identity-manager-app.c"
+       } else {
+#line 332 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp0_ = "non-null";
+#line 1957 "moonshot-identity-manager-app.c"
+       }
+#line 332 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp2_ = identity_manager_app_logger;
+#line 332 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp3_ = g_strconcat ("init_ipc_server: name_acquired_closure; conn=", _tmp0_, NULL);
+#line 332 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp4_ = _tmp3_;
+#line 332 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       moonshot_logger_trace (_tmp2_, _tmp4_, NULL);
+#line 332 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _g_free0 (_tmp4_);
+#line 1969 "moonshot-identity-manager-app.c"
+}
+
+
+static void ____lambda23__gbus_name_acquired_callback (GDBusConnection* connection, const gchar* name, gpointer self) {
+#line 328 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       ___lambda23_ ((IdentityManagerApp*) self, connection, name);
+#line 1976 "moonshot-identity-manager-app.c"
+}
+
+
+static void ___lambda24_ (IdentityManagerApp* self, GDBusConnection* conn, const gchar* name) {
+       const gchar* _tmp0_ = NULL;
+       GDBusConnection* _tmp1_ = NULL;
+       MoonshotLogger* _tmp2_ = NULL;
+       gchar* _tmp3_ = NULL;
+       gchar* _tmp4_ = NULL;
+       gboolean shown = FALSE;
+       gboolean _tmp11_ = FALSE;
+       GError * _inner_error_ = NULL;
+#line 333 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_return_if_fail (conn != NULL);
+#line 333 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_return_if_fail (name != NULL);
+#line 334 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp1_ = conn;
+#line 334 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (_tmp1_ == NULL) {
+#line 334 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp0_ = "null";
+#line 1999 "moonshot-identity-manager-app.c"
+       } else {
+#line 334 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp0_ = "non-null";
+#line 2003 "moonshot-identity-manager-app.c"
+       }
+#line 334 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp2_ = identity_manager_app_logger;
+#line 334 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp3_ = g_strconcat ("init_ipc_server: name_lost_closure; conn=", _tmp0_, NULL);
+#line 334 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp4_ = _tmp3_;
+#line 334 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       moonshot_logger_trace (_tmp2_, _tmp4_, NULL);
+#line 334 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _g_free0 (_tmp4_);
+#line 335 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       shown = FALSE;
+#line 2017 "moonshot-identity-manager-app.c"
+       {
+               IIdentityManager* manager = NULL;
+               const gchar* _tmp5_ = NULL;
+               IIdentityManager* _tmp6_ = NULL;
+               gboolean _tmp7_ = FALSE;
+               IIdentityManager* _tmp8_ = NULL;
+               gboolean _tmp9_ = FALSE;
+#line 337 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp5_ = name;
+#line 337 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp6_ = g_initable_new (TYPE_IIDENTITY_MANAGER_PROXY, NULL, &_inner_error_, "g-flags", 0, "g-name", _tmp5_, "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 337 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               manager = (IIdentityManager*) _tmp6_;
+#line 337 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 337 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       if (_inner_error_->domain == G_IO_ERROR) {
+#line 2035 "moonshot-identity-manager-app.c"
+                               goto __catch1_g_io_error;
+                       }
+#line 337 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
+#line 337 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       g_clear_error (&_inner_error_);
+#line 337 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       return;
+#line 2044 "moonshot-identity-manager-app.c"
+               }
+#line 338 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp8_ = manager;
+#line 338 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp9_ = iidentity_manager_show_ui (_tmp8_, &_inner_error_);
+#line 338 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp7_ = _tmp9_;
+#line 338 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 338 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _g_object_unref0 (manager);
+#line 338 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       if (_inner_error_->domain == G_IO_ERROR) {
+#line 2058 "moonshot-identity-manager-app.c"
+                               goto __catch1_g_io_error;
+                       }
+#line 338 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _g_object_unref0 (manager);
+#line 338 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
+#line 338 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       g_clear_error (&_inner_error_);
+#line 338 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       return;
+#line 2069 "moonshot-identity-manager-app.c"
+               }
+#line 338 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               shown = _tmp7_;
+#line 336 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _g_object_unref0 (manager);
+#line 2075 "moonshot-identity-manager-app.c"
+       }
+       goto __finally1;
+       __catch1_g_io_error:
+       {
+               GError* e = NULL;
+               MoonshotLogger* _tmp10_ = NULL;
+#line 336 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               e = _inner_error_;
+#line 336 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _inner_error_ = NULL;
+#line 340 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp10_ = identity_manager_app_logger;
+#line 340 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               moonshot_logger_error (_tmp10_, "init_ipc_server.name_lost_closure: Caught error: ", NULL);
+#line 336 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _g_error_free0 (e);
+#line 2092 "moonshot-identity-manager-app.c"
+       }
+       __finally1:
+#line 336 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 336 "/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 336 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               g_clear_error (&_inner_error_);
+#line 336 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               return;
+#line 2103 "moonshot-identity-manager-app.c"
+       }
+#line 342 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp11_ = shown;
+#line 342 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (!_tmp11_) {
+#line 2109 "moonshot-identity-manager-app.c"
+               MoonshotLogger* _tmp12_ = NULL;
+               const gchar* _tmp13_ = NULL;
+               gchar* _tmp14_ = NULL;
+               gchar* _tmp15_ = NULL;
+               const gchar* _tmp16_ = NULL;
+#line 343 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp12_ = identity_manager_app_logger;
+#line 343 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp13_ = name;
+#line 343 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp14_ = g_strdup_printf ("init_ipc_server.name_lost_closure: Couldn't own name %s on dbus or sho" \
+"w previously launched identity manager", _tmp13_);
+#line 343 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp15_ = _tmp14_;
+#line 343 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               moonshot_logger_error (_tmp12_, _tmp15_, NULL);
+#line 343 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _g_free0 (_tmp15_);
+#line 344 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp16_ = name;
+#line 344 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               g_error ("moonshot-identity-manager-app.vala:344: Couldn't own name %s on dbus o" \
+"r show previously launched identity manager.", _tmp16_);
+#line 2131 "moonshot-identity-manager-app.c"
+       } else {
+               MoonshotLogger* _tmp17_ = NULL;
+               FILE* _tmp18_ = NULL;
+#line 346 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp17_ = identity_manager_app_logger;
+#line 346 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               moonshot_logger_trace (_tmp17_, "init_ipc_server.name_lost_closure: Showed previously launched identity" \
+" manager.", NULL);
+#line 347 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp18_ = stdout;
+#line 347 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               fprintf (_tmp18_, "Showed previously launched identity manager.\n");
+#line 348 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               exit (0);
+#line 2145 "moonshot-identity-manager-app.c"
+       }
+}
+
+
+static void ____lambda24__gbus_name_lost_callback (GDBusConnection* connection, const gchar* name, gpointer self) {
+#line 328 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       ___lambda24_ ((IdentityManagerApp*) self, connection, name);
+#line 2153 "moonshot-identity-manager-app.c"
+}
+
+
+static void identity_manager_app_bus_acquired_cb (IdentityManagerApp* self, GDBusConnection* conn) {
+       MoonshotLogger* _tmp0_ = NULL;
+       GError * _inner_error_ = NULL;
+#line 319 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_return_if_fail (self != NULL);
+#line 319 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_return_if_fail (conn != NULL);
+#line 320 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp0_ = identity_manager_app_logger;
+#line 320 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       moonshot_logger_trace (_tmp0_, "bus_acquired_cb", NULL);
+#line 2168 "moonshot-identity-manager-app.c"
+       {
+               GDBusConnection* _tmp1_ = NULL;
+               MoonshotServer* _tmp2_ = NULL;
+#line 322 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp1_ = conn;
+#line 322 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp2_ = self->priv->ipc_server;
+#line 322 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               moonshot_server_register_object (_tmp2_, _tmp1_, "/org/janet/moonshot", &_inner_error_);
+#line 322 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 2180 "moonshot-identity-manager-app.c"
+                       goto __catch0_g_error;
+               }
+       }
+       goto __finally0;
+       __catch0_g_error:
+       {
+               GError* e = NULL;
+               MoonshotServer* _tmp3_ = NULL;
+               MoonshotLogger* _tmp4_ = NULL;
+#line 321 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               e = _inner_error_;
+#line 321 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _inner_error_ = NULL;
+#line 326 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp3_ = moonshot_server_new (self);
+#line 326 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _g_object_unref0 (self->priv->ipc_server);
+#line 326 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               self->priv->ipc_server = _tmp3_;
+#line 327 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp4_ = identity_manager_app_logger;
+#line 327 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               moonshot_logger_trace (_tmp4_, "init_ipc_server: Constructed new MoonshotServer", NULL);
+#line 328 "/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), (GClosureNotify) identity_manager_app_unref)), (GClosure*) ((____lambda23__gbus_name_acquired_callback == NULL) ? NULL : g_cclosure_new ((GCallback) ____lambda23__gbus_name_acquired_callback, identity_manager_app_ref (self), (GClosureNotify) identity_manager_app_unref)), (GClosure*) ((____lambda24__gbus_name_lost_callback == NULL) ? NULL : g_cclosure_new ((GCallback) ____lambda24__gbus_name_lost_callback, identity_manager_app_ref (self), (GClosureNotify) identity_manager_app_unref)));
+#line 321 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _g_error_free0 (e);
+#line 2208 "moonshot-identity-manager-app.c"
+       }
+       __finally0:
+#line 321 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 321 "/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 321 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               g_clear_error (&_inner_error_);
+#line 321 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               return;
+#line 2219 "moonshot-identity-manager-app.c"
+       }
+}
+
+
+static Block2Data* block2_data_ref (Block2Data* _data2_) {
+#line 354 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_atomic_int_inc (&_data2_->_ref_count_);
+#line 354 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       return _data2_;
+#line 2229 "moonshot-identity-manager-app.c"
+}
+
+
+static void block2_data_unref (void * _userdata_) {
+       Block2Data* _data2_;
+       _data2_ = (Block2Data*) _userdata_;
+#line 354 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (g_atomic_int_dec_and_test (&_data2_->_ref_count_)) {
+#line 2238 "moonshot-identity-manager-app.c"
+               IdentityManagerApp* self;
+#line 354 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               self = _data2_->self;
+#line 354 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _g_free0 (_data2_->our_name);
+#line 354 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _identity_manager_app_unref0 (self);
+#line 354 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               g_slice_free (Block2Data, _data2_);
+#line 2248 "moonshot-identity-manager-app.c"
+       }
+}
+
+
+static gchar* bool_to_string (gboolean self) {
+       gchar* result = NULL;
+#line 37 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       if (self) {
+#line 2257 "moonshot-identity-manager-app.c"
+               gchar* _tmp0_ = NULL;
+#line 38 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp0_ = g_strdup ("true");
+#line 38 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               result = _tmp0_;
+#line 38 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               return result;
+#line 2265 "moonshot-identity-manager-app.c"
+       } else {
+               gchar* _tmp1_ = NULL;
+#line 40 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp1_ = g_strdup ("false");
+#line 40 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               result = _tmp1_;
+#line 40 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               return result;
+#line 2274 "moonshot-identity-manager-app.c"
+       }
+}
+
+
+static void __lambda25_ (Block2Data* _data2_, GDBusConnection* conn, const gchar* name) {
+       IdentityManagerApp* self;
+       gchar* _tmp0_ = NULL;
+       GDBusConnection* _tmp1_ = NULL;
+       MoonshotLogger* _tmp7_ = NULL;
+       gboolean _tmp8_ = FALSE;
+       gchar* _tmp9_ = NULL;
+       gchar* _tmp10_ = NULL;
+       gchar* _tmp11_ = NULL;
+       gchar* _tmp12_ = NULL;
+       gchar* _tmp13_ = NULL;
+       gchar* _tmp14_ = NULL;
+       gboolean _tmp15_ = FALSE;
+#line 364 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       self = _data2_->self;
+#line 364 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_return_if_fail (conn != NULL);
+#line 364 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_return_if_fail (name != NULL);
+#line 366 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp1_ = conn;
+#line 366 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (_tmp1_ == NULL) {
+#line 2302 "moonshot-identity-manager-app.c"
+               gchar* _tmp2_ = NULL;
+#line 366 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp2_ = g_strdup ("null");
+#line 366 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _g_free0 (_tmp0_);
+#line 366 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp0_ = _tmp2_;
+#line 2310 "moonshot-identity-manager-app.c"
+       } else {
+               const gchar* _tmp3_ = NULL;
+               gchar* _tmp4_ = NULL;
+               gchar* _tmp5_ = NULL;
+               gchar* _tmp6_ = NULL;
+#line 366 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp3_ = name;
+#line 366 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp4_ = g_strconcat ("non-null; name='", _tmp3_, NULL);
+#line 366 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp5_ = _tmp4_;
+#line 366 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp6_ = g_strconcat (_tmp5_, "'", NULL);
+#line 366 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _g_free0 (_tmp0_);
+#line 366 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp0_ = _tmp6_;
+#line 366 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _g_free0 (_tmp5_);
+#line 2330 "moonshot-identity-manager-app.c"
+       }
+#line 365 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp7_ = identity_manager_app_logger;
+#line 365 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp8_ = self->priv->show_requested;
+#line 365 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp9_ = bool_to_string (_tmp8_);
+#line 365 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp10_ = _tmp9_;
+#line 365 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp11_ = g_strconcat ("init_ipc_server: name_acquired_closure; show_requested=", _tmp10_, "; conn=", NULL);
+#line 365 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp12_ = _tmp11_;
+#line 365 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp13_ = g_strconcat (_tmp12_, _tmp0_, NULL);
+#line 365 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp14_ = _tmp13_;
+#line 365 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       moonshot_logger_trace (_tmp7_, _tmp14_, NULL);
+#line 365 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _g_free0 (_tmp14_);
+#line 365 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _g_free0 (_tmp12_);
+#line 365 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _g_free0 (_tmp10_);
+#line 368 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       self->priv->name_is_owned = TRUE;
+#line 371 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp15_ = self->priv->show_requested;
+#line 371 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (_tmp15_) {
+#line 372 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               identity_manager_app_show (self);
+#line 373 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               self->priv->show_requested = FALSE;
+#line 2366 "moonshot-identity-manager-app.c"
+       }
+#line 375 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _data2_->shown = TRUE;
+#line 364 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _g_free0 (_tmp0_);
+#line 2372 "moonshot-identity-manager-app.c"
+}
+
+
+static void ___lambda25__gbus_name_acquired_callback (GDBusConnection* connection, const gchar* name, gpointer self) {
+#line 358 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       __lambda25_ (self, connection, name);
+#line 2379 "moonshot-identity-manager-app.c"
+}
+
+
+static void __lambda26_ (Block2Data* _data2_) {
+       IdentityManagerApp* self;
+       MoonshotLogger* _tmp0_ = NULL;
+       GError * _inner_error_ = NULL;
+#line 379 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       self = _data2_->self;
+#line 380 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp0_ = identity_manager_app_logger;
+#line 380 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       moonshot_logger_trace (_tmp0_, "init_ipc_server: name_lost_closure", NULL);
+#line 386 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       self->priv->name_is_owned = FALSE;
+#line 387 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       self->priv->show_requested = FALSE;
+#line 2397 "moonshot-identity-manager-app.c"
+       {
+#line 390 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               if (!_data2_->shown) {
+#line 2401 "moonshot-identity-manager-app.c"
+                       IIdentityManager* manager = NULL;
+                       IIdentityManager* _tmp1_ = NULL;
+                       gboolean _tmp2_ = FALSE;
+                       IIdentityManager* _tmp3_ = NULL;
+                       gboolean _tmp4_ = FALSE;
+#line 391 "/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", _data2_->our_name, "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 391 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       manager = (IIdentityManager*) _tmp1_;
+#line 391 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 391 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               if (_inner_error_->domain == G_IO_ERROR) {
+#line 2415 "moonshot-identity-manager-app.c"
+                                       goto __catch2_g_io_error;
+                               }
+#line 391 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
+#line 391 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               g_clear_error (&_inner_error_);
+#line 391 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               return;
+#line 2424 "moonshot-identity-manager-app.c"
+                       }
+#line 392 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp3_ = manager;
+#line 392 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp4_ = iidentity_manager_show_ui (_tmp3_, &_inner_error_);
+#line 392 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp2_ = _tmp4_;
+#line 392 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 392 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _g_object_unref0 (manager);
+#line 392 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               if (_inner_error_->domain == G_IO_ERROR) {
+#line 2438 "moonshot-identity-manager-app.c"
+                                       goto __catch2_g_io_error;
+                               }
+#line 392 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _g_object_unref0 (manager);
+#line 392 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
+#line 392 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               g_clear_error (&_inner_error_);
+#line 392 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               return;
+#line 2449 "moonshot-identity-manager-app.c"
+                       }
+#line 392 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _data2_->shown = _tmp2_;
+#line 390 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _g_object_unref0 (manager);
+#line 2455 "moonshot-identity-manager-app.c"
+               }
+       }
+       goto __finally2;
+       __catch2_g_io_error:
+       {
+               GError* e = NULL;
+               MoonshotLogger* _tmp5_ = NULL;
+               GError* _tmp6_ = NULL;
+               const gchar* _tmp7_ = NULL;
+               gchar* _tmp8_ = NULL;
+               gchar* _tmp9_ = NULL;
+#line 389 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               e = _inner_error_;
+#line 389 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _inner_error_ = NULL;
+#line 395 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp5_ = identity_manager_app_logger;
+#line 395 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp6_ = e;
+#line 395 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp7_ = _tmp6_->message;
+#line 395 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp8_ = g_strconcat ("init_ipc_server.name_lost_closure: Caught IOError: ", _tmp7_, NULL);
+#line 395 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp9_ = _tmp8_;
+#line 395 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               moonshot_logger_error (_tmp5_, _tmp9_, NULL);
+#line 395 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _g_free0 (_tmp9_);
+#line 389 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _g_error_free0 (e);
+#line 2487 "moonshot-identity-manager-app.c"
+       }
+       __finally2:
+#line 389 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 389 "/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 389 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               g_clear_error (&_inner_error_);
+#line 389 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               return;
+#line 2498 "moonshot-identity-manager-app.c"
+       }
+#line 397 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (!_data2_->shown) {
+#line 2502 "moonshot-identity-manager-app.c"
+               MoonshotLogger* _tmp10_ = NULL;
+               gchar* _tmp11_ = NULL;
+               gchar* _tmp12_ = NULL;
+#line 398 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp10_ = identity_manager_app_logger;
+#line 398 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp11_ = g_strdup_printf ("init_ipc_server.name_lost_closure: Couldn't own name '%s' on dbus or s" \
+"how previously launched identity manager", _data2_->our_name);
+#line 398 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp12_ = _tmp11_;
+#line 398 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               moonshot_logger_error (_tmp10_, _tmp12_, NULL);
+#line 398 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _g_free0 (_tmp12_);
+#line 399 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               g_error ("moonshot-identity-manager-app.vala:399: Couldn't own name '%s' on dbus" \
+" or show previously launched identity manager.", _data2_->our_name);
+#line 2518 "moonshot-identity-manager-app.c"
+       } else {
+               MoonshotLogger* _tmp13_ = NULL;
+               FILE* _tmp14_ = NULL;
+#line 401 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp13_ = identity_manager_app_logger;
+#line 401 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               moonshot_logger_trace (_tmp13_, "init_ipc_server.name_lost_closure: Showed previously launched identity" \
+" manager.", NULL);
+#line 402 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp14_ = stdout;
+#line 402 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               fprintf (_tmp14_, "Showed previously launched identity manager.\n");
+#line 403 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               exit (0);
+#line 2532 "moonshot-identity-manager-app.c"
+       }
+}
+
+
+static void ___lambda26__gbus_name_lost_callback (GDBusConnection* connection, const gchar* name, gpointer self) {
+#line 358 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       __lambda26_ (self);
+#line 2540 "moonshot-identity-manager-app.c"
+}
+
+
+static void identity_manager_app_init_ipc_server (IdentityManagerApp* self) {
+       Block2Data* _data2_;
+       MoonshotServer* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+#line 354 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_return_if_fail (self != NULL);
+#line 354 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _data2_ = g_slice_new0 (Block2Data);
+#line 354 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _data2_->_ref_count_ = 1;
+#line 354 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _data2_->self = identity_manager_app_ref (self);
+#line 355 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp0_ = moonshot_server_new (self);
+#line 355 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _g_object_unref0 (self->priv->ipc_server);
+#line 355 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       self->priv->ipc_server = _tmp0_;
+#line 356 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _data2_->shown = FALSE;
+#line 357 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp1_ = g_strdup ("org.janet.Moonshot");
+#line 357 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _data2_->our_name = _tmp1_;
+#line 358 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_bus_own_name_with_closures (G_BUS_TYPE_SESSION, _data2_->our_name, 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), (GClosureNotify) identity_manager_app_unref)), (GClosure*) ((___lambda25__gbus_name_acquired_callback == NULL) ? NULL : g_cclosure_new ((GCallback) ___lambda25__gbus_name_acquired_callback, block2_data_ref (_data2_), (GClosureNotify) block2_data_unref)), (GClosure*) ((___lambda26__gbus_name_lost_callback == NULL) ? NULL : g_cclosure_new ((GCallback) ___lambda26__gbus_name_lost_callback, block2_data_ref (_data2_), (GClosureNotify) block2_data_unref)));
+#line 354 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       block2_data_unref (_data2_);
+#line 354 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _data2_ = NULL;
+#line 2574 "moonshot-identity-manager-app.c"
+}
+
+
+gboolean identity_manager_app_get_use_flat_file_store (IdentityManagerApp* self) {
+       gboolean result;
+       gboolean _tmp0_ = FALSE;
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_return_val_if_fail (self != NULL, FALSE);
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp0_ = self->priv->_use_flat_file_store;
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       result = _tmp0_;
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       return result;
+#line 2589 "moonshot-identity-manager-app.c"
+}
+
+
+static void identity_manager_app_set_use_flat_file_store (IdentityManagerApp* self, gboolean value) {
+       gboolean _tmp0_ = FALSE;
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_return_if_fail (self != NULL);
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp0_ = value;
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       self->priv->_use_flat_file_store = _tmp0_;
+#line 2601 "moonshot-identity-manager-app.c"
+}
+
+
+gboolean identity_manager_app_get_headless (IdentityManagerApp* self) {
+       gboolean result;
+       gboolean _tmp0_ = FALSE;
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_return_val_if_fail (self != NULL, FALSE);
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp0_ = self->priv->_headless;
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       result = _tmp0_;
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       return result;
+#line 2616 "moonshot-identity-manager-app.c"
+}
+
+
+static void identity_manager_app_set_headless (IdentityManagerApp* self, gboolean value) {
+       gboolean _tmp0_ = FALSE;
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_return_if_fail (self != NULL);
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp0_ = value;
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       self->priv->_headless = _tmp0_;
+#line 2628 "moonshot-identity-manager-app.c"
+}
+
+
+static void value_identity_manager_app_init (GValue* value) {
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       value->data[0].v_pointer = NULL;
+#line 2635 "moonshot-identity-manager-app.c"
+}
+
+
+static void value_identity_manager_app_free_value (GValue* value) {
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (value->data[0].v_pointer) {
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               identity_manager_app_unref (value->data[0].v_pointer);
+#line 2644 "moonshot-identity-manager-app.c"
+       }
+}
+
+
+static void value_identity_manager_app_copy_value (const GValue* src_value, GValue* dest_value) {
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (src_value->data[0].v_pointer) {
+#line 47 "/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 2654 "moonshot-identity-manager-app.c"
+       } else {
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               dest_value->data[0].v_pointer = NULL;
+#line 2658 "moonshot-identity-manager-app.c"
+       }
+}
+
+
+static gpointer value_identity_manager_app_peek_pointer (const GValue* value) {
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       return value->data[0].v_pointer;
+#line 2666 "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 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (collect_values[0].v_pointer) {
+#line 2673 "moonshot-identity-manager-app.c"
+               IdentityManagerApp* object;
+               object = collect_values[0].v_pointer;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               if (object->parent_instance.g_class == NULL) {
+#line 47 "/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 2680 "moonshot-identity-manager-app.c"
+               } else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) {
+#line 47 "/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 2684 "moonshot-identity-manager-app.c"
+               }
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               value->data[0].v_pointer = identity_manager_app_ref (object);
+#line 2688 "moonshot-identity-manager-app.c"
+       } else {
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               value->data[0].v_pointer = NULL;
+#line 2692 "moonshot-identity-manager-app.c"
+       }
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       return NULL;
+#line 2696 "moonshot-identity-manager-app.c"
+}
+
+
+static gchar* value_identity_manager_app_lcopy_value (const GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) {
+       IdentityManagerApp** object_p;
+       object_p = collect_values[0].v_pointer;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (!object_p) {
+#line 47 "/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 2707 "moonshot-identity-manager-app.c"
+       }
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (!value->data[0].v_pointer) {
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               *object_p = NULL;
+#line 2713 "moonshot-identity-manager-app.c"
+       } else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) {
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               *object_p = value->data[0].v_pointer;
+#line 2717 "moonshot-identity-manager-app.c"
+       } else {
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               *object_p = identity_manager_app_ref (value->data[0].v_pointer);
+#line 2721 "moonshot-identity-manager-app.c"
+       }
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       return NULL;
+#line 2725 "moonshot-identity-manager-app.c"
+}
+
+
+GParamSpec* param_spec_identity_manager_app (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags) {
+       ParamSpecIdentityManagerApp* spec;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_return_val_if_fail (g_type_is_a (object_type, TYPE_IDENTITY_MANAGER_APP), NULL);
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags);
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       G_PARAM_SPEC (spec)->value_type = object_type;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       return G_PARAM_SPEC (spec);
+#line 2739 "moonshot-identity-manager-app.c"
+}
+
+
+gpointer value_get_identity_manager_app (const GValue* value) {
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_IDENTITY_MANAGER_APP), NULL);
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       return value->data[0].v_pointer;
+#line 2748 "moonshot-identity-manager-app.c"
+}
+
+
+void value_set_identity_manager_app (GValue* value, gpointer v_object) {
+       IdentityManagerApp* old;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_IDENTITY_MANAGER_APP));
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       old = value->data[0].v_pointer;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (v_object) {
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_IDENTITY_MANAGER_APP));
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               value->data[0].v_pointer = v_object;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               identity_manager_app_ref (value->data[0].v_pointer);
+#line 2768 "moonshot-identity-manager-app.c"
+       } else {
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               value->data[0].v_pointer = NULL;
+#line 2772 "moonshot-identity-manager-app.c"
+       }
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (old) {
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               identity_manager_app_unref (old);
+#line 2778 "moonshot-identity-manager-app.c"
+       }
+}
+
+
+void value_take_identity_manager_app (GValue* value, gpointer v_object) {
+       IdentityManagerApp* old;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_IDENTITY_MANAGER_APP));
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       old = value->data[0].v_pointer;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (v_object) {
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_IDENTITY_MANAGER_APP));
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               value->data[0].v_pointer = v_object;
+#line 2797 "moonshot-identity-manager-app.c"
+       } else {
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               value->data[0].v_pointer = NULL;
+#line 2801 "moonshot-identity-manager-app.c"
+       }
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (old) {
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               identity_manager_app_unref (old);
+#line 2807 "moonshot-identity-manager-app.c"
+       }
+}
+
+
+static void identity_manager_app_class_init (IdentityManagerAppClass * klass) {
+       MoonshotLogger* _tmp0_ = NULL;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       identity_manager_app_parent_class = g_type_class_peek_parent (klass);
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       ((IdentityManagerAppClass *) klass)->finalize = identity_manager_app_finalize;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_type_class_add_private (klass, sizeof (IdentityManagerAppPrivate));
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp0_ = get_logger ("IdentityManagerApp");
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       identity_manager_app_logger = _tmp0_;
+#line 2824 "moonshot-identity-manager-app.c"
+}
+
+
+static void identity_manager_app_instance_init (IdentityManagerApp * self) {
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       self->priv = IDENTITY_MANAGER_APP_GET_PRIVATE (self);
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       self->ref_count = 1;
+#line 2833 "moonshot-identity-manager-app.c"
+}
+
+
+static void identity_manager_app_finalize (IdentityManagerApp* obj) {
+       IdentityManagerApp * self;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_IDENTITY_MANAGER_APP, IdentityManagerApp);
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_signal_handlers_destroy (self);
+#line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _g_object_unref0 (self->model);
+#line 51 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _g_object_unref0 (self->default_id_card);
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _g_object_unref0 (self->view);
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _g_object_unref0 (self->priv->ipc_server);
+#line 2851 "moonshot-identity-manager-app.c"
+}
+
+
+GType identity_manager_app_get_type (void) {
+       static volatile gsize identity_manager_app_type_id__volatile = 0;
+       if (g_once_init_enter (&identity_manager_app_type_id__volatile)) {
+               static const GTypeValueTable g_define_type_value_table = { value_identity_manager_app_init, value_identity_manager_app_free_value, value_identity_manager_app_copy_value, value_identity_manager_app_peek_pointer, "p", value_identity_manager_app_collect_value, "p", value_identity_manager_app_lcopy_value };
+               static const GTypeInfo g_define_type_info = { sizeof (IdentityManagerAppClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) identity_manager_app_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (IdentityManagerApp), 0, (GInstanceInitFunc) identity_manager_app_instance_init, &g_define_type_value_table };
+               static const GTypeFundamentalInfo g_define_type_fundamental_info = { (G_TYPE_FLAG_CLASSED | G_TYPE_FLAG_INSTANTIATABLE | G_TYPE_FLAG_DERIVABLE | G_TYPE_FLAG_DEEP_DERIVABLE) };
+               GType identity_manager_app_type_id;
+               identity_manager_app_type_id = g_type_register_fundamental (g_type_fundamental_next (), "IdentityManagerApp", &g_define_type_info, &g_define_type_fundamental_info, 0);
+               g_once_init_leave (&identity_manager_app_type_id__volatile, identity_manager_app_type_id);
+       }
+       return identity_manager_app_type_id__volatile;
+}
+
+
+gpointer identity_manager_app_ref (gpointer instance) {
+       IdentityManagerApp* self;
+       self = instance;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       g_atomic_int_inc (&self->ref_count);
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       return instance;
+#line 2876 "moonshot-identity-manager-app.c"
+}
+
+
+void identity_manager_app_unref (gpointer instance) {
+       IdentityManagerApp* self;
+       self = instance;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (g_atomic_int_dec_and_test (&self->ref_count)) {
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               IDENTITY_MANAGER_APP_GET_CLASS (self)->finalize (self);
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               g_type_free_instance ((GTypeInstance *) self);
+#line 2889 "moonshot-identity-manager-app.c"
+       }
+}
+
+
+gint _vala_main (gchar** args, int args_length1) {
+       gint result = 0;
+       gboolean headless = FALSE;
+       const gchar* _tmp0_ = NULL;
+       gboolean _tmp1_ = FALSE;
+       IdentityManagerApp* app = NULL;
+       gboolean _tmp30_ = FALSE;
+       gboolean _tmp31_ = FALSE;
+       IdentityManagerApp* _tmp32_ = NULL;
+       IdentityManagerApp* _tmp33_ = NULL;
+       gboolean _tmp34_ = FALSE;
+       MoonshotLogger* _tmp35_ = NULL;
+       gboolean _tmp36_ = FALSE;
+       gchar* _tmp37_ = NULL;
+       gchar* _tmp38_ = NULL;
+       gchar* _tmp39_ = NULL;
+       gchar* _tmp40_ = NULL;
+       IdentityManagerApp* _tmp41_ = NULL;
+       gboolean _tmp42_ = FALSE;
+       gboolean _tmp44_ = FALSE;
+       GError * _inner_error_ = NULL;
+#line 431 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp0_ = g_getenv ("DISPLAY");
+#line 431 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       headless = _tmp0_ == NULL;
+#line 434 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp1_ = headless;
+#line 434 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (_tmp1_) {
+#line 2923 "moonshot-identity-manager-app.c"
+               {
+                       GOptionContext* opt_context = NULL;
+                       GOptionContext* _tmp2_ = NULL;
+                       GOptionContext* _tmp3_ = NULL;
+                       GOptionContext* _tmp4_ = NULL;
+                       GOptionContext* _tmp5_ = NULL;
+#line 436 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp2_ = g_option_context_new (NULL);
+#line 436 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       opt_context = _tmp2_;
+#line 437 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp3_ = opt_context;
+#line 437 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       g_option_context_set_help_enabled (_tmp3_, TRUE);
+#line 438 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp4_ = opt_context;
+#line 438 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       g_option_context_add_main_entries (_tmp4_, options, NULL);
+#line 439 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp5_ = opt_context;
+#line 439 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       g_option_context_parse (_tmp5_, &args_length1, &args, &_inner_error_);
+#line 439 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 2948 "moonshot-identity-manager-app.c"
+                               gint _tmp6_ = 0;
+#line 439 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _g_option_context_free0 (opt_context);
+#line 439 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               if (_inner_error_->domain == G_OPTION_ERROR) {
+#line 2954 "moonshot-identity-manager-app.c"
+                                       goto __catch3_g_option_error;
+                               }
+#line 439 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _g_option_context_free0 (opt_context);
+#line 439 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
+#line 439 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               g_clear_error (&_inner_error_);
+#line 439 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               return _tmp6_;
+#line 2965 "moonshot-identity-manager-app.c"
+                       }
+#line 435 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _g_option_context_free0 (opt_context);
+#line 2969 "moonshot-identity-manager-app.c"
+               }
+               goto __finally3;
+               __catch3_g_option_error:
+               {
+                       GError* e = NULL;
+                       FILE* _tmp7_ = NULL;
+                       const gchar* _tmp8_ = NULL;
+                       GError* _tmp9_ = NULL;
+                       const gchar* _tmp10_ = NULL;
+                       FILE* _tmp11_ = NULL;
+                       const gchar* _tmp12_ = NULL;
+                       gchar** _tmp13_ = NULL;
+                       gint _tmp13__length1 = 0;
+                       const gchar* _tmp14_ = NULL;
+#line 435 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       e = _inner_error_;
+#line 435 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _inner_error_ = NULL;
+#line 441 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp7_ = stdout;
+#line 441 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp8_ = _ ("error: %s\n");
+#line 441 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp9_ = e;
+#line 441 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp10_ = _tmp9_->message;
+#line 441 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       fprintf (_tmp7_, _tmp8_, _tmp10_);
+#line 442 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp11_ = stdout;
+#line 442 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp12_ = _ ("Run '%s --help' to see a full list of available options\n");
+#line 442 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp13_ = args;
+#line 442 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp13__length1 = args_length1;
+#line 442 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp14_ = _tmp13_[0];
+#line 442 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       fprintf (_tmp11_, _tmp12_, _tmp14_);
+#line 443 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       result = -1;
+#line 443 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _g_error_free0 (e);
+#line 443 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       return result;
+#line 3016 "moonshot-identity-manager-app.c"
+               }
+               __finally3:
+#line 435 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 3021 "moonshot-identity-manager-app.c"
+                       gint _tmp15_ = 0;
+#line 435 "/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 435 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       g_clear_error (&_inner_error_);
+#line 435 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       return _tmp15_;
+#line 3029 "moonshot-identity-manager-app.c"
+               }
+#line 445 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               explicitly_launched = FALSE;
+#line 3033 "moonshot-identity-manager-app.c"
+       } else {
+               {
+                       gboolean _tmp16_ = FALSE;
+                       const gchar* _tmp17_ = NULL;
+                       gboolean _tmp18_ = FALSE;
+#line 448 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp17_ = _ ("");
+#line 448 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp18_ = gtk_init_with_args (&args_length1, &args, _tmp17_, options, NULL, &_inner_error_);
+#line 448 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp16_ = _tmp18_;
+#line 448 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 3047 "moonshot-identity-manager-app.c"
+                               goto __catch4_g_error;
+                       }
+#line 448 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       if (!_tmp16_) {
+#line 3052 "moonshot-identity-manager-app.c"
+                               FILE* _tmp19_ = NULL;
+                               const gchar* _tmp20_ = NULL;
+#line 449 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _tmp19_ = stdout;
+#line 449 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               _tmp20_ = _ ("unable to initialize window\n");
+#line 449 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               fprintf (_tmp19_, "%s", _tmp20_);
+#line 450 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               result = -1;
+#line 450 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                               return result;
+#line 3065 "moonshot-identity-manager-app.c"
+                       }
+               }
+               goto __finally4;
+               __catch4_g_error:
+               {
+                       GError* e = NULL;
+                       FILE* _tmp21_ = NULL;
+                       const gchar* _tmp22_ = NULL;
+                       GError* _tmp23_ = NULL;
+                       const gchar* _tmp24_ = NULL;
+                       FILE* _tmp25_ = NULL;
+                       const gchar* _tmp26_ = NULL;
+                       gchar** _tmp27_ = NULL;
+                       gint _tmp27__length1 = 0;
+                       const gchar* _tmp28_ = NULL;
+#line 447 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       e = _inner_error_;
+#line 447 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _inner_error_ = NULL;
+#line 453 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp21_ = stdout;
+#line 453 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp22_ = _ ("error: %s\n");
+#line 453 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp23_ = e;
+#line 453 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp24_ = _tmp23_->message;
+#line 453 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       fprintf (_tmp21_, _tmp22_, _tmp24_);
+#line 454 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp25_ = stdout;
+#line 454 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp26_ = _ ("Run '%s --help' to see a full list of available options\n");
+#line 454 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp27_ = args;
+#line 454 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp27__length1 = args_length1;
+#line 454 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _tmp28_ = _tmp27_[0];
+#line 454 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       fprintf (_tmp25_, _tmp26_, _tmp28_);
+#line 455 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       result = -1;
+#line 455 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       _g_error_free0 (e);
+#line 455 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       return result;
+#line 3113 "moonshot-identity-manager-app.c"
+               }
+               __finally4:
+#line 447 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 3118 "moonshot-identity-manager-app.c"
+                       gint _tmp29_ = 0;
+#line 447 "/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 447 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       g_clear_error (&_inner_error_);
+#line 447 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+                       return _tmp29_;
+#line 3126 "moonshot-identity-manager-app.c"
+               }
+#line 457 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               gtk_available = TRUE;
+#line 3130 "moonshot-identity-manager-app.c"
+       }
+#line 468 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       bindtextdomain (GETTEXT_PACKAGE, LOCALEDIR);
+#line 469 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
+#line 470 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       textdomain (GETTEXT_PACKAGE);
+#line 473 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp30_ = headless;
+#line 473 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp31_ = use_flat_file_store;
+#line 473 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp32_ = identity_manager_app_new (_tmp30_, _tmp31_);
+#line 473 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       app = _tmp32_;
+#line 474 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp33_ = app;
+#line 474 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp34_ = explicitly_launched;
+#line 474 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp33_->explicitly_launched = _tmp34_;
+#line 475 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp35_ = identity_manager_app_logger;
+#line 475 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp36_ = explicitly_launched;
+#line 475 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp37_ = bool_to_string (_tmp36_);
+#line 475 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp38_ = _tmp37_;
+#line 475 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp39_ = g_strconcat ("main: explicitly_launched=", _tmp38_, NULL);
+#line 475 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp40_ = _tmp39_;
+#line 475 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       moonshot_logger_trace (_tmp35_, _tmp40_, NULL);
+#line 475 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _g_free0 (_tmp40_);
+#line 475 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _g_free0 (_tmp38_);
+#line 477 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp41_ = app;
+#line 477 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp42_ = _tmp41_->explicitly_launched;
+#line 477 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (_tmp42_) {
+#line 3176 "moonshot-identity-manager-app.c"
+               IdentityManagerApp* _tmp43_ = NULL;
+#line 478 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp43_ = app;
+#line 478 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               identity_manager_app_show (_tmp43_);
+#line 3182 "moonshot-identity-manager-app.c"
+       }
+#line 481 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _tmp44_ = headless;
+#line 481 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       if (_tmp44_) {
+#line 3188 "moonshot-identity-manager-app.c"
+               GMainLoop* loop = NULL;
+               GMainLoop* _tmp45_ = NULL;
+               GMainLoop* _tmp46_ = NULL;
+#line 483 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp45_ = g_main_loop_new (NULL, FALSE);
+#line 483 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               loop = _tmp45_;
+#line 484 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _tmp46_ = loop;
+#line 484 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               g_main_loop_run (_tmp46_);
+#line 481 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               _g_main_loop_unref0 (loop);
+#line 3202 "moonshot-identity-manager-app.c"
+       } else {
+#line 488 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+               gtk_main ();
+#line 3206 "moonshot-identity-manager-app.c"
+       }
+#line 491 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       result = 0;
+#line 491 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       _identity_manager_app_unref0 (app);
+#line 491 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       return result;
+#line 3214 "moonshot-identity-manager-app.c"
+}
+
+
+int main (int argc, char ** argv) {
+#if !GLIB_CHECK_VERSION (2,35,0)
+       g_type_init ();
+#endif
+#line 421 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-manager-app.vala"
+       return _vala_main (argv, argc);
+#line 3224 "moonshot-identity-manager-app.c"
+}
+
+
+static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func) {
+       if ((array != NULL) && (destroy_func != NULL)) {
+               int i;
+               for (i = 0; i < array_length; i = i + 1) {
+                       if (((gpointer*) array)[i] != NULL) {
+                               destroy_func (((gpointer*) array)[i]);
+                       }
+               }
+       }
+}
+
+
+static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func) {
+       _vala_array_destroy (array, array_length, destroy_func);
+       g_free (array);
+}
+
+
+static gint _vala_array_length (gpointer array) {
+       int length;
+       length = 0;
+       if (array) {
+               while (((gpointer*) array)[length]) {
+                       length++;
+               }
+       }
+       return length;
+}
+
+
+
diff --git a/src/moonshot-identity-request.c b/src/moonshot-identity-request.c
new file mode 100644 (file)
index 0000000..9b1795d
--- /dev/null
@@ -0,0 +1,659 @@
+/* moonshot-identity-request.c generated by valac 0.34.9, the Vala compiler
+ * generated from moonshot-identity-request.vala, do not modify */
+
+/*
+ * Copyright (c) 2011-2016, JANET(UK)
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * 3. Neither the name of JANET(UK) nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+*/
+
+#include <glib.h>
+#include <glib-object.h>
+#include <stdlib.h>
+#include <string.h>
+#include <gee.h>
+#include <gtk/gtk.h>
+
+
+#define TYPE_IDENTITY_REQUEST (identity_request_get_type ())
+#define IDENTITY_REQUEST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_REQUEST, IdentityRequest))
+#define IDENTITY_REQUEST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_REQUEST, IdentityRequestClass))
+#define IS_IDENTITY_REQUEST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_REQUEST))
+#define IS_IDENTITY_REQUEST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_REQUEST))
+#define IDENTITY_REQUEST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_REQUEST, IdentityRequestClass))
+
+typedef struct _IdentityRequest IdentityRequest;
+typedef struct _IdentityRequestClass IdentityRequestClass;
+typedef struct _IdentityRequestPrivate IdentityRequestPrivate;
+
+#define TYPE_ID_CARD (id_card_get_type ())
+#define ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ID_CARD, IdCard))
+#define ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ID_CARD, IdCardClass))
+#define IS_ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ID_CARD))
+#define IS_ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ID_CARD))
+#define ID_CARD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ID_CARD, IdCardClass))
+
+typedef struct _IdCard IdCard;
+typedef struct _IdCardClass IdCardClass;
+
+#define TYPE_IDENTITY_MANAGER_APP (identity_manager_app_get_type ())
+#define IDENTITY_MANAGER_APP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_MANAGER_APP, IdentityManagerApp))
+#define IDENTITY_MANAGER_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_MANAGER_APP, IdentityManagerAppClass))
+#define IS_IDENTITY_MANAGER_APP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_MANAGER_APP))
+#define IS_IDENTITY_MANAGER_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_MANAGER_APP))
+#define IDENTITY_MANAGER_APP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_MANAGER_APP, IdentityManagerAppClass))
+
+typedef struct _IdentityManagerApp IdentityManagerApp;
+typedef struct _IdentityManagerAppClass IdentityManagerAppClass;
+
+#define TYPE_MOONSHOT_LOGGER (moonshot_logger_get_type ())
+#define MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLogger))
+#define MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+#define IS_MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MOONSHOT_LOGGER))
+#define IS_MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MOONSHOT_LOGGER))
+#define MOONSHOT_LOGGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+
+typedef struct _MoonshotLogger MoonshotLogger;
+typedef struct _MoonshotLoggerClass MoonshotLoggerClass;
+#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
+#define _identity_manager_app_unref0(var) ((var == NULL) ? NULL : (var = (identity_manager_app_unref (var), NULL)))
+#define _g_free0(var) (var = (g_free (var), NULL))
+#define __g_slist_free__g_object_unref0_0(var) ((var == NULL) ? NULL : (var = (_g_slist_free__g_object_unref0_ (var), NULL)))
+typedef struct _IdentityManagerAppPrivate IdentityManagerAppPrivate;
+
+#define TYPE_IDENTITY_MANAGER_MODEL (identity_manager_model_get_type ())
+#define IDENTITY_MANAGER_MODEL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_MANAGER_MODEL, IdentityManagerModel))
+#define IDENTITY_MANAGER_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_MANAGER_MODEL, IdentityManagerModelClass))
+#define IS_IDENTITY_MANAGER_MODEL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_MANAGER_MODEL))
+#define IS_IDENTITY_MANAGER_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_MANAGER_MODEL))
+#define IDENTITY_MANAGER_MODEL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_MANAGER_MODEL, IdentityManagerModelClass))
+
+typedef struct _IdentityManagerModel IdentityManagerModel;
+typedef struct _IdentityManagerModelClass IdentityManagerModelClass;
+
+#define TYPE_IDENTITY_MANAGER_VIEW (identity_manager_view_get_type ())
+#define IDENTITY_MANAGER_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerView))
+#define IDENTITY_MANAGER_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerViewClass))
+#define IS_IDENTITY_MANAGER_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_MANAGER_VIEW))
+#define IS_IDENTITY_MANAGER_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_MANAGER_VIEW))
+#define IDENTITY_MANAGER_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerViewClass))
+
+typedef struct _IdentityManagerView IdentityManagerView;
+typedef struct _IdentityManagerViewClass IdentityManagerViewClass;
+
+typedef void (*ReturnIdentityCallback) (IdentityRequest* request, void* user_data);
+struct _IdentityRequest {
+       GObject parent_instance;
+       IdentityRequestPrivate * priv;
+       IdCard* id_card;
+       gboolean complete;
+       gboolean select_default;
+       gchar* nai;
+       gchar* password;
+       gchar* service;
+       GSList* candidates;
+};
+
+struct _IdentityRequestClass {
+       GObjectClass parent_class;
+};
+
+struct _IdentityRequestPrivate {
+       IdentityManagerApp* parent_app;
+       ReturnIdentityCallback callback;
+       gpointer callback_target;
+       GDestroyNotify callback_target_destroy_notify;
+};
+
+struct _IdentityManagerApp {
+       GTypeInstance parent_instance;
+       volatile int ref_count;
+       IdentityManagerAppPrivate * priv;
+       IdentityManagerModel* model;
+       IdCard* default_id_card;
+       gboolean explicitly_launched;
+       IdentityManagerView* view;
+};
+
+struct _IdentityManagerAppClass {
+       GTypeClass parent_class;
+       void (*finalize) (IdentityManagerApp *self);
+};
+
+
+static gpointer identity_request_parent_class = NULL;
+static MoonshotLogger* identity_request_logger;
+static MoonshotLogger* identity_request_logger = NULL;
+
+GType identity_request_get_type (void) G_GNUC_CONST;
+GType id_card_get_type (void) G_GNUC_CONST;
+gpointer identity_manager_app_ref (gpointer instance);
+void identity_manager_app_unref (gpointer instance);
+GParamSpec* param_spec_identity_manager_app (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
+void value_set_identity_manager_app (GValue* value, gpointer v_object);
+void value_take_identity_manager_app (GValue* value, gpointer v_object);
+gpointer value_get_identity_manager_app (const GValue* value);
+GType identity_manager_app_get_type (void) G_GNUC_CONST;
+#define IDENTITY_REQUEST_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_IDENTITY_REQUEST, IdentityRequestPrivate))
+enum  {
+       IDENTITY_REQUEST_DUMMY_PROPERTY
+};
+GType moonshot_logger_get_type (void) G_GNUC_CONST;
+MoonshotLogger* get_logger (const gchar* name);
+static void _g_object_unref0_ (gpointer var);
+static void _g_slist_free__g_object_unref0_ (GSList* self);
+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);
+IdentityRequest* identity_request_new_default (IdentityManagerApp* app);
+IdentityRequest* identity_request_construct_default (GType object_type, IdentityManagerApp* app);
+void identity_request_set_callback (IdentityRequest* self, ReturnIdentityCallback cb, void* cb_target, GDestroyNotify cb_target_destroy_notify);
+gboolean identity_request_execute (IdentityRequest* self);
+void identity_manager_app_select_identity (IdentityManagerApp* self, IdentityRequest* request);
+void identity_request_return_identity (IdentityRequest* self, IdCard* id_card, gboolean update_card);
+GeeArrayList* id_card_get_services (IdCard* self);
+void moonshot_logger_trace (MoonshotLogger* self, const gchar* message, GError* e);
+GType identity_manager_model_get_type (void) G_GNUC_CONST;
+GType identity_manager_view_get_type (void) G_GNUC_CONST;
+IdCard* identity_manager_model_update_card (IdentityManagerModel* self, IdCard* card);
+static void identity_request_finalize (GObject* obj);
+
+
+static void _g_object_unref0_ (gpointer var) {
+#line 45 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       (var == NULL) ? NULL : (var = (g_object_unref (var), NULL));
+#line 191 "moonshot-identity-request.c"
+}
+
+
+static void _g_slist_free__g_object_unref0_ (GSList* self) {
+#line 45 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       g_slist_foreach (self, (GFunc) _g_object_unref0_, NULL);
+#line 45 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       g_slist_free (self);
+#line 200 "moonshot-identity-request.c"
+}
+
+
+static gpointer _identity_manager_app_ref0 (gpointer self) {
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       return self ? identity_manager_app_ref (self) : NULL;
+#line 207 "moonshot-identity-request.c"
+}
+
+
+IdentityRequest* identity_request_construct (GType object_type, IdentityManagerApp* app, const gchar* nai, const gchar* password, const gchar* service) {
+       IdentityRequest * self = NULL;
+       IdentityManagerApp* _tmp0_ = NULL;
+       IdentityManagerApp* _tmp1_ = NULL;
+       const gchar* _tmp2_ = NULL;
+       gchar* _tmp3_ = NULL;
+       const gchar* _tmp4_ = NULL;
+       gchar* _tmp5_ = NULL;
+       const gchar* _tmp6_ = NULL;
+       gchar* _tmp7_ = NULL;
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       g_return_val_if_fail (app != NULL, NULL);
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       g_return_val_if_fail (nai != NULL, NULL);
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       g_return_val_if_fail (password != NULL, NULL);
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       g_return_val_if_fail (service != NULL, NULL);
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       self = (IdentityRequest*) g_object_new (object_type, NULL);
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _tmp0_ = app;
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _tmp1_ = _identity_manager_app_ref0 (_tmp0_);
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _identity_manager_app_unref0 (self->priv->parent_app);
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       self->priv->parent_app = _tmp1_;
+#line 55 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _tmp2_ = nai;
+#line 55 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _tmp3_ = g_strdup (_tmp2_);
+#line 55 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _g_free0 (self->nai);
+#line 55 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       self->nai = _tmp3_;
+#line 56 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _tmp4_ = password;
+#line 56 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _tmp5_ = g_strdup (_tmp4_);
+#line 56 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _g_free0 (self->password);
+#line 56 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       self->password = _tmp5_;
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _tmp6_ = service;
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _tmp7_ = g_strdup (_tmp6_);
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _g_free0 (self->service);
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       self->service = _tmp7_;
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       return self;
+#line 265 "moonshot-identity-request.c"
+}
+
+
+IdentityRequest* identity_request_new (IdentityManagerApp* app, const gchar* nai, const gchar* password, const gchar* service) {
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       return identity_request_construct (TYPE_IDENTITY_REQUEST, app, nai, password, service);
+#line 272 "moonshot-identity-request.c"
+}
+
+
+IdentityRequest* identity_request_construct_default (GType object_type, IdentityManagerApp* app) {
+       IdentityRequest * self = NULL;
+       IdentityManagerApp* _tmp0_ = NULL;
+       IdentityManagerApp* _tmp1_ = NULL;
+#line 60 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       g_return_val_if_fail (app != NULL, NULL);
+#line 60 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       self = (IdentityRequest*) g_object_new (object_type, NULL);
+#line 62 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _tmp0_ = app;
+#line 62 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _tmp1_ = _identity_manager_app_ref0 (_tmp0_);
+#line 62 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _identity_manager_app_unref0 (self->priv->parent_app);
+#line 62 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       self->priv->parent_app = _tmp1_;
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       self->select_default = TRUE;
+#line 60 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       return self;
+#line 296 "moonshot-identity-request.c"
+}
+
+
+IdentityRequest* identity_request_new_default (IdentityManagerApp* app) {
+#line 60 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       return identity_request_construct_default (TYPE_IDENTITY_REQUEST, app);
+#line 303 "moonshot-identity-request.c"
+}
+
+
+void identity_request_set_callback (IdentityRequest* self, ReturnIdentityCallback cb, void* cb_target, GDestroyNotify cb_target_destroy_notify) {
+       ReturnIdentityCallback _tmp0_ = NULL;
+       void* _tmp0__target = NULL;
+       GDestroyNotify _tmp0__target_destroy_notify = NULL;
+#line 66 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       g_return_if_fail (self != NULL);
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _tmp0_ = cb;
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _tmp0__target = cb_target;
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _tmp0__target_destroy_notify = cb_target_destroy_notify;
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       cb = NULL;
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       cb_target = NULL;
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       cb_target_destroy_notify = NULL;
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       (self->priv->callback_target_destroy_notify == NULL) ? NULL : (self->priv->callback_target_destroy_notify (self->priv->callback_target), NULL);
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       self->priv->callback = NULL;
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       self->priv->callback_target = NULL;
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       self->priv->callback_target_destroy_notify = NULL;
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       self->priv->callback = _tmp0_;
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       self->priv->callback_target = _tmp0__target;
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       self->priv->callback_target_destroy_notify = _tmp0__target_destroy_notify;
+#line 66 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       (cb_target_destroy_notify == NULL) ? NULL : (cb_target_destroy_notify (cb_target), NULL);
+#line 66 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       cb = NULL;
+#line 66 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       cb_target = NULL;
+#line 66 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       cb_target_destroy_notify = NULL;
+#line 347 "moonshot-identity-request.c"
+}
+
+
+gboolean identity_request_execute (IdentityRequest* self) {
+       gboolean result = FALSE;
+       IdentityManagerApp* _tmp0_ = NULL;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       g_return_val_if_fail (self != NULL, FALSE);
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _tmp0_ = self->priv->parent_app;
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       identity_manager_app_select_identity (_tmp0_, self);
+#line 81 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       result = FALSE;
+#line 81 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       return result;
+#line 364 "moonshot-identity-request.c"
+}
+
+
+static gpointer _g_object_ref0 (gpointer self) {
+#line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       return self ? g_object_ref (self) : NULL;
+#line 371 "moonshot-identity-request.c"
+}
+
+
+static gchar* bool_to_string (gboolean self) {
+       gchar* result = NULL;
+#line 37 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       if (self) {
+#line 379 "moonshot-identity-request.c"
+               gchar* _tmp0_ = NULL;
+#line 38 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp0_ = g_strdup ("true");
+#line 38 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               result = _tmp0_;
+#line 38 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               return result;
+#line 387 "moonshot-identity-request.c"
+       } else {
+               gchar* _tmp1_ = NULL;
+#line 40 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp1_ = g_strdup ("false");
+#line 40 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               result = _tmp1_;
+#line 40 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               return result;
+#line 396 "moonshot-identity-request.c"
+       }
+}
+
+
+void identity_request_return_identity (IdentityRequest* self, IdCard* id_card, gboolean update_card) {
+       IdCard* _tmp0_ = NULL;
+       IdCard* _tmp1_ = NULL;
+       gboolean _tmp2_ = FALSE;
+       gboolean _tmp3_ = FALSE;
+       gboolean _tmp4_ = FALSE;
+       gboolean _tmp5_ = FALSE;
+       ReturnIdentityCallback _tmp31_ = NULL;
+       void* _tmp31__target = NULL;
+       MoonshotLogger* _tmp32_ = NULL;
+       ReturnIdentityCallback _tmp33_ = NULL;
+       void* _tmp33__target = NULL;
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       g_return_if_fail (self != NULL);
+#line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _tmp0_ = id_card;
+#line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _tmp1_ = _g_object_ref0 (_tmp0_);
+#line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _g_object_unref0 (self->id_card);
+#line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       self->id_card = _tmp1_;
+#line 86 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       self->complete = TRUE;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _tmp5_ = update_card;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       if (_tmp5_) {
+#line 429 "moonshot-identity-request.c"
+               IdCard* _tmp6_ = NULL;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+               _tmp6_ = id_card;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+               _tmp4_ = _tmp6_ != NULL;
+#line 435 "moonshot-identity-request.c"
+       } else {
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+               _tmp4_ = FALSE;
+#line 439 "moonshot-identity-request.c"
+       }
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       if (_tmp4_) {
+#line 443 "moonshot-identity-request.c"
+               const gchar* _tmp7_ = NULL;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+               _tmp7_ = self->service;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+               _tmp3_ = _tmp7_ != NULL;
+#line 449 "moonshot-identity-request.c"
+       } else {
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+               _tmp3_ = FALSE;
+#line 453 "moonshot-identity-request.c"
+       }
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       if (_tmp3_) {
+#line 457 "moonshot-identity-request.c"
+               const gchar* _tmp8_ = NULL;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+               _tmp8_ = self->service;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+               _tmp2_ = g_strcmp0 (_tmp8_, "") != 0;
+#line 463 "moonshot-identity-request.c"
+       } else {
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+               _tmp2_ = FALSE;
+#line 467 "moonshot-identity-request.c"
+       }
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       if (_tmp2_) {
+#line 471 "moonshot-identity-request.c"
+               gboolean duplicate_service = FALSE;
+               IdCard* _tmp9_ = NULL;
+               GeeArrayList* _tmp10_ = NULL;
+               GeeArrayList* _tmp11_ = NULL;
+               const gchar* _tmp12_ = NULL;
+               gboolean _tmp13_ = FALSE;
+               MoonshotLogger* _tmp14_ = NULL;
+               gboolean _tmp15_ = FALSE;
+               gchar* _tmp16_ = NULL;
+               gchar* _tmp17_ = NULL;
+               gchar* _tmp18_ = NULL;
+               gchar* _tmp19_ = NULL;
+               gboolean _tmp20_ = FALSE;
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+               _tmp9_ = id_card;
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+               _tmp10_ = id_card_get_services (_tmp9_);
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+               _tmp11_ = _tmp10_;
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+               _tmp12_ = self->service;
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+               _tmp13_ = gee_abstract_collection_contains ((GeeAbstractCollection*) _tmp11_, _tmp12_);
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+               duplicate_service = _tmp13_;
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+               _tmp14_ = identity_request_logger;
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+               _tmp15_ = duplicate_service;
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+               _tmp16_ = bool_to_string (_tmp15_);
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+               _tmp17_ = _tmp16_;
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+               _tmp18_ = g_strconcat ("return_identity: duplicate_service=", _tmp17_, NULL);
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+               _tmp19_ = _tmp18_;
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+               moonshot_logger_trace (_tmp14_, _tmp19_, NULL);
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+               _g_free0 (_tmp19_);
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+               _g_free0 (_tmp17_);
+#line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+               _tmp20_ = duplicate_service;
+#line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+               if (_tmp20_ == FALSE) {
+#line 519 "moonshot-identity-request.c"
+                       MoonshotLogger* _tmp21_ = NULL;
+                       IdCard* _tmp22_ = NULL;
+                       GeeArrayList* _tmp23_ = NULL;
+                       GeeArrayList* _tmp24_ = NULL;
+                       const gchar* _tmp25_ = NULL;
+                       MoonshotLogger* _tmp26_ = NULL;
+                       IdentityManagerApp* _tmp27_ = NULL;
+                       IdentityManagerModel* _tmp28_ = NULL;
+                       IdCard* _tmp29_ = NULL;
+                       IdCard* _tmp30_ = NULL;
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+                       _tmp21_ = identity_request_logger;
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+                       moonshot_logger_trace (_tmp21_, "return_identity: calling add_service", NULL);
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+                       _tmp22_ = id_card;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+                       _tmp23_ = id_card_get_services (_tmp22_);
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+                       _tmp24_ = _tmp23_;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+                       _tmp25_ = self->service;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+                       gee_abstract_collection_add ((GeeAbstractCollection*) _tmp24_, _tmp25_);
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+                       _tmp26_ = identity_request_logger;
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+                       moonshot_logger_trace (_tmp26_, "return_identity: back from add_service", NULL);
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+                       _tmp27_ = self->priv->parent_app;
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+                       _tmp28_ = _tmp27_->model;
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+                       _tmp29_ = id_card;
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+                       _tmp30_ = identity_manager_model_update_card (_tmp28_, _tmp29_);
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+                       _g_object_unref0 (self->id_card);
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+                       self->id_card = _tmp30_;
+#line 560 "moonshot-identity-request.c"
+               }
+       }
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _tmp31_ = self->priv->callback;
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _tmp31__target = self->priv->callback_target;
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       g_return_if_fail (_tmp31_ != NULL);
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _tmp32_ = identity_request_logger;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       moonshot_logger_trace (_tmp32_, "return_identity: invoking callback", NULL);
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _tmp33_ = self->priv->callback;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _tmp33__target = self->priv->callback_target;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _tmp33_ (self, _tmp33__target);
+#line 579 "moonshot-identity-request.c"
+}
+
+
+static void identity_request_class_init (IdentityRequestClass * klass) {
+       MoonshotLogger* _tmp0_ = NULL;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       identity_request_parent_class = g_type_class_peek_parent (klass);
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       g_type_class_add_private (klass, sizeof (IdentityRequestPrivate));
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       G_OBJECT_CLASS (klass)->finalize = identity_request_finalize;
+#line 35 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _tmp0_ = get_logger ("IdentityRequest");
+#line 35 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       identity_request_logger = _tmp0_;
+#line 595 "moonshot-identity-request.c"
+}
+
+
+static void identity_request_instance_init (IdentityRequest * self) {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       self->priv = IDENTITY_REQUEST_GET_PRIVATE (self);
+#line 37 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       self->id_card = NULL;
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       self->complete = FALSE;
+#line 39 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       self->select_default = FALSE;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       self->priv->callback = NULL;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       self->priv->callback_target = self;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       self->priv->callback_target_destroy_notify = NULL;
+#line 614 "moonshot-identity-request.c"
+}
+
+
+static void identity_request_finalize (GObject* obj) {
+       IdentityRequest * self;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_IDENTITY_REQUEST, IdentityRequest);
+#line 37 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _g_object_unref0 (self->id_card);
+#line 41 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _identity_manager_app_unref0 (self->priv->parent_app);
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _g_free0 (self->nai);
+#line 43 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _g_free0 (self->password);
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       _g_free0 (self->service);
+#line 45 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       __g_slist_free__g_object_unref0_0 (self->candidates);
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       (self->priv->callback_target_destroy_notify == NULL) ? NULL : (self->priv->callback_target_destroy_notify (self->priv->callback_target), NULL);
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       self->priv->callback = NULL;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       self->priv->callback_target = NULL;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       self->priv->callback_target_destroy_notify = NULL;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-identity-request.vala"
+       G_OBJECT_CLASS (identity_request_parent_class)->finalize (obj);
+#line 644 "moonshot-identity-request.c"
+}
+
+
+GType identity_request_get_type (void) {
+       static volatile gsize identity_request_type_id__volatile = 0;
+       if (g_once_init_enter (&identity_request_type_id__volatile)) {
+               static const GTypeInfo g_define_type_info = { sizeof (IdentityRequestClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) identity_request_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (IdentityRequest), 0, (GInstanceInitFunc) identity_request_instance_init, NULL };
+               GType identity_request_type_id;
+               identity_request_type_id = g_type_register_static (G_TYPE_OBJECT, "IdentityRequest", &g_define_type_info, 0);
+               g_once_init_leave (&identity_request_type_id__volatile, identity_request_type_id);
+       }
+       return identity_request_type_id__volatile;
+}
+
+
+
diff --git a/src/moonshot-keyring-store.c b/src/moonshot-keyring-store.c
new file mode 100644 (file)
index 0000000..7e9074f
--- /dev/null
@@ -0,0 +1,2644 @@
+/* moonshot-keyring-store.c generated by valac 0.34.9, the Vala compiler
+ * generated from moonshot-keyring-store.vala, do not modify */
+
+/*
+ * Copyright (c) 2011-2016, JANET(UK)
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * 3. Neither the name of JANET(UK) nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+*/
+
+#include <glib.h>
+#include <glib-object.h>
+#include <gee.h>
+#include <stdlib.h>
+#include <string.h>
+#include <gnome-keyring.h>
+#include <stdio.h>
+
+
+#define TYPE_IIDENTITY_CARD_STORE (iidentity_card_store_get_type ())
+#define IIDENTITY_CARD_STORE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IIDENTITY_CARD_STORE, IIdentityCardStore))
+#define IS_IIDENTITY_CARD_STORE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IIDENTITY_CARD_STORE))
+#define IIDENTITY_CARD_STORE_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), TYPE_IIDENTITY_CARD_STORE, IIdentityCardStoreIface))
+
+typedef struct _IIdentityCardStore IIdentityCardStore;
+typedef struct _IIdentityCardStoreIface IIdentityCardStoreIface;
+
+#define TYPE_ID_CARD (id_card_get_type ())
+#define ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ID_CARD, IdCard))
+#define ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ID_CARD, IdCardClass))
+#define IS_ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ID_CARD))
+#define IS_ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ID_CARD))
+#define ID_CARD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ID_CARD, IdCardClass))
+
+typedef struct _IdCard IdCard;
+typedef struct _IdCardClass IdCardClass;
+
+#define IIDENTITY_CARD_STORE_TYPE_STORE_TYPE (iidentity_card_store_store_type_get_type ())
+
+#define TYPE_KEYRING_STORE (keyring_store_get_type ())
+#define KEYRING_STORE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_KEYRING_STORE, KeyringStore))
+#define KEYRING_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_KEYRING_STORE, KeyringStoreClass))
+#define IS_KEYRING_STORE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_KEYRING_STORE))
+#define IS_KEYRING_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_KEYRING_STORE))
+#define KEYRING_STORE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_KEYRING_STORE, KeyringStoreClass))
+
+typedef struct _KeyringStore KeyringStore;
+typedef struct _KeyringStoreClass KeyringStoreClass;
+typedef struct _KeyringStorePrivate KeyringStorePrivate;
+
+#define TYPE_MOONSHOT_LOGGER (moonshot_logger_get_type ())
+#define MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLogger))
+#define MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+#define IS_MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MOONSHOT_LOGGER))
+#define IS_MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MOONSHOT_LOGGER))
+#define MOONSHOT_LOGGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+
+typedef struct _MoonshotLogger MoonshotLogger;
+typedef struct _MoonshotLoggerClass MoonshotLoggerClass;
+#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
+#define _g_free0(var) (var = (g_free (var), NULL))
+#define __g_list_free__gnome_keyring_found_free0_0(var) ((var == NULL) ? NULL : (var = (_g_list_free__gnome_keyring_found_free0_ (var), NULL)))
+#define _gnome_keyring_attribute_list_free0(var) ((var == NULL) ? NULL : (var = (gnome_keyring_attribute_list_free (var), NULL)))
+
+#define TYPE_TRUST_ANCHOR (trust_anchor_get_type ())
+#define TRUST_ANCHOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TRUST_ANCHOR, TrustAnchor))
+#define TRUST_ANCHOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TRUST_ANCHOR, TrustAnchorClass))
+#define IS_TRUST_ANCHOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TRUST_ANCHOR))
+#define IS_TRUST_ANCHOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TRUST_ANCHOR))
+#define TRUST_ANCHOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TRUST_ANCHOR, TrustAnchorClass))
+
+typedef struct _TrustAnchor TrustAnchor;
+typedef struct _TrustAnchorClass TrustAnchorClass;
+
+#define TYPE_RULE (rule_get_type ())
+typedef struct _Rule Rule;
+
+typedef enum  {
+       IIDENTITY_CARD_STORE_STORE_TYPE_FLAT_FILE,
+       IIDENTITY_CARD_STORE_STORE_TYPE_KEYRING
+} IIdentityCardStoreStoreType;
+
+struct _IIdentityCardStoreIface {
+       GTypeInterface parent_iface;
+       void (*add_card) (IIdentityCardStore* self, IdCard* card);
+       gboolean (*remove_card) (IIdentityCardStore* self, IdCard* card);
+       IdCard* (*update_card) (IIdentityCardStore* self, IdCard* card);
+       IIdentityCardStoreStoreType (*get_store_type) (IIdentityCardStore* self);
+       GeeLinkedList* (*get_card_list) (IIdentityCardStore* self);
+       void (*store_id_cards) (IIdentityCardStore* self);
+};
+
+struct _KeyringStore {
+       GObject parent_instance;
+       KeyringStorePrivate * priv;
+};
+
+struct _KeyringStoreClass {
+       GObjectClass parent_class;
+};
+
+struct _KeyringStorePrivate {
+       GeeLinkedList* id_card_list;
+};
+
+struct _Rule {
+       gchar* pattern;
+       gchar* always_confirm;
+};
+
+
+static gpointer keyring_store_parent_class = NULL;
+static MoonshotLogger* keyring_store_logger;
+static MoonshotLogger* keyring_store_logger = NULL;
+static IIdentityCardStoreIface* keyring_store_iidentity_card_store_parent_iface = NULL;
+
+GType id_card_get_type (void) G_GNUC_CONST;
+GType iidentity_card_store_store_type_get_type (void) G_GNUC_CONST;
+GType iidentity_card_store_get_type (void) G_GNUC_CONST;
+GType keyring_store_get_type (void) G_GNUC_CONST;
+#define KEYRING_STORE_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_KEYRING_STORE, KeyringStorePrivate))
+enum  {
+       KEYRING_STORE_DUMMY_PROPERTY
+};
+GType moonshot_logger_get_type (void) G_GNUC_CONST;
+MoonshotLogger* get_logger (const gchar* name);
+#define KEYRING_STORE_keyring_store_attribute "Moonshot"
+#define KEYRING_STORE_keyring_store_version "1.0"
+#define KEYRING_STORE_item_type GNOME_KEYRING_ITEM_GENERIC_SECRET
+static void keyring_store_real_add_card (IIdentityCardStore* base, IdCard* card);
+void moonshot_logger_trace (MoonshotLogger* self, const gchar* message, GError* e);
+const gchar* id_card_get_display_name (IdCard* self);
+gchar* id_card_get_services_string (IdCard* self, const gchar* sep);
+void iidentity_card_store_store_id_cards (IIdentityCardStore* self);
+static IdCard* keyring_store_real_update_card (IIdentityCardStore* base, IdCard* card);
+void moonshot_logger_error (MoonshotLogger* self, const gchar* message, GError* e);
+static gboolean keyring_store_real_remove_card (IIdentityCardStore* base, IdCard* card);
+static IIdentityCardStoreStoreType keyring_store_real_get_store_type (IIdentityCardStore* base);
+static GeeLinkedList* keyring_store_real_get_card_list (IIdentityCardStore* base);
+static void keyring_store_clear_keyring (KeyringStore* self);
+static void _gnome_keyring_found_free0_ (gpointer var);
+static void _g_list_free__gnome_keyring_found_free0_ (GList* self);
+static void keyring_store_load_id_cards (KeyringStore* self);
+IdCard* id_card_new (void);
+IdCard* id_card_construct (GType object_type);
+void id_card_set_issuer (IdCard* self, const gchar* value);
+void id_card_set_username (IdCard* self, const gchar* value);
+void id_card_set_display_name (IdCard* self, const gchar* value);
+void id_card_update_services (IdCard* self, gchar** services, int services_length1);
+GType trust_anchor_get_type (void) G_GNUC_CONST;
+TrustAnchor* trust_anchor_new (const gchar* ca_cert, const gchar* server_cert, const gchar* subject, const gchar* subject_alt);
+TrustAnchor* trust_anchor_construct (GType object_type, const gchar* ca_cert, const gchar* server_cert, const gchar* subject, const gchar* subject_alt);
+void trust_anchor_set_datetime_added (TrustAnchor* self, const gchar* datetime);
+void id_card_set_trust_anchor_from_store (IdCard* self, TrustAnchor* ta);
+GType rule_get_type (void) G_GNUC_CONST;
+Rule* rule_dup (const Rule* self);
+void rule_free (Rule* self);
+void rule_copy (const Rule* self, Rule* dest);
+void rule_destroy (Rule* self);
+void id_card_set_rules (IdCard* self, Rule* value, int value_length1);
+static void _vala_Rule_array_free (Rule* array, gint array_length);
+void id_card_set_store_password (IdCard* self, gboolean value);
+gboolean id_card_get_store_password (IdCard* self);
+void id_card_set_password (IdCard* self, const gchar* value);
+static void keyring_store_real_store_id_cards (IIdentityCardStore* base);
+Rule* id_card_get_rules (IdCard* self, int* result_length1);
+static Rule* _vala_array_dup2 (Rule* self, int length);
+const gchar* id_card_get_issuer (IdCard* self);
+const gchar* id_card_get_username (IdCard* self);
+TrustAnchor* id_card_get_trust_anchor (IdCard* self);
+const gchar* trust_anchor_get_ca_cert (TrustAnchor* self);
+const gchar* trust_anchor_get_server_cert (TrustAnchor* self);
+const gchar* trust_anchor_get_subject (TrustAnchor* self);
+const gchar* trust_anchor_get_subject_alt (TrustAnchor* self);
+const gchar* trust_anchor_get_datetime_added (TrustAnchor* self);
+const gchar* id_card_get_password (IdCard* self);
+KeyringStore* keyring_store_new (void);
+KeyringStore* keyring_store_construct (GType object_type);
+static void keyring_store_finalize (GObject* obj);
+static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func);
+static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func);
+static gint _vala_array_length (gpointer array);
+
+
+static void keyring_store_real_add_card (IIdentityCardStore* base, IdCard* card) {
+       KeyringStore * self;
+       MoonshotLogger* _tmp0_ = NULL;
+       IdCard* _tmp1_ = NULL;
+       const gchar* _tmp2_ = NULL;
+       const gchar* _tmp3_ = NULL;
+       IdCard* _tmp4_ = NULL;
+       gchar* _tmp5_ = NULL;
+       gchar* _tmp6_ = NULL;
+       gchar* _tmp7_ = NULL;
+       gchar* _tmp8_ = NULL;
+       GeeLinkedList* _tmp9_ = NULL;
+       IdCard* _tmp10_ = NULL;
+#line 43 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       self = (KeyringStore*) base;
+#line 43 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       g_return_if_fail (card != NULL);
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp0_ = keyring_store_logger;
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp1_ = card;
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp2_ = id_card_get_display_name (_tmp1_);
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp3_ = _tmp2_;
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp4_ = card;
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp5_ = id_card_get_services_string (_tmp4_, "; ");
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp6_ = _tmp5_;
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp7_ = g_strdup_printf ("add_card: Adding card '%s' with services: '%s'", _tmp3_, _tmp6_);
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp8_ = _tmp7_;
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       moonshot_logger_trace (_tmp0_, _tmp8_, NULL);
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _g_free0 (_tmp8_);
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _g_free0 (_tmp6_);
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp9_ = self->priv->id_card_list;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp10_ = card;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       gee_abstract_collection_add ((GeeAbstractCollection*) _tmp9_, _tmp10_);
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       iidentity_card_store_store_id_cards ((IIdentityCardStore*) self);
+#line 260 "moonshot-keyring-store.c"
+}
+
+
+static gpointer _g_object_ref0 (gpointer self) {
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       return self ? g_object_ref (self) : NULL;
+#line 267 "moonshot-keyring-store.c"
+}
+
+
+static const gchar* string_to_string (const gchar* self) {
+       const gchar* result = NULL;
+#line 1420 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 1421 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       result = self;
+#line 1421 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       return result;
+#line 279 "moonshot-keyring-store.c"
+}
+
+
+static IdCard* keyring_store_real_update_card (IIdentityCardStore* base, IdCard* card) {
+       KeyringStore * self;
+       IdCard* result = NULL;
+       MoonshotLogger* _tmp0_ = NULL;
+       GeeLinkedList* _tmp1_ = NULL;
+       IdCard* _tmp2_ = NULL;
+       GeeLinkedList* _tmp3_ = NULL;
+       IdCard* _tmp4_ = NULL;
+       MoonshotLogger* _tmp22_ = NULL;
+       IdCard* _tmp23_ = NULL;
+       const gchar* _tmp24_ = NULL;
+       const gchar* _tmp25_ = NULL;
+       const gchar* _tmp26_ = NULL;
+       gchar* _tmp27_ = NULL;
+       gchar* _tmp28_ = NULL;
+#line 51 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       self = (KeyringStore*) base;
+#line 51 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       g_return_val_if_fail (card != NULL, NULL);
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp0_ = keyring_store_logger;
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       moonshot_logger_trace (_tmp0_, "update_card", NULL);
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp1_ = self->priv->id_card_list;
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp2_ = card;
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       gee_abstract_collection_remove ((GeeAbstractCollection*) _tmp1_, _tmp2_);
+#line 55 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp3_ = self->priv->id_card_list;
+#line 55 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp4_ = card;
+#line 55 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       gee_abstract_collection_add ((GeeAbstractCollection*) _tmp3_, _tmp4_);
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       iidentity_card_store_store_id_cards ((IIdentityCardStore*) self);
+#line 320 "moonshot-keyring-store.c"
+       {
+               GeeLinkedList* _idcard_list = NULL;
+               GeeLinkedList* _tmp5_ = NULL;
+               GeeLinkedList* _tmp6_ = NULL;
+               gint _idcard_size = 0;
+               GeeLinkedList* _tmp7_ = NULL;
+               gint _tmp8_ = 0;
+               gint _tmp9_ = 0;
+               gint _idcard_index = 0;
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+               _tmp5_ = self->priv->id_card_list;
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+               _tmp6_ = _g_object_ref0 (_tmp5_);
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+               _idcard_list = _tmp6_;
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+               _tmp7_ = _idcard_list;
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+               _tmp8_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp7_);
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+               _tmp9_ = _tmp8_;
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+               _idcard_size = _tmp9_;
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+               _idcard_index = -1;
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+               while (TRUE) {
+#line 348 "moonshot-keyring-store.c"
+                       gint _tmp10_ = 0;
+                       gint _tmp11_ = 0;
+                       gint _tmp12_ = 0;
+                       IdCard* idcard = NULL;
+                       GeeLinkedList* _tmp13_ = NULL;
+                       gint _tmp14_ = 0;
+                       gpointer _tmp15_ = NULL;
+                       IdCard* _tmp16_ = NULL;
+                       const gchar* _tmp17_ = NULL;
+                       const gchar* _tmp18_ = NULL;
+                       IdCard* _tmp19_ = NULL;
+                       const gchar* _tmp20_ = NULL;
+                       const gchar* _tmp21_ = NULL;
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp10_ = _idcard_index;
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _idcard_index = _tmp10_ + 1;
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp11_ = _idcard_index;
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp12_ = _idcard_size;
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       if (!(_tmp11_ < _tmp12_)) {
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               break;
+#line 374 "moonshot-keyring-store.c"
+                       }
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp13_ = _idcard_list;
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp14_ = _idcard_index;
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp15_ = gee_abstract_list_get ((GeeAbstractList*) _tmp13_, _tmp14_);
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       idcard = (IdCard*) _tmp15_;
+#line 59 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp16_ = idcard;
+#line 59 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp17_ = id_card_get_display_name (_tmp16_);
+#line 59 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp18_ = _tmp17_;
+#line 59 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp19_ = card;
+#line 59 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp20_ = id_card_get_display_name (_tmp19_);
+#line 59 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp21_ = _tmp20_;
+#line 59 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       if (g_strcmp0 (_tmp18_, _tmp21_) == 0) {
+#line 60 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               result = idcard;
+#line 60 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _g_object_unref0 (_idcard_list);
+#line 60 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               return result;
+#line 404 "moonshot-keyring-store.c"
+                       }
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _g_object_unref0 (idcard);
+#line 408 "moonshot-keyring-store.c"
+               }
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+               _g_object_unref0 (_idcard_list);
+#line 412 "moonshot-keyring-store.c"
+       }
+#line 64 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp22_ = keyring_store_logger;
+#line 64 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp23_ = card;
+#line 64 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp24_ = id_card_get_display_name (_tmp23_);
+#line 64 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp25_ = _tmp24_;
+#line 64 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp26_ = string_to_string (_tmp25_);
+#line 64 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp27_ = g_strconcat ("update_card: card '", _tmp26_, "' was not found after re-loading!", NULL);
+#line 64 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp28_ = _tmp27_;
+#line 64 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       moonshot_logger_error (_tmp22_, _tmp28_, NULL);
+#line 64 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _g_free0 (_tmp28_);
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       result = NULL;
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       return result;
+#line 436 "moonshot-keyring-store.c"
+}
+
+
+static gboolean keyring_store_real_remove_card (IIdentityCardStore* base, IdCard* card) {
+       KeyringStore * self;
+       gboolean result = FALSE;
+       gboolean retval = FALSE;
+       GeeLinkedList* _tmp0_ = NULL;
+       IdCard* _tmp1_ = NULL;
+       gboolean _tmp2_ = FALSE;
+       gboolean _tmp3_ = FALSE;
+#line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       self = (KeyringStore*) base;
+#line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       g_return_val_if_fail (card != NULL, FALSE);
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp0_ = self->priv->id_card_list;
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp1_ = card;
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp2_ = gee_abstract_collection_remove ((GeeAbstractCollection*) _tmp0_, _tmp1_);
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       retval = _tmp2_;
+#line 70 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp3_ = retval;
+#line 70 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       if (_tmp3_) {
+#line 71 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+               iidentity_card_store_store_id_cards ((IIdentityCardStore*) self);
+#line 466 "moonshot-keyring-store.c"
+       }
+#line 72 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       result = retval;
+#line 72 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       return result;
+#line 472 "moonshot-keyring-store.c"
+}
+
+
+static IIdentityCardStoreStoreType keyring_store_real_get_store_type (IIdentityCardStore* base) {
+       KeyringStore * self;
+       IIdentityCardStoreStoreType result = 0;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       self = (KeyringStore*) base;
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       result = IIDENTITY_CARD_STORE_STORE_TYPE_KEYRING;
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       return result;
+#line 485 "moonshot-keyring-store.c"
+}
+
+
+static GeeLinkedList* keyring_store_real_get_card_list (IIdentityCardStore* base) {
+       KeyringStore * self;
+       GeeLinkedList* result = NULL;
+       GeeLinkedList* _tmp0_ = NULL;
+       GeeLinkedList* _tmp1_ = NULL;
+#line 79 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       self = (KeyringStore*) base;
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp0_ = self->priv->id_card_list;
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp1_ = _g_object_ref0 (_tmp0_);
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       result = _tmp1_;
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       return result;
+#line 504 "moonshot-keyring-store.c"
+}
+
+
+static void _gnome_keyring_found_free0_ (gpointer var) {
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       (var == NULL) ? NULL : (var = (gnome_keyring_found_free (var), NULL));
+#line 511 "moonshot-keyring-store.c"
+}
+
+
+static void _g_list_free__gnome_keyring_found_free0_ (GList* self) {
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       g_list_foreach (self, (GFunc) _gnome_keyring_found_free0_, NULL);
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       g_list_free (self);
+#line 520 "moonshot-keyring-store.c"
+}
+
+
+static void keyring_store_clear_keyring (KeyringStore* self) {
+       GnomeKeyringAttributeList* match = NULL;
+       GnomeKeyringAttributeList* _tmp0_ = NULL;
+       GnomeKeyringAttributeList* _tmp1_ = NULL;
+       GList* items = NULL;
+       GnomeKeyringAttributeList* _tmp2_ = NULL;
+       GList* _tmp3_ = NULL;
+       GList* _tmp4_ = NULL;
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       g_return_if_fail (self != NULL);
+#line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp0_ = gnome_keyring_attribute_list_new ();
+#line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       match = _tmp0_;
+#line 86 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp1_ = match;
+#line 86 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       gnome_keyring_attribute_list_append_string (_tmp1_, KEYRING_STORE_keyring_store_attribute, KEYRING_STORE_keyring_store_version);
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp2_ = match;
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       gnome_keyring_find_items_sync (KEYRING_STORE_item_type, _tmp2_, &_tmp3_);
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       __g_list_free__gnome_keyring_found_free0_0 (items);
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       items = _tmp3_;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp4_ = items;
+#line 552 "moonshot-keyring-store.c"
+       {
+               GList* entry_collection = NULL;
+               GList* entry_it = NULL;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+               entry_collection = _tmp4_;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+               for (entry_it = entry_collection; entry_it != NULL; entry_it = entry_it->next) {
+#line 560 "moonshot-keyring-store.c"
+                       GnomeKeyringFound* entry = NULL;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       entry = (GnomeKeyringFound*) entry_it->data;
+#line 564 "moonshot-keyring-store.c"
+                       {
+                               GnomeKeyringResult _result_ = 0;
+                               GnomeKeyringFound* _tmp5_ = NULL;
+                               guint _tmp6_ = 0U;
+                               GnomeKeyringResult _tmp7_ = 0;
+                               GnomeKeyringResult _tmp8_ = 0;
+#line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp5_ = entry;
+#line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp6_ = _tmp5_->item_id;
+#line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp7_ = gnome_keyring_item_delete_sync (NULL, (guint32) _tmp6_);
+#line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _result_ = _tmp7_;
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp8_ = _result_;
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               if (_tmp8_ != GNOME_KEYRING_RESULT_OK) {
+#line 583 "moonshot-keyring-store.c"
+                                       FILE* _tmp9_ = NULL;
+                                       GnomeKeyringResult _tmp10_ = 0;
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp9_ = stdout;
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp10_ = _result_;
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       fprintf (_tmp9_, "GnomeKeyring.item_delete_sync() failed. result: %d", (gint) _tmp10_);
+#line 592 "moonshot-keyring-store.c"
+                               }
+                       }
+               }
+       }
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       __g_list_free__gnome_keyring_found_free0_0 (items);
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _gnome_keyring_attribute_list_free0 (match);
+#line 601 "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 1215 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 1216 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp0_ = g_strdup (self);
+#line 1216 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _result_ = _tmp0_;
+#line 1217 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp1_ = _result_;
+#line 1217 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_strstrip (_tmp1_);
+#line 1218 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       result = _result_;
+#line 1218 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       return result;
+#line 624 "moonshot-keyring-store.c"
+}
+
+
+static void _vala_Rule_array_free (Rule* array, gint array_length) {
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       if (array != NULL) {
+#line 631 "moonshot-keyring-store.c"
+               int i;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+               for (i = 0; i < array_length; i = i + 1) {
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       rule_destroy (&array[i]);
+#line 637 "moonshot-keyring-store.c"
+               }
+       }
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       g_free (array);
+#line 642 "moonshot-keyring-store.c"
+}
+
+
+static void keyring_store_load_id_cards (KeyringStore* self) {
+       GeeLinkedList* _tmp0_ = NULL;
+       GnomeKeyringAttributeList* match = NULL;
+       GnomeKeyringAttributeList* _tmp1_ = NULL;
+       GnomeKeyringAttributeList* _tmp2_ = NULL;
+       GList* items = NULL;
+       GnomeKeyringAttributeList* _tmp3_ = NULL;
+       GList* _tmp4_ = NULL;
+       GList* _tmp5_ = NULL;
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       g_return_if_fail (self != NULL);
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp0_ = self->priv->id_card_list;
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       gee_abstract_collection_clear ((GeeAbstractCollection*) _tmp0_);
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp1_ = gnome_keyring_attribute_list_new ();
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       match = _tmp1_;
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp2_ = match;
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       gnome_keyring_attribute_list_append_string (_tmp2_, KEYRING_STORE_keyring_store_attribute, KEYRING_STORE_keyring_store_version);
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp3_ = match;
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       gnome_keyring_find_items_sync (KEYRING_STORE_item_type, _tmp3_, &_tmp4_);
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       __g_list_free__gnome_keyring_found_free0_0 (items);
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       items = _tmp4_;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp5_ = items;
+#line 679 "moonshot-keyring-store.c"
+       {
+               GList* entry_collection = NULL;
+               GList* entry_it = NULL;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+               entry_collection = _tmp5_;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+               for (entry_it = entry_collection; entry_it != NULL; entry_it = entry_it->next) {
+#line 687 "moonshot-keyring-store.c"
+                       GnomeKeyringFound* entry = NULL;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       entry = (GnomeKeyringFound*) entry_it->data;
+#line 691 "moonshot-keyring-store.c"
+                       {
+                               IdCard* id_card = NULL;
+                               IdCard* _tmp6_ = NULL;
+                               gint i = 0;
+                               gint rules_patterns_index = 0;
+                               gint rules_always_confirm_index = 0;
+                               gchar* store_password = NULL;
+                               gchar* ca_cert = NULL;
+                               gchar* _tmp7_ = NULL;
+                               gchar* server_cert = NULL;
+                               gchar* _tmp8_ = NULL;
+                               gchar* subject = NULL;
+                               gchar* _tmp9_ = NULL;
+                               gchar* subject_alt = NULL;
+                               gchar* _tmp10_ = NULL;
+                               gchar* ta_datetime_added = NULL;
+                               gchar* _tmp11_ = NULL;
+                               TrustAnchor* ta = NULL;
+                               const gchar* _tmp78_ = NULL;
+                               const gchar* _tmp79_ = NULL;
+                               const gchar* _tmp80_ = NULL;
+                               const gchar* _tmp81_ = NULL;
+                               TrustAnchor* _tmp82_ = NULL;
+                               const gchar* _tmp83_ = NULL;
+                               IdCard* _tmp86_ = NULL;
+                               TrustAnchor* _tmp87_ = NULL;
+                               gboolean _tmp88_ = FALSE;
+                               gint _tmp89_ = 0;
+                               const gchar* _tmp133_ = NULL;
+                               IdCard* _tmp142_ = NULL;
+                               gboolean _tmp143_ = FALSE;
+                               gboolean _tmp144_ = FALSE;
+                               GeeLinkedList* _tmp149_ = NULL;
+                               IdCard* _tmp150_ = NULL;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp6_ = id_card_new ();
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               id_card = _tmp6_;
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               rules_patterns_index = -1;
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               rules_always_confirm_index = -1;
+#line 109 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               store_password = NULL;
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp7_ = g_strdup ("");
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               ca_cert = _tmp7_;
+#line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp8_ = g_strdup ("");
+#line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               server_cert = _tmp8_;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp9_ = g_strdup ("");
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               subject = _tmp9_;
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp10_ = g_strdup ("");
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               subject_alt = _tmp10_;
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp11_ = g_strdup ("");
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               ta_datetime_added = _tmp11_;
+#line 756 "moonshot-keyring-store.c"
+                               {
+                                       gboolean _tmp12_ = FALSE;
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       i = 0;
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp12_ = TRUE;
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       while (TRUE) {
+#line 765 "moonshot-keyring-store.c"
+                                               gint _tmp14_ = 0;
+                                               GnomeKeyringFound* _tmp15_ = NULL;
+                                               GnomeKeyringAttributeList* _tmp16_ = NULL;
+                                               guint _tmp17_ = 0U;
+                                               GnomeKeyringAttribute attribute = {0};
+                                               GnomeKeyringFound* _tmp18_ = NULL;
+                                               GnomeKeyringAttributeList* _tmp19_ = NULL;
+                                               GnomeKeyringAttribute* _tmp20_ = NULL;
+                                               gint _tmp20__length1 = 0;
+                                               gint _tmp21_ = 0;
+                                               GnomeKeyringAttribute _tmp22_ = {0};
+                                               gchar* value = NULL;
+                                               gchar* _tmp23_ = NULL;
+                                               GnomeKeyringAttribute _tmp24_ = {0};
+                                               GnomeKeyringAttributeType _tmp25_ = 0;
+                                               GnomeKeyringAttribute _tmp29_ = {0};
+                                               const gchar* _tmp30_ = NULL;
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               if (!_tmp12_) {
+#line 785 "moonshot-keyring-store.c"
+                                                       gint _tmp13_ = 0;
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                       _tmp13_ = i;
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                       i = _tmp13_ + 1;
+#line 791 "moonshot-keyring-store.c"
+                                               }
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp12_ = FALSE;
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp14_ = i;
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp15_ = entry;
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp16_ = _tmp15_->attributes;
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp17_ = _tmp16_->len;
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               if (!(((guint) _tmp14_) < _tmp17_)) {
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                       break;
+#line 807 "moonshot-keyring-store.c"
+                                               }
+#line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp18_ = entry;
+#line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp19_ = _tmp18_->attributes;
+#line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp20_ = _tmp19_->data;
+#line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp20__length1 = -1;
+#line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp21_ = i;
+#line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp22_ = ((GnomeKeyringAttribute*) _tmp20_)[_tmp21_];
+#line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               attribute = _tmp22_;
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp23_ = g_strdup ("");
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               value = _tmp23_;
+#line 118 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp24_ = attribute;
+#line 118 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp25_ = _tmp24_.type;
+#line 118 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               if (_tmp25_ == GNOME_KEYRING_ATTRIBUTE_TYPE_STRING) {
+#line 833 "moonshot-keyring-store.c"
+                                                       GnomeKeyringAttribute _tmp26_ = {0};
+                                                       const gchar* _tmp27_ = NULL;
+                                                       gchar* _tmp28_ = NULL;
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                       _tmp26_ = attribute;
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                       _tmp27_ = _tmp26_.value.string;
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                       _tmp28_ = g_strdup (_tmp27_);
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                       _g_free0 (value);
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                       value = _tmp28_;
+#line 847 "moonshot-keyring-store.c"
+                                               }
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp29_ = attribute;
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp30_ = _tmp29_.name;
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               if (g_strcmp0 (_tmp30_, "Issuer") == 0) {
+#line 855 "moonshot-keyring-store.c"
+                                                       IdCard* _tmp31_ = NULL;
+                                                       const gchar* _tmp32_ = NULL;
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                       _tmp31_ = id_card;
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                       _tmp32_ = value;
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                       id_card_set_issuer (_tmp31_, _tmp32_);
+#line 864 "moonshot-keyring-store.c"
+                                               } else {
+                                                       GnomeKeyringAttribute _tmp33_ = {0};
+                                                       const gchar* _tmp34_ = NULL;
+#line 124 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                       _tmp33_ = attribute;
+#line 124 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                       _tmp34_ = _tmp33_.name;
+#line 124 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                       if (g_strcmp0 (_tmp34_, "Username") == 0) {
+#line 874 "moonshot-keyring-store.c"
+                                                               IdCard* _tmp35_ = NULL;
+                                                               const gchar* _tmp36_ = NULL;
+#line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                               _tmp35_ = id_card;
+#line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                               _tmp36_ = value;
+#line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                               id_card_set_username (_tmp35_, _tmp36_);
+#line 883 "moonshot-keyring-store.c"
+                                                       } else {
+                                                               GnomeKeyringAttribute _tmp37_ = {0};
+                                                               const gchar* _tmp38_ = NULL;
+#line 126 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                               _tmp37_ = attribute;
+#line 126 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                               _tmp38_ = _tmp37_.name;
+#line 126 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                               if (g_strcmp0 (_tmp38_, "DisplayName") == 0) {
+#line 893 "moonshot-keyring-store.c"
+                                                                       IdCard* _tmp39_ = NULL;
+                                                                       const gchar* _tmp40_ = NULL;
+#line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       _tmp39_ = id_card;
+#line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       _tmp40_ = value;
+#line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       id_card_set_display_name (_tmp39_, _tmp40_);
+#line 902 "moonshot-keyring-store.c"
+                                                               } else {
+                                                                       GnomeKeyringAttribute _tmp41_ = {0};
+                                                                       const gchar* _tmp42_ = NULL;
+#line 128 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       _tmp41_ = attribute;
+#line 128 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       _tmp42_ = _tmp41_.name;
+#line 128 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       if (g_strcmp0 (_tmp42_, "Services") == 0) {
+#line 912 "moonshot-keyring-store.c"
+                                                                               IdCard* _tmp43_ = NULL;
+                                                                               const gchar* _tmp44_ = NULL;
+                                                                               gchar** _tmp45_ = NULL;
+                                                                               gchar** _tmp46_ = NULL;
+                                                                               gchar** _tmp47_ = NULL;
+                                                                               gint _tmp47__length1 = 0;
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                               _tmp43_ = id_card;
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                               _tmp44_ = value;
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                               _tmp46_ = _tmp45_ = g_strsplit (_tmp44_, ";", 0);
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                               _tmp47_ = _tmp46_;
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                               _tmp47__length1 = _vala_array_length (_tmp45_);
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                               id_card_update_services (_tmp43_, _tmp47_, _vala_array_length (_tmp45_));
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                               _tmp47_ = (_vala_array_free (_tmp47_, _tmp47__length1, (GDestroyNotify) g_free), NULL);
+#line 933 "moonshot-keyring-store.c"
+                                                                       } else {
+                                                                               GnomeKeyringAttribute _tmp48_ = {0};
+                                                                               const gchar* _tmp49_ = NULL;
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                               _tmp48_ = attribute;
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                               _tmp49_ = _tmp48_.name;
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                               if (g_strcmp0 (_tmp49_, "Rules-Pattern") == 0) {
+#line 943 "moonshot-keyring-store.c"
+                                                                                       gint _tmp50_ = 0;
+#line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                       _tmp50_ = i;
+#line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                       rules_patterns_index = _tmp50_;
+#line 949 "moonshot-keyring-store.c"
+                                                                               } else {
+                                                                                       GnomeKeyringAttribute _tmp51_ = {0};
+                                                                                       const gchar* _tmp52_ = NULL;
+#line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                       _tmp51_ = attribute;
+#line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                       _tmp52_ = _tmp51_.name;
+#line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                       if (g_strcmp0 (_tmp52_, "Rules-AlwaysConfirm") == 0) {
+#line 959 "moonshot-keyring-store.c"
+                                                                                               gint _tmp53_ = 0;
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                               _tmp53_ = i;
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                               rules_always_confirm_index = _tmp53_;
+#line 965 "moonshot-keyring-store.c"
+                                                                                       } else {
+                                                                                               GnomeKeyringAttribute _tmp54_ = {0};
+                                                                                               const gchar* _tmp55_ = NULL;
+#line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                               _tmp54_ = attribute;
+#line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                               _tmp55_ = _tmp54_.name;
+#line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                               if (g_strcmp0 (_tmp55_, "CA-Cert") == 0) {
+#line 975 "moonshot-keyring-store.c"
+                                                                                                       const gchar* _tmp56_ = NULL;
+                                                                                                       gchar* _tmp57_ = NULL;
+#line 135 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                       _tmp56_ = value;
+#line 135 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                       _tmp57_ = string_strip (_tmp56_);
+#line 135 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                       _g_free0 (ca_cert);
+#line 135 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                       ca_cert = _tmp57_;
+#line 986 "moonshot-keyring-store.c"
+                                                                                               } else {
+                                                                                                       GnomeKeyringAttribute _tmp58_ = {0};
+                                                                                                       const gchar* _tmp59_ = NULL;
+#line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                       _tmp58_ = attribute;
+#line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                       _tmp59_ = _tmp58_.name;
+#line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                       if (g_strcmp0 (_tmp59_, "Server-Cert") == 0) {
+#line 996 "moonshot-keyring-store.c"
+                                                                                                               const gchar* _tmp60_ = NULL;
+                                                                                                               gchar* _tmp61_ = NULL;
+#line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                               _tmp60_ = value;
+#line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                               _tmp61_ = g_strdup (_tmp60_);
+#line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                               _g_free0 (server_cert);
+#line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                               server_cert = _tmp61_;
+#line 1007 "moonshot-keyring-store.c"
+                                                                                                       } else {
+                                                                                                               GnomeKeyringAttribute _tmp62_ = {0};
+                                                                                                               const gchar* _tmp63_ = NULL;
+#line 138 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                               _tmp62_ = attribute;
+#line 138 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                               _tmp63_ = _tmp62_.name;
+#line 138 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                               if (g_strcmp0 (_tmp63_, "Subject") == 0) {
+#line 1017 "moonshot-keyring-store.c"
+                                                                                                                       const gchar* _tmp64_ = NULL;
+                                                                                                                       gchar* _tmp65_ = NULL;
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                                       _tmp64_ = value;
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                                       _tmp65_ = g_strdup (_tmp64_);
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                                       _g_free0 (subject);
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                                       subject = _tmp65_;
+#line 1028 "moonshot-keyring-store.c"
+                                                                                                               } else {
+                                                                                                                       GnomeKeyringAttribute _tmp66_ = {0};
+                                                                                                                       const gchar* _tmp67_ = NULL;
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                                       _tmp66_ = attribute;
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                                       _tmp67_ = _tmp66_.name;
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                                       if (g_strcmp0 (_tmp67_, "Subject-Alt") == 0) {
+#line 1038 "moonshot-keyring-store.c"
+                                                                                                                               const gchar* _tmp68_ = NULL;
+                                                                                                                               gchar* _tmp69_ = NULL;
+#line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                                               _tmp68_ = value;
+#line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                                               _tmp69_ = g_strdup (_tmp68_);
+#line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                                               _g_free0 (subject_alt);
+#line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                                               subject_alt = _tmp69_;
+#line 1049 "moonshot-keyring-store.c"
+                                                                                                                       } else {
+                                                                                                                               GnomeKeyringAttribute _tmp70_ = {0};
+                                                                                                                               const gchar* _tmp71_ = NULL;
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                                               _tmp70_ = attribute;
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                                               _tmp71_ = _tmp70_.name;
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                                               if (g_strcmp0 (_tmp71_, "StorePassword") == 0) {
+#line 1059 "moonshot-keyring-store.c"
+                                                                                                                                       const gchar* _tmp72_ = NULL;
+                                                                                                                                       gchar* _tmp73_ = NULL;
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                                                       _tmp72_ = value;
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                                                       _tmp73_ = g_strdup (_tmp72_);
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                                                       _g_free0 (store_password);
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                                                       store_password = _tmp73_;
+#line 1070 "moonshot-keyring-store.c"
+                                                                                                                               } else {
+                                                                                                                                       GnomeKeyringAttribute _tmp74_ = {0};
+                                                                                                                                       const gchar* _tmp75_ = NULL;
+#line 144 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                                                       _tmp74_ = attribute;
+#line 144 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                                                       _tmp75_ = _tmp74_.name;
+#line 144 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                                                       if (g_strcmp0 (_tmp75_, "TA_DateTime_Added") == 0) {
+#line 1080 "moonshot-keyring-store.c"
+                                                                                                                                               const gchar* _tmp76_ = NULL;
+                                                                                                                                               gchar* _tmp77_ = NULL;
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                                                               _tmp76_ = value;
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                                                               _tmp77_ = g_strdup (_tmp76_);
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                                                               _g_free0 (ta_datetime_added);
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                                                                                               ta_datetime_added = _tmp77_;
+#line 1091 "moonshot-keyring-store.c"
+                                                                                                                                       }
+                                                                                                                               }
+                                                                                                                       }
+                                                                                                               }
+                                                                                                       }
+                                                                                               }
+                                                                                       }
+                                                                               }
+                                                                       }
+                                                               }
+                                                       }
+                                               }
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _g_free0 (value);
+#line 1106 "moonshot-keyring-store.c"
+                                       }
+                               }
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp78_ = ca_cert;
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp79_ = server_cert;
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp80_ = subject;
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp81_ = subject_alt;
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp82_ = trust_anchor_new (_tmp78_, _tmp79_, _tmp80_, _tmp81_);
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               ta = _tmp82_;
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp83_ = ta_datetime_added;
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               if (g_strcmp0 (_tmp83_, "") != 0) {
+#line 1125 "moonshot-keyring-store.c"
+                                       TrustAnchor* _tmp84_ = NULL;
+                                       const gchar* _tmp85_ = NULL;
+#line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp84_ = ta;
+#line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp85_ = ta_datetime_added;
+#line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       trust_anchor_set_datetime_added (_tmp84_, _tmp85_);
+#line 1134 "moonshot-keyring-store.c"
+                               }
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp86_ = id_card;
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp87_ = ta;
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               id_card_set_trust_anchor_from_store (_tmp86_, _tmp87_);
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp89_ = rules_always_confirm_index;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               if (_tmp89_ != -1) {
+#line 1146 "moonshot-keyring-store.c"
+                                       gint _tmp90_ = 0;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp90_ = rules_patterns_index;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp88_ = _tmp90_ != -1;
+#line 1152 "moonshot-keyring-store.c"
+                               } else {
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp88_ = FALSE;
+#line 1156 "moonshot-keyring-store.c"
+                               }
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               if (_tmp88_) {
+#line 1160 "moonshot-keyring-store.c"
+                                       gchar* rules_patterns_all = NULL;
+                                       GnomeKeyringFound* _tmp91_ = NULL;
+                                       GnomeKeyringAttributeList* _tmp92_ = NULL;
+                                       GnomeKeyringAttribute* _tmp93_ = NULL;
+                                       gint _tmp93__length1 = 0;
+                                       gint _tmp94_ = 0;
+                                       GnomeKeyringAttribute _tmp95_ = {0};
+                                       const gchar* _tmp96_ = NULL;
+                                       gchar* _tmp97_ = NULL;
+                                       gchar* rules_always_confirm_all = NULL;
+                                       GnomeKeyringFound* _tmp98_ = NULL;
+                                       GnomeKeyringAttributeList* _tmp99_ = NULL;
+                                       GnomeKeyringAttribute* _tmp100_ = NULL;
+                                       gint _tmp100__length1 = 0;
+                                       gint _tmp101_ = 0;
+                                       GnomeKeyringAttribute _tmp102_ = {0};
+                                       const gchar* _tmp103_ = NULL;
+                                       gchar* _tmp104_ = NULL;
+                                       gchar** rules_always_confirm = NULL;
+                                       const gchar* _tmp105_ = NULL;
+                                       gchar** _tmp106_ = NULL;
+                                       gchar** _tmp107_ = NULL;
+                                       gint rules_always_confirm_length1 = 0;
+                                       gint _rules_always_confirm_size_ = 0;
+                                       gchar** rules_patterns = NULL;
+                                       const gchar* _tmp108_ = NULL;
+                                       gchar** _tmp109_ = NULL;
+                                       gchar** _tmp110_ = NULL;
+                                       gint rules_patterns_length1 = 0;
+                                       gint _rules_patterns_size_ = 0;
+                                       gchar** _tmp111_ = NULL;
+                                       gint _tmp111__length1 = 0;
+                                       gchar** _tmp112_ = NULL;
+                                       gint _tmp112__length1 = 0;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp91_ = entry;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp92_ = _tmp91_->attributes;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp93_ = _tmp92_->data;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp93__length1 = -1;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp94_ = rules_patterns_index;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp95_ = ((GnomeKeyringAttribute*) _tmp93_)[_tmp94_];
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp96_ = _tmp95_.value.string;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp97_ = g_strdup (_tmp96_);
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       rules_patterns_all = _tmp97_;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp98_ = entry;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp99_ = _tmp98_->attributes;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp100_ = _tmp99_->data;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp100__length1 = -1;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp101_ = rules_always_confirm_index;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp102_ = ((GnomeKeyringAttribute*) _tmp100_)[_tmp101_];
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp103_ = _tmp102_.value.string;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp104_ = g_strdup (_tmp103_);
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       rules_always_confirm_all = _tmp104_;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp105_ = rules_always_confirm_all;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp107_ = _tmp106_ = g_strsplit (_tmp105_, ";", 0);
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       rules_always_confirm = _tmp107_;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       rules_always_confirm_length1 = _vala_array_length (_tmp106_);
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _rules_always_confirm_size_ = rules_always_confirm_length1;
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp108_ = rules_patterns_all;
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp110_ = _tmp109_ = g_strsplit (_tmp108_, ";", 0);
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       rules_patterns = _tmp110_;
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       rules_patterns_length1 = _vala_array_length (_tmp109_);
+#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"
+                                       _tmp111_ = rules_patterns;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp111__length1 = rules_patterns_length1;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp112_ = rules_always_confirm;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp112__length1 = rules_always_confirm_length1;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       if (_tmp111__length1 == _tmp112__length1) {
+#line 1261 "moonshot-keyring-store.c"
+                                               Rule* rules = NULL;
+                                               gchar** _tmp113_ = NULL;
+                                               gint _tmp113__length1 = 0;
+                                               Rule* _tmp114_ = NULL;
+                                               gint rules_length1 = 0;
+                                               gint _rules_size_ = 0;
+                                               IdCard* _tmp131_ = NULL;
+                                               Rule* _tmp132_ = NULL;
+                                               gint _tmp132__length1 = 0;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp113_ = rules_patterns;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp113__length1 = rules_patterns_length1;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp114_ = g_new0 (Rule, _tmp113__length1);
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               rules = _tmp114_;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               rules_length1 = _tmp113__length1;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _rules_size_ = rules_length1;
+#line 1283 "moonshot-keyring-store.c"
+                                               {
+                                                       gint j = 0;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                       j = 0;
+#line 1288 "moonshot-keyring-store.c"
+                                                       {
+                                                               gboolean _tmp115_ = FALSE;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                               _tmp115_ = TRUE;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                               while (TRUE) {
+#line 1295 "moonshot-keyring-store.c"
+                                                                       gint _tmp117_ = 0;
+                                                                       gchar** _tmp118_ = NULL;
+                                                                       gint _tmp118__length1 = 0;
+                                                                       Rule* _tmp119_ = NULL;
+                                                                       gint _tmp119__length1 = 0;
+                                                                       gint _tmp120_ = 0;
+                                                                       gchar** _tmp121_ = NULL;
+                                                                       gint _tmp121__length1 = 0;
+                                                                       gint _tmp122_ = 0;
+                                                                       const gchar* _tmp123_ = NULL;
+                                                                       gchar* _tmp124_ = NULL;
+                                                                       Rule* _tmp125_ = NULL;
+                                                                       gint _tmp125__length1 = 0;
+                                                                       gint _tmp126_ = 0;
+                                                                       gchar** _tmp127_ = NULL;
+                                                                       gint _tmp127__length1 = 0;
+                                                                       gint _tmp128_ = 0;
+                                                                       const gchar* _tmp129_ = NULL;
+                                                                       gchar* _tmp130_ = NULL;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       if (!_tmp115_) {
+#line 1317 "moonshot-keyring-store.c"
+                                                                               gint _tmp116_ = 0;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                               _tmp116_ = j;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                               j = _tmp116_ + 1;
+#line 1323 "moonshot-keyring-store.c"
+                                                                       }
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       _tmp115_ = FALSE;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       _tmp117_ = j;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       _tmp118_ = rules_patterns;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       _tmp118__length1 = rules_patterns_length1;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       if (!(_tmp117_ < _tmp118__length1)) {
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                               break;
+#line 1337 "moonshot-keyring-store.c"
+                                                                       }
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       _tmp119_ = rules;
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       _tmp119__length1 = rules_length1;
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       _tmp120_ = j;
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       _tmp121_ = rules_patterns;
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       _tmp121__length1 = rules_patterns_length1;
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       _tmp122_ = j;
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       _tmp123_ = _tmp121_[_tmp122_];
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       _tmp124_ = g_strdup (_tmp123_);
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       _g_free0 (_tmp119_[_tmp120_].pattern);
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       _tmp119_[_tmp120_].pattern = _tmp124_;
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       _tmp125_ = rules;
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       _tmp125__length1 = rules_length1;
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       _tmp126_ = j;
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       _tmp127_ = rules_always_confirm;
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       _tmp127__length1 = rules_always_confirm_length1;
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       _tmp128_ = j;
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       _tmp129_ = _tmp127_[_tmp128_];
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       _tmp130_ = g_strdup (_tmp129_);
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       _g_free0 (_tmp125_[_tmp126_].always_confirm);
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                                       _tmp125_[_tmp126_].always_confirm = _tmp130_;
+#line 1379 "moonshot-keyring-store.c"
+                                                               }
+                                                       }
+                                               }
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp131_ = id_card;
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp132_ = rules;
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp132__length1 = rules_length1;
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               id_card_set_rules (_tmp131_, _tmp132_, _tmp132__length1);
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               rules = (_vala_Rule_array_free (rules, rules_length1), NULL);
+#line 1393 "moonshot-keyring-store.c"
+                                       }
+#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"
+                                       rules_always_confirm = (_vala_array_free (rules_always_confirm, rules_always_confirm_length1, (GDestroyNotify) g_free), NULL);
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _g_free0 (rules_always_confirm_all);
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _g_free0 (rules_patterns_all);
+#line 1403 "moonshot-keyring-store.c"
+                               }
+#line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp133_ = store_password;
+#line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               if (_tmp133_ != NULL) {
+#line 1409 "moonshot-keyring-store.c"
+                                       IdCard* _tmp134_ = NULL;
+                                       const gchar* _tmp135_ = NULL;
+#line 171 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp134_ = id_card;
+#line 171 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp135_ = store_password;
+#line 171 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       id_card_set_store_password (_tmp134_, g_strcmp0 (_tmp135_, "yes") == 0);
+#line 1418 "moonshot-keyring-store.c"
+                               } else {
+                                       gboolean _tmp136_ = FALSE;
+                                       GnomeKeyringFound* _tmp137_ = NULL;
+                                       const gchar* _tmp138_ = NULL;
+                                       IdCard* _tmp141_ = NULL;
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp137_ = entry;
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp138_ = _tmp137_->secret;
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       if (_tmp138_ != NULL) {
+#line 1430 "moonshot-keyring-store.c"
+                                               GnomeKeyringFound* _tmp139_ = NULL;
+                                               const gchar* _tmp140_ = NULL;
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp139_ = entry;
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp140_ = _tmp139_->secret;
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp136_ = g_strcmp0 (_tmp140_, "") != 0;
+#line 1439 "moonshot-keyring-store.c"
+                                       } else {
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp136_ = FALSE;
+#line 1443 "moonshot-keyring-store.c"
+                                       }
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp141_ = id_card;
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       id_card_set_store_password (_tmp141_, _tmp136_);
+#line 1449 "moonshot-keyring-store.c"
+                               }
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp142_ = id_card;
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp143_ = id_card_get_store_password (_tmp142_);
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp144_ = _tmp143_;
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               if (_tmp144_) {
+#line 1459 "moonshot-keyring-store.c"
+                                       IdCard* _tmp145_ = NULL;
+                                       GnomeKeyringFound* _tmp146_ = NULL;
+                                       const gchar* _tmp147_ = NULL;
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp145_ = id_card;
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp146_ = entry;
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp147_ = _tmp146_->secret;
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       id_card_set_password (_tmp145_, _tmp147_);
+#line 1471 "moonshot-keyring-store.c"
+                               } else {
+                                       IdCard* _tmp148_ = NULL;
+#line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp148_ = id_card;
+#line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       id_card_set_password (_tmp148_, NULL);
+#line 1478 "moonshot-keyring-store.c"
+                               }
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp149_ = self->priv->id_card_list;
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp150_ = id_card;
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               gee_abstract_collection_add ((GeeAbstractCollection*) _tmp149_, _tmp150_);
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _g_object_unref0 (ta);
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _g_free0 (ta_datetime_added);
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _g_free0 (subject_alt);
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _g_free0 (subject);
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _g_free0 (server_cert);
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _g_free0 (ca_cert);
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _g_free0 (store_password);
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _g_object_unref0 (id_card);
+#line 1502 "moonshot-keyring-store.c"
+                       }
+               }
+       }
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       __g_list_free__gnome_keyring_found_free0_0 (items);
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _gnome_keyring_attribute_list_free0 (match);
+#line 1510 "moonshot-keyring-store.c"
+}
+
+
+static Rule* _vala_array_dup2 (Rule* self, int length) {
+       Rule* result;
+       int i;
+#line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       result = g_new0 (Rule, length);
+#line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       for (i = 0; i < length; i++) {
+#line 1521 "moonshot-keyring-store.c"
+               Rule _tmp0_ = {0};
+#line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+               rule_copy (&self[i], &_tmp0_);
+#line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+               result[i] = _tmp0_;
+#line 1527 "moonshot-keyring-store.c"
+       }
+#line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       return result;
+#line 1531 "moonshot-keyring-store.c"
+}
+
+
+static gchar* _vala_g_strjoinv (const gchar* separator, gchar** str_array, int str_array_length1) {
+       gchar* result = NULL;
+       const gchar* _tmp0_ = NULL;
+       gboolean _tmp1_ = FALSE;
+       gboolean _tmp2_ = FALSE;
+       gchar** _tmp3_ = NULL;
+       gint _tmp3__length1 = 0;
+#line 1062 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp0_ = separator;
+#line 1062 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       if (_tmp0_ == NULL) {
+#line 1063 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               separator = "";
+#line 1548 "moonshot-keyring-store.c"
+       }
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp3_ = str_array;
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp3__length1 = str_array_length1;
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       if (_tmp3_ != NULL) {
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp2_ = TRUE;
+#line 1558 "moonshot-keyring-store.c"
+       } else {
+               gchar** _tmp4_ = NULL;
+               gint _tmp4__length1 = 0;
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp4_ = str_array;
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp4__length1 = str_array_length1;
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp2_ = _tmp4__length1 > 0;
+#line 1568 "moonshot-keyring-store.c"
+       }
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       if (_tmp2_) {
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp1_ = TRUE;
+#line 1574 "moonshot-keyring-store.c"
+       } else {
+               gboolean _tmp5_ = FALSE;
+               gchar** _tmp6_ = NULL;
+               gint _tmp6__length1 = 0;
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp6_ = str_array;
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp6__length1 = str_array_length1;
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               if (_tmp6__length1 == -1) {
+#line 1585 "moonshot-keyring-store.c"
+                       gchar** _tmp7_ = NULL;
+                       gint _tmp7__length1 = 0;
+                       const gchar* _tmp8_ = NULL;
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       _tmp7_ = str_array;
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       _tmp7__length1 = str_array_length1;
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       _tmp8_ = _tmp7_[0];
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       _tmp5_ = _tmp8_ != NULL;
+#line 1597 "moonshot-keyring-store.c"
+               } else {
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       _tmp5_ = FALSE;
+#line 1601 "moonshot-keyring-store.c"
+               }
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp1_ = _tmp5_;
+#line 1605 "moonshot-keyring-store.c"
+       }
+#line 1065 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       if (_tmp1_) {
+#line 1609 "moonshot-keyring-store.c"
+               gint i = 0;
+               gsize len = 0UL;
+               gint _tmp31_ = 0;
+               gint _tmp33_ = 0;
+               gint _tmp34_ = 0;
+               gsize _tmp35_ = 0UL;
+               const gchar* _tmp36_ = NULL;
+               gint _tmp37_ = 0;
+               gint _tmp38_ = 0;
+               gint _tmp39_ = 0;
+               const gchar* res = NULL;
+               gsize _tmp40_ = 0UL;
+               void* _tmp41_ = NULL;
+               void* ptr = NULL;
+               const gchar* _tmp42_ = NULL;
+               gchar** _tmp43_ = NULL;
+               gint _tmp43__length1 = 0;
+               const gchar* _tmp44_ = NULL;
+               void* _tmp45_ = NULL;
+               const gchar* _tmp62_ = NULL;
+#line 1067 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               len = (gsize) 1;
+#line 1632 "moonshot-keyring-store.c"
+               {
+                       gboolean _tmp9_ = FALSE;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       i = 0;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       _tmp9_ = TRUE;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       while (TRUE) {
+#line 1641 "moonshot-keyring-store.c"
+                               gboolean _tmp11_ = FALSE;
+                               gboolean _tmp12_ = FALSE;
+                               gchar** _tmp13_ = NULL;
+                               gint _tmp13__length1 = 0;
+                               gint _tmp21_ = 0;
+                               gchar** _tmp22_ = NULL;
+                               gint _tmp22__length1 = 0;
+                               gint _tmp23_ = 0;
+                               const gchar* _tmp24_ = NULL;
+                               gsize _tmp30_ = 0UL;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               if (!_tmp9_) {
+#line 1654 "moonshot-keyring-store.c"
+                                       gint _tmp10_ = 0;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp10_ = i;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       i = _tmp10_ + 1;
+#line 1660 "moonshot-keyring-store.c"
+                               }
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp9_ = FALSE;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp13_ = str_array;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp13__length1 = str_array_length1;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               if (_tmp13__length1 != -1) {
+#line 1670 "moonshot-keyring-store.c"
+                                       gint _tmp14_ = 0;
+                                       gchar** _tmp15_ = NULL;
+                                       gint _tmp15__length1 = 0;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp14_ = i;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp15_ = str_array;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp15__length1 = str_array_length1;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp12_ = _tmp14_ < _tmp15__length1;
+#line 1682 "moonshot-keyring-store.c"
+                               } else {
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp12_ = FALSE;
+#line 1686 "moonshot-keyring-store.c"
+                               }
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               if (_tmp12_) {
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp11_ = TRUE;
+#line 1692 "moonshot-keyring-store.c"
+                               } else {
+                                       gboolean _tmp16_ = FALSE;
+                                       gchar** _tmp17_ = NULL;
+                                       gint _tmp17__length1 = 0;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp17_ = str_array;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp17__length1 = str_array_length1;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       if (_tmp17__length1 == -1) {
+#line 1703 "moonshot-keyring-store.c"
+                                               gchar** _tmp18_ = NULL;
+                                               gint _tmp18__length1 = 0;
+                                               gint _tmp19_ = 0;
+                                               const gchar* _tmp20_ = NULL;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                               _tmp18_ = str_array;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                               _tmp18__length1 = str_array_length1;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                               _tmp19_ = i;
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                               _tmp20_ = _tmp18_[_tmp19_];
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                               _tmp16_ = _tmp20_ != NULL;
+#line 1718 "moonshot-keyring-store.c"
+                                       } else {
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                               _tmp16_ = FALSE;
+#line 1722 "moonshot-keyring-store.c"
+                                       }
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp11_ = _tmp16_;
+#line 1726 "moonshot-keyring-store.c"
+                               }
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               if (!_tmp11_) {
+#line 1068 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       break;
+#line 1732 "moonshot-keyring-store.c"
+                               }
+#line 1069 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp22_ = str_array;
+#line 1069 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp22__length1 = str_array_length1;
+#line 1069 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp23_ = i;
+#line 1069 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp24_ = _tmp22_[_tmp23_];
+#line 1069 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               if (_tmp24_ != NULL) {
+#line 1744 "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 1069 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp25_ = str_array;
+#line 1069 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp25__length1 = str_array_length1;
+#line 1069 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp26_ = i;
+#line 1069 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp27_ = _tmp25_[_tmp26_];
+#line 1069 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp28_ = strlen ((const gchar*) _tmp27_);
+#line 1069 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp29_ = _tmp28_;
+#line 1069 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp21_ = _tmp29_;
+#line 1765 "moonshot-keyring-store.c"
+                               } else {
+#line 1069 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp21_ = 0;
+#line 1769 "moonshot-keyring-store.c"
+                               }
+#line 1069 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp30_ = len;
+#line 1069 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               len = _tmp30_ + _tmp21_;
+#line 1775 "moonshot-keyring-store.c"
+                       }
+               }
+#line 1071 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp31_ = i;
+#line 1071 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               if (_tmp31_ == 0) {
+#line 1782 "moonshot-keyring-store.c"
+                       gchar* _tmp32_ = NULL;
+#line 1072 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       _tmp32_ = g_strdup ("");
+#line 1072 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       result = _tmp32_;
+#line 1072 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       return result;
+#line 1790 "moonshot-keyring-store.c"
+               }
+#line 1074 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp33_ = i;
+#line 1074 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               str_array_length1 = _tmp33_;
+#line 1074 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp34_ = str_array_length1;
+#line 1075 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp35_ = len;
+#line 1075 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp36_ = separator;
+#line 1075 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp37_ = strlen ((const gchar*) _tmp36_);
+#line 1075 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp38_ = _tmp37_;
+#line 1075 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp39_ = i;
+#line 1075 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               len = _tmp35_ + (_tmp38_ * (_tmp39_ - 1));
+#line 1077 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp40_ = len;
+#line 1077 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp41_ = g_malloc (_tmp40_);
+#line 1077 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               res = _tmp41_;
+#line 1078 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp42_ = res;
+#line 1078 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp43_ = str_array;
+#line 1078 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp43__length1 = str_array_length1;
+#line 1078 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp44_ = _tmp43_[0];
+#line 1078 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp45_ = g_stpcpy ((void*) _tmp42_, (const gchar*) _tmp44_);
+#line 1078 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               ptr = _tmp45_;
+#line 1828 "moonshot-keyring-store.c"
+               {
+                       gboolean _tmp46_ = FALSE;
+#line 1079 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       i = 1;
+#line 1079 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       _tmp46_ = TRUE;
+#line 1079 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       while (TRUE) {
+#line 1837 "moonshot-keyring-store.c"
+                               gint _tmp48_ = 0;
+                               gchar** _tmp49_ = NULL;
+                               gint _tmp49__length1 = 0;
+                               void* _tmp50_ = NULL;
+                               const gchar* _tmp51_ = NULL;
+                               void* _tmp52_ = NULL;
+                               const gchar* _tmp53_ = NULL;
+                               gchar** _tmp54_ = NULL;
+                               gint _tmp54__length1 = 0;
+                               gint _tmp55_ = 0;
+                               const gchar* _tmp56_ = NULL;
+                               void* _tmp60_ = NULL;
+                               void* _tmp61_ = NULL;
+#line 1079 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               if (!_tmp46_) {
+#line 1853 "moonshot-keyring-store.c"
+                                       gint _tmp47_ = 0;
+#line 1079 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp47_ = i;
+#line 1079 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       i = _tmp47_ + 1;
+#line 1859 "moonshot-keyring-store.c"
+                               }
+#line 1079 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp46_ = FALSE;
+#line 1079 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp48_ = i;
+#line 1079 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp49_ = str_array;
+#line 1079 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp49__length1 = str_array_length1;
+#line 1079 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               if (!(_tmp48_ < _tmp49__length1)) {
+#line 1079 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       break;
+#line 1873 "moonshot-keyring-store.c"
+                               }
+#line 1080 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp50_ = ptr;
+#line 1080 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp51_ = separator;
+#line 1080 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp52_ = g_stpcpy (_tmp50_, (const gchar*) _tmp51_);
+#line 1080 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               ptr = _tmp52_;
+#line 1081 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp54_ = str_array;
+#line 1081 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp54__length1 = str_array_length1;
+#line 1081 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp55_ = i;
+#line 1081 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp56_ = _tmp54_[_tmp55_];
+#line 1081 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               if (_tmp56_ != NULL) {
+#line 1893 "moonshot-keyring-store.c"
+                                       gchar** _tmp57_ = NULL;
+                                       gint _tmp57__length1 = 0;
+                                       gint _tmp58_ = 0;
+                                       const gchar* _tmp59_ = NULL;
+#line 1081 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp57_ = str_array;
+#line 1081 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp57__length1 = str_array_length1;
+#line 1081 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp58_ = i;
+#line 1081 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp59_ = _tmp57_[_tmp58_];
+#line 1081 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp53_ = (const gchar*) _tmp59_;
+#line 1908 "moonshot-keyring-store.c"
+                               } else {
+#line 1081 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                                       _tmp53_ = "";
+#line 1912 "moonshot-keyring-store.c"
+                               }
+#line 1081 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp60_ = ptr;
+#line 1081 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               _tmp61_ = g_stpcpy (_tmp60_, _tmp53_);
+#line 1081 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                               ptr = _tmp61_;
+#line 1920 "moonshot-keyring-store.c"
+                       }
+               }
+#line 1084 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp62_ = res;
+#line 1084 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               res = NULL;
+#line 1084 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               result = (gchar*) _tmp62_;
+#line 1084 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               return result;
+#line 1931 "moonshot-keyring-store.c"
+       } else {
+               gchar* _tmp63_ = NULL;
+#line 1086 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp63_ = g_strdup ("");
+#line 1086 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               result = _tmp63_;
+#line 1086 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               return result;
+#line 1940 "moonshot-keyring-store.c"
+       }
+}
+
+
+static void keyring_store_real_store_id_cards (IIdentityCardStore* base) {
+       KeyringStore * self;
+       MoonshotLogger* _tmp0_ = NULL;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       self = (KeyringStore*) base;
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp0_ = keyring_store_logger;
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       moonshot_logger_trace (_tmp0_, "store_id_cards", NULL);
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       keyring_store_clear_keyring (self);
+#line 1956 "moonshot-keyring-store.c"
+       {
+               GeeLinkedList* _id_card_list = NULL;
+               GeeLinkedList* _tmp1_ = NULL;
+               GeeLinkedList* _tmp2_ = NULL;
+               gint _id_card_size = 0;
+               GeeLinkedList* _tmp3_ = NULL;
+               gint _tmp4_ = 0;
+               gint _tmp5_ = 0;
+               gint _id_card_index = 0;
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+               _tmp1_ = self->priv->id_card_list;
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+               _tmp2_ = _g_object_ref0 (_tmp1_);
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+               _id_card_list = _tmp2_;
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+               _tmp3_ = _id_card_list;
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+               _tmp4_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp3_);
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+               _tmp5_ = _tmp4_;
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+               _id_card_size = _tmp5_;
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+               _id_card_index = -1;
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+               while (TRUE) {
+#line 1984 "moonshot-keyring-store.c"
+                       gint _tmp6_ = 0;
+                       gint _tmp7_ = 0;
+                       gint _tmp8_ = 0;
+                       IdCard* id_card = NULL;
+                       GeeLinkedList* _tmp9_ = NULL;
+                       gint _tmp10_ = 0;
+                       gpointer _tmp11_ = NULL;
+                       Rule* rules = NULL;
+                       IdCard* _tmp12_ = NULL;
+                       Rule* _tmp13_ = NULL;
+                       gint _tmp13__length1 = 0;
+                       Rule* _tmp14_ = NULL;
+                       gint _tmp14__length1 = 0;
+                       Rule* _tmp15_ = NULL;
+                       gint _tmp15__length1 = 0;
+                       gint rules_length1 = 0;
+                       gint _rules_size_ = 0;
+                       gchar** rules_patterns = NULL;
+                       Rule* _tmp16_ = NULL;
+                       gint _tmp16__length1 = 0;
+                       gchar** _tmp17_ = NULL;
+                       gint rules_patterns_length1 = 0;
+                       gint _rules_patterns_size_ = 0;
+                       gchar** rules_always_conf = NULL;
+                       Rule* _tmp18_ = NULL;
+                       gint _tmp18__length1 = 0;
+                       gchar** _tmp19_ = NULL;
+                       gint rules_always_conf_length1 = 0;
+                       gint _rules_always_conf_size_ = 0;
+                       gchar* patterns = NULL;
+                       gchar** _tmp40_ = NULL;
+                       gint _tmp40__length1 = 0;
+                       gchar* _tmp41_ = NULL;
+                       gchar* always_conf = NULL;
+                       gchar** _tmp42_ = NULL;
+                       gint _tmp42__length1 = 0;
+                       gchar* _tmp43_ = NULL;
+                       gchar* services = NULL;
+                       IdCard* _tmp44_ = NULL;
+                       gchar* _tmp45_ = NULL;
+                       GnomeKeyringAttributeList* attributes = NULL;
+                       GnomeKeyringAttributeList* _tmp46_ = NULL;
+                       guint32 item_id = 0U;
+                       GnomeKeyringAttributeList* _tmp47_ = NULL;
+                       GnomeKeyringAttributeList* _tmp48_ = NULL;
+                       IdCard* _tmp49_ = NULL;
+                       const gchar* _tmp50_ = NULL;
+                       const gchar* _tmp51_ = NULL;
+                       GnomeKeyringAttributeList* _tmp52_ = NULL;
+                       IdCard* _tmp53_ = NULL;
+                       const gchar* _tmp54_ = NULL;
+                       const gchar* _tmp55_ = NULL;
+                       GnomeKeyringAttributeList* _tmp56_ = NULL;
+                       IdCard* _tmp57_ = NULL;
+                       const gchar* _tmp58_ = NULL;
+                       const gchar* _tmp59_ = NULL;
+                       GnomeKeyringAttributeList* _tmp60_ = NULL;
+                       const gchar* _tmp61_ = NULL;
+                       GnomeKeyringAttributeList* _tmp62_ = NULL;
+                       const gchar* _tmp63_ = NULL;
+                       GnomeKeyringAttributeList* _tmp64_ = NULL;
+                       const gchar* _tmp65_ = NULL;
+                       GnomeKeyringAttributeList* _tmp66_ = NULL;
+                       IdCard* _tmp67_ = NULL;
+                       TrustAnchor* _tmp68_ = NULL;
+                       TrustAnchor* _tmp69_ = NULL;
+                       const gchar* _tmp70_ = NULL;
+                       const gchar* _tmp71_ = NULL;
+                       GnomeKeyringAttributeList* _tmp72_ = NULL;
+                       IdCard* _tmp73_ = NULL;
+                       TrustAnchor* _tmp74_ = NULL;
+                       TrustAnchor* _tmp75_ = NULL;
+                       const gchar* _tmp76_ = NULL;
+                       const gchar* _tmp77_ = NULL;
+                       GnomeKeyringAttributeList* _tmp78_ = NULL;
+                       IdCard* _tmp79_ = NULL;
+                       TrustAnchor* _tmp80_ = NULL;
+                       TrustAnchor* _tmp81_ = NULL;
+                       const gchar* _tmp82_ = NULL;
+                       const gchar* _tmp83_ = NULL;
+                       GnomeKeyringAttributeList* _tmp84_ = NULL;
+                       IdCard* _tmp85_ = NULL;
+                       TrustAnchor* _tmp86_ = NULL;
+                       TrustAnchor* _tmp87_ = NULL;
+                       const gchar* _tmp88_ = NULL;
+                       const gchar* _tmp89_ = NULL;
+                       GnomeKeyringAttributeList* _tmp90_ = NULL;
+                       IdCard* _tmp91_ = NULL;
+                       TrustAnchor* _tmp92_ = NULL;
+                       TrustAnchor* _tmp93_ = NULL;
+                       const gchar* _tmp94_ = NULL;
+                       const gchar* _tmp95_ = NULL;
+                       const gchar* _tmp96_ = NULL;
+                       IdCard* _tmp97_ = NULL;
+                       gboolean _tmp98_ = FALSE;
+                       gboolean _tmp99_ = FALSE;
+                       GnomeKeyringAttributeList* _tmp100_ = NULL;
+                       const gchar* _tmp101_ = NULL;
+                       IdCard* _tmp102_ = NULL;
+                       gboolean _tmp103_ = FALSE;
+                       gboolean _tmp104_ = FALSE;
+                       GnomeKeyringResult _result_ = 0;
+                       IdCard* _tmp108_ = NULL;
+                       const gchar* _tmp109_ = NULL;
+                       const gchar* _tmp110_ = NULL;
+                       GnomeKeyringAttributeList* _tmp111_ = NULL;
+                       guint32 _tmp112_ = 0U;
+                       GnomeKeyringResult _tmp113_ = 0;
+                       GnomeKeyringResult _tmp114_ = 0;
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp6_ = _id_card_index;
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _id_card_index = _tmp6_ + 1;
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp7_ = _id_card_index;
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp8_ = _id_card_size;
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       if (!(_tmp7_ < _tmp8_)) {
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               break;
+#line 2106 "moonshot-keyring-store.c"
+                       }
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp9_ = _id_card_list;
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp10_ = _id_card_index;
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp11_ = gee_abstract_list_get ((GeeAbstractList*) _tmp9_, _tmp10_);
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       id_card = (IdCard*) _tmp11_;
+#line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp12_ = id_card;
+#line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp13_ = id_card_get_rules (_tmp12_, &_tmp13__length1);
+#line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp14_ = _tmp13_;
+#line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp14__length1 = _tmp13__length1;
+#line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp15_ = (_tmp14_ != NULL) ? _vala_array_dup2 (_tmp14_, _tmp14__length1) : ((gpointer) _tmp14_);
+#line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp15__length1 = _tmp14__length1;
+#line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       rules = _tmp15_;
+#line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       rules_length1 = _tmp15__length1;
+#line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _rules_size_ = rules_length1;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp16_ = rules;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp16__length1 = rules_length1;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp17_ = g_new0 (gchar*, _tmp16__length1 + 1);
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       rules_patterns = _tmp17_;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       rules_patterns_length1 = _tmp16__length1;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _rules_patterns_size_ = rules_patterns_length1;
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp18_ = rules;
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp18__length1 = rules_length1;
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp19_ = g_new0 (gchar*, _tmp18__length1 + 1);
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       rules_always_conf = _tmp19_;
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       rules_always_conf_length1 = _tmp18__length1;
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _rules_always_conf_size_ = rules_always_conf_length1;
+#line 2158 "moonshot-keyring-store.c"
+                       {
+                               gint i = 0;
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               i = 0;
+#line 2163 "moonshot-keyring-store.c"
+                               {
+                                       gboolean _tmp20_ = FALSE;
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       _tmp20_ = TRUE;
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                       while (TRUE) {
+#line 2170 "moonshot-keyring-store.c"
+                                               gint _tmp22_ = 0;
+                                               Rule* _tmp23_ = NULL;
+                                               gint _tmp23__length1 = 0;
+                                               gchar** _tmp24_ = NULL;
+                                               gint _tmp24__length1 = 0;
+                                               gint _tmp25_ = 0;
+                                               Rule* _tmp26_ = NULL;
+                                               gint _tmp26__length1 = 0;
+                                               gint _tmp27_ = 0;
+                                               Rule _tmp28_ = {0};
+                                               const gchar* _tmp29_ = NULL;
+                                               gchar* _tmp30_ = NULL;
+                                               gchar* _tmp31_ = NULL;
+                                               gchar** _tmp32_ = NULL;
+                                               gint _tmp32__length1 = 0;
+                                               gint _tmp33_ = 0;
+                                               Rule* _tmp34_ = NULL;
+                                               gint _tmp34__length1 = 0;
+                                               gint _tmp35_ = 0;
+                                               Rule _tmp36_ = {0};
+                                               const gchar* _tmp37_ = NULL;
+                                               gchar* _tmp38_ = NULL;
+                                               gchar* _tmp39_ = NULL;
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               if (!_tmp20_) {
+#line 2196 "moonshot-keyring-store.c"
+                                                       gint _tmp21_ = 0;
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                       _tmp21_ = i;
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                       i = _tmp21_ + 1;
+#line 2202 "moonshot-keyring-store.c"
+                                               }
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp20_ = FALSE;
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp22_ = i;
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp23_ = rules;
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp23__length1 = rules_length1;
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               if (!(_tmp22_ < _tmp23__length1)) {
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                                       break;
+#line 2216 "moonshot-keyring-store.c"
+                                               }
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp24_ = rules_patterns;
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp24__length1 = rules_patterns_length1;
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp25_ = i;
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp26_ = rules;
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp26__length1 = rules_length1;
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp27_ = i;
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp28_ = _tmp26_[_tmp27_];
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp29_ = _tmp28_.pattern;
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp30_ = g_strdup (_tmp29_);
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _g_free0 (_tmp24_[_tmp25_]);
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp24_[_tmp25_] = _tmp30_;
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp31_ = _tmp24_[_tmp25_];
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp32_ = rules_always_conf;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp32__length1 = rules_always_conf_length1;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp33_ = i;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp34_ = rules;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp34__length1 = rules_length1;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp35_ = i;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp36_ = _tmp34_[_tmp35_];
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp37_ = _tmp36_.always_confirm;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp38_ = g_strdup (_tmp37_);
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _g_free0 (_tmp32_[_tmp33_]);
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp32_[_tmp33_] = _tmp38_;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                                               _tmp39_ = _tmp32_[_tmp33_];
+#line 2266 "moonshot-keyring-store.c"
+                                       }
+                               }
+                       }
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp40_ = rules_patterns;
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp40__length1 = rules_patterns_length1;
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp41_ = _vala_g_strjoinv (";", _tmp40_, _tmp40__length1);
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       patterns = _tmp41_;
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp42_ = rules_always_conf;
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp42__length1 = rules_always_conf_length1;
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp43_ = _vala_g_strjoinv (";", _tmp42_, _tmp42__length1);
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       always_conf = _tmp43_;
+#line 199 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp44_ = id_card;
+#line 199 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp45_ = id_card_get_services_string (_tmp44_, ";");
+#line 199 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       services = _tmp45_;
+#line 200 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp46_ = gnome_keyring_attribute_list_new ();
+#line 200 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       attributes = _tmp46_;
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp47_ = attributes;
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       gnome_keyring_attribute_list_append_string (_tmp47_, KEYRING_STORE_keyring_store_attribute, KEYRING_STORE_keyring_store_version);
+#line 203 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp48_ = attributes;
+#line 203 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp49_ = id_card;
+#line 203 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp50_ = id_card_get_issuer (_tmp49_);
+#line 203 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp51_ = _tmp50_;
+#line 203 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       gnome_keyring_attribute_list_append_string (_tmp48_, "Issuer", _tmp51_);
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp52_ = attributes;
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp53_ = id_card;
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp54_ = id_card_get_username (_tmp53_);
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp55_ = _tmp54_;
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       gnome_keyring_attribute_list_append_string (_tmp52_, "Username", _tmp55_);
+#line 205 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp56_ = attributes;
+#line 205 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp57_ = id_card;
+#line 205 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp58_ = id_card_get_display_name (_tmp57_);
+#line 205 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp59_ = _tmp58_;
+#line 205 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       gnome_keyring_attribute_list_append_string (_tmp56_, "DisplayName", _tmp59_);
+#line 206 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp60_ = attributes;
+#line 206 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp61_ = services;
+#line 206 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       gnome_keyring_attribute_list_append_string (_tmp60_, "Services", _tmp61_);
+#line 207 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp62_ = attributes;
+#line 207 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp63_ = patterns;
+#line 207 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       gnome_keyring_attribute_list_append_string (_tmp62_, "Rules-Pattern", _tmp63_);
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp64_ = attributes;
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp65_ = always_conf;
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       gnome_keyring_attribute_list_append_string (_tmp64_, "Rules-AlwaysConfirm", _tmp65_);
+#line 209 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp66_ = attributes;
+#line 209 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp67_ = id_card;
+#line 209 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp68_ = id_card_get_trust_anchor (_tmp67_);
+#line 209 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp69_ = _tmp68_;
+#line 209 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp70_ = trust_anchor_get_ca_cert (_tmp69_);
+#line 209 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp71_ = _tmp70_;
+#line 209 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       gnome_keyring_attribute_list_append_string (_tmp66_, "CA-Cert", _tmp71_);
+#line 210 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp72_ = attributes;
+#line 210 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp73_ = id_card;
+#line 210 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp74_ = id_card_get_trust_anchor (_tmp73_);
+#line 210 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp75_ = _tmp74_;
+#line 210 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp76_ = trust_anchor_get_server_cert (_tmp75_);
+#line 210 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp77_ = _tmp76_;
+#line 210 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       gnome_keyring_attribute_list_append_string (_tmp72_, "Server-Cert", _tmp77_);
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp78_ = attributes;
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp79_ = id_card;
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp80_ = id_card_get_trust_anchor (_tmp79_);
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp81_ = _tmp80_;
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp82_ = trust_anchor_get_subject (_tmp81_);
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp83_ = _tmp82_;
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       gnome_keyring_attribute_list_append_string (_tmp78_, "Subject", _tmp83_);
+#line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp84_ = attributes;
+#line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp85_ = id_card;
+#line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp86_ = id_card_get_trust_anchor (_tmp85_);
+#line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp87_ = _tmp86_;
+#line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp88_ = trust_anchor_get_subject_alt (_tmp87_);
+#line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp89_ = _tmp88_;
+#line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       gnome_keyring_attribute_list_append_string (_tmp84_, "Subject-Alt", _tmp89_);
+#line 213 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp90_ = attributes;
+#line 213 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp91_ = id_card;
+#line 213 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp92_ = id_card_get_trust_anchor (_tmp91_);
+#line 213 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp93_ = _tmp92_;
+#line 213 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp94_ = trust_anchor_get_datetime_added (_tmp93_);
+#line 213 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp95_ = _tmp94_;
+#line 213 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       gnome_keyring_attribute_list_append_string (_tmp90_, "TA_DateTime_Added", _tmp95_);
+#line 214 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp97_ = id_card;
+#line 214 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp98_ = id_card_get_store_password (_tmp97_);
+#line 214 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp99_ = _tmp98_;
+#line 214 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       if (_tmp99_) {
+#line 214 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp96_ = "yes";
+#line 2428 "moonshot-keyring-store.c"
+                       } else {
+#line 214 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp96_ = "no";
+#line 2432 "moonshot-keyring-store.c"
+                       }
+#line 214 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp100_ = attributes;
+#line 214 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       gnome_keyring_attribute_list_append_string (_tmp100_, "StorePassword", _tmp96_);
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp102_ = id_card;
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp103_ = id_card_get_store_password (_tmp102_);
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp104_ = _tmp103_;
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       if (_tmp104_) {
+#line 2446 "moonshot-keyring-store.c"
+                               IdCard* _tmp105_ = NULL;
+                               const gchar* _tmp106_ = NULL;
+                               const gchar* _tmp107_ = NULL;
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp105_ = id_card;
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp106_ = id_card_get_password (_tmp105_);
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp107_ = _tmp106_;
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp101_ = _tmp107_;
+#line 2458 "moonshot-keyring-store.c"
+                       } else {
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp101_ = "";
+#line 2462 "moonshot-keyring-store.c"
+                       }
+#line 216 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp108_ = id_card;
+#line 216 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp109_ = id_card_get_display_name (_tmp108_);
+#line 216 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp110_ = _tmp109_;
+#line 216 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp111_ = attributes;
+#line 216 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp113_ = gnome_keyring_item_create_sync (NULL, KEYRING_STORE_item_type, _tmp110_, _tmp111_, _tmp101_, TRUE, &_tmp112_);
+#line 216 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       item_id = _tmp112_;
+#line 216 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _result_ = _tmp113_;
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _tmp114_ = _result_;
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       if (_tmp114_ != GNOME_KEYRING_RESULT_OK) {
+#line 2482 "moonshot-keyring-store.c"
+                               FILE* _tmp115_ = NULL;
+                               GnomeKeyringResult _tmp116_ = 0;
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp115_ = stdout;
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               _tmp116_ = _result_;
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                               fprintf (_tmp115_, "GnomeKeyring.item_create_sync() failed. result: %d", (gint) _tmp116_);
+#line 2491 "moonshot-keyring-store.c"
+                       }
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _gnome_keyring_attribute_list_free0 (attributes);
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _g_free0 (services);
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _g_free0 (always_conf);
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _g_free0 (patterns);
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       rules_always_conf = (_vala_array_free (rules_always_conf, rules_always_conf_length1, (GDestroyNotify) g_free), NULL);
+#line 187 "/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 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       rules = (_vala_Rule_array_free (rules, rules_length1), NULL);
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+                       _g_object_unref0 (id_card);
+#line 2509 "moonshot-keyring-store.c"
+               }
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+               _g_object_unref0 (_id_card_list);
+#line 2513 "moonshot-keyring-store.c"
+       }
+#line 224 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       keyring_store_load_id_cards (self);
+#line 2517 "moonshot-keyring-store.c"
+}
+
+
+KeyringStore* keyring_store_construct (GType object_type) {
+       KeyringStore * self = NULL;
+       GeeLinkedList* _tmp0_ = NULL;
+#line 227 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       self = (KeyringStore*) g_object_new (object_type, NULL);
+#line 228 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp0_ = gee_linked_list_new (TYPE_ID_CARD, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL);
+#line 228 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _g_object_unref0 (self->priv->id_card_list);
+#line 228 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       self->priv->id_card_list = _tmp0_;
+#line 229 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       keyring_store_load_id_cards (self);
+#line 227 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       return self;
+#line 2536 "moonshot-keyring-store.c"
+}
+
+
+KeyringStore* keyring_store_new (void) {
+#line 227 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       return keyring_store_construct (TYPE_KEYRING_STORE);
+#line 2543 "moonshot-keyring-store.c"
+}
+
+
+static void keyring_store_class_init (KeyringStoreClass * klass) {
+       MoonshotLogger* _tmp0_ = NULL;
+#line 35 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       keyring_store_parent_class = g_type_class_peek_parent (klass);
+#line 35 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       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 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _tmp0_ = get_logger ("KeyringStore");
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       keyring_store_logger = _tmp0_;
+#line 2559 "moonshot-keyring-store.c"
+}
+
+
+static void keyring_store_iidentity_card_store_interface_init (IIdentityCardStoreIface * iface) {
+#line 35 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       keyring_store_iidentity_card_store_parent_iface = g_type_interface_peek_parent (iface);
+#line 35 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       iface->add_card = (void (*)(IIdentityCardStore*, IdCard*)) keyring_store_real_add_card;
+#line 35 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       iface->update_card = (IdCard* (*)(IIdentityCardStore*, IdCard*)) keyring_store_real_update_card;
+#line 35 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       iface->remove_card = (gboolean (*)(IIdentityCardStore*, IdCard*)) keyring_store_real_remove_card;
+#line 35 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       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 35 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       iface->store_id_cards = (void (*)(IIdentityCardStore*)) keyring_store_real_store_id_cards;
+#line 2578 "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 2585 "moonshot-keyring-store.c"
+}
+
+
+static void keyring_store_finalize (GObject* obj) {
+       KeyringStore * self;
+#line 35 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_KEYRING_STORE, KeyringStore);
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-keyring-store.vala"
+       _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 2597 "moonshot-keyring-store.c"
+}
+
+
+GType keyring_store_get_type (void) {
+       static volatile gsize keyring_store_type_id__volatile = 0;
+       if (g_once_init_enter (&keyring_store_type_id__volatile)) {
+               static const GTypeInfo g_define_type_info = { sizeof (KeyringStoreClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) keyring_store_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (KeyringStore), 0, (GInstanceInitFunc) keyring_store_instance_init, NULL };
+               static const GInterfaceInfo iidentity_card_store_info = { (GInterfaceInitFunc) keyring_store_iidentity_card_store_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
+               GType keyring_store_type_id;
+               keyring_store_type_id = g_type_register_static (G_TYPE_OBJECT, "KeyringStore", &g_define_type_info, 0);
+               g_type_add_interface_static (keyring_store_type_id, TYPE_IIDENTITY_CARD_STORE, &iidentity_card_store_info);
+               g_once_init_leave (&keyring_store_type_id__volatile, keyring_store_type_id);
+       }
+       return keyring_store_type_id__volatile;
+}
+
+
+static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func) {
+       if ((array != NULL) && (destroy_func != NULL)) {
+               int i;
+               for (i = 0; i < array_length; i = i + 1) {
+                       if (((gpointer*) array)[i] != NULL) {
+                               destroy_func (((gpointer*) array)[i]);
+                       }
+               }
+       }
+}
+
+
+static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func) {
+       _vala_array_destroy (array, array_length, destroy_func);
+       g_free (array);
+}
+
+
+static gint _vala_array_length (gpointer array) {
+       int length;
+       length = 0;
+       if (array) {
+               while (((gpointer*) array)[length]) {
+                       length++;
+               }
+       }
+       return length;
+}
+
+
+
diff --git a/src/moonshot-local-flat-file-store.c b/src/moonshot-local-flat-file-store.c
new file mode 100644 (file)
index 0000000..3c97ceb
--- /dev/null
@@ -0,0 +1,2826 @@
+/* moonshot-local-flat-file-store.c generated by valac 0.34.9, the Vala compiler
+ * generated from moonshot-local-flat-file-store.vala, do not modify */
+
+/*
+ * Copyright (c) 2011-2016, JANET(UK)
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * 3. Neither the name of JANET(UK) nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#include <glib.h>
+#include <glib-object.h>
+#include <gee.h>
+#include <stdlib.h>
+#include <string.h>
+#include <stdio.h>
+#include "config.h"
+#include <glib/gstdio.h>
+#include <gio/gio.h>
+
+
+#define TYPE_IIDENTITY_CARD_STORE (iidentity_card_store_get_type ())
+#define IIDENTITY_CARD_STORE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IIDENTITY_CARD_STORE, IIdentityCardStore))
+#define IS_IIDENTITY_CARD_STORE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IIDENTITY_CARD_STORE))
+#define IIDENTITY_CARD_STORE_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), TYPE_IIDENTITY_CARD_STORE, IIdentityCardStoreIface))
+
+typedef struct _IIdentityCardStore IIdentityCardStore;
+typedef struct _IIdentityCardStoreIface IIdentityCardStoreIface;
+
+#define TYPE_ID_CARD (id_card_get_type ())
+#define ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ID_CARD, IdCard))
+#define ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ID_CARD, IdCardClass))
+#define IS_ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ID_CARD))
+#define IS_ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ID_CARD))
+#define ID_CARD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ID_CARD, IdCardClass))
+
+typedef struct _IdCard IdCard;
+typedef struct _IdCardClass IdCardClass;
+
+#define IIDENTITY_CARD_STORE_TYPE_STORE_TYPE (iidentity_card_store_store_type_get_type ())
+
+#define TYPE_LOCAL_FLAT_FILE_STORE (local_flat_file_store_get_type ())
+#define LOCAL_FLAT_FILE_STORE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_LOCAL_FLAT_FILE_STORE, LocalFlatFileStore))
+#define LOCAL_FLAT_FILE_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_LOCAL_FLAT_FILE_STORE, LocalFlatFileStoreClass))
+#define IS_LOCAL_FLAT_FILE_STORE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_LOCAL_FLAT_FILE_STORE))
+#define IS_LOCAL_FLAT_FILE_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_LOCAL_FLAT_FILE_STORE))
+#define LOCAL_FLAT_FILE_STORE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_LOCAL_FLAT_FILE_STORE, LocalFlatFileStoreClass))
+
+typedef struct _LocalFlatFileStore LocalFlatFileStore;
+typedef struct _LocalFlatFileStoreClass LocalFlatFileStoreClass;
+typedef struct _LocalFlatFileStorePrivate LocalFlatFileStorePrivate;
+
+#define TYPE_MOONSHOT_LOGGER (moonshot_logger_get_type ())
+#define MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLogger))
+#define MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+#define IS_MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MOONSHOT_LOGGER))
+#define IS_MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MOONSHOT_LOGGER))
+#define MOONSHOT_LOGGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+
+typedef struct _MoonshotLogger MoonshotLogger;
+typedef struct _MoonshotLoggerClass MoonshotLoggerClass;
+#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
+#define _g_free0(var) (var = (g_free (var), NULL))
+#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))
+#define _g_key_file_unref0(var) ((var == NULL) ? NULL : (var = (g_key_file_unref (var), NULL)))
+
+#define TYPE_RULE (rule_get_type ())
+typedef struct _Rule Rule;
+
+#define TYPE_TRUST_ANCHOR (trust_anchor_get_type ())
+#define TRUST_ANCHOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TRUST_ANCHOR, TrustAnchor))
+#define TRUST_ANCHOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TRUST_ANCHOR, TrustAnchorClass))
+#define IS_TRUST_ANCHOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TRUST_ANCHOR))
+#define IS_TRUST_ANCHOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TRUST_ANCHOR))
+#define TRUST_ANCHOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TRUST_ANCHOR, TrustAnchorClass))
+
+typedef struct _TrustAnchor TrustAnchor;
+typedef struct _TrustAnchorClass TrustAnchorClass;
+
+typedef enum  {
+       IIDENTITY_CARD_STORE_STORE_TYPE_FLAT_FILE,
+       IIDENTITY_CARD_STORE_STORE_TYPE_KEYRING
+} IIdentityCardStoreStoreType;
+
+struct _IIdentityCardStoreIface {
+       GTypeInterface parent_iface;
+       void (*add_card) (IIdentityCardStore* self, IdCard* card);
+       gboolean (*remove_card) (IIdentityCardStore* self, IdCard* card);
+       IdCard* (*update_card) (IIdentityCardStore* self, IdCard* card);
+       IIdentityCardStoreStoreType (*get_store_type) (IIdentityCardStore* self);
+       GeeLinkedList* (*get_card_list) (IIdentityCardStore* self);
+       void (*store_id_cards) (IIdentityCardStore* self);
+};
+
+struct _LocalFlatFileStore {
+       GObject parent_instance;
+       LocalFlatFileStorePrivate * priv;
+};
+
+struct _LocalFlatFileStoreClass {
+       GObjectClass parent_class;
+};
+
+struct _LocalFlatFileStorePrivate {
+       GeeLinkedList* id_card_list;
+};
+
+struct _Rule {
+       gchar* pattern;
+       gchar* always_confirm;
+};
+
+
+static gpointer local_flat_file_store_parent_class = NULL;
+static MoonshotLogger* local_flat_file_store_logger;
+static MoonshotLogger* local_flat_file_store_logger = NULL;
+static IIdentityCardStoreIface* local_flat_file_store_iidentity_card_store_parent_iface = NULL;
+
+GType id_card_get_type (void) G_GNUC_CONST;
+GType iidentity_card_store_store_type_get_type (void) G_GNUC_CONST;
+GType iidentity_card_store_get_type (void) G_GNUC_CONST;
+GType local_flat_file_store_get_type (void) G_GNUC_CONST;
+#define LOCAL_FLAT_FILE_STORE_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_LOCAL_FLAT_FILE_STORE, LocalFlatFileStorePrivate))
+enum  {
+       LOCAL_FLAT_FILE_STORE_DUMMY_PROPERTY
+};
+GType moonshot_logger_get_type (void) G_GNUC_CONST;
+MoonshotLogger* get_logger (const gchar* name);
+#define LOCAL_FLAT_FILE_STORE_FILE_NAME "identities.txt"
+static void local_flat_file_store_real_add_card (IIdentityCardStore* base, IdCard* card);
+void iidentity_card_store_store_id_cards (IIdentityCardStore* self);
+static IdCard* local_flat_file_store_real_update_card (IIdentityCardStore* base, IdCard* card);
+const gchar* id_card_get_display_name (IdCard* self);
+void moonshot_logger_error (MoonshotLogger* self, const gchar* message, GError* e);
+static gboolean local_flat_file_store_real_remove_card (IIdentityCardStore* base, IdCard* card);
+static GeeLinkedList* local_flat_file_store_real_get_card_list (IIdentityCardStore* base);
+static IIdentityCardStoreStoreType local_flat_file_store_real_get_store_type (IIdentityCardStore* base);
+static void local_flat_file_store_load_id_cards (LocalFlatFileStore* self);
+static gchar* local_flat_file_store_get_data_dir (LocalFlatFileStore* self);
+void moonshot_logger_trace (MoonshotLogger* self, const gchar* message, GError* e);
+IdCard* id_card_new (void);
+IdCard* id_card_construct (GType object_type);
+void id_card_set_issuer (IdCard* self, const gchar* value);
+void id_card_set_username (IdCard* self, const gchar* value);
+void id_card_set_password (IdCard* self, const gchar* value);
+void id_card_update_services (IdCard* self, gchar** services, int services_length1);
+void id_card_set_display_name (IdCard* self, const gchar* value);
+void id_card_set_store_password (IdCard* self, gboolean value);
+const gchar* id_card_get_password (IdCard* self);
+GType rule_get_type (void) G_GNUC_CONST;
+Rule* rule_dup (const Rule* self);
+void rule_free (Rule* self);
+void rule_copy (const Rule* self, Rule* dest);
+void rule_destroy (Rule* self);
+void id_card_set_rules (IdCard* self, Rule* value, int value_length1);
+static void _vala_Rule_array_free (Rule* array, gint array_length);
+GType trust_anchor_get_type (void) G_GNUC_CONST;
+TrustAnchor* trust_anchor_new (const gchar* ca_cert, const gchar* server_cert, const gchar* subject, const gchar* subject_alt);
+TrustAnchor* trust_anchor_construct (GType object_type, const gchar* ca_cert, const gchar* server_cert, const gchar* subject, const gchar* subject_alt);
+gchar* get_string_setting (const gchar* group_name, const gchar* key_name, const gchar* _default_, GKeyFile* key_file);
+void trust_anchor_set_datetime_added (TrustAnchor* self, const gchar* datetime);
+void id_card_set_trust_anchor_from_store (IdCard* self, TrustAnchor* ta);
+static void local_flat_file_store_real_store_id_cards (IIdentityCardStore* base);
+Rule* id_card_get_rules (IdCard* self, int* result_length1);
+static Rule* _vala_array_dup1 (Rule* self, int length);
+const gchar* id_card_get_issuer (IdCard* self);
+const gchar* id_card_get_username (IdCard* self);
+gboolean id_card_get_store_password (IdCard* self);
+GeeArrayList* id_card_get_services (IdCard* self);
+TrustAnchor* id_card_get_trust_anchor (IdCard* self);
+const gchar* trust_anchor_get_ca_cert (TrustAnchor* self);
+const gchar* trust_anchor_get_subject (TrustAnchor* self);
+const gchar* trust_anchor_get_subject_alt (TrustAnchor* self);
+const gchar* trust_anchor_get_server_cert (TrustAnchor* self);
+const gchar* trust_anchor_get_datetime_added (TrustAnchor* self);
+LocalFlatFileStore* local_flat_file_store_new (void);
+LocalFlatFileStore* local_flat_file_store_construct (GType object_type);
+static void local_flat_file_store_finalize (GObject* obj);
+static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func);
+static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func);
+
+
+static void local_flat_file_store_real_add_card (IIdentityCardStore* base, IdCard* card) {
+       LocalFlatFileStore * self;
+       GeeLinkedList* _tmp0_ = NULL;
+       IdCard* _tmp1_ = NULL;
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       self = (LocalFlatFileStore*) base;
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       g_return_if_fail (card != NULL);
+#line 41 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp0_ = self->priv->id_card_list;
+#line 41 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp1_ = card;
+#line 41 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       gee_abstract_collection_add ((GeeAbstractCollection*) _tmp0_, _tmp1_);
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       iidentity_card_store_store_id_cards ((IIdentityCardStore*) self);
+#line 225 "moonshot-local-flat-file-store.c"
+}
+
+
+static gpointer _g_object_ref0 (gpointer self) {
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       return self ? g_object_ref (self) : NULL;
+#line 232 "moonshot-local-flat-file-store.c"
+}
+
+
+static const gchar* string_to_string (const gchar* self) {
+       const gchar* result = NULL;
+#line 1420 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 1421 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       result = self;
+#line 1421 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       return result;
+#line 244 "moonshot-local-flat-file-store.c"
+}
+
+
+static IdCard* local_flat_file_store_real_update_card (IIdentityCardStore* base, IdCard* card) {
+       LocalFlatFileStore * self;
+       IdCard* result = NULL;
+       GeeLinkedList* _tmp0_ = NULL;
+       IdCard* _tmp1_ = NULL;
+       GeeLinkedList* _tmp2_ = NULL;
+       IdCard* _tmp3_ = NULL;
+       MoonshotLogger* _tmp21_ = NULL;
+       IdCard* _tmp22_ = NULL;
+       const gchar* _tmp23_ = NULL;
+       const gchar* _tmp24_ = NULL;
+       const gchar* _tmp25_ = NULL;
+       gchar* _tmp26_ = NULL;
+       gchar* _tmp27_ = NULL;
+#line 45 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       self = (LocalFlatFileStore*) base;
+#line 45 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       g_return_val_if_fail (card != NULL, NULL);
+#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp0_ = self->priv->id_card_list;
+#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp1_ = card;
+#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       gee_abstract_collection_remove ((GeeAbstractCollection*) _tmp0_, _tmp1_);
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp2_ = self->priv->id_card_list;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp3_ = card;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       gee_abstract_collection_add ((GeeAbstractCollection*) _tmp2_, _tmp3_);
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       iidentity_card_store_store_id_cards ((IIdentityCardStore*) self);
+#line 280 "moonshot-local-flat-file-store.c"
+       {
+               GeeLinkedList* _idcard_list = NULL;
+               GeeLinkedList* _tmp4_ = NULL;
+               GeeLinkedList* _tmp5_ = NULL;
+               gint _idcard_size = 0;
+               GeeLinkedList* _tmp6_ = NULL;
+               gint _tmp7_ = 0;
+               gint _tmp8_ = 0;
+               gint _idcard_index = 0;
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp4_ = self->priv->id_card_list;
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp5_ = _g_object_ref0 (_tmp4_);
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _idcard_list = _tmp5_;
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp6_ = _idcard_list;
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp7_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp6_);
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp8_ = _tmp7_;
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _idcard_size = _tmp8_;
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _idcard_index = -1;
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               while (TRUE) {
+#line 308 "moonshot-local-flat-file-store.c"
+                       gint _tmp9_ = 0;
+                       gint _tmp10_ = 0;
+                       gint _tmp11_ = 0;
+                       IdCard* idcard = NULL;
+                       GeeLinkedList* _tmp12_ = NULL;
+                       gint _tmp13_ = 0;
+                       gpointer _tmp14_ = NULL;
+                       IdCard* _tmp15_ = NULL;
+                       const gchar* _tmp16_ = NULL;
+                       const gchar* _tmp17_ = NULL;
+                       IdCard* _tmp18_ = NULL;
+                       const gchar* _tmp19_ = NULL;
+                       const gchar* _tmp20_ = NULL;
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp9_ = _idcard_index;
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _idcard_index = _tmp9_ + 1;
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp10_ = _idcard_index;
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp11_ = _idcard_size;
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       if (!(_tmp10_ < _tmp11_)) {
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               break;
+#line 334 "moonshot-local-flat-file-store.c"
+                       }
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp12_ = _idcard_list;
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp13_ = _idcard_index;
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp14_ = gee_abstract_list_get ((GeeAbstractList*) _tmp12_, _tmp13_);
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       idcard = (IdCard*) _tmp14_;
+#line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp15_ = idcard;
+#line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp16_ = id_card_get_display_name (_tmp15_);
+#line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp17_ = _tmp16_;
+#line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp18_ = card;
+#line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp19_ = id_card_get_display_name (_tmp18_);
+#line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp20_ = _tmp19_;
+#line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       if (g_strcmp0 (_tmp17_, _tmp20_) == 0) {
+#line 51 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               result = idcard;
+#line 51 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _g_object_unref0 (_idcard_list);
+#line 51 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               return result;
+#line 364 "moonshot-local-flat-file-store.c"
+                       }
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _g_object_unref0 (idcard);
+#line 368 "moonshot-local-flat-file-store.c"
+               }
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _g_object_unref0 (_idcard_list);
+#line 372 "moonshot-local-flat-file-store.c"
+       }
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp21_ = local_flat_file_store_logger;
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp22_ = card;
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp23_ = id_card_get_display_name (_tmp22_);
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp24_ = _tmp23_;
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp25_ = string_to_string (_tmp24_);
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp26_ = g_strconcat ("update_card: card '", _tmp25_, "' was not found after re-loading!", NULL);
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp27_ = _tmp26_;
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       moonshot_logger_error (_tmp21_, _tmp27_, NULL);
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _g_free0 (_tmp27_);
+#line 55 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       result = NULL;
+#line 55 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       return result;
+#line 396 "moonshot-local-flat-file-store.c"
+}
+
+
+static gboolean local_flat_file_store_real_remove_card (IIdentityCardStore* base, IdCard* card) {
+       LocalFlatFileStore * self;
+       gboolean result = FALSE;
+       GeeLinkedList* _tmp0_ = NULL;
+       IdCard* _tmp1_ = NULL;
+       gboolean _tmp2_ = FALSE;
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       self = (LocalFlatFileStore*) base;
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       g_return_val_if_fail (card != NULL, FALSE);
+#line 59 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp0_ = self->priv->id_card_list;
+#line 59 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp1_ = card;
+#line 59 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp2_ = gee_abstract_collection_remove ((GeeAbstractCollection*) _tmp0_, _tmp1_);
+#line 59 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       if (_tmp2_) {
+#line 60 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               iidentity_card_store_store_id_cards ((IIdentityCardStore*) self);
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               result = TRUE;
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               return result;
+#line 424 "moonshot-local-flat-file-store.c"
+       }
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       result = FALSE;
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       return result;
+#line 430 "moonshot-local-flat-file-store.c"
+}
+
+
+static GeeLinkedList* local_flat_file_store_real_get_card_list (IIdentityCardStore* base) {
+       LocalFlatFileStore * self;
+       GeeLinkedList* result = NULL;
+       GeeLinkedList* _tmp0_ = NULL;
+       GeeLinkedList* _tmp1_ = NULL;
+#line 66 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       self = (LocalFlatFileStore*) base;
+#line 67 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp0_ = self->priv->id_card_list;
+#line 67 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp1_ = _g_object_ref0 (_tmp0_);
+#line 67 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       result = _tmp1_;
+#line 67 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       return result;
+#line 449 "moonshot-local-flat-file-store.c"
+}
+
+
+static IIdentityCardStoreStoreType local_flat_file_store_real_get_store_type (IIdentityCardStore* base) {
+       LocalFlatFileStore * self;
+       IIdentityCardStoreStoreType result = 0;
+#line 70 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       self = (LocalFlatFileStore*) base;
+#line 71 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       result = IIDENTITY_CARD_STORE_STORE_TYPE_FLAT_FILE;
+#line 71 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       return result;
+#line 462 "moonshot-local-flat-file-store.c"
+}
+
+
+static void _vala_Rule_array_free (Rule* array, gint array_length) {
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       if (array != NULL) {
+#line 469 "moonshot-local-flat-file-store.c"
+               int i;
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               for (i = 0; i < array_length; i = i + 1) {
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       rule_destroy (&array[i]);
+#line 475 "moonshot-local-flat-file-store.c"
+               }
+       }
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       g_free (array);
+#line 480 "moonshot-local-flat-file-store.c"
+}
+
+
+static gchar* string_strip (const gchar* self) {
+       gchar* result = NULL;
+       gchar* _result_ = NULL;
+       gchar* _tmp0_ = NULL;
+       const gchar* _tmp1_ = NULL;
+#line 1215 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 1216 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp0_ = g_strdup (self);
+#line 1216 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _result_ = _tmp0_;
+#line 1217 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp1_ = _result_;
+#line 1217 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_strstrip (_tmp1_);
+#line 1218 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       result = _result_;
+#line 1218 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       return result;
+#line 503 "moonshot-local-flat-file-store.c"
+}
+
+
+static void local_flat_file_store_load_id_cards (LocalFlatFileStore* self) {
+       GeeLinkedList* _tmp0_ = NULL;
+       GKeyFile* key_file = NULL;
+       GKeyFile* _tmp1_ = NULL;
+       gchar* path = NULL;
+       gchar* _tmp2_ = NULL;
+       gchar* filename = NULL;
+       const gchar* _tmp3_ = NULL;
+       gchar* _tmp4_ = NULL;
+       MoonshotLogger* _tmp5_ = NULL;
+       const gchar* _tmp6_ = NULL;
+       gchar* _tmp7_ = NULL;
+       gchar* _tmp8_ = NULL;
+       gchar** identities_uris = NULL;
+       GKeyFile* _tmp15_ = NULL;
+       gsize _tmp16_;
+       gchar** _tmp17_ = NULL;
+       gint identities_uris_length1 = 0;
+       gint _identities_uris_size_ = 0;
+       gchar** _tmp18_ = NULL;
+       gint _tmp18__length1 = 0;
+       GError * _inner_error_ = NULL;
+#line 74 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       g_return_if_fail (self != NULL);
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp0_ = self->priv->id_card_list;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       gee_abstract_collection_clear ((GeeAbstractCollection*) _tmp0_);
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp1_ = g_key_file_new ();
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       key_file = _tmp1_;
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp2_ = local_flat_file_store_get_data_dir (self);
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       path = _tmp2_;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp3_ = path;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp4_ = g_build_filename (_tmp3_, LOCAL_FLAT_FILE_STORE_FILE_NAME, NULL);
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       filename = _tmp4_;
+#line 79 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp5_ = local_flat_file_store_logger;
+#line 79 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp6_ = filename;
+#line 79 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp7_ = g_strconcat ("load_id_cards: attempting to load from ", _tmp6_, NULL);
+#line 79 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp8_ = _tmp7_;
+#line 79 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       moonshot_logger_trace (_tmp5_, _tmp8_, NULL);
+#line 79 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _g_free0 (_tmp8_);
+#line 561 "moonshot-local-flat-file-store.c"
+       {
+               GKeyFile* _tmp9_ = NULL;
+               const gchar* _tmp10_ = NULL;
+#line 82 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp9_ = key_file;
+#line 82 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp10_ = filename;
+#line 82 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               g_key_file_load_from_file (_tmp9_, _tmp10_, G_KEY_FILE_NONE, &_inner_error_);
+#line 82 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 573 "moonshot-local-flat-file-store.c"
+                       goto __catch6_g_error;
+               }
+       }
+       goto __finally6;
+       __catch6_g_error:
+       {
+               GError* e = NULL;
+               FILE* _tmp11_ = NULL;
+               const gchar* _tmp12_ = NULL;
+               GError* _tmp13_ = NULL;
+               const gchar* _tmp14_ = NULL;
+#line 81 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               e = _inner_error_;
+#line 81 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _inner_error_ = NULL;
+#line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp11_ = stdout;
+#line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp12_ = filename;
+#line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp13_ = e;
+#line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp14_ = _tmp13_->message;
+#line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               fprintf (_tmp11_, "Error while attempting to load from %s: %s\n", _tmp12_, _tmp14_);
+#line 86 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _g_error_free0 (e);
+#line 86 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _g_free0 (filename);
+#line 86 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _g_free0 (path);
+#line 86 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _g_key_file_unref0 (key_file);
+#line 86 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               return;
+#line 609 "moonshot-local-flat-file-store.c"
+       }
+       __finally6:
+#line 81 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 81 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _g_free0 (filename);
+#line 81 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _g_free0 (path);
+#line 81 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _g_key_file_unref0 (key_file);
+#line 81 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.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 81 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               g_clear_error (&_inner_error_);
+#line 81 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               return;
+#line 626 "moonshot-local-flat-file-store.c"
+       }
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp15_ = key_file;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp17_ = g_key_file_get_groups (_tmp15_, &_tmp16_);
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       identities_uris = _tmp17_;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       identities_uris_length1 = _tmp16_;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _identities_uris_size_ = identities_uris_length1;
+#line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp18_ = identities_uris;
+#line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp18__length1 = identities_uris_length1;
+#line 642 "moonshot-local-flat-file-store.c"
+       {
+               gchar** identity_collection = NULL;
+               gint identity_collection_length1 = 0;
+               gint _identity_collection_size_ = 0;
+               gint identity_it = 0;
+#line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               identity_collection = _tmp18_;
+#line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               identity_collection_length1 = _tmp18__length1;
+#line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               for (identity_it = 0; identity_it < _tmp18__length1; identity_it = identity_it + 1) {
+#line 654 "moonshot-local-flat-file-store.c"
+                       gchar* _tmp19_ = NULL;
+                       gchar* identity = NULL;
+#line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp19_ = g_strdup (identity_collection[identity_it]);
+#line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       identity = _tmp19_;
+#line 661 "moonshot-local-flat-file-store.c"
+                       {
+                               {
+                                       IdCard* id_card = NULL;
+                                       IdCard* _tmp20_ = NULL;
+                                       gchar* _tmp21_ = NULL;
+                                       GKeyFile* _tmp22_ = NULL;
+                                       const gchar* _tmp23_ = NULL;
+                                       gchar* _tmp24_ = NULL;
+                                       IdCard* _tmp25_ = NULL;
+                                       gchar* _tmp26_ = NULL;
+                                       GKeyFile* _tmp27_ = NULL;
+                                       const gchar* _tmp28_ = NULL;
+                                       gchar* _tmp29_ = NULL;
+                                       IdCard* _tmp30_ = NULL;
+                                       gchar* _tmp31_ = NULL;
+                                       GKeyFile* _tmp32_ = NULL;
+                                       const gchar* _tmp33_ = NULL;
+                                       gchar* _tmp34_ = NULL;
+                                       IdCard* _tmp35_ = NULL;
+                                       gchar** _tmp36_ = NULL;
+                                       GKeyFile* _tmp37_ = NULL;
+                                       const gchar* _tmp38_ = NULL;
+                                       gsize _tmp39_;
+                                       gchar** _tmp40_ = NULL;
+                                       gint _tmp36__length1 = 0;
+                                       gint __tmp36__size_ = 0;
+                                       IdCard* _tmp41_ = NULL;
+                                       gchar* _tmp42_ = NULL;
+                                       GKeyFile* _tmp43_ = NULL;
+                                       const gchar* _tmp44_ = NULL;
+                                       gchar* _tmp45_ = NULL;
+                                       IdCard* _tmp46_ = NULL;
+                                       gboolean _tmp47_ = FALSE;
+                                       GKeyFile* _tmp48_ = NULL;
+                                       const gchar* _tmp49_ = NULL;
+                                       gboolean _tmp50_ = FALSE;
+                                       gboolean _tmp66_ = FALSE;
+                                       gboolean _tmp67_ = FALSE;
+                                       GKeyFile* _tmp68_ = NULL;
+                                       const gchar* _tmp69_ = NULL;
+                                       gboolean _tmp70_ = FALSE;
+                                       gchar* _tmp105_ = NULL;
+                                       GKeyFile* _tmp106_ = NULL;
+                                       const gchar* _tmp107_ = NULL;
+                                       gchar* _tmp108_ = NULL;
+                                       gchar* ca_cert = NULL;
+                                       gchar* _tmp109_ = NULL;
+                                       gchar* _tmp110_ = NULL;
+                                       gchar* _tmp111_ = NULL;
+                                       gchar* _tmp112_ = NULL;
+                                       gchar* server_cert = NULL;
+                                       GKeyFile* _tmp113_ = NULL;
+                                       const gchar* _tmp114_ = NULL;
+                                       gchar* _tmp115_ = NULL;
+                                       gchar* subject = NULL;
+                                       GKeyFile* _tmp116_ = NULL;
+                                       const gchar* _tmp117_ = NULL;
+                                       gchar* _tmp118_ = NULL;
+                                       gchar* subject_alt = NULL;
+                                       GKeyFile* _tmp119_ = NULL;
+                                       const gchar* _tmp120_ = NULL;
+                                       gchar* _tmp121_ = NULL;
+                                       TrustAnchor* ta = NULL;
+                                       const gchar* _tmp122_ = NULL;
+                                       const gchar* _tmp123_ = NULL;
+                                       const gchar* _tmp124_ = NULL;
+                                       const gchar* _tmp125_ = NULL;
+                                       TrustAnchor* _tmp126_ = NULL;
+                                       gchar* ta_datetime_added = NULL;
+                                       const gchar* _tmp127_ = NULL;
+                                       GKeyFile* _tmp128_ = NULL;
+                                       gchar* _tmp129_ = NULL;
+                                       const gchar* _tmp130_ = NULL;
+                                       IdCard* _tmp133_ = NULL;
+                                       TrustAnchor* _tmp134_ = NULL;
+                                       GeeLinkedList* _tmp135_ = NULL;
+                                       IdCard* _tmp136_ = NULL;
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp20_ = id_card_new ();
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       id_card = _tmp20_;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp22_ = key_file;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp23_ = identity;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp24_ = g_key_file_get_string (_tmp22_, _tmp23_, "Issuer", &_inner_error_);
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp21_ = _tmp24_;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_object_unref0 (id_card);
+#line 755 "moonshot-local-flat-file-store.c"
+                                               goto __catch7_g_error;
+                                       }
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp25_ = id_card;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       id_card_set_issuer (_tmp25_, _tmp21_);
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp27_ = key_file;
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp28_ = identity;
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp29_ = g_key_file_get_string (_tmp27_, _tmp28_, "Username", &_inner_error_);
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp26_ = _tmp29_;
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp21_);
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_object_unref0 (id_card);
+#line 776 "moonshot-local-flat-file-store.c"
+                                               goto __catch7_g_error;
+                                       }
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp30_ = id_card;
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       id_card_set_username (_tmp30_, _tmp26_);
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp32_ = key_file;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp33_ = identity;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp34_ = g_key_file_get_string (_tmp32_, _tmp33_, "Password", &_inner_error_);
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp31_ = _tmp34_;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp26_);
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp21_);
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_object_unref0 (id_card);
+#line 799 "moonshot-local-flat-file-store.c"
+                                               goto __catch7_g_error;
+                                       }
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp35_ = id_card;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       id_card_set_password (_tmp35_, _tmp31_);
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp37_ = key_file;
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp38_ = identity;
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp40_ = g_key_file_get_string_list (_tmp37_, _tmp38_, "Services", &_tmp39_, &_inner_error_);
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp36_ = _tmp40_;
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp36__length1 = _tmp39_;
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       __tmp36__size_ = _tmp36__length1;
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp31_);
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp26_);
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp21_);
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_object_unref0 (id_card);
+#line 828 "moonshot-local-flat-file-store.c"
+                                               goto __catch7_g_error;
+                                       }
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp41_ = id_card;
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       id_card_update_services (_tmp41_, _tmp36_, _tmp36__length1);
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp43_ = key_file;
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp44_ = identity;
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp45_ = g_key_file_get_string (_tmp43_, _tmp44_, "DisplayName", &_inner_error_);
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp42_ = _tmp45_;
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp36_ = (_vala_array_free (_tmp36_, _tmp36__length1, (GDestroyNotify) g_free), NULL);
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp31_);
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp26_);
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp21_);
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_object_unref0 (id_card);
+#line 855 "moonshot-local-flat-file-store.c"
+                                               goto __catch7_g_error;
+                                       }
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp46_ = id_card;
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       id_card_set_display_name (_tmp46_, _tmp42_);
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp48_ = key_file;
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp49_ = identity;
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp50_ = g_key_file_has_key (_tmp48_, _tmp49_, "StorePassword", &_inner_error_);
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp47_ = _tmp50_;
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp42_);
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp36_ = (_vala_array_free (_tmp36_, _tmp36__length1, (GDestroyNotify) g_free), NULL);
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp31_);
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp26_);
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp21_);
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_object_unref0 (id_card);
+#line 884 "moonshot-local-flat-file-store.c"
+                                               goto __catch7_g_error;
+                                       }
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       if (_tmp47_) {
+#line 889 "moonshot-local-flat-file-store.c"
+                                               gchar* _tmp51_ = NULL;
+                                               GKeyFile* _tmp52_ = NULL;
+                                               const gchar* _tmp53_ = NULL;
+                                               gchar* _tmp54_ = NULL;
+                                               IdCard* _tmp55_ = NULL;
+                                               gchar* _tmp56_ = NULL;
+                                               gchar* _tmp57_ = NULL;
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp52_ = key_file;
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp53_ = identity;
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp54_ = g_key_file_get_string (_tmp52_, _tmp53_, "StorePassword", &_inner_error_);
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp51_ = _tmp54_;
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _g_free0 (_tmp42_);
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _tmp36_ = (_vala_array_free (_tmp36_, _tmp36__length1, (GDestroyNotify) g_free), NULL);
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _g_free0 (_tmp31_);
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _g_free0 (_tmp26_);
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _g_free0 (_tmp21_);
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _g_object_unref0 (id_card);
+#line 919 "moonshot-local-flat-file-store.c"
+                                                       goto __catch7_g_error;
+                                               }
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp55_ = id_card;
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp56_ = _tmp51_;
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp51_ = NULL;
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp57_ = _tmp56_;
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               id_card_set_store_password (_tmp55_, g_strcmp0 (_tmp57_, "yes") == 0);
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp57_);
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp51_);
+#line 936 "moonshot-local-flat-file-store.c"
+                                       } else {
+                                               gboolean _tmp58_ = FALSE;
+                                               IdCard* _tmp59_ = NULL;
+                                               const gchar* _tmp60_ = NULL;
+                                               const gchar* _tmp61_ = NULL;
+                                               IdCard* _tmp65_ = NULL;
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp59_ = id_card;
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp60_ = id_card_get_password (_tmp59_);
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp61_ = _tmp60_;
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               if (_tmp61_ != NULL) {
+#line 951 "moonshot-local-flat-file-store.c"
+                                                       IdCard* _tmp62_ = NULL;
+                                                       const gchar* _tmp63_ = NULL;
+                                                       const gchar* _tmp64_ = NULL;
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _tmp62_ = id_card;
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _tmp63_ = id_card_get_password (_tmp62_);
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _tmp64_ = _tmp63_;
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _tmp58_ = g_strcmp0 (_tmp64_, "") != 0;
+#line 963 "moonshot-local-flat-file-store.c"
+                                               } else {
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _tmp58_ = FALSE;
+#line 967 "moonshot-local-flat-file-store.c"
+                                               }
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp65_ = id_card;
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               id_card_set_store_password (_tmp65_, _tmp58_);
+#line 973 "moonshot-local-flat-file-store.c"
+                                       }
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp68_ = key_file;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp69_ = identity;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp70_ = g_key_file_has_key (_tmp68_, _tmp69_, "Rules-Patterns", &_inner_error_);
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp67_ = _tmp70_;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp42_);
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp36_ = (_vala_array_free (_tmp36_, _tmp36__length1, (GDestroyNotify) g_free), NULL);
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp31_);
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp26_);
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp21_);
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_object_unref0 (id_card);
+#line 997 "moonshot-local-flat-file-store.c"
+                                               goto __catch7_g_error;
+                                       }
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       if (_tmp67_) {
+#line 1002 "moonshot-local-flat-file-store.c"
+                                               gboolean _tmp71_ = FALSE;
+                                               GKeyFile* _tmp72_ = NULL;
+                                               const gchar* _tmp73_ = NULL;
+                                               gboolean _tmp74_ = FALSE;
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp72_ = key_file;
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp73_ = identity;
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp74_ = g_key_file_has_key (_tmp72_, _tmp73_, "Rules-AlwaysConfirm", &_inner_error_);
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp71_ = _tmp74_;
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _g_free0 (_tmp42_);
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _tmp36_ = (_vala_array_free (_tmp36_, _tmp36__length1, (GDestroyNotify) g_free), NULL);
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _g_free0 (_tmp31_);
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _g_free0 (_tmp26_);
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _g_free0 (_tmp21_);
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _g_object_unref0 (id_card);
+#line 1029 "moonshot-local-flat-file-store.c"
+                                                       goto __catch7_g_error;
+                                               }
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp66_ = _tmp71_;
+#line 1034 "moonshot-local-flat-file-store.c"
+                                       } else {
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp66_ = FALSE;
+#line 1038 "moonshot-local-flat-file-store.c"
+                                       }
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       if (_tmp66_) {
+#line 1042 "moonshot-local-flat-file-store.c"
+                                               gchar** rules_patterns = NULL;
+                                               GKeyFile* _tmp75_ = NULL;
+                                               const gchar* _tmp76_ = NULL;
+                                               gsize _tmp77_;
+                                               gchar** _tmp78_ = NULL;
+                                               gint rules_patterns_length1 = 0;
+                                               gint _rules_patterns_size_ = 0;
+                                               gchar** rules_always_conf = NULL;
+                                               GKeyFile* _tmp79_ = NULL;
+                                               const gchar* _tmp80_ = NULL;
+                                               gsize _tmp81_;
+                                               gchar** _tmp82_ = NULL;
+                                               gint rules_always_conf_length1 = 0;
+                                               gint _rules_always_conf_size_ = 0;
+                                               gchar** _tmp83_ = NULL;
+                                               gint _tmp83__length1 = 0;
+                                               gchar** _tmp84_ = NULL;
+                                               gint _tmp84__length1 = 0;
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp75_ = key_file;
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp76_ = identity;
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp78_ = g_key_file_get_string_list (_tmp75_, _tmp76_, "Rules-Patterns", &_tmp77_, &_inner_error_);
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               rules_patterns = _tmp78_;
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               rules_patterns_length1 = _tmp77_;
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _rules_patterns_size_ = rules_patterns_length1;
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _g_free0 (_tmp42_);
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _tmp36_ = (_vala_array_free (_tmp36_, _tmp36__length1, (GDestroyNotify) g_free), NULL);
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _g_free0 (_tmp31_);
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _g_free0 (_tmp26_);
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _g_free0 (_tmp21_);
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _g_object_unref0 (id_card);
+#line 1087 "moonshot-local-flat-file-store.c"
+                                                       goto __catch7_g_error;
+                                               }
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp79_ = key_file;
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp80_ = identity;
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp82_ = g_key_file_get_string_list (_tmp79_, _tmp80_, "Rules-AlwaysConfirm", &_tmp81_, &_inner_error_);
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               rules_always_conf = _tmp82_;
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               rules_always_conf_length1 = _tmp81_;
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _rules_always_conf_size_ = rules_always_conf_length1;
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 108 "/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 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _g_free0 (_tmp42_);
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _tmp36_ = (_vala_array_free (_tmp36_, _tmp36__length1, (GDestroyNotify) g_free), NULL);
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _g_free0 (_tmp31_);
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _g_free0 (_tmp26_);
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _g_free0 (_tmp21_);
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _g_object_unref0 (id_card);
+#line 1118 "moonshot-local-flat-file-store.c"
+                                                       goto __catch7_g_error;
+                                               }
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp83_ = rules_patterns;
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp83__length1 = rules_patterns_length1;
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp84_ = rules_always_conf;
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp84__length1 = rules_always_conf_length1;
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               if (_tmp83__length1 == _tmp84__length1) {
+#line 1131 "moonshot-local-flat-file-store.c"
+                                                       Rule* rules = NULL;
+                                                       gchar** _tmp85_ = NULL;
+                                                       gint _tmp85__length1 = 0;
+                                                       Rule* _tmp86_ = NULL;
+                                                       gint rules_length1 = 0;
+                                                       gint _rules_size_ = 0;
+                                                       IdCard* _tmp103_ = NULL;
+                                                       Rule* _tmp104_ = NULL;
+                                                       gint _tmp104__length1 = 0;
+#line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _tmp85_ = rules_patterns;
+#line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _tmp85__length1 = rules_patterns_length1;
+#line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _tmp86_ = g_new0 (Rule, _tmp85__length1);
+#line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       rules = _tmp86_;
+#line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       rules_length1 = _tmp85__length1;
+#line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _rules_size_ = rules_length1;
+#line 1153 "moonshot-local-flat-file-store.c"
+                                                       {
+                                                               gint i = 0;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                               i = 0;
+#line 1158 "moonshot-local-flat-file-store.c"
+                                                               {
+                                                                       gboolean _tmp87_ = FALSE;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                                       _tmp87_ = TRUE;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                                       while (TRUE) {
+#line 1165 "moonshot-local-flat-file-store.c"
+                                                                               gint _tmp89_ = 0;
+                                                                               gchar** _tmp90_ = NULL;
+                                                                               gint _tmp90__length1 = 0;
+                                                                               Rule* _tmp91_ = NULL;
+                                                                               gint _tmp91__length1 = 0;
+                                                                               gint _tmp92_ = 0;
+                                                                               gchar** _tmp93_ = NULL;
+                                                                               gint _tmp93__length1 = 0;
+                                                                               gint _tmp94_ = 0;
+                                                                               const gchar* _tmp95_ = NULL;
+                                                                               gchar* _tmp96_ = NULL;
+                                                                               gchar** _tmp97_ = NULL;
+                                                                               gint _tmp97__length1 = 0;
+                                                                               gint _tmp98_ = 0;
+                                                                               const gchar* _tmp99_ = NULL;
+                                                                               gchar* _tmp100_ = NULL;
+                                                                               Rule _tmp101_ = {0};
+                                                                               Rule _tmp102_ = {0};
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                                               if (!_tmp87_) {
+#line 1186 "moonshot-local-flat-file-store.c"
+                                                                                       gint _tmp88_ = 0;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                                                       _tmp88_ = i;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                                                       i = _tmp88_ + 1;
+#line 1192 "moonshot-local-flat-file-store.c"
+                                                                               }
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                                               _tmp87_ = FALSE;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                                               _tmp89_ = i;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                                               _tmp90_ = rules_patterns;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                                               _tmp90__length1 = rules_patterns_length1;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                                               if (!(_tmp89_ < _tmp90__length1)) {
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                                                       break;
+#line 1206 "moonshot-local-flat-file-store.c"
+                                                                               }
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                                               _tmp91_ = rules;
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                                               _tmp91__length1 = rules_length1;
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                                               _tmp92_ = i;
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                                               _tmp93_ = rules_patterns;
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                                               _tmp93__length1 = rules_patterns_length1;
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                                               _tmp94_ = i;
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                                               _tmp95_ = _tmp93_[_tmp94_];
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                                               _tmp96_ = g_strdup (_tmp95_);
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                                               _tmp97_ = rules_always_conf;
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                                               _tmp97__length1 = rules_always_conf_length1;
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                                               _tmp98_ = i;
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                                               _tmp99_ = _tmp97_[_tmp98_];
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                                               _tmp100_ = g_strdup (_tmp99_);
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                                               _g_free0 (_tmp101_.pattern);
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                                               _tmp101_.pattern = _tmp96_;
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                                               _g_free0 (_tmp101_.always_confirm);
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                                               _tmp101_.always_confirm = _tmp100_;
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                                               rule_destroy (&_tmp91_[_tmp92_]);
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                                               _tmp91_[_tmp92_] = _tmp101_;
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                                               _tmp102_ = _tmp91_[_tmp92_];
+#line 1248 "moonshot-local-flat-file-store.c"
+                                                                       }
+                                                               }
+                                                       }
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _tmp103_ = id_card;
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _tmp104_ = rules;
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _tmp104__length1 = rules_length1;
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       id_card_set_rules (_tmp103_, _tmp104_, _tmp104__length1);
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       rules = (_vala_Rule_array_free (rules, rules_length1), NULL);
+#line 1262 "moonshot-local-flat-file-store.c"
+                                               }
+#line 105 "/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 105 "/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 1268 "moonshot-local-flat-file-store.c"
+                                       }
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp106_ = key_file;
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp107_ = identity;
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp108_ = g_key_file_get_string (_tmp106_, _tmp107_, "CA-Cert", &_inner_error_);
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp105_ = _tmp108_;
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp42_);
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp36_ = (_vala_array_free (_tmp36_, _tmp36__length1, (GDestroyNotify) g_free), NULL);
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp31_);
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp26_);
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp21_);
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_object_unref0 (id_card);
+#line 1292 "moonshot-local-flat-file-store.c"
+                                               goto __catch7_g_error;
+                                       }
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp109_ = _tmp105_;
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp105_ = NULL;
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp110_ = _tmp109_;
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp111_ = string_strip (_tmp110_);
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp112_ = _tmp111_;
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _g_free0 (_tmp110_);
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       ca_cert = _tmp112_;
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp113_ = key_file;
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp114_ = identity;
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp115_ = g_key_file_get_string (_tmp113_, _tmp114_, "ServerCert", &_inner_error_);
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       server_cert = _tmp115_;
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (ca_cert);
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp105_);
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp42_);
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp36_ = (_vala_array_free (_tmp36_, _tmp36__length1, (GDestroyNotify) g_free), NULL);
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp31_);
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp26_);
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp21_);
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_object_unref0 (id_card);
+#line 1335 "moonshot-local-flat-file-store.c"
+                                               goto __catch7_g_error;
+                                       }
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp116_ = key_file;
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp117_ = identity;
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp118_ = g_key_file_get_string (_tmp116_, _tmp117_, "Subject", &_inner_error_);
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       subject = _tmp118_;
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (server_cert);
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (ca_cert);
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp105_);
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp42_);
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp36_ = (_vala_array_free (_tmp36_, _tmp36__length1, (GDestroyNotify) g_free), NULL);
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp31_);
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp26_);
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp21_);
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_object_unref0 (id_card);
+#line 1366 "moonshot-local-flat-file-store.c"
+                                               goto __catch7_g_error;
+                                       }
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp119_ = key_file;
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp120_ = identity;
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp121_ = g_key_file_get_string (_tmp119_, _tmp120_, "SubjectAlt", &_inner_error_);
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       subject_alt = _tmp121_;
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (subject);
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (server_cert);
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (ca_cert);
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp105_);
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp42_);
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp36_ = (_vala_array_free (_tmp36_, _tmp36__length1, (GDestroyNotify) g_free), NULL);
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp31_);
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp26_);
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp21_);
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_object_unref0 (id_card);
+#line 1399 "moonshot-local-flat-file-store.c"
+                                               goto __catch7_g_error;
+                                       }
+#line 124 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp122_ = ca_cert;
+#line 124 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp123_ = server_cert;
+#line 124 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp124_ = subject;
+#line 124 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp125_ = subject_alt;
+#line 124 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp126_ = trust_anchor_new (_tmp122_, _tmp123_, _tmp124_, _tmp125_);
+#line 124 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       ta = _tmp126_;
+#line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp127_ = identity;
+#line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp128_ = key_file;
+#line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp129_ = get_string_setting (_tmp127_, "TA_DateTime_Added", "", _tmp128_);
+#line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       ta_datetime_added = _tmp129_;
+#line 126 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp130_ = ta_datetime_added;
+#line 126 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       if (g_strcmp0 (_tmp130_, "") != 0) {
+#line 1426 "moonshot-local-flat-file-store.c"
+                                               TrustAnchor* _tmp131_ = NULL;
+                                               const gchar* _tmp132_ = NULL;
+#line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp131_ = ta;
+#line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp132_ = ta_datetime_added;
+#line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               trust_anchor_set_datetime_added (_tmp131_, _tmp132_);
+#line 1435 "moonshot-local-flat-file-store.c"
+                                       }
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp133_ = id_card;
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp134_ = ta;
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       id_card_set_trust_anchor_from_store (_tmp133_, _tmp134_);
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp135_ = self->priv->id_card_list;
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp136_ = id_card;
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       gee_abstract_collection_add ((GeeAbstractCollection*) _tmp135_, _tmp136_);
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _g_free0 (ta_datetime_added);
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _g_object_unref0 (ta);
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _g_free0 (subject_alt);
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _g_free0 (subject);
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _g_free0 (server_cert);
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _g_free0 (ca_cert);
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _g_free0 (_tmp105_);
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _g_free0 (_tmp42_);
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp36_ = (_vala_array_free (_tmp36_, _tmp36__length1, (GDestroyNotify) g_free), NULL);
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _g_free0 (_tmp31_);
+#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"
+                                       _g_free0 (_tmp21_);
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _g_object_unref0 (id_card);
+#line 1475 "moonshot-local-flat-file-store.c"
+                               }
+                               goto __finally7;
+                               __catch7_g_error:
+                               {
+                                       GError* e = NULL;
+                                       MoonshotLogger* _tmp137_ = NULL;
+                                       const gchar* _tmp138_ = NULL;
+                                       GError* _tmp139_ = NULL;
+                                       const gchar* _tmp140_ = NULL;
+                                       gchar* _tmp141_ = NULL;
+                                       gchar* _tmp142_ = NULL;
+                                       FILE* _tmp143_ = NULL;
+                                       const gchar* _tmp144_ = NULL;
+                                       GError* _tmp145_ = NULL;
+                                       const gchar* _tmp146_ = NULL;
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       e = _inner_error_;
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _inner_error_ = NULL;
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp137_ = local_flat_file_store_logger;
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp138_ = filename;
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp139_ = e;
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp140_ = _tmp139_->message;
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp141_ = g_strdup_printf ("load_id_cards: Error while loading keyfile %s: %s\n", _tmp138_, _tmp140_);
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp142_ = _tmp141_;
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       moonshot_logger_error (_tmp137_, _tmp142_, NULL);
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _g_free0 (_tmp142_);
+#line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp143_ = stdout;
+#line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp144_ = filename;
+#line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp145_ = e;
+#line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp146_ = _tmp145_->message;
+#line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       fprintf (_tmp143_, "Error while attempting to load from %s: %s\n", _tmp144_, _tmp146_);
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _g_error_free0 (e);
+#line 1523 "moonshot-local-flat-file-store.c"
+                               }
+                               __finally7:
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _g_free0 (identity);
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       identities_uris = (_vala_array_free (identities_uris, identities_uris_length1, (GDestroyNotify) g_free), NULL);
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _g_free0 (filename);
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _g_free0 (path);
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _g_key_file_unref0 (key_file);
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.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 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       g_clear_error (&_inner_error_);
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       return;
+#line 1544 "moonshot-local-flat-file-store.c"
+                               }
+#line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _g_free0 (identity);
+#line 1548 "moonshot-local-flat-file-store.c"
+                       }
+               }
+       }
+#line 74 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       identities_uris = (_vala_array_free (identities_uris, identities_uris_length1, (GDestroyNotify) g_free), NULL);
+#line 74 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _g_free0 (filename);
+#line 74 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _g_free0 (path);
+#line 74 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _g_key_file_unref0 (key_file);
+#line 1560 "moonshot-local-flat-file-store.c"
+}
+
+
+static gchar* local_flat_file_store_get_data_dir (LocalFlatFileStore* self) {
+       gchar* result = NULL;
+       gchar* path = NULL;
+       const gchar* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+       const gchar* _tmp2_ = NULL;
+       gboolean _tmp3_ = FALSE;
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp0_ = g_get_user_data_dir ();
+#line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp1_ = g_build_filename (_tmp0_, PACKAGE_TARNAME, NULL);
+#line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _g_free0 (path);
+#line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       path = _tmp1_;
+#line 144 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp2_ = path;
+#line 144 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp3_ = g_file_test (_tmp2_, G_FILE_TEST_EXISTS);
+#line 144 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       if (!_tmp3_) {
+#line 1587 "moonshot-local-flat-file-store.c"
+               const gchar* _tmp4_ = NULL;
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp4_ = path;
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               g_mkdir_with_parents (_tmp4_, 0700);
+#line 1593 "moonshot-local-flat-file-store.c"
+       }
+#line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       result = path;
+#line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       return result;
+#line 1599 "moonshot-local-flat-file-store.c"
+}
+
+
+static Rule* _vala_array_dup1 (Rule* self, int length) {
+       Rule* result;
+       int i;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       result = g_new0 (Rule, length);
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       for (i = 0; i < length; i++) {
+#line 1610 "moonshot-local-flat-file-store.c"
+               Rule _tmp0_ = {0};
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               rule_copy (&self[i], &_tmp0_);
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               result[i] = _tmp0_;
+#line 1616 "moonshot-local-flat-file-store.c"
+       }
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       return result;
+#line 1620 "moonshot-local-flat-file-store.c"
+}
+
+
+static guint8* string_get_data (const gchar* self, int* result_length1) {
+       guint8* result;
+       guint8* res = NULL;
+       gint res_length1 = 0;
+       gint _res_size_ = 0;
+       gint _tmp0_ = 0;
+       gint _tmp1_ = 0;
+       gint _tmp2_ = 0;
+       guint8* _tmp3_ = NULL;
+       gint _tmp3__length1 = 0;
+       guint8* _tmp4_ = NULL;
+       gint _tmp4__length1 = 0;
+#line 1406 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 1407 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       res = (guint8*) self;
+#line 1407 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       res_length1 = -1;
+#line 1407 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _res_size_ = res_length1;
+#line 1408 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp0_ = strlen (self);
+#line 1408 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp1_ = _tmp0_;
+#line 1408 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       res_length1 = (gint) _tmp1_;
+#line 1408 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp2_ = res_length1;
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp3_ = res;
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp3__length1 = res_length1;
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp4_ = _tmp3_;
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp4__length1 = _tmp3__length1;
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       if (result_length1) {
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               *result_length1 = _tmp4__length1;
+#line 1664 "moonshot-local-flat-file-store.c"
+       }
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       result = _tmp4_;
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       return result;
+#line 1670 "moonshot-local-flat-file-store.c"
+}
+
+
+static void local_flat_file_store_real_store_id_cards (IIdentityCardStore* base) {
+       LocalFlatFileStore * self;
+       GKeyFile* key_file = NULL;
+       GKeyFile* _tmp0_ = NULL;
+       gchar* text = NULL;
+       GKeyFile* _tmp192_ = NULL;
+       gchar* _tmp193_ = NULL;
+       GError * _inner_error_ = NULL;
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       self = (LocalFlatFileStore*) base;
+#line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp0_ = g_key_file_new ();
+#line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       key_file = _tmp0_;
+#line 1688 "moonshot-local-flat-file-store.c"
+       {
+               GeeLinkedList* _id_card_list = NULL;
+               GeeLinkedList* _tmp1_ = NULL;
+               GeeLinkedList* _tmp2_ = NULL;
+               gint _id_card_size = 0;
+               GeeLinkedList* _tmp3_ = NULL;
+               gint _tmp4_ = 0;
+               gint _tmp5_ = 0;
+               gint _id_card_index = 0;
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp1_ = self->priv->id_card_list;
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp2_ = _g_object_ref0 (_tmp1_);
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _id_card_list = _tmp2_;
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp3_ = _id_card_list;
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp4_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp3_);
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp5_ = _tmp4_;
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _id_card_size = _tmp5_;
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _id_card_index = -1;
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               while (TRUE) {
+#line 1716 "moonshot-local-flat-file-store.c"
+                       gint _tmp6_ = 0;
+                       gint _tmp7_ = 0;
+                       gint _tmp8_ = 0;
+                       IdCard* id_card = NULL;
+                       GeeLinkedList* _tmp9_ = NULL;
+                       gint _tmp10_ = 0;
+                       gpointer _tmp11_ = NULL;
+                       MoonshotLogger* _tmp12_ = NULL;
+                       IdCard* _tmp13_ = NULL;
+                       const gchar* _tmp14_ = NULL;
+                       const gchar* _tmp15_ = NULL;
+                       const gchar* _tmp16_ = NULL;
+                       gchar* _tmp17_ = NULL;
+                       gchar* _tmp18_ = NULL;
+                       Rule* rules = NULL;
+                       IdCard* _tmp19_ = NULL;
+                       Rule* _tmp20_ = NULL;
+                       gint _tmp20__length1 = 0;
+                       Rule* _tmp21_ = NULL;
+                       gint _tmp21__length1 = 0;
+                       Rule* _tmp22_ = NULL;
+                       gint _tmp22__length1 = 0;
+                       gint rules_length1 = 0;
+                       gint _rules_size_ = 0;
+                       gchar** rules_patterns = NULL;
+                       Rule* _tmp23_ = NULL;
+                       gint _tmp23__length1 = 0;
+                       gchar** _tmp24_ = NULL;
+                       gint rules_patterns_length1 = 0;
+                       gint _rules_patterns_size_ = 0;
+                       gchar** rules_always_conf = NULL;
+                       Rule* _tmp25_ = NULL;
+                       gint _tmp25__length1 = 0;
+                       gchar** _tmp26_ = NULL;
+                       gint rules_always_conf_length1 = 0;
+                       gint _rules_always_conf_size_ = 0;
+                       const gchar* _tmp47_ = NULL;
+                       IdCard* _tmp48_ = NULL;
+                       const gchar* _tmp49_ = NULL;
+                       const gchar* _tmp50_ = NULL;
+                       GKeyFile* _tmp51_ = NULL;
+                       IdCard* _tmp52_ = NULL;
+                       const gchar* _tmp53_ = NULL;
+                       const gchar* _tmp54_ = NULL;
+                       const gchar* _tmp55_ = NULL;
+                       IdCard* _tmp56_ = NULL;
+                       const gchar* _tmp57_ = NULL;
+                       const gchar* _tmp58_ = NULL;
+                       GKeyFile* _tmp59_ = NULL;
+                       IdCard* _tmp60_ = NULL;
+                       const gchar* _tmp61_ = NULL;
+                       const gchar* _tmp62_ = NULL;
+                       const gchar* _tmp63_ = NULL;
+                       IdCard* _tmp64_ = NULL;
+                       const gchar* _tmp65_ = NULL;
+                       const gchar* _tmp66_ = NULL;
+                       GKeyFile* _tmp67_ = NULL;
+                       IdCard* _tmp68_ = NULL;
+                       const gchar* _tmp69_ = NULL;
+                       const gchar* _tmp70_ = NULL;
+                       gboolean _tmp71_ = FALSE;
+                       IdCard* _tmp72_ = NULL;
+                       gboolean _tmp73_ = FALSE;
+                       gboolean _tmp74_ = FALSE;
+                       gchar** svcs = NULL;
+                       IdCard* _tmp89_ = NULL;
+                       GeeArrayList* _tmp90_ = NULL;
+                       GeeArrayList* _tmp91_ = NULL;
+                       gint _tmp92_ = 0;
+                       gint _tmp93_ = 0;
+                       gchar** _tmp94_ = NULL;
+                       gint svcs_length1 = 0;
+                       gint _svcs_size_ = 0;
+                       GKeyFile* _tmp111_ = NULL;
+                       IdCard* _tmp112_ = NULL;
+                       const gchar* _tmp113_ = NULL;
+                       const gchar* _tmp114_ = NULL;
+                       gchar** _tmp115_ = NULL;
+                       gint _tmp115__length1 = 0;
+                       Rule* _tmp116_ = NULL;
+                       gint _tmp116__length1 = 0;
+                       const gchar* _tmp127_ = NULL;
+                       IdCard* _tmp128_ = NULL;
+                       gboolean _tmp129_ = FALSE;
+                       gboolean _tmp130_ = FALSE;
+                       GKeyFile* _tmp131_ = NULL;
+                       IdCard* _tmp132_ = NULL;
+                       const gchar* _tmp133_ = NULL;
+                       const gchar* _tmp134_ = NULL;
+                       GKeyFile* _tmp135_ = NULL;
+                       IdCard* _tmp136_ = NULL;
+                       const gchar* _tmp137_ = NULL;
+                       const gchar* _tmp138_ = NULL;
+                       IdCard* _tmp139_ = NULL;
+                       TrustAnchor* _tmp140_ = NULL;
+                       TrustAnchor* _tmp141_ = NULL;
+                       const gchar* _tmp142_ = NULL;
+                       const gchar* _tmp143_ = NULL;
+                       GKeyFile* _tmp144_ = NULL;
+                       IdCard* _tmp145_ = NULL;
+                       const gchar* _tmp146_ = NULL;
+                       const gchar* _tmp147_ = NULL;
+                       IdCard* _tmp148_ = NULL;
+                       TrustAnchor* _tmp149_ = NULL;
+                       TrustAnchor* _tmp150_ = NULL;
+                       const gchar* _tmp151_ = NULL;
+                       const gchar* _tmp152_ = NULL;
+                       GKeyFile* _tmp153_ = NULL;
+                       IdCard* _tmp154_ = NULL;
+                       const gchar* _tmp155_ = NULL;
+                       const gchar* _tmp156_ = NULL;
+                       IdCard* _tmp157_ = NULL;
+                       TrustAnchor* _tmp158_ = NULL;
+                       TrustAnchor* _tmp159_ = NULL;
+                       const gchar* _tmp160_ = NULL;
+                       const gchar* _tmp161_ = NULL;
+                       GKeyFile* _tmp162_ = NULL;
+                       IdCard* _tmp163_ = NULL;
+                       const gchar* _tmp164_ = NULL;
+                       const gchar* _tmp165_ = NULL;
+                       IdCard* _tmp166_ = NULL;
+                       TrustAnchor* _tmp167_ = NULL;
+                       TrustAnchor* _tmp168_ = NULL;
+                       const gchar* _tmp169_ = NULL;
+                       const gchar* _tmp170_ = NULL;
+                       IdCard* _tmp171_ = NULL;
+                       TrustAnchor* _tmp172_ = NULL;
+                       TrustAnchor* _tmp173_ = NULL;
+                       const gchar* _tmp174_ = NULL;
+                       const gchar* _tmp175_ = NULL;
+                       MoonshotLogger* _tmp185_ = NULL;
+                       IdCard* _tmp186_ = NULL;
+                       const gchar* _tmp187_ = NULL;
+                       const gchar* _tmp188_ = NULL;
+                       const gchar* _tmp189_ = NULL;
+                       gchar* _tmp190_ = NULL;
+                       gchar* _tmp191_ = NULL;
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp6_ = _id_card_index;
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _id_card_index = _tmp6_ + 1;
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp7_ = _id_card_index;
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp8_ = _id_card_size;
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       if (!(_tmp7_ < _tmp8_)) {
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               break;
+#line 1866 "moonshot-local-flat-file-store.c"
+                       }
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp9_ = _id_card_list;
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp10_ = _id_card_index;
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp11_ = gee_abstract_list_get ((GeeAbstractList*) _tmp9_, _tmp10_);
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       id_card = (IdCard*) _tmp11_;
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp12_ = local_flat_file_store_logger;
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp13_ = id_card;
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp14_ = id_card_get_display_name (_tmp13_);
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp15_ = _tmp14_;
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp16_ = string_to_string (_tmp15_);
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp17_ = g_strconcat ("store_id_cards: Storing '", _tmp16_, "'", NULL);
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp18_ = _tmp17_;
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       moonshot_logger_trace (_tmp12_, _tmp18_, NULL);
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _g_free0 (_tmp18_);
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp19_ = id_card;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp20_ = id_card_get_rules (_tmp19_, &_tmp20__length1);
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp21_ = _tmp20_;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp21__length1 = _tmp20__length1;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp22_ = (_tmp21_ != NULL) ? _vala_array_dup1 (_tmp21_, _tmp21__length1) : ((gpointer) _tmp21_);
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp22__length1 = _tmp21__length1;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       rules = _tmp22_;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       rules_length1 = _tmp22__length1;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _rules_size_ = rules_length1;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp23_ = rules;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp23__length1 = rules_length1;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp24_ = g_new0 (gchar*, _tmp23__length1 + 1);
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       rules_patterns = _tmp24_;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       rules_patterns_length1 = _tmp23__length1;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _rules_patterns_size_ = rules_patterns_length1;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp25_ = rules;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp25__length1 = rules_length1;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp26_ = g_new0 (gchar*, _tmp25__length1 + 1);
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       rules_always_conf = _tmp26_;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       rules_always_conf_length1 = _tmp25__length1;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _rules_always_conf_size_ = rules_always_conf_length1;
+#line 1936 "moonshot-local-flat-file-store.c"
+                       {
+                               gint i = 0;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               i = 0;
+#line 1941 "moonshot-local-flat-file-store.c"
+                               {
+                                       gboolean _tmp27_ = FALSE;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp27_ = TRUE;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       while (TRUE) {
+#line 1948 "moonshot-local-flat-file-store.c"
+                                               gint _tmp29_ = 0;
+                                               Rule* _tmp30_ = NULL;
+                                               gint _tmp30__length1 = 0;
+                                               gchar** _tmp31_ = NULL;
+                                               gint _tmp31__length1 = 0;
+                                               gint _tmp32_ = 0;
+                                               Rule* _tmp33_ = NULL;
+                                               gint _tmp33__length1 = 0;
+                                               gint _tmp34_ = 0;
+                                               Rule _tmp35_ = {0};
+                                               const gchar* _tmp36_ = NULL;
+                                               gchar* _tmp37_ = NULL;
+                                               gchar* _tmp38_ = NULL;
+                                               gchar** _tmp39_ = NULL;
+                                               gint _tmp39__length1 = 0;
+                                               gint _tmp40_ = 0;
+                                               Rule* _tmp41_ = NULL;
+                                               gint _tmp41__length1 = 0;
+                                               gint _tmp42_ = 0;
+                                               Rule _tmp43_ = {0};
+                                               const gchar* _tmp44_ = NULL;
+                                               gchar* _tmp45_ = NULL;
+                                               gchar* _tmp46_ = NULL;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               if (!_tmp27_) {
+#line 1974 "moonshot-local-flat-file-store.c"
+                                                       gint _tmp28_ = 0;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _tmp28_ = i;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       i = _tmp28_ + 1;
+#line 1980 "moonshot-local-flat-file-store.c"
+                                               }
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp27_ = FALSE;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp29_ = i;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp30_ = rules;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp30__length1 = rules_length1;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               if (!(_tmp29_ < _tmp30__length1)) {
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       break;
+#line 1994 "moonshot-local-flat-file-store.c"
+                                               }
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp31_ = rules_patterns;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp31__length1 = rules_patterns_length1;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp32_ = i;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp33_ = rules;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp33__length1 = rules_length1;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp34_ = i;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp35_ = _tmp33_[_tmp34_];
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp36_ = _tmp35_.pattern;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp37_ = g_strdup (_tmp36_);
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp31_[_tmp32_]);
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp31_[_tmp32_] = _tmp37_;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp38_ = _tmp31_[_tmp32_];
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp39_ = rules_always_conf;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp39__length1 = rules_always_conf_length1;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp40_ = i;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp41_ = rules;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp41__length1 = rules_length1;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp42_ = i;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp43_ = _tmp41_[_tmp42_];
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp44_ = _tmp43_.always_confirm;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp45_ = g_strdup (_tmp44_);
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp39_[_tmp40_]);
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp39_[_tmp40_] = _tmp45_;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp46_ = _tmp39_[_tmp40_];
+#line 2044 "moonshot-local-flat-file-store.c"
+                                       }
+                               }
+                       }
+#line 165 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp48_ = id_card;
+#line 165 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp49_ = id_card_get_issuer (_tmp48_);
+#line 165 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp50_ = _tmp49_;
+#line 165 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp47_ = _tmp50_;
+#line 165 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       if (_tmp47_ == NULL) {
+#line 165 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp47_ = "";
+#line 2060 "moonshot-local-flat-file-store.c"
+                       }
+#line 165 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp51_ = key_file;
+#line 165 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp52_ = id_card;
+#line 165 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp53_ = id_card_get_display_name (_tmp52_);
+#line 165 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp54_ = _tmp53_;
+#line 165 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       g_key_file_set_string (_tmp51_, _tmp54_, "Issuer", _tmp47_);
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp56_ = id_card;
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp57_ = id_card_get_display_name (_tmp56_);
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp58_ = _tmp57_;
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp55_ = _tmp58_;
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       if (_tmp55_ == NULL) {
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp55_ = "";
+#line 2084 "moonshot-local-flat-file-store.c"
+                       }
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp59_ = key_file;
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp60_ = id_card;
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp61_ = id_card_get_display_name (_tmp60_);
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp62_ = _tmp61_;
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       g_key_file_set_string (_tmp59_, _tmp62_, "DisplayName", _tmp55_);
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp64_ = id_card;
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp65_ = id_card_get_username (_tmp64_);
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp66_ = _tmp65_;
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp63_ = _tmp66_;
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       if (_tmp63_ == NULL) {
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp63_ = "";
+#line 2108 "moonshot-local-flat-file-store.c"
+                       }
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp67_ = key_file;
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp68_ = id_card;
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp69_ = id_card_get_display_name (_tmp68_);
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp70_ = _tmp69_;
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       g_key_file_set_string (_tmp67_, _tmp70_, "Username", _tmp63_);
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp72_ = id_card;
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp73_ = id_card_get_store_password (_tmp72_);
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp74_ = _tmp73_;
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       if (_tmp74_) {
+#line 2128 "moonshot-local-flat-file-store.c"
+                               IdCard* _tmp75_ = NULL;
+                               const gchar* _tmp76_ = NULL;
+                               const gchar* _tmp77_ = NULL;
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp75_ = id_card;
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp76_ = id_card_get_password (_tmp75_);
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp77_ = _tmp76_;
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp71_ = _tmp77_ != NULL;
+#line 2140 "moonshot-local-flat-file-store.c"
+                       } else {
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp71_ = FALSE;
+#line 2144 "moonshot-local-flat-file-store.c"
+                       }
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       if (_tmp71_) {
+#line 2148 "moonshot-local-flat-file-store.c"
+                               GKeyFile* _tmp78_ = NULL;
+                               IdCard* _tmp79_ = NULL;
+                               const gchar* _tmp80_ = NULL;
+                               const gchar* _tmp81_ = NULL;
+                               IdCard* _tmp82_ = NULL;
+                               const gchar* _tmp83_ = NULL;
+                               const gchar* _tmp84_ = NULL;
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp78_ = key_file;
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp79_ = id_card;
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp80_ = id_card_get_display_name (_tmp79_);
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp81_ = _tmp80_;
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp82_ = id_card;
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp83_ = id_card_get_password (_tmp82_);
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp84_ = _tmp83_;
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               g_key_file_set_string (_tmp78_, _tmp81_, "Password", _tmp84_);
+#line 2172 "moonshot-local-flat-file-store.c"
+                       } else {
+                               GKeyFile* _tmp85_ = NULL;
+                               IdCard* _tmp86_ = NULL;
+                               const gchar* _tmp87_ = NULL;
+                               const gchar* _tmp88_ = NULL;
+#line 171 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp85_ = key_file;
+#line 171 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp86_ = id_card;
+#line 171 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp87_ = id_card_get_display_name (_tmp86_);
+#line 171 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp88_ = _tmp87_;
+#line 171 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               g_key_file_set_string (_tmp85_, _tmp88_, "Password", "");
+#line 2188 "moonshot-local-flat-file-store.c"
+                       }
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp89_ = id_card;
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp90_ = id_card_get_services (_tmp89_);
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp91_ = _tmp90_;
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp92_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp91_);
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp93_ = _tmp92_;
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp94_ = g_new0 (gchar*, _tmp93_ + 1);
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       svcs = _tmp94_;
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       svcs_length1 = _tmp93_;
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _svcs_size_ = svcs_length1;
+#line 2208 "moonshot-local-flat-file-store.c"
+                       {
+                               gint i = 0;
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               i = 0;
+#line 2213 "moonshot-local-flat-file-store.c"
+                               {
+                                       gboolean _tmp95_ = FALSE;
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       _tmp95_ = TRUE;
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                       while (TRUE) {
+#line 2220 "moonshot-local-flat-file-store.c"
+                                               gint _tmp97_ = 0;
+                                               IdCard* _tmp98_ = NULL;
+                                               GeeArrayList* _tmp99_ = NULL;
+                                               GeeArrayList* _tmp100_ = NULL;
+                                               gint _tmp101_ = 0;
+                                               gint _tmp102_ = 0;
+                                               gchar** _tmp103_ = NULL;
+                                               gint _tmp103__length1 = 0;
+                                               gint _tmp104_ = 0;
+                                               IdCard* _tmp105_ = NULL;
+                                               GeeArrayList* _tmp106_ = NULL;
+                                               GeeArrayList* _tmp107_ = NULL;
+                                               gint _tmp108_ = 0;
+                                               gpointer _tmp109_ = NULL;
+                                               gchar* _tmp110_ = NULL;
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               if (!_tmp95_) {
+#line 2238 "moonshot-local-flat-file-store.c"
+                                                       gint _tmp96_ = 0;
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       _tmp96_ = i;
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       i = _tmp96_ + 1;
+#line 2244 "moonshot-local-flat-file-store.c"
+                                               }
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp95_ = FALSE;
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp97_ = i;
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp98_ = id_card;
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp99_ = id_card_get_services (_tmp98_);
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp100_ = _tmp99_;
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp101_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp100_);
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp102_ = _tmp101_;
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               if (!(_tmp97_ < _tmp102_)) {
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                                       break;
+#line 2264 "moonshot-local-flat-file-store.c"
+                                               }
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp103_ = svcs;
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp103__length1 = svcs_length1;
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp104_ = i;
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp105_ = id_card;
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp106_ = id_card_get_services (_tmp105_);
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp107_ = _tmp106_;
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp108_ = i;
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp109_ = gee_abstract_list_get ((GeeAbstractList*) _tmp107_, _tmp108_);
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _g_free0 (_tmp103_[_tmp104_]);
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp103_[_tmp104_] = (gchar*) _tmp109_;
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                                               _tmp110_ = _tmp103_[_tmp104_];
+#line 2288 "moonshot-local-flat-file-store.c"
+                                       }
+                               }
+                       }
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp111_ = key_file;
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp112_ = id_card;
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp113_ = id_card_get_display_name (_tmp112_);
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp114_ = _tmp113_;
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp115_ = svcs;
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp115__length1 = svcs_length1;
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       g_key_file_set_string_list (_tmp111_, _tmp114_, "Services", (const gchar* const*) _tmp115_, _tmp115__length1);
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp116_ = rules;
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp116__length1 = rules_length1;
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       if (_tmp116__length1 > 0) {
+#line 2312 "moonshot-local-flat-file-store.c"
+                               GKeyFile* _tmp117_ = NULL;
+                               IdCard* _tmp118_ = NULL;
+                               const gchar* _tmp119_ = NULL;
+                               const gchar* _tmp120_ = NULL;
+                               gchar** _tmp121_ = NULL;
+                               gint _tmp121__length1 = 0;
+                               GKeyFile* _tmp122_ = NULL;
+                               IdCard* _tmp123_ = NULL;
+                               const gchar* _tmp124_ = NULL;
+                               const gchar* _tmp125_ = NULL;
+                               gchar** _tmp126_ = NULL;
+                               gint _tmp126__length1 = 0;
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp117_ = key_file;
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp118_ = id_card;
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp119_ = id_card_get_display_name (_tmp118_);
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp120_ = _tmp119_;
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp121_ = rules_patterns;
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp121__length1 = rules_patterns_length1;
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               g_key_file_set_string_list (_tmp117_, _tmp120_, "Rules-Patterns", (const gchar* const*) _tmp121_, _tmp121__length1);
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp122_ = key_file;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp123_ = id_card;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp124_ = id_card_get_display_name (_tmp123_);
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp125_ = _tmp124_;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp126_ = rules_always_conf;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp126__length1 = rules_always_conf_length1;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               g_key_file_set_string_list (_tmp122_, _tmp125_, "Rules-AlwaysConfirm", (const gchar* const*) _tmp126_, _tmp126__length1);
+#line 2353 "moonshot-local-flat-file-store.c"
+                       }
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp128_ = id_card;
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp129_ = id_card_get_store_password (_tmp128_);
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp130_ = _tmp129_;
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       if (_tmp130_) {
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp127_ = "yes";
+#line 2365 "moonshot-local-flat-file-store.c"
+                       } else {
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp127_ = "no";
+#line 2369 "moonshot-local-flat-file-store.c"
+                       }
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp131_ = key_file;
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp132_ = id_card;
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp133_ = id_card_get_display_name (_tmp132_);
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp134_ = _tmp133_;
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       g_key_file_set_string (_tmp131_, _tmp134_, "StorePassword", _tmp127_);
+#line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp135_ = key_file;
+#line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp136_ = id_card;
+#line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp137_ = id_card_get_display_name (_tmp136_);
+#line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp138_ = _tmp137_;
+#line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp139_ = id_card;
+#line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp140_ = id_card_get_trust_anchor (_tmp139_);
+#line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp141_ = _tmp140_;
+#line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp142_ = trust_anchor_get_ca_cert (_tmp141_);
+#line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp143_ = _tmp142_;
+#line 189 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       g_key_file_set_string (_tmp135_, _tmp138_, "CA-Cert", _tmp143_);
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp144_ = key_file;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp145_ = id_card;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp146_ = id_card_get_display_name (_tmp145_);
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp147_ = _tmp146_;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp148_ = id_card;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp149_ = id_card_get_trust_anchor (_tmp148_);
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp150_ = _tmp149_;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp151_ = trust_anchor_get_subject (_tmp150_);
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp152_ = _tmp151_;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       g_key_file_set_string (_tmp144_, _tmp147_, "Subject", _tmp152_);
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp153_ = key_file;
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp154_ = id_card;
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp155_ = id_card_get_display_name (_tmp154_);
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp156_ = _tmp155_;
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp157_ = id_card;
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp158_ = id_card_get_trust_anchor (_tmp157_);
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp159_ = _tmp158_;
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp160_ = trust_anchor_get_subject_alt (_tmp159_);
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp161_ = _tmp160_;
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       g_key_file_set_string (_tmp153_, _tmp156_, "SubjectAlt", _tmp161_);
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp162_ = key_file;
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp163_ = id_card;
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp164_ = id_card_get_display_name (_tmp163_);
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp165_ = _tmp164_;
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp166_ = id_card;
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp167_ = id_card_get_trust_anchor (_tmp166_);
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp168_ = _tmp167_;
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp169_ = trust_anchor_get_server_cert (_tmp168_);
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp170_ = _tmp169_;
+#line 192 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       g_key_file_set_string (_tmp162_, _tmp165_, "ServerCert", _tmp170_);
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp171_ = id_card;
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp172_ = id_card_get_trust_anchor (_tmp171_);
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp173_ = _tmp172_;
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp174_ = trust_anchor_get_datetime_added (_tmp173_);
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp175_ = _tmp174_;
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       if (g_strcmp0 (_tmp175_, "") != 0) {
+#line 2473 "moonshot-local-flat-file-store.c"
+                               GKeyFile* _tmp176_ = NULL;
+                               IdCard* _tmp177_ = NULL;
+                               const gchar* _tmp178_ = NULL;
+                               const gchar* _tmp179_ = NULL;
+                               IdCard* _tmp180_ = NULL;
+                               TrustAnchor* _tmp181_ = NULL;
+                               TrustAnchor* _tmp182_ = NULL;
+                               const gchar* _tmp183_ = NULL;
+                               const gchar* _tmp184_ = NULL;
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp176_ = key_file;
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp177_ = id_card;
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp178_ = id_card_get_display_name (_tmp177_);
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp179_ = _tmp178_;
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp180_ = id_card;
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp181_ = id_card_get_trust_anchor (_tmp180_);
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp182_ = _tmp181_;
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp183_ = trust_anchor_get_datetime_added (_tmp182_);
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               _tmp184_ = _tmp183_;
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                               g_key_file_set_string (_tmp176_, _tmp179_, "TA_DateTime_Added", _tmp184_);
+#line 2503 "moonshot-local-flat-file-store.c"
+                       }
+#line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp185_ = local_flat_file_store_logger;
+#line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp186_ = id_card;
+#line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp187_ = id_card_get_display_name (_tmp186_);
+#line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp188_ = _tmp187_;
+#line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp189_ = string_to_string (_tmp188_);
+#line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp190_ = g_strconcat ("store_id_cards: Stored '", _tmp189_, "'", NULL);
+#line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _tmp191_ = _tmp190_;
+#line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       moonshot_logger_trace (_tmp185_, _tmp191_, NULL);
+#line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _g_free0 (_tmp191_);
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       svcs = (_vala_array_free (svcs, svcs_length1, (GDestroyNotify) g_free), NULL);
+#line 152 "/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 152 "/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 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       rules = (_vala_Rule_array_free (rules, rules_length1), NULL);
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _g_object_unref0 (id_card);
+#line 2533 "moonshot-local-flat-file-store.c"
+               }
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _g_object_unref0 (_id_card_list);
+#line 2537 "moonshot-local-flat-file-store.c"
+       }
+#line 199 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp192_ = key_file;
+#line 199 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp193_ = g_key_file_to_data (_tmp192_, NULL, NULL);
+#line 199 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       text = _tmp193_;
+#line 2545 "moonshot-local-flat-file-store.c"
+       {
+               gchar* path = NULL;
+               gchar* _tmp194_ = NULL;
+               gchar* filename = NULL;
+               const gchar* _tmp195_ = NULL;
+               gchar* _tmp196_ = NULL;
+               MoonshotLogger* _tmp197_ = NULL;
+               const gchar* _tmp198_ = NULL;
+               gchar* _tmp199_ = NULL;
+               gchar* _tmp200_ = NULL;
+               GFile* file = NULL;
+               const gchar* _tmp201_ = NULL;
+               GFile* _tmp202_ = NULL;
+               GFileOutputStream* stream = NULL;
+               GFile* _tmp203_ = NULL;
+               GFileOutputStream* _tmp204_ = NULL;
+               GFileOutputStream* _tmp205_ = NULL;
+               const gchar* _tmp206_ = NULL;
+               guint8* _tmp207_ = NULL;
+               gint _tmp207__length1 = 0;
+               guint8* _tmp208_ = NULL;
+               gint _tmp208__length1 = 0;
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp194_ = local_flat_file_store_get_data_dir (self);
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               path = _tmp194_;
+#line 203 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp195_ = path;
+#line 203 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp196_ = g_build_filename (_tmp195_, LOCAL_FLAT_FILE_STORE_FILE_NAME, NULL);
+#line 203 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               filename = _tmp196_;
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp197_ = local_flat_file_store_logger;
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp198_ = filename;
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp199_ = g_strconcat ("store_id_cards: attempting to store to ", _tmp198_, NULL);
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp200_ = _tmp199_;
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               moonshot_logger_trace (_tmp197_, _tmp200_, NULL);
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _g_free0 (_tmp200_);
+#line 205 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp201_ = filename;
+#line 205 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp202_ = g_file_new_for_path (_tmp201_);
+#line 205 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               file = _tmp202_;
+#line 206 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp203_ = file;
+#line 206 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp204_ = g_file_replace (_tmp203_, NULL, FALSE, G_FILE_CREATE_PRIVATE, NULL, &_inner_error_);
+#line 206 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               stream = _tmp204_;
+#line 206 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 206 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _g_object_unref0 (file);
+#line 206 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _g_free0 (filename);
+#line 206 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _g_free0 (path);
+#line 2610 "moonshot-local-flat-file-store.c"
+                       goto __catch8_g_error;
+               }
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp205_ = stream;
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp206_ = text;
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp207_ = string_get_data (_tmp206_, &_tmp207__length1);
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp208_ = _tmp207_;
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp208__length1 = _tmp207__length1;
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               g_output_stream_write ((GOutputStream*) _tmp205_, _tmp208_, (gsize) _tmp208__length1, NULL, &_inner_error_);
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _g_object_unref0 (stream);
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _g_object_unref0 (file);
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _g_free0 (filename);
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+                       _g_free0 (path);
+#line 2635 "moonshot-local-flat-file-store.c"
+                       goto __catch8_g_error;
+               }
+#line 201 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _g_object_unref0 (stream);
+#line 201 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _g_object_unref0 (file);
+#line 201 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _g_free0 (filename);
+#line 201 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _g_free0 (path);
+#line 2646 "moonshot-local-flat-file-store.c"
+       }
+       goto __finally8;
+       __catch8_g_error:
+       {
+               GError* e = NULL;
+               MoonshotLogger* _tmp209_ = NULL;
+               GError* _tmp210_ = NULL;
+               const gchar* _tmp211_ = NULL;
+               gchar* _tmp212_ = NULL;
+               gchar* _tmp213_ = NULL;
+               FILE* _tmp214_ = NULL;
+               GError* _tmp215_ = NULL;
+               const gchar* _tmp216_ = NULL;
+#line 201 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               e = _inner_error_;
+#line 201 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _inner_error_ = NULL;
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp209_ = local_flat_file_store_logger;
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp210_ = e;
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp211_ = _tmp210_->message;
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp212_ = g_strdup_printf ("store_id_cards: Error while saving keyfile: %s\n", _tmp211_);
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp213_ = _tmp212_;
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               moonshot_logger_error (_tmp209_, _tmp213_, NULL);
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _g_free0 (_tmp213_);
+#line 216 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp214_ = stdout;
+#line 216 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp215_ = e;
+#line 216 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _tmp216_ = _tmp215_->message;
+#line 216 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               fprintf (_tmp214_, "Error:  %s\n", _tmp216_);
+#line 201 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _g_error_free0 (e);
+#line 2688 "moonshot-local-flat-file-store.c"
+       }
+       __finally8:
+#line 201 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 201 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _g_free0 (text);
+#line 201 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               _g_key_file_unref0 (key_file);
+#line 201 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.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 201 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               g_clear_error (&_inner_error_);
+#line 201 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+               return;
+#line 2703 "moonshot-local-flat-file-store.c"
+       }
+#line 219 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       local_flat_file_store_load_id_cards (self);
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _g_free0 (text);
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _g_key_file_unref0 (key_file);
+#line 2711 "moonshot-local-flat-file-store.c"
+}
+
+
+LocalFlatFileStore* local_flat_file_store_construct (GType object_type) {
+       LocalFlatFileStore * self = NULL;
+       GeeLinkedList* _tmp0_ = NULL;
+#line 222 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       self = (LocalFlatFileStore*) g_object_new (object_type, NULL);
+#line 223 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp0_ = gee_linked_list_new (TYPE_ID_CARD, (GBoxedCopyFunc) g_object_ref, (GDestroyNotify) g_object_unref, NULL, NULL, NULL);
+#line 223 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _g_object_unref0 (self->priv->id_card_list);
+#line 223 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       self->priv->id_card_list = _tmp0_;
+#line 224 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       local_flat_file_store_load_id_cards (self);
+#line 222 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       return self;
+#line 2730 "moonshot-local-flat-file-store.c"
+}
+
+
+LocalFlatFileStore* local_flat_file_store_new (void) {
+#line 222 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       return local_flat_file_store_construct (TYPE_LOCAL_FLAT_FILE_STORE);
+#line 2737 "moonshot-local-flat-file-store.c"
+}
+
+
+static void local_flat_file_store_class_init (LocalFlatFileStoreClass * klass) {
+       MoonshotLogger* _tmp0_ = NULL;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       local_flat_file_store_parent_class = g_type_class_peek_parent (klass);
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       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 35 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _tmp0_ = get_logger ("LocalFlatFileStore");
+#line 35 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       local_flat_file_store_logger = _tmp0_;
+#line 2753 "moonshot-local-flat-file-store.c"
+}
+
+
+static void local_flat_file_store_iidentity_card_store_interface_init (IIdentityCardStoreIface * iface) {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       local_flat_file_store_iidentity_card_store_parent_iface = g_type_interface_peek_parent (iface);
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       iface->add_card = (void (*)(IIdentityCardStore*, IdCard*)) local_flat_file_store_real_add_card;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       iface->update_card = (IdCard* (*)(IIdentityCardStore*, IdCard*)) local_flat_file_store_real_update_card;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       iface->remove_card = (gboolean (*)(IIdentityCardStore*, IdCard*)) local_flat_file_store_real_remove_card;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       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 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       iface->store_id_cards = (void (*)(IIdentityCardStore*)) local_flat_file_store_real_store_id_cards;
+#line 2772 "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 2779 "moonshot-local-flat-file-store.c"
+}
+
+
+static void local_flat_file_store_finalize (GObject* obj) {
+       LocalFlatFileStore * self;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_LOCAL_FLAT_FILE_STORE, LocalFlatFileStore);
+#line 37 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-local-flat-file-store.vala"
+       _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 2791 "moonshot-local-flat-file-store.c"
+}
+
+
+GType local_flat_file_store_get_type (void) {
+       static volatile gsize local_flat_file_store_type_id__volatile = 0;
+       if (g_once_init_enter (&local_flat_file_store_type_id__volatile)) {
+               static const GTypeInfo g_define_type_info = { sizeof (LocalFlatFileStoreClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) local_flat_file_store_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (LocalFlatFileStore), 0, (GInstanceInitFunc) local_flat_file_store_instance_init, NULL };
+               static const GInterfaceInfo iidentity_card_store_info = { (GInterfaceInitFunc) local_flat_file_store_iidentity_card_store_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
+               GType local_flat_file_store_type_id;
+               local_flat_file_store_type_id = g_type_register_static (G_TYPE_OBJECT, "LocalFlatFileStore", &g_define_type_info, 0);
+               g_type_add_interface_static (local_flat_file_store_type_id, TYPE_IIDENTITY_CARD_STORE, &iidentity_card_store_info);
+               g_once_init_leave (&local_flat_file_store_type_id__volatile, local_flat_file_store_type_id);
+       }
+       return local_flat_file_store_type_id__volatile;
+}
+
+
+static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func) {
+       if ((array != NULL) && (destroy_func != NULL)) {
+               int i;
+               for (i = 0; i < array_length; i = i + 1) {
+                       if (((gpointer*) array)[i] != NULL) {
+                               destroy_func (((gpointer*) array)[i]);
+                       }
+               }
+       }
+}
+
+
+static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func) {
+       _vala_array_destroy (array, array_length, destroy_func);
+       g_free (array);
+}
+
+
+
diff --git a/src/moonshot-logger.c b/src/moonshot-logger.c
new file mode 100644 (file)
index 0000000..cce852f
--- /dev/null
@@ -0,0 +1,224 @@
+/* moonshot-logger.c generated by valac 0.34.9, the Vala compiler
+ * generated from moonshot-logger.vala, do not modify */
+
+/*
+ * Copyright (c) 2011-2016, JANET(UK)
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * 3. Neither the name of JANET(UK) nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#include <glib.h>
+#include <glib-object.h>
+#include <stdlib.h>
+#include <string.h>
+
+
+#define TYPE_MOONSHOT_LOGGER (moonshot_logger_get_type ())
+#define MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLogger))
+#define MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+#define IS_MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MOONSHOT_LOGGER))
+#define IS_MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MOONSHOT_LOGGER))
+#define MOONSHOT_LOGGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+
+typedef struct _MoonshotLogger MoonshotLogger;
+typedef struct _MoonshotLoggerClass MoonshotLoggerClass;
+typedef struct _MoonshotLoggerPrivate MoonshotLoggerPrivate;
+
+struct _MoonshotLogger {
+       GObject parent_instance;
+       MoonshotLoggerPrivate * priv;
+};
+
+struct _MoonshotLoggerClass {
+       GObjectClass parent_class;
+};
+
+
+static gpointer moonshot_logger_parent_class = NULL;
+
+GType moonshot_logger_get_type (void) G_GNUC_CONST;
+MoonshotLogger* get_logger (const gchar* name);
+MoonshotLogger* moonshot_logger_new (const gchar* name);
+MoonshotLogger* moonshot_logger_construct (GType object_type, const gchar* name);
+enum  {
+       MOONSHOT_LOGGER_DUMMY_PROPERTY
+};
+void moonshot_logger_trace (MoonshotLogger* self, const gchar* message, GError* e);
+void moonshot_logger_debug (MoonshotLogger* self, const gchar* message, GError* e);
+void moonshot_logger_info (MoonshotLogger* self, const gchar* message, GError* e);
+void moonshot_logger_warn (MoonshotLogger* self, const gchar* message, GError* e);
+void moonshot_logger_error (MoonshotLogger* self, const gchar* message, GError* e);
+void moonshot_logger_fatal (MoonshotLogger* self, const gchar* message, GError* e);
+
+
+MoonshotLogger* get_logger (const gchar* name) {
+       MoonshotLogger* result = NULL;
+       const gchar* _tmp0_ = NULL;
+       MoonshotLogger* _tmp1_ = NULL;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-logger.vala"
+       g_return_val_if_fail (name != NULL, NULL);
+#line 35 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-logger.vala"
+       _tmp0_ = name;
+#line 35 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-logger.vala"
+       _tmp1_ = moonshot_logger_new (_tmp0_);
+#line 35 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-logger.vala"
+       result = _tmp1_;
+#line 35 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-logger.vala"
+       return result;
+#line 95 "moonshot-logger.c"
+}
+
+
+MoonshotLogger* moonshot_logger_construct (GType object_type, const gchar* name) {
+       MoonshotLogger * self = NULL;
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-logger.vala"
+       g_return_val_if_fail (name != NULL, NULL);
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-logger.vala"
+       self = (MoonshotLogger*) g_object_new (object_type, NULL);
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-logger.vala"
+       return self;
+#line 107 "moonshot-logger.c"
+}
+
+
+MoonshotLogger* moonshot_logger_new (const gchar* name) {
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-logger.vala"
+       return moonshot_logger_construct (TYPE_MOONSHOT_LOGGER, name);
+#line 114 "moonshot-logger.c"
+}
+
+
+/**
+     * Log a trace message.
+     * @param message log message
+     * @param e optional Error to be logged
+     */
+void moonshot_logger_trace (MoonshotLogger* self, const gchar* message, GError* e) {
+#line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-logger.vala"
+       g_return_if_fail (self != NULL);
+#line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-logger.vala"
+       g_return_if_fail (message != NULL);
+#line 128 "moonshot-logger.c"
+}
+
+
+/**
+     * Log a debug message.
+     * @param message log message
+     * @param e optional Error to be logged
+     */
+void moonshot_logger_debug (MoonshotLogger* self, const gchar* message, GError* e) {
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-logger.vala"
+       g_return_if_fail (self != NULL);
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-logger.vala"
+       g_return_if_fail (message != NULL);
+#line 142 "moonshot-logger.c"
+}
+
+
+/**
+     * Log an info message.
+     * @param e optional Error to be logged
+     */
+void moonshot_logger_info (MoonshotLogger* self, const gchar* message, GError* e) {
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-logger.vala"
+       g_return_if_fail (self != NULL);
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-logger.vala"
+       g_return_if_fail (message != NULL);
+#line 155 "moonshot-logger.c"
+}
+
+
+/**
+     * Log a warning message.
+     * @param message log message
+     * @param e optional Error to be logged
+     */
+void moonshot_logger_warn (MoonshotLogger* self, const gchar* message, GError* e) {
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-logger.vala"
+       g_return_if_fail (self != NULL);
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-logger.vala"
+       g_return_if_fail (message != NULL);
+#line 169 "moonshot-logger.c"
+}
+
+
+/**
+     * Log an error message.
+     * @param message log message
+     * @param e optional Error to be logged
+     */
+void moonshot_logger_error (MoonshotLogger* self, const gchar* message, GError* e) {
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-logger.vala"
+       g_return_if_fail (self != NULL);
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-logger.vala"
+       g_return_if_fail (message != NULL);
+#line 183 "moonshot-logger.c"
+}
+
+
+/**
+     * Log a fatal message.
+     * @param message log message
+     * @param e optional Error to be logged
+     */
+void moonshot_logger_fatal (MoonshotLogger* self, const gchar* message, GError* e) {
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-logger.vala"
+       g_return_if_fail (self != NULL);
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-logger.vala"
+       g_return_if_fail (message != NULL);
+#line 197 "moonshot-logger.c"
+}
+
+
+static void moonshot_logger_class_init (MoonshotLoggerClass * klass) {
+#line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-logger.vala"
+       moonshot_logger_parent_class = g_type_class_peek_parent (klass);
+#line 204 "moonshot-logger.c"
+}
+
+
+static void moonshot_logger_instance_init (MoonshotLogger * self) {
+}
+
+
+/** Logger that currently does nothing, but may eventually write to stdout or a file if enabled */
+GType moonshot_logger_get_type (void) {
+       static volatile gsize moonshot_logger_type_id__volatile = 0;
+       if (g_once_init_enter (&moonshot_logger_type_id__volatile)) {
+               static const GTypeInfo g_define_type_info = { sizeof (MoonshotLoggerClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) moonshot_logger_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (MoonshotLogger), 0, (GInstanceInitFunc) moonshot_logger_instance_init, NULL };
+               GType moonshot_logger_type_id;
+               moonshot_logger_type_id = g_type_register_static (G_TYPE_OBJECT, "MoonshotLogger", &g_define_type_info, 0);
+               g_once_init_leave (&moonshot_logger_type_id__volatile, moonshot_logger_type_id);
+       }
+       return moonshot_logger_type_id__volatile;
+}
+
+
+
diff --git a/src/moonshot-password-dialog.c b/src/moonshot-password-dialog.c
new file mode 100644 (file)
index 0000000..9ca7693
--- /dev/null
@@ -0,0 +1,611 @@
+/* moonshot-password-dialog.c generated by valac 0.34.9, the Vala compiler
+ * generated from moonshot-password-dialog.vala, do not modify */
+
+/*
+ * Copyright (c) 2011-2016, JANET(UK)
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * 3. Neither the name of JANET(UK) nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+*/
+
+#include <glib.h>
+#include <glib-object.h>
+#include <gtk/gtk.h>
+#include <gdk/gdk.h>
+#include <glib/gi18n-lib.h>
+#include <stdlib.h>
+#include <string.h>
+#include <float.h>
+#include <math.h>
+#include <atk/atk.h>
+
+
+#define TYPE_ADD_PASSWORD_DIALOG (add_password_dialog_get_type ())
+#define ADD_PASSWORD_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ADD_PASSWORD_DIALOG, AddPasswordDialog))
+#define ADD_PASSWORD_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ADD_PASSWORD_DIALOG, AddPasswordDialogClass))
+#define IS_ADD_PASSWORD_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ADD_PASSWORD_DIALOG))
+#define IS_ADD_PASSWORD_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ADD_PASSWORD_DIALOG))
+#define ADD_PASSWORD_DIALOG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ADD_PASSWORD_DIALOG, AddPasswordDialogClass))
+
+typedef struct _AddPasswordDialog AddPasswordDialog;
+typedef struct _AddPasswordDialogClass AddPasswordDialogClass;
+typedef struct _AddPasswordDialogPrivate AddPasswordDialogPrivate;
+#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
+
+#define TYPE_ID_CARD (id_card_get_type ())
+#define ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ID_CARD, IdCard))
+#define ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ID_CARD, IdCardClass))
+#define IS_ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ID_CARD))
+#define IS_ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ID_CARD))
+#define ID_CARD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ID_CARD, IdCardClass))
+
+typedef struct _IdCard IdCard;
+typedef struct _IdCardClass IdCardClass;
+
+#define TYPE_IDENTITY_REQUEST (identity_request_get_type ())
+#define IDENTITY_REQUEST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_REQUEST, IdentityRequest))
+#define IDENTITY_REQUEST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_REQUEST, IdentityRequestClass))
+#define IS_IDENTITY_REQUEST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_REQUEST))
+#define IS_IDENTITY_REQUEST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_REQUEST))
+#define IDENTITY_REQUEST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_REQUEST, IdentityRequestClass))
+
+typedef struct _IdentityRequest IdentityRequest;
+typedef struct _IdentityRequestClass IdentityRequestClass;
+#define _g_free0(var) (var = (g_free (var), NULL))
+
+struct _AddPasswordDialog {
+       GtkDialog parent_instance;
+       AddPasswordDialogPrivate * priv;
+};
+
+struct _AddPasswordDialogClass {
+       GtkDialogClass parent_class;
+};
+
+struct _AddPasswordDialogPrivate {
+       GtkEntry* password_entry;
+       GtkCheckButton* remember_checkbutton;
+};
+
+
+static gpointer add_password_dialog_parent_class = NULL;
+static GdkColor add_password_dialog_white;
+static GdkColor add_password_dialog_white = {0};
+
+GType add_password_dialog_get_type (void) G_GNUC_CONST;
+#define ADD_PASSWORD_DIALOG_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_ADD_PASSWORD_DIALOG, AddPasswordDialogPrivate))
+enum  {
+       ADD_PASSWORD_DIALOG_DUMMY_PROPERTY,
+       ADD_PASSWORD_DIALOG_PASSWORD,
+       ADD_PASSWORD_DIALOG_REMEMBER
+};
+void make_color (guint16 red, guint16 green, guint16 blue, GdkColor* result);
+void add_password_dialog_clear_password (AddPasswordDialog* self);
+void clear_password_entry (GtkEntry* entry);
+GType id_card_get_type (void) G_GNUC_CONST;
+GType identity_request_get_type (void) G_GNUC_CONST;
+AddPasswordDialog* add_password_dialog_new (IdCard* id_card, IdentityRequest* request);
+AddPasswordDialog* add_password_dialog_construct (GType object_type, IdCard* id_card, IdentityRequest* request);
+void set_bg_color (GtkWidget* w);
+const gchar* id_card_get_display_name (IdCard* self);
+const gchar* id_card_get_nai (IdCard* self);
+void set_atk_relation (GtkWidget* widget, GtkWidget* target_widget, AtkRelationType relationship);
+const gchar* add_password_dialog_get_password (AddPasswordDialog* self);
+gboolean add_password_dialog_get_remember (AddPasswordDialog* self);
+static void add_password_dialog_finalize (GObject* obj);
+static void _vala_add_password_dialog_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec);
+
+
+/**
+     * Don't leave passwords in memory longer than necessary.
+     * This may not actually erase the password data bytes, but it seems to be the best we can do.
+     */
+void add_password_dialog_clear_password (AddPasswordDialog* self) {
+       GtkEntry* _tmp0_ = NULL;
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       g_return_if_fail (self != NULL);
+#line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp0_ = self->priv->password_entry;
+#line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       clear_password_entry (_tmp0_);
+#line 137 "moonshot-password-dialog.c"
+}
+
+
+static gpointer _g_object_ref0 (gpointer self) {
+#line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       return self ? g_object_ref (self) : NULL;
+#line 144 "moonshot-password-dialog.c"
+}
+
+
+AddPasswordDialog* add_password_dialog_construct (GType object_type, IdCard* id_card, IdentityRequest* request) {
+       AddPasswordDialog * self = NULL;
+       const gchar* _tmp0_ = NULL;
+       const gchar* _tmp1_ = NULL;
+       const gchar* _tmp2_ = NULL;
+       GtkWidget* content_area = NULL;
+       GtkWidget* _tmp3_ = NULL;
+       GtkWidget* _tmp4_ = NULL;
+       GtkLabel* dialog_label = NULL;
+       const gchar* _tmp5_ = NULL;
+       IdCard* _tmp6_ = NULL;
+       const gchar* _tmp7_ = NULL;
+       const gchar* _tmp8_ = NULL;
+       gchar* _tmp9_ = NULL;
+       gchar* _tmp10_ = NULL;
+       GtkLabel* _tmp11_ = NULL;
+       GtkLabel* _tmp12_ = NULL;
+       GtkLabel* nai_label = NULL;
+       const gchar* _tmp13_ = NULL;
+       GtkLabel* _tmp14_ = NULL;
+       GtkLabel* nai_value = NULL;
+       IdCard* _tmp15_ = NULL;
+       const gchar* _tmp16_ = NULL;
+       const gchar* _tmp17_ = NULL;
+       GtkLabel* _tmp18_ = NULL;
+       GtkLabel* password_label = NULL;
+       const gchar* _tmp19_ = NULL;
+       GtkLabel* _tmp20_ = NULL;
+       GtkEntry* _tmp21_ = NULL;
+       GtkEntry* _tmp22_ = NULL;
+       GtkEntry* _tmp23_ = NULL;
+       GtkEntry* _tmp24_ = NULL;
+       const gchar* _tmp25_ = NULL;
+       GtkCheckButton* _tmp26_ = NULL;
+       GtkEntry* _tmp27_ = NULL;
+       GtkTable* table = NULL;
+       GtkTable* _tmp28_ = NULL;
+       GtkAttachOptions opts = 0;
+       gint row = 0;
+       gint _tmp29_ = 0;
+       gint _tmp30_ = 0;
+       gint _tmp31_ = 0;
+       GtkVBox* nai_vbox = NULL;
+       GtkVBox* _tmp32_ = NULL;
+       gint _tmp33_ = 0;
+       gint _tmp34_ = 0;
+       gint _tmp35_ = 0;
+       GtkVBox* password_vbox = NULL;
+       GtkVBox* _tmp36_ = NULL;
+       GtkVBox* empty_box2 = NULL;
+       GtkVBox* _tmp37_ = NULL;
+       GtkEntry* _tmp38_ = NULL;
+       gint _tmp39_ = 0;
+       gint _tmp40_ = 0;
+       gint _tmp41_ = 0;
+       GtkCheckButton* _tmp42_ = NULL;
+       gint _tmp43_ = 0;
+       gint _tmp44_ = 0;
+       gint _tmp45_ = 0;
+       GtkVBox* empty_box3 = NULL;
+       GtkVBox* _tmp46_ = NULL;
+       gint _tmp47_ = 0;
+       gint _tmp48_ = 0;
+       gint _tmp49_ = 0;
+       GtkVBox* vbox = NULL;
+       GtkVBox* _tmp50_ = NULL;
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       g_return_val_if_fail (id_card != NULL, NULL);
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       self = (AddPasswordDialog*) g_object_new (object_type, NULL);
+#line 59 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp0_ = _ ("Moonshot - Password");
+#line 59 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       gtk_window_set_title ((GtkWindow*) self, _tmp0_);
+#line 60 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       gtk_window_set_modal ((GtkWindow*) self, TRUE);
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       set_bg_color ((GtkWidget*) self);
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp1_ = _ ("Cancel");
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp2_ = _ ("Connect");
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       gtk_dialog_add_buttons ((GtkDialog*) self, _tmp1_, GTK_RESPONSE_CANCEL, _tmp2_, GTK_RESPONSE_OK, NULL);
+#line 66 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       gtk_dialog_set_default_response ((GtkDialog*) self, (gint) GTK_RESPONSE_OK);
+#line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp3_ = gtk_dialog_get_content_area ((GtkDialog*) self);
+#line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp4_ = _g_object_ref0 (_tmp3_);
+#line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       content_area = _tmp4_;
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       gtk_box_set_spacing (G_TYPE_CHECK_INSTANCE_CAST (content_area, GTK_TYPE_BOX, GtkBox), 12);
+#line 70 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       set_bg_color (content_area);
+#line 72 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp5_ = _ ("Enter the password for ");
+#line 72 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp6_ = id_card;
+#line 72 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp7_ = id_card_get_display_name (_tmp6_);
+#line 72 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp8_ = _tmp7_;
+#line 72 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp9_ = g_strconcat (_tmp5_, _tmp8_, NULL);
+#line 72 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp10_ = _tmp9_;
+#line 72 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp11_ = (GtkLabel*) gtk_label_new (_tmp10_);
+#line 72 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       g_object_ref_sink (_tmp11_);
+#line 72 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp12_ = _tmp11_;
+#line 72 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _g_free0 (_tmp10_);
+#line 72 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       dialog_label = _tmp12_;
+#line 73 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       gtk_misc_set_alignment ((GtkMisc*) dialog_label, (gfloat) 0, (gfloat) 0);
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp13_ = _ ("User (NAI):");
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp14_ = (GtkLabel*) gtk_label_new (_tmp13_);
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       g_object_ref_sink (_tmp14_);
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       nai_label = _tmp14_;
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       gtk_misc_set_alignment ((GtkMisc*) nai_label, (gfloat) 0, (gfloat) 1);
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp15_ = id_card;
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp16_ = id_card_get_nai (_tmp15_);
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp17_ = _tmp16_;
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp18_ = (GtkLabel*) gtk_label_new (_tmp17_);
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       g_object_ref_sink (_tmp18_);
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       nai_value = _tmp18_;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       gtk_misc_set_alignment ((GtkMisc*) nai_value, (gfloat) 0, (gfloat) 0);
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp19_ = _ ("Password:");
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp20_ = (GtkLabel*) gtk_label_new (_tmp19_);
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       g_object_ref_sink (_tmp20_);
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       password_label = _tmp20_;
+#line 81 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       gtk_misc_set_alignment ((GtkMisc*) password_label, (gfloat) 0, (gfloat) 1);
+#line 82 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp21_ = (GtkEntry*) gtk_entry_new ();
+#line 82 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       g_object_ref_sink (_tmp21_);
+#line 82 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _g_object_unref0 (self->priv->password_entry);
+#line 82 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       self->priv->password_entry = _tmp21_;
+#line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp22_ = self->priv->password_entry;
+#line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       gtk_entry_set_invisible_char (_tmp22_, (gunichar) '*');
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp23_ = self->priv->password_entry;
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       gtk_entry_set_visibility (_tmp23_, FALSE);
+#line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp24_ = self->priv->password_entry;
+#line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       gtk_entry_set_activates_default (_tmp24_, TRUE);
+#line 86 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp25_ = _ ("Remember password");
+#line 86 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp26_ = (GtkCheckButton*) gtk_check_button_new_with_label (_tmp25_);
+#line 86 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       g_object_ref_sink (_tmp26_);
+#line 86 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _g_object_unref0 (self->priv->remember_checkbutton);
+#line 86 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       self->priv->remember_checkbutton = _tmp26_;
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp27_ = self->priv->password_entry;
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       set_atk_relation ((GtkWidget*) password_label, (GtkWidget*) _tmp27_, ATK_RELATION_LABEL_FOR);
+#line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp28_ = (GtkTable*) gtk_table_new ((guint) 6, (guint) 1, FALSE);
+#line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       g_object_ref_sink (_tmp28_);
+#line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       table = _tmp28_;
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       opts = GTK_EXPAND | GTK_FILL;
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       row = 0;
+#line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       gtk_table_set_col_spacings (table, (guint) 6);
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       gtk_table_set_row_spacings (table, (guint) 0);
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp29_ = row;
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp30_ = row;
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       gtk_table_attach (table, (GtkWidget*) dialog_label, (guint) 0, (guint) 1, (guint) _tmp29_, (guint) (_tmp30_ + 1), opts, opts, (guint) 0, (guint) 2);
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp31_ = row;
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       row = _tmp31_ + 1;
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp32_ = (GtkVBox*) gtk_vbox_new (FALSE, 0);
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       g_object_ref_sink (_tmp32_);
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       nai_vbox = _tmp32_;
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       gtk_box_pack_start ((GtkBox*) nai_vbox, (GtkWidget*) nai_label, FALSE, FALSE, (guint) 0);
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       gtk_box_pack_start ((GtkBox*) nai_vbox, (GtkWidget*) nai_value, FALSE, FALSE, (guint) 0);
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp33_ = row;
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp34_ = row;
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       gtk_table_attach (table, (GtkWidget*) nai_vbox, (guint) 0, (guint) 1, (guint) _tmp33_, (guint) (_tmp34_ + 1), opts, opts, (guint) 0, (guint) 12);
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp35_ = row;
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       row = _tmp35_ + 1;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp36_ = (GtkVBox*) gtk_vbox_new (FALSE, 1);
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       g_object_ref_sink (_tmp36_);
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       password_vbox = _tmp36_;
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp37_ = (GtkVBox*) gtk_vbox_new (FALSE, 0);
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       g_object_ref_sink (_tmp37_);
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       empty_box2 = _tmp37_;
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       gtk_widget_set_size_request ((GtkWidget*) empty_box2, 0, 0);
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       gtk_box_pack_start ((GtkBox*) password_vbox, (GtkWidget*) empty_box2, FALSE, FALSE, (guint) 3);
+#line 109 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       gtk_box_pack_start ((GtkBox*) password_vbox, (GtkWidget*) password_label, FALSE, FALSE, (guint) 0);
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp38_ = self->priv->password_entry;
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       gtk_box_pack_start ((GtkBox*) password_vbox, (GtkWidget*) _tmp38_, FALSE, FALSE, (guint) 0);
+#line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp39_ = row;
+#line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp40_ = row;
+#line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       gtk_table_attach (table, (GtkWidget*) password_vbox, (guint) 0, (guint) 1, (guint) _tmp39_, (guint) (_tmp40_ + 1), opts, opts, (guint) 0, (guint) 0);
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp41_ = row;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       row = _tmp41_ + 1;
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp42_ = self->priv->remember_checkbutton;
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp43_ = row;
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp44_ = row;
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       gtk_table_attach (table, (GtkWidget*) _tmp42_, (guint) 0, (guint) 1, (guint) _tmp43_, (guint) (_tmp44_ + 1), opts, opts, (guint) 20, (guint) 2);
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp45_ = row;
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       row = _tmp45_ + 1;
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp46_ = (GtkVBox*) gtk_vbox_new (FALSE, 0);
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       g_object_ref_sink (_tmp46_);
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       empty_box3 = _tmp46_;
+#line 118 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       gtk_widget_set_size_request ((GtkWidget*) empty_box3, 0, 0);
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp47_ = row;
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp48_ = row;
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       gtk_table_attach (table, (GtkWidget*) empty_box3, (guint) 0, (guint) 1, (guint) _tmp47_, (guint) (_tmp48_ + 1), opts, opts, (guint) 0, (guint) 10);
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp49_ = row;
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       row = _tmp49_ + 1;
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp50_ = (GtkVBox*) gtk_vbox_new (FALSE, 0);
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       g_object_ref_sink (_tmp50_);
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       vbox = _tmp50_;
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       gtk_container_set_border_width ((GtkContainer*) vbox, (guint) 6);
+#line 124 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       gtk_box_pack_start ((GtkBox*) vbox, (GtkWidget*) table, FALSE, FALSE, (guint) 0);
+#line 126 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       gtk_container_add (G_TYPE_CHECK_INSTANCE_CAST (content_area, GTK_TYPE_CONTAINER, GtkContainer), (GtkWidget*) vbox);
+#line 128 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       gtk_container_set_border_width ((GtkContainer*) self, (guint) 6);
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       gtk_widget_show_all ((GtkWidget*) self);
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _g_object_unref0 (vbox);
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _g_object_unref0 (empty_box3);
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _g_object_unref0 (empty_box2);
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _g_object_unref0 (password_vbox);
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _g_object_unref0 (nai_vbox);
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _g_object_unref0 (table);
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _g_object_unref0 (password_label);
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _g_object_unref0 (nai_value);
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _g_object_unref0 (nai_label);
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _g_object_unref0 (dialog_label);
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _g_object_unref0 (content_area);
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       return self;
+#line 482 "moonshot-password-dialog.c"
+}
+
+
+AddPasswordDialog* add_password_dialog_new (IdCard* id_card, IdentityRequest* request) {
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       return add_password_dialog_construct (TYPE_ADD_PASSWORD_DIALOG, id_card, request);
+#line 489 "moonshot-password-dialog.c"
+}
+
+
+const gchar* add_password_dialog_get_password (AddPasswordDialog* self) {
+       const gchar* result;
+       GtkEntry* _tmp0_ = NULL;
+       const gchar* _tmp1_ = NULL;
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp0_ = self->priv->password_entry;
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp1_ = gtk_entry_get_text (_tmp0_);
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       result = _tmp1_;
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       return result;
+#line 507 "moonshot-password-dialog.c"
+}
+
+
+gboolean add_password_dialog_get_remember (AddPasswordDialog* self) {
+       gboolean result;
+       GtkCheckButton* _tmp0_ = NULL;
+       gboolean _tmp1_ = FALSE;
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       g_return_val_if_fail (self != NULL, FALSE);
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp0_ = self->priv->remember_checkbutton;
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _tmp1_ = gtk_toggle_button_get_active ((GtkToggleButton*) _tmp0_);
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       result = _tmp1_;
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       return result;
+#line 525 "moonshot-password-dialog.c"
+}
+
+
+static void add_password_dialog_class_init (AddPasswordDialogClass * klass) {
+       GdkColor _tmp0_ = {0};
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       add_password_dialog_parent_class = g_type_class_peek_parent (klass);
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       g_type_class_add_private (klass, sizeof (AddPasswordDialogPrivate));
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       G_OBJECT_CLASS (klass)->get_property = _vala_add_password_dialog_get_property;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       G_OBJECT_CLASS (klass)->finalize = add_password_dialog_finalize;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       g_object_class_install_property (G_OBJECT_CLASS (klass), ADD_PASSWORD_DIALOG_PASSWORD, g_param_spec_string ("password", "password", "password", NULL, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       g_object_class_install_property (G_OBJECT_CLASS (klass), ADD_PASSWORD_DIALOG_REMEMBER, g_param_spec_boolean ("remember", "remember", "remember", FALSE, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       make_color ((guint16) 65535, (guint16) 65535, (guint16) 65535, &_tmp0_);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       add_password_dialog_white = _tmp0_;
+#line 547 "moonshot-password-dialog.c"
+}
+
+
+static void add_password_dialog_instance_init (AddPasswordDialog * self) {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       self->priv = ADD_PASSWORD_DIALOG_GET_PRIVATE (self);
+#line 554 "moonshot-password-dialog.c"
+}
+
+
+static void add_password_dialog_finalize (GObject* obj) {
+       AddPasswordDialog * self;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_ADD_PASSWORD_DIALOG, AddPasswordDialog);
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _g_object_unref0 (self->priv->password_entry);
+#line 39 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       _g_object_unref0 (self->priv->remember_checkbutton);
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       G_OBJECT_CLASS (add_password_dialog_parent_class)->finalize (obj);
+#line 568 "moonshot-password-dialog.c"
+}
+
+
+GType add_password_dialog_get_type (void) {
+       static volatile gsize add_password_dialog_type_id__volatile = 0;
+       if (g_once_init_enter (&add_password_dialog_type_id__volatile)) {
+               static const GTypeInfo g_define_type_info = { sizeof (AddPasswordDialogClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) add_password_dialog_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (AddPasswordDialog), 0, (GInstanceInitFunc) add_password_dialog_instance_init, NULL };
+               GType add_password_dialog_type_id;
+               add_password_dialog_type_id = g_type_register_static (GTK_TYPE_DIALOG, "AddPasswordDialog", &g_define_type_info, 0);
+               g_once_init_leave (&add_password_dialog_type_id__volatile, add_password_dialog_type_id);
+       }
+       return add_password_dialog_type_id__volatile;
+}
+
+
+static void _vala_add_password_dialog_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) {
+       AddPasswordDialog * self;
+       self = G_TYPE_CHECK_INSTANCE_CAST (object, TYPE_ADD_PASSWORD_DIALOG, AddPasswordDialog);
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+       switch (property_id) {
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+               case ADD_PASSWORD_DIALOG_PASSWORD:
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+               g_value_set_string (value, add_password_dialog_get_password (self));
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+               break;
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+               case ADD_PASSWORD_DIALOG_REMEMBER:
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+               g_value_set_boolean (value, add_password_dialog_get_remember (self));
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+               break;
+#line 601 "moonshot-password-dialog.c"
+               default:
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+               G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
+#line 34 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-password-dialog.vala"
+               break;
+#line 607 "moonshot-password-dialog.c"
+       }
+}
+
+
+
diff --git a/src/moonshot-provisioning-common.c b/src/moonshot-provisioning-common.c
new file mode 100644 (file)
index 0000000..c7819be
--- /dev/null
@@ -0,0 +1,2119 @@
+/* moonshot-provisioning-common.c generated by valac 0.34.9, the Vala compiler
+ * generated from moonshot-provisioning-common.vala, do not modify */
+
+/*
+ * Copyright (c) 2011-2016, JANET(UK)
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * 3. Neither the name of JANET(UK) nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+*/
+
+#include <glib.h>
+#include <glib-object.h>
+#include <stdlib.h>
+#include <string.h>
+#include <gee.h>
+#include <gio/gio.h>
+
+
+#define WEB_PROVISIONING_TYPE_PARSER (web_provisioning_parser_get_type ())
+#define WEB_PROVISIONING_PARSER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), WEB_PROVISIONING_TYPE_PARSER, WebProvisioningParser))
+#define WEB_PROVISIONING_PARSER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), WEB_PROVISIONING_TYPE_PARSER, WebProvisioningParserClass))
+#define WEB_PROVISIONING_IS_PARSER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), WEB_PROVISIONING_TYPE_PARSER))
+#define WEB_PROVISIONING_IS_PARSER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), WEB_PROVISIONING_TYPE_PARSER))
+#define WEB_PROVISIONING_PARSER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), WEB_PROVISIONING_TYPE_PARSER, WebProvisioningParserClass))
+
+typedef struct _WebProvisioningParser WebProvisioningParser;
+typedef struct _WebProvisioningParserClass WebProvisioningParserClass;
+typedef struct _WebProvisioningParserPrivate WebProvisioningParserPrivate;
+
+#define TYPE_ID_CARD (id_card_get_type ())
+#define ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ID_CARD, IdCard))
+#define ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ID_CARD, IdCardClass))
+#define IS_ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ID_CARD))
+#define IS_ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ID_CARD))
+#define ID_CARD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ID_CARD, IdCardClass))
+
+typedef struct _IdCard IdCard;
+typedef struct _IdCardClass IdCardClass;
+
+#define TYPE_MOONSHOT_LOGGER (moonshot_logger_get_type ())
+#define MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLogger))
+#define MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+#define IS_MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MOONSHOT_LOGGER))
+#define IS_MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MOONSHOT_LOGGER))
+#define MOONSHOT_LOGGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+
+typedef struct _MoonshotLogger MoonshotLogger;
+typedef struct _MoonshotLoggerClass MoonshotLoggerClass;
+#define _g_markup_parse_context_free0(var) ((var == NULL) ? NULL : (var = (g_markup_parse_context_free (var), NULL)))
+#define _g_free0(var) (var = (g_free (var), NULL))
+#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
+
+#define TYPE_RULE (rule_get_type ())
+typedef struct _Rule Rule;
+
+#define TYPE_TRUST_ANCHOR (trust_anchor_get_type ())
+#define TRUST_ANCHOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TRUST_ANCHOR, TrustAnchor))
+#define TRUST_ANCHOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TRUST_ANCHOR, TrustAnchorClass))
+#define IS_TRUST_ANCHOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TRUST_ANCHOR))
+#define IS_TRUST_ANCHOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TRUST_ANCHOR))
+#define TRUST_ANCHOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TRUST_ANCHOR, TrustAnchorClass))
+
+typedef struct _TrustAnchor TrustAnchor;
+typedef struct _TrustAnchorClass TrustAnchorClass;
+#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))
+
+struct _WebProvisioningParser {
+       GObject parent_instance;
+       WebProvisioningParserPrivate * priv;
+};
+
+struct _WebProvisioningParserClass {
+       GObjectClass parent_class;
+};
+
+struct _WebProvisioningParserPrivate {
+       GMarkupParseContext* ctx;
+       gchar* text;
+       gchar* path;
+       gchar* ta_ca_cert;
+       gchar* ta_server_cert;
+       gchar* ta_subject;
+       gchar* ta_subject_alt;
+       IdCard* card;
+       IdCard** _cards;
+       gint _cards_length1;
+       gint __cards_size_;
+};
+
+struct _Rule {
+       gchar* pattern;
+       gchar* always_confirm;
+};
+
+
+static gpointer web_provisioning_parser_parent_class = NULL;
+static MoonshotLogger* web_provisioning_parser_logger;
+static MoonshotLogger* web_provisioning_parser_logger = NULL;
+
+gboolean web_provisioning_check_stack (GSList* stack, gchar** reference, int reference_length1);
+gboolean web_provisioning_always_confirm_handler (GSList* stack);
+gboolean web_provisioning_pattern_handler (GSList* stack);
+gboolean web_provisioning_server_cert_handler (GSList* stack);
+gboolean web_provisioning_subject_alt_handler (GSList* stack);
+gboolean web_provisioning_subject_handler (GSList* stack);
+gboolean web_provisioning_ca_cert_handler (GSList* stack);
+gboolean web_provisioning_realm_handler (GSList* stack);
+gboolean web_provisioning_password_handler (GSList* stack);
+gboolean web_provisioning_user_handler (GSList* stack);
+gboolean web_provisioning_display_name_handler (GSList* stack);
+GType web_provisioning_parser_get_type (void) G_GNUC_CONST;
+GType id_card_get_type (void) G_GNUC_CONST;
+#define WEB_PROVISIONING_PARSER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), WEB_PROVISIONING_TYPE_PARSER, WebProvisioningParserPrivate))
+enum  {
+       WEB_PROVISIONING_PARSER_DUMMY_PROPERTY
+};
+GType moonshot_logger_get_type (void) G_GNUC_CONST;
+MoonshotLogger* moonshot_logger_new (const gchar* name);
+MoonshotLogger* moonshot_logger_construct (GType object_type, const gchar* name);
+static void web_provisioning_parser_start_element_func (WebProvisioningParser* self, GMarkupParseContext* context, const gchar* element_name, gchar** attribute_names, int attribute_names_length1, gchar** attribute_values, int attribute_values_length1, GError** error);
+static void _web_provisioning_parser_start_element_func_gmarkup_parser_start_element_func (GMarkupParseContext* context, const gchar* element_name, gchar** attribute_names, gchar** attribute_values, gpointer self, GError** error);
+static void web_provisioning_parser_end_element_func (WebProvisioningParser* self, GMarkupParseContext* context, const gchar* element_name, GError** error);
+static void _web_provisioning_parser_end_element_func_gmarkup_parser_end_element_func (GMarkupParseContext* context, const gchar* element_name, gpointer self, GError** error);
+static void web_provisioning_parser_text_element_func (WebProvisioningParser* self, GMarkupParseContext* context, const gchar* text, gsize text_len, GError** error);
+static void _web_provisioning_parser_text_element_func_gmarkup_parser_text_func (GMarkupParseContext* context, const gchar* text, gsize text_len, gpointer self, GError** error);
+IdCard* id_card_new (void);
+IdCard* id_card_construct (GType object_type);
+static void _vala_array_add1 (IdCard*** array, int* length, int* size, IdCard* value);
+GType rule_get_type (void) G_GNUC_CONST;
+Rule* rule_dup (const Rule* self);
+void rule_free (Rule* self);
+void rule_copy (const Rule* self, Rule* dest);
+void rule_destroy (Rule* self);
+void id_card_add_rule (IdCard* self, Rule* rule);
+GType trust_anchor_get_type (void) G_GNUC_CONST;
+TrustAnchor* trust_anchor_new (const gchar* ca_cert, const gchar* server_cert, const gchar* subject, const gchar* subject_alt);
+TrustAnchor* trust_anchor_construct (GType object_type, const gchar* ca_cert, const gchar* server_cert, const gchar* subject, const gchar* subject_alt);
+void id_card_set_trust_anchor_from_store (IdCard* self, TrustAnchor* ta);
+void id_card_set_display_name (IdCard* self, const gchar* value);
+void id_card_set_username (IdCard* self, const gchar* value);
+void id_card_set_password (IdCard* self, const gchar* value);
+void id_card_set_issuer (IdCard* self, const gchar* value);
+GeeArrayList* id_card_get_services (IdCard* self);
+Rule* id_card_get_rules (IdCard* self, int* result_length1);
+static Rule* _vala_array_dup2 (Rule* self, int length);
+static void _vala_Rule_array_free (Rule* array, gint array_length);
+static Rule* _vala_array_dup3 (Rule* self, int length);
+WebProvisioningParser* web_provisioning_parser_new (const gchar* path);
+WebProvisioningParser* web_provisioning_parser_construct (GType object_type, const gchar* path);
+void web_provisioning_parser_parse (WebProvisioningParser* self);
+IdCard** web_provisioning_parser_get_cards (WebProvisioningParser* self, int* result_length1);
+static void web_provisioning_parser_set_cards (WebProvisioningParser* self, IdCard** value, int value_length1);
+static IdCard** _vala_array_dup4 (IdCard** self, int length);
+static void web_provisioning_parser_finalize (GObject* obj);
+static void _vala_web_provisioning_parser_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec);
+static void _vala_web_provisioning_parser_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec);
+static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func);
+static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func);
+static gint _vala_array_length (gpointer array);
+
+static const GMarkupParser WEB_PROVISIONING_PARSER_parser = {_web_provisioning_parser_start_element_func_gmarkup_parser_start_element_func, _web_provisioning_parser_end_element_func_gmarkup_parser_end_element_func, _web_provisioning_parser_text_element_func_gmarkup_parser_text_func, NULL, NULL};
+
+gboolean web_provisioning_check_stack (GSList* stack, gchar** reference, int reference_length1) {
+       gboolean result = FALSE;
+       GSList* _tmp0_ = NULL;
+       guint _tmp1_ = 0U;
+       gchar** _tmp2_ = NULL;
+       gint _tmp2__length1 = 0;
+#line 39 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp0_ = stack;
+#line 39 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp1_ = g_slist_length (_tmp0_);
+#line 39 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp2_ = reference;
+#line 39 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp2__length1 = reference_length1;
+#line 39 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       if (_tmp1_ < ((guint) _tmp2__length1)) {
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               result = FALSE;
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               return result;
+#line 209 "moonshot-provisioning-common.c"
+       }
+       {
+               gint i = 0;
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               i = 0;
+#line 215 "moonshot-provisioning-common.c"
+               {
+                       gboolean _tmp3_ = FALSE;
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp3_ = TRUE;
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       while (TRUE) {
+#line 222 "moonshot-provisioning-common.c"
+                               gint _tmp5_ = 0;
+                               gchar** _tmp6_ = NULL;
+                               gint _tmp6__length1 = 0;
+                               GSList* _tmp7_ = NULL;
+                               gint _tmp8_ = 0;
+                               gconstpointer _tmp9_ = NULL;
+                               gchar** _tmp10_ = NULL;
+                               gint _tmp10__length1 = 0;
+                               gint _tmp11_ = 0;
+                               const gchar* _tmp12_ = NULL;
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                               if (!_tmp3_) {
+#line 235 "moonshot-provisioning-common.c"
+                                       gint _tmp4_ = 0;
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                       _tmp4_ = i;
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                       i = _tmp4_ + 1;
+#line 241 "moonshot-provisioning-common.c"
+                               }
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                               _tmp3_ = FALSE;
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                               _tmp5_ = i;
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                               _tmp6_ = reference;
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                               _tmp6__length1 = reference_length1;
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                               if (!(_tmp5_ < _tmp6__length1)) {
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                       break;
+#line 255 "moonshot-provisioning-common.c"
+                               }
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                               _tmp7_ = stack;
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                               _tmp8_ = i;
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                               _tmp9_ = g_slist_nth_data (_tmp7_, (guint) _tmp8_);
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                               _tmp10_ = reference;
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                               _tmp10__length1 = reference_length1;
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                               _tmp11_ = i;
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                               _tmp12_ = _tmp10_[_tmp11_];
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                               if (g_strcmp0 ((const gchar*) _tmp9_, _tmp12_) != 0) {
+#line 45 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                       result = FALSE;
+#line 45 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                       return result;
+#line 277 "moonshot-provisioning-common.c"
+                               }
+                       }
+               }
+       }
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       result = TRUE;
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       return result;
+#line 286 "moonshot-provisioning-common.c"
+}
+
+
+gboolean web_provisioning_always_confirm_handler (GSList* stack) {
+       gboolean result = FALSE;
+       gchar** always_confirm_path = NULL;
+       gchar* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+       gchar* _tmp2_ = NULL;
+       gchar* _tmp3_ = NULL;
+       gchar* _tmp4_ = NULL;
+       gchar** _tmp5_ = NULL;
+       gint always_confirm_path_length1 = 0;
+       gint _always_confirm_path_size_ = 0;
+       GSList* _tmp6_ = NULL;
+       gboolean _tmp7_ = FALSE;
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp0_ = g_strdup ("always-confirm");
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp1_ = g_strdup ("rule");
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp2_ = g_strdup ("selection-rules");
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp3_ = g_strdup ("identity");
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp4_ = g_strdup ("identities");
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp5_ = g_new0 (gchar*, 5 + 1);
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp5_[0] = _tmp0_;
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp5_[1] = _tmp1_;
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp5_[2] = _tmp2_;
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp5_[3] = _tmp3_;
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp5_[4] = _tmp4_;
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       always_confirm_path = _tmp5_;
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       always_confirm_path_length1 = 5;
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _always_confirm_path_size_ = always_confirm_path_length1;
+#line 55 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp6_ = stack;
+#line 55 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp7_ = web_provisioning_check_stack (_tmp6_, always_confirm_path, always_confirm_path_length1);
+#line 55 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       result = _tmp7_;
+#line 55 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       always_confirm_path = (_vala_array_free (always_confirm_path, always_confirm_path_length1, (GDestroyNotify) g_free), NULL);
+#line 55 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       return result;
+#line 341 "moonshot-provisioning-common.c"
+}
+
+
+gboolean web_provisioning_pattern_handler (GSList* stack) {
+       gboolean result = FALSE;
+       gchar** pattern_path = NULL;
+       gchar* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+       gchar* _tmp2_ = NULL;
+       gchar* _tmp3_ = NULL;
+       gchar* _tmp4_ = NULL;
+       gchar** _tmp5_ = NULL;
+       gint pattern_path_length1 = 0;
+       gint _pattern_path_size_ = 0;
+       GSList* _tmp6_ = NULL;
+       gboolean _tmp7_ = FALSE;
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp0_ = g_strdup ("pattern");
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp1_ = g_strdup ("rule");
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp2_ = g_strdup ("selection-rules");
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp3_ = g_strdup ("identity");
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp4_ = g_strdup ("identities");
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp5_ = g_new0 (gchar*, 5 + 1);
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp5_[0] = _tmp0_;
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp5_[1] = _tmp1_;
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp5_[2] = _tmp2_;
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp5_[3] = _tmp3_;
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp5_[4] = _tmp4_;
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       pattern_path = _tmp5_;
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       pattern_path_length1 = 5;
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _pattern_path_size_ = pattern_path_length1;
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp6_ = stack;
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp7_ = web_provisioning_check_stack (_tmp6_, pattern_path, pattern_path_length1);
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       result = _tmp7_;
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       pattern_path = (_vala_array_free (pattern_path, pattern_path_length1, (GDestroyNotify) g_free), NULL);
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       return result;
+#line 396 "moonshot-provisioning-common.c"
+}
+
+
+gboolean web_provisioning_server_cert_handler (GSList* stack) {
+       gboolean result = FALSE;
+       gchar** server_cert_path = NULL;
+       gchar* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+       gchar* _tmp2_ = NULL;
+       gchar* _tmp3_ = NULL;
+       gchar** _tmp4_ = NULL;
+       gint server_cert_path_length1 = 0;
+       gint _server_cert_path_size_ = 0;
+       GSList* _tmp5_ = NULL;
+       gboolean _tmp6_ = FALSE;
+#line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp0_ = g_strdup ("server-cert");
+#line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp1_ = g_strdup ("trust-anchor");
+#line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp2_ = g_strdup ("identity");
+#line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp3_ = g_strdup ("identities");
+#line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp4_ = g_new0 (gchar*, 4 + 1);
+#line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp4_[0] = _tmp0_;
+#line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp4_[1] = _tmp1_;
+#line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp4_[2] = _tmp2_;
+#line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp4_[3] = _tmp3_;
+#line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       server_cert_path = _tmp4_;
+#line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       server_cert_path_length1 = 4;
+#line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _server_cert_path_size_ = server_cert_path_length1;
+#line 70 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp5_ = stack;
+#line 70 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp6_ = web_provisioning_check_stack (_tmp5_, server_cert_path, server_cert_path_length1);
+#line 70 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       result = _tmp6_;
+#line 70 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       server_cert_path = (_vala_array_free (server_cert_path, server_cert_path_length1, (GDestroyNotify) g_free), NULL);
+#line 70 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       return result;
+#line 446 "moonshot-provisioning-common.c"
+}
+
+
+gboolean web_provisioning_subject_alt_handler (GSList* stack) {
+       gboolean result = FALSE;
+       gchar** subject_alt_path = NULL;
+       gchar* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+       gchar* _tmp2_ = NULL;
+       gchar* _tmp3_ = NULL;
+       gchar** _tmp4_ = NULL;
+       gint subject_alt_path_length1 = 0;
+       gint _subject_alt_path_size_ = 0;
+       GSList* _tmp5_ = NULL;
+       gboolean _tmp6_ = FALSE;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp0_ = g_strdup ("subject-alt");
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp1_ = g_strdup ("trust-anchor");
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp2_ = g_strdup ("identity");
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp3_ = g_strdup ("identities");
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp4_ = g_new0 (gchar*, 4 + 1);
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp4_[0] = _tmp0_;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp4_[1] = _tmp1_;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp4_[2] = _tmp2_;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp4_[3] = _tmp3_;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       subject_alt_path = _tmp4_;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       subject_alt_path_length1 = 4;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _subject_alt_path_size_ = subject_alt_path_length1;
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp5_ = stack;
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp6_ = web_provisioning_check_stack (_tmp5_, subject_alt_path, subject_alt_path_length1);
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       result = _tmp6_;
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       subject_alt_path = (_vala_array_free (subject_alt_path, subject_alt_path_length1, (GDestroyNotify) g_free), NULL);
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       return result;
+#line 496 "moonshot-provisioning-common.c"
+}
+
+
+gboolean web_provisioning_subject_handler (GSList* stack) {
+       gboolean result = FALSE;
+       gchar** subject_path = NULL;
+       gchar* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+       gchar* _tmp2_ = NULL;
+       gchar* _tmp3_ = NULL;
+       gchar** _tmp4_ = NULL;
+       gint subject_path_length1 = 0;
+       gint _subject_path_size_ = 0;
+       GSList* _tmp5_ = NULL;
+       gboolean _tmp6_ = FALSE;
+#line 82 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp0_ = g_strdup ("subject");
+#line 82 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp1_ = g_strdup ("trust-anchor");
+#line 82 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp2_ = g_strdup ("identity");
+#line 82 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp3_ = g_strdup ("identities");
+#line 82 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp4_ = g_new0 (gchar*, 4 + 1);
+#line 82 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp4_[0] = _tmp0_;
+#line 82 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp4_[1] = _tmp1_;
+#line 82 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp4_[2] = _tmp2_;
+#line 82 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp4_[3] = _tmp3_;
+#line 82 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       subject_path = _tmp4_;
+#line 82 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       subject_path_length1 = 4;
+#line 82 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _subject_path_size_ = subject_path_length1;
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp5_ = stack;
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp6_ = web_provisioning_check_stack (_tmp5_, subject_path, subject_path_length1);
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       result = _tmp6_;
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       subject_path = (_vala_array_free (subject_path, subject_path_length1, (GDestroyNotify) g_free), NULL);
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       return result;
+#line 546 "moonshot-provisioning-common.c"
+}
+
+
+gboolean web_provisioning_ca_cert_handler (GSList* stack) {
+       gboolean result = FALSE;
+       gchar** ca_path = NULL;
+       gchar* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+       gchar* _tmp2_ = NULL;
+       gchar* _tmp3_ = NULL;
+       gchar** _tmp4_ = NULL;
+       gint ca_path_length1 = 0;
+       gint _ca_path_size_ = 0;
+       GSList* _tmp5_ = NULL;
+       gboolean _tmp6_ = FALSE;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp0_ = g_strdup ("ca-cert");
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp1_ = g_strdup ("trust-anchor");
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp2_ = g_strdup ("identity");
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp3_ = g_strdup ("identities");
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp4_ = g_new0 (gchar*, 4 + 1);
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp4_[0] = _tmp0_;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp4_[1] = _tmp1_;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp4_[2] = _tmp2_;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp4_[3] = _tmp3_;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       ca_path = _tmp4_;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       ca_path_length1 = 4;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _ca_path_size_ = ca_path_length1;
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp5_ = stack;
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp6_ = web_provisioning_check_stack (_tmp5_, ca_path, ca_path_length1);
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       result = _tmp6_;
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       ca_path = (_vala_array_free (ca_path, ca_path_length1, (GDestroyNotify) g_free), NULL);
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       return result;
+#line 596 "moonshot-provisioning-common.c"
+}
+
+
+gboolean web_provisioning_realm_handler (GSList* stack) {
+       gboolean result = FALSE;
+       gchar** realm_path = NULL;
+       gchar* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+       gchar* _tmp2_ = NULL;
+       gchar** _tmp3_ = NULL;
+       gint realm_path_length1 = 0;
+       gint _realm_path_size_ = 0;
+       GSList* _tmp4_ = NULL;
+       gboolean _tmp5_ = FALSE;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp0_ = g_strdup ("realm");
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp1_ = g_strdup ("identity");
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp2_ = g_strdup ("identities");
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp3_ = g_new0 (gchar*, 3 + 1);
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp3_[0] = _tmp0_;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp3_[1] = _tmp1_;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp3_[2] = _tmp2_;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       realm_path = _tmp3_;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       realm_path_length1 = 3;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _realm_path_size_ = realm_path_length1;
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp4_ = stack;
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp5_ = web_provisioning_check_stack (_tmp4_, realm_path, realm_path_length1);
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       result = _tmp5_;
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       realm_path = (_vala_array_free (realm_path, realm_path_length1, (GDestroyNotify) g_free), NULL);
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       return result;
+#line 641 "moonshot-provisioning-common.c"
+}
+
+
+gboolean web_provisioning_password_handler (GSList* stack) {
+       gboolean result = FALSE;
+       gchar** password_path = NULL;
+       gchar* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+       gchar* _tmp2_ = NULL;
+       gchar** _tmp3_ = NULL;
+       gint password_path_length1 = 0;
+       gint _password_path_size_ = 0;
+       GSList* _tmp4_ = NULL;
+       gboolean _tmp5_ = FALSE;
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp0_ = g_strdup ("password");
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp1_ = g_strdup ("identity");
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp2_ = g_strdup ("identities");
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp3_ = g_new0 (gchar*, 3 + 1);
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp3_[0] = _tmp0_;
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp3_[1] = _tmp1_;
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp3_[2] = _tmp2_;
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       password_path = _tmp3_;
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       password_path_length1 = 3;
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _password_path_size_ = password_path_length1;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp4_ = stack;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp5_ = web_provisioning_check_stack (_tmp4_, password_path, password_path_length1);
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       result = _tmp5_;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       password_path = (_vala_array_free (password_path, password_path_length1, (GDestroyNotify) g_free), NULL);
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       return result;
+#line 686 "moonshot-provisioning-common.c"
+}
+
+
+gboolean web_provisioning_user_handler (GSList* stack) {
+       gboolean result = FALSE;
+       gchar** user_path = NULL;
+       gchar* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+       gchar* _tmp2_ = NULL;
+       gchar** _tmp3_ = NULL;
+       gint user_path_length1 = 0;
+       gint _user_path_size_ = 0;
+       GSList* _tmp4_ = NULL;
+       gboolean _tmp5_ = FALSE;
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp0_ = g_strdup ("user");
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp1_ = g_strdup ("identity");
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp2_ = g_strdup ("identities");
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp3_ = g_new0 (gchar*, 3 + 1);
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp3_[0] = _tmp0_;
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp3_[1] = _tmp1_;
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp3_[2] = _tmp2_;
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       user_path = _tmp3_;
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       user_path_length1 = 3;
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _user_path_size_ = user_path_length1;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp4_ = stack;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp5_ = web_provisioning_check_stack (_tmp4_, user_path, user_path_length1);
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       result = _tmp5_;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       user_path = (_vala_array_free (user_path, user_path_length1, (GDestroyNotify) g_free), NULL);
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       return result;
+#line 731 "moonshot-provisioning-common.c"
+}
+
+
+gboolean web_provisioning_display_name_handler (GSList* stack) {
+       gboolean result = FALSE;
+       gchar** display_name_path = NULL;
+       gchar* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+       gchar* _tmp2_ = NULL;
+       gchar** _tmp3_ = NULL;
+       gint display_name_path_length1 = 0;
+       gint _display_name_path_size_ = 0;
+       GSList* _tmp4_ = NULL;
+       gboolean _tmp5_ = FALSE;
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp0_ = g_strdup ("display-name");
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp1_ = g_strdup ("identity");
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp2_ = g_strdup ("identities");
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp3_ = g_new0 (gchar*, 3 + 1);
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp3_[0] = _tmp0_;
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp3_[1] = _tmp1_;
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp3_[2] = _tmp2_;
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       display_name_path = _tmp3_;
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       display_name_path_length1 = 3;
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _display_name_path_size_ = display_name_path_length1;
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp4_ = stack;
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp5_ = web_provisioning_check_stack (_tmp4_, display_name_path, display_name_path_length1);
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       result = _tmp5_;
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       display_name_path = (_vala_array_free (display_name_path, display_name_path_length1, (GDestroyNotify) g_free), NULL);
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       return result;
+#line 776 "moonshot-provisioning-common.c"
+}
+
+
+static void _web_provisioning_parser_start_element_func_gmarkup_parser_start_element_func (GMarkupParseContext* context, const gchar* element_name, gchar** attribute_names, gchar** attribute_values, gpointer self, GError** error) {
+#line 226 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       web_provisioning_parser_start_element_func ((WebProvisioningParser*) self, context, element_name, attribute_names, _vala_array_length (attribute_names), attribute_values, _vala_array_length (attribute_values), error);
+#line 783 "moonshot-provisioning-common.c"
+}
+
+
+static void _web_provisioning_parser_end_element_func_gmarkup_parser_end_element_func (GMarkupParseContext* context, const gchar* element_name, gpointer self, GError** error) {
+#line 226 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       web_provisioning_parser_end_element_func ((WebProvisioningParser*) self, context, element_name, error);
+#line 790 "moonshot-provisioning-common.c"
+}
+
+
+static void _web_provisioning_parser_text_element_func_gmarkup_parser_text_func (GMarkupParseContext* context, const gchar* text, gsize text_len, gpointer self, GError** error) {
+#line 226 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       web_provisioning_parser_text_element_func ((WebProvisioningParser*) self, context, text, text_len, error);
+#line 797 "moonshot-provisioning-common.c"
+}
+
+
+static gpointer _g_object_ref0 (gpointer self) {
+#line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       return self ? g_object_ref (self) : NULL;
+#line 804 "moonshot-provisioning-common.c"
+}
+
+
+static void _vala_array_add1 (IdCard*** array, int* length, int* size, IdCard* value) {
+#line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       if ((*length) == (*size)) {
+#line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               *size = (*size) ? (2 * (*size)) : 4;
+#line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               *array = g_renew (IdCard*, *array, (*size) + 1);
+#line 815 "moonshot-provisioning-common.c"
+       }
+#line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       (*array)[(*length)++] = value;
+#line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       (*array)[*length] = NULL;
+#line 821 "moonshot-provisioning-common.c"
+}
+
+
+static void web_provisioning_parser_start_element_func (WebProvisioningParser* self, GMarkupParseContext* context, const gchar* element_name, gchar** attribute_names, int attribute_names_length1, gchar** attribute_values, int attribute_values_length1, GError** error) {
+       const gchar* _tmp0_ = NULL;
+#line 126 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       g_return_if_fail (self != NULL);
+#line 126 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       g_return_if_fail (context != NULL);
+#line 126 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       g_return_if_fail (element_name != NULL);
+#line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp0_ = element_name;
+#line 131 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       if (g_strcmp0 (_tmp0_, "identity") == 0) {
+#line 837 "moonshot-provisioning-common.c"
+               IdCard* _tmp1_ = NULL;
+               IdCard** _tmp2_ = NULL;
+               gint _tmp2__length1 = 0;
+               IdCard* _tmp3_ = NULL;
+               IdCard* _tmp4_ = NULL;
+               gchar* _tmp5_ = NULL;
+               gchar* _tmp6_ = NULL;
+               gchar* _tmp7_ = NULL;
+               gchar* _tmp8_ = NULL;
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp1_ = id_card_new ();
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _g_object_unref0 (self->priv->card);
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               self->priv->card = _tmp1_;
+#line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp2_ = self->priv->_cards;
+#line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp2__length1 = self->priv->_cards_length1;
+#line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp3_ = self->priv->card;
+#line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp4_ = _g_object_ref0 (_tmp3_);
+#line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _vala_array_add1 (&self->priv->_cards, &self->priv->_cards_length1, &self->priv->__cards_size_, _tmp4_);
+#line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp5_ = g_strdup ("");
+#line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _g_free0 (self->priv->ta_ca_cert);
+#line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               self->priv->ta_ca_cert = _tmp5_;
+#line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp6_ = g_strdup ("");
+#line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _g_free0 (self->priv->ta_server_cert);
+#line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               self->priv->ta_server_cert = _tmp6_;
+#line 138 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp7_ = g_strdup ("");
+#line 138 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _g_free0 (self->priv->ta_subject);
+#line 138 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               self->priv->ta_subject = _tmp7_;
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp8_ = g_strdup ("");
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _g_free0 (self->priv->ta_subject_alt);
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               self->priv->ta_subject_alt = _tmp8_;
+#line 887 "moonshot-provisioning-common.c"
+       } else {
+               const gchar* _tmp9_ = NULL;
+#line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp9_ = element_name;
+#line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               if (g_strcmp0 (_tmp9_, "rule") == 0) {
+#line 894 "moonshot-provisioning-common.c"
+                       IdCard* _tmp10_ = NULL;
+                       Rule _tmp11_ = {0};
+                       Rule _tmp12_ = {0};
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp10_ = self->priv->card;
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       memset (&_tmp11_, 0, sizeof (Rule));
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp12_ = _tmp11_;
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       id_card_add_rule (_tmp10_, &_tmp12_);
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       rule_destroy (&_tmp12_);
+#line 908 "moonshot-provisioning-common.c"
+               }
+       }
+}
+
+
+static void web_provisioning_parser_end_element_func (WebProvisioningParser* self, GMarkupParseContext* context, const gchar* element_name, GError** error) {
+       const gchar* _tmp0_ = NULL;
+#line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       g_return_if_fail (self != NULL);
+#line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       g_return_if_fail (context != NULL);
+#line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       g_return_if_fail (element_name != NULL);
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp0_ = element_name;
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       if (g_strcmp0 (_tmp0_, "identity") == 0) {
+#line 926 "moonshot-provisioning-common.c"
+               gboolean _tmp1_ = FALSE;
+               const gchar* _tmp2_ = NULL;
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp2_ = self->priv->ta_ca_cert;
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               if (g_strcmp0 (_tmp2_, "") != 0) {
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp1_ = TRUE;
+#line 935 "moonshot-provisioning-common.c"
+               } else {
+                       const gchar* _tmp3_ = NULL;
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp3_ = self->priv->ta_server_cert;
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp1_ = g_strcmp0 (_tmp3_, "") != 0;
+#line 942 "moonshot-provisioning-common.c"
+               }
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               if (_tmp1_) {
+#line 946 "moonshot-provisioning-common.c"
+                       TrustAnchor* ta = NULL;
+                       const gchar* _tmp4_ = NULL;
+                       const gchar* _tmp5_ = NULL;
+                       const gchar* _tmp6_ = NULL;
+                       const gchar* _tmp7_ = NULL;
+                       TrustAnchor* _tmp8_ = NULL;
+                       IdCard* _tmp9_ = NULL;
+                       TrustAnchor* _tmp10_ = NULL;
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp4_ = self->priv->ta_ca_cert;
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp5_ = self->priv->ta_server_cert;
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp6_ = self->priv->ta_subject;
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp7_ = self->priv->ta_subject_alt;
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp8_ = trust_anchor_new (_tmp4_, _tmp5_, _tmp6_, _tmp7_);
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       ta = _tmp8_;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp9_ = self->priv->card;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp10_ = ta;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       id_card_set_trust_anchor_from_store (_tmp9_, _tmp10_);
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _g_object_unref0 (ta);
+#line 975 "moonshot-provisioning-common.c"
+               }
+       }
+}
+
+
+static Rule* _vala_array_dup2 (Rule* self, int length) {
+       Rule* result;
+       int i;
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       result = g_new0 (Rule, length);
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       for (i = 0; i < length; i++) {
+#line 988 "moonshot-provisioning-common.c"
+               Rule _tmp0_ = {0};
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               rule_copy (&self[i], &_tmp0_);
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               result[i] = _tmp0_;
+#line 994 "moonshot-provisioning-common.c"
+       }
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       return result;
+#line 998 "moonshot-provisioning-common.c"
+}
+
+
+static void _vala_Rule_array_free (Rule* array, gint array_length) {
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       if (array != NULL) {
+#line 1005 "moonshot-provisioning-common.c"
+               int i;
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               for (i = 0; i < array_length; i = i + 1) {
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       rule_destroy (&array[i]);
+#line 1011 "moonshot-provisioning-common.c"
+               }
+       }
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       g_free (array);
+#line 1016 "moonshot-provisioning-common.c"
+}
+
+
+static Rule* _vala_array_dup3 (Rule* self, int length) {
+       Rule* result;
+       int i;
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       result = g_new0 (Rule, length);
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       for (i = 0; i < length; i++) {
+#line 1027 "moonshot-provisioning-common.c"
+               Rule _tmp0_ = {0};
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               rule_copy (&self[i], &_tmp0_);
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               result[i] = _tmp0_;
+#line 1033 "moonshot-provisioning-common.c"
+       }
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       return result;
+#line 1037 "moonshot-provisioning-common.c"
+}
+
+
+static void web_provisioning_parser_text_element_func (WebProvisioningParser* self, GMarkupParseContext* context, const gchar* text, gsize text_len, GError** error) {
+       GSList* stack = NULL;
+       GMarkupParseContext* _tmp0_ = NULL;
+       GSList* _tmp1_ = NULL;
+       gsize _tmp2_ = 0UL;
+       gboolean _tmp3_ = FALSE;
+       GSList* _tmp4_ = NULL;
+       gconstpointer _tmp5_ = NULL;
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       g_return_if_fail (self != NULL);
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       g_return_if_fail (context != NULL);
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       g_return_if_fail (text != NULL);
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp0_ = context;
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp1_ = g_markup_parse_context_get_element_stack (_tmp0_);
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       stack = _tmp1_;
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp2_ = text_len;
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       if (_tmp2_ < ((gsize) 1)) {
+#line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               return;
+#line 1067 "moonshot-provisioning-common.c"
+       }
+#line 172 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp4_ = stack;
+#line 172 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp5_ = g_slist_nth_data (_tmp4_, (guint) 0);
+#line 172 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       if (g_strcmp0 ((const gchar*) _tmp5_, "display-name") == 0) {
+#line 1075 "moonshot-provisioning-common.c"
+               GSList* _tmp6_ = NULL;
+               gboolean _tmp7_ = FALSE;
+#line 172 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp6_ = stack;
+#line 172 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp7_ = web_provisioning_display_name_handler (_tmp6_);
+#line 172 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp3_ = _tmp7_;
+#line 1084 "moonshot-provisioning-common.c"
+       } else {
+#line 172 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp3_ = FALSE;
+#line 1088 "moonshot-provisioning-common.c"
+       }
+#line 172 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       if (_tmp3_) {
+#line 1092 "moonshot-provisioning-common.c"
+               IdCard* _tmp8_ = NULL;
+               const gchar* _tmp9_ = NULL;
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp8_ = self->priv->card;
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp9_ = text;
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               id_card_set_display_name (_tmp8_, _tmp9_);
+#line 1101 "moonshot-provisioning-common.c"
+       } else {
+               gboolean _tmp10_ = FALSE;
+               GSList* _tmp11_ = NULL;
+               gconstpointer _tmp12_ = NULL;
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp11_ = stack;
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp12_ = g_slist_nth_data (_tmp11_, (guint) 0);
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               if (g_strcmp0 ((const gchar*) _tmp12_, "user") == 0) {
+#line 1112 "moonshot-provisioning-common.c"
+                       GSList* _tmp13_ = NULL;
+                       gboolean _tmp14_ = FALSE;
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp13_ = stack;
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp14_ = web_provisioning_user_handler (_tmp13_);
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp10_ = _tmp14_;
+#line 1121 "moonshot-provisioning-common.c"
+               } else {
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp10_ = FALSE;
+#line 1125 "moonshot-provisioning-common.c"
+               }
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               if (_tmp10_) {
+#line 1129 "moonshot-provisioning-common.c"
+                       IdCard* _tmp15_ = NULL;
+                       const gchar* _tmp16_ = NULL;
+#line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp15_ = self->priv->card;
+#line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp16_ = text;
+#line 178 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       id_card_set_username (_tmp15_, _tmp16_);
+#line 1138 "moonshot-provisioning-common.c"
+               } else {
+                       gboolean _tmp17_ = FALSE;
+                       GSList* _tmp18_ = NULL;
+                       gconstpointer _tmp19_ = NULL;
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp18_ = stack;
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp19_ = g_slist_nth_data (_tmp18_, (guint) 0);
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       if (g_strcmp0 ((const gchar*) _tmp19_, "password") == 0) {
+#line 1149 "moonshot-provisioning-common.c"
+                               GSList* _tmp20_ = NULL;
+                               gboolean _tmp21_ = FALSE;
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                               _tmp20_ = stack;
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                               _tmp21_ = web_provisioning_password_handler (_tmp20_);
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                               _tmp17_ = _tmp21_;
+#line 1158 "moonshot-provisioning-common.c"
+                       } else {
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                               _tmp17_ = FALSE;
+#line 1162 "moonshot-provisioning-common.c"
+                       }
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       if (_tmp17_) {
+#line 1166 "moonshot-provisioning-common.c"
+                               IdCard* _tmp22_ = NULL;
+                               const gchar* _tmp23_ = NULL;
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                               _tmp22_ = self->priv->card;
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                               _tmp23_ = text;
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                               id_card_set_password (_tmp22_, _tmp23_);
+#line 1175 "moonshot-provisioning-common.c"
+                       } else {
+                               gboolean _tmp24_ = FALSE;
+                               GSList* _tmp25_ = NULL;
+                               gconstpointer _tmp26_ = NULL;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                               _tmp25_ = stack;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                               _tmp26_ = g_slist_nth_data (_tmp25_, (guint) 0);
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                               if (g_strcmp0 ((const gchar*) _tmp26_, "realm") == 0) {
+#line 1186 "moonshot-provisioning-common.c"
+                                       GSList* _tmp27_ = NULL;
+                                       gboolean _tmp28_ = FALSE;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                       _tmp27_ = stack;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                       _tmp28_ = web_provisioning_realm_handler (_tmp27_);
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                       _tmp24_ = _tmp28_;
+#line 1195 "moonshot-provisioning-common.c"
+                               } else {
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                       _tmp24_ = FALSE;
+#line 1199 "moonshot-provisioning-common.c"
+                               }
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                               if (_tmp24_) {
+#line 1203 "moonshot-provisioning-common.c"
+                                       IdCard* _tmp29_ = NULL;
+                                       const gchar* _tmp30_ = NULL;
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                       _tmp29_ = self->priv->card;
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                       _tmp30_ = text;
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                       id_card_set_issuer (_tmp29_, _tmp30_);
+#line 1212 "moonshot-provisioning-common.c"
+                               } else {
+                                       GSList* _tmp31_ = NULL;
+                                       gconstpointer _tmp32_ = NULL;
+#line 188 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                       _tmp31_ = stack;
+#line 188 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                       _tmp32_ = g_slist_nth_data (_tmp31_, (guint) 0);
+#line 188 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                       if (g_strcmp0 ((const gchar*) _tmp32_, "service") == 0) {
+#line 1222 "moonshot-provisioning-common.c"
+                                               IdCard* _tmp33_ = NULL;
+                                               GeeArrayList* _tmp34_ = NULL;
+                                               GeeArrayList* _tmp35_ = NULL;
+                                               const gchar* _tmp36_ = NULL;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                               _tmp33_ = self->priv->card;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                               _tmp34_ = id_card_get_services (_tmp33_);
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                               _tmp35_ = _tmp34_;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                               _tmp36_ = text;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                               gee_abstract_collection_add ((GeeAbstractCollection*) _tmp35_, _tmp36_);
+#line 1237 "moonshot-provisioning-common.c"
+                                       } else {
+                                               gboolean _tmp37_ = FALSE;
+                                               GSList* _tmp38_ = NULL;
+                                               gconstpointer _tmp39_ = NULL;
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                               _tmp38_ = stack;
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                               _tmp39_ = g_slist_nth_data (_tmp38_, (guint) 0);
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                               if (g_strcmp0 ((const gchar*) _tmp39_, "pattern") == 0) {
+#line 1248 "moonshot-provisioning-common.c"
+                                                       GSList* _tmp40_ = NULL;
+                                                       gboolean _tmp41_ = FALSE;
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                       _tmp40_ = stack;
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                       _tmp41_ = web_provisioning_pattern_handler (_tmp40_);
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                       _tmp37_ = _tmp41_;
+#line 1257 "moonshot-provisioning-common.c"
+                                               } else {
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                       _tmp37_ = FALSE;
+#line 1261 "moonshot-provisioning-common.c"
+                                               }
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                               if (_tmp37_) {
+#line 1265 "moonshot-provisioning-common.c"
+                                                       Rule* temp = NULL;
+                                                       IdCard* _tmp42_ = NULL;
+                                                       Rule* _tmp43_ = NULL;
+                                                       gint _tmp43__length1 = 0;
+                                                       Rule* _tmp44_ = NULL;
+                                                       gint _tmp44__length1 = 0;
+                                                       Rule* _tmp45_ = NULL;
+                                                       gint _tmp45__length1 = 0;
+                                                       gint temp_length1 = 0;
+                                                       gint _temp_size_ = 0;
+                                                       IdCard* _tmp46_ = NULL;
+                                                       Rule* _tmp47_ = NULL;
+                                                       gint _tmp47__length1 = 0;
+                                                       Rule* _tmp48_ = NULL;
+                                                       gint _tmp48__length1 = 0;
+                                                       Rule* _tmp49_ = NULL;
+                                                       gint _tmp49__length1 = 0;
+                                                       const gchar* _tmp50_ = NULL;
+                                                       gchar* _tmp51_ = NULL;
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                       _tmp42_ = self->priv->card;
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                       _tmp43_ = id_card_get_rules (_tmp42_, &_tmp43__length1);
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                       _tmp44_ = _tmp43_;
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                       _tmp44__length1 = _tmp43__length1;
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                       _tmp45_ = (_tmp44_ != NULL) ? _vala_array_dup2 (_tmp44_, _tmp44__length1) : ((gpointer) _tmp44_);
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                       _tmp45__length1 = _tmp44__length1;
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                       temp = _tmp45_;
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                       temp_length1 = _tmp45__length1;
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                       _temp_size_ = temp_length1;
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                       _tmp46_ = self->priv->card;
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                       _tmp47_ = id_card_get_rules (_tmp46_, &_tmp47__length1);
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                       _tmp48_ = _tmp47_;
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                       _tmp48__length1 = _tmp47__length1;
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                       _tmp49_ = temp;
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                       _tmp49__length1 = temp_length1;
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                       _tmp50_ = text;
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                       _tmp51_ = g_strdup (_tmp50_);
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                       _g_free0 (_tmp48_[_tmp49__length1 - 1].pattern);
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                       _tmp48_[_tmp49__length1 - 1].pattern = _tmp51_;
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                       temp = (_vala_Rule_array_free (temp, temp_length1), NULL);
+#line 1325 "moonshot-provisioning-common.c"
+                                               } else {
+                                                       gboolean _tmp52_ = FALSE;
+                                                       GSList* _tmp53_ = NULL;
+                                                       gconstpointer _tmp54_ = NULL;
+#line 200 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                       _tmp53_ = stack;
+#line 200 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                       _tmp54_ = g_slist_nth_data (_tmp53_, (guint) 0);
+#line 200 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                       if (g_strcmp0 ((const gchar*) _tmp54_, "always-confirm") == 0) {
+#line 1336 "moonshot-provisioning-common.c"
+                                                               GSList* _tmp55_ = NULL;
+                                                               gboolean _tmp56_ = FALSE;
+#line 200 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                               _tmp55_ = stack;
+#line 200 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                               _tmp56_ = web_provisioning_always_confirm_handler (_tmp55_);
+#line 200 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                               _tmp52_ = _tmp56_;
+#line 1345 "moonshot-provisioning-common.c"
+                                                       } else {
+#line 200 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                               _tmp52_ = FALSE;
+#line 1349 "moonshot-provisioning-common.c"
+                                                       }
+#line 200 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                       if (_tmp52_) {
+#line 1353 "moonshot-provisioning-common.c"
+                                                               gboolean _tmp57_ = FALSE;
+                                                               const gchar* _tmp58_ = NULL;
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                               _tmp58_ = text;
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                               if (g_strcmp0 (_tmp58_, "true") == 0) {
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       _tmp57_ = TRUE;
+#line 1362 "moonshot-provisioning-common.c"
+                                                               } else {
+                                                                       const gchar* _tmp59_ = NULL;
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       _tmp59_ = text;
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       _tmp57_ = g_strcmp0 (_tmp59_, "false") == 0;
+#line 1369 "moonshot-provisioning-common.c"
+                                                               }
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                               if (_tmp57_) {
+#line 1373 "moonshot-provisioning-common.c"
+                                                                       Rule* temp = NULL;
+                                                                       IdCard* _tmp60_ = NULL;
+                                                                       Rule* _tmp61_ = NULL;
+                                                                       gint _tmp61__length1 = 0;
+                                                                       Rule* _tmp62_ = NULL;
+                                                                       gint _tmp62__length1 = 0;
+                                                                       Rule* _tmp63_ = NULL;
+                                                                       gint _tmp63__length1 = 0;
+                                                                       gint temp_length1 = 0;
+                                                                       gint _temp_size_ = 0;
+                                                                       IdCard* _tmp64_ = NULL;
+                                                                       Rule* _tmp65_ = NULL;
+                                                                       gint _tmp65__length1 = 0;
+                                                                       Rule* _tmp66_ = NULL;
+                                                                       gint _tmp66__length1 = 0;
+                                                                       Rule* _tmp67_ = NULL;
+                                                                       gint _tmp67__length1 = 0;
+                                                                       const gchar* _tmp68_ = NULL;
+                                                                       gchar* _tmp69_ = NULL;
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       _tmp60_ = self->priv->card;
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       _tmp61_ = id_card_get_rules (_tmp60_, &_tmp61__length1);
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       _tmp62_ = _tmp61_;
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       _tmp62__length1 = _tmp61__length1;
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       _tmp63_ = (_tmp62_ != NULL) ? _vala_array_dup3 (_tmp62_, _tmp62__length1) : ((gpointer) _tmp62_);
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       _tmp63__length1 = _tmp62__length1;
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       temp = _tmp63_;
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       temp_length1 = _tmp63__length1;
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       _temp_size_ = temp_length1;
+#line 205 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       _tmp64_ = self->priv->card;
+#line 205 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       _tmp65_ = id_card_get_rules (_tmp64_, &_tmp65__length1);
+#line 205 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       _tmp66_ = _tmp65_;
+#line 205 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       _tmp66__length1 = _tmp65__length1;
+#line 205 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       _tmp67_ = temp;
+#line 205 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       _tmp67__length1 = temp_length1;
+#line 205 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       _tmp68_ = text;
+#line 205 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       _tmp69_ = g_strdup (_tmp68_);
+#line 205 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       _g_free0 (_tmp66_[_tmp67__length1 - 1].always_confirm);
+#line 205 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       _tmp66_[_tmp67__length1 - 1].always_confirm = _tmp69_;
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       temp = (_vala_Rule_array_free (temp, temp_length1), NULL);
+#line 1433 "moonshot-provisioning-common.c"
+                                                               }
+                                                       } else {
+                                                               gboolean _tmp70_ = FALSE;
+                                                               GSList* _tmp71_ = NULL;
+                                                               gconstpointer _tmp72_ = NULL;
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                               _tmp71_ = stack;
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                               _tmp72_ = g_slist_nth_data (_tmp71_, (guint) 0);
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                               if (g_strcmp0 ((const gchar*) _tmp72_, "ca-cert") == 0) {
+#line 1445 "moonshot-provisioning-common.c"
+                                                                       GSList* _tmp73_ = NULL;
+                                                                       gboolean _tmp74_ = FALSE;
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       _tmp73_ = stack;
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       _tmp74_ = web_provisioning_ca_cert_handler (_tmp73_);
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       _tmp70_ = _tmp74_;
+#line 1454 "moonshot-provisioning-common.c"
+                                                               } else {
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       _tmp70_ = FALSE;
+#line 1458 "moonshot-provisioning-common.c"
+                                                               }
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                               if (_tmp70_) {
+#line 1462 "moonshot-provisioning-common.c"
+                                                                       const gchar* _tmp75_ = NULL;
+                                                                       const gchar* _tmp76_ = NULL;
+                                                                       gchar* _tmp77_ = NULL;
+#line 210 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       _tmp76_ = text;
+#line 210 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       _tmp75_ = _tmp76_;
+#line 210 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       if (_tmp75_ == NULL) {
+#line 210 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                               _tmp75_ = "";
+#line 1474 "moonshot-provisioning-common.c"
+                                                                       }
+#line 210 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       _tmp77_ = g_strdup (_tmp75_);
+#line 210 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       _g_free0 (self->priv->ta_ca_cert);
+#line 210 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       self->priv->ta_ca_cert = _tmp77_;
+#line 1482 "moonshot-provisioning-common.c"
+                                                               } else {
+                                                                       gboolean _tmp78_ = FALSE;
+                                                                       GSList* _tmp79_ = NULL;
+                                                                       gconstpointer _tmp80_ = NULL;
+#line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       _tmp79_ = stack;
+#line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       _tmp80_ = g_slist_nth_data (_tmp79_, (guint) 0);
+#line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       if (g_strcmp0 ((const gchar*) _tmp80_, "server-cert") == 0) {
+#line 1493 "moonshot-provisioning-common.c"
+                                                                               GSList* _tmp81_ = NULL;
+                                                                               gboolean _tmp82_ = FALSE;
+#line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                               _tmp81_ = stack;
+#line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                               _tmp82_ = web_provisioning_server_cert_handler (_tmp81_);
+#line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                               _tmp78_ = _tmp82_;
+#line 1502 "moonshot-provisioning-common.c"
+                                                                       } else {
+#line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                               _tmp78_ = FALSE;
+#line 1506 "moonshot-provisioning-common.c"
+                                                                       }
+#line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                       if (_tmp78_) {
+#line 1510 "moonshot-provisioning-common.c"
+                                                                               const gchar* _tmp83_ = NULL;
+                                                                               const gchar* _tmp84_ = NULL;
+                                                                               gchar* _tmp85_ = NULL;
+#line 214 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                               _tmp84_ = text;
+#line 214 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                               _tmp83_ = _tmp84_;
+#line 214 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                               if (_tmp83_ == NULL) {
+#line 214 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                                       _tmp83_ = "";
+#line 1522 "moonshot-provisioning-common.c"
+                                                                               }
+#line 214 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                               _tmp85_ = g_strdup (_tmp83_);
+#line 214 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                               _g_free0 (self->priv->ta_server_cert);
+#line 214 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                               self->priv->ta_server_cert = _tmp85_;
+#line 1530 "moonshot-provisioning-common.c"
+                                                                       } else {
+                                                                               gboolean _tmp86_ = FALSE;
+                                                                               GSList* _tmp87_ = NULL;
+                                                                               gconstpointer _tmp88_ = NULL;
+#line 216 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                               _tmp87_ = stack;
+#line 216 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                               _tmp88_ = g_slist_nth_data (_tmp87_, (guint) 0);
+#line 216 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                               if (g_strcmp0 ((const gchar*) _tmp88_, "subject") == 0) {
+#line 1541 "moonshot-provisioning-common.c"
+                                                                                       GSList* _tmp89_ = NULL;
+                                                                                       gboolean _tmp90_ = FALSE;
+#line 216 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                                       _tmp89_ = stack;
+#line 216 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                                       _tmp90_ = web_provisioning_subject_handler (_tmp89_);
+#line 216 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                                       _tmp86_ = _tmp90_;
+#line 1550 "moonshot-provisioning-common.c"
+                                                                               } else {
+#line 216 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                                       _tmp86_ = FALSE;
+#line 1554 "moonshot-provisioning-common.c"
+                                                                               }
+#line 216 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                               if (_tmp86_) {
+#line 1558 "moonshot-provisioning-common.c"
+                                                                                       const gchar* _tmp91_ = NULL;
+                                                                                       gchar* _tmp92_ = NULL;
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                                       _tmp91_ = text;
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                                       _tmp92_ = g_strdup (_tmp91_);
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                                       _g_free0 (self->priv->ta_subject);
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                                       self->priv->ta_subject = _tmp92_;
+#line 1569 "moonshot-provisioning-common.c"
+                                                                               } else {
+                                                                                       gboolean _tmp93_ = FALSE;
+                                                                                       GSList* _tmp94_ = NULL;
+                                                                                       gconstpointer _tmp95_ = NULL;
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                                       _tmp94_ = stack;
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                                       _tmp95_ = g_slist_nth_data (_tmp94_, (guint) 0);
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                                       if (g_strcmp0 ((const gchar*) _tmp95_, "subject-alt") == 0) {
+#line 1580 "moonshot-provisioning-common.c"
+                                                                                               GSList* _tmp96_ = NULL;
+                                                                                               gboolean _tmp97_ = FALSE;
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                                               _tmp96_ = stack;
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                                               _tmp97_ = web_provisioning_subject_alt_handler (_tmp96_);
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                                               _tmp93_ = _tmp97_;
+#line 1589 "moonshot-provisioning-common.c"
+                                                                                       } else {
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                                               _tmp93_ = FALSE;
+#line 1593 "moonshot-provisioning-common.c"
+                                                                                       }
+#line 220 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                                       if (_tmp93_) {
+#line 1597 "moonshot-provisioning-common.c"
+                                                                                               const gchar* _tmp98_ = NULL;
+                                                                                               gchar* _tmp99_ = NULL;
+#line 222 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                                               _tmp98_ = text;
+#line 222 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                                               _tmp99_ = g_strdup (_tmp98_);
+#line 222 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                                               _g_free0 (self->priv->ta_subject_alt);
+#line 222 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                                                                                               self->priv->ta_subject_alt = _tmp99_;
+#line 1608 "moonshot-provisioning-common.c"
+                                                                                       }
+                                                                               }
+                                                                       }
+                                                               }
+                                                       }
+                                               }
+                                       }
+                               }
+                       }
+               }
+       }
+}
+
+
+WebProvisioningParser* web_provisioning_parser_construct (GType object_type, const gchar* path) {
+       WebProvisioningParser * self = NULL;
+       GMarkupParseContext* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+       const gchar* _tmp2_ = NULL;
+       gchar* _tmp3_ = NULL;
+       GFile* file = NULL;
+       const gchar* _tmp4_ = NULL;
+       GFile* _tmp5_ = NULL;
+       GError * _inner_error_ = NULL;
+#line 248 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       g_return_val_if_fail (path != NULL, NULL);
+#line 248 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       self = (WebProvisioningParser*) g_object_new (object_type, NULL);
+#line 250 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp0_ = g_markup_parse_context_new (&WEB_PROVISIONING_PARSER_parser, 0, self, NULL);
+#line 250 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _g_markup_parse_context_free0 (self->priv->ctx);
+#line 250 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       self->priv->ctx = _tmp0_;
+#line 252 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp1_ = g_strdup ("");
+#line 252 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _g_free0 (self->priv->text);
+#line 252 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       self->priv->text = _tmp1_;
+#line 253 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp2_ = path;
+#line 253 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp3_ = g_strdup (_tmp2_);
+#line 253 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _g_free0 (self->priv->path);
+#line 253 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       self->priv->path = _tmp3_;
+#line 255 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp4_ = path;
+#line 255 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp5_ = g_file_new_for_path (_tmp4_);
+#line 255 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       file = _tmp5_;
+#line 1663 "moonshot-provisioning-common.c"
+       {
+               GFileInputStream* _tmp6_ = NULL;
+               GFile* _tmp7_ = NULL;
+               GFileInputStream* _tmp8_ = NULL;
+               GDataInputStream* dis = NULL;
+               GDataInputStream* _tmp9_ = NULL;
+               gchar* line = NULL;
+#line 259 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp7_ = file;
+#line 259 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp8_ = g_file_read (_tmp7_, NULL, &_inner_error_);
+#line 259 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp6_ = _tmp8_;
+#line 259 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 1679 "moonshot-provisioning-common.c"
+                       goto __catch0_g_error;
+               }
+#line 259 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp9_ = g_data_input_stream_new ((GInputStream*) _tmp6_);
+#line 259 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               dis = _tmp9_;
+#line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               while (TRUE) {
+#line 1688 "moonshot-provisioning-common.c"
+                       gchar* _tmp10_ = NULL;
+                       GDataInputStream* _tmp11_ = NULL;
+                       gchar* _tmp12_ = NULL;
+                       gchar* _tmp13_ = NULL;
+                       const gchar* _tmp14_ = NULL;
+                       const gchar* _tmp15_ = NULL;
+                       const gchar* _tmp16_ = NULL;
+                       gchar* _tmp17_ = NULL;
+                       const gchar* _tmp18_ = NULL;
+                       gchar* _tmp19_ = NULL;
+#line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp11_ = dis;
+#line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp12_ = g_data_input_stream_read_line (_tmp11_, NULL, NULL, &_inner_error_);
+#line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp10_ = _tmp12_;
+#line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                               _g_free0 (line);
+#line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                               _g_object_unref0 (dis);
+#line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                               _g_object_unref0 (_tmp6_);
+#line 1713 "moonshot-provisioning-common.c"
+                               goto __catch0_g_error;
+                       }
+#line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp13_ = _tmp10_;
+#line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp10_ = NULL;
+#line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _g_free0 (line);
+#line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       line = _tmp13_;
+#line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp14_ = line;
+#line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       if (!(_tmp14_ != NULL)) {
+#line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                               _g_free0 (_tmp10_);
+#line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                               break;
+#line 1732 "moonshot-provisioning-common.c"
+                       }
+#line 262 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp15_ = self->priv->text;
+#line 262 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp16_ = line;
+#line 262 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp17_ = g_strconcat (_tmp15_, _tmp16_, NULL);
+#line 262 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _g_free0 (self->priv->text);
+#line 262 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       self->priv->text = _tmp17_;
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp18_ = self->priv->text;
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _tmp19_ = g_strconcat (_tmp18_, "\n", NULL);
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _g_free0 (self->priv->text);
+#line 268 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       self->priv->text = _tmp19_;
+#line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+                       _g_free0 (_tmp10_);
+#line 1754 "moonshot-provisioning-common.c"
+               }
+#line 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _g_free0 (line);
+#line 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _g_object_unref0 (dis);
+#line 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _g_object_unref0 (_tmp6_);
+#line 1762 "moonshot-provisioning-common.c"
+       }
+       goto __finally0;
+       __catch0_g_error:
+       {
+               GError* e = NULL;
+#line 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               e = _inner_error_;
+#line 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _inner_error_ = NULL;
+#line 273 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               g_error ("moonshot-provisioning-common.vala:273: Could not retreive file size");
+#line 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _g_error_free0 (e);
+#line 1776 "moonshot-provisioning-common.c"
+       }
+       __finally0:
+#line 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _g_object_unref0 (file);
+#line 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.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 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               g_clear_error (&_inner_error_);
+#line 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               return NULL;
+#line 1789 "moonshot-provisioning-common.c"
+       }
+#line 248 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _g_object_unref0 (file);
+#line 248 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       return self;
+#line 1795 "moonshot-provisioning-common.c"
+}
+
+
+WebProvisioningParser* web_provisioning_parser_new (const gchar* path) {
+#line 248 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       return web_provisioning_parser_construct (WEB_PROVISIONING_TYPE_PARSER, path);
+#line 1802 "moonshot-provisioning-common.c"
+}
+
+
+void web_provisioning_parser_parse (WebProvisioningParser* self) {
+       GError * _inner_error_ = NULL;
+#line 277 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       g_return_if_fail (self != NULL);
+#line 1810 "moonshot-provisioning-common.c"
+       {
+               GMarkupParseContext* _tmp0_ = NULL;
+               const gchar* _tmp1_ = NULL;
+               const gchar* _tmp2_ = NULL;
+               gint _tmp3_ = 0;
+               gint _tmp4_ = 0;
+#line 280 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp0_ = self->priv->ctx;
+#line 280 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp1_ = self->priv->text;
+#line 280 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp2_ = self->priv->text;
+#line 280 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp3_ = strlen (_tmp2_);
+#line 280 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp4_ = _tmp3_;
+#line 280 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               g_markup_parse_context_parse (_tmp0_, _tmp1_, (gssize) _tmp4_, &_inner_error_);
+#line 280 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 1831 "moonshot-provisioning-common.c"
+                       goto __catch1_g_error;
+               }
+       }
+       goto __finally1;
+       __catch1_g_error:
+       {
+               GError* e = NULL;
+               const gchar* _tmp5_ = NULL;
+#line 278 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               e = _inner_error_;
+#line 278 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _inner_error_ = NULL;
+#line 284 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp5_ = self->priv->path;
+#line 284 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               g_error ("moonshot-provisioning-common.vala:284: Could not parse %s, invalid con" \
+"tent", _tmp5_);
+#line 278 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _g_error_free0 (e);
+#line 1850 "moonshot-provisioning-common.c"
+       }
+       __finally1:
+#line 278 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 278 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.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 278 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               g_clear_error (&_inner_error_);
+#line 278 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               return;
+#line 1861 "moonshot-provisioning-common.c"
+       }
+}
+
+
+IdCard** web_provisioning_parser_get_cards (WebProvisioningParser* self, int* result_length1) {
+       IdCard** result;
+       IdCard** _tmp0_ = NULL;
+       gint _tmp0__length1 = 0;
+       IdCard** _tmp1_ = NULL;
+       gint _tmp1__length1 = 0;
+#line 244 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 244 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp0_ = self->priv->_cards;
+#line 244 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp0__length1 = self->priv->_cards_length1;
+#line 244 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp1_ = _tmp0_;
+#line 244 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp1__length1 = _tmp0__length1;
+#line 244 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       if (result_length1) {
+#line 244 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               *result_length1 = _tmp1__length1;
+#line 1886 "moonshot-provisioning-common.c"
+       }
+#line 244 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       result = _tmp1_;
+#line 244 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       return result;
+#line 1892 "moonshot-provisioning-common.c"
+}
+
+
+static IdCard** _vala_array_dup4 (IdCard** self, int length) {
+       IdCard** result;
+       int i;
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       result = g_new0 (IdCard*, length + 1);
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       for (i = 0; i < length; i++) {
+#line 1903 "moonshot-provisioning-common.c"
+               IdCard* _tmp0_ = NULL;
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp0_ = _g_object_ref0 (self[i]);
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               result[i] = _tmp0_;
+#line 1909 "moonshot-provisioning-common.c"
+       }
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       return result;
+#line 1913 "moonshot-provisioning-common.c"
+}
+
+
+static void web_provisioning_parser_set_cards (WebProvisioningParser* self, IdCard** value, int value_length1) {
+       IdCard** _tmp0_ = NULL;
+       IdCard** _tmp1_ = NULL;
+       gint _tmp1__length1 = 0;
+       IdCard** _tmp2_ = NULL;
+       gint _tmp2__length1 = 0;
+       gint _tmp0__length1 = 0;
+       gint __tmp0__size_ = 0;
+       IdCard** _tmp4_ = NULL;
+       gint _tmp4__length1 = 0;
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       g_return_if_fail (self != NULL);
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp1_ = value;
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp1__length1 = value_length1;
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp2_ = (_tmp1_ != NULL) ? _vala_array_dup4 (_tmp1_, _tmp1__length1) : ((gpointer) _tmp1_);
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp2__length1 = _tmp1__length1;
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp0_ = _tmp2_;
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp0__length1 = _tmp2__length1;
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       __tmp0__size_ = _tmp0__length1;
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       if (_tmp0_ == NULL) {
+#line 1945 "moonshot-provisioning-common.c"
+               IdCard** _tmp3_ = NULL;
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp3_ = g_new0 (IdCard*, 0 + 1);
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp0_ = (_vala_array_free (_tmp0_, _tmp0__length1, (GDestroyNotify) g_object_unref), NULL);
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp0_ = _tmp3_;
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               _tmp0__length1 = 0;
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               __tmp0__size_ = _tmp0__length1;
+#line 1957 "moonshot-provisioning-common.c"
+       }
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp4_ = _tmp0_;
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp4__length1 = _tmp0__length1;
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp0_ = NULL;
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp0__length1 = 0;
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       self->priv->_cards = (_vala_array_free (self->priv->_cards, self->priv->_cards_length1, (GDestroyNotify) g_object_unref), NULL);
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       self->priv->_cards = _tmp4_;
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       self->priv->_cards_length1 = _tmp4__length1;
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       self->priv->__cards_size_ = self->priv->_cards_length1;
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp0_ = (_vala_array_free (_tmp0_, _tmp0__length1, (GDestroyNotify) g_object_unref), NULL);
+#line 1977 "moonshot-provisioning-common.c"
+}
+
+
+static void web_provisioning_parser_class_init (WebProvisioningParserClass * klass) {
+       MoonshotLogger* _tmp0_ = NULL;
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       web_provisioning_parser_parent_class = g_type_class_peek_parent (klass);
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       g_type_class_add_private (klass, sizeof (WebProvisioningParserPrivate));
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       G_OBJECT_CLASS (klass)->get_property = _vala_web_provisioning_parser_get_property;
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       G_OBJECT_CLASS (klass)->set_property = _vala_web_provisioning_parser_set_property;
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       G_OBJECT_CLASS (klass)->finalize = web_provisioning_parser_finalize;
+#line 124 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp0_ = moonshot_logger_new ("WebProvisioning");
+#line 124 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       web_provisioning_parser_logger = _tmp0_;
+#line 1997 "moonshot-provisioning-common.c"
+}
+
+
+static void web_provisioning_parser_instance_init (WebProvisioningParser * self) {
+       IdCard** _tmp0_ = NULL;
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       self->priv = WEB_PROVISIONING_PARSER_GET_PRIVATE (self);
+#line 241 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _tmp0_ = g_new0 (IdCard*, 0 + 1);
+#line 241 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       self->priv->_cards = _tmp0_;
+#line 241 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       self->priv->_cards_length1 = 0;
+#line 241 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       self->priv->__cards_size_ = self->priv->_cards_length1;
+#line 2013 "moonshot-provisioning-common.c"
+}
+
+
+static void web_provisioning_parser_finalize (GObject* obj) {
+       WebProvisioningParser * self;
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       self = G_TYPE_CHECK_INSTANCE_CAST (obj, WEB_PROVISIONING_TYPE_PARSER, WebProvisioningParser);
+#line 230 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _g_markup_parse_context_free0 (self->priv->ctx);
+#line 232 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _g_free0 (self->priv->text);
+#line 233 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _g_free0 (self->priv->path);
+#line 235 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _g_free0 (self->priv->ta_ca_cert);
+#line 236 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _g_free0 (self->priv->ta_server_cert);
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _g_free0 (self->priv->ta_subject);
+#line 238 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _g_free0 (self->priv->ta_subject_alt);
+#line 240 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       _g_object_unref0 (self->priv->card);
+#line 241 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       self->priv->_cards = (_vala_array_free (self->priv->_cards, self->priv->_cards_length1, (GDestroyNotify) g_object_unref), NULL);
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       G_OBJECT_CLASS (web_provisioning_parser_parent_class)->finalize (obj);
+#line 2041 "moonshot-provisioning-common.c"
+}
+
+
+GType web_provisioning_parser_get_type (void) {
+       static volatile gsize web_provisioning_parser_type_id__volatile = 0;
+       if (g_once_init_enter (&web_provisioning_parser_type_id__volatile)) {
+               static const GTypeInfo g_define_type_info = { sizeof (WebProvisioningParserClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) web_provisioning_parser_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (WebProvisioningParser), 0, (GInstanceInitFunc) web_provisioning_parser_instance_init, NULL };
+               GType web_provisioning_parser_type_id;
+               web_provisioning_parser_type_id = g_type_register_static (G_TYPE_OBJECT, "WebProvisioningParser", &g_define_type_info, 0);
+               g_once_init_leave (&web_provisioning_parser_type_id__volatile, web_provisioning_parser_type_id);
+       }
+       return web_provisioning_parser_type_id__volatile;
+}
+
+
+static void _vala_web_provisioning_parser_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) {
+       WebProvisioningParser * self;
+       self = G_TYPE_CHECK_INSTANCE_CAST (object, WEB_PROVISIONING_TYPE_PARSER, WebProvisioningParser);
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       switch (property_id) {
+#line 2062 "moonshot-provisioning-common.c"
+               default:
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               break;
+#line 2068 "moonshot-provisioning-common.c"
+       }
+}
+
+
+static void _vala_web_provisioning_parser_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec) {
+       WebProvisioningParser * self;
+       self = G_TYPE_CHECK_INSTANCE_CAST (object, WEB_PROVISIONING_TYPE_PARSER, WebProvisioningParser);
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+       switch (property_id) {
+#line 2078 "moonshot-provisioning-common.c"
+               default:
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-provisioning-common.vala"
+               break;
+#line 2084 "moonshot-provisioning-common.c"
+       }
+}
+
+
+static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func) {
+       if ((array != NULL) && (destroy_func != NULL)) {
+               int i;
+               for (i = 0; i < array_length; i = i + 1) {
+                       if (((gpointer*) array)[i] != NULL) {
+                               destroy_func (((gpointer*) array)[i]);
+                       }
+               }
+       }
+}
+
+
+static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func) {
+       _vala_array_destroy (array, array_length, destroy_func);
+       g_free (array);
+}
+
+
+static gint _vala_array_length (gpointer array) {
+       int length;
+       length = 0;
+       if (array) {
+               while (((gpointer*) array)[length]) {
+                       length++;
+               }
+       }
+       return length;
+}
+
+
+
diff --git a/src/moonshot-server-linux.c b/src/moonshot-server-linux.c
new file mode 100644 (file)
index 0000000..edda2ca
--- /dev/null
@@ -0,0 +1,4164 @@
+/* moonshot-server-linux.c generated by valac 0.34.9, the Vala compiler
+ * generated from moonshot-server-linux.vala, do not modify */
+
+/*
+ * Copyright (c) 2011-2016, JANET(UK)
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * 3. Neither the name of JANET(UK) nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+*/
+
+#include <glib.h>
+#include <glib-object.h>
+#include <gio/gio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <gtk/gtk.h>
+#include <stdio.h>
+#include <gee.h>
+
+
+#define TYPE_MOONSHOT_SERVER (moonshot_server_get_type ())
+#define MOONSHOT_SERVER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MOONSHOT_SERVER, MoonshotServer))
+#define MOONSHOT_SERVER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MOONSHOT_SERVER, MoonshotServerClass))
+#define IS_MOONSHOT_SERVER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MOONSHOT_SERVER))
+#define IS_MOONSHOT_SERVER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MOONSHOT_SERVER))
+#define MOONSHOT_SERVER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MOONSHOT_SERVER, MoonshotServerClass))
+
+typedef struct _MoonshotServer MoonshotServer;
+typedef struct _MoonshotServerClass MoonshotServerClass;
+typedef struct _MoonshotServerPrivate MoonshotServerPrivate;
+
+#define TYPE_IDENTITY_MANAGER_APP (identity_manager_app_get_type ())
+#define IDENTITY_MANAGER_APP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_MANAGER_APP, IdentityManagerApp))
+#define IDENTITY_MANAGER_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_MANAGER_APP, IdentityManagerAppClass))
+#define IS_IDENTITY_MANAGER_APP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_MANAGER_APP))
+#define IS_IDENTITY_MANAGER_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_MANAGER_APP))
+#define IDENTITY_MANAGER_APP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_MANAGER_APP, IdentityManagerAppClass))
+
+typedef struct _IdentityManagerApp IdentityManagerApp;
+typedef struct _IdentityManagerAppClass IdentityManagerAppClass;
+
+#define TYPE_MOONSHOT_LOGGER (moonshot_logger_get_type ())
+#define MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLogger))
+#define MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+#define IS_MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MOONSHOT_LOGGER))
+#define IS_MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MOONSHOT_LOGGER))
+#define MOONSHOT_LOGGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+
+typedef struct _MoonshotLogger MoonshotLogger;
+typedef struct _MoonshotLoggerClass MoonshotLoggerClass;
+#define _g_free0(var) (var = (g_free (var), NULL))
+#define _identity_manager_app_unref0(var) ((var == NULL) ? NULL : (var = (identity_manager_app_unref (var), NULL)))
+typedef struct _IdentityManagerAppPrivate IdentityManagerAppPrivate;
+
+#define TYPE_IDENTITY_MANAGER_MODEL (identity_manager_model_get_type ())
+#define IDENTITY_MANAGER_MODEL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_MANAGER_MODEL, IdentityManagerModel))
+#define IDENTITY_MANAGER_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_MANAGER_MODEL, IdentityManagerModelClass))
+#define IS_IDENTITY_MANAGER_MODEL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_MANAGER_MODEL))
+#define IS_IDENTITY_MANAGER_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_MANAGER_MODEL))
+#define IDENTITY_MANAGER_MODEL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_MANAGER_MODEL, IdentityManagerModelClass))
+
+typedef struct _IdentityManagerModel IdentityManagerModel;
+typedef struct _IdentityManagerModelClass IdentityManagerModelClass;
+
+#define TYPE_ID_CARD (id_card_get_type ())
+#define ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ID_CARD, IdCard))
+#define ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ID_CARD, IdCardClass))
+#define IS_ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ID_CARD))
+#define IS_ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ID_CARD))
+#define ID_CARD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ID_CARD, IdCardClass))
+
+typedef struct _IdCard IdCard;
+typedef struct _IdCardClass IdCardClass;
+
+#define TYPE_IDENTITY_MANAGER_VIEW (identity_manager_view_get_type ())
+#define IDENTITY_MANAGER_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerView))
+#define IDENTITY_MANAGER_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerViewClass))
+#define IS_IDENTITY_MANAGER_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_MANAGER_VIEW))
+#define IS_IDENTITY_MANAGER_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_MANAGER_VIEW))
+#define IDENTITY_MANAGER_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerViewClass))
+
+typedef struct _IdentityManagerView IdentityManagerView;
+typedef struct _IdentityManagerViewClass IdentityManagerViewClass;
+#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
+typedef struct _Block7Data Block7Data;
+
+#define TYPE_IDENTITY_REQUEST (identity_request_get_type ())
+#define IDENTITY_REQUEST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_REQUEST, IdentityRequest))
+#define IDENTITY_REQUEST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_REQUEST, IdentityRequestClass))
+#define IS_IDENTITY_REQUEST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_REQUEST))
+#define IS_IDENTITY_REQUEST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_REQUEST))
+#define IDENTITY_REQUEST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_REQUEST, IdentityRequestClass))
+
+typedef struct _IdentityRequest IdentityRequest;
+typedef struct _IdentityRequestClass IdentityRequestClass;
+typedef struct _IdentityRequestPrivate IdentityRequestPrivate;
+
+#define TYPE_TRUST_ANCHOR (trust_anchor_get_type ())
+#define TRUST_ANCHOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TRUST_ANCHOR, TrustAnchor))
+#define TRUST_ANCHOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TRUST_ANCHOR, TrustAnchorClass))
+#define IS_TRUST_ANCHOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TRUST_ANCHOR))
+#define IS_TRUST_ANCHOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TRUST_ANCHOR))
+#define TRUST_ANCHOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TRUST_ANCHOR, TrustAnchorClass))
+
+typedef struct _TrustAnchor TrustAnchor;
+typedef struct _TrustAnchorClass TrustAnchorClass;
+typedef struct _MoonshotServerGetIdentityData MoonshotServerGetIdentityData;
+typedef struct _Block8Data Block8Data;
+typedef struct _MoonshotServerGetDefaultIdentityData MoonshotServerGetDefaultIdentityData;
+
+#define TYPE_RULE (rule_get_type ())
+typedef struct _Rule Rule;
+
+#define WEB_PROVISIONING_TYPE_PARSER (web_provisioning_parser_get_type ())
+#define WEB_PROVISIONING_PARSER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), WEB_PROVISIONING_TYPE_PARSER, WebProvisioningParser))
+#define WEB_PROVISIONING_PARSER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), WEB_PROVISIONING_TYPE_PARSER, WebProvisioningParserClass))
+#define WEB_PROVISIONING_IS_PARSER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), WEB_PROVISIONING_TYPE_PARSER))
+#define WEB_PROVISIONING_IS_PARSER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), WEB_PROVISIONING_TYPE_PARSER))
+#define WEB_PROVISIONING_PARSER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), WEB_PROVISIONING_TYPE_PARSER, WebProvisioningParserClass))
+
+typedef struct _WebProvisioningParser WebProvisioningParser;
+typedef struct _WebProvisioningParserClass WebProvisioningParserClass;
+typedef struct _Block9Data Block9Data;
+
+#define TYPE_TRUST_ANCHOR_CONFIRMATION_REQUEST (trust_anchor_confirmation_request_get_type ())
+#define TRUST_ANCHOR_CONFIRMATION_REQUEST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TRUST_ANCHOR_CONFIRMATION_REQUEST, TrustAnchorConfirmationRequest))
+#define TRUST_ANCHOR_CONFIRMATION_REQUEST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TRUST_ANCHOR_CONFIRMATION_REQUEST, TrustAnchorConfirmationRequestClass))
+#define IS_TRUST_ANCHOR_CONFIRMATION_REQUEST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TRUST_ANCHOR_CONFIRMATION_REQUEST))
+#define IS_TRUST_ANCHOR_CONFIRMATION_REQUEST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TRUST_ANCHOR_CONFIRMATION_REQUEST))
+#define TRUST_ANCHOR_CONFIRMATION_REQUEST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TRUST_ANCHOR_CONFIRMATION_REQUEST, TrustAnchorConfirmationRequestClass))
+
+typedef struct _TrustAnchorConfirmationRequest TrustAnchorConfirmationRequest;
+typedef struct _TrustAnchorConfirmationRequestClass TrustAnchorConfirmationRequestClass;
+typedef struct _TrustAnchorConfirmationRequestPrivate TrustAnchorConfirmationRequestPrivate;
+typedef struct _MoonshotServerConfirmCaCertificateData MoonshotServerConfirmCaCertificateData;
+
+struct _MoonshotServer {
+       GObject parent_instance;
+       MoonshotServerPrivate * priv;
+};
+
+struct _MoonshotServerClass {
+       GObjectClass parent_class;
+};
+
+struct _MoonshotServerPrivate {
+       gchar* app_name;
+       IdentityManagerApp* parent_app;
+};
+
+struct _IdentityManagerApp {
+       GTypeInstance parent_instance;
+       volatile int ref_count;
+       IdentityManagerAppPrivate * priv;
+       IdentityManagerModel* model;
+       IdCard* default_id_card;
+       gboolean explicitly_launched;
+       IdentityManagerView* view;
+};
+
+struct _IdentityManagerAppClass {
+       GTypeClass parent_class;
+       void (*finalize) (IdentityManagerApp *self);
+};
+
+struct _Block7Data {
+       int _ref_count_;
+       MoonshotServer* self;
+       gpointer _async_data_;
+};
+
+typedef void (*ReturnIdentityCallback) (IdentityRequest* request, void* user_data);
+struct _IdentityRequest {
+       GObject parent_instance;
+       IdentityRequestPrivate * priv;
+       IdCard* id_card;
+       gboolean complete;
+       gboolean select_default;
+       gchar* nai;
+       gchar* password;
+       gchar* service;
+       GSList* candidates;
+};
+
+struct _IdentityRequestClass {
+       GObjectClass parent_class;
+};
+
+struct _MoonshotServerGetIdentityData {
+       int _state_;
+       GObject* _source_object_;
+       GAsyncResult* _res_;
+       GSimpleAsyncResult* _async_result;
+       MoonshotServer* self;
+       gchar* nai;
+       gchar* password;
+       gchar* service;
+       gchar* nai_out;
+       gchar* password_out;
+       gchar* server_certificate_hash;
+       gchar* ca_certificate;
+       gchar* subject_name_constraint;
+       gchar* subject_alt_name_constraint;
+       gboolean result;
+       Block7Data* _data7_;
+       MoonshotLogger* _tmp0_;
+       const gchar* _tmp1_;
+       const gchar* _tmp2_;
+       const gchar* _tmp3_;
+       const gchar* _tmp4_;
+       gchar* _tmp5_;
+       gchar* _tmp6_;
+       IdentityRequest* request;
+       IdentityManagerApp* _tmp7_;
+       const gchar* _tmp8_;
+       const gchar* _tmp9_;
+       const gchar* _tmp10_;
+       IdentityRequest* _tmp11_;
+       MoonshotLogger* _tmp12_;
+       IdentityRequest* _tmp13_;
+       IdentityRequest* _tmp14_;
+       MoonshotLogger* _tmp15_;
+       MoonshotLogger* _tmp16_;
+       gchar* _tmp17_;
+       gchar* _tmp18_;
+       gchar* _tmp19_;
+       gchar* _tmp20_;
+       gchar* _tmp21_;
+       gchar* _tmp22_;
+       IdCard* id_card;
+       IdentityRequest* _tmp23_;
+       IdCard* _tmp24_;
+       IdCard* _tmp25_;
+       gboolean _tmp26_;
+       IdCard* _tmp27_;
+       IdCard* _tmp28_;
+       gboolean _tmp29_;
+       IdCard* _tmp30_;
+       const gchar* _tmp31_;
+       const gchar* _tmp32_;
+       gchar* _tmp33_;
+       gboolean _tmp34_;
+       IdentityRequest* _tmp35_;
+       const gchar* _tmp36_;
+       IdentityRequest* _tmp37_;
+       const gchar* _tmp38_;
+       IdentityRequest* _tmp39_;
+       const gchar* _tmp40_;
+       gchar* _tmp41_;
+       IdCard* _tmp42_;
+       const gchar* _tmp43_;
+       const gchar* _tmp44_;
+       gchar* _tmp45_;
+       IdCard* _tmp46_;
+       TrustAnchor* _tmp47_;
+       TrustAnchor* _tmp48_;
+       const gchar* _tmp49_;
+       const gchar* _tmp50_;
+       gchar* _tmp51_;
+       IdCard* _tmp52_;
+       TrustAnchor* _tmp53_;
+       TrustAnchor* _tmp54_;
+       const gchar* _tmp55_;
+       const gchar* _tmp56_;
+       gchar* _tmp57_;
+       IdCard* _tmp58_;
+       TrustAnchor* _tmp59_;
+       TrustAnchor* _tmp60_;
+       const gchar* _tmp61_;
+       const gchar* _tmp62_;
+       gchar* _tmp63_;
+       IdCard* _tmp64_;
+       TrustAnchor* _tmp65_;
+       TrustAnchor* _tmp66_;
+       const gchar* _tmp67_;
+       const gchar* _tmp68_;
+       gchar* _tmp69_;
+       const gchar* _tmp70_;
+       gchar* _tmp71_;
+       const gchar* _tmp72_;
+       gchar* _tmp73_;
+       const gchar* _tmp74_;
+       gchar* _tmp75_;
+       const gchar* _tmp76_;
+       gchar* _tmp77_;
+       const gchar* _tmp78_;
+       gchar* _tmp79_;
+       const gchar* _tmp80_;
+       gchar* _tmp81_;
+       MoonshotLogger* _tmp82_;
+       const gchar* _tmp83_;
+       const gchar* _tmp84_;
+       gchar* _tmp85_;
+       gchar* _tmp86_;
+       MoonshotLogger* _tmp87_;
+};
+
+struct _Block8Data {
+       int _ref_count_;
+       MoonshotServer* self;
+       gpointer _async_data_;
+};
+
+struct _MoonshotServerGetDefaultIdentityData {
+       int _state_;
+       GObject* _source_object_;
+       GAsyncResult* _res_;
+       GSimpleAsyncResult* _async_result;
+       MoonshotServer* self;
+       gchar* nai_out;
+       gchar* password_out;
+       gchar* server_certificate_hash;
+       gchar* ca_certificate;
+       gchar* subject_name_constraint;
+       gchar* subject_alt_name_constraint;
+       gboolean result;
+       Block8Data* _data8_;
+       MoonshotLogger* _tmp0_;
+       IdentityRequest* request;
+       IdentityManagerApp* _tmp1_;
+       IdentityRequest* _tmp2_;
+       IdentityRequest* _tmp3_;
+       IdentityRequest* _tmp4_;
+       gchar* _tmp5_;
+       gchar* _tmp6_;
+       gchar* _tmp7_;
+       gchar* _tmp8_;
+       gchar* _tmp9_;
+       gchar* _tmp10_;
+       IdentityRequest* _tmp11_;
+       IdCard* _tmp12_;
+       IdentityRequest* _tmp13_;
+       IdCard* _tmp14_;
+       const gchar* _tmp15_;
+       const gchar* _tmp16_;
+       gchar* _tmp17_;
+       IdentityRequest* _tmp18_;
+       IdCard* _tmp19_;
+       const gchar* _tmp20_;
+       const gchar* _tmp21_;
+       gchar* _tmp22_;
+       IdentityRequest* _tmp23_;
+       IdCard* _tmp24_;
+       TrustAnchor* _tmp25_;
+       TrustAnchor* _tmp26_;
+       const gchar* _tmp27_;
+       const gchar* _tmp28_;
+       gchar* _tmp29_;
+       IdentityRequest* _tmp30_;
+       IdCard* _tmp31_;
+       TrustAnchor* _tmp32_;
+       TrustAnchor* _tmp33_;
+       const gchar* _tmp34_;
+       const gchar* _tmp35_;
+       gchar* _tmp36_;
+       IdentityRequest* _tmp37_;
+       IdCard* _tmp38_;
+       TrustAnchor* _tmp39_;
+       TrustAnchor* _tmp40_;
+       const gchar* _tmp41_;
+       const gchar* _tmp42_;
+       gchar* _tmp43_;
+       IdentityRequest* _tmp44_;
+       IdCard* _tmp45_;
+       TrustAnchor* _tmp46_;
+       TrustAnchor* _tmp47_;
+       const gchar* _tmp48_;
+       const gchar* _tmp49_;
+       gchar* _tmp50_;
+       const gchar* _tmp51_;
+       gchar* _tmp52_;
+       const gchar* _tmp53_;
+       gchar* _tmp54_;
+       const gchar* _tmp55_;
+       gchar* _tmp56_;
+       const gchar* _tmp57_;
+       gchar* _tmp58_;
+       const gchar* _tmp59_;
+       gchar* _tmp60_;
+       const gchar* _tmp61_;
+       gchar* _tmp62_;
+       MoonshotLogger* _tmp63_;
+};
+
+struct _Rule {
+       gchar* pattern;
+       gchar* always_confirm;
+};
+
+struct _Block9Data {
+       int _ref_count_;
+       MoonshotServer* self;
+       gpointer _async_data_;
+};
+
+typedef void (*TrustAnchorConfirmationCallback) (TrustAnchorConfirmationRequest* request, void* user_data);
+struct _TrustAnchorConfirmationRequest {
+       GObject parent_instance;
+       TrustAnchorConfirmationRequestPrivate * priv;
+       gboolean confirmed;
+};
+
+struct _TrustAnchorConfirmationRequestClass {
+       GObjectClass parent_class;
+};
+
+struct _MoonshotServerConfirmCaCertificateData {
+       int _state_;
+       GObject* _source_object_;
+       GAsyncResult* _res_;
+       GSimpleAsyncResult* _async_result;
+       MoonshotServer* self;
+       gchar* nai;
+       gchar* realm;
+       gchar* ca_hash;
+       gint confirmed;
+       gboolean result;
+       Block9Data* _data9_;
+       MoonshotLogger* _tmp0_;
+       const gchar* _tmp1_;
+       const gchar* _tmp2_;
+       const gchar* _tmp3_;
+       const gchar* _tmp4_;
+       const gchar* _tmp5_;
+       const gchar* _tmp6_;
+       gchar* _tmp7_;
+       gchar* _tmp8_;
+       TrustAnchorConfirmationRequest* request;
+       IdentityManagerApp* _tmp9_;
+       const gchar* _tmp10_;
+       const gchar* _tmp11_;
+       const gchar* _tmp12_;
+       TrustAnchorConfirmationRequest* _tmp13_;
+       TrustAnchorConfirmationRequest* _tmp14_;
+       TrustAnchorConfirmationRequest* _tmp15_;
+       gint _tmp16_;
+       TrustAnchorConfirmationRequest* _tmp17_;
+       gboolean _tmp18_;
+       MoonshotLogger* _tmp19_;
+       gchar* _tmp20_;
+       gchar* _tmp21_;
+       gchar* _tmp22_;
+       gchar* _tmp23_;
+};
+
+
+static gpointer moonshot_server_parent_class = NULL;
+static MoonshotLogger* moonshot_server_logger;
+static MoonshotLogger* moonshot_server_logger = NULL;
+
+GType moonshot_server_get_type (void) G_GNUC_CONST;
+guint moonshot_server_register_object (void* object, GDBusConnection* connection, const gchar* path, GError** error);
+gpointer identity_manager_app_ref (gpointer instance);
+void identity_manager_app_unref (gpointer instance);
+GParamSpec* param_spec_identity_manager_app (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
+void value_set_identity_manager_app (GValue* value, gpointer v_object);
+void value_take_identity_manager_app (GValue* value, gpointer v_object);
+gpointer value_get_identity_manager_app (const GValue* value);
+GType identity_manager_app_get_type (void) G_GNUC_CONST;
+#define MOONSHOT_SERVER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_MOONSHOT_SERVER, MoonshotServerPrivate))
+enum  {
+       MOONSHOT_SERVER_DUMMY_PROPERTY
+};
+GType moonshot_logger_get_type (void) G_GNUC_CONST;
+MoonshotLogger* get_logger (const gchar* name);
+MoonshotServer* moonshot_server_new (IdentityManagerApp* app);
+MoonshotServer* moonshot_server_construct (GType object_type, IdentityManagerApp* app);
+void moonshot_logger_trace (MoonshotLogger* self, const gchar* message, GError* e);
+gboolean moonshot_server_show_ui (MoonshotServer* self);
+GType identity_manager_model_get_type (void) G_GNUC_CONST;
+GType id_card_get_type (void) G_GNUC_CONST;
+GType identity_manager_view_get_type (void) G_GNUC_CONST;
+void moonshot_logger_warn (MoonshotLogger* self, const gchar* message, GError* e);
+void identity_manager_app_show (IdentityManagerApp* self);
+static void moonshot_server_get_identity_data_free (gpointer _data);
+void moonshot_server_get_identity (MoonshotServer* self, const gchar* nai, const gchar* password, const gchar* service, GAsyncReadyCallback _callback_, gpointer _user_data_);
+gboolean moonshot_server_get_identity_finish (MoonshotServer* self, GAsyncResult* _res_, gchar** nai_out, gchar** password_out, gchar** server_certificate_hash, gchar** ca_certificate, gchar** subject_name_constraint, gchar** subject_alt_name_constraint);
+static gboolean moonshot_server_get_identity_co (MoonshotServerGetIdentityData* _data_);
+static Block7Data* block7_data_ref (Block7Data* _data7_);
+static void block7_data_unref (void * _userdata_);
+GType identity_request_get_type (void) G_GNUC_CONST;
+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 __lambda19_ (Block7Data* _data7_, IdentityRequest* IdentityRequest);
+static void ___lambda19__return_identity_callback (IdentityRequest* request, gpointer self);
+gboolean identity_request_execute (IdentityRequest* self);
+gboolean id_card_is_no_identity (IdCard* self);
+const gchar* id_card_get_nai (IdCard* self);
+const gchar* id_card_get_password (IdCard* self);
+GType trust_anchor_get_type (void) G_GNUC_CONST;
+TrustAnchor* id_card_get_trust_anchor (IdCard* self);
+const gchar* trust_anchor_get_server_cert (TrustAnchor* self);
+const gchar* trust_anchor_get_ca_cert (TrustAnchor* self);
+const gchar* trust_anchor_get_subject (TrustAnchor* self);
+const gchar* trust_anchor_get_subject_alt (TrustAnchor* self);
+static void moonshot_server_get_default_identity_data_free (gpointer _data);
+void moonshot_server_get_default_identity (MoonshotServer* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
+gboolean moonshot_server_get_default_identity_finish (MoonshotServer* self, GAsyncResult* _res_, gchar** nai_out, gchar** password_out, gchar** server_certificate_hash, gchar** ca_certificate, gchar** subject_name_constraint, gchar** subject_alt_name_constraint);
+static gboolean moonshot_server_get_default_identity_co (MoonshotServerGetDefaultIdentityData* _data_);
+static Block8Data* block8_data_ref (Block8Data* _data8_);
+static void block8_data_unref (void * _userdata_);
+IdentityRequest* identity_request_new_default (IdentityManagerApp* app);
+IdentityRequest* identity_request_construct_default (GType object_type, IdentityManagerApp* app);
+static void __lambda20_ (Block8Data* _data8_, IdentityRequest* IdentityRequest);
+static void ___lambda20__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);
+void id_card_set_display_name (IdCard* self, const gchar* value);
+void id_card_set_username (IdCard* self, const gchar* value);
+void id_card_set_password (IdCard* self, const gchar* value);
+void id_card_set_store_password (IdCard* self, gboolean value);
+void id_card_set_issuer (IdCard* self, const gchar* value);
+void id_card_update_services (IdCard* self, gchar** services, int services_length1);
+TrustAnchor* trust_anchor_new (const gchar* ca_cert, const gchar* server_cert, const gchar* subject, const gchar* subject_alt);
+TrustAnchor* trust_anchor_construct (GType object_type, const gchar* ca_cert, const gchar* server_cert, const gchar* subject, const gchar* subject_alt);
+gboolean trust_anchor_is_empty (TrustAnchor* self);
+gchar* trust_anchor_format_datetime_now (void);
+void trust_anchor_set_datetime_added (TrustAnchor* self, const gchar* datetime);
+const gchar* id_card_get_display_name (IdCard* self);
+const gchar* trust_anchor_get_datetime_added (TrustAnchor* self);
+void id_card_set_trust_anchor_from_store (IdCard* self, TrustAnchor* ta);
+gchar* id_card_get_services_string (IdCard* self, const gchar* sep);
+GType rule_get_type (void) G_GNUC_CONST;
+Rule* rule_dup (const Rule* self);
+void rule_free (Rule* self);
+void rule_copy (const Rule* self, Rule* dest);
+void rule_destroy (Rule* self);
+void id_card_set_rules (IdCard* self, Rule* value, int value_length1);
+static void _vala_Rule_array_free (Rule* array, gint array_length);
+gboolean identity_manager_app_add_identity (IdentityManagerApp* self, IdCard* id, gboolean force_flat_file_store, GeeArrayList** old_duplicates);
+gint moonshot_server_install_from_file (MoonshotServer* self, const gchar* file_name);
+GType web_provisioning_parser_get_type (void) G_GNUC_CONST;
+WebProvisioningParser* web_provisioning_parser_new (const gchar* path);
+WebProvisioningParser* web_provisioning_parser_construct (GType object_type, const gchar* path);
+void web_provisioning_parser_parse (WebProvisioningParser* self);
+IdCard** web_provisioning_parser_get_cards (WebProvisioningParser* self, int* result_length1);
+Rule* id_card_get_rules (IdCard* self, int* result_length1);
+GeeArrayList* id_card_get_services (IdCard* self);
+const gchar* id_card_get_username (IdCard* self);
+const gchar* id_card_get_issuer (IdCard* self);
+static void moonshot_server_confirm_ca_certificate_data_free (gpointer _data);
+void moonshot_server_confirm_ca_certificate (MoonshotServer* self, const gchar* nai, const gchar* realm, const gchar* ca_hash, GAsyncReadyCallback _callback_, gpointer _user_data_);
+gboolean moonshot_server_confirm_ca_certificate_finish (MoonshotServer* self, GAsyncResult* _res_, gint* confirmed);
+static gboolean moonshot_server_confirm_ca_certificate_co (MoonshotServerConfirmCaCertificateData* _data_);
+static Block9Data* block9_data_ref (Block9Data* _data9_);
+static void block9_data_unref (void * _userdata_);
+GType trust_anchor_confirmation_request_get_type (void) G_GNUC_CONST;
+TrustAnchorConfirmationRequest* trust_anchor_confirmation_request_new (IdentityManagerApp* parent_app, const gchar* userid, const gchar* realm, const gchar* fingerprint);
+TrustAnchorConfirmationRequest* trust_anchor_confirmation_request_construct (GType object_type, IdentityManagerApp* parent_app, const gchar* userid, const gchar* realm, const gchar* fingerprint);
+void trust_anchor_confirmation_request_set_callback (TrustAnchorConfirmationRequest* self, TrustAnchorConfirmationCallback cb, void* cb_target, GDestroyNotify cb_target_destroy_notify);
+static void __lambda22_ (Block9Data* _data9_, TrustAnchorConfirmationRequest* TrustAnchorConfirmationRequest);
+static void ___lambda22__trust_anchor_confirmation_callback (TrustAnchorConfirmationRequest* request, gpointer self);
+gboolean trust_anchor_confirmation_request_execute (TrustAnchorConfirmationRequest* self);
+static void moonshot_server_finalize (GObject* obj);
+static void _dbus_moonshot_server_show_ui (MoonshotServer* self, GVariant* _parameters_, GDBusMethodInvocation* invocation);
+static void _dbus_moonshot_server_get_identity (MoonshotServer* self, GVariant* _parameters_, GDBusMethodInvocation* invocation);
+static void _dbus_moonshot_server_get_identity_ready (GObject * source_object, GAsyncResult * _res_, gpointer _user_data_);
+static void _dbus_moonshot_server_get_default_identity (MoonshotServer* self, GVariant* _parameters_, GDBusMethodInvocation* invocation);
+static void _dbus_moonshot_server_get_default_identity_ready (GObject * source_object, GAsyncResult * _res_, gpointer _user_data_);
+static void _dbus_moonshot_server_install_id_card (MoonshotServer* self, GVariant* _parameters_, GDBusMethodInvocation* invocation);
+static void _dbus_moonshot_server_install_from_file (MoonshotServer* self, GVariant* _parameters_, GDBusMethodInvocation* invocation);
+static void _dbus_moonshot_server_confirm_ca_certificate (MoonshotServer* self, GVariant* _parameters_, GDBusMethodInvocation* invocation);
+static void _dbus_moonshot_server_confirm_ca_certificate_ready (GObject * source_object, GAsyncResult * _res_, gpointer _user_data_);
+static void moonshot_server_dbus_interface_method_call (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* method_name, GVariant* parameters, GDBusMethodInvocation* invocation, gpointer user_data);
+static GVariant* moonshot_server_dbus_interface_get_property (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* property_name, GError** error, gpointer user_data);
+static gboolean moonshot_server_dbus_interface_set_property (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* property_name, GVariant* value, GError** error, gpointer user_data);
+static void _moonshot_server_unregister_object (gpointer user_data);
+static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func);
+static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func);
+
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_show_ui_result = {-1, "result", "b"};
+static const GDBusArgInfo * const _moonshot_server_dbus_arg_info_show_ui_in[] = {NULL};
+static const GDBusArgInfo * const _moonshot_server_dbus_arg_info_show_ui_out[] = {&_moonshot_server_dbus_arg_info_show_ui_result, NULL};
+static const GDBusMethodInfo _moonshot_server_dbus_method_info_show_ui = {-1, "ShowUi", (GDBusArgInfo **) (&_moonshot_server_dbus_arg_info_show_ui_in), (GDBusArgInfo **) (&_moonshot_server_dbus_arg_info_show_ui_out)};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_get_identity_nai = {-1, "nai", "s"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_get_identity_password = {-1, "password", "s"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_get_identity_service = {-1, "service", "s"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_get_identity_nai_out = {-1, "nai_out", "s"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_get_identity_password_out = {-1, "password_out", "s"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_get_identity_server_certificate_hash = {-1, "server_certificate_hash", "s"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_get_identity_ca_certificate = {-1, "ca_certificate", "s"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_get_identity_subject_name_constraint = {-1, "subject_name_constraint", "s"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_get_identity_subject_alt_name_constraint = {-1, "subject_alt_name_constraint", "s"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_get_identity_result = {-1, "result", "b"};
+static const GDBusArgInfo * const _moonshot_server_dbus_arg_info_get_identity_in[] = {&_moonshot_server_dbus_arg_info_get_identity_nai, &_moonshot_server_dbus_arg_info_get_identity_password, &_moonshot_server_dbus_arg_info_get_identity_service, NULL};
+static const GDBusArgInfo * const _moonshot_server_dbus_arg_info_get_identity_out[] = {&_moonshot_server_dbus_arg_info_get_identity_nai_out, &_moonshot_server_dbus_arg_info_get_identity_password_out, &_moonshot_server_dbus_arg_info_get_identity_server_certificate_hash, &_moonshot_server_dbus_arg_info_get_identity_ca_certificate, &_moonshot_server_dbus_arg_info_get_identity_subject_name_constraint, &_moonshot_server_dbus_arg_info_get_identity_subject_alt_name_constraint, &_moonshot_server_dbus_arg_info_get_identity_result, NULL};
+static const GDBusMethodInfo _moonshot_server_dbus_method_info_get_identity = {-1, "GetIdentity", (GDBusArgInfo **) (&_moonshot_server_dbus_arg_info_get_identity_in), (GDBusArgInfo **) (&_moonshot_server_dbus_arg_info_get_identity_out)};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_get_default_identity_nai_out = {-1, "nai_out", "s"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_get_default_identity_password_out = {-1, "password_out", "s"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_get_default_identity_server_certificate_hash = {-1, "server_certificate_hash", "s"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_get_default_identity_ca_certificate = {-1, "ca_certificate", "s"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_get_default_identity_subject_name_constraint = {-1, "subject_name_constraint", "s"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_get_default_identity_subject_alt_name_constraint = {-1, "subject_alt_name_constraint", "s"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_get_default_identity_result = {-1, "result", "b"};
+static const GDBusArgInfo * const _moonshot_server_dbus_arg_info_get_default_identity_in[] = {NULL};
+static const GDBusArgInfo * const _moonshot_server_dbus_arg_info_get_default_identity_out[] = {&_moonshot_server_dbus_arg_info_get_default_identity_nai_out, &_moonshot_server_dbus_arg_info_get_default_identity_password_out, &_moonshot_server_dbus_arg_info_get_default_identity_server_certificate_hash, &_moonshot_server_dbus_arg_info_get_default_identity_ca_certificate, &_moonshot_server_dbus_arg_info_get_default_identity_subject_name_constraint, &_moonshot_server_dbus_arg_info_get_default_identity_subject_alt_name_constraint, &_moonshot_server_dbus_arg_info_get_default_identity_result, NULL};
+static const GDBusMethodInfo _moonshot_server_dbus_method_info_get_default_identity = {-1, "GetDefaultIdentity", (GDBusArgInfo **) (&_moonshot_server_dbus_arg_info_get_default_identity_in), (GDBusArgInfo **) (&_moonshot_server_dbus_arg_info_get_default_identity_out)};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_install_id_card_display_name = {-1, "display_name", "s"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_install_id_card_user_name = {-1, "user_name", "s"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_install_id_card_password = {-1, "password", "s"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_install_id_card_realm = {-1, "realm", "s"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_install_id_card_rules_patterns = {-1, "rules_patterns", "as"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_install_id_card_rules_always_confirm = {-1, "rules_always_confirm", "as"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_install_id_card_services = {-1, "services", "as"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_install_id_card_ca_cert = {-1, "ca_cert", "s"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_install_id_card_subject = {-1, "subject", "s"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_install_id_card_subject_alt = {-1, "subject_alt", "s"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_install_id_card_server_cert = {-1, "server_cert", "s"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_install_id_card_force_flat_file_store = {-1, "force_flat_file_store", "i"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_install_id_card_result = {-1, "result", "b"};
+static const GDBusArgInfo * const _moonshot_server_dbus_arg_info_install_id_card_in[] = {&_moonshot_server_dbus_arg_info_install_id_card_display_name, &_moonshot_server_dbus_arg_info_install_id_card_user_name, &_moonshot_server_dbus_arg_info_install_id_card_password, &_moonshot_server_dbus_arg_info_install_id_card_realm, &_moonshot_server_dbus_arg_info_install_id_card_rules_patterns, &_moonshot_server_dbus_arg_info_install_id_card_rules_always_confirm, &_moonshot_server_dbus_arg_info_install_id_card_services, &_moonshot_server_dbus_arg_info_install_id_card_ca_cert, &_moonshot_server_dbus_arg_info_install_id_card_subject, &_moonshot_server_dbus_arg_info_install_id_card_subject_alt, &_moonshot_server_dbus_arg_info_install_id_card_server_cert, &_moonshot_server_dbus_arg_info_install_id_card_force_flat_file_store, NULL};
+static const GDBusArgInfo * const _moonshot_server_dbus_arg_info_install_id_card_out[] = {&_moonshot_server_dbus_arg_info_install_id_card_result, NULL};
+static const GDBusMethodInfo _moonshot_server_dbus_method_info_install_id_card = {-1, "InstallIdCard", (GDBusArgInfo **) (&_moonshot_server_dbus_arg_info_install_id_card_in), (GDBusArgInfo **) (&_moonshot_server_dbus_arg_info_install_id_card_out)};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_install_from_file_file_name = {-1, "file_name", "s"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_install_from_file_result = {-1, "result", "i"};
+static const GDBusArgInfo * const _moonshot_server_dbus_arg_info_install_from_file_in[] = {&_moonshot_server_dbus_arg_info_install_from_file_file_name, NULL};
+static const GDBusArgInfo * const _moonshot_server_dbus_arg_info_install_from_file_out[] = {&_moonshot_server_dbus_arg_info_install_from_file_result, NULL};
+static const GDBusMethodInfo _moonshot_server_dbus_method_info_install_from_file = {-1, "InstallFromFile", (GDBusArgInfo **) (&_moonshot_server_dbus_arg_info_install_from_file_in), (GDBusArgInfo **) (&_moonshot_server_dbus_arg_info_install_from_file_out)};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_confirm_ca_certificate_nai = {-1, "nai", "s"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_confirm_ca_certificate_realm = {-1, "realm", "s"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_confirm_ca_certificate_ca_hash = {-1, "ca_hash", "s"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_confirm_ca_certificate_confirmed = {-1, "confirmed", "i"};
+static const GDBusArgInfo _moonshot_server_dbus_arg_info_confirm_ca_certificate_result = {-1, "result", "b"};
+static const GDBusArgInfo * const _moonshot_server_dbus_arg_info_confirm_ca_certificate_in[] = {&_moonshot_server_dbus_arg_info_confirm_ca_certificate_nai, &_moonshot_server_dbus_arg_info_confirm_ca_certificate_realm, &_moonshot_server_dbus_arg_info_confirm_ca_certificate_ca_hash, NULL};
+static const GDBusArgInfo * const _moonshot_server_dbus_arg_info_confirm_ca_certificate_out[] = {&_moonshot_server_dbus_arg_info_confirm_ca_certificate_confirmed, &_moonshot_server_dbus_arg_info_confirm_ca_certificate_result, NULL};
+static const GDBusMethodInfo _moonshot_server_dbus_method_info_confirm_ca_certificate = {-1, "ConfirmCaCertificate", (GDBusArgInfo **) (&_moonshot_server_dbus_arg_info_confirm_ca_certificate_in), (GDBusArgInfo **) (&_moonshot_server_dbus_arg_info_confirm_ca_certificate_out)};
+static const GDBusMethodInfo * const _moonshot_server_dbus_method_info[] = {&_moonshot_server_dbus_method_info_show_ui, &_moonshot_server_dbus_method_info_get_identity, &_moonshot_server_dbus_method_info_get_default_identity, &_moonshot_server_dbus_method_info_install_id_card, &_moonshot_server_dbus_method_info_install_from_file, &_moonshot_server_dbus_method_info_confirm_ca_certificate, NULL};
+static const GDBusSignalInfo * const _moonshot_server_dbus_signal_info[] = {NULL};
+static const GDBusPropertyInfo * const _moonshot_server_dbus_property_info[] = {NULL};
+static const GDBusInterfaceInfo _moonshot_server_dbus_interface_info = {-1, "org.janet.Moonshot", (GDBusMethodInfo **) (&_moonshot_server_dbus_method_info), (GDBusSignalInfo **) (&_moonshot_server_dbus_signal_info), (GDBusPropertyInfo **) (&_moonshot_server_dbus_property_info)};
+static const GDBusInterfaceVTable _moonshot_server_dbus_interface_vtable = {moonshot_server_dbus_interface_method_call, moonshot_server_dbus_interface_get_property, moonshot_server_dbus_interface_set_property};
+
+static gpointer _identity_manager_app_ref0 (gpointer self) {
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       return self ? identity_manager_app_ref (self) : NULL;
+#line 664 "moonshot-server-linux.c"
+}
+
+
+MoonshotServer* moonshot_server_construct (GType object_type, IdentityManagerApp* app) {
+       MoonshotServer * self = NULL;
+       const gchar* _tmp0_ = NULL;
+       IdentityManagerApp* _tmp1_ = NULL;
+       MoonshotLogger* _tmp2_ = NULL;
+       gchar* _tmp3_ = NULL;
+       gchar* _tmp4_ = NULL;
+       IdentityManagerApp* _tmp5_ = NULL;
+       IdentityManagerApp* _tmp6_ = NULL;
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       g_return_val_if_fail (app != NULL, NULL);
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       self = (MoonshotServer*) g_object_new (object_type, NULL);
+#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp1_ = app;
+#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (_tmp1_ == NULL) {
+#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp0_ = "null";
+#line 687 "moonshot-server-linux.c"
+       } else {
+#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp0_ = "non-null";
+#line 691 "moonshot-server-linux.c"
+       }
+#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp2_ = moonshot_server_logger;
+#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp3_ = g_strconcat ("MoonshotServer.<constructor>; app=", _tmp0_, NULL);
+#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp4_ = _tmp3_;
+#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       moonshot_logger_trace (_tmp2_, _tmp4_, NULL);
+#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_tmp4_);
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp5_ = app;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp6_ = _identity_manager_app_ref0 (_tmp5_);
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _identity_manager_app_unref0 (self->priv->parent_app);
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       self->priv->parent_app = _tmp6_;
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       return self;
+#line 713 "moonshot-server-linux.c"
+}
+
+
+MoonshotServer* moonshot_server_new (IdentityManagerApp* app) {
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       return moonshot_server_construct (TYPE_MOONSHOT_SERVER, app);
+#line 720 "moonshot-server-linux.c"
+}
+
+
+gboolean moonshot_server_show_ui (MoonshotServer* self) {
+       gboolean result = FALSE;
+       MoonshotLogger* _tmp0_ = NULL;
+       IdentityManagerApp* _tmp1_ = NULL;
+       IdentityManagerView* _tmp2_ = NULL;
+       IdentityManagerApp* _tmp6_ = NULL;
+       IdentityManagerApp* _tmp7_ = NULL;
+       MoonshotLogger* _tmp8_ = NULL;
+#line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       g_return_val_if_fail (self != NULL, FALSE);
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp0_ = moonshot_server_logger;
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       moonshot_logger_trace (_tmp0_, "MoonshotServer.show_ui", NULL);
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp1_ = self->priv->parent_app;
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp2_ = _tmp1_->view;
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (_tmp2_ == NULL) {
+#line 744 "moonshot-server-linux.c"
+               FILE* _tmp3_ = NULL;
+               const gchar* _tmp4_ = NULL;
+               MoonshotLogger* _tmp5_ = NULL;
+#line 55 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp3_ = stderr;
+#line 55 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp4_ = self->priv->app_name;
+#line 55 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               fprintf (_tmp3_, _tmp4_, "show_ui: parent_app.view is null!\n");
+#line 56 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp5_ = moonshot_server_logger;
+#line 56 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               moonshot_logger_warn (_tmp5_, "show_ui: parent_app.view is null!", NULL);
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               result = FALSE;
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               return result;
+#line 762 "moonshot-server-linux.c"
+       }
+#line 59 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp6_ = self->priv->parent_app;
+#line 59 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       identity_manager_app_show (_tmp6_);
+#line 60 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp7_ = self->priv->parent_app;
+#line 60 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp7_->explicitly_launched = TRUE;
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp8_ = moonshot_server_logger;
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       moonshot_logger_trace (_tmp8_, "MoonshotServer.show_ui: returning true", NULL);
+#line 62 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       result = TRUE;
+#line 62 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       return result;
+#line 780 "moonshot-server-linux.c"
+}
+
+
+static void moonshot_server_get_identity_data_free (gpointer _data) {
+       MoonshotServerGetIdentityData* _data_;
+       _data_ = _data;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_data_->nai);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_data_->password);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_data_->service);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_object_unref0 (_data_->self);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       g_slice_free (MoonshotServerGetIdentityData, _data_);
+#line 797 "moonshot-server-linux.c"
+}
+
+
+static gpointer _g_object_ref0 (gpointer self) {
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       return self ? g_object_ref (self) : NULL;
+#line 804 "moonshot-server-linux.c"
+}
+
+
+void moonshot_server_get_identity (MoonshotServer* self, const gchar* nai, const gchar* password, const gchar* service, GAsyncReadyCallback _callback_, gpointer _user_data_) {
+       MoonshotServerGetIdentityData* _data_;
+       MoonshotServer* _tmp0_ = NULL;
+       const gchar* _tmp1_ = NULL;
+       gchar* _tmp2_ = NULL;
+       const gchar* _tmp3_ = NULL;
+       gchar* _tmp4_ = NULL;
+       const gchar* _tmp5_ = NULL;
+       gchar* _tmp6_ = NULL;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_ = g_slice_new0 (MoonshotServerGetIdentityData);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_async_result = g_simple_async_result_new (G_OBJECT (self), _callback_, _user_data_, moonshot_server_get_identity);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       g_simple_async_result_set_op_res_gpointer (_data_->_async_result, _data_, moonshot_server_get_identity_data_free);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp0_ = _g_object_ref0 (self);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->self = _tmp0_;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp1_ = nai;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp2_ = g_strdup (_tmp1_);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_data_->nai);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->nai = _tmp2_;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp3_ = password;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp4_ = g_strdup (_tmp3_);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_data_->password);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->password = _tmp4_;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp5_ = service;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp6_ = g_strdup (_tmp5_);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_data_->service);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->service = _tmp6_;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       moonshot_server_get_identity_co (_data_);
+#line 853 "moonshot-server-linux.c"
+}
+
+
+gboolean moonshot_server_get_identity_finish (MoonshotServer* self, GAsyncResult* _res_, gchar** nai_out, gchar** password_out, gchar** server_certificate_hash, gchar** ca_certificate, gchar** subject_name_constraint, gchar** subject_alt_name_constraint) {
+       gboolean result;
+       MoonshotServerGetIdentityData* _data_;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_ = g_simple_async_result_get_op_res_gpointer (G_SIMPLE_ASYNC_RESULT (_res_));
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (nai_out) {
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               *nai_out = _data_->nai_out;
+#line 866 "moonshot-server-linux.c"
+       } else {
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_free0 (_data_->nai_out);
+#line 870 "moonshot-server-linux.c"
+       }
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->nai_out = NULL;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (password_out) {
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               *password_out = _data_->password_out;
+#line 878 "moonshot-server-linux.c"
+       } else {
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_free0 (_data_->password_out);
+#line 882 "moonshot-server-linux.c"
+       }
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->password_out = NULL;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (server_certificate_hash) {
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               *server_certificate_hash = _data_->server_certificate_hash;
+#line 890 "moonshot-server-linux.c"
+       } else {
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_free0 (_data_->server_certificate_hash);
+#line 894 "moonshot-server-linux.c"
+       }
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->server_certificate_hash = NULL;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (ca_certificate) {
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               *ca_certificate = _data_->ca_certificate;
+#line 902 "moonshot-server-linux.c"
+       } else {
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_free0 (_data_->ca_certificate);
+#line 906 "moonshot-server-linux.c"
+       }
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->ca_certificate = NULL;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (subject_name_constraint) {
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               *subject_name_constraint = _data_->subject_name_constraint;
+#line 914 "moonshot-server-linux.c"
+       } else {
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_free0 (_data_->subject_name_constraint);
+#line 918 "moonshot-server-linux.c"
+       }
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->subject_name_constraint = NULL;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (subject_alt_name_constraint) {
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               *subject_alt_name_constraint = _data_->subject_alt_name_constraint;
+#line 926 "moonshot-server-linux.c"
+       } else {
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_free0 (_data_->subject_alt_name_constraint);
+#line 930 "moonshot-server-linux.c"
+       }
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->subject_alt_name_constraint = NULL;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       result = _data_->result;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       return result;
+#line 938 "moonshot-server-linux.c"
+}
+
+
+static Block7Data* block7_data_ref (Block7Data* _data7_) {
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       g_atomic_int_inc (&_data7_->_ref_count_);
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       return _data7_;
+#line 947 "moonshot-server-linux.c"
+}
+
+
+static void block7_data_unref (void * _userdata_) {
+       Block7Data* _data7_;
+       _data7_ = (Block7Data*) _userdata_;
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (g_atomic_int_dec_and_test (&_data7_->_ref_count_)) {
+#line 956 "moonshot-server-linux.c"
+               MoonshotServer* self;
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               self = _data7_->self;
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_object_unref0 (self);
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               g_slice_free (Block7Data, _data7_);
+#line 964 "moonshot-server-linux.c"
+       }
+}
+
+
+static const gchar* string_to_string (const gchar* self) {
+       const gchar* result = NULL;
+#line 1420 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 1421 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       result = self;
+#line 1421 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       return result;
+#line 977 "moonshot-server-linux.c"
+}
+
+
+static void __lambda19_ (Block7Data* _data7_, IdentityRequest* IdentityRequest) {
+       MoonshotServer* self;
+#line 81 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       self = _data7_->self;
+#line 81 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       g_return_if_fail (IdentityRequest != NULL);
+#line 81 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       moonshot_server_get_identity_co (_data7_->_async_data_);
+#line 989 "moonshot-server-linux.c"
+}
+
+
+static void ___lambda19__return_identity_callback (IdentityRequest* request, gpointer self) {
+#line 81 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       __lambda19_ (self, request);
+#line 996 "moonshot-server-linux.c"
+}
+
+
+static gboolean moonshot_server_get_identity_co (MoonshotServerGetIdentityData* _data_) {
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       switch (_data_->_state_) {
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               case 0:
+#line 1005 "moonshot-server-linux.c"
+               goto _state_0;
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               case 1:
+#line 1009 "moonshot-server-linux.c"
+               goto _state_1;
+               default:
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               g_assert_not_reached ();
+#line 1014 "moonshot-server-linux.c"
+       }
+       _state_0:
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_data7_ = g_slice_new0 (Block7Data);
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_data7_->_ref_count_ = 1;
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_data7_->self = g_object_ref (_data_->self);
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_data7_->_async_data_ = _data_;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp0_ = NULL;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp0_ = moonshot_server_logger;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp1_ = NULL;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp1_ = _data_->nai;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp2_ = NULL;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp2_ = string_to_string (_data_->_tmp1_);
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp3_ = NULL;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp3_ = _data_->service;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp4_ = NULL;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp4_ = string_to_string (_data_->_tmp3_);
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp5_ = NULL;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp5_ = g_strconcat ("MoonshotServer.get_identity: nai='", _data_->_tmp2_, "'; service='", _data_->_tmp4_, "'", NULL);
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp6_ = NULL;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp6_ = _data_->_tmp5_;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       moonshot_logger_trace (_data_->_tmp0_, _data_->_tmp6_, NULL);
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_data_->_tmp6_);
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp7_ = NULL;
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp7_ = _data_->self->priv->parent_app;
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp8_ = NULL;
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp8_ = _data_->nai;
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp9_ = NULL;
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp9_ = _data_->password;
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp10_ = NULL;
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp10_ = _data_->service;
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp11_ = NULL;
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp11_ = identity_request_new (_data_->_tmp7_, _data_->_tmp8_, _data_->_tmp9_, _data_->_tmp10_);
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->request = _data_->_tmp11_;
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp12_ = NULL;
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp12_ = moonshot_server_logger;
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       moonshot_logger_trace (_data_->_tmp12_, "MoonshotServer.get_identity: Calling request.execute()", NULL);
+#line 81 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp13_ = NULL;
+#line 81 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp13_ = _data_->request;
+#line 81 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       identity_request_set_callback (_data_->_tmp13_, ___lambda19__return_identity_callback, block7_data_ref (_data_->_data7_), block7_data_unref);
+#line 82 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp14_ = NULL;
+#line 82 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp14_ = _data_->request;
+#line 82 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       identity_request_execute (_data_->_tmp14_);
+#line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp15_ = NULL;
+#line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp15_ = moonshot_server_logger;
+#line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       moonshot_logger_trace (_data_->_tmp15_, "MoonshotServer.get_identity: Back from request.execute()", NULL);
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_state_ = 1;
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       return FALSE;
+#line 1107 "moonshot-server-linux.c"
+       _state_1:
+       ;
+#line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp16_ = NULL;
+#line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp16_ = moonshot_server_logger;
+#line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       moonshot_logger_trace (_data_->_tmp16_, "MoonshotServer.get_identity: back from yield", NULL);
+#line 87 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp17_ = NULL;
+#line 87 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp17_ = g_strdup ("");
+#line 87 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_data_->nai_out);
+#line 87 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->nai_out = _data_->_tmp17_;
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp18_ = NULL;
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp18_ = g_strdup ("");
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_data_->password_out);
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->password_out = _data_->_tmp18_;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp19_ = NULL;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp19_ = g_strdup ("");
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_data_->server_certificate_hash);
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->server_certificate_hash = _data_->_tmp19_;
+#line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp20_ = NULL;
+#line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp20_ = g_strdup ("");
+#line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_data_->ca_certificate);
+#line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->ca_certificate = _data_->_tmp20_;
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp21_ = NULL;
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp21_ = g_strdup ("");
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_data_->subject_name_constraint);
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->subject_name_constraint = _data_->_tmp21_;
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp22_ = NULL;
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp22_ = g_strdup ("");
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_data_->subject_alt_name_constraint);
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->subject_alt_name_constraint = _data_->_tmp22_;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp23_ = NULL;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp23_ = _data_->request;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp24_ = NULL;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp24_ = _data_->_tmp23_->id_card;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp25_ = NULL;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp25_ = _g_object_ref0 (_data_->_tmp24_);
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->id_card = _data_->_tmp25_;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp27_ = NULL;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp27_ = _data_->id_card;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (_data_->_tmp27_ != NULL) {
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp28_ = NULL;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp28_ = _data_->id_card;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp29_ = FALSE;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp29_ = id_card_is_no_identity (_data_->_tmp28_);
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp26_ = !_data_->_tmp29_;
+#line 1194 "moonshot-server-linux.c"
+       } else {
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp26_ = FALSE;
+#line 1198 "moonshot-server-linux.c"
+       }
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (_data_->_tmp26_) {
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp30_ = NULL;
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp30_ = _data_->id_card;
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp31_ = NULL;
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp31_ = id_card_get_nai (_data_->_tmp30_);
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp32_ = NULL;
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp32_ = _data_->_tmp31_;
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp33_ = NULL;
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp33_ = g_strdup (_data_->_tmp32_);
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_free0 (_data_->nai_out);
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->nai_out = _data_->_tmp33_;
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp35_ = NULL;
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp35_ = _data_->request;
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp36_ = NULL;
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp36_ = _data_->_tmp35_->password;
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               if (_data_->_tmp36_ != NULL) {
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp37_ = NULL;
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp37_ = _data_->request;
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp38_ = NULL;
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp38_ = _data_->_tmp37_->password;
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp34_ = g_strcmp0 (_data_->_tmp38_, "") != 0;
+#line 1242 "moonshot-server-linux.c"
+               } else {
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp34_ = FALSE;
+#line 1246 "moonshot-server-linux.c"
+               }
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               if (_data_->_tmp34_) {
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp39_ = NULL;
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp39_ = _data_->request;
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp40_ = NULL;
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp40_ = _data_->_tmp39_->password;
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp41_ = NULL;
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp41_ = g_strdup (_data_->_tmp40_);
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _g_free0 (_data_->password_out);
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->password_out = _data_->_tmp41_;
+#line 1266 "moonshot-server-linux.c"
+               } else {
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp42_ = NULL;
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp42_ = _data_->id_card;
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp43_ = NULL;
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp43_ = id_card_get_password (_data_->_tmp42_);
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp44_ = NULL;
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp44_ = _data_->_tmp43_;
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp45_ = NULL;
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp45_ = g_strdup (_data_->_tmp44_);
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _g_free0 (_data_->password_out);
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->password_out = _data_->_tmp45_;
+#line 1288 "moonshot-server-linux.c"
+               }
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp46_ = NULL;
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp46_ = _data_->id_card;
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp47_ = NULL;
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp47_ = id_card_get_trust_anchor (_data_->_tmp46_);
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp48_ = NULL;
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp48_ = _data_->_tmp47_;
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp49_ = NULL;
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp49_ = trust_anchor_get_server_cert (_data_->_tmp48_);
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp50_ = NULL;
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp50_ = _data_->_tmp49_;
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp51_ = NULL;
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp51_ = g_strdup (_data_->_tmp50_);
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_free0 (_data_->server_certificate_hash);
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->server_certificate_hash = _data_->_tmp51_;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp52_ = NULL;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp52_ = _data_->id_card;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp53_ = NULL;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp53_ = id_card_get_trust_anchor (_data_->_tmp52_);
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp54_ = NULL;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp54_ = _data_->_tmp53_;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp55_ = NULL;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp55_ = trust_anchor_get_ca_cert (_data_->_tmp54_);
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp56_ = NULL;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp56_ = _data_->_tmp55_;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp57_ = NULL;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp57_ = g_strdup (_data_->_tmp56_);
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_free0 (_data_->ca_certificate);
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->ca_certificate = _data_->_tmp57_;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp58_ = NULL;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp58_ = _data_->id_card;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp59_ = NULL;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp59_ = id_card_get_trust_anchor (_data_->_tmp58_);
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp60_ = NULL;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp60_ = _data_->_tmp59_;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp61_ = NULL;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp61_ = trust_anchor_get_subject (_data_->_tmp60_);
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp62_ = NULL;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp62_ = _data_->_tmp61_;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp63_ = NULL;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp63_ = g_strdup (_data_->_tmp62_);
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_free0 (_data_->subject_name_constraint);
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->subject_name_constraint = _data_->_tmp63_;
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp64_ = NULL;
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp64_ = _data_->id_card;
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp65_ = NULL;
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp65_ = id_card_get_trust_anchor (_data_->_tmp64_);
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp66_ = NULL;
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp66_ = _data_->_tmp65_;
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp67_ = NULL;
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp67_ = trust_anchor_get_subject_alt (_data_->_tmp66_);
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp68_ = NULL;
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp68_ = _data_->_tmp67_;
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp69_ = NULL;
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp69_ = g_strdup (_data_->_tmp68_);
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_free0 (_data_->subject_alt_name_constraint);
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->subject_alt_name_constraint = _data_->_tmp69_;
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp70_ = NULL;
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp70_ = _data_->nai_out;
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               if (_data_->_tmp70_ == NULL) {
+#line 109 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp71_ = NULL;
+#line 109 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp71_ = g_strdup ("");
+#line 109 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _g_free0 (_data_->nai_out);
+#line 109 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->nai_out = _data_->_tmp71_;
+#line 1416 "moonshot-server-linux.c"
+               }
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp72_ = NULL;
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp72_ = _data_->password_out;
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               if (_data_->_tmp72_ == NULL) {
+#line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp73_ = NULL;
+#line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp73_ = g_strdup ("");
+#line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _g_free0 (_data_->password_out);
+#line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->password_out = _data_->_tmp73_;
+#line 1432 "moonshot-server-linux.c"
+               }
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp74_ = NULL;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp74_ = _data_->server_certificate_hash;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               if (_data_->_tmp74_ == NULL) {
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp75_ = NULL;
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp75_ = g_strdup ("");
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _g_free0 (_data_->server_certificate_hash);
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->server_certificate_hash = _data_->_tmp75_;
+#line 1448 "moonshot-server-linux.c"
+               }
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp76_ = NULL;
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp76_ = _data_->ca_certificate;
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               if (_data_->_tmp76_ == NULL) {
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp77_ = NULL;
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp77_ = g_strdup ("");
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _g_free0 (_data_->ca_certificate);
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->ca_certificate = _data_->_tmp77_;
+#line 1464 "moonshot-server-linux.c"
+               }
+#line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp78_ = NULL;
+#line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp78_ = _data_->subject_name_constraint;
+#line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               if (_data_->_tmp78_ == NULL) {
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp79_ = NULL;
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp79_ = g_strdup ("");
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _g_free0 (_data_->subject_name_constraint);
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->subject_name_constraint = _data_->_tmp79_;
+#line 1480 "moonshot-server-linux.c"
+               }
+#line 118 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp80_ = NULL;
+#line 118 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp80_ = _data_->subject_alt_name_constraint;
+#line 118 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               if (_data_->_tmp80_ == NULL) {
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp81_ = NULL;
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp81_ = g_strdup ("");
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _g_free0 (_data_->subject_alt_name_constraint);
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->subject_alt_name_constraint = _data_->_tmp81_;
+#line 1496 "moonshot-server-linux.c"
+               }
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp82_ = NULL;
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp82_ = moonshot_server_logger;
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp83_ = NULL;
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp83_ = _data_->nai_out;
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp84_ = NULL;
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp84_ = string_to_string (_data_->_tmp83_);
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp85_ = NULL;
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp85_ = g_strconcat ("MoonshotServer.get_identity: returning with nai_out=", _data_->_tmp84_, NULL);
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp86_ = NULL;
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp86_ = _data_->_tmp85_;
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               moonshot_logger_trace (_data_->_tmp82_, _data_->_tmp86_, NULL);
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_free0 (_data_->_tmp86_);
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->result = TRUE;
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_object_unref0 (_data_->id_card);
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_object_unref0 (_data_->request);
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               block7_data_unref (_data_->_data7_);
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_data7_ = NULL;
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               if (_data_->_state_ == 0) {
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       g_simple_async_result_complete_in_idle (_data_->_async_result);
+#line 1536 "moonshot-server-linux.c"
+               } else {
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       g_simple_async_result_complete (_data_->_async_result);
+#line 1540 "moonshot-server-linux.c"
+               }
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               g_object_unref (_data_->_async_result);
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               return FALSE;
+#line 1546 "moonshot-server-linux.c"
+       }
+#line 126 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp87_ = NULL;
+#line 126 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp87_ = moonshot_server_logger;
+#line 126 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       moonshot_logger_trace (_data_->_tmp87_, "MoonshotServer.get_identity: returning false", NULL);
+#line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->result = FALSE;
+#line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_object_unref0 (_data_->id_card);
+#line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_object_unref0 (_data_->request);
+#line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       block7_data_unref (_data_->_data7_);
+#line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_data7_ = NULL;
+#line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (_data_->_state_ == 0) {
+#line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               g_simple_async_result_complete_in_idle (_data_->_async_result);
+#line 1568 "moonshot-server-linux.c"
+       } else {
+#line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               g_simple_async_result_complete (_data_->_async_result);
+#line 1572 "moonshot-server-linux.c"
+       }
+#line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       g_object_unref (_data_->_async_result);
+#line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       return FALSE;
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_object_unref0 (_data_->id_card);
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_object_unref0 (_data_->request);
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       block7_data_unref (_data_->_data7_);
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_data7_ = NULL;
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (_data_->_state_ == 0) {
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               g_simple_async_result_complete_in_idle (_data_->_async_result);
+#line 1590 "moonshot-server-linux.c"
+       } else {
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               g_simple_async_result_complete (_data_->_async_result);
+#line 1594 "moonshot-server-linux.c"
+       }
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       g_object_unref (_data_->_async_result);
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       return FALSE;
+#line 1600 "moonshot-server-linux.c"
+}
+
+
+static void moonshot_server_get_default_identity_data_free (gpointer _data) {
+       MoonshotServerGetDefaultIdentityData* _data_;
+       _data_ = _data;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_object_unref0 (_data_->self);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       g_slice_free (MoonshotServerGetDefaultIdentityData, _data_);
+#line 1611 "moonshot-server-linux.c"
+}
+
+
+void moonshot_server_get_default_identity (MoonshotServer* self, GAsyncReadyCallback _callback_, gpointer _user_data_) {
+       MoonshotServerGetDefaultIdentityData* _data_;
+       MoonshotServer* _tmp0_ = NULL;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_ = g_slice_new0 (MoonshotServerGetDefaultIdentityData);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_async_result = g_simple_async_result_new (G_OBJECT (self), _callback_, _user_data_, moonshot_server_get_default_identity);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       g_simple_async_result_set_op_res_gpointer (_data_->_async_result, _data_, moonshot_server_get_default_identity_data_free);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp0_ = _g_object_ref0 (self);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->self = _tmp0_;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       moonshot_server_get_default_identity_co (_data_);
+#line 1630 "moonshot-server-linux.c"
+}
+
+
+gboolean moonshot_server_get_default_identity_finish (MoonshotServer* self, GAsyncResult* _res_, gchar** nai_out, gchar** password_out, gchar** server_certificate_hash, gchar** ca_certificate, gchar** subject_name_constraint, gchar** subject_alt_name_constraint) {
+       gboolean result;
+       MoonshotServerGetDefaultIdentityData* _data_;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_ = g_simple_async_result_get_op_res_gpointer (G_SIMPLE_ASYNC_RESULT (_res_));
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (nai_out) {
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               *nai_out = _data_->nai_out;
+#line 1643 "moonshot-server-linux.c"
+       } else {
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_free0 (_data_->nai_out);
+#line 1647 "moonshot-server-linux.c"
+       }
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->nai_out = NULL;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (password_out) {
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               *password_out = _data_->password_out;
+#line 1655 "moonshot-server-linux.c"
+       } else {
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_free0 (_data_->password_out);
+#line 1659 "moonshot-server-linux.c"
+       }
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->password_out = NULL;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (server_certificate_hash) {
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               *server_certificate_hash = _data_->server_certificate_hash;
+#line 1667 "moonshot-server-linux.c"
+       } else {
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_free0 (_data_->server_certificate_hash);
+#line 1671 "moonshot-server-linux.c"
+       }
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->server_certificate_hash = NULL;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (ca_certificate) {
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               *ca_certificate = _data_->ca_certificate;
+#line 1679 "moonshot-server-linux.c"
+       } else {
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_free0 (_data_->ca_certificate);
+#line 1683 "moonshot-server-linux.c"
+       }
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->ca_certificate = NULL;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (subject_name_constraint) {
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               *subject_name_constraint = _data_->subject_name_constraint;
+#line 1691 "moonshot-server-linux.c"
+       } else {
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_free0 (_data_->subject_name_constraint);
+#line 1695 "moonshot-server-linux.c"
+       }
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->subject_name_constraint = NULL;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (subject_alt_name_constraint) {
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               *subject_alt_name_constraint = _data_->subject_alt_name_constraint;
+#line 1703 "moonshot-server-linux.c"
+       } else {
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_free0 (_data_->subject_alt_name_constraint);
+#line 1707 "moonshot-server-linux.c"
+       }
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->subject_alt_name_constraint = NULL;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       result = _data_->result;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       return result;
+#line 1715 "moonshot-server-linux.c"
+}
+
+
+static Block8Data* block8_data_ref (Block8Data* _data8_) {
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       g_atomic_int_inc (&_data8_->_ref_count_);
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       return _data8_;
+#line 1724 "moonshot-server-linux.c"
+}
+
+
+static void block8_data_unref (void * _userdata_) {
+       Block8Data* _data8_;
+       _data8_ = (Block8Data*) _userdata_;
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (g_atomic_int_dec_and_test (&_data8_->_ref_count_)) {
+#line 1733 "moonshot-server-linux.c"
+               MoonshotServer* self;
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               self = _data8_->self;
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_object_unref0 (self);
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               g_slice_free (Block8Data, _data8_);
+#line 1741 "moonshot-server-linux.c"
+       }
+}
+
+
+static void __lambda20_ (Block8Data* _data8_, IdentityRequest* IdentityRequest) {
+       MoonshotServer* self;
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       self = _data8_->self;
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       g_return_if_fail (IdentityRequest != NULL);
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       moonshot_server_get_default_identity_co (_data8_->_async_data_);
+#line 1754 "moonshot-server-linux.c"
+}
+
+
+static void ___lambda20__return_identity_callback (IdentityRequest* request, gpointer self) {
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       __lambda20_ (self, request);
+#line 1761 "moonshot-server-linux.c"
+}
+
+
+static gboolean moonshot_server_get_default_identity_co (MoonshotServerGetDefaultIdentityData* _data_) {
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       switch (_data_->_state_) {
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               case 0:
+#line 1770 "moonshot-server-linux.c"
+               goto _state_0;
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               case 1:
+#line 1774 "moonshot-server-linux.c"
+               goto _state_1;
+               default:
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               g_assert_not_reached ();
+#line 1779 "moonshot-server-linux.c"
+       }
+       _state_0:
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_data8_ = g_slice_new0 (Block8Data);
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_data8_->_ref_count_ = 1;
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_data8_->self = g_object_ref (_data_->self);
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_data8_->_async_data_ = _data_;
+#line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp0_ = NULL;
+#line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp0_ = moonshot_server_logger;
+#line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       moonshot_logger_trace (_data_->_tmp0_, "MoonshotServer.get_default_identity", NULL);
+#line 138 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp1_ = NULL;
+#line 138 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp1_ = _data_->self->priv->parent_app;
+#line 138 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp2_ = NULL;
+#line 138 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp2_ = identity_request_new_default (_data_->_tmp1_);
+#line 138 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->request = _data_->_tmp2_;
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp3_ = NULL;
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp3_ = _data_->request;
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       identity_request_set_callback (_data_->_tmp3_, ___lambda20__return_identity_callback, block8_data_ref (_data_->_data8_), block8_data_unref);
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp4_ = NULL;
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp4_ = _data_->request;
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       identity_request_execute (_data_->_tmp4_);
+#line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_state_ = 1;
+#line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       return FALSE;
+#line 1822 "moonshot-server-linux.c"
+       _state_1:
+       ;
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp5_ = NULL;
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp5_ = g_strdup ("");
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_data_->nai_out);
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->nai_out = _data_->_tmp5_;
+#line 144 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp6_ = NULL;
+#line 144 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp6_ = g_strdup ("");
+#line 144 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_data_->password_out);
+#line 144 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->password_out = _data_->_tmp6_;
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp7_ = NULL;
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp7_ = g_strdup ("");
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_data_->server_certificate_hash);
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->server_certificate_hash = _data_->_tmp7_;
+#line 146 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp8_ = NULL;
+#line 146 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp8_ = g_strdup ("");
+#line 146 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_data_->ca_certificate);
+#line 146 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->ca_certificate = _data_->_tmp8_;
+#line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp9_ = NULL;
+#line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp9_ = g_strdup ("");
+#line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_data_->subject_name_constraint);
+#line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->subject_name_constraint = _data_->_tmp9_;
+#line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp10_ = NULL;
+#line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp10_ = g_strdup ("");
+#line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_data_->subject_alt_name_constraint);
+#line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->subject_alt_name_constraint = _data_->_tmp10_;
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp11_ = NULL;
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp11_ = _data_->request;
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp12_ = NULL;
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp12_ = _data_->_tmp11_->id_card;
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (_data_->_tmp12_ != NULL) {
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp13_ = NULL;
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp13_ = _data_->request;
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp14_ = NULL;
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp14_ = _data_->_tmp13_->id_card;
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp15_ = NULL;
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp15_ = id_card_get_nai (_data_->_tmp14_);
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp16_ = NULL;
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp16_ = _data_->_tmp15_;
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp17_ = NULL;
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp17_ = g_strdup (_data_->_tmp16_);
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_free0 (_data_->nai_out);
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->nai_out = _data_->_tmp17_;
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp18_ = NULL;
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp18_ = _data_->request;
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp19_ = NULL;
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp19_ = _data_->_tmp18_->id_card;
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp20_ = NULL;
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp20_ = id_card_get_password (_data_->_tmp19_);
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp21_ = NULL;
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp21_ = _data_->_tmp20_;
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp22_ = NULL;
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp22_ = g_strdup (_data_->_tmp21_);
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_free0 (_data_->password_out);
+#line 153 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->password_out = _data_->_tmp22_;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp23_ = NULL;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp23_ = _data_->request;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp24_ = NULL;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp24_ = _data_->_tmp23_->id_card;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp25_ = NULL;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp25_ = id_card_get_trust_anchor (_data_->_tmp24_);
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp26_ = NULL;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp26_ = _data_->_tmp25_;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp27_ = NULL;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp27_ = trust_anchor_get_server_cert (_data_->_tmp26_);
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp28_ = NULL;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp28_ = _data_->_tmp27_;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp29_ = NULL;
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp29_ = g_strdup (_data_->_tmp28_);
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_free0 (_data_->server_certificate_hash);
+#line 155 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->server_certificate_hash = _data_->_tmp29_;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp30_ = NULL;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp30_ = _data_->request;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp31_ = NULL;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp31_ = _data_->_tmp30_->id_card;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp32_ = NULL;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp32_ = id_card_get_trust_anchor (_data_->_tmp31_);
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp33_ = NULL;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp33_ = _data_->_tmp32_;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp34_ = NULL;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp34_ = trust_anchor_get_ca_cert (_data_->_tmp33_);
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp35_ = NULL;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp35_ = _data_->_tmp34_;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp36_ = NULL;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp36_ = g_strdup (_data_->_tmp35_);
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_free0 (_data_->ca_certificate);
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->ca_certificate = _data_->_tmp36_;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp37_ = NULL;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp37_ = _data_->request;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp38_ = NULL;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp38_ = _data_->_tmp37_->id_card;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp39_ = NULL;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp39_ = id_card_get_trust_anchor (_data_->_tmp38_);
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp40_ = NULL;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp40_ = _data_->_tmp39_;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp41_ = NULL;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp41_ = trust_anchor_get_subject (_data_->_tmp40_);
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp42_ = NULL;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp42_ = _data_->_tmp41_;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp43_ = NULL;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp43_ = g_strdup (_data_->_tmp42_);
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_free0 (_data_->subject_name_constraint);
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->subject_name_constraint = _data_->_tmp43_;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp44_ = NULL;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp44_ = _data_->request;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp45_ = NULL;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp45_ = _data_->_tmp44_->id_card;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp46_ = NULL;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp46_ = id_card_get_trust_anchor (_data_->_tmp45_);
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp47_ = NULL;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp47_ = _data_->_tmp46_;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp48_ = NULL;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp48_ = trust_anchor_get_subject_alt (_data_->_tmp47_);
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp49_ = NULL;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp49_ = _data_->_tmp48_;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp50_ = NULL;
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp50_ = g_strdup (_data_->_tmp49_);
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_free0 (_data_->subject_alt_name_constraint);
+#line 158 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->subject_alt_name_constraint = _data_->_tmp50_;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp51_ = NULL;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp51_ = _data_->nai_out;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               if (_data_->_tmp51_ == NULL) {
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp52_ = NULL;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp52_ = g_strdup ("");
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _g_free0 (_data_->nai_out);
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->nai_out = _data_->_tmp52_;
+#line 2073 "moonshot-server-linux.c"
+               }
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp53_ = NULL;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp53_ = _data_->password_out;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               if (_data_->_tmp53_ == NULL) {
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp54_ = NULL;
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp54_ = g_strdup ("");
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _g_free0 (_data_->password_out);
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->password_out = _data_->_tmp54_;
+#line 2089 "moonshot-server-linux.c"
+               }
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp55_ = NULL;
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp55_ = _data_->server_certificate_hash;
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               if (_data_->_tmp55_ == NULL) {
+#line 165 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp56_ = NULL;
+#line 165 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp56_ = g_strdup ("");
+#line 165 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _g_free0 (_data_->server_certificate_hash);
+#line 165 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->server_certificate_hash = _data_->_tmp56_;
+#line 2105 "moonshot-server-linux.c"
+               }
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp57_ = NULL;
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp57_ = _data_->ca_certificate;
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               if (_data_->_tmp57_ == NULL) {
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp58_ = NULL;
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp58_ = g_strdup ("");
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _g_free0 (_data_->ca_certificate);
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->ca_certificate = _data_->_tmp58_;
+#line 2121 "moonshot-server-linux.c"
+               }
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp59_ = NULL;
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp59_ = _data_->subject_name_constraint;
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               if (_data_->_tmp59_ == NULL) {
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp60_ = NULL;
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp60_ = g_strdup ("");
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _g_free0 (_data_->subject_name_constraint);
+#line 169 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->subject_name_constraint = _data_->_tmp60_;
+#line 2137 "moonshot-server-linux.c"
+               }
+#line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp61_ = NULL;
+#line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp61_ = _data_->subject_alt_name_constraint;
+#line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               if (_data_->_tmp61_ == NULL) {
+#line 171 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp62_ = NULL;
+#line 171 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->_tmp62_ = g_strdup ("");
+#line 171 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _g_free0 (_data_->subject_alt_name_constraint);
+#line 171 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _data_->subject_alt_name_constraint = _data_->_tmp62_;
+#line 2153 "moonshot-server-linux.c"
+               }
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp63_ = NULL;
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp63_ = moonshot_server_logger;
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               moonshot_logger_trace (_data_->_tmp63_, "MoonshotServer.get_default_identity: returning true", NULL);
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->result = TRUE;
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_object_unref0 (_data_->request);
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               block8_data_unref (_data_->_data8_);
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_data8_ = NULL;
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               if (_data_->_state_ == 0) {
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       g_simple_async_result_complete_in_idle (_data_->_async_result);
+#line 2173 "moonshot-server-linux.c"
+               } else {
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       g_simple_async_result_complete (_data_->_async_result);
+#line 2177 "moonshot-server-linux.c"
+               }
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               g_object_unref (_data_->_async_result);
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               return FALSE;
+#line 2183 "moonshot-server-linux.c"
+       }
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->result = FALSE;
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_object_unref0 (_data_->request);
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       block8_data_unref (_data_->_data8_);
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_data8_ = NULL;
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (_data_->_state_ == 0) {
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               g_simple_async_result_complete_in_idle (_data_->_async_result);
+#line 2197 "moonshot-server-linux.c"
+       } else {
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               g_simple_async_result_complete (_data_->_async_result);
+#line 2201 "moonshot-server-linux.c"
+       }
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       g_object_unref (_data_->_async_result);
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       return FALSE;
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_object_unref0 (_data_->request);
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       block8_data_unref (_data_->_data8_);
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_data8_ = NULL;
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (_data_->_state_ == 0) {
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               g_simple_async_result_complete_in_idle (_data_->_async_result);
+#line 2217 "moonshot-server-linux.c"
+       } else {
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               g_simple_async_result_complete (_data_->_async_result);
+#line 2221 "moonshot-server-linux.c"
+       }
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       g_object_unref (_data_->_async_result);
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       return FALSE;
+#line 2227 "moonshot-server-linux.c"
+}
+
+
+static void _vala_Rule_array_free (Rule* array, gint array_length) {
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (array != NULL) {
+#line 2234 "moonshot-server-linux.c"
+               int i;
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               for (i = 0; i < array_length; i = i + 1) {
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       rule_destroy (&array[i]);
+#line 2240 "moonshot-server-linux.c"
+               }
+       }
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       g_free (array);
+#line 2245 "moonshot-server-linux.c"
+}
+
+
+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) {
+       gboolean result = FALSE;
+       IdCard* idcard = NULL;
+       IdCard* _tmp0_ = NULL;
+       IdCard* _tmp1_ = NULL;
+       const gchar* _tmp2_ = NULL;
+       IdCard* _tmp3_ = NULL;
+       const gchar* _tmp4_ = NULL;
+       IdCard* _tmp5_ = NULL;
+       const gchar* _tmp6_ = NULL;
+       gboolean _tmp7_ = FALSE;
+       const gchar* _tmp8_ = NULL;
+       IdCard* _tmp11_ = NULL;
+       const gchar* _tmp12_ = NULL;
+       IdCard* _tmp13_ = NULL;
+       gchar** _tmp14_ = NULL;
+       gint _tmp14__length1 = 0;
+       TrustAnchor* ta = NULL;
+       const gchar* _tmp15_ = NULL;
+       const gchar* _tmp16_ = NULL;
+       const gchar* _tmp17_ = NULL;
+       const gchar* _tmp18_ = NULL;
+       TrustAnchor* _tmp19_ = NULL;
+       TrustAnchor* _tmp20_ = NULL;
+       gboolean _tmp21_ = FALSE;
+       IdCard* _tmp40_ = NULL;
+       TrustAnchor* _tmp41_ = NULL;
+       MoonshotLogger* _tmp42_ = NULL;
+       IdCard* _tmp43_ = NULL;
+       const gchar* _tmp44_ = NULL;
+       const gchar* _tmp45_ = NULL;
+       IdCard* _tmp46_ = NULL;
+       gchar* _tmp47_ = NULL;
+       gchar* _tmp48_ = NULL;
+       gchar* _tmp49_ = NULL;
+       gchar* _tmp50_ = NULL;
+       MoonshotLogger* _tmp51_ = NULL;
+       IdCard* _tmp52_ = NULL;
+       const gchar* _tmp53_ = NULL;
+       const gchar* _tmp54_ = NULL;
+       const gchar* _tmp55_ = NULL;
+       IdCard* _tmp56_ = NULL;
+       TrustAnchor* _tmp57_ = NULL;
+       TrustAnchor* _tmp58_ = NULL;
+       const gchar* _tmp59_ = NULL;
+       const gchar* _tmp60_ = NULL;
+       const gchar* _tmp61_ = NULL;
+       IdCard* _tmp62_ = NULL;
+       TrustAnchor* _tmp63_ = NULL;
+       TrustAnchor* _tmp64_ = NULL;
+       const gchar* _tmp65_ = NULL;
+       const gchar* _tmp66_ = NULL;
+       const gchar* _tmp67_ = NULL;
+       gchar* _tmp68_ = NULL;
+       gchar* _tmp69_ = NULL;
+       gchar** _tmp70_ = NULL;
+       gint _tmp70__length1 = 0;
+       gchar** _tmp71_ = NULL;
+       gint _tmp71__length1 = 0;
+       GeeArrayList* old_duplicates = NULL;
+       gboolean ret = FALSE;
+       IdentityManagerApp* _tmp92_ = NULL;
+       IdCard* _tmp93_ = NULL;
+       gint _tmp94_ = 0;
+       GeeArrayList* _tmp95_ = NULL;
+       gboolean _tmp96_ = FALSE;
+       GeeArrayList* _tmp97_ = NULL;
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       g_return_val_if_fail (self != NULL, FALSE);
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       g_return_val_if_fail (display_name != NULL, FALSE);
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       g_return_val_if_fail (user_name != NULL, FALSE);
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp0_ = id_card_new ();
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       idcard = _tmp0_;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp1_ = idcard;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp2_ = display_name;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       id_card_set_display_name (_tmp1_, _tmp2_);
+#line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp3_ = idcard;
+#line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp4_ = user_name;
+#line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       id_card_set_username (_tmp3_, _tmp4_);
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp5_ = idcard;
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp6_ = password;
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       id_card_set_password (_tmp5_, _tmp6_);
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp8_ = password;
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (_tmp8_ != NULL) {
+#line 2348 "moonshot-server-linux.c"
+               const gchar* _tmp9_ = NULL;
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp9_ = password;
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp7_ = g_strcmp0 (_tmp9_, "") != 0;
+#line 2354 "moonshot-server-linux.c"
+       } else {
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp7_ = FALSE;
+#line 2358 "moonshot-server-linux.c"
+       }
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (_tmp7_) {
+#line 2362 "moonshot-server-linux.c"
+               IdCard* _tmp10_ = NULL;
+#line 199 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp10_ = idcard;
+#line 199 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               id_card_set_store_password (_tmp10_, TRUE);
+#line 2368 "moonshot-server-linux.c"
+       }
+#line 200 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp11_ = idcard;
+#line 200 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp12_ = realm;
+#line 200 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       id_card_set_issuer (_tmp11_, _tmp12_);
+#line 201 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp13_ = idcard;
+#line 201 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp14_ = services;
+#line 201 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp14__length1 = services_length1;
+#line 201 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       id_card_update_services (_tmp13_, _tmp14_, _tmp14__length1);
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp15_ = ca_cert;
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp16_ = server_cert;
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp17_ = subject;
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp18_ = subject_alt;
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp19_ = trust_anchor_new (_tmp15_, _tmp16_, _tmp17_, _tmp18_);
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       ta = _tmp19_;
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp20_ = ta;
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp21_ = trust_anchor_is_empty (_tmp20_);
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (!_tmp21_) {
+#line 2402 "moonshot-server-linux.c"
+               gchar* ta_datetime_added = NULL;
+               gchar* _tmp22_ = NULL;
+               TrustAnchor* _tmp23_ = NULL;
+               const gchar* _tmp24_ = NULL;
+               MoonshotLogger* _tmp25_ = NULL;
+               IdCard* _tmp26_ = NULL;
+               const gchar* _tmp27_ = NULL;
+               const gchar* _tmp28_ = NULL;
+               TrustAnchor* _tmp29_ = NULL;
+               const gchar* _tmp30_ = NULL;
+               const gchar* _tmp31_ = NULL;
+               TrustAnchor* _tmp32_ = NULL;
+               const gchar* _tmp33_ = NULL;
+               const gchar* _tmp34_ = NULL;
+               TrustAnchor* _tmp35_ = NULL;
+               const gchar* _tmp36_ = NULL;
+               const gchar* _tmp37_ = NULL;
+               gchar* _tmp38_ = NULL;
+               gchar* _tmp39_ = NULL;
+#line 206 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp22_ = trust_anchor_format_datetime_now ();
+#line 206 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               ta_datetime_added = _tmp22_;
+#line 207 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp23_ = ta;
+#line 207 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp24_ = ta_datetime_added;
+#line 207 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               trust_anchor_set_datetime_added (_tmp23_, _tmp24_);
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp25_ = moonshot_server_logger;
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp26_ = idcard;
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp27_ = id_card_get_display_name (_tmp26_);
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp28_ = _tmp27_;
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp29_ = ta;
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp30_ = trust_anchor_get_datetime_added (_tmp29_);
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp31_ = _tmp30_;
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp32_ = ta;
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp33_ = trust_anchor_get_ca_cert (_tmp32_);
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp34_ = _tmp33_;
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp35_ = ta;
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp36_ = trust_anchor_get_server_cert (_tmp35_);
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp37_ = _tmp36_;
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp38_ = g_strdup_printf ("install_id_card : Set ta_datetime_added for '%s' to '%s'; ca_cert='%s'" \
+"; server_cert='%s'", _tmp28_, _tmp31_, _tmp34_, _tmp37_);
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp39_ = _tmp38_;
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               moonshot_logger_trace (_tmp25_, _tmp39_, NULL);
+#line 208 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_free0 (_tmp39_);
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_free0 (ta_datetime_added);
+#line 2468 "moonshot-server-linux.c"
+       }
+#line 210 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp40_ = idcard;
+#line 210 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp41_ = ta;
+#line 210 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       id_card_set_trust_anchor_from_store (_tmp40_, _tmp41_);
+#line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp42_ = moonshot_server_logger;
+#line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp43_ = idcard;
+#line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp44_ = id_card_get_display_name (_tmp43_);
+#line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp45_ = _tmp44_;
+#line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp46_ = idcard;
+#line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp47_ = id_card_get_services_string (_tmp46_, "; ");
+#line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp48_ = _tmp47_;
+#line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp49_ = g_strdup_printf ("install_id_card: Card '%s' has services: '%s'", _tmp45_, _tmp48_);
+#line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp50_ = _tmp49_;
+#line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       moonshot_logger_trace (_tmp42_, _tmp50_, NULL);
+#line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_tmp50_);
+#line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_tmp48_);
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp51_ = moonshot_server_logger;
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp52_ = idcard;
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp53_ = id_card_get_display_name (_tmp52_);
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp54_ = _tmp53_;
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp55_ = string_to_string (_tmp54_);
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp56_ = idcard;
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp57_ = id_card_get_trust_anchor (_tmp56_);
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp58_ = _tmp57_;
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp59_ = trust_anchor_get_ca_cert (_tmp58_);
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp60_ = _tmp59_;
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp61_ = string_to_string (_tmp60_);
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp62_ = idcard;
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp63_ = id_card_get_trust_anchor (_tmp62_);
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp64_ = _tmp63_;
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp65_ = trust_anchor_get_server_cert (_tmp64_);
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp66_ = _tmp65_;
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp67_ = string_to_string (_tmp66_);
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp68_ = g_strconcat ("Installing IdCard named '", _tmp55_, "'; ca_cert='", _tmp61_, "'; server_cert='", _tmp67_, "'", NULL);
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp69_ = _tmp68_;
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       moonshot_logger_trace (_tmp51_, _tmp69_, NULL);
+#line 215 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_tmp69_);
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp70_ = rules_patterns;
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp70__length1 = rules_patterns_length1;
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp71_ = rules_always_confirm;
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp71__length1 = rules_always_confirm_length1;
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (_tmp70__length1 == _tmp71__length1) {
+#line 2552 "moonshot-server-linux.c"
+               Rule* rules = NULL;
+               gchar** _tmp72_ = NULL;
+               gint _tmp72__length1 = 0;
+               Rule* _tmp73_ = NULL;
+               gint rules_length1 = 0;
+               gint _rules_size_ = 0;
+               IdCard* _tmp90_ = NULL;
+               Rule* _tmp91_ = NULL;
+               gint _tmp91__length1 = 0;
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp72_ = rules_patterns;
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp72__length1 = rules_patterns_length1;
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp73_ = g_new0 (Rule, _tmp72__length1);
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               rules = _tmp73_;
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               rules_length1 = _tmp72__length1;
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _rules_size_ = rules_length1;
+#line 2574 "moonshot-server-linux.c"
+               {
+                       gint i = 0;
+#line 223 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       i = 0;
+#line 2579 "moonshot-server-linux.c"
+                       {
+                               gboolean _tmp74_ = FALSE;
+#line 223 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp74_ = TRUE;
+#line 223 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               while (TRUE) {
+#line 2586 "moonshot-server-linux.c"
+                                       gint _tmp76_ = 0;
+                                       Rule* _tmp77_ = NULL;
+                                       gint _tmp77__length1 = 0;
+                                       Rule* _tmp78_ = NULL;
+                                       gint _tmp78__length1 = 0;
+                                       gint _tmp79_ = 0;
+                                       gchar** _tmp80_ = NULL;
+                                       gint _tmp80__length1 = 0;
+                                       gint _tmp81_ = 0;
+                                       const gchar* _tmp82_ = NULL;
+                                       gchar* _tmp83_ = NULL;
+                                       Rule* _tmp84_ = NULL;
+                                       gint _tmp84__length1 = 0;
+                                       gint _tmp85_ = 0;
+                                       gchar** _tmp86_ = NULL;
+                                       gint _tmp86__length1 = 0;
+                                       gint _tmp87_ = 0;
+                                       const gchar* _tmp88_ = NULL;
+                                       gchar* _tmp89_ = NULL;
+#line 223 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       if (!_tmp74_) {
+#line 2608 "moonshot-server-linux.c"
+                                               gint _tmp75_ = 0;
+#line 223 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                               _tmp75_ = i;
+#line 223 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                               i = _tmp75_ + 1;
+#line 2614 "moonshot-server-linux.c"
+                                       }
+#line 223 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp74_ = FALSE;
+#line 223 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp76_ = i;
+#line 223 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp77_ = rules;
+#line 223 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp77__length1 = rules_length1;
+#line 223 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       if (!(_tmp76_ < _tmp77__length1)) {
+#line 223 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                               break;
+#line 2628 "moonshot-server-linux.c"
+                                       }
+#line 225 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp78_ = rules;
+#line 225 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp78__length1 = rules_length1;
+#line 225 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp79_ = i;
+#line 225 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp80_ = rules_patterns;
+#line 225 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp80__length1 = rules_patterns_length1;
+#line 225 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp81_ = i;
+#line 225 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp82_ = _tmp80_[_tmp81_];
+#line 225 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp83_ = g_strdup (_tmp82_);
+#line 225 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _g_free0 (_tmp78_[_tmp79_].pattern);
+#line 225 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp78_[_tmp79_].pattern = _tmp83_;
+#line 226 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp84_ = rules;
+#line 226 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp84__length1 = rules_length1;
+#line 226 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp85_ = i;
+#line 226 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp86_ = rules_always_confirm;
+#line 226 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp86__length1 = rules_always_confirm_length1;
+#line 226 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp87_ = i;
+#line 226 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp88_ = _tmp86_[_tmp87_];
+#line 226 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp89_ = g_strdup (_tmp88_);
+#line 226 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _g_free0 (_tmp84_[_tmp85_].always_confirm);
+#line 226 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp84_[_tmp85_].always_confirm = _tmp89_;
+#line 2670 "moonshot-server-linux.c"
+                               }
+                       }
+               }
+#line 228 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp90_ = idcard;
+#line 228 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp91_ = rules;
+#line 228 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _tmp91__length1 = rules_length1;
+#line 228 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               id_card_set_rules (_tmp90_, _tmp91_, _tmp91__length1);
+#line 218 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               rules = (_vala_Rule_array_free (rules, rules_length1), NULL);
+#line 2684 "moonshot-server-linux.c"
+       }
+#line 231 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       old_duplicates = NULL;
+#line 232 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp92_ = self->priv->parent_app;
+#line 232 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp93_ = idcard;
+#line 232 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp94_ = force_flat_file_store;
+#line 232 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp96_ = identity_manager_app_add_identity (_tmp92_, _tmp93_, _tmp94_ != 0, &_tmp95_);
+#line 232 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_object_unref0 (old_duplicates);
+#line 232 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       old_duplicates = _tmp95_;
+#line 232 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       ret = _tmp96_;
+#line 234 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp97_ = old_duplicates;
+#line 234 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (_tmp97_ != NULL) {
+#line 2706 "moonshot-server-linux.c"
+               {
+                       GeeArrayList* _id_card_list = NULL;
+                       GeeArrayList* _tmp98_ = NULL;
+                       GeeArrayList* _tmp99_ = NULL;
+                       gint _id_card_size = 0;
+                       GeeArrayList* _tmp100_ = NULL;
+                       gint _tmp101_ = 0;
+                       gint _tmp102_ = 0;
+                       gint _id_card_index = 0;
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _tmp98_ = old_duplicates;
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _tmp99_ = _g_object_ref0 (_tmp98_);
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _id_card_list = _tmp99_;
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _tmp100_ = _id_card_list;
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _tmp101_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp100_);
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _tmp102_ = _tmp101_;
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _id_card_size = _tmp102_;
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _id_card_index = -1;
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       while (TRUE) {
+#line 2734 "moonshot-server-linux.c"
+                               gint _tmp103_ = 0;
+                               gint _tmp104_ = 0;
+                               gint _tmp105_ = 0;
+                               IdCard* id_card = NULL;
+                               GeeArrayList* _tmp106_ = NULL;
+                               gint _tmp107_ = 0;
+                               gpointer _tmp108_ = NULL;
+                               FILE* _tmp109_ = NULL;
+                               IdCard* _tmp110_ = NULL;
+                               const gchar* _tmp111_ = NULL;
+                               const gchar* _tmp112_ = NULL;
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp103_ = _id_card_index;
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _id_card_index = _tmp103_ + 1;
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp104_ = _id_card_index;
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp105_ = _id_card_size;
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               if (!(_tmp104_ < _tmp105_)) {
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       break;
+#line 2758 "moonshot-server-linux.c"
+                               }
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp106_ = _id_card_list;
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp107_ = _id_card_index;
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp108_ = gee_abstract_list_get ((GeeAbstractList*) _tmp106_, _tmp107_);
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               id_card = (IdCard*) _tmp108_;
+#line 238 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp109_ = stdout;
+#line 238 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp110_ = id_card;
+#line 238 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp111_ = id_card_get_nai (_tmp110_);
+#line 238 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp112_ = _tmp111_;
+#line 238 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               fprintf (_tmp109_, "removed duplicate id for '%s'\n", _tmp112_);
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _g_object_unref0 (id_card);
+#line 2780 "moonshot-server-linux.c"
+                       }
+#line 237 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _g_object_unref0 (_id_card_list);
+#line 2784 "moonshot-server-linux.c"
+               }
+       }
+#line 241 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       result = ret;
+#line 241 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_object_unref0 (old_duplicates);
+#line 241 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_object_unref0 (ta);
+#line 241 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_object_unref0 (idcard);
+#line 241 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       return result;
+#line 2797 "moonshot-server-linux.c"
+}
+
+
+gint moonshot_server_install_from_file (MoonshotServer* self, const gchar* file_name) {
+       gint result = 0;
+       WebProvisioningParser* webp = NULL;
+       const gchar* _tmp0_ = NULL;
+       WebProvisioningParser* _tmp1_ = NULL;
+       WebProvisioningParser* _tmp2_ = NULL;
+       gboolean _result_ = FALSE;
+       gint installed_cards = 0;
+       WebProvisioningParser* _tmp3_ = NULL;
+       IdCard** _tmp4_ = NULL;
+       gint _tmp4__length1 = 0;
+       IdCard** _tmp5_ = NULL;
+       gint _tmp5__length1 = 0;
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       g_return_val_if_fail (self != NULL, 0);
+#line 245 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       g_return_val_if_fail (file_name != NULL, 0);
+#line 247 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp0_ = file_name;
+#line 247 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp1_ = web_provisioning_parser_new (_tmp0_);
+#line 247 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       webp = _tmp1_;
+#line 249 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp2_ = webp;
+#line 249 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       web_provisioning_parser_parse (_tmp2_);
+#line 250 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _result_ = FALSE;
+#line 251 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       installed_cards = 0;
+#line 252 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp3_ = webp;
+#line 252 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp4_ = web_provisioning_parser_get_cards (_tmp3_, &_tmp4__length1);
+#line 252 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp5_ = _tmp4_;
+#line 252 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp5__length1 = _tmp4__length1;
+#line 2840 "moonshot-server-linux.c"
+       {
+               IdCard** card_collection = NULL;
+               gint card_collection_length1 = 0;
+               gint _card_collection_size_ = 0;
+               gint card_it = 0;
+#line 252 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               card_collection = _tmp5_;
+#line 252 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               card_collection_length1 = _tmp5__length1;
+#line 252 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               for (card_it = 0; card_it < _tmp5__length1; card_it = card_it + 1) {
+#line 2852 "moonshot-server-linux.c"
+                       IdCard* _tmp6_ = NULL;
+                       IdCard* card = NULL;
+#line 252 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       _tmp6_ = _g_object_ref0 (card_collection[card_it]);
+#line 252 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                       card = _tmp6_;
+#line 2859 "moonshot-server-linux.c"
+                       {
+                               gchar** rules_patterns = NULL;
+                               gchar** _tmp7_ = NULL;
+                               gint rules_patterns_length1 = 0;
+                               gint _rules_patterns_size_ = 0;
+                               gchar** rules_always_confirm = NULL;
+                               gchar** _tmp8_ = NULL;
+                               gint rules_always_confirm_length1 = 0;
+                               gint _rules_always_confirm_size_ = 0;
+                               IdCard* _tmp9_ = NULL;
+                               Rule* _tmp10_ = NULL;
+                               gint _tmp10__length1 = 0;
+                               Rule* _tmp11_ = NULL;
+                               gint _tmp11__length1 = 0;
+                               gchar** svcs = NULL;
+                               IdCard* _tmp37_ = NULL;
+                               GeeArrayList* _tmp38_ = NULL;
+                               GeeArrayList* _tmp39_ = NULL;
+                               gint _tmp40_ = 0;
+                               gint _tmp41_ = 0;
+                               gchar** _tmp42_ = NULL;
+                               gint svcs_length1 = 0;
+                               gint _svcs_size_ = 0;
+                               MoonshotLogger* _tmp59_ = NULL;
+                               IdCard* _tmp60_ = NULL;
+                               const gchar* _tmp61_ = NULL;
+                               const gchar* _tmp62_ = NULL;
+                               const gchar* _tmp63_ = NULL;
+                               gchar* _tmp64_ = NULL;
+                               gchar* _tmp65_ = NULL;
+                               IdCard* _tmp66_ = NULL;
+                               const gchar* _tmp67_ = NULL;
+                               const gchar* _tmp68_ = NULL;
+                               IdCard* _tmp69_ = NULL;
+                               const gchar* _tmp70_ = NULL;
+                               const gchar* _tmp71_ = NULL;
+                               IdCard* _tmp72_ = NULL;
+                               const gchar* _tmp73_ = NULL;
+                               const gchar* _tmp74_ = NULL;
+                               IdCard* _tmp75_ = NULL;
+                               const gchar* _tmp76_ = NULL;
+                               const gchar* _tmp77_ = NULL;
+                               gchar** _tmp78_ = NULL;
+                               gint _tmp78__length1 = 0;
+                               gchar** _tmp79_ = NULL;
+                               gint _tmp79__length1 = 0;
+                               gchar** _tmp80_ = NULL;
+                               gint _tmp80__length1 = 0;
+                               IdCard* _tmp81_ = NULL;
+                               TrustAnchor* _tmp82_ = NULL;
+                               TrustAnchor* _tmp83_ = NULL;
+                               const gchar* _tmp84_ = NULL;
+                               const gchar* _tmp85_ = NULL;
+                               IdCard* _tmp86_ = NULL;
+                               TrustAnchor* _tmp87_ = NULL;
+                               TrustAnchor* _tmp88_ = NULL;
+                               const gchar* _tmp89_ = NULL;
+                               const gchar* _tmp90_ = NULL;
+                               IdCard* _tmp91_ = NULL;
+                               TrustAnchor* _tmp92_ = NULL;
+                               TrustAnchor* _tmp93_ = NULL;
+                               const gchar* _tmp94_ = NULL;
+                               const gchar* _tmp95_ = NULL;
+                               IdCard* _tmp96_ = NULL;
+                               TrustAnchor* _tmp97_ = NULL;
+                               TrustAnchor* _tmp98_ = NULL;
+                               const gchar* _tmp99_ = NULL;
+                               const gchar* _tmp100_ = NULL;
+                               gboolean _tmp101_ = FALSE;
+                               gboolean _tmp102_ = FALSE;
+#line 254 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp7_ = g_new0 (gchar*, 0 + 1);
+#line 254 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               rules_patterns = _tmp7_;
+#line 254 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               rules_patterns_length1 = 0;
+#line 254 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _rules_patterns_size_ = rules_patterns_length1;
+#line 255 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp8_ = g_new0 (gchar*, 0 + 1);
+#line 255 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               rules_always_confirm = _tmp8_;
+#line 255 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               rules_always_confirm_length1 = 0;
+#line 255 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _rules_always_confirm_size_ = rules_always_confirm_length1;
+#line 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp9_ = card;
+#line 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp10_ = id_card_get_rules (_tmp9_, &_tmp10__length1);
+#line 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp11_ = _tmp10_;
+#line 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp11__length1 = _tmp10__length1;
+#line 257 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               if (_tmp11__length1 > 0) {
+#line 2956 "moonshot-server-linux.c"
+                                       gint i = 0;
+                                       IdCard* _tmp12_ = NULL;
+                                       Rule* _tmp13_ = NULL;
+                                       gint _tmp13__length1 = 0;
+                                       Rule* _tmp14_ = NULL;
+                                       gint _tmp14__length1 = 0;
+                                       gchar** _tmp15_ = NULL;
+                                       IdCard* _tmp16_ = NULL;
+                                       Rule* _tmp17_ = NULL;
+                                       gint _tmp17__length1 = 0;
+                                       Rule* _tmp18_ = NULL;
+                                       gint _tmp18__length1 = 0;
+                                       gchar** _tmp19_ = NULL;
+                                       IdCard* _tmp20_ = NULL;
+                                       Rule* _tmp21_ = NULL;
+                                       gint _tmp21__length1 = 0;
+                                       Rule* _tmp22_ = NULL;
+                                       gint _tmp22__length1 = 0;
+#line 259 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       i = 0;
+#line 260 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp12_ = card;
+#line 260 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp13_ = id_card_get_rules (_tmp12_, &_tmp13__length1);
+#line 260 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp14_ = _tmp13_;
+#line 260 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp14__length1 = _tmp13__length1;
+#line 260 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp15_ = g_new0 (gchar*, _tmp14__length1 + 1);
+#line 260 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       rules_patterns = (_vala_array_free (rules_patterns, rules_patterns_length1, (GDestroyNotify) g_free), NULL);
+#line 260 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       rules_patterns = _tmp15_;
+#line 260 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       rules_patterns_length1 = _tmp14__length1;
+#line 260 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _rules_patterns_size_ = rules_patterns_length1;
+#line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp16_ = card;
+#line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp17_ = id_card_get_rules (_tmp16_, &_tmp17__length1);
+#line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp18_ = _tmp17_;
+#line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp18__length1 = _tmp17__length1;
+#line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp19_ = g_new0 (gchar*, _tmp18__length1 + 1);
+#line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       rules_always_confirm = (_vala_array_free (rules_always_confirm, rules_always_confirm_length1, (GDestroyNotify) g_free), NULL);
+#line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       rules_always_confirm = _tmp19_;
+#line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       rules_always_confirm_length1 = _tmp18__length1;
+#line 261 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _rules_always_confirm_size_ = rules_always_confirm_length1;
+#line 262 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp20_ = card;
+#line 262 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp21_ = id_card_get_rules (_tmp20_, &_tmp21__length1);
+#line 262 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp22_ = _tmp21_;
+#line 262 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp22__length1 = _tmp21__length1;
+#line 3021 "moonshot-server-linux.c"
+                                       {
+                                               Rule* r_collection = NULL;
+                                               gint r_collection_length1 = 0;
+                                               gint _r_collection_size_ = 0;
+                                               gint r_it = 0;
+#line 262 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                               r_collection = _tmp22_;
+#line 262 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                               r_collection_length1 = _tmp22__length1;
+#line 262 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                               for (r_it = 0; r_it < _tmp22__length1; r_it = r_it + 1) {
+#line 3033 "moonshot-server-linux.c"
+                                                       Rule _tmp23_ = {0};
+                                                       Rule r = {0};
+#line 262 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                       rule_copy (&r_collection[r_it], &_tmp23_);
+#line 262 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                       r = _tmp23_;
+#line 3040 "moonshot-server-linux.c"
+                                                       {
+                                                               gchar** _tmp24_ = NULL;
+                                                               gint _tmp24__length1 = 0;
+                                                               gint _tmp25_ = 0;
+                                                               Rule _tmp26_ = {0};
+                                                               const gchar* _tmp27_ = NULL;
+                                                               gchar* _tmp28_ = NULL;
+                                                               gchar* _tmp29_ = NULL;
+                                                               gchar** _tmp30_ = NULL;
+                                                               gint _tmp30__length1 = 0;
+                                                               gint _tmp31_ = 0;
+                                                               Rule _tmp32_ = {0};
+                                                               const gchar* _tmp33_ = NULL;
+                                                               gchar* _tmp34_ = NULL;
+                                                               gchar* _tmp35_ = NULL;
+                                                               gint _tmp36_ = 0;
+#line 264 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                               _tmp24_ = rules_patterns;
+#line 264 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                               _tmp24__length1 = rules_patterns_length1;
+#line 264 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                               _tmp25_ = i;
+#line 264 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                               _tmp26_ = r;
+#line 264 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                               _tmp27_ = _tmp26_.pattern;
+#line 264 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                               _tmp28_ = g_strdup (_tmp27_);
+#line 264 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                               _g_free0 (_tmp24_[_tmp25_]);
+#line 264 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                               _tmp24_[_tmp25_] = _tmp28_;
+#line 264 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                               _tmp29_ = _tmp24_[_tmp25_];
+#line 265 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                               _tmp30_ = rules_always_confirm;
+#line 265 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                               _tmp30__length1 = rules_always_confirm_length1;
+#line 265 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                               _tmp31_ = i;
+#line 265 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                               _tmp32_ = r;
+#line 265 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                               _tmp33_ = _tmp32_.always_confirm;
+#line 265 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                               _tmp34_ = g_strdup (_tmp33_);
+#line 265 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                               _g_free0 (_tmp30_[_tmp31_]);
+#line 265 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                               _tmp30_[_tmp31_] = _tmp34_;
+#line 265 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                               _tmp35_ = _tmp30_[_tmp31_];
+#line 266 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                               _tmp36_ = i;
+#line 266 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                               i = _tmp36_ + 1;
+#line 262 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                               rule_destroy (&r);
+#line 3099 "moonshot-server-linux.c"
+                                                       }
+                                               }
+                                       }
+                               }
+#line 276 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp37_ = card;
+#line 276 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp38_ = id_card_get_services (_tmp37_);
+#line 276 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp39_ = _tmp38_;
+#line 276 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp40_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp39_);
+#line 276 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp41_ = _tmp40_;
+#line 276 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp42_ = g_new0 (gchar*, _tmp41_ + 1);
+#line 276 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               svcs = _tmp42_;
+#line 276 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               svcs_length1 = _tmp41_;
+#line 276 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _svcs_size_ = svcs_length1;
+#line 3122 "moonshot-server-linux.c"
+                               {
+                                       gint i = 0;
+#line 277 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       i = 0;
+#line 3127 "moonshot-server-linux.c"
+                                       {
+                                               gboolean _tmp43_ = FALSE;
+#line 277 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                               _tmp43_ = TRUE;
+#line 277 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                               while (TRUE) {
+#line 3134 "moonshot-server-linux.c"
+                                                       gint _tmp45_ = 0;
+                                                       IdCard* _tmp46_ = NULL;
+                                                       GeeArrayList* _tmp47_ = NULL;
+                                                       GeeArrayList* _tmp48_ = NULL;
+                                                       gint _tmp49_ = 0;
+                                                       gint _tmp50_ = 0;
+                                                       gchar** _tmp51_ = NULL;
+                                                       gint _tmp51__length1 = 0;
+                                                       gint _tmp52_ = 0;
+                                                       IdCard* _tmp53_ = NULL;
+                                                       GeeArrayList* _tmp54_ = NULL;
+                                                       GeeArrayList* _tmp55_ = NULL;
+                                                       gint _tmp56_ = 0;
+                                                       gpointer _tmp57_ = NULL;
+                                                       gchar* _tmp58_ = NULL;
+#line 277 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                       if (!_tmp43_) {
+#line 3152 "moonshot-server-linux.c"
+                                                               gint _tmp44_ = 0;
+#line 277 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                               _tmp44_ = i;
+#line 277 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                               i = _tmp44_ + 1;
+#line 3158 "moonshot-server-linux.c"
+                                                       }
+#line 277 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                       _tmp43_ = FALSE;
+#line 277 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                       _tmp45_ = i;
+#line 277 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                       _tmp46_ = card;
+#line 277 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                       _tmp47_ = id_card_get_services (_tmp46_);
+#line 277 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                       _tmp48_ = _tmp47_;
+#line 277 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                       _tmp49_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp48_);
+#line 277 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                       _tmp50_ = _tmp49_;
+#line 277 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                       if (!(_tmp45_ < _tmp50_)) {
+#line 277 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                               break;
+#line 3178 "moonshot-server-linux.c"
+                                                       }
+#line 278 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                       _tmp51_ = svcs;
+#line 278 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                       _tmp51__length1 = svcs_length1;
+#line 278 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                       _tmp52_ = i;
+#line 278 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                       _tmp53_ = card;
+#line 278 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                       _tmp54_ = id_card_get_services (_tmp53_);
+#line 278 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                       _tmp55_ = _tmp54_;
+#line 278 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                       _tmp56_ = i;
+#line 278 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                       _tmp57_ = gee_abstract_list_get ((GeeAbstractList*) _tmp55_, _tmp56_);
+#line 278 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                       _g_free0 (_tmp51_[_tmp52_]);
+#line 278 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                       _tmp51_[_tmp52_] = (gchar*) _tmp57_;
+#line 278 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                                       _tmp58_ = _tmp51_[_tmp52_];
+#line 3202 "moonshot-server-linux.c"
+                                               }
+                                       }
+                               }
+#line 281 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp59_ = moonshot_server_logger;
+#line 281 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp60_ = card;
+#line 281 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp61_ = id_card_get_display_name (_tmp60_);
+#line 281 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp62_ = _tmp61_;
+#line 281 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp63_ = string_to_string (_tmp62_);
+#line 281 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp64_ = g_strconcat ("install_from_file: Adding card with display name '", _tmp63_, "'", NULL);
+#line 281 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp65_ = _tmp64_;
+#line 281 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               moonshot_logger_trace (_tmp59_, _tmp65_, NULL);
+#line 281 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _g_free0 (_tmp65_);
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp66_ = card;
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp67_ = id_card_get_display_name (_tmp66_);
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp68_ = _tmp67_;
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp69_ = card;
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp70_ = id_card_get_username (_tmp69_);
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp71_ = _tmp70_;
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp72_ = card;
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp73_ = id_card_get_password (_tmp72_);
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp74_ = _tmp73_;
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp75_ = card;
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp76_ = id_card_get_issuer (_tmp75_);
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp77_ = _tmp76_;
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp78_ = rules_patterns;
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp78__length1 = rules_patterns_length1;
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp79_ = rules_always_confirm;
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp79__length1 = rules_always_confirm_length1;
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp80_ = svcs;
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp80__length1 = svcs_length1;
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp81_ = card;
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp82_ = id_card_get_trust_anchor (_tmp81_);
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp83_ = _tmp82_;
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp84_ = trust_anchor_get_ca_cert (_tmp83_);
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp85_ = _tmp84_;
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp86_ = card;
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp87_ = id_card_get_trust_anchor (_tmp86_);
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp88_ = _tmp87_;
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp89_ = trust_anchor_get_subject (_tmp88_);
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp90_ = _tmp89_;
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp91_ = card;
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp92_ = id_card_get_trust_anchor (_tmp91_);
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp93_ = _tmp92_;
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp94_ = trust_anchor_get_subject_alt (_tmp93_);
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp95_ = _tmp94_;
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp96_ = card;
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp97_ = id_card_get_trust_anchor (_tmp96_);
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp98_ = _tmp97_;
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp99_ = trust_anchor_get_server_cert (_tmp98_);
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp100_ = _tmp99_;
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp101_ = moonshot_server_install_id_card (self, _tmp68_, _tmp71_, _tmp74_, _tmp77_, _tmp78_, _tmp78__length1, _tmp79_, _tmp79__length1, _tmp80_, _tmp80__length1, _tmp85_, _tmp90_, _tmp95_, _tmp100_, 0);
+#line 282 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _result_ = _tmp101_;
+#line 294 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _tmp102_ = _result_;
+#line 294 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               if (_tmp102_) {
+#line 3308 "moonshot-server-linux.c"
+                                       gint _tmp103_ = 0;
+#line 295 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       _tmp103_ = installed_cards;
+#line 295 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                                       installed_cards = _tmp103_ + 1;
+#line 3314 "moonshot-server-linux.c"
+                               }
+#line 252 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               svcs = (_vala_array_free (svcs, svcs_length1, (GDestroyNotify) g_free), NULL);
+#line 252 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               rules_always_confirm = (_vala_array_free (rules_always_confirm, rules_always_confirm_length1, (GDestroyNotify) g_free), NULL);
+#line 252 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               rules_patterns = (_vala_array_free (rules_patterns, rules_patterns_length1, (GDestroyNotify) g_free), NULL);
+#line 252 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+                               _g_object_unref0 (card);
+#line 3324 "moonshot-server-linux.c"
+                       }
+               }
+       }
+#line 298 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       result = installed_cards;
+#line 298 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_object_unref0 (webp);
+#line 298 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       return result;
+#line 3334 "moonshot-server-linux.c"
+}
+
+
+static void moonshot_server_confirm_ca_certificate_data_free (gpointer _data) {
+       MoonshotServerConfirmCaCertificateData* _data_;
+       _data_ = _data;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_data_->nai);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_data_->realm);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_data_->ca_hash);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_object_unref0 (_data_->self);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       g_slice_free (MoonshotServerConfirmCaCertificateData, _data_);
+#line 3351 "moonshot-server-linux.c"
+}
+
+
+void moonshot_server_confirm_ca_certificate (MoonshotServer* self, const gchar* nai, const gchar* realm, const gchar* ca_hash, GAsyncReadyCallback _callback_, gpointer _user_data_) {
+       MoonshotServerConfirmCaCertificateData* _data_;
+       MoonshotServer* _tmp0_ = NULL;
+       const gchar* _tmp1_ = NULL;
+       gchar* _tmp2_ = NULL;
+       const gchar* _tmp3_ = NULL;
+       gchar* _tmp4_ = NULL;
+       const gchar* _tmp5_ = NULL;
+       gchar* _tmp6_ = NULL;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_ = g_slice_new0 (MoonshotServerConfirmCaCertificateData);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_async_result = g_simple_async_result_new (G_OBJECT (self), _callback_, _user_data_, moonshot_server_confirm_ca_certificate);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       g_simple_async_result_set_op_res_gpointer (_data_->_async_result, _data_, moonshot_server_confirm_ca_certificate_data_free);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp0_ = _g_object_ref0 (self);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->self = _tmp0_;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp1_ = nai;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp2_ = g_strdup (_tmp1_);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_data_->nai);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->nai = _tmp2_;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp3_ = realm;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp4_ = g_strdup (_tmp3_);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_data_->realm);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->realm = _tmp4_;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp5_ = ca_hash;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp6_ = g_strdup (_tmp5_);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_data_->ca_hash);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->ca_hash = _tmp6_;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       moonshot_server_confirm_ca_certificate_co (_data_);
+#line 3400 "moonshot-server-linux.c"
+}
+
+
+gboolean moonshot_server_confirm_ca_certificate_finish (MoonshotServer* self, GAsyncResult* _res_, gint* confirmed) {
+       gboolean result;
+       MoonshotServerConfirmCaCertificateData* _data_;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_ = g_simple_async_result_get_op_res_gpointer (G_SIMPLE_ASYNC_RESULT (_res_));
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (confirmed) {
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               *confirmed = _data_->confirmed;
+#line 3413 "moonshot-server-linux.c"
+       }
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       result = _data_->result;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       return result;
+#line 3419 "moonshot-server-linux.c"
+}
+
+
+static Block9Data* block9_data_ref (Block9Data* _data9_) {
+#line 301 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       g_atomic_int_inc (&_data9_->_ref_count_);
+#line 301 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       return _data9_;
+#line 3428 "moonshot-server-linux.c"
+}
+
+
+static void block9_data_unref (void * _userdata_) {
+       Block9Data* _data9_;
+       _data9_ = (Block9Data*) _userdata_;
+#line 301 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (g_atomic_int_dec_and_test (&_data9_->_ref_count_)) {
+#line 3437 "moonshot-server-linux.c"
+               MoonshotServer* self;
+#line 301 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               self = _data9_->self;
+#line 301 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _g_object_unref0 (self);
+#line 301 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               g_slice_free (Block9Data, _data9_);
+#line 3445 "moonshot-server-linux.c"
+       }
+}
+
+
+static void __lambda22_ (Block9Data* _data9_, TrustAnchorConfirmationRequest* TrustAnchorConfirmationRequest) {
+       MoonshotServer* self;
+#line 309 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       self = _data9_->self;
+#line 309 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       g_return_if_fail (TrustAnchorConfirmationRequest != NULL);
+#line 309 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       moonshot_server_confirm_ca_certificate_co (_data9_->_async_data_);
+#line 3458 "moonshot-server-linux.c"
+}
+
+
+static void ___lambda22__trust_anchor_confirmation_callback (TrustAnchorConfirmationRequest* request, gpointer self) {
+#line 309 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       __lambda22_ (self, request);
+#line 3465 "moonshot-server-linux.c"
+}
+
+
+static gboolean moonshot_server_confirm_ca_certificate_co (MoonshotServerConfirmCaCertificateData* _data_) {
+#line 301 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       switch (_data_->_state_) {
+#line 301 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               case 0:
+#line 3474 "moonshot-server-linux.c"
+               goto _state_0;
+#line 301 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               case 1:
+#line 3478 "moonshot-server-linux.c"
+               goto _state_1;
+               default:
+#line 301 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               g_assert_not_reached ();
+#line 3483 "moonshot-server-linux.c"
+       }
+       _state_0:
+#line 301 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_data9_ = g_slice_new0 (Block9Data);
+#line 301 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_data9_->_ref_count_ = 1;
+#line 301 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_data9_->self = g_object_ref (_data_->self);
+#line 301 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_data9_->_async_data_ = _data_;
+#line 306 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp0_ = NULL;
+#line 306 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp0_ = moonshot_server_logger;
+#line 306 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp1_ = NULL;
+#line 306 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp1_ = _data_->nai;
+#line 306 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp2_ = NULL;
+#line 306 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp2_ = string_to_string (_data_->_tmp1_);
+#line 306 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp3_ = NULL;
+#line 306 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp3_ = _data_->realm;
+#line 306 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp4_ = NULL;
+#line 306 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp4_ = string_to_string (_data_->_tmp3_);
+#line 306 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp5_ = NULL;
+#line 306 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp5_ = _data_->ca_hash;
+#line 306 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp6_ = NULL;
+#line 306 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp6_ = string_to_string (_data_->_tmp5_);
+#line 306 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp7_ = NULL;
+#line 306 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp7_ = g_strconcat ("MoonshotServer.confirm_ca_certificate: nai='", _data_->_tmp2_, "'; realm='", _data_->_tmp4_, "'; ca_hash='", _data_->_tmp6_, "'", NULL);
+#line 306 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp8_ = NULL;
+#line 306 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp8_ = _data_->_tmp7_;
+#line 306 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       moonshot_logger_trace (_data_->_tmp0_, _data_->_tmp8_, NULL);
+#line 306 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_data_->_tmp8_);
+#line 308 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp9_ = NULL;
+#line 308 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp9_ = _data_->self->priv->parent_app;
+#line 308 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp10_ = NULL;
+#line 308 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp10_ = _data_->nai;
+#line 308 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp11_ = NULL;
+#line 308 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp11_ = _data_->realm;
+#line 308 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp12_ = NULL;
+#line 308 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp12_ = _data_->ca_hash;
+#line 308 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp13_ = NULL;
+#line 308 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp13_ = trust_anchor_confirmation_request_new (_data_->_tmp9_, _data_->_tmp10_, _data_->_tmp11_, _data_->_tmp12_);
+#line 308 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->request = _data_->_tmp13_;
+#line 309 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp14_ = NULL;
+#line 309 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp14_ = _data_->request;
+#line 309 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       trust_anchor_confirmation_request_set_callback (_data_->_tmp14_, ___lambda22__trust_anchor_confirmation_callback, block9_data_ref (_data_->_data9_), block9_data_unref);
+#line 310 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp15_ = NULL;
+#line 310 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp15_ = _data_->request;
+#line 310 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       trust_anchor_confirmation_request_execute (_data_->_tmp15_);
+#line 311 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_state_ = 1;
+#line 311 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       return FALSE;
+#line 3572 "moonshot-server-linux.c"
+       _state_1:
+       ;
+#line 313 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp17_ = NULL;
+#line 313 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp17_ = _data_->request;
+#line 313 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp18_ = FALSE;
+#line 313 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp18_ = _data_->_tmp17_->confirmed;
+#line 313 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (_data_->_tmp18_) {
+#line 313 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp16_ = 1;
+#line 3587 "moonshot-server-linux.c"
+       } else {
+#line 313 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               _data_->_tmp16_ = 0;
+#line 3591 "moonshot-server-linux.c"
+       }
+#line 313 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->confirmed = _data_->_tmp16_;
+#line 314 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp19_ = NULL;
+#line 314 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp19_ = moonshot_server_logger;
+#line 314 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp20_ = NULL;
+#line 314 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp20_ = g_strdup_printf ("%i", _data_->confirmed);
+#line 314 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp21_ = NULL;
+#line 314 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp21_ = _data_->_tmp20_;
+#line 314 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp22_ = NULL;
+#line 314 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp22_ = g_strconcat ("MoonshotServer.confirm_ca_certificate: confirmed=", _data_->_tmp21_, NULL);
+#line 314 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp23_ = NULL;
+#line 314 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_tmp23_ = _data_->_tmp22_;
+#line 314 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       moonshot_logger_trace (_data_->_tmp19_, _data_->_tmp23_, NULL);
+#line 314 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_data_->_tmp23_);
+#line 314 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (_data_->_tmp21_);
+#line 315 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->result = TRUE;
+#line 315 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_object_unref0 (_data_->request);
+#line 315 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       block9_data_unref (_data_->_data9_);
+#line 315 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_data9_ = NULL;
+#line 315 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (_data_->_state_ == 0) {
+#line 315 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               g_simple_async_result_complete_in_idle (_data_->_async_result);
+#line 3633 "moonshot-server-linux.c"
+       } else {
+#line 315 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               g_simple_async_result_complete (_data_->_async_result);
+#line 3637 "moonshot-server-linux.c"
+       }
+#line 315 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       g_object_unref (_data_->_async_result);
+#line 315 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       return FALSE;
+#line 301 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_object_unref0 (_data_->request);
+#line 301 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       block9_data_unref (_data_->_data9_);
+#line 301 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _data_->_data9_ = NULL;
+#line 301 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       if (_data_->_state_ == 0) {
+#line 301 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               g_simple_async_result_complete_in_idle (_data_->_async_result);
+#line 3653 "moonshot-server-linux.c"
+       } else {
+#line 301 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+               g_simple_async_result_complete (_data_->_async_result);
+#line 3657 "moonshot-server-linux.c"
+       }
+#line 301 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       g_object_unref (_data_->_async_result);
+#line 301 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       return FALSE;
+#line 3663 "moonshot-server-linux.c"
+}
+
+
+static void moonshot_server_class_init (MoonshotServerClass * klass) {
+       MoonshotLogger* _tmp0_ = NULL;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       moonshot_server_parent_class = g_type_class_peek_parent (klass);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       g_type_class_add_private (klass, sizeof (MoonshotServerPrivate));
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       G_OBJECT_CLASS (klass)->finalize = moonshot_server_finalize;
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp0_ = get_logger ("MoonshotServer");
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       moonshot_server_logger = _tmp0_;
+#line 3679 "moonshot-server-linux.c"
+}
+
+
+static void moonshot_server_instance_init (MoonshotServer * self) {
+       gchar* _tmp0_ = NULL;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       self->priv = MOONSHOT_SERVER_GET_PRIVATE (self);
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _tmp0_ = g_strdup ("Moonshot");
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       self->priv->app_name = _tmp0_;
+#line 3691 "moonshot-server-linux.c"
+}
+
+
+static void moonshot_server_finalize (GObject* obj) {
+       MoonshotServer * self;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_MOONSHOT_SERVER, MoonshotServer);
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _g_free0 (self->priv->app_name);
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       _identity_manager_app_unref0 (self->priv->parent_app);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-server-linux.vala"
+       G_OBJECT_CLASS (moonshot_server_parent_class)->finalize (obj);
+#line 3705 "moonshot-server-linux.c"
+}
+
+
+GType moonshot_server_get_type (void) {
+       static volatile gsize moonshot_server_type_id__volatile = 0;
+       if (g_once_init_enter (&moonshot_server_type_id__volatile)) {
+               static const GTypeInfo g_define_type_info = { sizeof (MoonshotServerClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) moonshot_server_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (MoonshotServer), 0, (GInstanceInitFunc) moonshot_server_instance_init, NULL };
+               GType moonshot_server_type_id;
+               moonshot_server_type_id = g_type_register_static (G_TYPE_OBJECT, "MoonshotServer", &g_define_type_info, 0);
+               g_type_set_qdata (moonshot_server_type_id, g_quark_from_static_string ("vala-dbus-register-object"), (void*) moonshot_server_register_object);
+               g_once_init_leave (&moonshot_server_type_id__volatile, moonshot_server_type_id);
+       }
+       return moonshot_server_type_id__volatile;
+}
+
+
+static void _dbus_moonshot_server_show_ui (MoonshotServer* self, GVariant* _parameters_, GDBusMethodInvocation* invocation) {
+       GError* error = NULL;
+       GVariantIter _arguments_iter;
+       GDBusMessage* _reply_message = NULL;
+       GVariant* _reply;
+       GVariantBuilder _reply_builder;
+       gboolean result;
+       g_variant_iter_init (&_arguments_iter, _parameters_);
+       result = moonshot_server_show_ui (self);
+       _reply_message = g_dbus_message_new_method_reply (g_dbus_method_invocation_get_message (invocation));
+       g_variant_builder_init (&_reply_builder, G_VARIANT_TYPE_TUPLE);
+       g_variant_builder_add_value (&_reply_builder, g_variant_new_boolean (result));
+       _reply = g_variant_builder_end (&_reply_builder);
+       g_dbus_message_set_body (_reply_message, _reply);
+       g_dbus_connection_send_message (g_dbus_method_invocation_get_connection (invocation), _reply_message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
+       g_object_unref (invocation);
+       g_object_unref (_reply_message);
+}
+
+
+static void _dbus_moonshot_server_get_identity (MoonshotServer* self, GVariant* _parameters_, GDBusMethodInvocation* invocation) {
+       GVariantIter _arguments_iter;
+       gchar* nai = NULL;
+       GVariant* _tmp3_;
+       gchar* password = NULL;
+       GVariant* _tmp4_;
+       gchar* service = NULL;
+       GVariant* _tmp5_;
+       g_variant_iter_init (&_arguments_iter, _parameters_);
+       _tmp3_ = g_variant_iter_next_value (&_arguments_iter);
+       nai = g_variant_dup_string (_tmp3_, NULL);
+       g_variant_unref (_tmp3_);
+       _tmp4_ = g_variant_iter_next_value (&_arguments_iter);
+       password = g_variant_dup_string (_tmp4_, NULL);
+       g_variant_unref (_tmp4_);
+       _tmp5_ = g_variant_iter_next_value (&_arguments_iter);
+       service = g_variant_dup_string (_tmp5_, NULL);
+       g_variant_unref (_tmp5_);
+       moonshot_server_get_identity (self, nai, password, service, (GAsyncReadyCallback) _dbus_moonshot_server_get_identity_ready, invocation);
+       _g_free0 (nai);
+       _g_free0 (password);
+       _g_free0 (service);
+}
+
+
+static void _dbus_moonshot_server_get_identity_ready (GObject * source_object, GAsyncResult * _res_, gpointer _user_data_) {
+       GDBusMethodInvocation * invocation;
+       GError* error = NULL;
+       GDBusMessage* _reply_message = NULL;
+       GVariant* _reply;
+       GVariantBuilder _reply_builder;
+       gchar* nai_out = NULL;
+       gchar* password_out = NULL;
+       gchar* server_certificate_hash = NULL;
+       gchar* ca_certificate = NULL;
+       gchar* subject_name_constraint = NULL;
+       gchar* subject_alt_name_constraint = NULL;
+       gboolean result;
+       invocation = _user_data_;
+       result = moonshot_server_get_identity_finish ((MoonshotServer*) source_object, _res_, &nai_out, &password_out, &server_certificate_hash, &ca_certificate, &subject_name_constraint, &subject_alt_name_constraint);
+       _reply_message = g_dbus_message_new_method_reply (g_dbus_method_invocation_get_message (invocation));
+       g_variant_builder_init (&_reply_builder, G_VARIANT_TYPE_TUPLE);
+       g_variant_builder_add_value (&_reply_builder, g_variant_new_string (nai_out));
+       g_variant_builder_add_value (&_reply_builder, g_variant_new_string (password_out));
+       g_variant_builder_add_value (&_reply_builder, g_variant_new_string (server_certificate_hash));
+       g_variant_builder_add_value (&_reply_builder, g_variant_new_string (ca_certificate));
+       g_variant_builder_add_value (&_reply_builder, g_variant_new_string (subject_name_constraint));
+       g_variant_builder_add_value (&_reply_builder, g_variant_new_string (subject_alt_name_constraint));
+       g_variant_builder_add_value (&_reply_builder, g_variant_new_boolean (result));
+       _reply = g_variant_builder_end (&_reply_builder);
+       g_dbus_message_set_body (_reply_message, _reply);
+       g_dbus_connection_send_message (g_dbus_method_invocation_get_connection (invocation), _reply_message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
+       g_object_unref (invocation);
+       g_object_unref (_reply_message);
+       _g_free0 (nai_out);
+       _g_free0 (password_out);
+       _g_free0 (server_certificate_hash);
+       _g_free0 (ca_certificate);
+       _g_free0 (subject_name_constraint);
+       _g_free0 (subject_alt_name_constraint);
+}
+
+
+static void _dbus_moonshot_server_get_default_identity (MoonshotServer* self, GVariant* _parameters_, GDBusMethodInvocation* invocation) {
+       GVariantIter _arguments_iter;
+       g_variant_iter_init (&_arguments_iter, _parameters_);
+       moonshot_server_get_default_identity (self, (GAsyncReadyCallback) _dbus_moonshot_server_get_default_identity_ready, invocation);
+}
+
+
+static void _dbus_moonshot_server_get_default_identity_ready (GObject * source_object, GAsyncResult * _res_, gpointer _user_data_) {
+       GDBusMethodInvocation * invocation;
+       GError* error = NULL;
+       GDBusMessage* _reply_message = NULL;
+       GVariant* _reply;
+       GVariantBuilder _reply_builder;
+       gchar* nai_out = NULL;
+       gchar* password_out = NULL;
+       gchar* server_certificate_hash = NULL;
+       gchar* ca_certificate = NULL;
+       gchar* subject_name_constraint = NULL;
+       gchar* subject_alt_name_constraint = NULL;
+       gboolean result;
+       invocation = _user_data_;
+       result = moonshot_server_get_default_identity_finish ((MoonshotServer*) source_object, _res_, &nai_out, &password_out, &server_certificate_hash, &ca_certificate, &subject_name_constraint, &subject_alt_name_constraint);
+       _reply_message = g_dbus_message_new_method_reply (g_dbus_method_invocation_get_message (invocation));
+       g_variant_builder_init (&_reply_builder, G_VARIANT_TYPE_TUPLE);
+       g_variant_builder_add_value (&_reply_builder, g_variant_new_string (nai_out));
+       g_variant_builder_add_value (&_reply_builder, g_variant_new_string (password_out));
+       g_variant_builder_add_value (&_reply_builder, g_variant_new_string (server_certificate_hash));
+       g_variant_builder_add_value (&_reply_builder, g_variant_new_string (ca_certificate));
+       g_variant_builder_add_value (&_reply_builder, g_variant_new_string (subject_name_constraint));
+       g_variant_builder_add_value (&_reply_builder, g_variant_new_string (subject_alt_name_constraint));
+       g_variant_builder_add_value (&_reply_builder, g_variant_new_boolean (result));
+       _reply = g_variant_builder_end (&_reply_builder);
+       g_dbus_message_set_body (_reply_message, _reply);
+       g_dbus_connection_send_message (g_dbus_method_invocation_get_connection (invocation), _reply_message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
+       g_object_unref (invocation);
+       g_object_unref (_reply_message);
+       _g_free0 (nai_out);
+       _g_free0 (password_out);
+       _g_free0 (server_certificate_hash);
+       _g_free0 (ca_certificate);
+       _g_free0 (subject_name_constraint);
+       _g_free0 (subject_alt_name_constraint);
+}
+
+
+static void _dbus_moonshot_server_install_id_card (MoonshotServer* self, GVariant* _parameters_, GDBusMethodInvocation* invocation) {
+       GError* error = NULL;
+       GVariantIter _arguments_iter;
+       gchar* display_name = NULL;
+       GVariant* _tmp6_;
+       gchar* user_name = NULL;
+       GVariant* _tmp7_;
+       gchar* password = NULL;
+       GVariant* _tmp8_;
+       gchar* realm = NULL;
+       GVariant* _tmp9_;
+       gchar** rules_patterns = NULL;
+       int rules_patterns_length1 = 0;
+       GVariant* _tmp10_;
+       gchar** _tmp11_;
+       int _tmp11__length;
+       int _tmp11__size;
+       int _tmp11__length1;
+       GVariantIter _tmp12_;
+       GVariant* _tmp13_;
+       gchar** rules_always_confirm = NULL;
+       int rules_always_confirm_length1 = 0;
+       GVariant* _tmp14_;
+       gchar** _tmp15_;
+       int _tmp15__length;
+       int _tmp15__size;
+       int _tmp15__length1;
+       GVariantIter _tmp16_;
+       GVariant* _tmp17_;
+       gchar** services = NULL;
+       int services_length1 = 0;
+       GVariant* _tmp18_;
+       gchar** _tmp19_;
+       int _tmp19__length;
+       int _tmp19__size;
+       int _tmp19__length1;
+       GVariantIter _tmp20_;
+       GVariant* _tmp21_;
+       gchar* ca_cert = NULL;
+       GVariant* _tmp22_;
+       gchar* subject = NULL;
+       GVariant* _tmp23_;
+       gchar* subject_alt = NULL;
+       GVariant* _tmp24_;
+       gchar* server_cert = NULL;
+       GVariant* _tmp25_;
+       gint force_flat_file_store = 0;
+       GVariant* _tmp26_;
+       GDBusMessage* _reply_message = NULL;
+       GVariant* _reply;
+       GVariantBuilder _reply_builder;
+       gboolean result;
+       g_variant_iter_init (&_arguments_iter, _parameters_);
+       _tmp6_ = g_variant_iter_next_value (&_arguments_iter);
+       display_name = g_variant_dup_string (_tmp6_, NULL);
+       g_variant_unref (_tmp6_);
+       _tmp7_ = g_variant_iter_next_value (&_arguments_iter);
+       user_name = g_variant_dup_string (_tmp7_, NULL);
+       g_variant_unref (_tmp7_);
+       _tmp8_ = g_variant_iter_next_value (&_arguments_iter);
+       password = g_variant_dup_string (_tmp8_, NULL);
+       g_variant_unref (_tmp8_);
+       _tmp9_ = g_variant_iter_next_value (&_arguments_iter);
+       realm = g_variant_dup_string (_tmp9_, NULL);
+       g_variant_unref (_tmp9_);
+       _tmp10_ = g_variant_iter_next_value (&_arguments_iter);
+       _tmp11_ = g_new (gchar*, 5);
+       _tmp11__length = 0;
+       _tmp11__size = 4;
+       _tmp11__length1 = 0;
+       g_variant_iter_init (&_tmp12_, _tmp10_);
+       for (; (_tmp13_ = g_variant_iter_next_value (&_tmp12_)) != NULL; _tmp11__length1++) {
+               if (_tmp11__size == _tmp11__length) {
+                       _tmp11__size = 2 * _tmp11__size;
+                       _tmp11_ = g_renew (gchar*, _tmp11_, _tmp11__size + 1);
+               }
+               _tmp11_[_tmp11__length++] = g_variant_dup_string (_tmp13_, NULL);
+               g_variant_unref (_tmp13_);
+       }
+       rules_patterns_length1 = _tmp11__length1;
+       _tmp11_[_tmp11__length] = NULL;
+       rules_patterns = _tmp11_;
+       g_variant_unref (_tmp10_);
+       _tmp14_ = g_variant_iter_next_value (&_arguments_iter);
+       _tmp15_ = g_new (gchar*, 5);
+       _tmp15__length = 0;
+       _tmp15__size = 4;
+       _tmp15__length1 = 0;
+       g_variant_iter_init (&_tmp16_, _tmp14_);
+       for (; (_tmp17_ = g_variant_iter_next_value (&_tmp16_)) != NULL; _tmp15__length1++) {
+               if (_tmp15__size == _tmp15__length) {
+                       _tmp15__size = 2 * _tmp15__size;
+                       _tmp15_ = g_renew (gchar*, _tmp15_, _tmp15__size + 1);
+               }
+               _tmp15_[_tmp15__length++] = g_variant_dup_string (_tmp17_, NULL);
+               g_variant_unref (_tmp17_);
+       }
+       rules_always_confirm_length1 = _tmp15__length1;
+       _tmp15_[_tmp15__length] = NULL;
+       rules_always_confirm = _tmp15_;
+       g_variant_unref (_tmp14_);
+       _tmp18_ = g_variant_iter_next_value (&_arguments_iter);
+       _tmp19_ = g_new (gchar*, 5);
+       _tmp19__length = 0;
+       _tmp19__size = 4;
+       _tmp19__length1 = 0;
+       g_variant_iter_init (&_tmp20_, _tmp18_);
+       for (; (_tmp21_ = g_variant_iter_next_value (&_tmp20_)) != NULL; _tmp19__length1++) {
+               if (_tmp19__size == _tmp19__length) {
+                       _tmp19__size = 2 * _tmp19__size;
+                       _tmp19_ = g_renew (gchar*, _tmp19_, _tmp19__size + 1);
+               }
+               _tmp19_[_tmp19__length++] = g_variant_dup_string (_tmp21_, NULL);
+               g_variant_unref (_tmp21_);
+       }
+       services_length1 = _tmp19__length1;
+       _tmp19_[_tmp19__length] = NULL;
+       services = _tmp19_;
+       g_variant_unref (_tmp18_);
+       _tmp22_ = g_variant_iter_next_value (&_arguments_iter);
+       ca_cert = g_variant_dup_string (_tmp22_, NULL);
+       g_variant_unref (_tmp22_);
+       _tmp23_ = g_variant_iter_next_value (&_arguments_iter);
+       subject = g_variant_dup_string (_tmp23_, NULL);
+       g_variant_unref (_tmp23_);
+       _tmp24_ = g_variant_iter_next_value (&_arguments_iter);
+       subject_alt = g_variant_dup_string (_tmp24_, NULL);
+       g_variant_unref (_tmp24_);
+       _tmp25_ = g_variant_iter_next_value (&_arguments_iter);
+       server_cert = g_variant_dup_string (_tmp25_, NULL);
+       g_variant_unref (_tmp25_);
+       _tmp26_ = g_variant_iter_next_value (&_arguments_iter);
+       force_flat_file_store = g_variant_get_int32 (_tmp26_);
+       g_variant_unref (_tmp26_);
+       result = moonshot_server_install_id_card (self, display_name, user_name, password, realm, rules_patterns, rules_patterns_length1, rules_always_confirm, rules_always_confirm_length1, services, services_length1, ca_cert, subject, subject_alt, server_cert, force_flat_file_store);
+       _reply_message = g_dbus_message_new_method_reply (g_dbus_method_invocation_get_message (invocation));
+       g_variant_builder_init (&_reply_builder, G_VARIANT_TYPE_TUPLE);
+       g_variant_builder_add_value (&_reply_builder, g_variant_new_boolean (result));
+       _reply = g_variant_builder_end (&_reply_builder);
+       g_dbus_message_set_body (_reply_message, _reply);
+       g_dbus_connection_send_message (g_dbus_method_invocation_get_connection (invocation), _reply_message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
+       g_object_unref (invocation);
+       g_object_unref (_reply_message);
+       _g_free0 (display_name);
+       _g_free0 (user_name);
+       _g_free0 (password);
+       _g_free0 (realm);
+       rules_patterns = (_vala_array_free (rules_patterns, rules_patterns_length1, (GDestroyNotify) g_free), NULL);
+       rules_always_confirm = (_vala_array_free (rules_always_confirm, rules_always_confirm_length1, (GDestroyNotify) g_free), NULL);
+       services = (_vala_array_free (services, services_length1, (GDestroyNotify) g_free), NULL);
+       _g_free0 (ca_cert);
+       _g_free0 (subject);
+       _g_free0 (subject_alt);
+       _g_free0 (server_cert);
+}
+
+
+static void _dbus_moonshot_server_install_from_file (MoonshotServer* self, GVariant* _parameters_, GDBusMethodInvocation* invocation) {
+       GError* error = NULL;
+       GVariantIter _arguments_iter;
+       gchar* file_name = NULL;
+       GVariant* _tmp27_;
+       GDBusMessage* _reply_message = NULL;
+       GVariant* _reply;
+       GVariantBuilder _reply_builder;
+       gint result;
+       g_variant_iter_init (&_arguments_iter, _parameters_);
+       _tmp27_ = g_variant_iter_next_value (&_arguments_iter);
+       file_name = g_variant_dup_string (_tmp27_, NULL);
+       g_variant_unref (_tmp27_);
+       result = moonshot_server_install_from_file (self, file_name);
+       _reply_message = g_dbus_message_new_method_reply (g_dbus_method_invocation_get_message (invocation));
+       g_variant_builder_init (&_reply_builder, G_VARIANT_TYPE_TUPLE);
+       g_variant_builder_add_value (&_reply_builder, g_variant_new_int32 (result));
+       _reply = g_variant_builder_end (&_reply_builder);
+       g_dbus_message_set_body (_reply_message, _reply);
+       g_dbus_connection_send_message (g_dbus_method_invocation_get_connection (invocation), _reply_message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
+       g_object_unref (invocation);
+       g_object_unref (_reply_message);
+       _g_free0 (file_name);
+}
+
+
+static void _dbus_moonshot_server_confirm_ca_certificate (MoonshotServer* self, GVariant* _parameters_, GDBusMethodInvocation* invocation) {
+       GVariantIter _arguments_iter;
+       gchar* nai = NULL;
+       GVariant* _tmp28_;
+       gchar* realm = NULL;
+       GVariant* _tmp29_;
+       gchar* ca_hash = NULL;
+       GVariant* _tmp30_;
+       g_variant_iter_init (&_arguments_iter, _parameters_);
+       _tmp28_ = g_variant_iter_next_value (&_arguments_iter);
+       nai = g_variant_dup_string (_tmp28_, NULL);
+       g_variant_unref (_tmp28_);
+       _tmp29_ = g_variant_iter_next_value (&_arguments_iter);
+       realm = g_variant_dup_string (_tmp29_, NULL);
+       g_variant_unref (_tmp29_);
+       _tmp30_ = g_variant_iter_next_value (&_arguments_iter);
+       ca_hash = g_variant_dup_string (_tmp30_, NULL);
+       g_variant_unref (_tmp30_);
+       moonshot_server_confirm_ca_certificate (self, nai, realm, ca_hash, (GAsyncReadyCallback) _dbus_moonshot_server_confirm_ca_certificate_ready, invocation);
+       _g_free0 (nai);
+       _g_free0 (realm);
+       _g_free0 (ca_hash);
+}
+
+
+static void _dbus_moonshot_server_confirm_ca_certificate_ready (GObject * source_object, GAsyncResult * _res_, gpointer _user_data_) {
+       GDBusMethodInvocation * invocation;
+       GError* error = NULL;
+       GDBusMessage* _reply_message = NULL;
+       GVariant* _reply;
+       GVariantBuilder _reply_builder;
+       gint confirmed = 0;
+       gboolean result;
+       invocation = _user_data_;
+       result = moonshot_server_confirm_ca_certificate_finish ((MoonshotServer*) source_object, _res_, &confirmed);
+       _reply_message = g_dbus_message_new_method_reply (g_dbus_method_invocation_get_message (invocation));
+       g_variant_builder_init (&_reply_builder, G_VARIANT_TYPE_TUPLE);
+       g_variant_builder_add_value (&_reply_builder, g_variant_new_int32 (confirmed));
+       g_variant_builder_add_value (&_reply_builder, g_variant_new_boolean (result));
+       _reply = g_variant_builder_end (&_reply_builder);
+       g_dbus_message_set_body (_reply_message, _reply);
+       g_dbus_connection_send_message (g_dbus_method_invocation_get_connection (invocation), _reply_message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
+       g_object_unref (invocation);
+       g_object_unref (_reply_message);
+}
+
+
+static void moonshot_server_dbus_interface_method_call (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* method_name, GVariant* parameters, GDBusMethodInvocation* invocation, gpointer user_data) {
+       gpointer* data;
+       gpointer object;
+       data = user_data;
+       object = data[0];
+       if (strcmp (method_name, "ShowUi") == 0) {
+               _dbus_moonshot_server_show_ui (object, parameters, invocation);
+       } else if (strcmp (method_name, "GetIdentity") == 0) {
+               _dbus_moonshot_server_get_identity (object, parameters, invocation);
+       } else if (strcmp (method_name, "GetDefaultIdentity") == 0) {
+               _dbus_moonshot_server_get_default_identity (object, parameters, invocation);
+       } else if (strcmp (method_name, "InstallIdCard") == 0) {
+               _dbus_moonshot_server_install_id_card (object, parameters, invocation);
+       } else if (strcmp (method_name, "InstallFromFile") == 0) {
+               _dbus_moonshot_server_install_from_file (object, parameters, invocation);
+       } else if (strcmp (method_name, "ConfirmCaCertificate") == 0) {
+               _dbus_moonshot_server_confirm_ca_certificate (object, parameters, invocation);
+       } else {
+               g_object_unref (invocation);
+       }
+}
+
+
+static GVariant* moonshot_server_dbus_interface_get_property (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* property_name, GError** error, gpointer user_data) {
+       gpointer* data;
+       gpointer object;
+       data = user_data;
+       object = data[0];
+       return NULL;
+}
+
+
+static gboolean moonshot_server_dbus_interface_set_property (GDBusConnection* connection, const gchar* sender, const gchar* object_path, const gchar* interface_name, const gchar* property_name, GVariant* value, GError** error, gpointer user_data) {
+       gpointer* data;
+       gpointer object;
+       data = user_data;
+       object = data[0];
+       return FALSE;
+}
+
+
+guint moonshot_server_register_object (gpointer object, GDBusConnection* connection, const gchar* path, GError** error) {
+       guint result;
+       gpointer *data;
+       data = g_new (gpointer, 3);
+       data[0] = g_object_ref (object);
+       data[1] = g_object_ref (connection);
+       data[2] = g_strdup (path);
+       result = g_dbus_connection_register_object (connection, path, (GDBusInterfaceInfo *) (&_moonshot_server_dbus_interface_info), &_moonshot_server_dbus_interface_vtable, data, _moonshot_server_unregister_object, error);
+       if (!result) {
+               return 0;
+       }
+       return result;
+}
+
+
+static void _moonshot_server_unregister_object (gpointer user_data) {
+       gpointer* data;
+       data = user_data;
+       g_object_unref (data[0]);
+       g_object_unref (data[1]);
+       g_free (data[2]);
+       g_free (data);
+}
+
+
+static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func) {
+       if ((array != NULL) && (destroy_func != NULL)) {
+               int i;
+               for (i = 0; i < array_length; i = i + 1) {
+                       if (((gpointer*) array)[i] != NULL) {
+                               destroy_func (((gpointer*) array)[i]);
+                       }
+               }
+       }
+}
+
+
+static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func) {
+       _vala_array_destroy (array, array_length, destroy_func);
+       g_free (array);
+}
+
+
+
diff --git a/src/moonshot-server-msrpc.vala b/src/moonshot-server-msrpc.vala
deleted file mode 100644 (file)
index b396ac9..0000000
+++ /dev/null
@@ -1,267 +0,0 @@
-/*
- * Copyright (c) 2011-2016, JANET(UK)
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * 3. Neither the name of JANET(UK) nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
-*/
-
-using Gee;
-
-
-using Rpc;
-using MoonshotRpcInterface;
-
-/* This class must be a singleton, because we use a global RPC
- * binding handle. I cannot picture a situation where more than
- * one instance of the same interface would be needed so this
- * shouldn't be a problem.
- *
- * Shutdown is automatically done by the RPC runtime when the
- * process ends
- */
-public class MoonshotServer : Object {
-    private static IdentityManagerApp parent_app;
-
-    private static MoonshotServer instance = null;
-
-    public static void start(IdentityManagerApp app)
-    {
-        parent_app = app;
-        Rpc.server_start(MoonshotRpcInterface.spec, "/org/janet/Moonshot", Rpc.Flags.PER_USER);
-    }
-
-    public static MoonshotServer get_instance()
-    {
-        if (instance == null)
-            instance = new MoonshotServer();
-        return instance;
-    }
-
-    [CCode (cname = "moonshot_get_identity_rpc")]
-    public static void get_identity(Rpc.AsyncCall call,
-                                    string nai,
-                                    string password,
-                                    string service,
-                                    ref string nai_out,
-                                    ref string password_out,
-                                    ref string server_certificate_hash,
-                                    ref string ca_certificate,
-                                    ref string subject_name_constraint,
-                                    ref string subject_alt_name_constraint)
-    {
-        logger.trace("(static) get_identity");
-
-        bool result = false;
-
-        var request = new IdentityRequest(parent_app,
-                                          nai,
-                                          password,
-                                          service);
-
-        // Pass execution to the main loop and block the RPC thread
-        request.mutex = new Mutex();
-        request.cond = new Cond();
-        request.set_callback(return_identity_cb);
-
-        request.mutex.lock();
-        Idle.add(request.execute);
-
-        while (request.complete == false)
-            request.cond.wait(request.mutex);
-
-        nai_out = "";
-        password_out = "";
-        server_certificate_hash = "";
-        ca_certificate = "";
-        subject_name_constraint = "";
-        subject_alt_name_constraint = "";
-
-        var id_card = request.id_card;
-
-        if (id_card != null) {
-            // The strings are freed by the RPC runtime
-            nai_out = id_card.nai;
-            password_out = id_card.password;
-            server_certificate_hash = id_card.trust_anchor.server_cert;
-            ca_certificate = id_card.trust_anchor.ca_cert;
-            subject_name_constraint = id_card.trust_anchor.subject;
-            subject_alt_name_constraint = id_card.trust_anchor.subject_alt;
-
-            return_if_fail(nai_out != null);
-            return_if_fail(password_out != null);
-            return_if_fail(server_certificate_hash != null);
-            return_if_fail(ca_certificate != null);
-            return_if_fail(subject_name_constraint != null);
-            return_if_fail(subject_alt_name_constraint != null);
-
-            result = true;
-        }
-
-        // The outputs must be set before this function is called. For this
-        // reason they are 'ref' not 'out' parameters - Vala assigns to the
-        // 'out' parameters only at the end of the function, which is too
-        // late.
-        call.return(&result);
-
-        request.cond.signal();
-        request.mutex.unlock();
-    }
-
-    [CCode (cname = "moonshot_get_default_identity_rpc")]
-    public static void get_default_identity(Rpc.AsyncCall call,
-                                            ref string nai_out,
-                                            ref string password_out,
-                                            ref string server_certificate_hash,
-                                            ref string ca_certificate,
-                                            ref string subject_name_constraint,
-                                            ref string subject_alt_name_constraint)
-    {
-        logger.trace("(static) get_default_identity");
-
-        bool result;
-
-        var request = new IdentityRequest.default(parent_app);
-        request.mutex = new Mutex();
-        request.cond = new Cond();
-        request.set_callback(return_identity_cb);
-
-        request.mutex.lock();
-        Idle.add(request.execute);
-
-        while (request.complete == false)
-            request.cond.wait(request.mutex);
-
-        nai_out = "";
-        password_out = "";
-        server_certificate_hash = "";
-        ca_certificate = "";
-        subject_name_constraint = "";
-        subject_alt_name_constraint = "";
-
-        if (request.id_card != null)
-        {
-            nai_out = request.id_card.nai;
-            password_out = request.id_card.password;
-            server_certificate_hash = "certificate";
-
-            return_if_fail(nai_out != null);
-            return_if_fail(password_out != null);
-            return_if_fail(server_certificate_hash != null);
-            return_if_fail(ca_certificate != null);
-            return_if_fail(subject_name_constraint != null);
-            return_if_fail(subject_alt_name_constraint != null);
-
-            result = true;
-        }
-        else
-        {
-            result = false;
-        }
-
-        call.return(&result);
-
-        request.cond.signal();
-        request.mutex.unlock();
-    }
-
-    // Called from the main loop thread when an identity has
-    // been selected
-    static void return_identity_cb(IdentityRequest request) {
-        // Notify the RPC thread that the request is complete
-        request.mutex.lock();
-        request.cond.signal();
-
-        // Block the main loop until the RPC call has returned
-        // to avoid any races
-        request.cond.wait(request.mutex);
-        request.mutex.unlock();
-    }
-
-    [CCode (cname = "moonshot_install_id_card_rpc")]
-    public static bool install_id_card(string     display_name,
-                                       string     user_name,
-                                       string     password,
-                                       string     realm,
-                                       string[]   rules_patterns,
-                                       string[]   rules_always_confirm,
-                                       string[]   services,
-                                       string     ca_cert,
-                                       string     subject,
-                                       string     subject_alt,
-                                       string     server_cert,
-                                       bool       force_flat_file_store)
-    {
-        logger.trace("(static) install_id_card");
-        IdCard idcard = new IdCard();
-
-        bool success = false;
-        Mutex mutex = new Mutex();
-        Cond cond = new Cond();
-
-        idcard.display_name = display_name;
-        idcard.username = user_name;
-        idcard.password = password;
-        idcard.issuer = realm;
-        idcard.services = services;
-        idcard.trust_anchor.ca_cert = ca_cert;
-        idcard.trust_anchor.subject = subject;
-        idcard.trust_anchor.subject_alt = subject_alt;
-        idcard.trust_anchor.server_cert = server_cert;
-
-        if (rules_patterns.length == rules_always_confirm.length)
-        {
-            idcard.rules = new Rule[rules_patterns.length];
-         
-            for (int i = 0; i < idcard.rules.length; i++)
-            { 
-                idcard.rules[i].pattern = rules_patterns[i];
-                idcard.rules[i].always_confirm = rules_always_confirm[i];
-            }
-        }
-
-        mutex.lock();
-
-        ArrayList<IdCard>? old_duplicates = null;
-        // Defer addition to the main loop thread.
-        Idle.add(() => {
-                mutex.lock();
-                success = parent_app.add_identity(idcard, force_flat_file_store, out old_duplicates);
-                foreach (IdCard id_card in old_duplicates) {
-                    stdout.printf("removing duplicate id for '%s'\n", new_card.nai);
-                }
-                cond.signal();
-                mutex.unlock();
-                return false;
-            });
-
-        cond.wait(mutex);
-        mutex.unlock();
-
-        return success;
-    }
-}
diff --git a/src/moonshot-settings.c b/src/moonshot-settings.c
new file mode 100644 (file)
index 0000000..50eb937
--- /dev/null
@@ -0,0 +1,1367 @@
+/* moonshot-settings.c generated by valac 0.34.9, the Vala compiler
+ * generated from moonshot-settings.vala, do not modify */
+
+/*
+ * Copyright (c) 2011-2016, JANET(UK)
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * 3. Neither the name of JANET(UK) nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+*/
+
+#include <glib.h>
+#include <glib-object.h>
+#include <stdlib.h>
+#include <string.h>
+#include <gio/gio.h>
+
+
+#define TYPE_MOONSHOT_LOGGER (moonshot_logger_get_type ())
+#define MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLogger))
+#define MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+#define IS_MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MOONSHOT_LOGGER))
+#define IS_MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MOONSHOT_LOGGER))
+#define MOONSHOT_LOGGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+
+typedef struct _MoonshotLogger MoonshotLogger;
+typedef struct _MoonshotLoggerClass MoonshotLoggerClass;
+#define _g_free0(var) (var = (g_free (var), NULL))
+#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
+#define _g_key_file_unref0(var) ((var == NULL) ? NULL : (var = (g_key_file_unref (var), NULL)))
+#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))
+
+
+
+GType moonshot_logger_get_type (void) G_GNUC_CONST;
+MoonshotLogger* logger (void);
+MoonshotLogger* get_logger (const gchar* name);
+#define KEY_FILE_NAME "moonshot-ui.config"
+GKeyFile* get_keyfile (void);
+void moonshot_logger_trace (MoonshotLogger* self, const gchar* message, GError* e);
+void save_keyfile (GKeyFile* key_file);
+void moonshot_logger_error (MoonshotLogger* self, const gchar* message, GError* e);
+void set_bool_setting (const gchar* group_name, const gchar* key_name, gboolean value, GKeyFile* key_file);
+gboolean get_bool_setting (const gchar* group_name, const gchar* key_name, gboolean _default_, GKeyFile* key_file);
+void moonshot_logger_info (MoonshotLogger* self, const gchar* message, GError* e);
+void set_string_setting (const gchar* group_name, const gchar* key_name, const gchar* value, GKeyFile* key_file);
+gchar* get_string_setting (const gchar* group_name, const gchar* key_name, const gchar* _default_, GKeyFile* key_file);
+
+
+MoonshotLogger* logger (void) {
+       MoonshotLogger* result = NULL;
+       MoonshotLogger* _tmp0_ = NULL;
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp0_ = get_logger ("MoonshotSettings");
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       result = _tmp0_;
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       return result;
+#line 84 "moonshot-settings.c"
+}
+
+
+GKeyFile* get_keyfile (void) {
+       GKeyFile* result = NULL;
+       GKeyFile* key_file = NULL;
+       GKeyFile* _tmp0_ = NULL;
+       gchar* config_dir = NULL;
+       const gchar* _tmp1_ = NULL;
+       gchar* _tmp2_ = NULL;
+       MoonshotLogger* _tmp3_ = NULL;
+       MoonshotLogger* _tmp4_ = NULL;
+       const gchar* _tmp5_ = NULL;
+       gchar* _tmp6_ = NULL;
+       gchar* _tmp7_ = NULL;
+       GFile* dir = NULL;
+       const gchar* _tmp8_ = NULL;
+       GFile* _tmp9_ = NULL;
+       gchar* path = NULL;
+       GFile* _tmp10_ = NULL;
+       GFile* _tmp11_ = NULL;
+       GFile* _tmp12_ = NULL;
+       gchar* _tmp13_ = NULL;
+       gchar* _tmp14_ = NULL;
+       GError * _inner_error_ = NULL;
+#line 45 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp0_ = g_key_file_new ();
+#line 45 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       key_file = _tmp0_;
+#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp1_ = g_get_user_config_dir ();
+#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp2_ = g_strdup (_tmp1_);
+#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       config_dir = _tmp2_;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp3_ = logger ();
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp4_ = _tmp3_;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp5_ = config_dir;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp6_ = g_strconcat ("get_keyfile: config_dir=", _tmp5_, NULL);
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp7_ = _tmp6_;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       moonshot_logger_trace (_tmp4_, _tmp7_, NULL);
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _g_free0 (_tmp7_);
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _g_object_unref0 (_tmp4_);
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp8_ = config_dir;
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp9_ = g_file_new_for_path (_tmp8_);
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       dir = _tmp9_;
+#line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp10_ = dir;
+#line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp11_ = g_file_get_child (_tmp10_, KEY_FILE_NAME);
+#line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp12_ = _tmp11_;
+#line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp13_ = g_file_get_path (_tmp12_);
+#line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp14_ = _tmp13_;
+#line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _g_object_unref0 (_tmp12_);
+#line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       path = _tmp14_;
+#line 156 "moonshot-settings.c"
+       {
+               gboolean _tmp15_ = FALSE;
+               GKeyFile* _tmp16_ = NULL;
+               const gchar* _tmp17_ = NULL;
+               gboolean _tmp18_ = FALSE;
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp16_ = key_file;
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp17_ = path;
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp18_ = g_key_file_load_from_file (_tmp16_, _tmp17_, G_KEY_FILE_NONE, &_inner_error_);
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp15_ = _tmp18_;
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       if (_inner_error_->domain == G_FILE_ERROR) {
+#line 174 "moonshot-settings.c"
+                               goto __catch11_g_file_error;
+                       }
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       if (_inner_error_->domain == G_KEY_FILE_ERROR) {
+#line 179 "moonshot-settings.c"
+                               goto __catch11_g_key_file_error;
+                       }
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _g_free0 (path);
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _g_object_unref0 (dir);
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _g_free0 (config_dir);
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _g_key_file_unref0 (key_file);
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       g_clear_error (&_inner_error_);
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       return NULL;
+#line 196 "moonshot-settings.c"
+               }
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               if (_tmp15_) {
+#line 200 "moonshot-settings.c"
+                       MoonshotLogger* _tmp19_ = NULL;
+                       MoonshotLogger* _tmp20_ = NULL;
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _tmp19_ = logger ();
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _tmp20_ = _tmp19_;
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       moonshot_logger_trace (_tmp20_, "get_keyfile: load_from_file returned successfully", NULL);
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _g_object_unref0 (_tmp20_);
+#line 211 "moonshot-settings.c"
+               } else {
+                       MoonshotLogger* _tmp21_ = NULL;
+                       MoonshotLogger* _tmp22_ = NULL;
+#line 56 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _tmp21_ = logger ();
+#line 56 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _tmp22_ = _tmp21_;
+#line 56 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       moonshot_logger_trace (_tmp22_, "get_keyfile: load_from_file returned false", NULL);
+#line 56 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _g_object_unref0 (_tmp22_);
+#line 223 "moonshot-settings.c"
+               }
+       }
+       goto __finally11;
+       __catch11_g_file_error:
+       {
+               GError* e = NULL;
+               MoonshotLogger* _tmp23_ = NULL;
+               MoonshotLogger* _tmp24_ = NULL;
+               GError* _tmp25_ = NULL;
+               const gchar* _tmp26_ = NULL;
+               gchar* _tmp27_ = NULL;
+               gchar* _tmp28_ = NULL;
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               e = _inner_error_;
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _inner_error_ = NULL;
+#line 59 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp23_ = logger ();
+#line 59 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp24_ = _tmp23_;
+#line 59 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp25_ = e;
+#line 59 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp26_ = _tmp25_->message;
+#line 59 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp27_ = g_strconcat ("get_keyfile: FileError: ", _tmp26_, NULL);
+#line 59 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp28_ = _tmp27_;
+#line 59 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               moonshot_logger_trace (_tmp24_, _tmp28_, NULL);
+#line 59 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_free0 (_tmp28_);
+#line 59 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_object_unref0 (_tmp24_);
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_error_free0 (e);
+#line 260 "moonshot-settings.c"
+       }
+       goto __finally11;
+       __catch11_g_key_file_error:
+       {
+               GError* e = NULL;
+               MoonshotLogger* _tmp29_ = NULL;
+               MoonshotLogger* _tmp30_ = NULL;
+               GError* _tmp31_ = NULL;
+               const gchar* _tmp32_ = NULL;
+               gchar* _tmp33_ = NULL;
+               gchar* _tmp34_ = NULL;
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               e = _inner_error_;
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _inner_error_ = NULL;
+#line 62 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp29_ = logger ();
+#line 62 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp30_ = _tmp29_;
+#line 62 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp31_ = e;
+#line 62 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp32_ = _tmp31_->message;
+#line 62 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp33_ = g_strconcat ("get_keyfile: KeyFileError: ", _tmp32_, NULL);
+#line 62 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp34_ = _tmp33_;
+#line 62 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               moonshot_logger_trace (_tmp30_, _tmp34_, NULL);
+#line 62 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_free0 (_tmp34_);
+#line 62 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_object_unref0 (_tmp30_);
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_error_free0 (e);
+#line 296 "moonshot-settings.c"
+       }
+       __finally11:
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_free0 (path);
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_object_unref0 (dir);
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_free0 (config_dir);
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_key_file_unref0 (key_file);
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.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 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               g_clear_error (&_inner_error_);
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               return NULL;
+#line 315 "moonshot-settings.c"
+       }
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       result = key_file;
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _g_free0 (path);
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _g_object_unref0 (dir);
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _g_free0 (config_dir);
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       return result;
+#line 327 "moonshot-settings.c"
+}
+
+
+static guint8* string_get_data (const gchar* self, int* result_length1) {
+       guint8* result;
+       guint8* res = NULL;
+       gint res_length1 = 0;
+       gint _res_size_ = 0;
+       gint _tmp0_ = 0;
+       gint _tmp1_ = 0;
+       gint _tmp2_ = 0;
+       guint8* _tmp3_ = NULL;
+       gint _tmp3__length1 = 0;
+       guint8* _tmp4_ = NULL;
+       gint _tmp4__length1 = 0;
+#line 1406 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 1407 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       res = (guint8*) self;
+#line 1407 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       res_length1 = -1;
+#line 1407 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _res_size_ = res_length1;
+#line 1408 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp0_ = strlen (self);
+#line 1408 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp1_ = _tmp0_;
+#line 1408 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       res_length1 = (gint) _tmp1_;
+#line 1408 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp2_ = res_length1;
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp3_ = res;
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp3__length1 = res_length1;
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp4_ = _tmp3_;
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp4__length1 = _tmp3__length1;
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       if (result_length1) {
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               *result_length1 = _tmp4__length1;
+#line 371 "moonshot-settings.c"
+       }
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       result = _tmp4_;
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       return result;
+#line 377 "moonshot-settings.c"
+}
+
+
+void save_keyfile (GKeyFile* key_file) {
+       gchar* config_dir = NULL;
+       const gchar* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+       GFile* dest = NULL;
+       gchar* data = NULL;
+       GKeyFile* _tmp10_ = NULL;
+       gchar* _tmp11_ = NULL;
+       GError * _inner_error_ = NULL;
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       g_return_if_fail (key_file != NULL);
+#line 71 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp0_ = g_get_user_config_dir ();
+#line 71 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp1_ = g_strdup (_tmp0_);
+#line 71 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       config_dir = _tmp1_;
+#line 72 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       dest = NULL;
+#line 400 "moonshot-settings.c"
+       {
+               GFile* dir = NULL;
+               GFile* _tmp2_ = NULL;
+               GFile* _tmp3_ = NULL;
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp2_ = g_file_new_for_path (config_dir);
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               dir = _tmp2_;
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp3_ = g_file_get_child (dir, KEY_FILE_NAME);
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_object_unref0 (dest);
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               dest = _tmp3_;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               g_file_make_directory_with_parents (dir, NULL, &_inner_error_);
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _g_object_unref0 (dir);
+#line 421 "moonshot-settings.c"
+                       goto __catch12_g_error;
+               }
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_object_unref0 (dir);
+#line 426 "moonshot-settings.c"
+       }
+       goto __finally12;
+       __catch12_g_error:
+       {
+               GError* e = NULL;
+               MoonshotLogger* _tmp4_ = NULL;
+               MoonshotLogger* _tmp5_ = NULL;
+               GError* _tmp6_ = NULL;
+               const gchar* _tmp7_ = NULL;
+               gchar* _tmp8_ = NULL;
+               gchar* _tmp9_ = NULL;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               e = _inner_error_;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _inner_error_ = NULL;
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp4_ = logger ();
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp5_ = _tmp4_;
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp6_ = e;
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp7_ = _tmp6_->message;
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp8_ = g_strconcat ("save_keyfile: make_directory_with_parents threw error (this is usually" \
+" ignorable) : ", _tmp7_, NULL);
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp9_ = _tmp8_;
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               moonshot_logger_trace (_tmp5_, _tmp9_, NULL);
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_free0 (_tmp9_);
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_object_unref0 (_tmp5_);
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_error_free0 (e);
+#line 462 "moonshot-settings.c"
+       }
+       __finally12:
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_object_unref0 (dest);
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_free0 (config_dir);
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.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 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               g_clear_error (&_inner_error_);
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               return;
+#line 477 "moonshot-settings.c"
+       }
+#line 87 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp10_ = key_file;
+#line 87 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp11_ = g_key_file_to_data (_tmp10_, NULL, NULL);
+#line 87 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       data = _tmp11_;
+#line 485 "moonshot-settings.c"
+       {
+               MoonshotLogger* _tmp12_ = NULL;
+               MoonshotLogger* _tmp13_ = NULL;
+               GFile* _tmp14_ = NULL;
+               gchar* _tmp15_ = NULL;
+               gchar* _tmp16_ = NULL;
+               gchar* _tmp17_ = NULL;
+               gchar* _tmp18_ = NULL;
+               gchar* new_etag = NULL;
+               GFile* _tmp19_ = NULL;
+               guint8* _tmp20_ = NULL;
+               gint _tmp20__length1 = 0;
+               guint8* _tmp21_ = NULL;
+               gint _tmp21__length1 = 0;
+               gchar* _tmp22_ = NULL;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp12_ = logger ();
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp13_ = _tmp12_;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp14_ = dest;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp15_ = g_file_get_path (_tmp14_);
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp16_ = _tmp15_;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp17_ = g_strdup_printf ("save_keyfile: saving to file path '%s'", _tmp16_);
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp18_ = _tmp17_;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               moonshot_logger_trace (_tmp13_, _tmp18_, NULL);
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_free0 (_tmp18_);
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_free0 (_tmp16_);
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_object_unref0 (_tmp13_);
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp19_ = dest;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp20_ = string_get_data (data, &_tmp20__length1);
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp21_ = _tmp20_;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp21__length1 = _tmp20__length1;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               g_file_replace_contents (_tmp19_, _tmp21_, (gsize) _tmp21__length1, NULL, FALSE, G_FILE_CREATE_REPLACE_DESTINATION | G_FILE_CREATE_PRIVATE, &_tmp22_, NULL, &_inner_error_);
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_free0 (new_etag);
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               new_etag = _tmp22_;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _g_free0 (new_etag);
+#line 541 "moonshot-settings.c"
+                       goto __catch13_g_error;
+               }
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_free0 (new_etag);
+#line 546 "moonshot-settings.c"
+       }
+       goto __finally13;
+       __catch13_g_error:
+       {
+               GError* e = NULL;
+               MoonshotLogger* _tmp23_ = NULL;
+               MoonshotLogger* _tmp24_ = NULL;
+               GError* _tmp25_ = NULL;
+               const gchar* _tmp26_ = NULL;
+               gchar* _tmp27_ = NULL;
+               gchar* _tmp28_ = NULL;
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               e = _inner_error_;
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _inner_error_ = NULL;
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp23_ = logger ();
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp24_ = _tmp23_;
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp25_ = e;
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp26_ = _tmp25_->message;
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp27_ = g_strconcat ("save_keyfile: error when writing to file: ", _tmp26_, NULL);
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp28_ = _tmp27_;
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               moonshot_logger_error (_tmp24_, _tmp28_, NULL);
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_free0 (_tmp28_);
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_object_unref0 (_tmp24_);
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_error_free0 (e);
+#line 582 "moonshot-settings.c"
+       }
+       __finally13:
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_free0 (data);
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_object_unref0 (dest);
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_free0 (config_dir);
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.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 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               g_clear_error (&_inner_error_);
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               return;
+#line 599 "moonshot-settings.c"
+       }
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _g_free0 (data);
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _g_object_unref0 (dest);
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _g_free0 (config_dir);
+#line 607 "moonshot-settings.c"
+}
+
+
+void set_bool_setting (const gchar* group_name, const gchar* key_name, gboolean value, GKeyFile* key_file) {
+       GKeyFile* tmp_key_file = NULL;
+       GKeyFile* _tmp0_ = NULL;
+       GKeyFile* _tmp3_ = NULL;
+       const gchar* _tmp4_ = NULL;
+       const gchar* _tmp5_ = NULL;
+       gboolean _tmp6_ = FALSE;
+       GKeyFile* _tmp7_ = NULL;
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       g_return_if_fail (group_name != NULL);
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       g_return_if_fail (key_name != NULL);
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       tmp_key_file = NULL;
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp0_ = key_file;
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       if (_tmp0_ == NULL) {
+#line 629 "moonshot-settings.c"
+               GKeyFile* _tmp1_ = NULL;
+               GKeyFile* _tmp2_ = NULL;
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp1_ = get_keyfile ();
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_key_file_unref0 (tmp_key_file);
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               tmp_key_file = _tmp1_;
+#line 109 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp2_ = tmp_key_file;
+#line 109 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               key_file = _tmp2_;
+#line 642 "moonshot-settings.c"
+       }
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp3_ = key_file;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp4_ = group_name;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp5_ = key_name;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp6_ = value;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       g_key_file_set_boolean (_tmp3_, _tmp4_, _tmp5_, _tmp6_);
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp7_ = tmp_key_file;
+#line 114 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       if (_tmp7_ != NULL) {
+#line 658 "moonshot-settings.c"
+               GKeyFile* _tmp8_ = NULL;
+#line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp8_ = key_file;
+#line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               save_keyfile (_tmp8_);
+#line 664 "moonshot-settings.c"
+       }
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _g_key_file_unref0 (tmp_key_file);
+#line 668 "moonshot-settings.c"
+}
+
+
+static const gchar* string_to_string (const gchar* self) {
+       const gchar* result = NULL;
+#line 1420 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 1421 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       result = self;
+#line 1421 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       return result;
+#line 680 "moonshot-settings.c"
+}
+
+
+gboolean get_bool_setting (const gchar* group_name, const gchar* key_name, gboolean _default_, GKeyFile* key_file) {
+       gboolean result = FALSE;
+       GKeyFile* tmp_key_file = NULL;
+       GKeyFile* _tmp0_ = NULL;
+       GKeyFile* _tmp3_ = NULL;
+       gboolean _tmp46_ = FALSE;
+       GError * _inner_error_ = NULL;
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       g_return_val_if_fail (group_name != NULL, FALSE);
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       g_return_val_if_fail (key_name != NULL, FALSE);
+#line 122 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       tmp_key_file = NULL;
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp0_ = key_file;
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       if (_tmp0_ == NULL) {
+#line 701 "moonshot-settings.c"
+               GKeyFile* _tmp1_ = NULL;
+               GKeyFile* _tmp2_ = NULL;
+#line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp1_ = get_keyfile ();
+#line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_key_file_unref0 (tmp_key_file);
+#line 125 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               tmp_key_file = _tmp1_;
+#line 126 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp2_ = tmp_key_file;
+#line 126 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               key_file = _tmp2_;
+#line 714 "moonshot-settings.c"
+       }
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp3_ = key_file;
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       if (_tmp3_ == NULL) {
+#line 720 "moonshot-settings.c"
+               gboolean _tmp4_ = FALSE;
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp4_ = _default_;
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               result = _tmp4_;
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_key_file_unref0 (tmp_key_file);
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               return result;
+#line 730 "moonshot-settings.c"
+       }
+       {
+               gboolean _tmp5_ = FALSE;
+               GKeyFile* _tmp6_ = NULL;
+               const gchar* _tmp7_ = NULL;
+               const gchar* _tmp8_ = NULL;
+               gboolean _tmp9_ = FALSE;
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp6_ = key_file;
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp7_ = group_name;
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp8_ = key_name;
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp9_ = g_key_file_has_key (_tmp6_, _tmp7_, _tmp8_, &_inner_error_);
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp5_ = _tmp9_;
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 750 "moonshot-settings.c"
+                       gboolean _tmp10_ = FALSE;
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       if (_inner_error_->domain == G_KEY_FILE_ERROR) {
+#line 754 "moonshot-settings.c"
+                               goto __catch14_g_key_file_error;
+                       }
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _g_key_file_unref0 (tmp_key_file);
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       g_clear_error (&_inner_error_);
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       return _tmp10_;
+#line 765 "moonshot-settings.c"
+               }
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               if (!_tmp5_) {
+#line 769 "moonshot-settings.c"
+                       MoonshotLogger* _tmp11_ = NULL;
+                       MoonshotLogger* _tmp12_ = NULL;
+                       const gchar* _tmp13_ = NULL;
+                       const gchar* _tmp14_ = NULL;
+                       const gchar* _tmp15_ = NULL;
+                       const gchar* _tmp16_ = NULL;
+                       gchar* _tmp17_ = NULL;
+                       gchar* _tmp18_ = NULL;
+                       gboolean _tmp19_ = FALSE;
+#line 135 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _tmp11_ = logger ();
+#line 135 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _tmp12_ = _tmp11_;
+#line 135 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _tmp13_ = key_name;
+#line 135 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _tmp14_ = string_to_string (_tmp13_);
+#line 135 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _tmp15_ = group_name;
+#line 135 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _tmp16_ = string_to_string (_tmp15_);
+#line 135 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _tmp17_ = g_strconcat ("get_bool_setting : key file doesn't contain key '", _tmp14_, "' in group '", _tmp16_, "'", NULL);
+#line 135 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _tmp18_ = _tmp17_;
+#line 135 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       moonshot_logger_info (_tmp12_, _tmp18_, NULL);
+#line 135 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _g_free0 (_tmp18_);
+#line 135 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _g_object_unref0 (_tmp12_);
+#line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _tmp19_ = _default_;
+#line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       result = _tmp19_;
+#line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _g_key_file_unref0 (tmp_key_file);
+#line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       return result;
+#line 809 "moonshot-settings.c"
+               }
+       }
+       goto __finally14;
+       __catch14_g_key_file_error:
+       {
+               GError* e = NULL;
+               MoonshotLogger* _tmp20_ = NULL;
+               MoonshotLogger* _tmp21_ = NULL;
+               const gchar* _tmp22_ = NULL;
+               const gchar* _tmp23_ = NULL;
+               const gchar* _tmp24_ = NULL;
+               const gchar* _tmp25_ = NULL;
+               gchar* _tmp26_ = NULL;
+               gchar* _tmp27_ = NULL;
+               GError* _tmp28_ = NULL;
+               const gchar* _tmp29_ = NULL;
+               gchar* _tmp30_ = NULL;
+               gchar* _tmp31_ = NULL;
+#line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               e = _inner_error_;
+#line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _inner_error_ = NULL;
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp20_ = logger ();
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp21_ = _tmp20_;
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp22_ = key_name;
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp23_ = string_to_string (_tmp22_);
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp24_ = group_name;
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp25_ = string_to_string (_tmp24_);
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp26_ = g_strconcat ("get_bool_setting : KeyFileError checking if key '", _tmp23_, "' exists in group '", _tmp25_, "' (maybe ignorable?) : ", NULL);
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp27_ = _tmp26_;
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp28_ = e;
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp29_ = _tmp28_->message;
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp30_ = g_strconcat (_tmp27_, _tmp29_, NULL);
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp31_ = _tmp30_;
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               moonshot_logger_info (_tmp21_, _tmp31_, NULL);
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_free0 (_tmp31_);
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_free0 (_tmp27_);
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_object_unref0 (_tmp21_);
+#line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_error_free0 (e);
+#line 866 "moonshot-settings.c"
+       }
+       __finally14:
+#line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 871 "moonshot-settings.c"
+               gboolean _tmp32_ = FALSE;
+#line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_key_file_unref0 (tmp_key_file);
+#line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.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 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               g_clear_error (&_inner_error_);
+#line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               return _tmp32_;
+#line 881 "moonshot-settings.c"
+       }
+       {
+               gboolean _tmp33_ = FALSE;
+               GKeyFile* _tmp34_ = NULL;
+               const gchar* _tmp35_ = NULL;
+               const gchar* _tmp36_ = NULL;
+               gboolean _tmp37_ = FALSE;
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp34_ = key_file;
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp35_ = group_name;
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp36_ = key_name;
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp37_ = g_key_file_get_boolean (_tmp34_, _tmp35_, _tmp36_, &_inner_error_);
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp33_ = _tmp37_;
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 901 "moonshot-settings.c"
+                       gboolean _tmp38_ = FALSE;
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       if (_inner_error_->domain == G_KEY_FILE_ERROR) {
+#line 905 "moonshot-settings.c"
+                               goto __catch15_g_key_file_error;
+                       }
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _g_key_file_unref0 (tmp_key_file);
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       g_clear_error (&_inner_error_);
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       return _tmp38_;
+#line 916 "moonshot-settings.c"
+               }
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               result = _tmp33_;
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_key_file_unref0 (tmp_key_file);
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               return result;
+#line 924 "moonshot-settings.c"
+       }
+       goto __finally15;
+       __catch15_g_key_file_error:
+       {
+               GError* e = NULL;
+               MoonshotLogger* _tmp39_ = NULL;
+               MoonshotLogger* _tmp40_ = NULL;
+               GError* _tmp41_ = NULL;
+               const gchar* _tmp42_ = NULL;
+               gchar* _tmp43_ = NULL;
+               gchar* _tmp44_ = NULL;
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               e = _inner_error_;
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _inner_error_ = NULL;
+#line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp39_ = logger ();
+#line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp40_ = _tmp39_;
+#line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp41_ = e;
+#line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp42_ = _tmp41_->message;
+#line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp43_ = g_strconcat ("get_bool_setting got KeyFileError (may be ignorable) : ", _tmp42_, NULL);
+#line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp44_ = _tmp43_;
+#line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               moonshot_logger_info (_tmp40_, _tmp44_, NULL);
+#line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_free0 (_tmp44_);
+#line 148 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_object_unref0 (_tmp40_);
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_error_free0 (e);
+#line 960 "moonshot-settings.c"
+       }
+       __finally15:
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 965 "moonshot-settings.c"
+               gboolean _tmp45_ = FALSE;
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_key_file_unref0 (tmp_key_file);
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.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 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               g_clear_error (&_inner_error_);
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               return _tmp45_;
+#line 975 "moonshot-settings.c"
+       }
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp46_ = _default_;
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       result = _tmp46_;
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _g_key_file_unref0 (tmp_key_file);
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       return result;
+#line 985 "moonshot-settings.c"
+}
+
+
+void set_string_setting (const gchar* group_name, const gchar* key_name, const gchar* value, GKeyFile* key_file) {
+       GKeyFile* tmp_key_file = NULL;
+       GKeyFile* _tmp0_ = NULL;
+       GKeyFile* _tmp3_ = NULL;
+       const gchar* _tmp4_ = NULL;
+       const gchar* _tmp5_ = NULL;
+       const gchar* _tmp6_ = NULL;
+       GKeyFile* _tmp7_ = NULL;
+#line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       g_return_if_fail (group_name != NULL);
+#line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       g_return_if_fail (key_name != NULL);
+#line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       g_return_if_fail (value != NULL);
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       tmp_key_file = NULL;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp0_ = key_file;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       if (_tmp0_ == NULL) {
+#line 1009 "moonshot-settings.c"
+               GKeyFile* _tmp1_ = NULL;
+               GKeyFile* _tmp2_ = NULL;
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp1_ = get_keyfile ();
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_key_file_unref0 (tmp_key_file);
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               tmp_key_file = _tmp1_;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp2_ = tmp_key_file;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               key_file = _tmp2_;
+#line 1022 "moonshot-settings.c"
+       }
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp3_ = key_file;
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp4_ = group_name;
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp5_ = key_name;
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp6_ = value;
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       g_key_file_set_string (_tmp3_, _tmp4_, _tmp5_, _tmp6_);
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp7_ = tmp_key_file;
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       if (_tmp7_ != NULL) {
+#line 1038 "moonshot-settings.c"
+               GKeyFile* _tmp8_ = NULL;
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp8_ = key_file;
+#line 166 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               save_keyfile (_tmp8_);
+#line 1044 "moonshot-settings.c"
+       }
+#line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _g_key_file_unref0 (tmp_key_file);
+#line 1048 "moonshot-settings.c"
+}
+
+
+gchar* get_string_setting (const gchar* group_name, const gchar* key_name, const gchar* _default_, GKeyFile* key_file) {
+       gchar* result = NULL;
+       GKeyFile* tmp_key_file = NULL;
+       GKeyFile* _tmp0_ = NULL;
+       GKeyFile* _tmp3_ = NULL;
+       const gchar* _tmp45_ = NULL;
+       gchar* _tmp46_ = NULL;
+       GError * _inner_error_ = NULL;
+#line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       g_return_val_if_fail (group_name != NULL, NULL);
+#line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       g_return_val_if_fail (key_name != NULL, NULL);
+#line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       g_return_val_if_fail (_default_ != NULL, NULL);
+#line 172 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       tmp_key_file = NULL;
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp0_ = key_file;
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       if (_tmp0_ == NULL) {
+#line 1072 "moonshot-settings.c"
+               GKeyFile* _tmp1_ = NULL;
+               GKeyFile* _tmp2_ = NULL;
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp1_ = get_keyfile ();
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_key_file_unref0 (tmp_key_file);
+#line 175 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               tmp_key_file = _tmp1_;
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp2_ = tmp_key_file;
+#line 176 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               key_file = _tmp2_;
+#line 1085 "moonshot-settings.c"
+       }
+#line 179 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp3_ = key_file;
+#line 179 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       if (_tmp3_ == NULL) {
+#line 1091 "moonshot-settings.c"
+               const gchar* _tmp4_ = NULL;
+               gchar* _tmp5_ = NULL;
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp4_ = _default_;
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp5_ = g_strdup (_tmp4_);
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               result = _tmp5_;
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_key_file_unref0 (tmp_key_file);
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               return result;
+#line 1104 "moonshot-settings.c"
+       }
+       {
+               gboolean _tmp6_ = FALSE;
+               GKeyFile* _tmp7_ = NULL;
+               const gchar* _tmp8_ = NULL;
+               const gchar* _tmp9_ = NULL;
+               gboolean _tmp10_ = FALSE;
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp7_ = key_file;
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp8_ = group_name;
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp9_ = key_name;
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp10_ = g_key_file_has_key (_tmp7_, _tmp8_, _tmp9_, &_inner_error_);
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp6_ = _tmp10_;
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       if (_inner_error_->domain == G_KEY_FILE_ERROR) {
+#line 1126 "moonshot-settings.c"
+                               goto __catch16_g_key_file_error;
+                       }
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _g_key_file_unref0 (tmp_key_file);
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       g_clear_error (&_inner_error_);
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       return NULL;
+#line 1137 "moonshot-settings.c"
+               }
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               if (!_tmp6_) {
+#line 1141 "moonshot-settings.c"
+                       MoonshotLogger* _tmp11_ = NULL;
+                       MoonshotLogger* _tmp12_ = NULL;
+                       const gchar* _tmp13_ = NULL;
+                       const gchar* _tmp14_ = NULL;
+                       const gchar* _tmp15_ = NULL;
+                       const gchar* _tmp16_ = NULL;
+                       gchar* _tmp17_ = NULL;
+                       gchar* _tmp18_ = NULL;
+                       const gchar* _tmp19_ = NULL;
+                       gchar* _tmp20_ = NULL;
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _tmp11_ = logger ();
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _tmp12_ = _tmp11_;
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _tmp13_ = key_name;
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _tmp14_ = string_to_string (_tmp13_);
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _tmp15_ = group_name;
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _tmp16_ = string_to_string (_tmp15_);
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _tmp17_ = g_strconcat ("get_string_setting : key file doesn't contain key '", _tmp14_, "' in group '", _tmp16_, "'", NULL);
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _tmp18_ = _tmp17_;
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       moonshot_logger_info (_tmp12_, _tmp18_, NULL);
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _g_free0 (_tmp18_);
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _g_object_unref0 (_tmp12_);
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _tmp19_ = _default_;
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _tmp20_ = g_strdup (_tmp19_);
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       result = _tmp20_;
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _g_key_file_unref0 (tmp_key_file);
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       return result;
+#line 1184 "moonshot-settings.c"
+               }
+       }
+       goto __finally16;
+       __catch16_g_key_file_error:
+       {
+               GError* e = NULL;
+               MoonshotLogger* _tmp21_ = NULL;
+               MoonshotLogger* _tmp22_ = NULL;
+               const gchar* _tmp23_ = NULL;
+               const gchar* _tmp24_ = NULL;
+               const gchar* _tmp25_ = NULL;
+               const gchar* _tmp26_ = NULL;
+               gchar* _tmp27_ = NULL;
+               gchar* _tmp28_ = NULL;
+               GError* _tmp29_ = NULL;
+               const gchar* _tmp30_ = NULL;
+               gchar* _tmp31_ = NULL;
+               gchar* _tmp32_ = NULL;
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               e = _inner_error_;
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _inner_error_ = NULL;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp21_ = logger ();
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp22_ = _tmp21_;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp23_ = key_name;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp24_ = string_to_string (_tmp23_);
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp25_ = group_name;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp26_ = string_to_string (_tmp25_);
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp27_ = g_strconcat ("get_string_setting : KeyFileError checking if key '", _tmp24_, "' exists in group '", _tmp26_, "' (maybe ignorable?) : ", NULL);
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp28_ = _tmp27_;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp29_ = e;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp30_ = _tmp29_->message;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp31_ = g_strconcat (_tmp28_, _tmp30_, NULL);
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp32_ = _tmp31_;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               moonshot_logger_info (_tmp22_, _tmp32_, NULL);
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_free0 (_tmp32_);
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_free0 (_tmp28_);
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_object_unref0 (_tmp22_);
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_error_free0 (e);
+#line 1241 "moonshot-settings.c"
+       }
+       __finally16:
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_key_file_unref0 (tmp_key_file);
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.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 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               g_clear_error (&_inner_error_);
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               return NULL;
+#line 1254 "moonshot-settings.c"
+       }
+       {
+               gchar* _tmp33_ = NULL;
+               GKeyFile* _tmp34_ = NULL;
+               const gchar* _tmp35_ = NULL;
+               const gchar* _tmp36_ = NULL;
+               gchar* _tmp37_ = NULL;
+               gchar* _tmp38_ = NULL;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp34_ = key_file;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp35_ = group_name;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp36_ = key_name;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp37_ = g_key_file_get_string (_tmp34_, _tmp35_, _tmp36_, &_inner_error_);
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp33_ = _tmp37_;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       if (_inner_error_->domain == G_KEY_FILE_ERROR) {
+#line 1277 "moonshot-settings.c"
+                               goto __catch17_g_key_file_error;
+                       }
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       _g_key_file_unref0 (tmp_key_file);
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       g_clear_error (&_inner_error_);
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+                       return NULL;
+#line 1288 "moonshot-settings.c"
+               }
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp38_ = _tmp33_;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp33_ = NULL;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               result = _tmp38_;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_free0 (_tmp33_);
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_key_file_unref0 (tmp_key_file);
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               return result;
+#line 1302 "moonshot-settings.c"
+       }
+       goto __finally17;
+       __catch17_g_key_file_error:
+       {
+               GError* e = NULL;
+               MoonshotLogger* _tmp39_ = NULL;
+               MoonshotLogger* _tmp40_ = NULL;
+               GError* _tmp41_ = NULL;
+               const gchar* _tmp42_ = NULL;
+               gchar* _tmp43_ = NULL;
+               gchar* _tmp44_ = NULL;
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               e = _inner_error_;
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _inner_error_ = NULL;
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp39_ = logger ();
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp40_ = _tmp39_;
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp41_ = e;
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp42_ = _tmp41_->message;
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp43_ = g_strconcat ("get_string_setting got KeyFileError (may be ignorable) : ", _tmp42_, NULL);
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _tmp44_ = _tmp43_;
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               moonshot_logger_info (_tmp40_, _tmp44_, NULL);
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_free0 (_tmp44_);
+#line 198 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_object_unref0 (_tmp40_);
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_error_free0 (e);
+#line 1338 "moonshot-settings.c"
+       }
+       __finally17:
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               _g_key_file_unref0 (tmp_key_file);
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.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 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               g_clear_error (&_inner_error_);
+#line 193 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+               return NULL;
+#line 1351 "moonshot-settings.c"
+       }
+#line 200 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp45_ = _default_;
+#line 200 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _tmp46_ = g_strdup (_tmp45_);
+#line 200 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       result = _tmp46_;
+#line 200 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       _g_key_file_unref0 (tmp_key_file);
+#line 200 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-settings.vala"
+       return result;
+#line 1363 "moonshot-settings.c"
+}
+
+
+
diff --git a/src/moonshot-trust-anchor-dialog.c b/src/moonshot-trust-anchor-dialog.c
new file mode 100644 (file)
index 0000000..c3fea5f
--- /dev/null
@@ -0,0 +1,1384 @@
+/* moonshot-trust-anchor-dialog.c generated by valac 0.34.9, the Vala compiler
+ * generated from moonshot-trust-anchor-dialog.vala, do not modify */
+
+/*
+ * Copyright (c) 2011-2016, JANET(UK)
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * 3. Neither the name of JANET(UK) nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+*/
+
+#include <glib.h>
+#include <glib-object.h>
+#include <stdlib.h>
+#include <string.h>
+#include <gtk/gtk.h>
+#include <gdk/gdk.h>
+#include <glib/gi18n-lib.h>
+#include <float.h>
+#include <math.h>
+
+
+#define TYPE_TRUST_ANCHOR_CONFIRMATION_REQUEST (trust_anchor_confirmation_request_get_type ())
+#define TRUST_ANCHOR_CONFIRMATION_REQUEST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TRUST_ANCHOR_CONFIRMATION_REQUEST, TrustAnchorConfirmationRequest))
+#define TRUST_ANCHOR_CONFIRMATION_REQUEST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TRUST_ANCHOR_CONFIRMATION_REQUEST, TrustAnchorConfirmationRequestClass))
+#define IS_TRUST_ANCHOR_CONFIRMATION_REQUEST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TRUST_ANCHOR_CONFIRMATION_REQUEST))
+#define IS_TRUST_ANCHOR_CONFIRMATION_REQUEST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TRUST_ANCHOR_CONFIRMATION_REQUEST))
+#define TRUST_ANCHOR_CONFIRMATION_REQUEST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TRUST_ANCHOR_CONFIRMATION_REQUEST, TrustAnchorConfirmationRequestClass))
+
+typedef struct _TrustAnchorConfirmationRequest TrustAnchorConfirmationRequest;
+typedef struct _TrustAnchorConfirmationRequestClass TrustAnchorConfirmationRequestClass;
+typedef struct _TrustAnchorConfirmationRequestPrivate TrustAnchorConfirmationRequestPrivate;
+
+#define TYPE_IDENTITY_MANAGER_APP (identity_manager_app_get_type ())
+#define IDENTITY_MANAGER_APP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_MANAGER_APP, IdentityManagerApp))
+#define IDENTITY_MANAGER_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_MANAGER_APP, IdentityManagerAppClass))
+#define IS_IDENTITY_MANAGER_APP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_MANAGER_APP))
+#define IS_IDENTITY_MANAGER_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_MANAGER_APP))
+#define IDENTITY_MANAGER_APP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_MANAGER_APP, IdentityManagerAppClass))
+
+typedef struct _IdentityManagerApp IdentityManagerApp;
+typedef struct _IdentityManagerAppClass IdentityManagerAppClass;
+
+#define TYPE_MOONSHOT_LOGGER (moonshot_logger_get_type ())
+#define MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLogger))
+#define MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+#define IS_MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MOONSHOT_LOGGER))
+#define IS_MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MOONSHOT_LOGGER))
+#define MOONSHOT_LOGGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+
+typedef struct _MoonshotLogger MoonshotLogger;
+typedef struct _MoonshotLoggerClass MoonshotLoggerClass;
+#define _identity_manager_app_unref0(var) ((var == NULL) ? NULL : (var = (identity_manager_app_unref (var), NULL)))
+#define _g_free0(var) (var = (g_free (var), NULL))
+
+#define TYPE_ID_CARD (id_card_get_type ())
+#define ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ID_CARD, IdCard))
+#define ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ID_CARD, IdCardClass))
+#define IS_ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ID_CARD))
+#define IS_ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ID_CARD))
+#define ID_CARD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ID_CARD, IdCardClass))
+
+typedef struct _IdCard IdCard;
+typedef struct _IdCardClass IdCardClass;
+typedef struct _IdentityManagerAppPrivate IdentityManagerAppPrivate;
+
+#define TYPE_IDENTITY_MANAGER_MODEL (identity_manager_model_get_type ())
+#define IDENTITY_MANAGER_MODEL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_MANAGER_MODEL, IdentityManagerModel))
+#define IDENTITY_MANAGER_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_MANAGER_MODEL, IdentityManagerModelClass))
+#define IS_IDENTITY_MANAGER_MODEL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_MANAGER_MODEL))
+#define IS_IDENTITY_MANAGER_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_MANAGER_MODEL))
+#define IDENTITY_MANAGER_MODEL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_MANAGER_MODEL, IdentityManagerModelClass))
+
+typedef struct _IdentityManagerModel IdentityManagerModel;
+typedef struct _IdentityManagerModelClass IdentityManagerModelClass;
+
+#define TYPE_IDENTITY_MANAGER_VIEW (identity_manager_view_get_type ())
+#define IDENTITY_MANAGER_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerView))
+#define IDENTITY_MANAGER_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerViewClass))
+#define IS_IDENTITY_MANAGER_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_MANAGER_VIEW))
+#define IS_IDENTITY_MANAGER_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_MANAGER_VIEW))
+#define IDENTITY_MANAGER_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerViewClass))
+
+typedef struct _IdentityManagerView IdentityManagerView;
+typedef struct _IdentityManagerViewClass IdentityManagerViewClass;
+#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
+
+#define TYPE_TRUST_ANCHOR (trust_anchor_get_type ())
+#define TRUST_ANCHOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TRUST_ANCHOR, TrustAnchor))
+#define TRUST_ANCHOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TRUST_ANCHOR, TrustAnchorClass))
+#define IS_TRUST_ANCHOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TRUST_ANCHOR))
+#define IS_TRUST_ANCHOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TRUST_ANCHOR))
+#define TRUST_ANCHOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TRUST_ANCHOR, TrustAnchorClass))
+
+typedef struct _TrustAnchor TrustAnchor;
+typedef struct _TrustAnchorClass TrustAnchorClass;
+
+#define TRUST_ANCHOR_TYPE_TRUST_ANCHOR_TYPE (trust_anchor_trust_anchor_type_get_type ())
+
+#define TYPE_TRUST_ANCHOR_DIALOG (trust_anchor_dialog_get_type ())
+#define TRUST_ANCHOR_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TRUST_ANCHOR_DIALOG, TrustAnchorDialog))
+#define TRUST_ANCHOR_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TRUST_ANCHOR_DIALOG, TrustAnchorDialogClass))
+#define IS_TRUST_ANCHOR_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TRUST_ANCHOR_DIALOG))
+#define IS_TRUST_ANCHOR_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TRUST_ANCHOR_DIALOG))
+#define TRUST_ANCHOR_DIALOG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TRUST_ANCHOR_DIALOG, TrustAnchorDialogClass))
+
+typedef struct _TrustAnchorDialog TrustAnchorDialog;
+typedef struct _TrustAnchorDialogClass TrustAnchorDialogClass;
+typedef struct _TrustAnchorDialogPrivate TrustAnchorDialogPrivate;
+
+typedef void (*TrustAnchorConfirmationCallback) (TrustAnchorConfirmationRequest* request, void* user_data);
+struct _TrustAnchorConfirmationRequest {
+       GObject parent_instance;
+       TrustAnchorConfirmationRequestPrivate * priv;
+       gboolean confirmed;
+};
+
+struct _TrustAnchorConfirmationRequestClass {
+       GObjectClass parent_class;
+};
+
+struct _TrustAnchorConfirmationRequestPrivate {
+       IdentityManagerApp* parent_app;
+       gchar* userid;
+       gchar* realm;
+       gchar* fingerprint;
+       TrustAnchorConfirmationCallback callback;
+       gpointer callback_target;
+       GDestroyNotify callback_target_destroy_notify;
+};
+
+struct _IdentityManagerApp {
+       GTypeInstance parent_instance;
+       volatile int ref_count;
+       IdentityManagerAppPrivate * priv;
+       IdentityManagerModel* model;
+       IdCard* default_id_card;
+       gboolean explicitly_launched;
+       IdentityManagerView* view;
+};
+
+struct _IdentityManagerAppClass {
+       GTypeClass parent_class;
+       void (*finalize) (IdentityManagerApp *self);
+};
+
+typedef enum  {
+       TRUST_ANCHOR_TRUST_ANCHOR_TYPE_EMPTY,
+       TRUST_ANCHOR_TRUST_ANCHOR_TYPE_CA_CERT,
+       TRUST_ANCHOR_TRUST_ANCHOR_TYPE_SERVER_CERT
+} TrustAnchorTrustAnchorType;
+
+struct _TrustAnchorDialog {
+       GtkDialog parent_instance;
+       TrustAnchorDialogPrivate * priv;
+       gboolean complete;
+};
+
+struct _TrustAnchorDialogClass {
+       GtkDialogClass parent_class;
+};
+
+
+static gpointer trust_anchor_confirmation_request_parent_class = NULL;
+static MoonshotLogger* trust_anchor_confirmation_request_logger;
+static MoonshotLogger* trust_anchor_confirmation_request_logger = NULL;
+static gpointer trust_anchor_dialog_parent_class = NULL;
+static GdkColor trust_anchor_dialog_white;
+static GdkColor trust_anchor_dialog_white = {0};
+
+GType trust_anchor_confirmation_request_get_type (void) G_GNUC_CONST;
+gpointer identity_manager_app_ref (gpointer instance);
+void identity_manager_app_unref (gpointer instance);
+GParamSpec* param_spec_identity_manager_app (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
+void value_set_identity_manager_app (GValue* value, gpointer v_object);
+void value_take_identity_manager_app (GValue* value, gpointer v_object);
+gpointer value_get_identity_manager_app (const GValue* value);
+GType identity_manager_app_get_type (void) G_GNUC_CONST;
+#define TRUST_ANCHOR_CONFIRMATION_REQUEST_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_TRUST_ANCHOR_CONFIRMATION_REQUEST, TrustAnchorConfirmationRequestPrivate))
+enum  {
+       TRUST_ANCHOR_CONFIRMATION_REQUEST_DUMMY_PROPERTY
+};
+GType moonshot_logger_get_type (void) G_GNUC_CONST;
+MoonshotLogger* get_logger (const gchar* name);
+TrustAnchorConfirmationRequest* trust_anchor_confirmation_request_new (IdentityManagerApp* parent_app, const gchar* userid, const gchar* realm, const gchar* fingerprint);
+TrustAnchorConfirmationRequest* trust_anchor_confirmation_request_construct (GType object_type, IdentityManagerApp* parent_app, const gchar* userid, const gchar* realm, const gchar* fingerprint);
+void trust_anchor_confirmation_request_set_callback (TrustAnchorConfirmationRequest* self, TrustAnchorConfirmationCallback cb, void* cb_target, GDestroyNotify cb_target_destroy_notify);
+gboolean trust_anchor_confirmation_request_execute (TrustAnchorConfirmationRequest* self);
+GType id_card_get_type (void) G_GNUC_CONST;
+GType identity_manager_model_get_type (void) G_GNUC_CONST;
+GType identity_manager_view_get_type (void) G_GNUC_CONST;
+IdCard* identity_manager_model_find_id_card (IdentityManagerModel* self, const gchar* nai, gboolean force_flat_file_store);
+gboolean identity_manager_app_get_use_flat_file_store (IdentityManagerApp* self);
+void moonshot_logger_warn (MoonshotLogger* self, const gchar* message, GError* e);
+static void trust_anchor_confirmation_request_return_confirmation (TrustAnchorConfirmationRequest* self, gboolean confirmed);
+GType trust_anchor_get_type (void) G_GNUC_CONST;
+TrustAnchor* id_card_get_trust_anchor (IdCard* self);
+gboolean trust_anchor_is_empty (TrustAnchor* self);
+GType trust_anchor_trust_anchor_type_get_type (void) G_GNUC_CONST;
+TrustAnchorTrustAnchorType trust_anchor_get_anchor_type (TrustAnchor* self);
+void moonshot_logger_trace (MoonshotLogger* self, const gchar* message, GError* e);
+const gchar* trust_anchor_get_server_cert (TrustAnchor* self);
+gboolean identity_manager_app_get_headless (IdentityManagerApp* self);
+GType trust_anchor_dialog_get_type (void) G_GNUC_CONST;
+TrustAnchorDialog* trust_anchor_dialog_new (IdCard* card, const gchar* userid, const gchar* realm, const gchar* fingerprint);
+TrustAnchorDialog* trust_anchor_dialog_construct (GType object_type, IdCard* card, const gchar* userid, const gchar* realm, const gchar* fingerprint);
+void trust_anchor_update_server_fingerprint (TrustAnchor* self, const gchar* fingerprint);
+IdCard* identity_manager_model_update_card (IdentityManagerModel* self, IdCard* card);
+static gboolean __lambda21_ (TrustAnchorConfirmationRequest* self);
+static gboolean ___lambda21__gsource_func (gpointer self);
+static void trust_anchor_confirmation_request_finalize (GObject* obj);
+enum  {
+       TRUST_ANCHOR_DIALOG_DUMMY_PROPERTY
+};
+void make_color (guint16 red, guint16 green, guint16 blue, GdkColor* result);
+void set_bg_color (GtkWidget* w);
+const gchar* id_card_get_issuer (IdCard* self);
+GtkWidget* make_ta_fingerprint_widget (const gchar* server_cert, const gchar* label_text);
+static void trust_anchor_dialog_on_response (TrustAnchorDialog* self, GtkDialog* source, gint response_id);
+static void _trust_anchor_dialog_on_response_gtk_dialog_response (GtkDialog* _sender, gint response_id, gpointer self);
+static void trust_anchor_dialog_finalize (GObject* obj);
+
+
+static gpointer _identity_manager_app_ref0 (gpointer self) {
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       return self ? identity_manager_app_ref (self) : NULL;
+#line 252 "moonshot-trust-anchor-dialog.c"
+}
+
+
+TrustAnchorConfirmationRequest* trust_anchor_confirmation_request_construct (GType object_type, IdentityManagerApp* parent_app, const gchar* userid, const gchar* realm, const gchar* fingerprint) {
+       TrustAnchorConfirmationRequest * self = NULL;
+       IdentityManagerApp* _tmp0_ = NULL;
+       IdentityManagerApp* _tmp1_ = NULL;
+       const gchar* _tmp2_ = NULL;
+       gchar* _tmp3_ = NULL;
+       const gchar* _tmp4_ = NULL;
+       gchar* _tmp5_ = NULL;
+       const gchar* _tmp6_ = NULL;
+       gchar* _tmp7_ = NULL;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       g_return_val_if_fail (parent_app != NULL, NULL);
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       g_return_val_if_fail (userid != NULL, NULL);
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       g_return_val_if_fail (realm != NULL, NULL);
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       g_return_val_if_fail (fingerprint != NULL, NULL);
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       self = (TrustAnchorConfirmationRequest*) g_object_new (object_type, NULL);
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp0_ = parent_app;
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp1_ = _identity_manager_app_ref0 (_tmp0_);
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _identity_manager_app_unref0 (self->priv->parent_app);
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       self->priv->parent_app = _tmp1_;
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp2_ = userid;
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp3_ = g_strdup (_tmp2_);
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _g_free0 (self->priv->userid);
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       self->priv->userid = _tmp3_;
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp4_ = realm;
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp5_ = g_strdup (_tmp4_);
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _g_free0 (self->priv->realm);
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       self->priv->realm = _tmp5_;
+#line 55 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp6_ = fingerprint;
+#line 55 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp7_ = g_strdup (_tmp6_);
+#line 55 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _g_free0 (self->priv->fingerprint);
+#line 55 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       self->priv->fingerprint = _tmp7_;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       return self;
+#line 310 "moonshot-trust-anchor-dialog.c"
+}
+
+
+TrustAnchorConfirmationRequest* trust_anchor_confirmation_request_new (IdentityManagerApp* parent_app, const gchar* userid, const gchar* realm, const gchar* fingerprint) {
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       return trust_anchor_confirmation_request_construct (TYPE_TRUST_ANCHOR_CONFIRMATION_REQUEST, parent_app, userid, realm, fingerprint);
+#line 317 "moonshot-trust-anchor-dialog.c"
+}
+
+
+void trust_anchor_confirmation_request_set_callback (TrustAnchorConfirmationRequest* self, TrustAnchorConfirmationCallback cb, void* cb_target, GDestroyNotify cb_target_destroy_notify) {
+       TrustAnchorConfirmationCallback _tmp0_ = NULL;
+       void* _tmp0__target = NULL;
+       GDestroyNotify _tmp0__target_destroy_notify = NULL;
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       g_return_if_fail (self != NULL);
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp0_ = cb;
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp0__target = cb_target;
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp0__target_destroy_notify = cb_target_destroy_notify;
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       cb = NULL;
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       cb_target = NULL;
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       cb_target_destroy_notify = NULL;
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       (self->priv->callback_target_destroy_notify == NULL) ? NULL : (self->priv->callback_target_destroy_notify (self->priv->callback_target), NULL);
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       self->priv->callback = NULL;
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       self->priv->callback_target = NULL;
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       self->priv->callback_target_destroy_notify = NULL;
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       self->priv->callback = _tmp0_;
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       self->priv->callback_target = _tmp0__target;
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       self->priv->callback_target_destroy_notify = _tmp0__target_destroy_notify;
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       (cb_target_destroy_notify == NULL) ? NULL : (cb_target_destroy_notify (cb_target), NULL);
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       cb = NULL;
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       cb_target = NULL;
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       cb_target_destroy_notify = NULL;
+#line 361 "moonshot-trust-anchor-dialog.c"
+}
+
+
+static const gchar* string_to_string (const gchar* self) {
+       const gchar* result = NULL;
+#line 1420 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 1421 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       result = self;
+#line 1421 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       return result;
+#line 373 "moonshot-trust-anchor-dialog.c"
+}
+
+
+gboolean trust_anchor_confirmation_request_execute (TrustAnchorConfirmationRequest* self) {
+       gboolean result = FALSE;
+       gchar* nai = NULL;
+       const gchar* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+       gchar* _tmp2_ = NULL;
+       const gchar* _tmp3_ = NULL;
+       gchar* _tmp4_ = NULL;
+       gchar* _tmp5_ = NULL;
+       IdCard* card = NULL;
+       IdentityManagerApp* _tmp6_ = NULL;
+       IdentityManagerModel* _tmp7_ = NULL;
+       const gchar* _tmp8_ = NULL;
+       IdentityManagerApp* _tmp9_ = NULL;
+       gboolean _tmp10_ = FALSE;
+       gboolean _tmp11_ = FALSE;
+       IdCard* _tmp12_ = NULL;
+       IdCard* _tmp13_ = NULL;
+       gboolean _tmp19_ = FALSE;
+       IdCard* _tmp20_ = NULL;
+       TrustAnchor* _tmp21_ = NULL;
+       TrustAnchor* _tmp22_ = NULL;
+       gboolean _tmp23_ = FALSE;
+       MoonshotLogger* _tmp33_ = NULL;
+       IdCard* _tmp34_ = NULL;
+       TrustAnchor* _tmp35_ = NULL;
+       TrustAnchor* _tmp36_ = NULL;
+       const gchar* _tmp37_ = NULL;
+       const gchar* _tmp38_ = NULL;
+       const gchar* _tmp39_ = NULL;
+       gchar* _tmp40_ = NULL;
+       gchar* _tmp41_ = NULL;
+       IdCard* _tmp42_ = NULL;
+       TrustAnchor* _tmp43_ = NULL;
+       TrustAnchor* _tmp44_ = NULL;
+       const gchar* _tmp45_ = NULL;
+       const gchar* _tmp46_ = NULL;
+       const gchar* _tmp47_ = NULL;
+       IdentityManagerApp* _tmp53_ = NULL;
+       gboolean _tmp54_ = FALSE;
+       gboolean _tmp55_ = FALSE;
+       TrustAnchorDialog* dialog = NULL;
+       IdCard* _tmp57_ = NULL;
+       const gchar* _tmp58_ = NULL;
+       const gchar* _tmp59_ = NULL;
+       const gchar* _tmp60_ = NULL;
+       TrustAnchorDialog* _tmp61_ = NULL;
+       gint response = 0;
+       TrustAnchorDialog* _tmp62_ = NULL;
+       gint _tmp63_ = 0;
+       TrustAnchorDialog* _tmp64_ = NULL;
+       gboolean is_confirmed = FALSE;
+       gint _tmp65_ = 0;
+       gboolean _tmp66_ = FALSE;
+       gboolean _tmp77_ = FALSE;
+#line 67 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       g_return_val_if_fail (self != NULL, FALSE);
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp0_ = self->priv->userid;
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp1_ = g_strconcat (_tmp0_, "@", NULL);
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp2_ = _tmp1_;
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp3_ = self->priv->realm;
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp4_ = g_strconcat (_tmp2_, _tmp3_, NULL);
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp5_ = _tmp4_;
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _g_free0 (_tmp2_);
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       nai = _tmp5_;
+#line 70 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp6_ = self->priv->parent_app;
+#line 70 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp7_ = _tmp6_->model;
+#line 70 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp8_ = nai;
+#line 70 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp9_ = self->priv->parent_app;
+#line 70 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp10_ = identity_manager_app_get_use_flat_file_store (_tmp9_);
+#line 70 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp11_ = _tmp10_;
+#line 70 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp12_ = identity_manager_model_find_id_card (_tmp7_, _tmp8_, _tmp11_);
+#line 70 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       card = _tmp12_;
+#line 71 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp13_ = card;
+#line 71 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       if (_tmp13_ == NULL) {
+#line 470 "moonshot-trust-anchor-dialog.c"
+               MoonshotLogger* _tmp14_ = NULL;
+               const gchar* _tmp15_ = NULL;
+               const gchar* _tmp16_ = NULL;
+               gchar* _tmp17_ = NULL;
+               gchar* _tmp18_ = NULL;
+#line 72 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp14_ = trust_anchor_confirmation_request_logger;
+#line 72 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp15_ = nai;
+#line 72 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp16_ = string_to_string (_tmp15_);
+#line 72 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp17_ = g_strconcat ("execute: Could not find ID card for NAI ", _tmp16_, "; returning false.", NULL);
+#line 72 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp18_ = _tmp17_;
+#line 72 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               moonshot_logger_warn (_tmp14_, _tmp18_, NULL);
+#line 72 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _g_free0 (_tmp18_);
+#line 73 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               trust_anchor_confirmation_request_return_confirmation (self, FALSE);
+#line 74 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               result = FALSE;
+#line 74 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _g_object_unref0 (card);
+#line 74 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _g_free0 (nai);
+#line 74 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               return result;
+#line 500 "moonshot-trust-anchor-dialog.c"
+       }
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp20_ = card;
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp21_ = id_card_get_trust_anchor (_tmp20_);
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp22_ = _tmp21_;
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp23_ = trust_anchor_is_empty (_tmp22_);
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       if (_tmp23_) {
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp19_ = TRUE;
+#line 514 "moonshot-trust-anchor-dialog.c"
+       } else {
+               IdCard* _tmp24_ = NULL;
+               TrustAnchor* _tmp25_ = NULL;
+               TrustAnchor* _tmp26_ = NULL;
+               TrustAnchorTrustAnchorType _tmp27_ = 0;
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp24_ = card;
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp25_ = id_card_get_trust_anchor (_tmp24_);
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp26_ = _tmp25_;
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp27_ = trust_anchor_get_anchor_type (_tmp26_);
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp19_ = _tmp27_ == TRUST_ANCHOR_TRUST_ANCHOR_TYPE_SERVER_CERT;
+#line 530 "moonshot-trust-anchor-dialog.c"
+       }
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       if (!_tmp19_) {
+#line 534 "moonshot-trust-anchor-dialog.c"
+               MoonshotLogger* _tmp28_ = NULL;
+               const gchar* _tmp29_ = NULL;
+               const gchar* _tmp30_ = NULL;
+               gchar* _tmp31_ = NULL;
+               gchar* _tmp32_ = NULL;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp28_ = trust_anchor_confirmation_request_logger;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp29_ = nai;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp30_ = string_to_string (_tmp29_);
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp31_ = g_strconcat ("execute: Trust anchor type for NAI ", _tmp30_, " is not empty or SERVER_CERT; returning true.", NULL);
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp32_ = _tmp31_;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               moonshot_logger_warn (_tmp28_, _tmp32_, NULL);
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _g_free0 (_tmp32_);
+#line 79 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               trust_anchor_confirmation_request_return_confirmation (self, TRUE);
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               result = FALSE;
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _g_object_unref0 (card);
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _g_free0 (nai);
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               return result;
+#line 564 "moonshot-trust-anchor-dialog.c"
+       }
+#line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp33_ = trust_anchor_confirmation_request_logger;
+#line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp34_ = card;
+#line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp35_ = id_card_get_trust_anchor (_tmp34_);
+#line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp36_ = _tmp35_;
+#line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp37_ = trust_anchor_get_server_cert (_tmp36_);
+#line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp38_ = _tmp37_;
+#line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp39_ = self->priv->fingerprint;
+#line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp40_ = g_strdup_printf ("execute: expected cert='%s'; fingerprint='%s'", _tmp38_, _tmp39_);
+#line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp41_ = _tmp40_;
+#line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       moonshot_logger_trace (_tmp33_, _tmp41_, NULL);
+#line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _g_free0 (_tmp41_);
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp42_ = card;
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp43_ = id_card_get_trust_anchor (_tmp42_);
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp44_ = _tmp43_;
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp45_ = trust_anchor_get_server_cert (_tmp44_);
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp46_ = _tmp45_;
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp47_ = self->priv->fingerprint;
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       if (g_strcmp0 (_tmp46_, _tmp47_) == 0) {
+#line 602 "moonshot-trust-anchor-dialog.c"
+               MoonshotLogger* _tmp48_ = NULL;
+               const gchar* _tmp49_ = NULL;
+               const gchar* _tmp50_ = NULL;
+               gchar* _tmp51_ = NULL;
+               gchar* _tmp52_ = NULL;
+#line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp48_ = trust_anchor_confirmation_request_logger;
+#line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp49_ = nai;
+#line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp50_ = string_to_string (_tmp49_);
+#line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp51_ = g_strconcat ("execute: Fingerprint for ", _tmp50_, " matches stored value; returning true.", NULL);
+#line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp52_ = _tmp51_;
+#line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               moonshot_logger_trace (_tmp48_, _tmp52_, NULL);
+#line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _g_free0 (_tmp52_);
+#line 86 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               trust_anchor_confirmation_request_return_confirmation (self, TRUE);
+#line 87 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               result = FALSE;
+#line 87 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _g_object_unref0 (card);
+#line 87 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _g_free0 (nai);
+#line 87 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               return result;
+#line 632 "moonshot-trust-anchor-dialog.c"
+       }
+#line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp53_ = self->priv->parent_app;
+#line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp54_ = identity_manager_app_get_headless (_tmp53_);
+#line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp55_ = _tmp54_;
+#line 90 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       if (_tmp55_) {
+#line 642 "moonshot-trust-anchor-dialog.c"
+               MoonshotLogger* _tmp56_ = NULL;
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp56_ = trust_anchor_confirmation_request_logger;
+#line 91 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               moonshot_logger_trace (_tmp56_, "execute: Running in headless mode; returning false.", NULL);
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               trust_anchor_confirmation_request_return_confirmation (self, FALSE);
+#line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               result = FALSE;
+#line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _g_object_unref0 (card);
+#line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _g_free0 (nai);
+#line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               return result;
+#line 658 "moonshot-trust-anchor-dialog.c"
+       }
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp57_ = card;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp58_ = self->priv->userid;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp59_ = self->priv->realm;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp60_ = self->priv->fingerprint;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp61_ = trust_anchor_dialog_new (_tmp57_, _tmp58_, _tmp59_, _tmp60_);
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       g_object_ref_sink (_tmp61_);
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       dialog = _tmp61_;
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp62_ = dialog;
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp63_ = gtk_dialog_run ((GtkDialog*) _tmp62_);
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       response = _tmp63_;
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp64_ = dialog;
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       gtk_object_destroy ((GtkObject*) _tmp64_);
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp65_ = response;
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       is_confirmed = _tmp65_ == ((gint) GTK_RESPONSE_OK);
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp66_ = is_confirmed;
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       if (_tmp66_) {
+#line 692 "moonshot-trust-anchor-dialog.c"
+               MoonshotLogger* _tmp67_ = NULL;
+               IdCard* _tmp68_ = NULL;
+               TrustAnchor* _tmp69_ = NULL;
+               TrustAnchor* _tmp70_ = NULL;
+               const gchar* _tmp71_ = NULL;
+               IdentityManagerApp* _tmp72_ = NULL;
+               IdentityManagerModel* _tmp73_ = NULL;
+               IdCard* _tmp74_ = NULL;
+               IdCard* _tmp75_ = NULL;
+               IdCard* _tmp76_ = NULL;
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp67_ = trust_anchor_confirmation_request_logger;
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               moonshot_logger_trace (_tmp67_, "execute: Fingerprint confirmed; updating stored value.", NULL);
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp68_ = card;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp69_ = id_card_get_trust_anchor (_tmp68_);
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp70_ = _tmp69_;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp71_ = self->priv->fingerprint;
+#line 104 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               trust_anchor_update_server_fingerprint (_tmp70_, _tmp71_);
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp72_ = self->priv->parent_app;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp73_ = _tmp72_->model;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp74_ = card;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp75_ = identity_manager_model_update_card (_tmp73_, _tmp74_);
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp76_ = _tmp75_;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _g_object_unref0 (_tmp76_);
+#line 729 "moonshot-trust-anchor-dialog.c"
+       }
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp77_ = is_confirmed;
+#line 108 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       trust_anchor_confirmation_request_return_confirmation (self, _tmp77_);
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       result = FALSE;
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _g_object_unref0 (dialog);
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _g_object_unref0 (card);
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _g_free0 (nai);
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       return result;
+#line 745 "moonshot-trust-anchor-dialog.c"
+}
+
+
+static gchar* bool_to_string (gboolean self) {
+       gchar* result = NULL;
+#line 37 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       if (self) {
+#line 753 "moonshot-trust-anchor-dialog.c"
+               gchar* _tmp0_ = NULL;
+#line 38 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp0_ = g_strdup ("true");
+#line 38 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               result = _tmp0_;
+#line 38 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               return result;
+#line 761 "moonshot-trust-anchor-dialog.c"
+       } else {
+               gchar* _tmp1_ = NULL;
+#line 40 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp1_ = g_strdup ("false");
+#line 40 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               result = _tmp1_;
+#line 40 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               return result;
+#line 770 "moonshot-trust-anchor-dialog.c"
+       }
+}
+
+
+static gboolean __lambda21_ (TrustAnchorConfirmationRequest* self) {
+       gboolean result = FALSE;
+       MoonshotLogger* _tmp0_ = NULL;
+       TrustAnchorConfirmationCallback _tmp1_ = NULL;
+       void* _tmp1__target = NULL;
+#line 126 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp0_ = trust_anchor_confirmation_request_logger;
+#line 126 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       moonshot_logger_trace (_tmp0_, "return_confirmation[Idle handler]: invoking callback", NULL);
+#line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp1_ = self->priv->callback;
+#line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp1__target = self->priv->callback_target;
+#line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp1_ (self, _tmp1__target);
+#line 128 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       result = FALSE;
+#line 128 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       return result;
+#line 794 "moonshot-trust-anchor-dialog.c"
+}
+
+
+static gboolean ___lambda21__gsource_func (gpointer self) {
+       gboolean result;
+       result = __lambda21_ ((TrustAnchorConfirmationRequest*) self);
+#line 124 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       return result;
+#line 803 "moonshot-trust-anchor-dialog.c"
+}
+
+
+static void trust_anchor_confirmation_request_return_confirmation (TrustAnchorConfirmationRequest* self, gboolean confirmed) {
+       TrustAnchorConfirmationCallback _tmp0_ = NULL;
+       void* _tmp0__target = NULL;
+       gboolean _tmp1_ = FALSE;
+       MoonshotLogger* _tmp2_ = NULL;
+       gboolean _tmp3_ = FALSE;
+       gchar* _tmp4_ = NULL;
+       gchar* _tmp5_ = NULL;
+       gchar* _tmp6_ = NULL;
+       gchar* _tmp7_ = NULL;
+#line 116 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       g_return_if_fail (self != NULL);
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp0_ = self->priv->callback;
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp0__target = self->priv->callback_target;
+#line 117 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       g_return_if_fail (_tmp0_ != NULL);
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp1_ = confirmed;
+#line 119 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       self->confirmed = _tmp1_;
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp2_ = trust_anchor_confirmation_request_logger;
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp3_ = confirmed;
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp4_ = bool_to_string (_tmp3_);
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp5_ = _tmp4_;
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp6_ = g_strconcat ("return_confirmation: confirmed=", _tmp5_, NULL);
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp7_ = _tmp6_;
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       moonshot_logger_trace (_tmp2_, _tmp7_, NULL);
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _g_free0 (_tmp7_);
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _g_free0 (_tmp5_);
+#line 124 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       g_idle_add_full (G_PRIORITY_DEFAULT_IDLE, ___lambda21__gsource_func, g_object_ref (self), g_object_unref);
+#line 849 "moonshot-trust-anchor-dialog.c"
+}
+
+
+static void trust_anchor_confirmation_request_class_init (TrustAnchorConfirmationRequestClass * klass) {
+       MoonshotLogger* _tmp0_ = NULL;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       trust_anchor_confirmation_request_parent_class = g_type_class_peek_parent (klass);
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       g_type_class_add_private (klass, sizeof (TrustAnchorConfirmationRequestPrivate));
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       G_OBJECT_CLASS (klass)->finalize = trust_anchor_confirmation_request_finalize;
+#line 37 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp0_ = get_logger ("TrustAnchorConfirmationRequest");
+#line 37 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       trust_anchor_confirmation_request_logger = _tmp0_;
+#line 865 "moonshot-trust-anchor-dialog.c"
+}
+
+
+static void trust_anchor_confirmation_request_instance_init (TrustAnchorConfirmationRequest * self) {
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       self->priv = TRUST_ANCHOR_CONFIRMATION_REQUEST_GET_PRIVATE (self);
+#line 43 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       self->confirmed = FALSE;
+#line 45 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       self->priv->callback = NULL;
+#line 45 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       self->priv->callback_target = self;
+#line 45 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       self->priv->callback_target_destroy_notify = NULL;
+#line 880 "moonshot-trust-anchor-dialog.c"
+}
+
+
+static void trust_anchor_confirmation_request_finalize (GObject* obj) {
+       TrustAnchorConfirmationRequest * self;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_TRUST_ANCHOR_CONFIRMATION_REQUEST, TrustAnchorConfirmationRequest);
+#line 39 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _identity_manager_app_unref0 (self->priv->parent_app);
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _g_free0 (self->priv->userid);
+#line 41 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _g_free0 (self->priv->realm);
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _g_free0 (self->priv->fingerprint);
+#line 45 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       (self->priv->callback_target_destroy_notify == NULL) ? NULL : (self->priv->callback_target_destroy_notify (self->priv->callback_target), NULL);
+#line 45 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       self->priv->callback = NULL;
+#line 45 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       self->priv->callback_target = NULL;
+#line 45 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       self->priv->callback_target_destroy_notify = NULL;
+#line 36 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       G_OBJECT_CLASS (trust_anchor_confirmation_request_parent_class)->finalize (obj);
+#line 906 "moonshot-trust-anchor-dialog.c"
+}
+
+
+GType trust_anchor_confirmation_request_get_type (void) {
+       static volatile gsize trust_anchor_confirmation_request_type_id__volatile = 0;
+       if (g_once_init_enter (&trust_anchor_confirmation_request_type_id__volatile)) {
+               static const GTypeInfo g_define_type_info = { sizeof (TrustAnchorConfirmationRequestClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) trust_anchor_confirmation_request_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (TrustAnchorConfirmationRequest), 0, (GInstanceInitFunc) trust_anchor_confirmation_request_instance_init, NULL };
+               GType trust_anchor_confirmation_request_type_id;
+               trust_anchor_confirmation_request_type_id = g_type_register_static (G_TYPE_OBJECT, "TrustAnchorConfirmationRequest", &g_define_type_info, 0);
+               g_once_init_leave (&trust_anchor_confirmation_request_type_id__volatile, trust_anchor_confirmation_request_type_id);
+       }
+       return trust_anchor_confirmation_request_type_id__volatile;
+}
+
+
+static gpointer _g_object_ref0 (gpointer self) {
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       return self ? g_object_ref (self) : NULL;
+#line 925 "moonshot-trust-anchor-dialog.c"
+}
+
+
+static void _trust_anchor_dialog_on_response_gtk_dialog_response (GtkDialog* _sender, gint response_id, gpointer self) {
+#line 214 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       trust_anchor_dialog_on_response ((TrustAnchorDialog*) self, _sender, response_id);
+#line 932 "moonshot-trust-anchor-dialog.c"
+}
+
+
+TrustAnchorDialog* trust_anchor_dialog_construct (GType object_type, IdCard* card, const gchar* userid, const gchar* realm, const gchar* fingerprint) {
+       TrustAnchorDialog * self = NULL;
+       gchar* server_ta_label_text = NULL;
+       const gchar* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+       const gchar* _tmp2_ = NULL;
+       const gchar* _tmp3_ = NULL;
+       const gchar* _tmp4_ = NULL;
+       GtkWidget* content_area = NULL;
+       GtkWidget* _tmp5_ = NULL;
+       GtkWidget* _tmp6_ = NULL;
+       GtkWidget* _tmp7_ = NULL;
+       GtkWidget* _tmp8_ = NULL;
+       GtkLabel* dialog_label = NULL;
+       GtkLabel* _tmp9_ = NULL;
+       GtkLabel* _tmp10_ = NULL;
+       gchar* label_markup = NULL;
+       IdCard* _tmp11_ = NULL;
+       TrustAnchor* _tmp12_ = NULL;
+       TrustAnchor* _tmp13_ = NULL;
+       const gchar* _tmp14_ = NULL;
+       const gchar* _tmp15_ = NULL;
+       GtkLabel* _tmp35_ = NULL;
+       const gchar* _tmp36_ = NULL;
+       GtkLabel* _tmp37_ = NULL;
+       GtkLabel* _tmp38_ = NULL;
+       GtkLabel* user_label = NULL;
+       const gchar* _tmp39_ = NULL;
+       const gchar* _tmp40_ = NULL;
+       gchar* _tmp41_ = NULL;
+       gchar* _tmp42_ = NULL;
+       GtkLabel* _tmp43_ = NULL;
+       GtkLabel* _tmp44_ = NULL;
+       GtkLabel* realm_label = NULL;
+       const gchar* _tmp45_ = NULL;
+       const gchar* _tmp46_ = NULL;
+       gchar* _tmp47_ = NULL;
+       gchar* _tmp48_ = NULL;
+       GtkLabel* _tmp49_ = NULL;
+       GtkLabel* _tmp50_ = NULL;
+       gchar* confirm_text = NULL;
+       const gchar* _tmp51_ = NULL;
+       const gchar* _tmp52_ = NULL;
+       gchar* _tmp53_ = NULL;
+       gchar* _tmp54_ = NULL;
+       const gchar* _tmp55_ = NULL;
+       gchar* _tmp56_ = NULL;
+       gchar* _tmp57_ = NULL;
+       GtkLabel* confirm_label = NULL;
+       GtkLabel* _tmp58_ = NULL;
+       GtkWidget* trust_anchor_display = NULL;
+       const gchar* _tmp59_ = NULL;
+       const gchar* _tmp60_ = NULL;
+       GtkWidget* _tmp61_ = NULL;
+       GtkVBox* vbox = NULL;
+       GtkVBox* _tmp62_ = NULL;
+       GtkLabel* _tmp63_ = NULL;
+       GtkWidget* _tmp64_ = NULL;
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       g_return_val_if_fail (card != NULL, NULL);
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       g_return_val_if_fail (userid != NULL, NULL);
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       g_return_val_if_fail (realm != NULL, NULL);
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       g_return_val_if_fail (fingerprint != NULL, NULL);
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       self = (TrustAnchorDialog*) g_object_new (object_type, NULL);
+#line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp0_ = _ ("Server's trust anchor certificate (SHA-256 fingerprint):");
+#line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp1_ = g_strdup (_tmp0_);
+#line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       server_ta_label_text = _tmp1_;
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp2_ = _ ("Trust Anchor");
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       gtk_window_set_title ((GtkWindow*) self, _tmp2_);
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       gtk_window_set_modal ((GtkWindow*) self, TRUE);
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       set_bg_color ((GtkWidget*) self);
+#line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp3_ = _ ("Cancel");
+#line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp4_ = _ ("Confirm");
+#line 154 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       gtk_dialog_add_buttons ((GtkDialog*) self, _tmp3_, GTK_RESPONSE_CANCEL, _tmp4_, GTK_RESPONSE_OK, NULL);
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       gtk_dialog_set_default_response ((GtkDialog*) self, (gint) GTK_RESPONSE_CANCEL);
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp5_ = gtk_dialog_get_content_area ((GtkDialog*) self);
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp6_ = _g_object_ref0 (_tmp5_);
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       content_area = _tmp6_;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp7_ = content_area;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       gtk_box_set_spacing (G_TYPE_CHECK_INSTANCE_CAST (_tmp7_, GTK_TYPE_BOX, GtkBox), 12);
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp8_ = content_area;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       set_bg_color (_tmp8_);
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp9_ = (GtkLabel*) gtk_label_new ("");
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       g_object_ref_sink (_tmp9_);
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       dialog_label = _tmp9_;
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp10_ = dialog_label;
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       gtk_misc_set_alignment ((GtkMisc*) _tmp10_, (gfloat) 0, (gfloat) 0);
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp11_ = card;
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp12_ = id_card_get_trust_anchor (_tmp11_);
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp13_ = _tmp12_;
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp14_ = trust_anchor_get_server_cert (_tmp13_);
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp15_ = _tmp14_;
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       if (g_strcmp0 (_tmp15_, "") == 0) {
+#line 1062 "moonshot-trust-anchor-dialog.c"
+               const gchar* _tmp16_ = NULL;
+               gchar* _tmp17_ = NULL;
+               gchar* _tmp18_ = NULL;
+               gchar* _tmp19_ = NULL;
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp16_ = _ ("You are using this identity for the first time with the following trus" \
+"t anchor:");
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp17_ = g_strconcat ("<span font-weight='heavy'>", _tmp16_, NULL);
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp18_ = _tmp17_;
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp19_ = g_strconcat (_tmp18_, "</span>", NULL);
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _g_free0 (label_markup);
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               label_markup = _tmp19_;
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _g_free0 (_tmp18_);
+#line 1081 "moonshot-trust-anchor-dialog.c"
+       } else {
+               const gchar* _tmp20_ = NULL;
+               IdCard* _tmp21_ = NULL;
+               const gchar* _tmp22_ = NULL;
+               const gchar* _tmp23_ = NULL;
+               gchar* _tmp24_ = NULL;
+               gchar* _tmp25_ = NULL;
+               gchar* _tmp26_ = NULL;
+               gchar* _tmp27_ = NULL;
+               const gchar* _tmp28_ = NULL;
+               gchar* _tmp29_ = NULL;
+               gchar* _tmp30_ = NULL;
+               const gchar* _tmp31_ = NULL;
+               gchar* _tmp32_ = NULL;
+               gchar* _tmp33_ = NULL;
+               gchar* _tmp34_ = NULL;
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp20_ = _ ("WARNING: The certificate we received for the authentication server for" \
+" %s");
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp21_ = card;
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp22_ = id_card_get_issuer (_tmp21_);
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp23_ = _tmp22_;
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp24_ = g_strdup_printf (_tmp20_, _tmp23_);
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp25_ = _tmp24_;
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp26_ = g_strconcat ("<span font-weight='heavy'>", _tmp25_, NULL);
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp27_ = _tmp26_;
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp28_ = _ (" is different than expected.  Either the server certificate has change" \
+"d, or an");
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp29_ = g_strconcat (_tmp27_, _tmp28_, NULL);
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp30_ = _tmp29_;
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp31_ = _ (" attack may be underway.  If you proceed to the wrong server, your log" \
+"in credentials may be compromised.");
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp32_ = g_strconcat (_tmp30_, _tmp31_, NULL);
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp33_ = _tmp32_;
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _tmp34_ = g_strconcat (_tmp33_, "</span>", NULL);
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _g_free0 (label_markup);
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               label_markup = _tmp34_;
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _g_free0 (_tmp33_);
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _g_free0 (_tmp30_);
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _g_free0 (_tmp27_);
+#line 173 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               _g_free0 (_tmp25_);
+#line 1140 "moonshot-trust-anchor-dialog.c"
+       }
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp35_ = dialog_label;
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp36_ = label_markup;
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       gtk_label_set_markup (_tmp35_, _tmp36_);
+#line 181 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp37_ = dialog_label;
+#line 181 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       gtk_label_set_line_wrap (_tmp37_, TRUE);
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp38_ = dialog_label;
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       gtk_label_set_width_chars (_tmp38_, 60);
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp39_ = _ ("Username: ");
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp40_ = userid;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp41_ = g_strconcat (_tmp39_, _tmp40_, NULL);
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp42_ = _tmp41_;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp43_ = (GtkLabel*) gtk_label_new (_tmp42_);
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       g_object_ref_sink (_tmp43_);
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp44_ = _tmp43_;
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _g_free0 (_tmp42_);
+#line 184 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       user_label = _tmp44_;
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       gtk_misc_set_alignment ((GtkMisc*) user_label, (gfloat) 0, 0.5f);
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp45_ = _ ("Realm: ");
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp46_ = realm;
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp47_ = g_strconcat (_tmp45_, _tmp46_, NULL);
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp48_ = _tmp47_;
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp49_ = (GtkLabel*) gtk_label_new (_tmp48_);
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       g_object_ref_sink (_tmp49_);
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp50_ = _tmp49_;
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _g_free0 (_tmp48_);
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       realm_label = _tmp50_;
+#line 188 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       gtk_misc_set_alignment ((GtkMisc*) realm_label, (gfloat) 0, 0.5f);
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp51_ = _ ("\n" \
+"Please check with your realm administrator for the correct fingerprint");
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp52_ = _ (" for your authentication server.  If it matches the above fingerprint,");
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp53_ = g_strconcat (_tmp51_, _tmp52_, NULL);
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp54_ = _tmp53_;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp55_ = _ (" confirm the change.  If not, then cancel.");
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp56_ = g_strconcat (_tmp54_, _tmp55_, NULL);
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp57_ = _tmp56_;
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _g_free0 (_tmp54_);
+#line 190 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       confirm_text = _tmp57_;
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp58_ = (GtkLabel*) gtk_label_new (confirm_text);
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       g_object_ref_sink (_tmp58_);
+#line 194 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       confirm_label = _tmp58_;
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       gtk_misc_set_alignment ((GtkMisc*) confirm_label, (gfloat) 0, 0.5f);
+#line 196 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       gtk_label_set_line_wrap (confirm_label, TRUE);
+#line 197 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       gtk_label_set_width_chars (confirm_label, 60);
+#line 199 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp59_ = fingerprint;
+#line 199 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp60_ = server_ta_label_text;
+#line 199 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp61_ = make_ta_fingerprint_widget (_tmp59_, _tmp60_);
+#line 199 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       trust_anchor_display = _tmp61_;
+#line 201 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp62_ = (GtkVBox*) gtk_vbox_new (FALSE, 0);
+#line 201 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       g_object_ref_sink (_tmp62_);
+#line 201 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       vbox = _tmp62_;
+#line 202 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       gtk_container_set_border_width ((GtkContainer*) vbox, (guint) 6);
+#line 203 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp63_ = dialog_label;
+#line 203 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       gtk_box_pack_start ((GtkBox*) vbox, (GtkWidget*) _tmp63_, TRUE, TRUE, (guint) 12);
+#line 204 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       gtk_box_pack_start ((GtkBox*) vbox, (GtkWidget*) user_label, TRUE, TRUE, (guint) 2);
+#line 205 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       gtk_box_pack_start ((GtkBox*) vbox, (GtkWidget*) realm_label, TRUE, TRUE, (guint) 2);
+#line 206 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       gtk_box_pack_start ((GtkBox*) vbox, trust_anchor_display, TRUE, TRUE, (guint) 0);
+#line 207 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       gtk_box_pack_start ((GtkBox*) vbox, (GtkWidget*) confirm_label, TRUE, TRUE, (guint) 12);
+#line 209 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp64_ = content_area;
+#line 209 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       gtk_container_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp64_, GTK_TYPE_CONTAINER, GtkContainer), (GtkWidget*) vbox);
+#line 211 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       gtk_container_set_border_width ((GtkContainer*) self, (guint) 6);
+#line 212 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       gtk_window_set_resizable ((GtkWindow*) self, FALSE);
+#line 214 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       g_signal_connect_object ((GtkDialog*) self, "response", (GCallback) _trust_anchor_dialog_on_response_gtk_dialog_response, self, 0);
+#line 216 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       gtk_widget_show_all ((GtkWidget*) self);
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _g_object_unref0 (vbox);
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _g_object_unref0 (trust_anchor_display);
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _g_object_unref0 (confirm_label);
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _g_free0 (confirm_text);
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _g_object_unref0 (realm_label);
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _g_object_unref0 (user_label);
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _g_free0 (label_markup);
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _g_object_unref0 (dialog_label);
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _g_object_unref0 (content_area);
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _g_free0 (server_ta_label_text);
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       return self;
+#line 1288 "moonshot-trust-anchor-dialog.c"
+}
+
+
+TrustAnchorDialog* trust_anchor_dialog_new (IdCard* card, const gchar* userid, const gchar* realm, const gchar* fingerprint) {
+#line 142 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       return trust_anchor_dialog_construct (TYPE_TRUST_ANCHOR_DIALOG, card, userid, realm, fingerprint);
+#line 1295 "moonshot-trust-anchor-dialog.c"
+}
+
+
+static void trust_anchor_dialog_on_response (TrustAnchorDialog* self, GtkDialog* source, gint response_id) {
+       gint _tmp0_ = 0;
+#line 219 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       g_return_if_fail (self != NULL);
+#line 219 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       g_return_if_fail (source != NULL);
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       _tmp0_ = response_id;
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       switch (_tmp0_) {
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               case GTK_RESPONSE_OK:
+#line 1311 "moonshot-trust-anchor-dialog.c"
+               {
+#line 223 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+                       self->complete = TRUE;
+#line 224 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+                       break;
+#line 1317 "moonshot-trust-anchor-dialog.c"
+               }
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               case GTK_RESPONSE_CANCEL:
+#line 1321 "moonshot-trust-anchor-dialog.c"
+               {
+#line 226 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+                       self->complete = TRUE;
+#line 227 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+                       break;
+#line 1327 "moonshot-trust-anchor-dialog.c"
+               }
+               default:
+#line 221 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+               break;
+#line 1332 "moonshot-trust-anchor-dialog.c"
+       }
+}
+
+
+static void trust_anchor_dialog_class_init (TrustAnchorDialogClass * klass) {
+       GdkColor _tmp0_ = {0};
+#line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       trust_anchor_dialog_parent_class = g_type_class_peek_parent (klass);
+#line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       G_OBJECT_CLASS (klass)->finalize = trust_anchor_dialog_finalize;
+#line 138 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       make_color ((guint16) 65535, (guint16) 65535, (guint16) 65535, &_tmp0_);
+#line 138 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       trust_anchor_dialog_white = _tmp0_;
+#line 1347 "moonshot-trust-anchor-dialog.c"
+}
+
+
+static void trust_anchor_dialog_instance_init (TrustAnchorDialog * self) {
+#line 140 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       self->complete = FALSE;
+#line 1354 "moonshot-trust-anchor-dialog.c"
+}
+
+
+static void trust_anchor_dialog_finalize (GObject* obj) {
+       TrustAnchorDialog * self;
+#line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_TRUST_ANCHOR_DIALOG, TrustAnchorDialog);
+#line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-trust-anchor-dialog.vala"
+       G_OBJECT_CLASS (trust_anchor_dialog_parent_class)->finalize (obj);
+#line 1364 "moonshot-trust-anchor-dialog.c"
+}
+
+
+GType trust_anchor_dialog_get_type (void) {
+       static volatile gsize trust_anchor_dialog_type_id__volatile = 0;
+       if (g_once_init_enter (&trust_anchor_dialog_type_id__volatile)) {
+               static const GTypeInfo g_define_type_info = { sizeof (TrustAnchorDialogClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) trust_anchor_dialog_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (TrustAnchorDialog), 0, (GInstanceInitFunc) trust_anchor_dialog_instance_init, NULL };
+               GType trust_anchor_dialog_type_id;
+               trust_anchor_dialog_type_id = g_type_register_static (GTK_TYPE_DIALOG, "TrustAnchorDialog", &g_define_type_info, 0);
+               g_once_init_leave (&trust_anchor_dialog_type_id__volatile, trust_anchor_dialog_type_id);
+       }
+       return trust_anchor_dialog_type_id__volatile;
+}
+
+
+
diff --git a/src/moonshot-utils.c b/src/moonshot-utils.c
new file mode 100644 (file)
index 0000000..38ae29e
--- /dev/null
@@ -0,0 +1,1119 @@
+/* moonshot-utils.c generated by valac 0.34.9, the Vala compiler
+ * generated from moonshot-utils.vala, do not modify */
+
+/*
+ * Copyright (c) 2011-2016, JANET(UK)
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * 3. Neither the name of JANET(UK) nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+*/
+
+#include <glib.h>
+#include <glib-object.h>
+#include <stdlib.h>
+#include <string.h>
+#include <gtk/gtk.h>
+#include <gdk-pixbuf/gdk-pixbuf.h>
+#include <stdio.h>
+#include <glib/gstdio.h>
+#include <gdk/gdk.h>
+#include <atk/atk.h>
+#include <glib/gi18n-lib.h>
+#include <float.h>
+#include <math.h>
+#include <pango/pango.h>
+
+
+#define TYPE_ID_CARD (id_card_get_type ())
+#define ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ID_CARD, IdCard))
+#define ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ID_CARD, IdCardClass))
+#define IS_ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ID_CARD))
+#define IS_ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ID_CARD))
+#define ID_CARD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ID_CARD, IdCardClass))
+
+typedef struct _IdCard IdCard;
+typedef struct _IdCardClass IdCardClass;
+#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
+#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))
+#define _fclose0(var) ((var == NULL) ? NULL : (var = (fclose (var), NULL)))
+#define _g_free0(var) (var = (g_free (var), NULL))
+#define _g_string_free0(var) ((var == NULL) ? NULL : (var = (g_string_free (var, TRUE), NULL)))
+#define __vala_PangoFontDescription_free0(var) ((var == NULL) ? NULL : (var = (_vala_PangoFontDescription_free (var), NULL)))
+
+
+extern gboolean gtk_available;
+gboolean gtk_available = FALSE;
+extern GdkColor white;
+GdkColor white = {0};
+
+GdkPixbuf* find_icon_sized (const gchar* name, GtkIconSize icon_size);
+GdkPixbuf* find_icon (const gchar* name, gint size);
+GType id_card_get_type (void) G_GNUC_CONST;
+GdkPixbuf* get_pixbuf (IdCard* id);
+const gchar* GetUserName (void);
+const gchar* GetFlatStoreUsersFilePath (void);
+gboolean UserForcesFlatFileStore (void);
+void make_color (guint16 red, guint16 green, guint16 blue, GdkColor* result);
+void set_atk_relation (GtkWidget* widget, GtkWidget* target_widget, AtkRelationType relationship);
+GtkWidget* make_ta_fingerprint_widget (const gchar* server_cert, const gchar* label_text);
+gchar* colonize (const gchar* input, gint bytes_per_line);
+static void _vala_PangoFontDescription_free (PangoFontDescription* self);
+void clear_password_entry (GtkEntry* entry);
+void set_bg_color (GtkWidget* w);
+
+
+GdkPixbuf* find_icon_sized (const gchar* name, GtkIconSize icon_size) {
+       GdkPixbuf* result = NULL;
+       gint width = 0;
+       gint height = 0;
+       GtkIconSize _tmp0_ = 0;
+       gint _tmp1_ = 0;
+       gint _tmp2_ = 0;
+       const gchar* _tmp3_ = NULL;
+       GdkPixbuf* _tmp4_ = NULL;
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       g_return_val_if_fail (name != NULL, NULL);
+#line 43 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp0_ = icon_size;
+#line 43 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       gtk_icon_size_lookup (_tmp0_, &_tmp1_, &_tmp2_);
+#line 43 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       width = _tmp1_;
+#line 43 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       height = _tmp2_;
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp3_ = name;
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp4_ = find_icon (_tmp3_, width);
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       result = _tmp4_;
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       return result;
+#line 118 "moonshot-utils.c"
+}
+
+
+GdkPixbuf* get_pixbuf (IdCard* id) {
+       GdkPixbuf* result = NULL;
+       GdkPixbuf* _tmp0_ = NULL;
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       g_return_val_if_fail (id != NULL, NULL);
+#line 56 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp0_ = find_icon ("avatar-default", 48);
+#line 56 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       result = _tmp0_;
+#line 56 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       return result;
+#line 133 "moonshot-utils.c"
+}
+
+
+static gpointer _g_object_ref0 (gpointer self) {
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       return self ? g_object_ref (self) : NULL;
+#line 140 "moonshot-utils.c"
+}
+
+
+GdkPixbuf* find_icon (const gchar* name, gint size) {
+       GdkPixbuf* result = NULL;
+       gboolean _tmp0_ = FALSE;
+       GError * _inner_error_ = NULL;
+#line 59 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       g_return_val_if_fail (name != NULL, NULL);
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp0_ = gtk_available;
+#line 61 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       if (!_tmp0_) {
+#line 62 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               result = NULL;
+#line 62 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               return result;
+#line 158 "moonshot-utils.c"
+       }
+       {
+               GtkIconTheme* icon_theme = NULL;
+               GtkIconTheme* _tmp1_ = NULL;
+               GtkIconTheme* _tmp2_ = NULL;
+               GdkPixbuf* _tmp3_ = NULL;
+               GtkIconTheme* _tmp4_ = NULL;
+               const gchar* _tmp5_ = NULL;
+               gint _tmp6_ = 0;
+               GdkPixbuf* _tmp7_ = NULL;
+               GdkPixbuf* _tmp8_ = NULL;
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp1_ = gtk_icon_theme_get_default ();
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp2_ = _g_object_ref0 (_tmp1_);
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               icon_theme = _tmp2_;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp4_ = icon_theme;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp5_ = name;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp6_ = size;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp7_ = gtk_icon_theme_load_icon (_tmp4_, _tmp5_, _tmp6_, GTK_ICON_LOOKUP_FORCE_SIZE, &_inner_error_);
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp3_ = _tmp7_;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               if (G_UNLIKELY (_inner_error_ != NULL)) {
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                       _g_object_unref0 (icon_theme);
+#line 190 "moonshot-utils.c"
+                       goto __catch20_g_error;
+               }
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp8_ = _tmp3_;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp3_ = NULL;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               result = _tmp8_;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _g_object_unref0 (_tmp3_);
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _g_object_unref0 (icon_theme);
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               return result;
+#line 205 "moonshot-utils.c"
+       }
+       goto __finally20;
+       __catch20_g_error:
+       {
+               GError* e = NULL;
+               FILE* _tmp9_ = NULL;
+               const gchar* _tmp10_ = NULL;
+               GError* _tmp11_ = NULL;
+               const gchar* _tmp12_ = NULL;
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               e = _inner_error_;
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _inner_error_ = NULL;
+#line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp9_ = stdout;
+#line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp10_ = name;
+#line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp11_ = e;
+#line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp12_ = _tmp11_->message;
+#line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               fprintf (_tmp9_, "Error loading icon '%s': %s\n", _tmp10_, _tmp12_);
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               result = NULL;
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _g_error_free0 (e);
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               return result;
+#line 235 "moonshot-utils.c"
+       }
+       __finally20:
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.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 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       g_clear_error (&_inner_error_);
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       return NULL;
+#line 244 "moonshot-utils.c"
+}
+
+
+static gchar* g_file_stream_read_line (FILE* self) {
+       gchar* result = NULL;
+       gint c = 0;
+       GString* ret = NULL;
+       GString* _tmp7_ = NULL;
+#line 3459 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 3461 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       ret = NULL;
+#line 3462 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       while (TRUE) {
+#line 259 "moonshot-utils.c"
+               gint _tmp0_ = 0;
+               gint _tmp1_ = 0;
+               GString* _tmp2_ = NULL;
+               gint _tmp4_ = 0;
+               GString* _tmp5_ = NULL;
+               gint _tmp6_ = 0;
+#line 3462 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp0_ = fgetc (self);
+#line 3462 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               c = _tmp0_;
+#line 3462 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp1_ = c;
+#line 3462 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               if (!(_tmp1_ != EOF)) {
+#line 3462 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       break;
+#line 276 "moonshot-utils.c"
+               }
+#line 3463 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp2_ = ret;
+#line 3463 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               if (_tmp2_ == NULL) {
+#line 282 "moonshot-utils.c"
+                       GString* _tmp3_ = NULL;
+#line 3464 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       _tmp3_ = g_string_new ("");
+#line 3464 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       _g_string_free0 (ret);
+#line 3464 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       ret = _tmp3_;
+#line 290 "moonshot-utils.c"
+               }
+#line 3466 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp4_ = c;
+#line 3466 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               if (_tmp4_ == ((gint) '\n')) {
+#line 3467 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+                       break;
+#line 298 "moonshot-utils.c"
+               }
+#line 3469 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp5_ = ret;
+#line 3469 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp6_ = c;
+#line 3469 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               g_string_append_c ((GString*) _tmp5_, (gchar) _tmp6_);
+#line 306 "moonshot-utils.c"
+       }
+#line 3471 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp7_ = ret;
+#line 3471 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       if (_tmp7_ == NULL) {
+#line 3472 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               result = NULL;
+#line 3472 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _g_string_free0 (ret);
+#line 3472 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               return result;
+#line 318 "moonshot-utils.c"
+       } else {
+               GString* _tmp8_ = NULL;
+               const gchar* _tmp9_ = NULL;
+               gchar* _tmp10_ = NULL;
+#line 3474 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp8_ = ret;
+#line 3474 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp9_ = ((GString*) _tmp8_)->str;
+#line 3474 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp10_ = g_strdup (_tmp9_);
+#line 3474 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               result = _tmp10_;
+#line 3474 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _g_string_free0 (ret);
+#line 3474 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               return result;
+#line 335 "moonshot-utils.c"
+       }
+#line 3459 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _g_string_free0 (ret);
+#line 339 "moonshot-utils.c"
+}
+
+
+gboolean UserForcesFlatFileStore (void) {
+       gboolean result = FALSE;
+       gchar* username = NULL;
+       const gchar* _tmp0_ = NULL;
+       gchar* _tmp1_ = NULL;
+       gchar* flatstore_users_filename = NULL;
+       const gchar* _tmp2_ = NULL;
+       gchar* _tmp3_ = NULL;
+       FILE* flatstore_users = NULL;
+       const gchar* _tmp4_ = NULL;
+       FILE* _tmp5_ = NULL;
+       FILE* _tmp6_ = NULL;
+       gchar* flatstore_username = NULL;
+#line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp0_ = GetUserName ();
+#line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp1_ = g_strdup (_tmp0_);
+#line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       username = _tmp1_;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp2_ = GetFlatStoreUsersFilePath ();
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp3_ = g_strdup (_tmp2_);
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       flatstore_users_filename = _tmp3_;
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp4_ = flatstore_users_filename;
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp5_ = g_fopen (_tmp4_, "r");
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       flatstore_users = _tmp5_;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp6_ = flatstore_users;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       if (_tmp6_ == NULL) {
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               result = FALSE;
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _fclose0 (flatstore_users);
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _g_free0 (flatstore_users_filename);
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _g_free0 (username);
+#line 97 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               return result;
+#line 388 "moonshot-utils.c"
+       }
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       flatstore_username = NULL;
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       while (TRUE) {
+#line 394 "moonshot-utils.c"
+               FILE* _tmp7_ = NULL;
+               gchar* _tmp8_ = NULL;
+               const gchar* _tmp9_ = NULL;
+               const gchar* _tmp10_ = NULL;
+               const gchar* _tmp11_ = NULL;
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp7_ = flatstore_users;
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp8_ = g_file_stream_read_line (_tmp7_);
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _g_free0 (flatstore_username);
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               flatstore_username = _tmp8_;
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp9_ = flatstore_username;
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               if (!(_tmp9_ != NULL)) {
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                       break;
+#line 414 "moonshot-utils.c"
+               }
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp10_ = username;
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp11_ = flatstore_username;
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               if (g_strcmp0 (_tmp10_, _tmp11_) == 0) {
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                       result = TRUE;
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                       _g_free0 (flatstore_username);
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                       _fclose0 (flatstore_users);
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                       _g_free0 (flatstore_users_filename);
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                       _g_free0 (username);
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                       return result;
+#line 434 "moonshot-utils.c"
+               }
+       }
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       result = FALSE;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _g_free0 (flatstore_username);
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _fclose0 (flatstore_users);
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _g_free0 (flatstore_users_filename);
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _g_free0 (username);
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       return result;
+#line 449 "moonshot-utils.c"
+}
+
+
+void make_color (guint16 red, guint16 green, guint16 blue, GdkColor* result) {
+       GdkColor color = {0};
+       guint16 _tmp0_ = 0U;
+       guint16 _tmp1_ = 0U;
+       guint16 _tmp2_ = 0U;
+#line 110 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       memset (&color, 0, sizeof (GdkColor));
+#line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp0_ = red;
+#line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       color.red = _tmp0_;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp1_ = green;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       color.green = _tmp1_;
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp2_ = blue;
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       color.blue = _tmp2_;
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       *result = color;
+#line 115 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       return;
+#line 476 "moonshot-utils.c"
+}
+
+
+void set_atk_relation (GtkWidget* widget, GtkWidget* target_widget, AtkRelationType relationship) {
+       AtkObject* atk_widget = NULL;
+       GtkWidget* _tmp0_ = NULL;
+       AtkObject* _tmp1_ = NULL;
+       AtkObject* _tmp2_ = NULL;
+       AtkObject* atk_target_widget = NULL;
+       GtkWidget* _tmp3_ = NULL;
+       AtkObject* _tmp4_ = NULL;
+       AtkObject* _tmp5_ = NULL;
+       AtkRelationType _tmp6_ = 0;
+#line 118 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       g_return_if_fail (widget != NULL);
+#line 118 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       g_return_if_fail (target_widget != NULL);
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp0_ = widget;
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp1_ = gtk_widget_get_accessible (_tmp0_);
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp2_ = _g_object_ref0 (_tmp1_);
+#line 120 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       atk_widget = _tmp2_;
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp3_ = target_widget;
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp4_ = gtk_widget_get_accessible (_tmp3_);
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp5_ = _g_object_ref0 (_tmp4_);
+#line 121 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       atk_target_widget = _tmp5_;
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp6_ = relationship;
+#line 123 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       atk_object_add_relationship (atk_widget, _tmp6_, atk_target_widget);
+#line 118 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _g_object_unref0 (atk_target_widget);
+#line 118 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _g_object_unref0 (atk_widget);
+#line 518 "moonshot-utils.c"
+}
+
+
+static void _vala_PangoFontDescription_free (PangoFontDescription* self) {
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       g_boxed_free (pango_font_description_get_type (), self);
+#line 525 "moonshot-utils.c"
+}
+
+
+GtkWidget* make_ta_fingerprint_widget (const gchar* server_cert, const gchar* label_text) {
+       GtkWidget* result = NULL;
+       const gchar* _tmp0_ = NULL;
+       const gchar* _tmp1_ = NULL;
+       GtkLabel* fingerprint_label = NULL;
+       GtkLabel* _tmp3_ = NULL;
+       GtkTextView* fingerprint = NULL;
+       GtkTextView* _tmp4_ = NULL;
+       PangoFontDescription* fontdesc = NULL;
+       PangoFontDescription* _tmp5_ = NULL;
+       GtkTextBuffer* buffer = NULL;
+       GtkTextBuffer* _tmp6_ = NULL;
+       GtkTextBuffer* _tmp7_ = NULL;
+       const gchar* _tmp8_ = NULL;
+       gchar* _tmp9_ = NULL;
+       gchar* _tmp10_ = NULL;
+       GtkScrolledWindow* fingerprint_width_constraint = NULL;
+       GtkScrolledWindow* _tmp11_ = NULL;
+       GtkVBox* vbox = NULL;
+       GtkVBox* _tmp12_ = NULL;
+#line 127 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       g_return_val_if_fail (server_cert != NULL, NULL);
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp1_ = label_text;
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp0_ = _tmp1_;
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       if (_tmp0_ == NULL) {
+#line 557 "moonshot-utils.c"
+               const gchar* _tmp2_ = NULL;
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp2_ = _ ("SHA-256 fingerprint:");
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp0_ = _tmp2_;
+#line 563 "moonshot-utils.c"
+       }
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp3_ = (GtkLabel*) gtk_label_new (_tmp0_);
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       g_object_ref_sink (_tmp3_);
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       fingerprint_label = _tmp3_;
+#line 130 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       gtk_misc_set_alignment ((GtkMisc*) fingerprint_label, (gfloat) 0, 0.5f);
+#line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp4_ = (GtkTextView*) gtk_text_view_new ();
+#line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       g_object_ref_sink (_tmp4_);
+#line 132 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       fingerprint = _tmp4_;
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp5_ = pango_font_description_from_string ("monospace 10");
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       fontdesc = _tmp5_;
+#line 134 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       gtk_widget_modify_font ((GtkWidget*) fingerprint, fontdesc);
+#line 135 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       gtk_text_view_set_editable (fingerprint, FALSE);
+#line 136 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       gtk_text_view_set_left_margin (fingerprint, 3);
+#line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp6_ = gtk_text_view_get_buffer (fingerprint);
+#line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp7_ = _g_object_ref0 (_tmp6_);
+#line 137 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       buffer = _tmp7_;
+#line 138 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp8_ = server_cert;
+#line 138 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp9_ = colonize (_tmp8_, 16);
+#line 138 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp10_ = _tmp9_;
+#line 138 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       gtk_text_buffer_set_text (buffer, _tmp10_, -1);
+#line 138 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _g_free0 (_tmp10_);
+#line 139 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       gtk_text_view_set_wrap_mode (fingerprint, GTK_WRAP_WORD_CHAR);
+#line 141 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       set_atk_relation ((GtkWidget*) fingerprint_label, (GtkWidget*) fingerprint, ATK_RELATION_LABEL_FOR);
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp11_ = (GtkScrolledWindow*) gtk_scrolled_window_new (NULL, NULL);
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       g_object_ref_sink (_tmp11_);
+#line 143 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       fingerprint_width_constraint = _tmp11_;
+#line 144 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       gtk_scrolled_window_set_policy (fingerprint_width_constraint, GTK_POLICY_NEVER, GTK_POLICY_NEVER);
+#line 145 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       gtk_scrolled_window_set_shadow_type (fingerprint_width_constraint, GTK_SHADOW_IN);
+#line 146 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       gtk_widget_set_size_request ((GtkWidget*) fingerprint_width_constraint, 360, 60);
+#line 147 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       gtk_scrolled_window_add_with_viewport (fingerprint_width_constraint, (GtkWidget*) fingerprint);
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp12_ = (GtkVBox*) gtk_vbox_new (FALSE, 0);
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       g_object_ref_sink (_tmp12_);
+#line 149 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       vbox = _tmp12_;
+#line 150 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       gtk_box_pack_start ((GtkBox*) vbox, (GtkWidget*) fingerprint_label, TRUE, TRUE, (guint) 2);
+#line 151 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       gtk_box_pack_start ((GtkBox*) vbox, (GtkWidget*) fingerprint_width_constraint, TRUE, TRUE, (guint) 2);
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       result = (GtkWidget*) vbox;
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _g_object_unref0 (fingerprint_width_constraint);
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _g_object_unref0 (buffer);
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       __vala_PangoFontDescription_free0 (fontdesc);
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _g_object_unref0 (fingerprint);
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _g_object_unref0 (fingerprint_label);
+#line 152 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       return result;
+#line 647 "moonshot-utils.c"
+}
+
+
+static gchar* string_slice (const gchar* self, glong start, glong end) {
+       gchar* result = NULL;
+       glong string_length = 0L;
+       gint _tmp0_ = 0;
+       gint _tmp1_ = 0;
+       glong _tmp2_ = 0L;
+       glong _tmp5_ = 0L;
+       gboolean _tmp8_ = FALSE;
+       glong _tmp9_ = 0L;
+       gboolean _tmp12_ = FALSE;
+       glong _tmp13_ = 0L;
+       glong _tmp16_ = 0L;
+       glong _tmp17_ = 0L;
+       glong _tmp18_ = 0L;
+       glong _tmp19_ = 0L;
+       glong _tmp20_ = 0L;
+       gchar* _tmp21_ = NULL;
+#line 1336 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 1337 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp0_ = strlen (self);
+#line 1337 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp1_ = _tmp0_;
+#line 1337 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       string_length = (glong) _tmp1_;
+#line 1338 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp2_ = start;
+#line 1338 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       if (_tmp2_ < ((glong) 0)) {
+#line 680 "moonshot-utils.c"
+               glong _tmp3_ = 0L;
+               glong _tmp4_ = 0L;
+#line 1339 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp3_ = string_length;
+#line 1339 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp4_ = start;
+#line 1339 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               start = _tmp3_ + _tmp4_;
+#line 689 "moonshot-utils.c"
+       }
+#line 1341 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp5_ = end;
+#line 1341 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       if (_tmp5_ < ((glong) 0)) {
+#line 695 "moonshot-utils.c"
+               glong _tmp6_ = 0L;
+               glong _tmp7_ = 0L;
+#line 1342 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp6_ = string_length;
+#line 1342 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp7_ = end;
+#line 1342 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               end = _tmp6_ + _tmp7_;
+#line 704 "moonshot-utils.c"
+       }
+#line 1344 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp9_ = start;
+#line 1344 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       if (_tmp9_ >= ((glong) 0)) {
+#line 710 "moonshot-utils.c"
+               glong _tmp10_ = 0L;
+               glong _tmp11_ = 0L;
+#line 1344 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp10_ = start;
+#line 1344 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp11_ = string_length;
+#line 1344 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp8_ = _tmp10_ <= _tmp11_;
+#line 719 "moonshot-utils.c"
+       } else {
+#line 1344 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp8_ = FALSE;
+#line 723 "moonshot-utils.c"
+       }
+#line 1344 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (_tmp8_, NULL);
+#line 1345 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp13_ = end;
+#line 1345 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       if (_tmp13_ >= ((glong) 0)) {
+#line 731 "moonshot-utils.c"
+               glong _tmp14_ = 0L;
+               glong _tmp15_ = 0L;
+#line 1345 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp14_ = end;
+#line 1345 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp15_ = string_length;
+#line 1345 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp12_ = _tmp14_ <= _tmp15_;
+#line 740 "moonshot-utils.c"
+       } else {
+#line 1345 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               _tmp12_ = FALSE;
+#line 744 "moonshot-utils.c"
+       }
+#line 1345 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (_tmp12_, NULL);
+#line 1346 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp16_ = start;
+#line 1346 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp17_ = end;
+#line 1346 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (_tmp16_ <= _tmp17_, NULL);
+#line 1347 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp18_ = start;
+#line 1347 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp19_ = end;
+#line 1347 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp20_ = start;
+#line 1347 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp21_ = g_strndup (((gchar*) self) + _tmp18_, (gsize) (_tmp19_ - _tmp20_));
+#line 1347 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       result = _tmp21_;
+#line 1347 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       return result;
+#line 766 "moonshot-utils.c"
+}
+
+
+gchar* colonize (const gchar* input, gint bytes_per_line) {
+       gchar* result = NULL;
+       const gchar* _tmp0_ = NULL;
+       gint _tmp1_ = 0;
+       gint _tmp2_ = 0;
+       gchar* _result_ = NULL;
+       gchar* _tmp3_ = NULL;
+       gint i = 0;
+       gint line_bytes = 0;
+#line 156 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       g_return_val_if_fail (input != NULL, NULL);
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp0_ = input;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp1_ = strlen (_tmp0_);
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp2_ = _tmp1_;
+#line 157 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       g_return_if_fail ((_tmp2_ % 2) == 0);
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp3_ = g_strdup ("");
+#line 159 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _result_ = _tmp3_;
+#line 160 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       i = 0;
+#line 161 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       line_bytes = 0;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       while (TRUE) {
+#line 799 "moonshot-utils.c"
+               gint _tmp4_ = 0;
+               const gchar* _tmp5_ = NULL;
+               gint _tmp6_ = 0;
+               gint _tmp7_ = 0;
+               gint _tmp8_ = 0;
+               gint _tmp9_ = 0;
+               const gchar* _tmp15_ = NULL;
+               const gchar* _tmp16_ = NULL;
+               gint _tmp17_ = 0;
+               gint _tmp18_ = 0;
+               gchar* _tmp19_ = NULL;
+               gchar* _tmp20_ = NULL;
+               gchar* _tmp21_ = NULL;
+               gint _tmp22_ = 0;
+               gint _tmp23_ = 0;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp4_ = i;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp5_ = input;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp6_ = strlen (_tmp5_);
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp7_ = _tmp6_;
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               if (!(_tmp4_ < _tmp7_)) {
+#line 162 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                       break;
+#line 827 "moonshot-utils.c"
+               }
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp8_ = line_bytes;
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp9_ = bytes_per_line;
+#line 163 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               if (_tmp8_ == _tmp9_) {
+#line 835 "moonshot-utils.c"
+                       const gchar* _tmp10_ = NULL;
+                       gchar* _tmp11_ = NULL;
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                       _tmp10_ = _result_;
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                       _tmp11_ = g_strconcat (_tmp10_, "\n", NULL);
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                       _g_free0 (_result_);
+#line 164 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                       _result_ = _tmp11_;
+#line 165 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                       line_bytes = 0;
+#line 848 "moonshot-utils.c"
+               } else {
+                       gint _tmp12_ = 0;
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                       _tmp12_ = i;
+#line 167 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                       if (_tmp12_ > 0) {
+#line 855 "moonshot-utils.c"
+                               const gchar* _tmp13_ = NULL;
+                               gchar* _tmp14_ = NULL;
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                               _tmp13_ = _result_;
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                               _tmp14_ = g_strconcat (_tmp13_, ":", NULL);
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                               _g_free0 (_result_);
+#line 168 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                               _result_ = _tmp14_;
+#line 866 "moonshot-utils.c"
+                       }
+               }
+#line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp15_ = _result_;
+#line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp16_ = input;
+#line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp17_ = i;
+#line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp18_ = i;
+#line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp19_ = string_slice (_tmp16_, (glong) _tmp17_, (glong) (_tmp18_ + 2));
+#line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp20_ = _tmp19_;
+#line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp21_ = g_strconcat (_tmp15_, _tmp20_, NULL);
+#line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _g_free0 (_result_);
+#line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _result_ = _tmp21_;
+#line 170 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _g_free0 (_tmp20_);
+#line 171 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp22_ = i;
+#line 171 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               i = _tmp22_ + 2;
+#line 172 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               _tmp23_ = line_bytes;
+#line 172 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               line_bytes = _tmp23_ + 1;
+#line 897 "moonshot-utils.c"
+       }
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       result = _result_;
+#line 174 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       return result;
+#line 903 "moonshot-utils.c"
+}
+
+
+static guint8* string_get_data (const gchar* self, int* result_length1) {
+       guint8* result;
+       guint8* res = NULL;
+       gint res_length1 = 0;
+       gint _res_size_ = 0;
+       gint _tmp0_ = 0;
+       gint _tmp1_ = 0;
+       gint _tmp2_ = 0;
+       guint8* _tmp3_ = NULL;
+       gint _tmp3__length1 = 0;
+       guint8* _tmp4_ = NULL;
+       gint _tmp4__length1 = 0;
+#line 1406 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 1407 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       res = (guint8*) self;
+#line 1407 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       res_length1 = -1;
+#line 1407 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _res_size_ = res_length1;
+#line 1408 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp0_ = strlen (self);
+#line 1408 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp1_ = _tmp0_;
+#line 1408 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       res_length1 = (gint) _tmp1_;
+#line 1408 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp2_ = res_length1;
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp3_ = res;
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp3__length1 = res_length1;
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp4_ = _tmp3_;
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp4__length1 = _tmp3__length1;
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       if (result_length1) {
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+               *result_length1 = _tmp4__length1;
+#line 947 "moonshot-utils.c"
+       }
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       result = _tmp4_;
+#line 1409 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       return result;
+#line 953 "moonshot-utils.c"
+}
+
+
+void clear_password_entry (GtkEntry* entry) {
+       gint len = 0;
+       GtkEntry* _tmp0_ = NULL;
+       const gchar* _tmp1_ = NULL;
+       gint _tmp2_ = 0;
+       gint _tmp3_ = 0;
+       gchar* random_chars = NULL;
+       gint _tmp4_ = 0;
+       gchar* _tmp5_ = NULL;
+       gint random_chars_length1 = 0;
+       gint _random_chars_size_ = 0;
+       gchar* _tmp14_ = NULL;
+       gint _tmp14__length1 = 0;
+       gint _tmp15_ = 0;
+       gchar _tmp16_ = '\0';
+       gchar* r = NULL;
+       gchar* _tmp17_ = NULL;
+       gint _tmp17__length1 = 0;
+       gchar* _tmp18_ = NULL;
+       GtkEntryBuffer* buf = NULL;
+       GtkEntry* _tmp19_ = NULL;
+       GtkEntryBuffer* _tmp20_ = NULL;
+       GtkEntryBuffer* _tmp21_ = NULL;
+       guint8* _tmp22_ = NULL;
+       gint _tmp22__length1 = 0;
+       guint8* _tmp23_ = NULL;
+       gint _tmp23__length1 = 0;
+       gint _tmp24_ = 0;
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       g_return_if_fail (entry != NULL);
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp0_ = entry;
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp1_ = gtk_entry_get_text (_tmp0_);
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp2_ = strlen (_tmp1_);
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp3_ = _tmp2_;
+#line 180 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       len = _tmp3_;
+#line 181 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp4_ = len;
+#line 181 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp5_ = g_new0 (gchar, _tmp4_ + 1);
+#line 181 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       random_chars = _tmp5_;
+#line 181 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       random_chars_length1 = _tmp4_ + 1;
+#line 181 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _random_chars_size_ = random_chars_length1;
+#line 1007 "moonshot-utils.c"
+       {
+               gint i = 0;
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+               i = 0;
+#line 1012 "moonshot-utils.c"
+               {
+                       gboolean _tmp6_ = FALSE;
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                       _tmp6_ = TRUE;
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                       while (TRUE) {
+#line 1019 "moonshot-utils.c"
+                               gint _tmp8_ = 0;
+                               gint _tmp9_ = 0;
+                               gchar* _tmp10_ = NULL;
+                               gint _tmp10__length1 = 0;
+                               gint _tmp11_ = 0;
+                               gint32 _tmp12_ = 0;
+                               gchar _tmp13_ = '\0';
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                               if (!_tmp6_) {
+#line 1029 "moonshot-utils.c"
+                                       gint _tmp7_ = 0;
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                                       _tmp7_ = i;
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                                       i = _tmp7_ + 1;
+#line 1035 "moonshot-utils.c"
+                               }
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                               _tmp6_ = FALSE;
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                               _tmp8_ = i;
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                               _tmp9_ = len;
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                               if (!(_tmp8_ < _tmp9_)) {
+#line 182 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                                       break;
+#line 1047 "moonshot-utils.c"
+                               }
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                               _tmp10_ = random_chars;
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                               _tmp10__length1 = random_chars_length1;
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                               _tmp11_ = i;
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                               _tmp12_ = g_random_int_range ((gint32) 40, (gint32) 127);
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                               _tmp10_[_tmp11_] = (gchar) _tmp12_;
+#line 183 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+                               _tmp13_ = _tmp10_[_tmp11_];
+#line 1061 "moonshot-utils.c"
+                       }
+               }
+       }
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp14_ = random_chars;
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp14__length1 = random_chars_length1;
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp15_ = len;
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp14_[_tmp15_] = (gchar) 0;
+#line 185 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp16_ = _tmp14_[_tmp15_];
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp17_ = random_chars;
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp17__length1 = random_chars_length1;
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp18_ = g_strdup ((const gchar*) _tmp17_);
+#line 186 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       r = _tmp18_;
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp19_ = entry;
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp20_ = gtk_entry_get_buffer (_tmp19_);
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp21_ = _g_object_ref0 (_tmp20_);
+#line 187 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       buf = _tmp21_;
+#line 188 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp22_ = string_get_data (r, &_tmp22__length1);
+#line 188 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp23_ = _tmp22_;
+#line 188 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp23__length1 = _tmp22__length1;
+#line 188 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       gtk_entry_buffer_set_text (buf, _tmp23_, _tmp23__length1);
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _tmp24_ = len;
+#line 191 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       gtk_entry_buffer_delete_text (buf, (guint) 0, _tmp24_);
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _g_object_unref0 (buf);
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       _g_free0 (r);
+#line 177 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       random_chars = (g_free (random_chars), NULL);
+#line 1109 "moonshot-utils.c"
+}
+
+
+void set_bg_color (GtkWidget* w) {
+#line 195 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-utils.vala"
+       g_return_if_fail (w != NULL);
+#line 1116 "moonshot-utils.c"
+}
+
+
+
diff --git a/src/moonshot-warning-dialog.c b/src/moonshot-warning-dialog.c
new file mode 100644 (file)
index 0000000..58c9a8f
--- /dev/null
@@ -0,0 +1,720 @@
+/* moonshot-warning-dialog.c generated by valac 0.34.9, the Vala compiler
+ * generated from moonshot-warning-dialog.vala, do not modify */
+
+/*
+ * Copyright (c) 2011-2016, JANET(UK)
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * 3. Neither the name of JANET(UK) nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+*/
+
+#include <glib.h>
+#include <glib-object.h>
+#include <stdlib.h>
+#include <string.h>
+#include <gtk/gtk.h>
+#include <gdk/gdk.h>
+#include <glib/gi18n-lib.h>
+#include <gobject/gvaluecollector.h>
+
+
+#define TYPE_WARNING_DIALOG (warning_dialog_get_type ())
+#define WARNING_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_WARNING_DIALOG, WarningDialog))
+#define WARNING_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_WARNING_DIALOG, WarningDialogClass))
+#define IS_WARNING_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_WARNING_DIALOG))
+#define IS_WARNING_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_WARNING_DIALOG))
+#define WARNING_DIALOG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_WARNING_DIALOG, WarningDialogClass))
+
+typedef struct _WarningDialog WarningDialog;
+typedef struct _WarningDialogClass WarningDialogClass;
+typedef struct _WarningDialogPrivate WarningDialogPrivate;
+
+#define TYPE_MOONSHOT_LOGGER (moonshot_logger_get_type ())
+#define MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLogger))
+#define MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+#define IS_MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MOONSHOT_LOGGER))
+#define IS_MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MOONSHOT_LOGGER))
+#define MOONSHOT_LOGGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+
+typedef struct _MoonshotLogger MoonshotLogger;
+typedef struct _MoonshotLoggerClass MoonshotLoggerClass;
+#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
+#define _g_free0(var) (var = (g_free (var), NULL))
+typedef struct _ParamSpecWarningDialog ParamSpecWarningDialog;
+
+struct _WarningDialog {
+       GTypeInstance parent_instance;
+       volatile int ref_count;
+       WarningDialogPrivate * priv;
+};
+
+struct _WarningDialogClass {
+       GTypeClass parent_class;
+       void (*finalize) (WarningDialog *self);
+};
+
+struct _ParamSpecWarningDialog {
+       GParamSpec parent_instance;
+};
+
+
+static gpointer warning_dialog_parent_class = NULL;
+static MoonshotLogger* warning_dialog__logger;
+static MoonshotLogger* warning_dialog__logger = NULL;
+
+#define GROUP_NAME "WarningDialogs"
+gpointer warning_dialog_ref (gpointer instance);
+void warning_dialog_unref (gpointer instance);
+GParamSpec* param_spec_warning_dialog (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
+void value_set_warning_dialog (GValue* value, gpointer v_object);
+void value_take_warning_dialog (GValue* value, gpointer v_object);
+gpointer value_get_warning_dialog (const GValue* value);
+GType warning_dialog_get_type (void) G_GNUC_CONST;
+enum  {
+       WARNING_DIALOG_DUMMY_PROPERTY
+};
+GType moonshot_logger_get_type (void) G_GNUC_CONST;
+static MoonshotLogger* warning_dialog_logger (void);
+MoonshotLogger* get_logger (const gchar* name);
+gboolean warning_dialog_confirm (GtkWindow* parent, const gchar* message, const gchar* dialog_name);
+gboolean get_bool_setting (const gchar* group_name, const gchar* key_name, gboolean _default_, GKeyFile* key_file);
+void moonshot_logger_trace (MoonshotLogger* self, const gchar* message, GError* e);
+void make_color (guint16 red, guint16 green, guint16 blue, GdkColor* result);
+void set_bg_color (GtkWidget* w);
+void set_bool_setting (const gchar* group_name, const gchar* key_name, gboolean value, GKeyFile* key_file);
+WarningDialog* warning_dialog_new (void);
+WarningDialog* warning_dialog_construct (GType object_type);
+static void warning_dialog_finalize (WarningDialog* obj);
+
+
+static gpointer _g_object_ref0 (gpointer self) {
+#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       return self ? g_object_ref (self) : NULL;
+#line 119 "moonshot-warning-dialog.c"
+}
+
+
+static MoonshotLogger* warning_dialog_logger (void) {
+       MoonshotLogger* result = NULL;
+       MoonshotLogger* _tmp0_ = NULL;
+       MoonshotLogger* _tmp2_ = NULL;
+       MoonshotLogger* _tmp3_ = NULL;
+#line 43 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       _tmp0_ = warning_dialog__logger;
+#line 43 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       if (_tmp0_ == NULL) {
+#line 132 "moonshot-warning-dialog.c"
+               MoonshotLogger* _tmp1_ = NULL;
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp1_ = get_logger ("WarningDialog");
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _g_object_unref0 (warning_dialog__logger);
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               warning_dialog__logger = _tmp1_;
+#line 140 "moonshot-warning-dialog.c"
+       }
+#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       _tmp2_ = warning_dialog__logger;
+#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       _tmp3_ = _g_object_ref0 (_tmp2_);
+#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       result = _tmp3_;
+#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       return result;
+#line 150 "moonshot-warning-dialog.c"
+}
+
+
+static const gchar* string_to_string (const gchar* self) {
+       const gchar* result = NULL;
+#line 1420 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 1421 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       result = self;
+#line 1421 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       return result;
+#line 162 "moonshot-warning-dialog.c"
+}
+
+
+gboolean warning_dialog_confirm (GtkWindow* parent, const gchar* message, const gchar* dialog_name) {
+       gboolean result = FALSE;
+       const gchar* _tmp0_ = NULL;
+       gboolean _tmp1_ = FALSE;
+       GdkColor white = {0};
+       GdkColor _tmp9_ = {0};
+       GtkMessageDialog* dialog = NULL;
+       GtkWindow* _tmp10_ = NULL;
+       GtkMessageDialog* _tmp11_ = NULL;
+       GtkWidget* content_area = NULL;
+       GtkMessageDialog* _tmp12_ = NULL;
+       GtkWidget* _tmp13_ = NULL;
+       GtkWidget* _tmp14_ = NULL;
+       GtkCheckButton* remember_checkbutton = NULL;
+       gboolean _tmp15_ = FALSE;
+       const gchar* _tmp16_ = NULL;
+       GtkMessageDialog* _tmp34_ = NULL;
+       const gchar* _tmp35_ = NULL;
+       GtkMessageDialog* _tmp36_ = NULL;
+       GtkWidget* _tmp37_ = NULL;
+       GtkWidget* _tmp38_ = NULL;
+       GtkMessageDialog* _tmp39_ = NULL;
+       const gchar* _tmp40_ = NULL;
+       gint ret = 0;
+       GtkMessageDialog* _tmp41_ = NULL;
+       gint _tmp42_ = 0;
+       gboolean _tmp43_ = FALSE;
+       gboolean _tmp44_ = FALSE;
+       gint _tmp45_ = 0;
+       GtkMessageDialog* _tmp51_ = NULL;
+       gint _tmp52_ = 0;
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       g_return_val_if_fail (parent != NULL, FALSE);
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       g_return_val_if_fail (message != NULL, FALSE);
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       g_return_val_if_fail (dialog_name != NULL, FALSE);
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       _tmp0_ = dialog_name;
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       _tmp1_ = get_bool_setting (GROUP_NAME, _tmp0_, FALSE, NULL);
+#line 52 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       if (_tmp1_) {
+#line 209 "moonshot-warning-dialog.c"
+               MoonshotLogger* _tmp2_ = NULL;
+               MoonshotLogger* _tmp3_ = NULL;
+               const gchar* _tmp4_ = NULL;
+               const gchar* _tmp5_ = NULL;
+               const gchar* _tmp6_ = NULL;
+               gchar* _tmp7_ = NULL;
+               gchar* _tmp8_ = NULL;
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp2_ = warning_dialog_logger ();
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp3_ = _tmp2_;
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp4_ = string_to_string (GROUP_NAME);
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp5_ = dialog_name;
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp6_ = string_to_string (_tmp5_);
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp7_ = g_strconcat ("confirm: Settings group ", _tmp4_, " has 'true' for key ", _tmp6_, "; skipping dialog and returning true.", NULL);
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp8_ = _tmp7_;
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               moonshot_logger_trace (_tmp3_, _tmp8_, NULL);
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _g_free0 (_tmp8_);
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _g_object_unref0 (_tmp3_);
+#line 55 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               result = TRUE;
+#line 55 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               return result;
+#line 241 "moonshot-warning-dialog.c"
+       }
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       make_color ((guint16) 65535, (guint16) 65535, (guint16) 65535, &_tmp9_);
+#line 58 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       white = _tmp9_;
+#line 60 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       _tmp10_ = parent;
+#line 60 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       _tmp11_ = (GtkMessageDialog*) gtk_message_dialog_new (_tmp10_, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_WARNING, GTK_BUTTONS_YES_NO, "%s", "");
+#line 60 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       g_object_ref_sink (_tmp11_);
+#line 60 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       dialog = _tmp11_;
+#line 66 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       _tmp12_ = dialog;
+#line 66 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       _tmp13_ = gtk_dialog_get_content_area ((GtkDialog*) _tmp12_);
+#line 66 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       _tmp14_ = _g_object_ref0 (_tmp13_);
+#line 66 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       content_area = _tmp14_;
+#line 67 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       remember_checkbutton = NULL;
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       _tmp16_ = dialog_name;
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       if (_tmp16_ != NULL) {
+#line 269 "moonshot-warning-dialog.c"
+               const gchar* _tmp17_ = NULL;
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp17_ = dialog_name;
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp15_ = g_strcmp0 (_tmp17_, "") != 0;
+#line 275 "moonshot-warning-dialog.c"
+       } else {
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp15_ = FALSE;
+#line 279 "moonshot-warning-dialog.c"
+       }
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       if (_tmp15_) {
+#line 283 "moonshot-warning-dialog.c"
+               const gchar* _tmp18_ = NULL;
+               GtkCheckButton* _tmp19_ = NULL;
+               GtkCheckButton* _tmp20_ = NULL;
+               GtkContainer* action_area = NULL;
+               GtkMessageDialog* _tmp21_ = NULL;
+               GtkWidget* _tmp22_ = NULL;
+               GtkContainer* _tmp23_ = NULL;
+               GtkButton* yes_button = NULL;
+               GtkMessageDialog* _tmp24_ = NULL;
+               GtkWidget* _tmp25_ = NULL;
+               GtkButton* _tmp26_ = NULL;
+               GtkButton* _tmp27_ = NULL;
+               GtkButton* _tmp28_ = NULL;
+               GtkWidget* message_area = NULL;
+               GtkMessageDialog* _tmp29_ = NULL;
+               GtkWidget* _tmp30_ = NULL;
+               GtkWidget* _tmp31_ = NULL;
+               GtkWidget* _tmp32_ = NULL;
+               GtkCheckButton* _tmp33_ = NULL;
+#line 71 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp18_ = _ ("Do not show this message again");
+#line 71 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp19_ = (GtkCheckButton*) gtk_check_button_new_with_label (_tmp18_);
+#line 71 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               g_object_ref_sink (_tmp19_);
+#line 71 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _g_object_unref0 (remember_checkbutton);
+#line 71 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               remember_checkbutton = _tmp19_;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp20_ = remember_checkbutton;
+#line 75 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               gtk_widget_set_receives_default ((GtkWidget*) _tmp20_, FALSE);
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp21_ = dialog;
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp22_ = gtk_dialog_get_action_area ((GtkDialog*) _tmp21_);
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp23_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp22_, GTK_TYPE_CONTAINER, GtkContainer));
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               action_area = _tmp23_;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp24_ = dialog;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp25_ = gtk_dialog_get_widget_for_response ((GtkDialog*) _tmp24_, (gint) GTK_RESPONSE_YES);
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp26_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp25_, GTK_TYPE_BUTTON, GtkButton));
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               yes_button = _tmp26_;
+#line 79 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp27_ = yes_button;
+#line 79 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               gtk_widget_grab_default ((GtkWidget*) _tmp27_);
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp28_ = yes_button;
+#line 80 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               gtk_widget_grab_focus ((GtkWidget*) _tmp28_);
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp29_ = dialog;
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp30_ = gtk_message_dialog_get_message_area (_tmp29_);
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp31_ = _g_object_ref0 (_tmp30_);
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               message_area = _tmp31_;
+#line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp32_ = message_area;
+#line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp33_ = remember_checkbutton;
+#line 85 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               gtk_box_pack_start (G_TYPE_CHECK_INSTANCE_CAST (_tmp32_, GTK_TYPE_BOX, GtkBox), (GtkWidget*) _tmp33_, FALSE, FALSE, (guint) 12);
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _g_object_unref0 (message_area);
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _g_object_unref0 (yes_button);
+#line 69 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _g_object_unref0 (action_area);
+#line 361 "moonshot-warning-dialog.c"
+       }
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       _tmp34_ = dialog;
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       _tmp35_ = _ ("Warning");
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       gtk_window_set_title ((GtkWindow*) _tmp34_, _tmp35_);
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       _tmp36_ = dialog;
+#line 96 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       set_bg_color ((GtkWidget*) _tmp36_);
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       _tmp37_ = content_area;
+#line 99 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       set_bg_color (_tmp37_);
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       _tmp38_ = content_area;
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       gtk_widget_show_all (_tmp38_);
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       _tmp39_ = dialog;
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       _tmp40_ = message;
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       gtk_message_dialog_set_markup (_tmp39_, _tmp40_);
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       _tmp41_ = dialog;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       _tmp42_ = gtk_dialog_run ((GtkDialog*) _tmp41_);
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       ret = _tmp42_;
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       _tmp45_ = ret;
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       if (_tmp45_ == ((gint) GTK_RESPONSE_YES)) {
+#line 397 "moonshot-warning-dialog.c"
+               GtkCheckButton* _tmp46_ = NULL;
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp46_ = remember_checkbutton;
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp44_ = _tmp46_ != NULL;
+#line 403 "moonshot-warning-dialog.c"
+       } else {
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp44_ = FALSE;
+#line 407 "moonshot-warning-dialog.c"
+       }
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       if (_tmp44_) {
+#line 411 "moonshot-warning-dialog.c"
+               GtkCheckButton* _tmp47_ = NULL;
+               gboolean _tmp48_ = FALSE;
+               gboolean _tmp49_ = FALSE;
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp47_ = remember_checkbutton;
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp48_ = gtk_toggle_button_get_active ((GtkToggleButton*) _tmp47_);
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp49_ = _tmp48_;
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp43_ = _tmp49_;
+#line 423 "moonshot-warning-dialog.c"
+       } else {
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp43_ = FALSE;
+#line 427 "moonshot-warning-dialog.c"
+       }
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       if (_tmp43_) {
+#line 431 "moonshot-warning-dialog.c"
+               const gchar* _tmp50_ = NULL;
+#line 109 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               _tmp50_ = dialog_name;
+#line 109 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               set_bool_setting (GROUP_NAME, _tmp50_, TRUE, NULL);
+#line 437 "moonshot-warning-dialog.c"
+       }
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       _tmp51_ = dialog;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       gtk_object_destroy ((GtkObject*) _tmp51_);
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       _tmp52_ = ret;
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       result = _tmp52_ == ((gint) GTK_RESPONSE_YES);
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       _g_object_unref0 (remember_checkbutton);
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       _g_object_unref0 (content_area);
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       _g_object_unref0 (dialog);
+#line 113 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       return result;
+#line 455 "moonshot-warning-dialog.c"
+}
+
+
+WarningDialog* warning_dialog_construct (GType object_type) {
+       WarningDialog* self = NULL;
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       self = (WarningDialog*) g_type_create_instance (object_type);
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       return self;
+#line 465 "moonshot-warning-dialog.c"
+}
+
+
+WarningDialog* warning_dialog_new (void) {
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       return warning_dialog_construct (TYPE_WARNING_DIALOG);
+#line 472 "moonshot-warning-dialog.c"
+}
+
+
+static void value_warning_dialog_init (GValue* value) {
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       value->data[0].v_pointer = NULL;
+#line 479 "moonshot-warning-dialog.c"
+}
+
+
+static void value_warning_dialog_free_value (GValue* value) {
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       if (value->data[0].v_pointer) {
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               warning_dialog_unref (value->data[0].v_pointer);
+#line 488 "moonshot-warning-dialog.c"
+       }
+}
+
+
+static void value_warning_dialog_copy_value (const GValue* src_value, GValue* dest_value) {
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       if (src_value->data[0].v_pointer) {
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               dest_value->data[0].v_pointer = warning_dialog_ref (src_value->data[0].v_pointer);
+#line 498 "moonshot-warning-dialog.c"
+       } else {
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               dest_value->data[0].v_pointer = NULL;
+#line 502 "moonshot-warning-dialog.c"
+       }
+}
+
+
+static gpointer value_warning_dialog_peek_pointer (const GValue* value) {
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       return value->data[0].v_pointer;
+#line 510 "moonshot-warning-dialog.c"
+}
+
+
+static gchar* value_warning_dialog_collect_value (GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) {
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       if (collect_values[0].v_pointer) {
+#line 517 "moonshot-warning-dialog.c"
+               WarningDialog* object;
+               object = collect_values[0].v_pointer;
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               if (object->parent_instance.g_class == NULL) {
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+                       return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL);
+#line 524 "moonshot-warning-dialog.c"
+               } else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) {
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.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 528 "moonshot-warning-dialog.c"
+               }
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               value->data[0].v_pointer = warning_dialog_ref (object);
+#line 532 "moonshot-warning-dialog.c"
+       } else {
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               value->data[0].v_pointer = NULL;
+#line 536 "moonshot-warning-dialog.c"
+       }
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       return NULL;
+#line 540 "moonshot-warning-dialog.c"
+}
+
+
+static gchar* value_warning_dialog_lcopy_value (const GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) {
+       WarningDialog** object_p;
+       object_p = collect_values[0].v_pointer;
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       if (!object_p) {
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value));
+#line 551 "moonshot-warning-dialog.c"
+       }
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       if (!value->data[0].v_pointer) {
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               *object_p = NULL;
+#line 557 "moonshot-warning-dialog.c"
+       } else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) {
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               *object_p = value->data[0].v_pointer;
+#line 561 "moonshot-warning-dialog.c"
+       } else {
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               *object_p = warning_dialog_ref (value->data[0].v_pointer);
+#line 565 "moonshot-warning-dialog.c"
+       }
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       return NULL;
+#line 569 "moonshot-warning-dialog.c"
+}
+
+
+GParamSpec* param_spec_warning_dialog (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags) {
+       ParamSpecWarningDialog* spec;
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       g_return_val_if_fail (g_type_is_a (object_type, TYPE_WARNING_DIALOG), NULL);
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags);
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       G_PARAM_SPEC (spec)->value_type = object_type;
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       return G_PARAM_SPEC (spec);
+#line 583 "moonshot-warning-dialog.c"
+}
+
+
+gpointer value_get_warning_dialog (const GValue* value) {
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_WARNING_DIALOG), NULL);
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       return value->data[0].v_pointer;
+#line 592 "moonshot-warning-dialog.c"
+}
+
+
+void value_set_warning_dialog (GValue* value, gpointer v_object) {
+       WarningDialog* old;
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_WARNING_DIALOG));
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       old = value->data[0].v_pointer;
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       if (v_object) {
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_WARNING_DIALOG));
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               value->data[0].v_pointer = v_object;
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               warning_dialog_ref (value->data[0].v_pointer);
+#line 612 "moonshot-warning-dialog.c"
+       } else {
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               value->data[0].v_pointer = NULL;
+#line 616 "moonshot-warning-dialog.c"
+       }
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       if (old) {
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               warning_dialog_unref (old);
+#line 622 "moonshot-warning-dialog.c"
+       }
+}
+
+
+void value_take_warning_dialog (GValue* value, gpointer v_object) {
+       WarningDialog* old;
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_WARNING_DIALOG));
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       old = value->data[0].v_pointer;
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       if (v_object) {
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_WARNING_DIALOG));
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               value->data[0].v_pointer = v_object;
+#line 641 "moonshot-warning-dialog.c"
+       } else {
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               value->data[0].v_pointer = NULL;
+#line 645 "moonshot-warning-dialog.c"
+       }
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       if (old) {
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               warning_dialog_unref (old);
+#line 651 "moonshot-warning-dialog.c"
+       }
+}
+
+
+static void warning_dialog_class_init (WarningDialogClass * klass) {
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       warning_dialog_parent_class = g_type_class_peek_parent (klass);
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       ((WarningDialogClass *) klass)->finalize = warning_dialog_finalize;
+#line 661 "moonshot-warning-dialog.c"
+}
+
+
+static void warning_dialog_instance_init (WarningDialog * self) {
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       self->ref_count = 1;
+#line 668 "moonshot-warning-dialog.c"
+}
+
+
+static void warning_dialog_finalize (WarningDialog* obj) {
+       WarningDialog * self;
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_WARNING_DIALOG, WarningDialog);
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       g_signal_handlers_destroy (self);
+#line 678 "moonshot-warning-dialog.c"
+}
+
+
+GType warning_dialog_get_type (void) {
+       static volatile gsize warning_dialog_type_id__volatile = 0;
+       if (g_once_init_enter (&warning_dialog_type_id__volatile)) {
+               static const GTypeValueTable g_define_type_value_table = { value_warning_dialog_init, value_warning_dialog_free_value, value_warning_dialog_copy_value, value_warning_dialog_peek_pointer, "p", value_warning_dialog_collect_value, "p", value_warning_dialog_lcopy_value };
+               static const GTypeInfo g_define_type_info = { sizeof (WarningDialogClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) warning_dialog_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (WarningDialog), 0, (GInstanceInitFunc) warning_dialog_instance_init, &g_define_type_value_table };
+               static const GTypeFundamentalInfo g_define_type_fundamental_info = { (G_TYPE_FLAG_CLASSED | G_TYPE_FLAG_INSTANTIATABLE | G_TYPE_FLAG_DERIVABLE | G_TYPE_FLAG_DEEP_DERIVABLE) };
+               GType warning_dialog_type_id;
+               warning_dialog_type_id = g_type_register_fundamental (g_type_fundamental_next (), "WarningDialog", &g_define_type_info, &g_define_type_fundamental_info, 0);
+               g_once_init_leave (&warning_dialog_type_id__volatile, warning_dialog_type_id);
+       }
+       return warning_dialog_type_id__volatile;
+}
+
+
+gpointer warning_dialog_ref (gpointer instance) {
+       WarningDialog* self;
+       self = instance;
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       g_atomic_int_inc (&self->ref_count);
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       return instance;
+#line 703 "moonshot-warning-dialog.c"
+}
+
+
+void warning_dialog_unref (gpointer instance) {
+       WarningDialog* self;
+       self = instance;
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+       if (g_atomic_int_dec_and_test (&self->ref_count)) {
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               WARNING_DIALOG_GET_CLASS (self)->finalize (self);
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-warning-dialog.vala"
+               g_type_free_instance ((GTypeInstance *) self);
+#line 716 "moonshot-warning-dialog.c"
+       }
+}
+
+
+
diff --git a/src/moonshot-webp-parser.c b/src/moonshot-webp-parser.c
new file mode 100644 (file)
index 0000000..746012a
--- /dev/null
@@ -0,0 +1,1089 @@
+/* moonshot-webp-parser.c generated by valac 0.34.9, the Vala compiler
+ * generated from moonshot-webp-parser.vala, do not modify */
+
+/*
+ * Copyright (c) 2011-2016, JANET(UK)
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * 3. Neither the name of JANET(UK) nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+*/
+
+#include <glib.h>
+#include <glib-object.h>
+#include <stdlib.h>
+#include <string.h>
+#include <stdio.h>
+#include <glib/gi18n-lib.h>
+#include <glib/gstdio.h>
+#include <libmoonshot.h>
+#include <gee.h>
+
+
+#define TYPE_MOONSHOT_LOGGER (moonshot_logger_get_type ())
+#define MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLogger))
+#define MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+#define IS_MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MOONSHOT_LOGGER))
+#define IS_MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MOONSHOT_LOGGER))
+#define MOONSHOT_LOGGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass))
+
+typedef struct _MoonshotLogger MoonshotLogger;
+typedef struct _MoonshotLoggerClass MoonshotLoggerClass;
+#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
+#define _g_free0(var) (var = (g_free (var), NULL))
+
+#define WEB_PROVISIONING_TYPE_PARSER (web_provisioning_parser_get_type ())
+#define WEB_PROVISIONING_PARSER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), WEB_PROVISIONING_TYPE_PARSER, WebProvisioningParser))
+#define WEB_PROVISIONING_PARSER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), WEB_PROVISIONING_TYPE_PARSER, WebProvisioningParserClass))
+#define WEB_PROVISIONING_IS_PARSER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), WEB_PROVISIONING_TYPE_PARSER))
+#define WEB_PROVISIONING_IS_PARSER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), WEB_PROVISIONING_TYPE_PARSER))
+#define WEB_PROVISIONING_PARSER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), WEB_PROVISIONING_TYPE_PARSER, WebProvisioningParserClass))
+
+typedef struct _WebProvisioningParser WebProvisioningParser;
+typedef struct _WebProvisioningParserClass WebProvisioningParserClass;
+
+#define TYPE_ID_CARD (id_card_get_type ())
+#define ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ID_CARD, IdCard))
+#define ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ID_CARD, IdCardClass))
+#define IS_ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ID_CARD))
+#define IS_ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ID_CARD))
+#define ID_CARD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ID_CARD, IdCardClass))
+
+typedef struct _IdCard IdCard;
+typedef struct _IdCardClass IdCardClass;
+
+#define TYPE_RULE (rule_get_type ())
+typedef struct _Rule Rule;
+
+#define TYPE_TRUST_ANCHOR (trust_anchor_get_type ())
+#define TRUST_ANCHOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TRUST_ANCHOR, TrustAnchor))
+#define TRUST_ANCHOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TRUST_ANCHOR, TrustAnchorClass))
+#define IS_TRUST_ANCHOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TRUST_ANCHOR))
+#define IS_TRUST_ANCHOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TRUST_ANCHOR))
+#define TRUST_ANCHOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TRUST_ANCHOR, TrustAnchorClass))
+
+typedef struct _TrustAnchor TrustAnchor;
+typedef struct _TrustAnchorClass TrustAnchorClass;
+#define _moonshot_error_free0(var) ((var == NULL) ? NULL : (var = (moonshot_error_free (var), NULL)))
+
+struct _Rule {
+       gchar* pattern;
+       gchar* always_confirm;
+};
+
+
+extern MoonshotLogger* web_provisioning_logger;
+MoonshotLogger* web_provisioning_logger = NULL;
+
+GType moonshot_logger_get_type (void) G_GNUC_CONST;
+gint web_provisioning_main (gchar** args, int args_length1);
+MoonshotLogger* moonshot_logger_new (const gchar* name);
+MoonshotLogger* moonshot_logger_construct (GType object_type, const gchar* name);
+GType web_provisioning_parser_get_type (void) G_GNUC_CONST;
+WebProvisioningParser* web_provisioning_parser_new (const gchar* path);
+WebProvisioningParser* web_provisioning_parser_construct (GType object_type, const gchar* path);
+void web_provisioning_parser_parse (WebProvisioningParser* self);
+void moonshot_logger_trace (MoonshotLogger* self, const gchar* message, GError* e);
+GType id_card_get_type (void) G_GNUC_CONST;
+IdCard** web_provisioning_parser_get_cards (WebProvisioningParser* self, int* result_length1);
+GType rule_get_type (void) G_GNUC_CONST;
+Rule* rule_dup (const Rule* self);
+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_dup1 (Rule* self, int length);
+GeeArrayList* id_card_get_services (IdCard* self);
+const gchar* id_card_get_display_name (IdCard* self);
+const gchar* id_card_get_username (IdCard* self);
+const gchar* id_card_get_password (IdCard* self);
+const gchar* id_card_get_issuer (IdCard* self);
+GType trust_anchor_get_type (void) G_GNUC_CONST;
+TrustAnchor* id_card_get_trust_anchor (IdCard* self);
+const gchar* trust_anchor_get_ca_cert (TrustAnchor* self);
+const gchar* trust_anchor_get_subject (TrustAnchor* self);
+const gchar* trust_anchor_get_subject_alt (TrustAnchor* self);
+const gchar* trust_anchor_get_server_cert (TrustAnchor* self);
+static void _vala_Rule_array_free (Rule* array, gint array_length);
+static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func);
+static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func);
+
+
+static gunichar string_get_char (const gchar* self, glong index) {
+       gunichar result = 0U;
+       glong _tmp0_ = 0L;
+       gunichar _tmp1_ = 0U;
+#line 1124 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (self != NULL, 0U);
+#line 1125 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp0_ = index;
+#line 1125 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       _tmp1_ = g_utf8_get_char (((gchar*) self) + _tmp0_);
+#line 1125 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       result = _tmp1_;
+#line 1125 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       return result;
+#line 151 "moonshot-webp-parser.c"
+}
+
+
+static gpointer _g_object_ref0 (gpointer self) {
+#line 79 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       return self ? g_object_ref (self) : NULL;
+#line 158 "moonshot-webp-parser.c"
+}
+
+
+static Rule* _vala_array_dup1 (Rule* self, int length) {
+       Rule* result;
+       int i;
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       result = g_new0 (Rule, length);
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       for (i = 0; i < length; i++) {
+#line 169 "moonshot-webp-parser.c"
+               Rule _tmp0_ = {0};
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+               rule_copy (&self[i], &_tmp0_);
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+               result[i] = _tmp0_;
+#line 175 "moonshot-webp-parser.c"
+       }
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       return result;
+#line 179 "moonshot-webp-parser.c"
+}
+
+
+static const gchar* string_to_string (const gchar* self) {
+       const gchar* result = NULL;
+#line 1420 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       g_return_val_if_fail (self != NULL, NULL);
+#line 1421 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       result = self;
+#line 1421 "/usr/share/vala-0.34/vapi/glib-2.0.vapi"
+       return result;
+#line 191 "moonshot-webp-parser.c"
+}
+
+
+static void _vala_Rule_array_free (Rule* array, gint array_length) {
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       if (array != NULL) {
+#line 198 "moonshot-webp-parser.c"
+               int i;
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+               for (i = 0; i < array_length; i = i + 1) {
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                       rule_destroy (&array[i]);
+#line 204 "moonshot-webp-parser.c"
+               }
+       }
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       g_free (array);
+#line 209 "moonshot-webp-parser.c"
+}
+
+
+gint web_provisioning_main (gchar** args, int args_length1) {
+       gint result = 0;
+       MoonshotLogger* _tmp0_ = NULL;
+       gint arg_index = 0;
+       gint force_flat_file_store = 0;
+       gboolean bad_switch = FALSE;
+       gboolean _tmp18_ = FALSE;
+       gboolean _tmp19_ = FALSE;
+       gchar* webp_file = NULL;
+       gchar** _tmp26_ = NULL;
+       gint _tmp26__length1 = 0;
+       gint _tmp27_ = 0;
+       const gchar* _tmp28_ = NULL;
+       gchar* _tmp29_ = NULL;
+       const gchar* _tmp30_ = NULL;
+       gboolean _tmp31_ = FALSE;
+       WebProvisioningParser* webp = NULL;
+       const gchar* _tmp35_ = NULL;
+       WebProvisioningParser* _tmp36_ = NULL;
+       WebProvisioningParser* _tmp37_ = NULL;
+       MoonshotLogger* _tmp38_ = NULL;
+       WebProvisioningParser* _tmp39_ = NULL;
+       IdCard** _tmp40_ = NULL;
+       gint _tmp40__length1 = 0;
+       IdCard** _tmp41_ = NULL;
+       gint _tmp41__length1 = 0;
+       gchar* _tmp42_ = NULL;
+       gchar* _tmp43_ = NULL;
+       gchar* _tmp44_ = NULL;
+       gchar* _tmp45_ = NULL;
+       WebProvisioningParser* _tmp46_ = NULL;
+       IdCard** _tmp47_ = NULL;
+       gint _tmp47__length1 = 0;
+       IdCard** _tmp48_ = NULL;
+       gint _tmp48__length1 = 0;
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       _tmp0_ = moonshot_logger_new ("WebProvisioning (WebpParser)");
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       _g_object_unref0 (web_provisioning_logger);
+#line 40 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       web_provisioning_logger = _tmp0_;
+#line 42 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       arg_index = -1;
+#line 43 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       force_flat_file_store = 0;
+#line 44 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       bad_switch = FALSE;
+#line 260 "moonshot-webp-parser.c"
+       {
+               gboolean _tmp1_ = FALSE;
+#line 45 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+               arg_index = 1;
+#line 45 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+               _tmp1_ = TRUE;
+#line 45 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+               while (TRUE) {
+#line 269 "moonshot-webp-parser.c"
+                       gint _tmp3_ = 0;
+                       gchar** _tmp4_ = NULL;
+                       gint _tmp4__length1 = 0;
+                       gchar* arg = NULL;
+                       gchar** _tmp5_ = NULL;
+                       gint _tmp5__length1 = 0;
+                       gint _tmp6_ = 0;
+                       const gchar* _tmp7_ = NULL;
+                       gchar* _tmp8_ = NULL;
+                       gunichar c = 0U;
+                       const gchar* _tmp9_ = NULL;
+                       gunichar _tmp10_ = 0U;
+                       gunichar _tmp11_ = 0U;
+#line 45 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                       if (!_tmp1_) {
+#line 285 "moonshot-webp-parser.c"
+                               gint _tmp2_ = 0;
+#line 45 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp2_ = arg_index;
+#line 45 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               arg_index = _tmp2_ + 1;
+#line 291 "moonshot-webp-parser.c"
+                       }
+#line 45 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                       _tmp1_ = FALSE;
+#line 45 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                       _tmp3_ = arg_index;
+#line 45 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                       _tmp4_ = args;
+#line 45 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                       _tmp4__length1 = args_length1;
+#line 45 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                       if (!(_tmp3_ < _tmp4__length1)) {
+#line 45 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               break;
+#line 305 "moonshot-webp-parser.c"
+                       }
+#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                       _tmp5_ = args;
+#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                       _tmp5__length1 = args_length1;
+#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                       _tmp6_ = arg_index;
+#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                       _tmp7_ = _tmp5_[_tmp6_];
+#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                       _tmp8_ = g_strdup (_tmp7_);
+#line 46 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                       arg = _tmp8_;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                       _tmp9_ = arg;
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                       _tmp10_ = string_get_char (_tmp9_, (glong) 0);
+#line 47 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                       c = _tmp10_;
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                       _tmp11_ = c;
+#line 48 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                       if (_tmp11_ == ((gunichar) '-')) {
+#line 329 "moonshot-webp-parser.c"
+                               const gchar* _tmp12_ = NULL;
+                               const gchar* _tmp13_ = NULL;
+                               gchar* _tmp14_ = NULL;
+                               const gchar* _tmp15_ = NULL;
+                               gunichar _tmp16_ = 0U;
+                               gunichar _tmp17_ = 0U;
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp12_ = arg;
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp13_ = g_utf8_next_char (_tmp12_);
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp14_ = g_strdup (_tmp13_);
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _g_free0 (arg);
+#line 49 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               arg = _tmp14_;
+#line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp15_ = arg;
+#line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp16_ = string_get_char (_tmp15_, (glong) 0);
+#line 50 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               c = _tmp16_;
+#line 51 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp17_ = c;
+#line 51 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               switch (_tmp17_) {
+#line 51 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       case 'f':
+#line 358 "moonshot-webp-parser.c"
+                                       {
+#line 53 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                               force_flat_file_store = 1;
+#line 54 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                               break;
+#line 364 "moonshot-webp-parser.c"
+                                       }
+                                       default:
+                                       {
+#line 56 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                               bad_switch = TRUE;
+#line 57 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                               break;
+#line 372 "moonshot-webp-parser.c"
+                                       }
+                               }
+                       } else {
+#line 60 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _g_free0 (arg);
+#line 60 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               break;
+#line 380 "moonshot-webp-parser.c"
+                       }
+#line 45 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                       _g_free0 (arg);
+#line 384 "moonshot-webp-parser.c"
+               }
+       }
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       _tmp19_ = bad_switch;
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       if (_tmp19_) {
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+               _tmp18_ = TRUE;
+#line 393 "moonshot-webp-parser.c"
+       } else {
+               gint _tmp20_ = 0;
+               gchar** _tmp21_ = NULL;
+               gint _tmp21__length1 = 0;
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+               _tmp20_ = arg_index;
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+               _tmp21_ = args;
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+               _tmp21__length1 = args_length1;
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+               _tmp18_ = _tmp20_ != (_tmp21__length1 - 1);
+#line 406 "moonshot-webp-parser.c"
+       }
+#line 63 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       if (_tmp18_) {
+#line 410 "moonshot-webp-parser.c"
+               FILE* _tmp22_ = NULL;
+               const gchar* _tmp23_ = NULL;
+               gchar** _tmp24_ = NULL;
+               gint _tmp24__length1 = 0;
+               const gchar* _tmp25_ = NULL;
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+               _tmp22_ = stdout;
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+               _tmp23_ = _ ("Usage %s [-f] WEB_PROVISIONING_FILE\n" \
+" -f: add identities to flat file store.\n");
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+               _tmp24_ = args;
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+               _tmp24__length1 = args_length1;
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+               _tmp25_ = _tmp24_[0];
+#line 65 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+               fprintf (_tmp22_, _tmp23_, _tmp25_);
+#line 66 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+               result = -1;
+#line 66 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+               return result;
+#line 432 "moonshot-webp-parser.c"
+       }
+#line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       _tmp26_ = args;
+#line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       _tmp26__length1 = args_length1;
+#line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       _tmp27_ = arg_index;
+#line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       _tmp28_ = _tmp26_[_tmp27_];
+#line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       _tmp29_ = g_strdup (_tmp28_);
+#line 68 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       webp_file = _tmp29_;
+#line 70 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       _tmp30_ = webp_file;
+#line 70 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       _tmp31_ = g_file_test (_tmp30_, G_FILE_TEST_EXISTS | G_FILE_TEST_IS_REGULAR);
+#line 70 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       if (!_tmp31_) {
+#line 452 "moonshot-webp-parser.c"
+               FILE* _tmp32_ = NULL;
+               const gchar* _tmp33_ = NULL;
+               const gchar* _tmp34_ = NULL;
+#line 72 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+               _tmp32_ = stdout;
+#line 72 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+               _tmp33_ = _ ("%s does not exist\n");
+#line 72 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+               _tmp34_ = webp_file;
+#line 72 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+               fprintf (_tmp32_, _tmp33_, _tmp34_);
+#line 73 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+               result = -1;
+#line 73 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+               _g_free0 (webp_file);
+#line 73 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+               return result;
+#line 470 "moonshot-webp-parser.c"
+       }
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       _tmp35_ = webp_file;
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       _tmp36_ = web_provisioning_parser_new (_tmp35_);
+#line 76 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       webp = _tmp36_;
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       _tmp37_ = webp;
+#line 77 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       web_provisioning_parser_parse (_tmp37_);
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       _tmp38_ = web_provisioning_logger;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       _tmp39_ = webp;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       _tmp40_ = web_provisioning_parser_get_cards (_tmp39_, &_tmp40__length1);
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       _tmp41_ = _tmp40_;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       _tmp41__length1 = _tmp40__length1;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       _tmp42_ = g_strdup_printf ("%i", _tmp41__length1);
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       _tmp43_ = _tmp42_;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       _tmp44_ = g_strconcat ("Have ", _tmp43_, " IdCards", NULL);
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       _tmp45_ = _tmp44_;
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       moonshot_logger_trace (_tmp38_, _tmp45_, NULL);
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       _g_free0 (_tmp45_);
+#line 78 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       _g_free0 (_tmp43_);
+#line 79 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       _tmp46_ = webp;
+#line 79 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       _tmp47_ = web_provisioning_parser_get_cards (_tmp46_, &_tmp47__length1);
+#line 79 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       _tmp48_ = _tmp47_;
+#line 79 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       _tmp48__length1 = _tmp47__length1;
+#line 514 "moonshot-webp-parser.c"
+       {
+               IdCard** card_collection = NULL;
+               gint card_collection_length1 = 0;
+               gint _card_collection_size_ = 0;
+               gint card_it = 0;
+#line 79 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+               card_collection = _tmp48_;
+#line 79 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+               card_collection_length1 = _tmp48__length1;
+#line 79 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+               for (card_it = 0; card_it < _tmp48__length1; card_it = card_it + 1) {
+#line 526 "moonshot-webp-parser.c"
+                       IdCard* _tmp49_ = NULL;
+                       IdCard* card = NULL;
+#line 79 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                       _tmp49_ = _g_object_ref0 (card_collection[card_it]);
+#line 79 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                       card = _tmp49_;
+#line 533 "moonshot-webp-parser.c"
+                       {
+                               IdCard* _tmp50_ = NULL;
+                               MoonshotError* _error_ = NULL;
+                               gchar** rules_patterns = NULL;
+                               gchar** _tmp52_ = NULL;
+                               gint rules_patterns_length1 = 0;
+                               gint _rules_patterns_size_ = 0;
+                               gchar** rules_always_confirm = NULL;
+                               gchar** _tmp53_ = NULL;
+                               gint rules_always_confirm_length1 = 0;
+                               gint _rules_always_confirm_size_ = 0;
+                               Rule* rules = NULL;
+                               IdCard* _tmp54_ = NULL;
+                               Rule* _tmp55_ = NULL;
+                               gint _tmp55__length1 = 0;
+                               Rule* _tmp56_ = NULL;
+                               gint _tmp56__length1 = 0;
+                               Rule* _tmp57_ = NULL;
+                               gint _tmp57__length1 = 0;
+                               gint rules_length1 = 0;
+                               gint _rules_size_ = 0;
+                               gchar** svcs = NULL;
+                               IdCard* _tmp58_ = NULL;
+                               GeeArrayList* _tmp59_ = NULL;
+                               GeeArrayList* _tmp60_ = NULL;
+                               gint _tmp61_ = 0;
+                               gint _tmp62_ = 0;
+                               gchar** _tmp63_ = NULL;
+                               gint svcs_length1 = 0;
+                               gint _svcs_size_ = 0;
+                               Rule* _tmp80_ = NULL;
+                               gint _tmp80__length1 = 0;
+                               MoonshotLogger* _tmp100_ = NULL;
+                               IdCard* _tmp101_ = NULL;
+                               const gchar* _tmp102_ = NULL;
+                               const gchar* _tmp103_ = NULL;
+                               const gchar* _tmp104_ = NULL;
+                               gchar* _tmp105_ = NULL;
+                               gchar* _tmp106_ = NULL;
+                               IdCard* _tmp107_ = NULL;
+                               const gchar* _tmp108_ = NULL;
+                               const gchar* _tmp109_ = NULL;
+                               IdCard* _tmp110_ = NULL;
+                               const gchar* _tmp111_ = NULL;
+                               const gchar* _tmp112_ = NULL;
+                               IdCard* _tmp113_ = NULL;
+                               const gchar* _tmp114_ = NULL;
+                               const gchar* _tmp115_ = NULL;
+                               IdCard* _tmp116_ = NULL;
+                               const gchar* _tmp117_ = NULL;
+                               const gchar* _tmp118_ = NULL;
+                               gchar** _tmp119_ = NULL;
+                               gint _tmp119__length1 = 0;
+                               gchar** _tmp120_ = NULL;
+                               gint _tmp120__length1 = 0;
+                               gchar** _tmp121_ = NULL;
+                               gint _tmp121__length1 = 0;
+                               IdCard* _tmp122_ = NULL;
+                               TrustAnchor* _tmp123_ = NULL;
+                               TrustAnchor* _tmp124_ = NULL;
+                               const gchar* _tmp125_ = NULL;
+                               const gchar* _tmp126_ = NULL;
+                               IdCard* _tmp127_ = NULL;
+                               TrustAnchor* _tmp128_ = NULL;
+                               TrustAnchor* _tmp129_ = NULL;
+                               const gchar* _tmp130_ = NULL;
+                               const gchar* _tmp131_ = NULL;
+                               IdCard* _tmp132_ = NULL;
+                               TrustAnchor* _tmp133_ = NULL;
+                               TrustAnchor* _tmp134_ = NULL;
+                               const gchar* _tmp135_ = NULL;
+                               const gchar* _tmp136_ = NULL;
+                               IdCard* _tmp137_ = NULL;
+                               TrustAnchor* _tmp138_ = NULL;
+                               TrustAnchor* _tmp139_ = NULL;
+                               const gchar* _tmp140_ = NULL;
+                               const gchar* _tmp141_ = NULL;
+                               gint _tmp142_ = 0;
+                               MoonshotError* _tmp143_ = NULL;
+                               MoonshotError* _tmp144_ = NULL;
+#line 82 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp50_ = card;
+#line 82 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               if (_tmp50_ == NULL) {
+#line 618 "moonshot-webp-parser.c"
+                                       MoonshotLogger* _tmp51_ = NULL;
+#line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       _tmp51_ = web_provisioning_logger;
+#line 83 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       moonshot_logger_trace (_tmp51_, "Skipping null IdCard", NULL);
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       _g_object_unref0 (card);
+#line 84 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       continue;
+#line 628 "moonshot-webp-parser.c"
+                               }
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp52_ = g_new0 (gchar*, 0 + 1);
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               rules_patterns = _tmp52_;
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               rules_patterns_length1 = 0;
+#line 88 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _rules_patterns_size_ = rules_patterns_length1;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp53_ = g_new0 (gchar*, 0 + 1);
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               rules_always_confirm = _tmp53_;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               rules_always_confirm_length1 = 0;
+#line 89 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _rules_always_confirm_size_ = rules_always_confirm_length1;
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp54_ = card;
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp55_ = id_card_get_rules (_tmp54_, &_tmp55__length1);
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp56_ = _tmp55_;
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp56__length1 = _tmp55__length1;
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp57_ = (_tmp56_ != NULL) ? _vala_array_dup1 (_tmp56_, _tmp56__length1) : ((gpointer) _tmp56_);
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp57__length1 = _tmp56__length1;
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               rules = _tmp57_;
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               rules_length1 = _tmp57__length1;
+#line 92 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _rules_size_ = rules_length1;
+#line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp58_ = card;
+#line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp59_ = id_card_get_services (_tmp58_);
+#line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp60_ = _tmp59_;
+#line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp61_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp60_);
+#line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp62_ = _tmp61_;
+#line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp63_ = g_new0 (gchar*, _tmp62_ + 1);
+#line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               svcs = _tmp63_;
+#line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               svcs_length1 = _tmp62_;
+#line 93 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _svcs_size_ = svcs_length1;
+#line 682 "moonshot-webp-parser.c"
+                               {
+                                       gint i = 0;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       i = 0;
+#line 687 "moonshot-webp-parser.c"
+                                       {
+                                               gboolean _tmp64_ = FALSE;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                               _tmp64_ = TRUE;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                               while (TRUE) {
+#line 694 "moonshot-webp-parser.c"
+                                                       gint _tmp66_ = 0;
+                                                       IdCard* _tmp67_ = NULL;
+                                                       GeeArrayList* _tmp68_ = NULL;
+                                                       GeeArrayList* _tmp69_ = NULL;
+                                                       gint _tmp70_ = 0;
+                                                       gint _tmp71_ = 0;
+                                                       gchar** _tmp72_ = NULL;
+                                                       gint _tmp72__length1 = 0;
+                                                       gint _tmp73_ = 0;
+                                                       IdCard* _tmp74_ = NULL;
+                                                       GeeArrayList* _tmp75_ = NULL;
+                                                       GeeArrayList* _tmp76_ = NULL;
+                                                       gint _tmp77_ = 0;
+                                                       gpointer _tmp78_ = NULL;
+                                                       gchar* _tmp79_ = NULL;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                       if (!_tmp64_) {
+#line 712 "moonshot-webp-parser.c"
+                                                               gint _tmp65_ = 0;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                               _tmp65_ = i;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                               i = _tmp65_ + 1;
+#line 718 "moonshot-webp-parser.c"
+                                                       }
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                       _tmp64_ = FALSE;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                       _tmp66_ = i;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                       _tmp67_ = card;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                       _tmp68_ = id_card_get_services (_tmp67_);
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                       _tmp69_ = _tmp68_;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                       _tmp70_ = gee_abstract_collection_get_size ((GeeAbstractCollection*) _tmp69_);
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                       _tmp71_ = _tmp70_;
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                       if (!(_tmp66_ < _tmp71_)) {
+#line 94 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                               break;
+#line 738 "moonshot-webp-parser.c"
+                                                       }
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                       _tmp72_ = svcs;
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                       _tmp72__length1 = svcs_length1;
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                       _tmp73_ = i;
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                       _tmp74_ = card;
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                       _tmp75_ = id_card_get_services (_tmp74_);
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                       _tmp76_ = _tmp75_;
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                       _tmp77_ = i;
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                       _tmp78_ = gee_abstract_list_get ((GeeAbstractList*) _tmp76_, _tmp77_);
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                       _g_free0 (_tmp72_[_tmp73_]);
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                       _tmp72_[_tmp73_] = (gchar*) _tmp78_;
+#line 95 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                       _tmp79_ = _tmp72_[_tmp73_];
+#line 762 "moonshot-webp-parser.c"
+                                               }
+                                       }
+                               }
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp80_ = rules;
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp80__length1 = rules_length1;
+#line 98 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               if (_tmp80__length1 > 0) {
+#line 772 "moonshot-webp-parser.c"
+                                       gint i = 0;
+                                       Rule* _tmp81_ = NULL;
+                                       gint _tmp81__length1 = 0;
+                                       gchar** _tmp82_ = NULL;
+                                       Rule* _tmp83_ = NULL;
+                                       gint _tmp83__length1 = 0;
+                                       gchar** _tmp84_ = NULL;
+                                       Rule* _tmp85_ = NULL;
+                                       gint _tmp85__length1 = 0;
+#line 100 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       i = 0;
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       _tmp81_ = rules;
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       _tmp81__length1 = rules_length1;
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       _tmp82_ = g_new0 (gchar*, _tmp81__length1 + 1);
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       rules_patterns = (_vala_array_free (rules_patterns, rules_patterns_length1, (GDestroyNotify) g_free), NULL);
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       rules_patterns = _tmp82_;
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       rules_patterns_length1 = _tmp81__length1;
+#line 101 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       _rules_patterns_size_ = rules_patterns_length1;
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       _tmp83_ = rules;
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       _tmp83__length1 = rules_length1;
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       _tmp84_ = g_new0 (gchar*, _tmp83__length1 + 1);
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       rules_always_confirm = (_vala_array_free (rules_always_confirm, rules_always_confirm_length1, (GDestroyNotify) g_free), NULL);
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       rules_always_confirm = _tmp84_;
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       rules_always_confirm_length1 = _tmp83__length1;
+#line 102 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       _rules_always_confirm_size_ = rules_always_confirm_length1;
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       _tmp85_ = rules;
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       _tmp85__length1 = rules_length1;
+#line 816 "moonshot-webp-parser.c"
+                                       {
+                                               Rule* r_collection = NULL;
+                                               gint r_collection_length1 = 0;
+                                               gint _r_collection_size_ = 0;
+                                               gint r_it = 0;
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                               r_collection = _tmp85_;
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                               r_collection_length1 = _tmp85__length1;
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                               for (r_it = 0; r_it < _tmp85__length1; r_it = r_it + 1) {
+#line 828 "moonshot-webp-parser.c"
+                                                       Rule _tmp86_ = {0};
+                                                       Rule r = {0};
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                       rule_copy (&r_collection[r_it], &_tmp86_);
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                       r = _tmp86_;
+#line 835 "moonshot-webp-parser.c"
+                                                       {
+                                                               gchar** _tmp87_ = NULL;
+                                                               gint _tmp87__length1 = 0;
+                                                               gint _tmp88_ = 0;
+                                                               Rule _tmp89_ = {0};
+                                                               const gchar* _tmp90_ = NULL;
+                                                               gchar* _tmp91_ = NULL;
+                                                               gchar* _tmp92_ = NULL;
+                                                               gchar** _tmp93_ = NULL;
+                                                               gint _tmp93__length1 = 0;
+                                                               gint _tmp94_ = 0;
+                                                               Rule _tmp95_ = {0};
+                                                               const gchar* _tmp96_ = NULL;
+                                                               gchar* _tmp97_ = NULL;
+                                                               gchar* _tmp98_ = NULL;
+                                                               gint _tmp99_ = 0;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                               _tmp87_ = rules_patterns;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                               _tmp87__length1 = rules_patterns_length1;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                               _tmp88_ = i;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                               _tmp89_ = r;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                               _tmp90_ = _tmp89_.pattern;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                               _tmp91_ = g_strdup (_tmp90_);
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                               _g_free0 (_tmp87_[_tmp88_]);
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                               _tmp87_[_tmp88_] = _tmp91_;
+#line 105 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                               _tmp92_ = _tmp87_[_tmp88_];
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                               _tmp93_ = rules_always_confirm;
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                               _tmp93__length1 = rules_always_confirm_length1;
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                               _tmp94_ = i;
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                               _tmp95_ = r;
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                               _tmp96_ = _tmp95_.always_confirm;
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                               _tmp97_ = g_strdup (_tmp96_);
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                               _g_free0 (_tmp93_[_tmp94_]);
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                               _tmp93_[_tmp94_] = _tmp97_;
+#line 106 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                               _tmp98_ = _tmp93_[_tmp94_];
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                               _tmp99_ = i;
+#line 107 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                               i = _tmp99_ + 1;
+#line 103 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                                               rule_destroy (&r);
+#line 894 "moonshot-webp-parser.c"
+                                                       }
+                                               }
+                                       }
+                               }
+#line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp100_ = web_provisioning_logger;
+#line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp101_ = card;
+#line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp102_ = id_card_get_display_name (_tmp101_);
+#line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp103_ = _tmp102_;
+#line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp104_ = string_to_string (_tmp103_);
+#line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp105_ = g_strconcat ("Installing IdCard named '", _tmp104_, "'", NULL);
+#line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp106_ = _tmp105_;
+#line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               moonshot_logger_trace (_tmp100_, _tmp106_, NULL);
+#line 111 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _g_free0 (_tmp106_);
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp107_ = card;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp108_ = id_card_get_display_name (_tmp107_);
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp109_ = _tmp108_;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp110_ = card;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp111_ = id_card_get_username (_tmp110_);
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp112_ = _tmp111_;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp113_ = card;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp114_ = id_card_get_password (_tmp113_);
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp115_ = _tmp114_;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp116_ = card;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp117_ = id_card_get_issuer (_tmp116_);
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp118_ = _tmp117_;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp119_ = rules_patterns;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp119__length1 = rules_patterns_length1;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp120_ = rules_always_confirm;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp120__length1 = rules_always_confirm_length1;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp121_ = svcs;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp121__length1 = svcs_length1;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp122_ = card;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp123_ = id_card_get_trust_anchor (_tmp122_);
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp124_ = _tmp123_;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp125_ = trust_anchor_get_ca_cert (_tmp124_);
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp126_ = _tmp125_;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp127_ = card;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp128_ = id_card_get_trust_anchor (_tmp127_);
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp129_ = _tmp128_;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp130_ = trust_anchor_get_subject (_tmp129_);
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp131_ = _tmp130_;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp132_ = card;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp133_ = id_card_get_trust_anchor (_tmp132_);
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp134_ = _tmp133_;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp135_ = trust_anchor_get_subject_alt (_tmp134_);
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp136_ = _tmp135_;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp137_ = card;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp138_ = id_card_get_trust_anchor (_tmp137_);
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp139_ = _tmp138_;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp140_ = trust_anchor_get_server_cert (_tmp139_);
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp141_ = _tmp140_;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp142_ = force_flat_file_store;
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               moonshot_install_id_card (_tmp109_, _tmp112_, _tmp115_, _tmp118_, _tmp119_, _tmp119__length1, _tmp120_, _tmp120__length1, _tmp121_, _tmp121__length1, _tmp126_, _tmp131_, _tmp136_, _tmp141_, _tmp142_, &_tmp143_);
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _moonshot_error_free0 (_error_);
+#line 112 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _error_ = _tmp143_;
+#line 126 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _tmp144_ = _error_;
+#line 126 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               if (_tmp144_ != NULL) {
+#line 1005 "moonshot-webp-parser.c"
+                                       FILE* _tmp145_ = NULL;
+                                       MoonshotError* _tmp146_ = NULL;
+                                       const gchar* _tmp147_ = NULL;
+#line 128 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       _tmp145_ = stderr;
+#line 128 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       _tmp146_ = _error_;
+#line 128 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       _tmp147_ = _tmp146_->message;
+#line 128 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       fprintf (_tmp145_, "Error: %s", _tmp147_);
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       svcs = (_vala_array_free (svcs, svcs_length1, (GDestroyNotify) g_free), NULL);
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       rules = (_vala_Rule_array_free (rules, rules_length1), NULL);
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       rules_always_confirm = (_vala_array_free (rules_always_confirm, rules_always_confirm_length1, (GDestroyNotify) g_free), NULL);
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       rules_patterns = (_vala_array_free (rules_patterns, rules_patterns_length1, (GDestroyNotify) g_free), NULL);
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       _moonshot_error_free0 (_error_);
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       _g_object_unref0 (card);
+#line 129 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                                       continue;
+#line 1031 "moonshot-webp-parser.c"
+                               }
+#line 79 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               svcs = (_vala_array_free (svcs, svcs_length1, (GDestroyNotify) g_free), NULL);
+#line 79 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               rules = (_vala_Rule_array_free (rules, rules_length1), NULL);
+#line 79 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               rules_always_confirm = (_vala_array_free (rules_always_confirm, rules_always_confirm_length1, (GDestroyNotify) g_free), NULL);
+#line 79 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               rules_patterns = (_vala_array_free (rules_patterns, rules_patterns_length1, (GDestroyNotify) g_free), NULL);
+#line 79 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _moonshot_error_free0 (_error_);
+#line 79 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+                               _g_object_unref0 (card);
+#line 1045 "moonshot-webp-parser.c"
+                       }
+               }
+       }
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       result = 0;
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       _g_object_unref0 (webp);
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       _g_free0 (webp_file);
+#line 133 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       return result;
+#line 1057 "moonshot-webp-parser.c"
+}
+
+
+int main (int argc, char ** argv) {
+#if !GLIB_CHECK_VERSION (2,35,0)
+       g_type_init ();
+#endif
+#line 38 "/home/hartmans/moonshot/moonshot/ui/src/moonshot-webp-parser.vala"
+       return web_provisioning_main (argv, argc);
+#line 1067 "moonshot-webp-parser.c"
+}
+
+
+static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func) {
+       if ((array != NULL) && (destroy_func != NULL)) {
+               int i;
+               for (i = 0; i < array_length; i = i + 1) {
+                       if (((gpointer*) array)[i] != NULL) {
+                               destroy_func (((gpointer*) array)[i]);
+                       }
+               }
+       }
+}
+
+
+static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func) {
+       _vala_array_destroy (array, array_length, destroy_func);
+       g_free (array);
+}
+
+
+
diff --git a/webprovisioning/blank-test.msht b/webprovisioning/blank-test.msht
deleted file mode 100644 (file)
index 5287550..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-<!-- See https://bugs.launchpad.net/moonshot-ui/+bug/1430980, including comments -->
-
-<identities>
-
-  <identity>
-    <display-name>Not No Identity</display-name>
-    <user>someone</user>
-    <password></password>
-    <realm>painless-security.com</realm>
-    <services>
-      <service>something/painless-security.com</service>
-      <service>somethingelse/painless-security.com</service>
-    </services>
-  </identity>
-
-  <identity>
-    <display-name>No Identity</display-name>
-    <services>
-      <service>a_service/painless-security.com</service>
-      <service>another_service/painless-security.com</service>
-    </services>
-  </identity>
-
-</identities> 
diff --git a/webprovisioning/cert-test.msht b/webprovisioning/cert-test.msht
deleted file mode 100644 (file)
index ab56e5f..0000000
+++ /dev/null
@@ -1,120 +0,0 @@
-<identities>
-    <identity>
-    <display-name>No Trust Anchor</display-name>
-    <user>user5</user>
-    <password></password>
-    <realm>painless-security.com</realm>
-    <services>
-    </services>
-  </identity>
-
-  <identity>
-    <display-name>Bad CA Certificate</display-name>
-    <user>user1</user>
-    <password></password>
-    <realm>painless-security.com</realm>
-    <services>
-    </services>
-    <selection-rules>
-    </selection-rules>
-    <trust-anchor>
-     <!-- PEM encoded, minus header and footer -->
-      <ca-cert>MIIE5DCCA8ygAwIBAgIJAOz4PYh7hLBrMA0GCSqGSIb3DQEBBQUAMIGTMQswCQYD
-VQQGEwJGUjEPMA0GA1UECBMGUmFkaXVzMRIwEAYDVQQHEwlTb21ld2hlcmUxFTAT
-BgNVBAoTDEV4YW1wbGUgSW5jLjEgMB4GCSqGSIb3DQEJARYRYWRtaW5AZXhhbXBs
-ZS5vcmcxJjAkBgNVBAMTHUV4YW1wbGUgQ2VydGlmaWNhdGUgQXV0aG9yaXR5MB4X
-DTE2MTAwNDE3MDYwMFoXDTE2MTIwMzE3MDYwMFowgZMxCzAJBgNVBAYTAkZSMQ8w
-DQYDVQQIEwZSYWRpdXMxEjAQBgNVBAcTCVNvbWV3aGVyZTEVMBMGA1UEChMMRXhh
-bXBsZSBJbmMuMSAwHgYJKoZIhvcNAQkBFhFhZG1pbkBleGFtcGxlLm9yZzEmMCQG
-A1UEAxMdRXhhbXBsZSBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwggEiMA0GCSqGSIb3
-DQEBAQUAA4IBDwAwggEKAoIBAQC3wTX5gGxa/Ge1RN4ZDx67WIeFxmKv6ZkS0c1p
-H2BS7RDGmBrWMG+RMX/kUdSNL1tarnbHknPYzKSdoTsM7bWLQpj1fV8nI4ZAF4Tp
-QG8jQHFmpTfHPjDv+E6wEfilyfXRDpym8ITQfLXTn85zvK82F+153Aqh+BrCyOvJ
-gANAoulArphg0UH6eyBuD+dezqXsinIMXfXZheTXi/TL3oSGjYkwF//WZUpmK5Kx
-w1NupFMjjCJzWf0MtDgG4Gl83JJMzoy/pSKvzWeglvaI8tt64iUkbKNstJT9C0G2
-y+fVM9aVeRAQ+1O1LRaKgqhQMTrs/LPQNUapRKGvkwXlCR6lAgMBAAGjggE3MIIB
-MzAdBgNVHQ4EFgQUMin4EfnT51ecs4f1KjpamdjQUDcwgcgGA1UdIwSBwDCBvYAU
-Min4EfnT51ecs4f1KjpamdjQUDehgZmkgZYwgZMxCzAJBgNVBAYTAkZSMQ8wDQYD
-VQQIEwZSYWRpdXMxEjAQBgNVBAcTCVNvbWV3aGVyZTEVMBMGA1UEChMMRXhhbXBs
-ZSBJbmMuMSAwHgYJKoZIhvcNAQkBFhFhZG1pbkBleGFtcGxlLm9yZzEmMCQGA1UE
-AxMdRXhhbXBsZSBDZXJ0aWZpY2F0ZSBBdXRob3JpdHmCCQDs+D2Ie4SwazAPBgNV
-HRMBAf8EBTADAQH/MDYGA1UdHwQvMC0wK6ApoCeGJWh0dHA6Ly93d3cuZXhhbXBs
-ZS5vcmcvZXhhbXBsZV9jYS5jcmwwDQYJKoZIhvcNAQEFBQADggEBAHzr/erMvZ76
-7FHpf5H3G/TL57k5POnDlTnolXmQdK2eaq0xLhaPuilvNa3txGGI0iBJAD20K5ss
-2o7ULHaAeuNAZ5+zuRx2xZrtLV3FQkugQZb70K/lECf3uCX4S/SqTeOo5VfPjaTM
-6MMgU9Tmvo9a1q7xHzm2yEqzhCbP7dZ4BmUPw9QIkqbirlcQ2GgxOah5m94e2ETf
-4SOBwM+5Lg+CAaCoIC0gpX2R3H+n4edslmiCoyU1r/Q6RQXiyWPdI6jjln08Jdt5
-0/rSpmhObSL0L7/z53+ka7jqW1ZxizVKYJiEIH9Y9Aw/vgf5nhnTgfTPfyPESyCO
-fi186fRC+Zs=</ca-cert>
-      <subject>Painless Security Server Certificate</subject>
-      <!-- Or alternatively -->
-      <server-cert></server-cert>
-    </trust-anchor>
-  </identity>
-  <identity>
-    <display-name>Good CA Certificate</display-name>
-    <user>user2</user>
-    <password></password>
-    <realm>painless-security.com</realm>
-    <services>
-    </services>
-    <selection-rules>
-    </selection-rules>
-    <trust-anchor>
-      <ca-cert>
-      <!-- DER format, base64-encoded -->
-MIIE9jCCA96gAwIBAgIJANI5K4+KXvQyMA0GCSqGSIb3DQEBBQUAMIGaMQswCQYD
-VQQGEwJVUzELMAkGA1UECBMCTUExDzANBgNVBAcTBk1hbGRlbjEaMBgGA1UEChMR
-UGFpbmxlc3MgU2VjdXJpdHkxLzAtBgkqhkiG9w0BCQEWIHBvc3RtYXN0ZXJAcGFp
-bmxlc3Mtc2VjdXJpdHkuY29tMSAwHgYDVQQDExdQYWlubGVzcyBTZWN1cml0eSwg
-SW5jLjAeFw0xNjA4MzAxOTU4MjlaFw0xOTEyMTMxOTU4MjlaMIGaMQswCQYDVQQG
-EwJVUzELMAkGA1UECBMCTUExDzANBgNVBAcTBk1hbGRlbjEaMBgGA1UEChMRUGFp
-bmxlc3MgU2VjdXJpdHkxLzAtBgkqhkiG9w0BCQEWIHBvc3RtYXN0ZXJAcGFpbmxl
-c3Mtc2VjdXJpdHkuY29tMSAwHgYDVQQDExdQYWlubGVzcyBTZWN1cml0eSwgSW5j
-LjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ6tW6x+aO4n7VJu5W55
-DeNKn7+89oaaTgSRs6jg3C+RpTmXugPonh9+YRbuWpSNeru2eWGFNYFs01OjaDUw
-CxPcFDgF3xP/wAyCsI7WUgmkz8991PUGo9RxVbkDxMePHNaLGQVNz/+EJgK/Ycfy
-jYvenb/BGvcBmMftk2HsHio65ZsHsGMfW2Wcg/ehvKeDRZ3WR1ujhkzIFWdgdH3E
-u/yI2pHEfxQQ3PuYcQz43YZyIwhwzwnQG8qTK2jWkMF+wzRKRYfLdRD8nUUingvu
-IbngXLs71JqQHmbXzw1WTJClXtfF6R2VZuZ6PT8ZK1bDFPvTgnkUcAk70H+VnDM5
-K48CAwEAAaOCATswggE3MB0GA1UdDgQWBBQoFRKLJrZvkNmqvw8DNuTLPyru/DCB
-zwYDVR0jBIHHMIHEgBQoFRKLJrZvkNmqvw8DNuTLPyru/KGBoKSBnTCBmjELMAkG
-A1UEBhMCVVMxCzAJBgNVBAgTAk1BMQ8wDQYDVQQHEwZNYWxkZW4xGjAYBgNVBAoT
-EVBhaW5sZXNzIFNlY3VyaXR5MS8wLQYJKoZIhvcNAQkBFiBwb3N0bWFzdGVyQHBh
-aW5sZXNzLXNlY3VyaXR5LmNvbTEgMB4GA1UEAxMXUGFpbmxlc3MgU2VjdXJpdHks
-IEluYy6CCQDSOSuPil70MjAMBgNVHRMEBTADAQH/MDYGA1UdHwQvMC0wK6ApoCeG
-JWh0dHA6Ly93d3cuZXhhbXBsZS5jb20vZXhhbXBsZV9jYS5jcmwwDQYJKoZIhvcN
-AQEFBQADggEBAIN38UOXvwd89+a89V+/rjeN8JfpcjafLf0c2I3nex9OxBWji5bf
-cWTNfm1t9GpS4HhVT2tl5xdxyW5UrE9Q+oFadN0LxtRPbGU+Gvt4pVo8Pst6/2P8
-PA3/OA1UchIpZR6EWQQsws4esNLLwDbj48MkQdVCjpp1cVpFVmJUzYYFD9h9EMK2
-kxpGf5wfp9LI2A5/qACNQPBDfRsR+dcNBsBbmD1LulqputUPuKPXnVbHWL28VZUY
-PITHl2Ndbmk6znSu7ILef3CGyeXqTTj+Jo+5AQz3sneko6oMn8PqfRj1h0uUyykT
-lavp3iTNstQs/rdqdI+lPYMokDKXRSD3pK8=
-</ca-cert>
-      <subject>Painless Security Server Certificate</subject>
-    </trust-anchor>
-  </identity>
-    <identity>
-    <display-name>Good Fingerprint</display-name>
-    <user>user3</user>
-    <password></password>
-    <realm>painless-security.com</realm>
-    <services>
-    </services>
-    <trust-anchor>
-      <server-cert>F2FCC5FAD4CCB7A7236A8AEEF5E94E0C0FB27BEC29DE0AE03C5B455D08D4DE77</server-cert>
-    </trust-anchor>
-  </identity>
-    <identity>
-    <display-name>Bad Fingerprint</display-name>
-    <user>user4</user>
-    <password></password>
-    <realm>painless-security.com</realm>
-    <services>
-    </services>
-    <trust-anchor>
-      <server-cert>4242424242424242424242424242424242424242424242424242424242424242</server-cert>
-    </trust-anchor>
-  </identity>
-
-</identities>