[Pkg-mono-svn-commits] [SCM] mono branch, upstream-experimental, updated. upstream/2.10.3-1-g85bc08e

Mirco Bauer meebey at meebey.net
Wed Aug 10 22:29:15 UTC 2011


The following commit has been merged in the upstream-experimental branch:
commit 85bc08e2bbb037c091c14c3379780f43dc74aa4f
Author: Mirco Bauer <meebey at meebey.net>
Date:   Thu Aug 11 00:10:13 2011 +0200

    Imported Upstream version 2.10.4

diff --git a/ChangeLog b/ChangeLog
index 70316d8..412e29a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2011-08-08  Alex Corrado  <alexc at xamarin.com>
+
+	2.10.4
+
 2011-07-27  Alex Corrado  <alexc at xamarin.com>
 
 	2.10.3
diff --git a/config.guess b/config.guess
index 666c5ad..396482d 100755
--- a/config.guess
+++ b/config.guess
@@ -1,10 +1,10 @@
 #! /bin/sh
 # Attempt to guess a canonical system name.
 #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
-#   Free Software Foundation, Inc.
+#   2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation,
+#   Inc.
 
-timestamp='2009-11-20'
+timestamp='2006-07-02'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -27,16 +27,16 @@ timestamp='2009-11-20'
 # the same distribution terms that you use for the rest of that program.
 
 
-# Originally written by Per Bothner.  Please send patches (context
-# diff format) to <config-patches at gnu.org> and include a ChangeLog
-# entry.
+# Originally written by Per Bothner <per at bothner.com>.
+# Please send patches to <config-patches at gnu.org>.  Submit a context
+# diff and a properly formatted ChangeLog entry.
 #
 # This script attempts to guess a canonical system name similar to
 # config.sub.  If it succeeds, it prints the system name on stdout, and
 # exits with 0.  Otherwise, it exits with 1.
 #
-# You can get the latest version of this script from:
-# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
+# The plan is that this can be called by configure scripts if you
+# don't specify an explicit build system type.
 
 me=`echo "$0" | sed -e 's,.*/,,'`
 
@@ -56,8 +56,8 @@ version="\
 GNU config.guess ($timestamp)
 
 Originally written by Per Bothner.
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
-2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
+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."
@@ -139,16 +139,6 @@ UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
 UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
 UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
 
-case "${UNAME_MACHINE}" in
-    i?86)
-	test -z "$VENDOR" && VENDOR=pc
-	;;
-    *)
-	test -z "$VENDOR" && VENDOR=unknown
-	;;
-esac
-test -f /etc/SuSE-release -o -f /.buildenv && VENDOR=suse
-
 # Note: order is significant - the case branches are not exclusive.
 
 case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
@@ -171,7 +161,6 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
 	    arm*) machine=arm-unknown ;;
 	    sh3el) machine=shl-unknown ;;
 	    sh3eb) machine=sh-unknown ;;
-	    sh5el) machine=sh5le-unknown ;;
 	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
 	esac
 	# The Operating System including object format, if it has switched
@@ -180,7 +169,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
 	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
 		eval $set_cc_for_build
 		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
-			| grep -q __ELF__
+			| grep __ELF__ >/dev/null
 		then
 		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
 		    # Return netbsd for either.  FIX?
@@ -213,19 +202,19 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
 	exit ;;
     *:OpenBSD:*:*)
 	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
-	echo ${UNAME_MACHINE_ARCH}-${VENDOR}-openbsd${UNAME_RELEASE}
+	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
 	exit ;;
     *:ekkoBSD:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-ekkobsd${UNAME_RELEASE}
+	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
 	exit ;;
     *:SolidBSD:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-solidbsd${UNAME_RELEASE}
+	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
 	exit ;;
     macppc:MirBSD:*:*)
-	echo powerpc-${VENDOR}-mirbsd${UNAME_RELEASE}
+	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
 	exit ;;
     *:MirBSD:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-mirbsd${UNAME_RELEASE}
+	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
 	exit ;;
     alpha:OSF1:*:*)
 	case $UNAME_RELEASE in
@@ -290,13 +279,13 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
 	echo alpha-dec-winnt3.5
 	exit ;;
     Amiga*:UNIX_System_V:4.0:*)
-	echo m68k-${VENDOR}-sysv4
+	echo m68k-unknown-sysv4
 	exit ;;
     *:[Aa]miga[Oo][Ss]:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-amigaos
+	echo ${UNAME_MACHINE}-unknown-amigaos
 	exit ;;
     *:[Mm]orph[Oo][Ss]:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-morphos
+	echo ${UNAME_MACHINE}-unknown-morphos
 	exit ;;
     *:OS/390:*:*)
 	echo i370-ibm-openedition
@@ -311,7 +300,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
 	echo arm-acorn-riscix${UNAME_RELEASE}
 	exit ;;
     arm:riscos:*:*|arm:RISCOS:*:*)
-	echo arm-${VENDOR}-riscos
+	echo arm-unknown-riscos
 	exit ;;
     SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
 	echo hppa1.1-hitachi-hiuxmpp
@@ -334,33 +323,14 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
 	case `/usr/bin/uname -p` in
 	    sparc) echo sparc-icl-nx7; exit ;;
 	esac ;;
-    s390x:SunOS:*:*)
-	echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
     sun4H:SunOS:5.*:*)
 	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
 	exit ;;
     sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
 	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
 	exit ;;
-    i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
-	echo i386-pc-auroraux${UNAME_RELEASE}
-	exit ;;
-    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
-	eval $set_cc_for_build
-	SUN_ARCH="i386"
-	# If there is a compiler, see if it is configured for 64-bit objects.
-	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
-	# This test works for both compilers.
-	if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
-	    if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
-		(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
-		grep IS_64BIT_ARCH >/dev/null
-	    then
-		SUN_ARCH="x86_64"
-	    fi
-	fi
-	echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+    i86pc:SunOS:5.*:*)
+	echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
 	exit ;;
     sun4*:SunOS:6*:*)
 	# According to config.sub, this is the proper way to canonicalize
@@ -419,7 +389,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
         echo m68k-hades-mint${UNAME_RELEASE}
         exit ;;
     *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
-        echo m68k-${VENDOR}-mint${UNAME_RELEASE}
+        echo m68k-unknown-mint${UNAME_RELEASE}
         exit ;;
     m68k:machten:*:*)
 	echo m68k-apple-machten${UNAME_RELEASE}
@@ -561,7 +531,7 @@ EOF
 		echo rs6000-ibm-aix3.2
 	fi
 	exit ;;
-    *:AIX:*:[456])
+    *:AIX:*:[45])
 	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
 	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
 		IBM_ARCH=rs6000
@@ -669,7 +639,7 @@ EOF
 	    # => hppa64-hp-hpux11.23
 
 	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
-		grep -q __LP64__
+		grep __LP64__ >/dev/null
 	    then
 		HP_ARCH="hppa2.0w"
 	    else
@@ -730,9 +700,9 @@ EOF
 	exit ;;
     i*86:OSF1:*:*)
 	if [ -x /usr/sbin/sysversion ] ; then
-	    echo ${UNAME_MACHINE}-${VENDOR}-osf1mk
+	    echo ${UNAME_MACHINE}-unknown-osf1mk
 	else
-	    echo ${UNAME_MACHINE}-${VENDOR}-osf1
+	    echo ${UNAME_MACHINE}-unknown-osf1
 	fi
 	exit ;;
     parisc*:Lites*:*:*)
@@ -792,25 +762,25 @@ EOF
 	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
 	exit ;;
     sparc*:BSD/OS:*:*)
-	echo sparc-${VENDOR}-bsdi${UNAME_RELEASE}
+	echo sparc-unknown-bsdi${UNAME_RELEASE}
 	exit ;;
     *:BSD/OS:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-bsdi${UNAME_RELEASE}
+	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
 	exit ;;
     *:FreeBSD:*:*)
 	case ${UNAME_MACHINE} in
 	    pc98)
-		echo i386-${VENDOR}-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+		echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
 	    amd64)
-		echo x86_64-${VENDOR}-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
 	    *)
-		echo ${UNAME_MACHINE}-${VENDOR}-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+		echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
 	esac
 	exit ;;
     i*:CYGWIN*:*)
 	echo ${UNAME_MACHINE}-pc-cygwin
 	exit ;;
-    *:MINGW*:*)
+    i*:MINGW*:*)
 	echo ${UNAME_MACHINE}-pc-mingw32
 	exit ;;
     i*:windows32*:*)
@@ -820,24 +790,15 @@ EOF
     i*:PW*:*)
 	echo ${UNAME_MACHINE}-pc-pw32
 	exit ;;
-    *:Interix*:*)
-    	case ${UNAME_MACHINE} in
-	    x86)
-		echo i586-pc-interix${UNAME_RELEASE}
-		exit ;;
-	    authenticamd | genuineintel | EM64T)
-		echo x86_64-${VENDOR}-interix${UNAME_RELEASE}
-		exit ;;
-	    IA64)
-		echo ia64-${VENDOR}-interix${UNAME_RELEASE}
-		exit ;;
-	esac ;;
+    x86:Interix*:[3456]*)
+	echo i586-pc-interix${UNAME_RELEASE}
+	exit ;;
+    EM64T:Interix*:[3456]*)
+	echo x86_64-unknown-interix${UNAME_RELEASE}
+	exit ;;
     [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
 	echo i${UNAME_MACHINE}-pc-mks
 	exit ;;
-    8664:Windows_NT:*)
-	echo x86_64-pc-mks
-	exit ;;
     i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
 	# How do we know it's Interix rather than the generic POSIX subsystem?
 	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
@@ -848,51 +809,30 @@ EOF
 	echo ${UNAME_MACHINE}-pc-uwin
 	exit ;;
     amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
-	echo x86_64-${VENDOR}-cygwin
+	echo x86_64-unknown-cygwin
 	exit ;;
     p*:CYGWIN*:*)
-	echo powerpcle-${VENDOR}-cygwin
+	echo powerpcle-unknown-cygwin
 	exit ;;
     prep*:SunOS:5.*:*)
-	echo powerpcle-${VENDOR}-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
 	exit ;;
     *:GNU:*:*)
 	# the GNU system
-	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-${VENDOR}-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
+	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
 	exit ;;
     *:GNU/*:*:*)
 	# other systems with GNU libc and userland
-	echo ${UNAME_MACHINE}-${VENDOR}-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
+	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
 	exit ;;
     i*86:Minix:*:*)
 	echo ${UNAME_MACHINE}-pc-minix
 	exit ;;
-    alpha:Linux:*:*)
-	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
-	  EV5)   UNAME_MACHINE=alphaev5 ;;
-	  EV56)  UNAME_MACHINE=alphaev56 ;;
-	  PCA56) UNAME_MACHINE=alphapca56 ;;
-	  PCA57) UNAME_MACHINE=alphapca56 ;;
-	  EV6)   UNAME_MACHINE=alphaev6 ;;
-	  EV67)  UNAME_MACHINE=alphaev67 ;;
-	  EV68*) UNAME_MACHINE=alphaev68 ;;
-        esac
-	objdump --private-headers /bin/sh | grep -q ld.so.1
-	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
-	echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu${LIBC}
-	exit ;;
     arm*:Linux:*:*)
-	eval $set_cc_for_build
-	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
-	    | grep -q __ARM_EABI__
-	then
-	    echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
-	else
-	    echo ${UNAME_MACHINE}-${VENDOR}-linux-gnueabi
-	fi
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
 	exit ;;
     avr32*:Linux:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
 	exit ;;
     cris:Linux:*:*)
 	echo cris-axis-linux-gnu
@@ -901,91 +841,178 @@ EOF
 	echo crisv32-axis-linux-gnu
 	exit ;;
     frv:Linux:*:*)
-    	echo frv-${VENDOR}-linux-gnu
-	exit ;;
-    i*86:Linux:*:*)
-	LIBC=gnu
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
-	#ifdef __dietlibc__
-	LIBC=dietlibc
-	#endif
-EOF
-	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
-	echo "${UNAME_MACHINE}-${VENDOR}-linux-${LIBC}"
+    	echo frv-unknown-linux-gnu
 	exit ;;
     ia64:Linux:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
 	exit ;;
     m32r*:Linux:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
 	exit ;;
     m68*:Linux:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
 	exit ;;
-    mips:Linux:*:* | mips64:Linux:*:*)
+    mips:Linux:*:*)
+	eval $set_cc_for_build
+	sed 's/^	//' << EOF >$dummy.c
+	#undef CPU
+	#undef mips
+	#undef mipsel
+	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
+	CPU=mipsel
+	#else
+	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
+	CPU=mips
+	#else
+	CPU=
+	#endif
+	#endif
+EOF
+	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
+	    /^CPU/{
+		s: ::g
+		p
+	    }'`"
+	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
+	;;
+    mips64:Linux:*:*)
 	eval $set_cc_for_build
 	sed 's/^	//' << EOF >$dummy.c
 	#undef CPU
-	#undef ${UNAME_MACHINE}
-	#undef ${UNAME_MACHINE}el
+	#undef mips64
+	#undef mips64el
 	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
-	CPU=${UNAME_MACHINE}el
+	CPU=mips64el
 	#else
 	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
-	CPU=${UNAME_MACHINE}
+	CPU=mips64
 	#else
 	CPU=
 	#endif
 	#endif
 EOF
-	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
-	test x"${CPU}" != x && { echo "${CPU}-${VENDOR}-linux-gnu"; exit; }
+	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
+	    /^CPU/{
+		s: ::g
+		p
+	    }'`"
+	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
 	;;
     or32:Linux:*:*)
-	echo or32-${VENDOR}-linux-gnu
+	echo or32-unknown-linux-gnu
 	exit ;;
-    padre:Linux:*:*)
-	echo sparc-${VENDOR}-linux-gnu
+    ppc:Linux:*:*)
+	echo powerpc-unknown-linux-gnu
 	exit ;;
-    parisc64:Linux:*:* | hppa64:Linux:*:*)
-	echo hppa64-${VENDOR}-linux-gnu
+    ppc64:Linux:*:*)
+	echo powerpc64-unknown-linux-gnu
+	exit ;;
+    alpha:Linux:*:*)
+	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
+	  EV5)   UNAME_MACHINE=alphaev5 ;;
+	  EV56)  UNAME_MACHINE=alphaev56 ;;
+	  PCA56) UNAME_MACHINE=alphapca56 ;;
+	  PCA57) UNAME_MACHINE=alphapca56 ;;
+	  EV6)   UNAME_MACHINE=alphaev6 ;;
+	  EV67)  UNAME_MACHINE=alphaev67 ;;
+	  EV68*) UNAME_MACHINE=alphaev68 ;;
+        esac
+	objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
+	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
+	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
 	exit ;;
     parisc:Linux:*:* | hppa:Linux:*:*)
 	# Look for CPU level
 	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
-	  PA7*) echo hppa1.1-${VENDOR}-linux-gnu ;;
-	  PA8*) echo hppa2.0-${VENDOR}-linux-gnu ;;
-	  *)    echo hppa-${VENDOR}-linux-gnu ;;
+	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
+	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
+	  *)    echo hppa-unknown-linux-gnu ;;
 	esac
 	exit ;;
-    ppc64:Linux:*:*)
-	echo powerpc64-${VENDOR}-linux-gnu
-	exit ;;
-    ppc:Linux:*:*)
-	echo powerpc-${VENDOR}-linux-gnu
+    parisc64:Linux:*:* | hppa64:Linux:*:*)
+	echo hppa64-unknown-linux-gnu
 	exit ;;
     s390:Linux:*:* | s390x:Linux:*:*)
 	echo ${UNAME_MACHINE}-ibm-linux
 	exit ;;
     sh64*:Linux:*:*)
-    	echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
+    	echo ${UNAME_MACHINE}-unknown-linux-gnu
 	exit ;;
     sh*:Linux:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
 	exit ;;
     sparc:Linux:*:* | sparc64:Linux:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
 	exit ;;
     vax:Linux:*:*)
 	echo ${UNAME_MACHINE}-dec-linux-gnu
 	exit ;;
     x86_64:Linux:*:*)
-	echo x86_64-${VENDOR}-linux-gnu
-	exit ;;
-    xtensa*:Linux:*:*)
-    	echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
+	echo x86_64-unknown-linux-gnu
 	exit ;;
+    i*86:Linux:*:*)
+	# The BFD linker knows what the default object file format is, so
+	# first see if it will tell us. cd to the root directory to prevent
+	# problems with other programs or directories called `ld' in the path.
+	# Set LC_ALL=C to ensure ld outputs messages in English.
+	ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
+			 | sed -ne '/supported targets:/!d
+				    s/[ 	][ 	]*/ /g
+				    s/.*supported targets: *//
+				    s/ .*//
+				    p'`
+        case "$ld_supported_targets" in
+	  elf32-i386)
+		TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
+		;;
+	  a.out-i386-linux)
+		echo "${UNAME_MACHINE}-pc-linux-gnuaout"
+		exit ;;
+	  coff-i386)
+		echo "${UNAME_MACHINE}-pc-linux-gnucoff"
+		exit ;;
+	  "")
+		# Either a pre-BFD a.out linker (linux-gnuoldld) or
+		# one that does not give us useful --help.
+		echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
+		exit ;;
+	esac
+	# Determine whether the default compiler is a.out or elf
+	eval $set_cc_for_build
+	sed 's/^	//' << EOF >$dummy.c
+	#include <features.h>
+	#ifdef __ELF__
+	# ifdef __GLIBC__
+	#  if __GLIBC__ >= 2
+	LIBC=gnu
+	#  else
+	LIBC=gnulibc1
+	#  endif
+	# else
+	LIBC=gnulibc1
+	# endif
+	#else
+	#if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC)
+	LIBC=gnu
+	#else
+	LIBC=gnuaout
+	#endif
+	#endif
+	#ifdef __dietlibc__
+	LIBC=dietlibc
+	#endif
+EOF
+	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
+	    /^LIBC/{
+		s: ::g
+		p
+	    }'`"
+	test x"${LIBC}" != x && {
+		echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
+		exit
+	}
+	test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; }
+	;;
     i*86:DYNIX/ptx:4*:*)
 	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
 	# earlier versions are messed up and put the nodename in both
@@ -1006,16 +1033,16 @@ EOF
 	echo ${UNAME_MACHINE}-pc-os2-emx
 	exit ;;
     i*86:XTS-300:*:STOP)
-	echo ${UNAME_MACHINE}-${VENDOR}-stop
+	echo ${UNAME_MACHINE}-unknown-stop
 	exit ;;
     i*86:atheos:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-atheos
+	echo ${UNAME_MACHINE}-unknown-atheos
 	exit ;;
     i*86:syllable:*:*)
 	echo ${UNAME_MACHINE}-pc-syllable
 	exit ;;
-    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
-	echo i386-${VENDOR}-lynxos${UNAME_RELEASE}
+    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
+	echo i386-unknown-lynxos${UNAME_RELEASE}
 	exit ;;
     i*86:*DOS:*:*)
 	echo ${UNAME_MACHINE}-pc-msdosdjgpp
@@ -1035,7 +1062,7 @@ EOF
 	    *Pentium)	     UNAME_MACHINE=i586 ;;
 	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
 	esac
-	echo ${UNAME_MACHINE}-${VENDOR}-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
+	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
 	exit ;;
     i*86:*:3.2:*)
 	if test -f /usr/options/cb.name; then
@@ -1058,11 +1085,8 @@ EOF
     pc:*:*:*)
 	# Left here for compatibility:
         # uname -m prints for DJGPP always 'pc', but it prints nothing about
-        # the processor, so we play safe by assuming i586.
-	# Note: whatever this is, it MUST be the same as what config.sub
-	# prints for the "djgpp" host, or else GDB configury will decide that
-	# this is a cross-build.
-	echo i586-pc-msdosdjgpp
+        # the processor, so we play safe by assuming i386.
+	echo i386-pc-msdosdjgpp
         exit ;;
     Intel:Mach:3*:*)
 	echo i386-pc-mach3
@@ -1074,7 +1098,7 @@ EOF
 	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
 	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
 	else # Add other i860-SVR4 vendors below as they are discovered.
-	  echo i860-${VENDOR}-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
+	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
 	fi
 	exit ;;
     mini*:CTIX:SYS*5:*)
@@ -1100,30 +1124,20 @@ EOF
     3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
         /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
           && { echo i486-ncr-sysv4; exit; } ;;
-    NCR*:*:4.2:* | MPRAS*:*:4.2:*)
-	OS_REL='.3'
-	test -r /etc/.relid \
-	    && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
-	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
-	    && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
-	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
-	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
-	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
-	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
     m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
-	echo m68k-${VENDOR}-lynxos${UNAME_RELEASE}
+	echo m68k-unknown-lynxos${UNAME_RELEASE}
 	exit ;;
     mc68030:UNIX_System_V:4.*:*)
 	echo m68k-atari-sysv4
 	exit ;;
     TSUNAMI:LynxOS:2.*:*)
-	echo sparc-${VENDOR}-lynxos${UNAME_RELEASE}
+	echo sparc-unknown-lynxos${UNAME_RELEASE}
 	exit ;;
     rs6000:LynxOS:2.*:*)
-	echo rs6000-${VENDOR}-lynxos${UNAME_RELEASE}
+	echo rs6000-unknown-lynxos${UNAME_RELEASE}
 	exit ;;
-    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
-	echo powerpc-${VENDOR}-lynxos${UNAME_RELEASE}
+    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
+	echo powerpc-unknown-lynxos${UNAME_RELEASE}
 	exit ;;
     SM[BE]S:UNIX_SV:*:*)
 	echo mips-dde-sysv${UNAME_RELEASE}
@@ -1173,7 +1187,7 @@ EOF
 	if [ -d /usr/nec ]; then
 	        echo mips-nec-sysv${UNAME_RELEASE}
 	else
-	        echo mips-${VENDOR}-sysv${UNAME_RELEASE}
+	        echo mips-unknown-sysv${UNAME_RELEASE}
 	fi
         exit ;;
     BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
@@ -1185,9 +1199,6 @@ EOF
     BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
 	echo i586-pc-beos
 	exit ;;
-    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
-	echo i586-pc-haiku
-	exit ;;
     SX-4:SUPER-UX:*:*)
 	echo sx4-nec-superux${UNAME_RELEASE}
 	exit ;;
@@ -1197,15 +1208,6 @@ EOF
     SX-6:SUPER-UX:*:*)
 	echo sx6-nec-superux${UNAME_RELEASE}
 	exit ;;
-    SX-7:SUPER-UX:*:*)
-	echo sx7-nec-superux${UNAME_RELEASE}
-	exit ;;
-    SX-8:SUPER-UX:*:*)
-	echo sx8-nec-superux${UNAME_RELEASE}
-	exit ;;
-    SX-8R:SUPER-UX:*:*)
-	echo sx8r-nec-superux${UNAME_RELEASE}
-	exit ;;
     Power*:Rhapsody:*:*)
 	echo powerpc-apple-rhapsody${UNAME_RELEASE}
 	exit ;;
@@ -1215,16 +1217,6 @@ EOF
     *:Darwin:*:*)
 	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
 	case $UNAME_PROCESSOR in
-	    i386)
-		eval $set_cc_for_build
-		if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
-		  if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
-		      (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
-		      grep IS_64BIT_ARCH >/dev/null
-		  then
-		      UNAME_PROCESSOR="x86_64"
-		  fi
-		fi ;;
 	    unknown) UNAME_PROCESSOR=powerpc ;;
 	esac
 	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
@@ -1264,13 +1256,13 @@ EOF
 	else
 	    UNAME_MACHINE="$cputype"
 	fi
-	echo ${UNAME_MACHINE}-${VENDOR}-plan9
+	echo ${UNAME_MACHINE}-unknown-plan9
 	exit ;;
     *:TOPS-10:*:*)
-	echo pdp10-${VENDOR}-tops10
+	echo pdp10-unknown-tops10
 	exit ;;
     *:TENEX:*:*)
-	echo pdp10-${VENDOR}-tenex
+	echo pdp10-unknown-tenex
 	exit ;;
     KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
 	echo pdp10-dec-tops20
@@ -1279,16 +1271,16 @@ EOF
 	echo pdp10-xkl-tops20
 	exit ;;
     *:TOPS-20:*:*)
-	echo pdp10-${VENDOR}-tops20
+	echo pdp10-unknown-tops20
 	exit ;;
     *:ITS:*:*)
-	echo pdp10-${VENDOR}-its
+	echo pdp10-unknown-its
 	exit ;;
     SEI:*:*:SEIUX)
         echo mips-sei-seiux${UNAME_RELEASE}
 	exit ;;
     *:DragonFly:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
+	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
 	exit ;;
     *:*VMS:*:*)
     	UNAME_MACHINE=`(uname -p) 2>/dev/null`
@@ -1306,9 +1298,6 @@ EOF
     i*86:rdos:*:*)
 	echo ${UNAME_MACHINE}-pc-rdos
 	exit ;;
-    i*86:AROS:*:*)
-	echo ${UNAME_MACHINE}-pc-aros
-	exit ;;
 esac
 
 #echo '(No uname command or uname output not recognized.)' 1>&2
@@ -1469,9 +1458,9 @@ This script, last modified $timestamp, has failed to recognize
 the operating system you are using. It is advised that you
 download the most up to date version of the config scripts from
 
-  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
+  http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess
 and
-  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
+  http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub
 
 If the version you run ($0) is already up to date, please
 send the following data and any information you think might be
diff --git a/config.sub b/config.sub
index 2a55a50..fab0aa3 100755
--- a/config.sub
+++ b/config.sub
@@ -1,10 +1,10 @@
 #! /bin/sh
 # Configuration validation subroutine script.
 #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
-#   Free Software Foundation, Inc.
+#   2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation,
+#   Inc.
 
-timestamp='2009-11-20'
+timestamp='2006-09-20'
 
 # This file is (in principle) common to ALL GNU software.
 # The presence of a machine in this file suggests that SOME GNU software
@@ -32,16 +32,13 @@ timestamp='2009-11-20'
 
 
 # Please send patches to <config-patches at gnu.org>.  Submit a context
-# diff and a properly formatted GNU ChangeLog entry.
+# diff and a properly formatted ChangeLog entry.
 #
 # Configuration subroutine to validate and canonicalize a configuration type.
 # Supply the specified configuration type as an argument.
 # If it is invalid, we print an error message on stderr and exit with code 1.
 # Otherwise, we print the canonical config type on stdout and succeed.
 
-# You can get the latest version of this script from:
-# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
-
 # This file is supposed to be the same for all GNU packages
 # and recognize all the CPU types, system types and aliases
 # that are meaningful with *any* GNU software.
@@ -75,8 +72,8 @@ Report bugs and patches to <config-patches at gnu.org>."
 version="\
 GNU config.sub ($timestamp)
 
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
-2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
+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."
@@ -125,7 +122,6 @@ maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
 case $maybe_os in
   nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
   uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
-  kopensolaris*-gnu* | \
   storm-chaos* | os2-emx* | rtmk-nova*)
     os=-$maybe_os
     basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
@@ -152,13 +148,10 @@ case $os in
 	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
 	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
 	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
-	-apple | -axis | -knuth | -cray | -microblaze)
+	-apple | -axis | -knuth | -cray)
 		os=
 		basic_machine=$1
 		;;
-        -bluegene*)
-	        os=-cnk
-		;;
 	-sim | -cisco | -oki | -wec | -winbond)
 		os=
 		basic_machine=$1
@@ -252,20 +245,17 @@ case $basic_machine in
 	| bfin \
 	| c4x | clipper \
 	| d10v | d30v | dlx | dsp16xx \
-	| fido | fr30 | frv \
+	| fr30 | frv \
 	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
 	| i370 | i860 | i960 | ia64 \
 	| ip2k | iq2000 \
-	| lm32 \
 	| m32c | m32r | m32rle | m68000 | m68k | m88k \
-	| maxq | mb | microblaze | mcore | mep | metag \
+	| maxq | mb | microblaze | mcore \
 	| mips | mipsbe | mipseb | mipsel | mipsle \
 	| mips16 \
 	| mips64 | mips64el \
-	| mips64octeon | mips64octeonel \
-	| mips64orion | mips64orionel \
-	| mips64r5900 | mips64r5900el \
 	| mips64vr | mips64vrel \
+	| mips64orion | mips64orionel \
 	| mips64vr4100 | mips64vr4100el \
 	| mips64vr4300 | mips64vr4300el \
 	| mips64vr5000 | mips64vr5000el \
@@ -278,7 +268,6 @@ case $basic_machine in
 	| mipsisa64sr71k | mipsisa64sr71kel \
 	| mipstx39 | mipstx39el \
 	| mn10200 | mn10300 \
-	| moxie \
 	| mt \
 	| msp430 \
 	| nios | nios2 \
@@ -287,22 +276,20 @@ case $basic_machine in
 	| pdp10 | pdp11 | pj | pjl \
 	| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
 	| pyramid \
-	| rx \
 	| score \
-	| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
+	| sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
 	| sh64 | sh64le \
 	| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
 	| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
 	| spu | strongarm \
 	| tahoe | thumb | tic4x | tic80 | tron \
-	| ubicom32 \
 	| v850 | v850e \
 	| we32k \
 	| x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
-	| z8k | z80)
+	| z8k)
 		basic_machine=$basic_machine-unknown
 		;;
-	m6811 | m68hc11 | m6812 | m68hc12 | picochip)
+	m6811 | m68hc11 | m6812 | m68hc12)
 		# Motorola 68HC11/12.
 		basic_machine=$basic_machine-unknown
 		os=-none
@@ -337,22 +324,19 @@ case $basic_machine in
 	| clipper-* | craynv-* | cydra-* \
 	| d10v-* | d30v-* | dlx-* \
 	| elxsi-* \
-	| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
+	| f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
 	| h8300-* | h8500-* \
 	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
 	| i*86-* | i860-* | i960-* | ia64-* \
 	| ip2k-* | iq2000-* \
-	| lm32-* \
 	| m32c-* | m32r-* | m32rle-* \
 	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
-	| m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \
+	| m88110-* | m88k-* | maxq-* | mcore-* \
 	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
 	| mips16-* \
 	| mips64-* | mips64el-* \
-	| mips64octeon-* | mips64octeonel-* \
-	| mips64orion-* | mips64orionel-* \
-	| mips64r5900-* | mips64r5900el-* \
 	| mips64vr-* | mips64vrel-* \
+	| mips64orion-* | mips64orionel-* \
 	| mips64vr4100-* | mips64vr4100el-* \
 	| mips64vr4300-* | mips64vr4300el-* \
 	| mips64vr5000-* | mips64vr5000el-* \
@@ -373,26 +357,21 @@ case $basic_machine in
 	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
 	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
 	| pyramid-* \
-	| romp-* | rs6000-* | rx-* \
-	| sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
+	| romp-* | rs6000-* \
+	| sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
 	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
 	| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
 	| sparclite-* \
 	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
 	| tahoe-* | thumb-* \
-	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \
+	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
 	| tron-* \
-	| ubicom32-* \
 	| v850-* | v850e-* | vax-* \
 	| we32k-* \
 	| x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
-	| xstormy16-* | xtensa*-* \
+	| xstormy16-* | xtensa-* \
 	| ymp-* \
-	| z8k-* | z80-*)
-		;;
-	# Recognize the basic CPU types without company name, with glob match.
-	xtensa*)
-		basic_machine=$basic_machine-unknown
+	| z8k-*)
 		;;
 	# Recognize the various machine names and aliases which stand
 	# for a CPU type and a company and sometimes even an OS.
@@ -456,10 +435,6 @@ case $basic_machine in
 		basic_machine=m68k-apollo
 		os=-bsd
 		;;
-	aros)
-		basic_machine=i386-pc
-		os=-aros
-		;;
 	aux)
 		basic_machine=m68k-apple
 		os=-aux
@@ -468,26 +443,10 @@ case $basic_machine in
 		basic_machine=ns32k-sequent
 		os=-dynix
 		;;
-	blackfin)
-		basic_machine=bfin-unknown
-		os=-linux
-		;;
-	blackfin-*)
-		basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
-		os=-linux
-		;;
-	bluegene*)
-		basic_machine=powerpc-ibm
-		os=-cnk
-		;;
 	c90)
 		basic_machine=c90-cray
 		os=-unicos
 		;;
-        cegcc)
-		basic_machine=arm-unknown
-		os=-cegcc
-		;;
 	convex-c1)
 		basic_machine=c1-convex
 		os=-bsd
@@ -516,8 +475,8 @@ case $basic_machine in
 		basic_machine=craynv-cray
 		os=-unicosmp
 		;;
-	cr16)
-		basic_machine=cr16-unknown
+	cr16c)
+		basic_machine=cr16c-unknown
 		os=-elf
 		;;
 	crds | unos)
@@ -555,10 +514,6 @@ case $basic_machine in
 		basic_machine=m88k-motorola
 		os=-sysv3
 		;;
-	dicos)
-		basic_machine=i686-pc
-		os=-dicos
-		;;
 	djgpp)
 		basic_machine=i586-pc
 		os=-msdosdjgpp
@@ -713,14 +668,6 @@ case $basic_machine in
 		basic_machine=m68k-isi
 		os=-sysv
 		;;
-	m68knommu)
-		basic_machine=m68k-unknown
-		os=-linux
-		;;
-	m68knommu-*)
-		basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
-		os=-linux
-		;;
 	m88k-omron*)
 		basic_machine=m88k-omron
 		;;
@@ -732,17 +679,10 @@ case $basic_machine in
 		basic_machine=ns32k-utek
 		os=-sysv
 		;;
-        microblaze)
-		basic_machine=microblaze-xilinx
-		;;
 	mingw32)
 		basic_machine=i386-pc
 		os=-mingw32
 		;;
-	mingw32ce)
-		basic_machine=arm-unknown
-		os=-mingw32ce
-		;;
 	miniframe)
 		basic_machine=m68000-convergent
 		;;
@@ -869,14 +809,6 @@ case $basic_machine in
 		basic_machine=i860-intel
 		os=-osf
 		;;
-	parisc)
-		basic_machine=hppa-unknown
-		os=-linux
-		;;
-	parisc-*)
-		basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
-		os=-linux
-		;;
 	pbd)
 		basic_machine=sparc-tti
 		;;
@@ -993,9 +925,6 @@ case $basic_machine in
 		basic_machine=sh-hitachi
 		os=-hms
 		;;
-	sh5el)
-		basic_machine=sh5le-unknown
-		;;
 	sh64)
 		basic_machine=sh64-unknown
 		;;
@@ -1085,10 +1014,6 @@ case $basic_machine in
 		basic_machine=tic6x-unknown
 		os=-coff
 		;;
-	tile*)
-		basic_machine=tile-unknown
-		os=-linux-gnu
-		;;
 	tx39)
 		basic_machine=mipstx39-unknown
 		;;
@@ -1164,10 +1089,6 @@ case $basic_machine in
 		basic_machine=z8k-unknown
 		os=-sim
 		;;
-	z80-*-coff)
-		basic_machine=z80-unknown
-		os=-sim
-		;;
 	none)
 		basic_machine=none-none
 		os=-none
@@ -1206,7 +1127,7 @@ case $basic_machine in
 	we32k)
 		basic_machine=we32k-att
 		;;
-	sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
+	sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele)
 		basic_machine=sh-unknown
 		;;
 	sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
@@ -1256,9 +1177,6 @@ case $os in
         # First match some system type aliases
         # that might get confused with valid system types.
 	# -solaris* is a basic system type, with this one exception.
-        -auroraux)
-	        os=-auroraux
-		;;
 	-solaris1 | -solaris1.*)
 		os=`echo $os | sed -e 's|solaris1|sunos4|'`
 		;;
@@ -1279,11 +1197,10 @@ case $os in
 	# Each alternative MUST END IN A *, to match a version number.
 	# -sysv* is not here because it comes later, after sysvr4.
 	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
-	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
-	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
-	      | -sym* | -kopensolaris* \
+	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
+	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
 	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
-	      | -aos* | -aros* \
+	      | -aos* \
 	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
 	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
 	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
@@ -1292,7 +1209,7 @@ case $os in
 	      | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
 	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
 	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
-	      | -chorusos* | -chorusrdb* | -cegcc* \
+	      | -chorusos* | -chorusrdb* \
 	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
 	      | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
 	      | -uxpv* | -beos* | -mpeix* | -udk* \
@@ -1302,7 +1219,7 @@ case $os in
 	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
 	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
 	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
-	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
+	      | -skyos* | -haiku* | -rdos* | -toppers*)
 	# Remember, each alternative MUST END IN *, to match a version number.
 		;;
 	-qnx*)
@@ -1432,9 +1349,6 @@ case $os in
 	-zvmoe)
 		os=-zvmoe
 		;;
-	-dicos*)
-		os=-dicos
-		;;
 	-none)
 		;;
 	*)
@@ -1500,9 +1414,6 @@ case $basic_machine in
 	m68*-cisco)
 		os=-aout
 		;;
-        mep-*)
-		os=-elf
-		;;
 	mips*-cisco)
 		os=-elf
 		;;
@@ -1632,7 +1543,7 @@ case $basic_machine in
 			-sunos*)
 				vendor=sun
 				;;
-			-cnk*|-aix*)
+			-aix*)
 				vendor=ibm
 				;;
 			-beos*)
diff --git a/configure b/configure
index 64bab9d..f2f5168 100755
--- a/configure
+++ b/configure
@@ -3598,7 +3598,7 @@ fi
 
 # Define the identity of the package.
  PACKAGE=mono
- VERSION=2.10.3
+ VERSION=2.10.4
 
 
 cat >>confdefs.h <<_ACEOF
diff --git a/configure.in b/configure.in
index 0350ce7..a771d1e 100644
--- a/configure.in
+++ b/configure.in
@@ -6,7 +6,7 @@ AC_CANONICAL_SYSTEM
 m4_ifdef([_A][M_PROG_TAR],[_A][M_SET_OPTION([tar-ustar])])
 
 AM_CONFIG_HEADER(config.h)
-AM_INIT_AUTOMAKE(mono,2.10.3)
+AM_INIT_AUTOMAKE(mono,2.10.4)
 AM_MAINTAINER_MODE
 
 API_VER=2.0
diff --git a/depcomp b/depcomp
index df8eea7..ca5ea4e 100755
--- a/depcomp
+++ b/depcomp
@@ -1,10 +1,10 @@
 #! /bin/sh
 # depcomp - compile a program generating dependencies as side-effects
 
-scriptversion=2009-04-28.21; # UTC
+scriptversion=2006-10-15.18
 
-# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009 Free
-# Software Foundation, Inc.
+# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006 Free Software
+# Foundation, Inc.
 
 # 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
@@ -17,7 +17,9 @@ scriptversion=2009-04-28.21; # UTC
 # 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/>.
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+# 02110-1301, USA.
 
 # As a special exception to the GNU General Public License, if you
 # distribute this file as part of a program that contains a
@@ -85,15 +87,6 @@ if test "$depmode" = dashXmstdout; then
    depmode=dashmstdout
 fi
 
-cygpath_u="cygpath -u -f -"
-if test "$depmode" = msvcmsys; then
-   # This is just like msvisualcpp but w/o cygpath translation.
-   # Just convert the backslash-escaped backslashes to single forward
-   # slashes to satisfy depend.m4
-   cygpath_u="sed s,\\\\\\\\,/,g"
-   depmode=msvisualcpp
-fi
-
 case "$depmode" in
 gcc3)
 ## gcc 3 implements dependency tracking that does exactly what
@@ -199,14 +192,14 @@ sgi)
 ' < "$tmpdepfile" \
     | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
     tr '
-' ' ' >> "$depfile"
-    echo >> "$depfile"
+' ' ' >> $depfile
+    echo >> $depfile
 
     # The second pass generates a dummy entry for each header file.
     tr ' ' '
 ' < "$tmpdepfile" \
    | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
-   >> "$depfile"
+   >> $depfile
   else
     # The sourcefile does not contain any dependencies, so just
     # store a dummy comment line, to avoid errors with the Makefile
@@ -222,39 +215,34 @@ aix)
   # current directory.  Also, the AIX compiler puts `$object:' at the
   # start of each line; $object doesn't have directory information.
   # Version 6 uses the directory in both cases.
-  dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
-  test "x$dir" = "x$object" && dir=
-  base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
+  stripped=`echo "$object" | sed 's/\(.*\)\..*$/\1/'`
+  tmpdepfile="$stripped.u"
   if test "$libtool" = yes; then
-    tmpdepfile1=$dir$base.u
-    tmpdepfile2=$base.u
-    tmpdepfile3=$dir.libs/$base.u
     "$@" -Wc,-M
   else
-    tmpdepfile1=$dir$base.u
-    tmpdepfile2=$dir$base.u
-    tmpdepfile3=$dir$base.u
     "$@" -M
   fi
   stat=$?
 
+  if test -f "$tmpdepfile"; then :
+  else
+    stripped=`echo "$stripped" | sed 's,^.*/,,'`
+    tmpdepfile="$stripped.u"
+  fi
+
   if test $stat -eq 0; then :
   else
-    rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
+    rm -f "$tmpdepfile"
     exit $stat
   fi
 
-  for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
-  do
-    test -f "$tmpdepfile" && break
-  done
   if test -f "$tmpdepfile"; then
+    outname="$stripped.o"
     # Each line is of the form `foo.o: dependent.h'.
     # Do two passes, one to just change these to
     # `$object: dependent.h' and one to simply `dependent.h:'.
-    sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
-    # That's a tab and a space in the [].
-    sed -e 's,^.*\.[a-z]*:[	 ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
+    sed -e "s,^$outname:,$object :," < "$tmpdepfile" > "$depfile"
+    sed -e "s,^$outname: \(.*\)$,\1:," < "$tmpdepfile" >> "$depfile"
   else
     # The sourcefile does not contain any dependencies, so just
     # store a dummy comment line, to avoid errors with the Makefile
@@ -335,12 +323,7 @@ hp2)
   if test -f "$tmpdepfile"; then
     sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile"
     # Add `dependent.h:' lines.
-    sed -ne '2,${
-	       s/^ *//
-	       s/ \\*$//
-	       s/$/:/
-	       p
-	     }' "$tmpdepfile" >> "$depfile"
+    sed -ne '2,${; s/^ *//; s/ \\*$//; s/$/:/; p;}' "$tmpdepfile" >> "$depfile"
   else
     echo "#dummy" > "$depfile"
   fi
@@ -416,7 +399,7 @@ dashmstdout)
 
   # Remove the call to Libtool.
   if test "$libtool" = yes; then
-    while test "X$1" != 'X--mode=compile'; do
+    while test $1 != '--mode=compile'; do
       shift
     done
     shift
@@ -467,39 +450,32 @@ makedepend)
   "$@" || exit $?
   # Remove any Libtool call
   if test "$libtool" = yes; then
-    while test "X$1" != 'X--mode=compile'; do
+    while test $1 != '--mode=compile'; do
       shift
     done
     shift
   fi
   # X makedepend
   shift
-  cleared=no eat=no
-  for arg
-  do
+  cleared=no
+  for arg in "$@"; do
     case $cleared in
     no)
       set ""; shift
       cleared=yes ;;
     esac
-    if test $eat = yes; then
-      eat=no
-      continue
-    fi
     case "$arg" in
     -D*|-I*)
       set fnord "$@" "$arg"; shift ;;
     # Strip any option that makedepend may not understand.  Remove
     # the object too, otherwise makedepend will parse it as a source file.
-    -arch)
-      eat=yes ;;
     -*|$object)
       ;;
     *)
       set fnord "$@" "$arg"; shift ;;
     esac
   done
-  obj_suffix=`echo "$object" | sed 's/^.*\././'`
+  obj_suffix="`echo $object | sed 's/^.*\././'`"
   touch "$tmpdepfile"
   ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
   rm -f "$depfile"
@@ -519,7 +495,7 @@ cpp)
 
   # Remove the call to Libtool.
   if test "$libtool" = yes; then
-    while test "X$1" != 'X--mode=compile'; do
+    while test $1 != '--mode=compile'; do
       shift
     done
     shift
@@ -557,27 +533,13 @@ cpp)
 
 msvisualcpp)
   # Important note: in order to support this mode, a compiler *must*
-  # always write the preprocessed file to stdout.
+  # always write the preprocessed file to stdout, regardless of -o,
+  # because we must use -o when running libtool.
   "$@" || exit $?
-
-  # Remove the call to Libtool.
-  if test "$libtool" = yes; then
-    while test "X$1" != 'X--mode=compile'; do
-      shift
-    done
-    shift
-  fi
-
   IFS=" "
   for arg
   do
     case "$arg" in
-    -o)
-      shift
-      ;;
-    $object)
-      shift
-      ;;
     "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
 	set fnord "$@"
 	shift
@@ -590,23 +552,16 @@ msvisualcpp)
 	;;
     esac
   done
-  "$@" -E 2>/dev/null |
-  sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile"
+  "$@" -E |
+  sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile"
   rm -f "$depfile"
   echo "$object : \\" > "$depfile"
-  sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::	\1 \\:p' >> "$depfile"
+  . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::	\1 \\:p' >> "$depfile"
   echo "	" >> "$depfile"
-  sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile"
+  . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile"
   rm -f "$tmpdepfile"
   ;;
 
-msvcmsys)
-  # This case exists only to let depend.m4 do its work.  It works by
-  # looking at the text of this script.  This case will never be run,
-  # since it is checked for above.
-  exit 1
-  ;;
-
 none)
   exec "$@"
   ;;
@@ -625,6 +580,5 @@ exit 0
 # eval: (add-hook 'write-file-hooks 'time-stamp)
 # time-stamp-start: "scriptversion="
 # time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
-# time-stamp-end: "; # UTC"
+# time-stamp-end: "$"
 # End:
diff --git a/docs/deploy/api-style.css b/docs/deploy/api-style.css
deleted file mode 100644
index 910ac49..0000000
--- a/docs/deploy/api-style.css
+++ /dev/null
@@ -1,40 +0,0 @@
-   h3 { 
-       font-size: 18px;
-       padding-bottom: 4pt;
-       border-bottom: 2px solid #dddddd;
-   }
-       
-   .api {
-     border: 1px solid;
-     padding: 10pt;
-     margin: 10pt;
-   } 
-
-   .api-entry { 
-       border-bottom: none;
-       font-size: 18px;
-   }
-
-   .prototype {
-     border: 1px solid;
-     background-color: #f2f2f2;
-     padding: 5pt;
-     margin-top: 5pt;
-     margin-bottom: 5pt;  
-   } 
-
-   .header {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-    
-   .code {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
diff --git a/docs/deploy/mono-api-assembly.html b/docs/deploy/mono-api-assembly.html
deleted file mode 100644
index 78d66f4..0000000
--- a/docs/deploy/mono-api-assembly.html
+++ /dev/null
@@ -1,337 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><span>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-   <title>mono-api-assembly.html</title>
-   <style type="text/css">
-
-
-   h3 { 
-       font-size: 18px;
-       padding-bottom: 4pt;
-       border-bottom: 2px solid #dddddd;
-   }
-       
-   .api {
-     border: 1px solid;
-     padding: 10pt;
-     margin: 10pt;
-   } 
-
-   .api-entry { 
-       border-bottom: none;
-       font-size: 18px;
-   }
-
-   .prototype {
-     border: 1px solid;
-     background-color: #f2f2f2;
-     padding: 5pt;
-     margin-top: 5pt;
-     margin-bottom: 5pt;  
-   } 
-
-   .header {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-    
-   .code {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-   
-
-</style>
-</head>
-<body>
-<h2>Assemblies</h2>
-
-<h3>Synopsis</h3>
-
-	<div class="header">
-#include <metadata/assembly.h>
-
-typedef struct _MonoImage MonoImage;
-typedef struct _MonoAssembly MonoAssembly;
-
-MonoAssembly*          <a href="#api:mono_assembly_open">mono_assembly_open</a>           (const char *filename, 
-                                                     MonoImageOpenStatus *status);
-void                   <a href="#api:mono_assembly_close">mono_assembly_close</a>          (MonoAssembly *assembly);
-MonoAssembly*          <a href="#api:mono_assembly_load">mono_assembly_load</a>           (MonoAssemblyName *aname, 
-                                                     const char *basedir, 
-                                                     MonoImageOpenStatus *status);
-MonoAssembly*          <a href="#api:mono_assembly_load_full">mono_assembly_load_full</a>      (MonoAssemblyName *aname, 
-                                                     const char *basedir, 
-                                                     MonoImageOpenStatus *status, 
-                                                     gboolean refonly);
-MonoAssembly*          <a href="#api:mono_assembly_loaded">mono_assembly_loaded</a>         (MonoAssemblyName *aname);
-                       <a href="#api:mono_assembly_get_object"></a>                             
-MonoImage*             <a href="#api:mono_assembly_get_image">mono_assembly_get_image</a>      (MonoAssembly *assembly);
-MonoAssembly*          <a href="#api:mono_assembly_get_main">mono_assembly_get_main</a>       (void);
-G_CONST_RETURN gchar * <a href="#api:mono_assembly_getrootdir">mono_assembly_getrootdir</a>     (void);
-void                   <a href="#api:mono_assembly_name_free">mono_assembly_name_free</a>      (MonoAssemblyName *aname);
-char*                  <a href="#api:mono_stringify_assembly_name">mono_stringify_assembly_name</a> (MonoAssemblyName *aname);
-gboolean               <a href="#api:mono_assembly_names_equal">mono_assembly_names_equal</a>    (MonoAssemblyName *l, 
-                                                     MonoAssemblyName *r);
-                       <a href="#api:mono_module_file_get_object"></a>                             
-                       <a href="#api:mono_module_get_object"></a>                             
-
-	
-	</div>
-
-<a name="cil_assembly_load"></a>
-<h3>Assembly Loading</h3>
-
- <a name="api:mono_assembly_open"></a>
- <div class="api">
-    <div class="api-entry">mono_assembly_open</div>
-
-    <div class="prototype">MonoAssembly*
-mono_assembly_open (const char *filename, MonoImageOpenStatus *status)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>filename:</i></dt><dd> Opens the assembly pointed out by this name</dd><dt><i>status:</i></dt><dd> where a status code can be returned</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a pointer to the MonoAssembly if <i>filename</i> contains a valid
-
-	 assembly or NULL on error.  Details about the error are stored in the
-	 <i>status</i> variable.</blockquote>
-<b>Remarks</b>
-<p />	 
-	 mono_assembly_open opens the PE-image pointed by <i>filename</i>, and
-	 loads any external assemblies referenced by it.
-	
-
-</div> <a name="api:mono_assembly_close"></a>
- <div class="api">
-    <div class="api-entry">mono_assembly_close</div>
-
-    <div class="prototype">void
-mono_assembly_close (MonoAssembly *assembly)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>assembly:</i></dt><dd> the assembly to release.</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 This method releases a reference to the <i>assembly</i>.  The assembly is
-	 only released when all the outstanding references to it are released.
-
-</div> <a name="api:mono_assembly_load"></a>
- <div class="api">
-    <div class="api-entry">mono_assembly_load</div>
-
-    <div class="prototype">MonoAssembly*
-mono_assembly_load (MonoAssemblyName *aname, const char *basedir, MonoImageOpenStatus *status)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>aname:</i></dt><dd> A MonoAssemblyName with the assembly name to load.</dd><dt><i>basedir:</i></dt><dd> A directory to look up the assembly at.</dd><dt><i>status:</i></dt><dd> a pointer to a MonoImageOpenStatus to return the status of the load operation</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the assembly referenced by <i>aname</i> loaded or NULL on error.   On error the
-
-	 value pointed by status is updated with an error code.</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Loads the assembly referenced by <i>aname</i>, if the value of <i>basedir</i> is not NULL, it
-	 attempts to load the assembly from that directory before probing the standard locations.
-	
-
-</div> <a name="api:mono_assembly_load_full"></a>
- <div class="api">
-    <div class="api-entry">mono_assembly_load_full</div>
-
-    <div class="prototype">MonoAssembly*
-mono_assembly_load_full (MonoAssemblyName *aname, const char *basedir, MonoImageOpenStatus *status, gboolean refonly)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>aname:</i></dt><dd> A MonoAssemblyName with the assembly name to load.</dd><dt><i>basedir:</i></dt><dd> A directory to look up the assembly at.</dd><dt><i>status:</i></dt><dd> a pointer to a MonoImageOpenStatus to return the status of the load operation</dd><dt><i>refonly:</i></dt><dd> Whether this assembly is being opened in "reflection-only" mode.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the assembly referenced by <i>aname</i> loaded or NULL on error.   On error the
-
-	 value pointed by status is updated with an error code.</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Loads the assembly referenced by <i>aname</i>, if the value of <i>basedir</i> is not NULL, it
-	 attempts to load the assembly from that directory before probing the standard locations.
-	
-	 If the assembly is being opened in reflection-only mode (<i>refonly</i> set to TRUE) then no 
-	 assembly binding takes place.
-	
-
-</div> <a name="api:mono_assembly_loaded"></a>
- <div class="api">
-    <div class="api-entry">mono_assembly_loaded</div>
-
-    <div class="prototype">MonoAssembly*
-mono_assembly_loaded (MonoAssemblyName *aname)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>aname:</i></dt><dd> an assembly to look for.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  NULL If the given <i>aname</i> assembly has not been loaded, or a pointer to
-
-	 a MonoAssembly that matches the MonoAssemblyName specified.</blockquote>
-
-</div> <a name="api:mono_assembly_get_object"></a>
- <div class="api">
-    <div class="api-entry">mono_assembly_get_object</div>
-
-    <div class="prototype">Prototype: mono_assembly_get_object</div>
-<p />
-
-
-</div><h3>Working with Assemblies</h3>
-
- <a name="api:mono_assembly_get_image"></a>
- <div class="api">
-    <div class="api-entry">mono_assembly_get_image</div>
-
-    <div class="prototype">MonoImage*
-mono_assembly_get_image (MonoAssembly *assembly)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>assembly:</i></dt><dd> The assembly to retrieve the image from</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the MonoImage associated with this assembly.
-</blockquote>
-
-</div> <a name="api:mono_assembly_get_main"></a>
- <div class="api">
-    <div class="api-entry">mono_assembly_get_main</div>
-
-    <div class="prototype">MonoAssembly*
-mono_assembly_get_main (void)
-
-</div>
-<p />
-<b>Returns</b>
-<blockquote>	  the assembly for the application, the first assembly that is loaded by the VM
-</blockquote>
-
-</div> <a name="api:mono_assembly_getrootdir"></a>
- <div class="api">
-    <div class="api-entry">mono_assembly_getrootdir</div>
-
-    <div class="prototype">G_CONST_RETURN gchar *
-mono_assembly_getrootdir (void)
-
-</div>
-<p />
-<b>Returns</b>
-<blockquote>	  a string with the directory, this string should not be freed.
-</blockquote>
-<b>Remarks</b>
-<p />	 <p />
-
-	 Obtains the root directory used for looking up assemblies.
-	
-
-
-</div><h3>Assembly Names</h3>
-
-	<p />The MonoAssemblyName contains the full identity of an
-	assembly (name, culture, public key, public key token,
-	version and any other flags).
-
-	<p />These unmanaged objects represent the <a href="http://www.mono-project.com/monodoc/T:System.Reflection.AssemblyName">System.Reflection.AssemblyName</a>
-	managed type.
-
- <a name="api:mono_assembly_name_free"></a>
- <div class="api">
-    <div class="api-entry">mono_assembly_name_free</div>
-
-    <div class="prototype">void
-mono_assembly_name_free (MonoAssemblyName *aname)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>aname:</i></dt><dd> assembly name to free</dd></blockquote>
-<b>Remarks</b>
-<p />	 <p />
-
-	 Frees the provided assembly name object.
-	 (it does not frees the object itself, only the name members).
-
-</div> <a name="api:mono_stringify_assembly_name"></a>
- <div class="api">
-    <div class="api-entry">mono_stringify_assembly_name</div>
-
-    <div class="prototype">char*
-mono_stringify_assembly_name (MonoAssemblyName *aname)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>aname:</i></dt><dd> the assembly name.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a newly allocated string with a string representation of
-
-	 the assembly name.</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Convert <i>aname</i> into its string format. The returned string is dynamically
-	 allocated and should be freed by the caller.
-	
-
-</div> <a name="api:mono_assembly_names_equal"></a>
- <div class="api">
-    <div class="api-entry">mono_assembly_names_equal</div>
-
-    <div class="prototype">gboolean
-mono_assembly_names_equal (MonoAssemblyName *l, MonoAssemblyName *r)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>l:</i></dt><dd> first assembly</dd><dt><i>r:</i></dt><dd> second assembly.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  TRUE if both assembly names are equal.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Compares two MonoAssemblyNames and returns whether they are equal.
-	
-	 This compares the names, the cultures, the release version and their
-	 public tokens.
-	
-
-
-</div><h3>Modules</h3>
-
-	<p />An assembly is made up of one or more modules.
-
- <a name="api:mono_module_file_get_object"></a>
- <div class="api">
-    <div class="api-entry">mono_module_file_get_object</div>
-
-    <div class="prototype">Prototype: mono_module_file_get_object</div>
-<p />
-
-</div> <a name="api:mono_module_get_object"></a>
- <div class="api">
-    <div class="api-entry">mono_module_get_object</div>
-
-    <div class="prototype">Prototype: mono_module_get_object</div>
-<p />
-
-</div></body>
-</html>
-</span>
\ No newline at end of file
diff --git a/docs/deploy/mono-api-class.html b/docs/deploy/mono-api-class.html
deleted file mode 100644
index bd3d0f8..0000000
--- a/docs/deploy/mono-api-class.html
+++ /dev/null
@@ -1,797 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><span>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-   <title>mono-api-class.html</title>
-   <style type="text/css">
-
-
-   h3 { 
-       font-size: 18px;
-       padding-bottom: 4pt;
-       border-bottom: 2px solid #dddddd;
-   }
-       
-   .api {
-     border: 1px solid;
-     padding: 10pt;
-     margin: 10pt;
-   } 
-
-   .api-entry { 
-       border-bottom: none;
-       font-size: 18px;
-   }
-
-   .prototype {
-     border: 1px solid;
-     background-color: #f2f2f2;
-     padding: 5pt;
-     margin-top: 5pt;
-     margin-bottom: 5pt;  
-   } 
-
-   .header {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-    
-   .code {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-   
-
-</style>
-</head>
-<body>
-<h2>Class Operations</h2>
-
- <a name="api:mono_class_array_element_size"></a>
- <div class="api">
-    <div class="api-entry">mono_class_array_element_size</div>
-
-    <div class="prototype">gint32
-mono_class_array_element_size (MonoClass *klass)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> </dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the number of bytes an element of type <i>klass</i>
-
-	 uses when stored into an array.</blockquote>
-
-</div> <a name="api:mono_class_data_size"></a>
- <div class="api">
-    <div class="api-entry">mono_class_data_size</div>
-
-    <div class="prototype">gint32
-mono_class_data_size (MonoClass *klass)
-	
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> a class </dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the size of the static class data
-</blockquote>
-<b>Remarks</b>
-<p />	 <p />
-
-
-</div> <a name="api:mono_class_enum_basetype"></a>
- <div class="api">
-    <div class="api-entry">mono_class_enum_basetype</div>
-
-    <div class="prototype">MonoType*
-mono_class_enum_basetype (MonoClass *klass)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> the MonoClass to act on</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the underlying type representation for an enumeration.
-</blockquote>
-
-</div> <a name="api:mono_class_from_generic_parameter"></a>
- <div class="api">
-    <div class="api-entry">mono_class_from_generic_parameter</div>
-
-    <div class="prototype">Prototype: mono_class_from_generic_parameter</div>
-<p />
-
-</div> <a name="api:mono_class_from_mono_type"></a>
- <div class="api">
-    <div class="api-entry">mono_class_from_mono_type</div>
-
-    <div class="prototype">Prototype: mono_class_from_mono_type</div>
-<p />
-
-</div> <a name="api:mono_class_from_name_case"></a>
- <div class="api">
-    <div class="api-entry">mono_class_from_name_case</div>
-
-    <div class="prototype">MonoClass*
-mono_class_from_name_case (MonoImage *image, const char* name_space, const char *name)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>image:</i></dt><dd> The MonoImage where the type is looked up in</dd><dt><i>name_space:</i></dt><dd> the type namespace</dd><dt><i>name:</i></dt><dd> the type short name.</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Obtains a MonoClass with a given namespace and a given name which
-	 is located in the given MonoImage.   The namespace and name
-	 lookups are case insensitive.
-
-</div> <a name="api:mono_class_from_name"></a>
- <div class="api">
-    <div class="api-entry">mono_class_from_name</div>
-
-    <div class="prototype">MonoClass*
-mono_class_from_name (MonoImage *image, const char* name_space, const char *name)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>image:</i></dt><dd> The MonoImage where the type is looked up in</dd><dt><i>name_space:</i></dt><dd> the type namespace</dd><dt><i>name:</i></dt><dd> the type short name.</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Obtains a MonoClass with a given namespace and a given name which
-	 is located in the given MonoImage.   
-
-</div> <a name="api:mono_class_from_typeref"></a>
- <div class="api">
-    <div class="api-entry">mono_class_from_typeref</div>
-
-    <div class="prototype">Prototype: mono_class_from_typeref</div>
-<p />
-
-</div> <a name="api:mono_class_get_byref_type"></a>
- <div class="api">
-    <div class="api-entry">mono_class_get_byref_type</div>
-
-    <div class="prototype">MonoType*
-mono_class_get_byref_type (MonoClass *klass)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> the MonoClass to act on</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	
-<p />
-
-</div> <a name="api:mono_class_get_element_class"></a>
- <div class="api">
-    <div class="api-entry">mono_class_get_element_class</div>
-
-    <div class="prototype">MonoClass*
-mono_class_get_element_class (MonoClass *klass)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> the MonoClass to act on</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the element class of an array or an enumeration.
-</blockquote>
-
-</div> <a name="api:mono_class_get_events"></a>
- <div class="api">
-    <div class="api-entry">mono_class_get_events</div>
-
-    <div class="prototype">MonoEvent*
-mono_class_get_events (MonoClass* klass, gpointer *iter)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> the MonoClass to act on</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a <i>MonoEvent</i>* on each invocation, or NULL when no more are available.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 This routine is an iterator routine for retrieving the properties in a class.
-	
-	 You must pass a gpointer that points to zero and is treated as an opaque handle to
-	 iterate over all of the elements.  When no more values are
-	 available, the return value is NULL.
-	
-
-</div> <a name="api:mono_class_get_event_token"></a>
- <div class="api">
-    <div class="api-entry">mono_class_get_event_token</div>
-
-    <div class="prototype">Prototype: mono_class_get_event_token</div>
-<p />
-
-</div> <a name="api:mono_class_get_field_from_name"></a>
- <div class="api">
-    <div class="api-entry">mono_class_get_field_from_name</div>
-
-    <div class="prototype">MonoClassField*
-mono_class_get_field_from_name (MonoClass *klass, const char *name)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> the class to lookup the field.</dd><dt><i>name:</i></dt><dd> the field name</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the MonoClassField pointer of the named field or NULL
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Search the class <i>klass</i> and it's parents for a field with the name <i>name</i>.
-	
-<p />
-
-</div> <a name="api:mono_class_get_field"></a>
- <div class="api">
-    <div class="api-entry">mono_class_get_field</div>
-
-    <div class="prototype">MonoClassField*
-mono_class_get_field (MonoClass *class, guint32 field_token)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>class:</i></dt><dd> the class to lookup the field.</dd><dt><i>field_token:</i></dt><dd> the field token</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  A MonoClassField representing the type and offset of
-
-	 the field, or a NULL value if the field does not belong to this
-	 class.</blockquote>
-
-</div> <a name="api:mono_class_get_fields"></a>
- <div class="api">
-    <div class="api-entry">mono_class_get_fields</div>
-
-    <div class="prototype">MonoClassField*
-mono_class_get_fields (MonoClass* klass, gpointer *iter)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> the MonoClass to act on</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a <i>MonoClassField</i>* on each iteration, or NULL when no more fields are available.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 This routine is an iterator routine for retrieving the fields in a class.
-	
-	 You must pass a gpointer that points to zero and is treated as an opaque handle to
-	 iterate over all of the elements.  When no more values are
-	 available, the return value is NULL.
-	
-
-</div> <a name="api:mono_class_get_field_token"></a>
- <div class="api">
-    <div class="api-entry">mono_class_get_field_token</div>
-
-    <div class="prototype">guint32
-mono_class_get_field_token (MonoClassField *field)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>field:</i></dt><dd> the field we need the token of</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the token representing the field in the image it was loaded from.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Get the token of a field. Note that the tokesn is only valid for the image
-	 the field was loaded from. Don't use this function for fields in dynamic types.
-	
-<p />
-
-</div> <a name="api:mono_class_get_flags"></a>
- <div class="api">
-    <div class="api-entry">mono_class_get_flags</div>
-
-    <div class="prototype">guint32
-mono_class_get_flags (MonoClass *klass)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> the MonoClass to act on</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the flags from the TypeDef table.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 The type flags from the TypeDef table from the metadata.
-	 see the TYPE_ATTRIBUTE_* definitions on tabledefs.h for the
-	 different values.
-	
-
-</div> <a name="api:mono_class_get_full"></a>
- <div class="api">
-    <div class="api-entry">mono_class_get_full</div>
-
-    <div class="prototype">MonoClass*
-mono_class_get_full (MonoImage *image, guint32 type_token, MonoGenericContext *context)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>image:</i></dt><dd> the image where the class resides</dd><dt><i>type_token:</i></dt><dd> the token for the class</dd><dt><i>context:</i></dt><dd> the generic context used to evaluate generic instantiations in</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the MonoClass that represents <i>type_token</i> in <i>image</i>
-</blockquote>
-
-</div> <a name="api:mono_class_get_image"></a>
- <div class="api">
-    <div class="api-entry">mono_class_get_image</div>
-
-    <div class="prototype">Prototype: mono_class_get_image</div>
-<p />
-
-</div> <a name="api:mono_class_get_interfaces"></a>
- <div class="api">
-    <div class="api-entry">mono_class_get_interfaces</div>
-
-    <div class="prototype">MonoClass*
-mono_class_get_interfaces (MonoClass* klass, gpointer *iter)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> the MonoClass to act on</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a <i>Monoclass</i>* on each invocation, or NULL when no more are available.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 This routine is an iterator routine for retrieving the interfaces implemented by this class.
-	
-	 You must pass a gpointer that points to zero and is treated as an opaque handle to
-	 iterate over all of the elements.  When no more values are
-	 available, the return value is NULL.
-	
-
-</div> <a name="api:mono_class_get_method_from_name"></a>
- <div class="api">
-    <div class="api-entry">mono_class_get_method_from_name</div>
-
-    <div class="prototype">MonoMethod*
-mono_class_get_method_from_name (MonoClass *klass, const char *name, int param_count)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> where to look for the method</dd><dt><i>name_space:</i></dt><dd> name of the method</dd><dt><i>param_count:</i></dt><dd> number of parameters. -1 for any number.</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Obtains a MonoMethod with a given name and number of parameters.
-	 It only works if there are no multiple signatures for any given method name.
-
-</div> <a name="api:mono_class_get_methods"></a>
- <div class="api">
-    <div class="api-entry">mono_class_get_methods</div>
-
-    <div class="prototype">MonoMethod*
-mono_class_get_methods (MonoClass* klass, gpointer *iter)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> the MonoClass to act on</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a MonoMethod on each iteration or NULL when no more methods are available.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 This routine is an iterator routine for retrieving the fields in a class.
-	
-	 You must pass a gpointer that points to zero and is treated as an opaque handle to
-	 iterate over all of the elements.  When no more values are
-	 available, the return value is NULL.
-	
-
-</div> <a name="api:mono_class_get"></a>
- <div class="api">
-    <div class="api-entry">mono_class_get</div>
-
-    <div class="prototype">Prototype: mono_class_get</div>
-<p />
-
-</div> <a name="api:mono_class_get_name"></a>
- <div class="api">
-    <div class="api-entry">mono_class_get_name</div>
-
-    <div class="prototype">const char*
-mono_class_get_name (MonoClass *klass)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> the MonoClass to act on</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the name of the class.
-</blockquote>
-
-</div> <a name="api:mono_class_get_namespace"></a>
- <div class="api">
-    <div class="api-entry">mono_class_get_namespace</div>
-
-    <div class="prototype">const char*
-mono_class_get_namespace (MonoClass *klass)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> the MonoClass to act on</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the namespace of the class.
-</blockquote>
-
-</div> <a name="api:mono_class_get_nested_types"></a>
- <div class="api">
-    <div class="api-entry">mono_class_get_nested_types</div>
-
-    <div class="prototype">MonoClass*
-mono_class_get_nested_types (MonoClass* klass, gpointer *iter)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> the MonoClass to act on</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a <i>Monoclass</i>* on each invocation, or NULL when no more are available.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 This routine is an iterator routine for retrieving the nested types of a class.
-	 This works only if <i>klass</i> is non-generic, or a generic type definition.
-	
-	 You must pass a gpointer that points to zero and is treated as an opaque handle to
-	 iterate over all of the elements.  When no more values are
-	 available, the return value is NULL.
-	
-
-</div> <a name="api:mono_class_get_nesting_type"></a>
- <div class="api">
-    <div class="api-entry">mono_class_get_nesting_type</div>
-
-    <div class="prototype">Prototype: mono_class_get_nesting_type</div>
-<p />
-
-</div> <a name="api:mono_class_get_parent"></a>
- <div class="api">
-    <div class="api-entry">mono_class_get_parent</div>
-
-    <div class="prototype">MonoClass*
-mono_class_get_parent (MonoClass *klass)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> the MonoClass to act on</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the parent class for this class.
-</blockquote>
-
-</div> <a name="api:mono_class_get_properties"></a>
- <div class="api">
-    <div class="api-entry">mono_class_get_properties</div>
-
-    <div class="prototype">MonoProperty*
-mono_class_get_properties (MonoClass* klass, gpointer *iter)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> the MonoClass to act on</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a <i>MonoProperty</i>* on each invocation, or NULL when no more are available.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 This routine is an iterator routine for retrieving the properties in a class.
-	
-	 You must pass a gpointer that points to zero and is treated as an opaque handle to
-	 iterate over all of the elements.  When no more values are
-	 available, the return value is NULL.
-	
-
-</div> <a name="api:mono_class_get_property_from_name"></a>
- <div class="api">
-    <div class="api-entry">mono_class_get_property_from_name</div>
-
-    <div class="prototype">Prototype: mono_class_get_property_from_name</div>
-<p />
-
-</div> <a name="api:mono_class_get_property_token"></a>
- <div class="api">
-    <div class="api-entry">mono_class_get_property_token</div>
-
-    <div class="prototype">Prototype: mono_class_get_property_token</div>
-<p />
-
-</div> <a name="api:mono_class_get_rank"></a>
- <div class="api">
-    <div class="api-entry">mono_class_get_rank</div>
-
-    <div class="prototype">int
-mono_class_get_rank (MonoClass *klass)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> the MonoClass to act on</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the rank for the array (the number of dimensions).
-</blockquote>
-
-</div> <a name="api:mono_class_get_type"></a>
- <div class="api">
-    <div class="api-entry">mono_class_get_type</div>
-
-    <div class="prototype">MonoType*
-mono_class_get_type (MonoClass *klass)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> the MonoClass to act on</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the MonoType from the class.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 This method returns the internal Type representation for the class.
-	
-
-</div> <a name="api:mono_class_inflate_generic_method"></a>
- <div class="api">
-    <div class="api-entry">mono_class_inflate_generic_method</div>
-
-    <div class="prototype">Prototype: mono_class_inflate_generic_method</div>
-<p />
-
-</div> <a name="api:mono_class_inflate_generic_type"></a>
- <div class="api">
-    <div class="api-entry">mono_class_inflate_generic_type</div>
-
-    <div class="prototype">Prototype: mono_class_inflate_generic_type</div>
-<p />
-
-</div> <a name="api:mono_class_init"></a>
- <div class="api">
-    <div class="api-entry">mono_class_init</div>
-
-    <div class="prototype">gboolean
-mono_class_init (MonoClass *class)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>class:</i></dt><dd> the class to initialize</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	   Compute the instance_size, class_size and other infos that cannot be 
-	 computed at mono_class_get() time. Also compute vtable_size if possible. 
-	 Returns TRUE on success or FALSE if there was a problem in loading
-	 the type (incorrect assemblies, missing assemblies, methods, etc). 
-	
-	 LOCKING: Acquires the loader lock.
-
-</div> <a name="api:mono_class_instance_size"></a>
- <div class="api">
-    <div class="api-entry">mono_class_instance_size</div>
-
-    <div class="prototype">gint32
-mono_class_instance_size (MonoClass *klass)
-	
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> a class </dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the size of an object instance
-</blockquote>
-<b>Remarks</b>
-<p />	 <p />
-
-
-</div> <a name="api:mono_class_is_assignable_from"></a>
- <div class="api">
-    <div class="api-entry">mono_class_is_assignable_from</div>
-
-    <div class="prototype">gboolean
-mono_class_is_assignable_from (MonoClass *klass, MonoClass *oklass)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> the class to be assigned to</dd><dt><i>oklass:</i></dt><dd> the source class</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  true if an instance of object oklass can be assigned to an
-
-	 instance of object <i>klass</i></blockquote>
-
-</div> <a name="api:mono_class_is_enum"></a>
- <div class="api">
-    <div class="api-entry">mono_class_is_enum</div>
-
-    <div class="prototype">gboolean
-mono_class_is_enum (MonoClass *klass)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> the MonoClass to act on</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  true if the MonoClass represents an enumeration.
-</blockquote>
-
-</div> <a name="api:mono_class_is_subclass_of"></a>
- <div class="api">
-    <div class="api-entry">mono_class_is_subclass_of</div>
-
-    <div class="prototype">Prototype: mono_class_is_subclass_of</div>
-<p />
-
-</div> <a name="api:mono_class_is_valuetype"></a>
- <div class="api">
-    <div class="api-entry">mono_class_is_valuetype</div>
-
-    <div class="prototype">gboolean
-mono_class_is_valuetype (MonoClass *klass)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> the MonoClass to act on</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  true if the MonoClass represents a ValueType.
-</blockquote>
-
-</div> <a name="api:mono_class_min_align"></a>
- <div class="api">
-    <div class="api-entry">mono_class_min_align</div>
-
-    <div class="prototype">gint32
-mono_class_min_align (MonoClass *klass)
-	
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> a class </dd></blockquote>
-<b>Returns</b>
-<blockquote>	  minimm alignment requirements 
-</blockquote>
-<b>Remarks</b>
-<p />	 <p />
-
-
-</div> <a name="api:mono_class_num_events"></a>
- <div class="api">
-    <div class="api-entry">mono_class_num_events</div>
-
-    <div class="prototype">int
-mono_class_num_events (MonoClass *klass)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> the MonoClass to act on</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the number of events in the class.
-</blockquote>
-
-</div> <a name="api:mono_class_num_fields"></a>
- <div class="api">
-    <div class="api-entry">mono_class_num_fields</div>
-
-    <div class="prototype">int
-mono_class_num_fields (MonoClass *klass)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> the MonoClass to act on</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the number of static and instance fields in the class.
-</blockquote>
-
-</div> <a name="api:mono_class_num_methods"></a>
- <div class="api">
-    <div class="api-entry">mono_class_num_methods</div>
-
-    <div class="prototype">int
-mono_class_num_methods (MonoClass *klass)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> the MonoClass to act on</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the number of methods in the class.
-</blockquote>
-
-</div> <a name="api:mono_class_num_properties"></a>
- <div class="api">
-    <div class="api-entry">mono_class_num_properties</div>
-
-    <div class="prototype">int
-mono_class_num_properties (MonoClass *klass)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> the MonoClass to act on</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the number of properties in the class.
-</blockquote>
-
-</div> <a name="api:mono_class_value_size"></a>
- <div class="api">
-    <div class="api-entry">mono_class_value_size</div>
-
-    <div class="prototype">gint32
-mono_class_value_size      (MonoClass *klass, guint32 *align)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> a class </dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the size of a value of kind <i>klass</i>
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 This function is used for value types, and return the
-	 space and the alignment to store that kind of value object.
-	
-
-</div> <a name="api:mono_class_vtable"></a>
- <div class="api">
-    <div class="api-entry">mono_class_vtable</div>
-
-    <div class="prototype">MonoVTable*
-mono_class_vtable (MonoDomain *domain, MonoClass *class)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>domain:</i></dt><dd> the application domain</dd><dt><i>class:</i></dt><dd> the class to initialize</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 VTables are domain specific because we create domain specific code, and 
-	 they contain the domain specific static class data.
-	 On failure, NULL is returned, and class->exception_type is set.
-
-</div> <a name="api:mono_class_get_method_from_name_flags"></a>
- <div class="api">
-    <div class="api-entry">mono_class_get_method_from_name_flags</div>
-
-    <div class="prototype">MonoMethod*
-mono_class_get_method_from_name_flags (MonoClass *klass, const char *name, int param_count, int flags)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> where to look for the method</dd><dt><i>name_space:</i></dt><dd> name of the method</dd><dt><i>param_count:</i></dt><dd> number of parameters. -1 for any number.</dd><dt><i>flags:</i></dt><dd> flags which must be set in the method</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Obtains a MonoMethod with a given name and number of parameters.
-	 It only works if there are no multiple signatures for any given method name.
-
-</div></body>
-</html>
-</span>
\ No newline at end of file
diff --git a/docs/deploy/mono-api-codegen.html b/docs/deploy/mono-api-codegen.html
deleted file mode 100644
index ef2db8f..0000000
--- a/docs/deploy/mono-api-codegen.html
+++ /dev/null
@@ -1,162 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><span>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-   <title>mono-api-codegen.html</title>
-   <style type="text/css">
-
-
-   h3 { 
-       font-size: 18px;
-       padding-bottom: 4pt;
-       border-bottom: 2px solid #dddddd;
-   }
-       
-   .api {
-     border: 1px solid;
-     padding: 10pt;
-     margin: 10pt;
-   } 
-
-   .api-entry { 
-       border-bottom: none;
-       font-size: 18px;
-   }
-
-   .prototype {
-     border: 1px solid;
-     background-color: #f2f2f2;
-     padding: 5pt;
-     margin-top: 5pt;
-     margin-bottom: 5pt;  
-   } 
-
-   .header {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-    
-   .code {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-   
-
-</style>
-</head>
-<body>
-<h3>Code manager</h3>
-
- <a name="api:mono_code_manager_commit"></a>
- <div class="api">
-    <div class="api-entry">mono_code_manager_commit</div>
-
-    <div class="prototype">void
-mono_code_manager_commit (MonoCodeManager *cman, void *data, int size, int newsize)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>cman:</i></dt><dd> a code manager</dd><dt><i>data:</i></dt><dd> the pointer returned by mono_code_manager_reserve ()</dd><dt><i>size:</i></dt><dd> the size requested in the call to mono_code_manager_reserve ()</dd><dt><i>newsize:</i></dt><dd> the new size to reserve</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 If we reserved too much room for a method and we didn't allocate
-	 already from the code manager, we can get back the excess allocation
-	 for later use in the code manager.
-
-</div> <a name="api:mono_code_manager_destroy"></a>
- <div class="api">
-    <div class="api-entry">mono_code_manager_destroy</div>
-
-    <div class="prototype">void
-mono_code_manager_destroy (MonoCodeManager *cman)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>cman:</i></dt><dd> a code manager</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Free all the memory associated with the code manager <i>cman</i>.
-
-</div> <a name="api:mono_code_manager_foreach"></a>
- <div class="api">
-    <div class="api-entry">mono_code_manager_foreach</div>
-
-    <div class="prototype">void
-mono_code_manager_foreach (MonoCodeManager *cman, MonoCodeManagerFunc func, void *user_data)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>cman:</i></dt><dd> a code manager</dd><dt><i>func:</i></dt><dd> a callback function pointer</dd><dt><i>user_data:</i></dt><dd> additional data to pass to <i>func</i></dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Invokes the callback <i>func</i> for each different chunk of memory allocated
-	 in the code manager <i>cman</i>.
-
-</div> <a name="api:mono_code_manager_invalidate"></a>
- <div class="api">
-    <div class="api-entry">mono_code_manager_invalidate</div>
-
-    <div class="prototype">void             
-mono_code_manager_invalidate (MonoCodeManager *cman)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>cman:</i></dt><dd> a code manager</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Fill all the memory with an invalid native code value
-	 so that any attempt to execute code allocated in the code
-	 manager <i>cman</i> will fail. This is used for debugging purposes.
-
-</div> <a name="api:mono_code_manager_new_dynamic"></a>
- <div class="api">
-    <div class="api-entry">mono_code_manager_new_dynamic</div>
-
-    <div class="prototype">MonoCodeManager* 
-mono_code_manager_new_dynamic (void)
-
-</div>
-<p />
-<b>Returns</b>
-<blockquote>	  the new code manager
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Creates a new code manager suitable for holding native code that can be
-	 used for single or small methods that need to be deallocated independently
-	 of other native code.
-	
-
-</div> <a name="api:mono_code_manager_new"></a>
- <div class="api">
-    <div class="api-entry">mono_code_manager_new</div>
-
-    <div class="prototype">MonoCodeManager* 
-mono_code_manager_new (void)
-
-</div>
-<p />
-<b>Returns</b>
-<blockquote>	  the new code manager
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Creates a new code manager. A code manager can be used to allocate memory
-	 suitable for storing native code that can be later executed.
-	 A code manager allocates memory from the operating system in large chunks
-	 (typically 64KB in size) so that many methods can be allocated inside them
-	 close together, improving cache locality.
-	
-
-</div></body>
-</html>
-</span>
\ No newline at end of file
diff --git a/docs/deploy/mono-api-counters.html b/docs/deploy/mono-api-counters.html
deleted file mode 100644
index 886c38a..0000000
--- a/docs/deploy/mono-api-counters.html
+++ /dev/null
@@ -1,126 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><span>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-   <title>mono-api-counters.html</title>
-   <style type="text/css">
-
-
-   h3 { 
-       font-size: 18px;
-       padding-bottom: 4pt;
-       border-bottom: 2px solid #dddddd;
-   }
-       
-   .api {
-     border: 1px solid;
-     padding: 10pt;
-     margin: 10pt;
-   } 
-
-   .api-entry { 
-       border-bottom: none;
-       font-size: 18px;
-   }
-
-   .prototype {
-     border: 1px solid;
-     background-color: #f2f2f2;
-     padding: 5pt;
-     margin-top: 5pt;
-     margin-bottom: 5pt;  
-   } 
-
-   .header {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-    
-   .code {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-   
-
-</style>
-</head>
-<body>
-<h2>Counters</h2>
-	
-	<p />Counters is a Mono API for flexible statistics collection
-	and is used to track different events inside the JIT.
-
-        <p />You would typically register an address with the
-        <tt>mono_counters_register</tt> routine and increment the
-        counters from your application as you go.   At the end of the
-        program you would call mono_counters_dump which will display
-        all the registered counters.
-
-	<p />If you need more complicated counter computation, a
-        function can be provided instead of an address.  In that case
-        the <tt>MONO_COUNTER_CALLBACK</tt> flag must be ored in the
-        type request. 
-
-	<p />The types that can be rendered are:
-		
-<pre>
-       MONO_COUNTER_INT
-       MONO_COUNTER_UINT
-       MONO_COUNTER_WORD
-       MONO_COUNTER_LONG
-       MONO_COUNTER_ULONG
-       MONO_COUNTER_DOUBLE
-       MONO_COUNTER_STRING
-</pre>
-	
-	<p />To organize the output, you register also a section where
-	the counter will be displayed, or one of the following values
-	when you register your counter:
-
-<pre>
-
-       MONO_COUNTER_JIT
-       MONO_COUNTER_GC
-       MONO_COUNTER_METADATA
-       MONO_COUNTER_GENERICS
-       MONO_COUNTER_SECURITY
-</pre>
-	
- <a name="api:mono_counters_dump"></a>
- <div class="api">
-    <div class="api-entry">mono_counters_dump</div>
-
-    <div class="prototype">void
-mono_counters_dump (int section_mask, FILE *outfile)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>section_mask:</i></dt><dd> The sections to dump counters for</dd><dt><i>outfile:</i></dt><dd> a FILE to dump the results to</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Displays the counts of all the enabled counters registered. 
-
-</div> <a name="api:mono_counters_enable"></a>
- <div class="api">
-    <div class="api-entry">mono_counters_enable</div>
-
-    <div class="prototype">void
-mono_counters_enable (int section_mask)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>section_mask:</i></dt><dd> a mask listing the sections that will be displayed</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 This is used to track which counters will be displayed.
-
-</div></body>
-</html>
-</span>
\ No newline at end of file
diff --git a/docs/deploy/mono-api-debug.html b/docs/deploy/mono-api-debug.html
deleted file mode 100644
index 78b31a3..0000000
--- a/docs/deploy/mono-api-debug.html
+++ /dev/null
@@ -1,180 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><span>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-   <title>mono-api-debug.html</title>
-   <style type="text/css">
-
-
-   h3 { 
-       font-size: 18px;
-       padding-bottom: 4pt;
-       border-bottom: 2px solid #dddddd;
-   }
-       
-   .api {
-     border: 1px solid;
-     padding: 10pt;
-     margin: 10pt;
-   } 
-
-   .api-entry { 
-       border-bottom: none;
-       font-size: 18px;
-   }
-
-   .prototype {
-     border: 1px solid;
-     background-color: #f2f2f2;
-     padding: 5pt;
-     margin-top: 5pt;
-     margin-bottom: 5pt;  
-   } 
-
-   .header {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-    
-   .code {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-   
-
-</style>
-</head>
-<body>
- <a name="api:mono_debug_il_offset_from_address"></a>
- <div class="api">
-    <div class="api-entry">mono_debug_il_offset_from_address</div>
-
-    <div class="prototype">gint32
-mono_debug_il_offset_from_address (MonoMethod *method, MonoDomain *domain, guint32 native_offset)
-
-</div>
-<p />
-<b>Remarks</b>
-<p />	 
-	   Compute the IL offset corresponding to NATIVE_OFFSET inside the native
-	 code of METHOD in DOMAIN.
-
-</div> <a name="api:mono_debug_add_method"></a>
- <div class="api">
-    <div class="api-entry">mono_debug_add_method</div>
-
-    <div class="prototype">Prototype: mono_debug_add_method</div>
-<p />
-
-</div> <a name="api:mono_debug_close_mono_symbol_file"></a>
- <div class="api">
-    <div class="api-entry">mono_debug_close_mono_symbol_file</div>
-
-    <div class="prototype">Prototype: mono_debug_close_mono_symbol_file</div>
-<p />
-
-</div> <a name="api:mono_debug_find_method"></a>
- <div class="api">
-    <div class="api-entry">mono_debug_find_method</div>
-
-    <div class="prototype">Prototype: mono_debug_find_method</div>
-<p />
-
-</div> <a name="api:mono_debug_using_mono_debugger"></a>
- <div class="api">
-    <div class="api-entry">mono_debug_using_mono_debugger</div>
-
-    <div class="prototype">Prototype: mono_debug_using_mono_debugger</div>
-<p />
-
-
-</div><h3>Mono Debugger Interface</h3>
-
-	<p />These are methods that are invoked by the debugger at
-	runtime.
-	
- <a name="api:mono_debugger_breakpoint_callback"></a>
- <div class="api">
-    <div class="api-entry">mono_debugger_breakpoint_callback</div>
-
-    <div class="prototype">Prototype: mono_debugger_breakpoint_callback</div>
-<p />
-
-</div> <a name="api:mono_debugger_check_runtime_version"></a>
- <div class="api">
-    <div class="api-entry">mono_debugger_check_runtime_version</div>
-
-    <div class="prototype">Prototype: mono_debugger_check_runtime_version</div>
-<p />
-
-</div> <a name="api:mono_debugger_event"></a>
- <div class="api">
-    <div class="api-entry">mono_debugger_event</div>
-
-    <div class="prototype">Prototype: mono_debugger_event</div>
-<p />
-
-</div> <a name="api:mono_debugger_handle_exception"></a>
- <div class="api">
-    <div class="api-entry">mono_debugger_handle_exception</div>
-
-    <div class="prototype">Prototype: mono_debugger_handle_exception</div>
-<p />
-
-</div> <a name="api:mono_debugger_insert_breakpoint_full"></a>
- <div class="api">
-    <div class="api-entry">mono_debugger_insert_breakpoint_full</div>
-
-    <div class="prototype">Prototype: mono_debugger_insert_breakpoint_full</div>
-<p />
-
-</div> <a name="api:mono_debugger_insert_breakpoint"></a>
- <div class="api">
-    <div class="api-entry">mono_debugger_insert_breakpoint</div>
-
-    <div class="prototype">Prototype: mono_debugger_insert_breakpoint</div>
-<p />
-
-</div> <a name="api:mono_debugger_lock"></a>
- <div class="api">
-    <div class="api-entry">mono_debugger_lock</div>
-
-    <div class="prototype">Prototype: mono_debugger_lock</div>
-<p />
-
-</div> <a name="api:mono_debugger_method_has_breakpoint"></a>
- <div class="api">
-    <div class="api-entry">mono_debugger_method_has_breakpoint</div>
-
-    <div class="prototype">Prototype: mono_debugger_method_has_breakpoint</div>
-<p />
-
-</div> <a name="api:mono_debugger_remove_breakpoint"></a>
- <div class="api">
-    <div class="api-entry">mono_debugger_remove_breakpoint</div>
-
-    <div class="prototype">Prototype: mono_debugger_remove_breakpoint</div>
-<p />
-
-</div> <a name="api:mono_debugger_runtime_invoke"></a>
- <div class="api">
-    <div class="api-entry">mono_debugger_runtime_invoke</div>
-
-    <div class="prototype">Prototype: mono_debugger_runtime_invoke</div>
-<p />
-
-</div> <a name="api:mono_debugger_unlock"></a>
- <div class="api">
-    <div class="api-entry">mono_debugger_unlock</div>
-
-    <div class="prototype">Prototype: mono_debugger_unlock</div>
-<p />
-
-</div></body>
-</html>
-</span>
\ No newline at end of file
diff --git a/docs/deploy/mono-api-domains.html b/docs/deploy/mono-api-domains.html
deleted file mode 100644
index 3966740..0000000
--- a/docs/deploy/mono-api-domains.html
+++ /dev/null
@@ -1,307 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><span>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-   <title>mono-api-domains.html</title>
-   <style type="text/css">
-
-
-   h3 { 
-       font-size: 18px;
-       padding-bottom: 4pt;
-       border-bottom: 2px solid #dddddd;
-   }
-       
-   .api {
-     border: 1px solid;
-     padding: 10pt;
-     margin: 10pt;
-   } 
-
-   .api-entry { 
-       border-bottom: none;
-       font-size: 18px;
-   }
-
-   .prototype {
-     border: 1px solid;
-     background-color: #f2f2f2;
-     padding: 5pt;
-     margin-top: 5pt;
-     margin-bottom: 5pt;  
-   } 
-
-   .header {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-    
-   .code {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-   
-
-</style>
-</head>
-<body>
-<h2>Application Domains</h2>
-
-<h3>Synopsis</h3>
-
-<div class="header">
-#include <metadata/appdomain.h>
-
-/* Managed AppDomain */
-typedef struct _MonoAppDomain MonoAppDomain;
-
-/* Unmanaged representation */
-typedef struct _MonoDomain MonoDomain;
-
-/* Represents System.Runtime.Remoting.Contexts.Context */
-typedef struct _MonoAppContext MonoAppContext
-MonoAssembly*           <a href="#api:mono_domain_assembly_open">mono_domain_assembly_open</a>    (MonoDomain *domain, 
-                                                      const char *name);
-                        <a href="#api:mono_domain_create"></a>                             
-gboolean                <a href="#api:mono_domain_finalize">mono_domain_finalize</a>         (MonoDomain *domain, 
-                                                      guint32 timeout) ;
-                        <a href="#api:mono_domain_foreach"></a>                             
-                        <a href="#api:mono_domain_free"></a>                             
-                        <a href="#api:mono_domain_get_by_id"></a>                             
-MonoDomain*             <a href="#api:mono_domain_get_id">mono_domain_get_by_id</a>        (gint32 domainid) ;
-MonoDomain*             <a href="#api:mono_domain_get">mono_domain_get</a>              ();
-gboolean                <a href="#api:mono_domain_has_type_resolve">mono_domain_has_type_resolve</a> (MonoDomain *domain);
-                        <a href="#api:mono_domain_is_unloading"></a>                             
-void                    <a href="#api:mono_domain_set_internal">mono_domain_set_internal</a>     (MonoDomain *domain);
-gboolean                <a href="#api:mono_domain_set">mono_domain_set</a>              (MonoDomain *domain, 
-                                                      gboolean force);
-MonoReflectionAssembly* <a href="#api:mono_domain_try_type_resolve">mono_domain_try_type_resolve</a> (MonoDomain *domain, 
-                                                      char *name, 
-                                                      MonoObject *tb);
-gboolean                <a href="#api:mono_domain_owns_vtable_slot">mono_domain_owns_vtable_slot</a> (MonoDomain *domain, 
-                                                      gpointer vtable_slot);
-                        <a href="#api:mono_context_get"></a>                             
-                        <a href="#api:mono_context_set"></a>                             
-
-</div>
-
-	<p />Application domains are used to isolate multiple
-	applications on a single Mono virtual machine.  They are
-	conceptually similiar to processes, the difference is that
-	processes are managed by the operating system, while
-	application domains are managed by the Mono virtual machine.
-
-	<p />For more information on applications domains see the <a href="http://www.gotdotnet.com/team/clr/AppdomainFAQ.aspx">AppDomain FAQ</a>.
-		
-	<p />The <tt>MonoDomain</tt> is the unmanaged representation of
-	the <a href="http://www.mono-project.com/monodoc/T:System.AppDomain">System.AppDomain</a>
-	managed type, while the <tt>MonoAppDomain</tt> type represents
-	the managed version (<tt>MonoAppDomain</tt> has a pointer to
-	a <tt>MonoDomain</tt>).
-
- <a name="api:mono_domain_assembly_open"></a>
- <div class="api">
-    <div class="api-entry">mono_domain_assembly_open</div>
-
-    <div class="prototype">MonoAssembly*
-mono_domain_assembly_open (MonoDomain *domain, const char *name)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>domain:</i></dt><dd> the application domain</dd><dt><i>name:</i></dt><dd> file name of the assembly</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 fixme: maybe we should integrate this with mono_assembly_open ??
-
-</div> <a name="api:mono_domain_create"></a>
- <div class="api">
-    <div class="api-entry">mono_domain_create</div>
-
-    <div class="prototype">Prototype: mono_domain_create</div>
-<p />
-
-</div> <a name="api:mono_domain_finalize"></a>
- <div class="api">
-    <div class="api-entry">mono_domain_finalize</div>
-
-    <div class="prototype">
-gboolean
-mono_domain_finalize (MonoDomain *domain, guint32 timeout) 
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>domain:</i></dt><dd> the domain to finalize</dd><dt><i>timeout:</i></dt><dd> msects to wait for the finalization to complete, -1 to wait indefinitely</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  TRUE if succeeded, FALSE if there was a timeout
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	  Request finalization of all finalizable objects inside <i>domain</i>. Wait
-	 <i>timeout</i> msecs for the finalization to complete.
-	
-
-</div> <a name="api:mono_domain_foreach"></a>
- <div class="api">
-    <div class="api-entry">mono_domain_foreach</div>
-
-    <div class="prototype">Prototype: mono_domain_foreach</div>
-<p />
-
-</div> <a name="api:mono_domain_free"></a>
- <div class="api">
-    <div class="api-entry">mono_domain_free</div>
-
-    <div class="prototype">Prototype: mono_domain_free</div>
-<p />
-
-</div> <a name="api:mono_domain_get_by_id"></a>
- <div class="api">
-    <div class="api-entry">mono_domain_get_by_id</div>
-
-    <div class="prototype">Prototype: mono_domain_get_by_id</div>
-<p />
-
-</div> <a name="api:mono_domain_get_id"></a>
- <div class="api">
-    <div class="api-entry">mono_domain_get_id</div>
-
-    <div class="prototype">MonoDomain* 
-mono_domain_get_by_id (gint32 domainid) 
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>domainid:</i></dt><dd> the ID</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the a domain for a specific domain id.
-</blockquote>
-
-</div> <a name="api:mono_domain_get"></a>
- <div class="api">
-    <div class="api-entry">mono_domain_get</div>
-
-    <div class="prototype">MonoDomain*
-mono_domain_get ()
-
-</div>
-<p />
-<b>Returns</b>
-<blockquote>	  the current domain, to obtain the root domain use
-
-	 mono_get_root_domain().</blockquote>
-
-</div> <a name="api:mono_domain_has_type_resolve"></a>
- <div class="api">
-    <div class="api-entry">mono_domain_has_type_resolve</div>
-
-    <div class="prototype">gboolean
-mono_domain_has_type_resolve (MonoDomain *domain)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>domain:</i></dt><dd> application domains being looked up</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Returns true if the AppDomain.TypeResolve field has been
-	 set.
-
-</div> <a name="api:mono_domain_is_unloading"></a>
- <div class="api">
-    <div class="api-entry">mono_domain_is_unloading</div>
-
-    <div class="prototype">Prototype: mono_domain_is_unloading</div>
-<p />
-
-</div> <a name="api:mono_domain_set_internal"></a>
- <div class="api">
-    <div class="api-entry">mono_domain_set_internal</div>
-
-    <div class="prototype">void
-mono_domain_set_internal (MonoDomain *domain)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>domain:</i></dt><dd> the new domain</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Sets the current domain to <i>domain</i>.
-
-</div> <a name="api:mono_domain_set"></a>
- <div class="api">
-    <div class="api-entry">mono_domain_set</div>
-
-    <div class="prototype">gboolean
-mono_domain_set (MonoDomain *domain, gboolean force)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>domain:</i></dt><dd> domain</dd><dt><i>force:</i></dt><dd> force setting.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	 
-
-	   TRUE on success;
-	   FALSE if the domain is unloaded</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Set the current appdomain to <i>domain</i>. If <i>force</i> is set, set it even
-	 if it is being unloaded.
-	
-
-</div> <a name="api:mono_domain_try_type_resolve"></a>
- <div class="api">
-    <div class="api-entry">mono_domain_try_type_resolve</div>
-
-    <div class="prototype">MonoReflectionAssembly*
-mono_domain_try_type_resolve (MonoDomain *domain, char *name, MonoObject *tb)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>domain:</i></dt><dd> application domainwhere the name where the type is going to be resolved</dd><dt><i>name:</i></dt><dd> the name of the type to resolve or NULL.</dd><dt><i>tb:</i></dt><dd> A System.Reflection.Emit.TypeBuilder, used if name is NULL.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  A MonoReflectionAssembly or NULL if not found
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 This routine invokes the internal System.AppDomain.DoTypeResolve and returns
-	 the assembly that matches name.
-	
-	 If <i>name</i> is null, the value of ((TypeBuilder)tb).FullName is used instead
-	
-
-</div> <a name="api:mono_domain_owns_vtable_slot"></a>
- <div class="api">
-    <div class="api-entry">mono_domain_owns_vtable_slot</div>
-
-    <div class="prototype">gboolean
-mono_domain_owns_vtable_slot (MonoDomain *domain, gpointer vtable_slot)
-
-</div>
-<p />
-<b>Remarks</b>
-<p />	 
-	  Returns whenever VTABLE_SLOT is inside a vtable which belongs to DOMAIN.
-
-
-</div><h3>Contexts</h3>
-
- <a name="api:mono_context_get"></a>
- <div class="api">
-    <div class="api-entry">mono_context_get</div>
-
-    <div class="prototype">Prototype: mono_context_get</div>
-<p />
-
-</div></body>
-</html>
-</span>
\ No newline at end of file
diff --git a/docs/deploy/mono-api-dynamic-codegen.html b/docs/deploy/mono-api-dynamic-codegen.html
deleted file mode 100644
index e97ef81..0000000
--- a/docs/deploy/mono-api-dynamic-codegen.html
+++ /dev/null
@@ -1,362 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><span>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-   <title>mono-api-dynamic-codegen.html</title>
-   <style type="text/css">
-
-
-   h3 { 
-       font-size: 18px;
-       padding-bottom: 4pt;
-       border-bottom: 2px solid #dddddd;
-   }
-       
-   .api {
-     border: 1px solid;
-     padding: 10pt;
-     margin: 10pt;
-   } 
-
-   .api-entry { 
-       border-bottom: none;
-       font-size: 18px;
-   }
-
-   .prototype {
-     border: 1px solid;
-     background-color: #f2f2f2;
-     padding: 5pt;
-     margin-top: 5pt;
-     margin-bottom: 5pt;  
-   } 
-
-   .header {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-    
-   .code {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-   
-
-</style>
-</head>
-<body>
-<h2>Dynamic Code Generation</h2>
-
-	<p />The dynamic code generation interface inside the Mono
-	runtime is similar to the API exposed by
-	System.Reflection.Emit.
-
-	<p />This interface is used by Mono internally to generate code
-	on the flight in a cross-platform fashion.  For example,
-	P/Invoke marshalling in Mono is implemented in terms of this
-	interface, but it is also used in various other parts of the
-	runtime.
-
-	<p />Unlike Reflection.Emit, the dynamic code generation
-	interface does not start with an assembly builder.   The code
-	generation interface starts directly at the method level,
-	which is represented by a pointer to the MonoMethodBuilder
-	structure.
-
-	<p />To JIT this method, the process is this:
-
-	<ul>
-		<li>Create a <tt>MonoMethodBuilder</tt> object using
-		the <tt>mono_mb_new</tt> method.  The method's class
-		is specified as the first argument.
-
-		<li>Create the method signature, using
-		<tt>mono_metadata_signature_alloc</tt>.  The call
-		takes the number of arguments that the method takes.
-		Then you must initialize the types for each one of the
-		parameters.
-
-		<li>Emit the CIL code, using one of the
-		<tt>mono_mb_emit_*</tt> functions.   There are some
-		helper routines that you can use.
-
-		<li>Create the <tt>MonoMethod</tt> from the
-		<tt>MethodBuilder</tt> using
-		<tt>mono_mb_create_method</tt>.
-
-		<li>Release the <tt>MonoMethodBuilder</tt> resources
-		using mono_mb_free. 
-	</li></li></li></li></li></ul>
-
-	<p />The result of this process is a <tt>MonoMethod</tt> which
-	can be called using <tt><a href="api:mono_create_jit_trampoline">mono_create_jit_trampoline</a></tt>
-	routine or can be passed to any other functions that require
-	the MonoMethod.
-
-	<p />Example:
-
-	<pre>
-MonoMethod *adder ()
-{
-    MonoMethodBuilder *mb;
-    MonoMethodSignature *sig;
-    MonoMethod *method;
-    
-    mb = mono_mb_new (mono_defaults.object_class, "adder", MONO_WRAPPER_NONE);
-
-    /* Setup method signature */
-    sig = mono_metadata_signature_alloc (2);
-    sig->ret = &mono_get_int32_class ()->byval_arg;
-    sig->params [0] = &mono_get_int32_class ()->byval_arg;
-    sig->params [1] = &mono_defaults.int32_class->byval_arg;
-
-    /* Emit CIL code */
-    mono_mb_emit_ldarg (mb, 0);
-    mono_mb_emit_ldarg (mb, 1);
-    mono_mb_emit_byte (mb, CEE_ADD);
-    mono_mb_emit_byte (mb, CEE_RET);
-
-    /* Get the method */
-    method = mono_mb_create_method (mb, sig, max_stack);
-    
-    /* Cleanup */
-    mono_mb-free (mb);
-    return method;
-}
-	</pre>
-	
- <a name="api:mono_mb_new"></a>
- <div class="api">
-    <div class="api-entry">mono_mb_new</div>
-
-    <div class="prototype">Prototype: mono_mb_new</div>
-<p />
-
-
-	<p />The possible values for the <i>type</i> argument are:
-
-<pre>
-        MONO_WRAPPER_NONE
-        MONO_WRAPPER_DELEGATE_INVOKE
-        MONO_WRAPPER_DELEGATE_BEGIN_INVOKE
-        MONO_WRAPPER_DELEGATE_END_INVOKE
-        MONO_WRAPPER_RUNTIME_INVOKE
-        MONO_WRAPPER_NATIVE_TO_MANAGED
-        MONO_WRAPPER_MANAGED_TO_NATIVE
-        MONO_WRAPPER_REMOTING_INVOKE
-        MONO_WRAPPER_REMOTING_INVOKE_WITH_CHECK
-        MONO_WRAPPER_XDOMAIN_INVOKE
-        MONO_WRAPPER_XDOMAIN_DISPATCH
-        MONO_WRAPPER_LDFLD
-        MONO_WRAPPER_STFLD
-        MONO_WRAPPER_LDFLD_REMOTE
-        MONO_WRAPPER_STFLD_REMOTE
-        MONO_WRAPPER_SYNCHRONIZED
-        MONO_WRAPPER_DYNAMIC_METHOD
-        MONO_WRAPPER_ISINST
-        MONO_WRAPPER_CASTCLASS
-        MONO_WRAPPER_PROXY_ISINST
-        MONO_WRAPPER_STELEMREF
-        MONO_WRAPPER_UNBOX
-        MONO_WRAPPER_LDFLDA
-        MONO_WRAPPER_UNKNOWN
-</pre>
-
-</div><h3>Emitting IL</h3>
-
-	<p />Functions that can be used to generate IL on the flight,
-	similar in spirit to System.Reflection.Emit.ILGenerator.
-	
- <a name="api:mono_mb_emit_add_to_local"></a>
- <div class="api">
-    <div class="api-entry">mono_mb_emit_add_to_local</div>
-
-    <div class="prototype">Prototype: mono_mb_emit_add_to_local</div>
-<p />
-
-</div> <a name="api:mono_mb_emit_branch"></a>
- <div class="api">
-    <div class="api-entry">mono_mb_emit_branch</div>
-
-    <div class="prototype">Prototype: mono_mb_emit_branch</div>
-<p />
-
-</div> <a name="api:mono_mb_emit_byte"></a>
- <div class="api">
-    <div class="api-entry">mono_mb_emit_byte</div>
-
-    <div class="prototype">Prototype: mono_mb_emit_byte</div>
-<p />
-
-</div> <a name="api:mono_mb_emit_exception"></a>
- <div class="api">
-    <div class="api-entry">mono_mb_emit_exception</div>
-
-    <div class="prototype">Prototype: mono_mb_emit_exception</div>
-<p />
-
-</div> <a name="api:mono_mb_emit_i2"></a>
- <div class="api">
-    <div class="api-entry">mono_mb_emit_i2</div>
-
-    <div class="prototype">Prototype: mono_mb_emit_i2</div>
-<p />
-
-</div> <a name="api:mono_mb_emit_i4"></a>
- <div class="api">
-    <div class="api-entry">mono_mb_emit_i4</div>
-
-    <div class="prototype">Prototype: mono_mb_emit_i4</div>
-<p />
-
-</div> <a name="api:mono_mb_emit_icon"></a>
- <div class="api">
-    <div class="api-entry">mono_mb_emit_icon</div>
-
-    <div class="prototype">Prototype: mono_mb_emit_icon</div>
-<p />
-
-</div> <a name="api:mono_mb_emit_ldarg_addr"></a>
- <div class="api">
-    <div class="api-entry">mono_mb_emit_ldarg_addr</div>
-
-    <div class="prototype">Prototype: mono_mb_emit_ldarg_addr</div>
-<p />
-
-</div> <a name="api:mono_mb_emit_ldarg"></a>
- <div class="api">
-    <div class="api-entry">mono_mb_emit_ldarg</div>
-
-    <div class="prototype">Prototype: mono_mb_emit_ldarg</div>
-<p />
-
-</div> <a name="api:mono_mb_emit_ldflda"></a>
- <div class="api">
-    <div class="api-entry">mono_mb_emit_ldflda</div>
-
-    <div class="prototype">Prototype: mono_mb_emit_ldflda</div>
-<p />
-
-</div> <a name="api:mono_mb_emit_ldloc_addr"></a>
- <div class="api">
-    <div class="api-entry">mono_mb_emit_ldloc_addr</div>
-
-    <div class="prototype">Prototype: mono_mb_emit_ldloc_addr</div>
-<p />
-
-</div> <a name="api:mono_mb_emit_ldloc"></a>
- <div class="api">
-    <div class="api-entry">mono_mb_emit_ldloc</div>
-
-    <div class="prototype">Prototype: mono_mb_emit_ldloc</div>
-<p />
-
-</div> <a name="api:mono_mb_emit_ldstr"></a>
- <div class="api">
-    <div class="api-entry">mono_mb_emit_ldstr</div>
-
-    <div class="prototype">Prototype: mono_mb_emit_ldstr</div>
-<p />
-
-</div> <a name="api:mono_mb_emit_managed_call"></a>
- <div class="api">
-    <div class="api-entry">mono_mb_emit_managed_call</div>
-
-    <div class="prototype">Prototype: mono_mb_emit_managed_call</div>
-<p />
-
-</div> <a name="api:mono_mb_emit_native_call"></a>
- <div class="api">
-    <div class="api-entry">mono_mb_emit_native_call</div>
-
-    <div class="prototype">Prototype: mono_mb_emit_native_call</div>
-<p />
-
-</div> <a name="api:mono_mb_emit_stloc"></a>
- <div class="api">
-    <div class="api-entry">mono_mb_emit_stloc</div>
-
-    <div class="prototype">Prototype: mono_mb_emit_stloc</div>
-<p />
-
-
-</div><h3>Local variables and Methods</h3>
- <a name="api:mono_mb_create_method"></a>
- <div class="api">
-    <div class="api-entry">mono_mb_create_method</div>
-
-    <div class="prototype">MonoMethod*
-mono_mb_create_method (MonoMethodBuilder *mb, MonoMethodSignature *signature, int max_stack)
-
-</div>
-<p />
-<b>Returns</b>
-<blockquote>	  the newly created method.
-
-	
-	 LOCKING: Takes the loader lock.</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Create a MonoMethod from this method builder.
-
-</div> <a name="api:mono_mb_add_data"></a>
- <div class="api">
-    <div class="api-entry">mono_mb_add_data</div>
-
-    <div class="prototype">Prototype: mono_mb_add_data</div>
-<p />
-
-</div> <a name="api:mono_mb_add_local"></a>
- <div class="api">
-    <div class="api-entry">mono_mb_add_local</div>
-
-    <div class="prototype">Prototype: mono_mb_add_local</div>
-<p />
-
-</div> <a name="api:mono_mb_free"></a>
- <div class="api">
-    <div class="api-entry">mono_mb_free</div>
-
-    <div class="prototype">Prototype: mono_mb_free</div>
-<p />
-
-
-</div><h3>Patching Addresses</h3>
- <a name="api:mono_mb_patch_addr"></a>
- <div class="api">
-    <div class="api-entry">mono_mb_patch_addr</div>
-
-    <div class="prototype">Prototype: mono_mb_patch_addr</div>
-<p />
-
-</div> <a name="api:mono_mb_patch_addr_s"></a>
- <div class="api">
-    <div class="api-entry">mono_mb_patch_addr_s</div>
-
-    <div class="prototype">Prototype: mono_mb_patch_addr_s</div>
-<p />
-
-
-</div><h3>Method Signatures</h3>
- <a name="api:mono_metadata_signature_alloc"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_signature_alloc</div>
-
-    <div class="prototype">Prototype: mono_metadata_signature_alloc</div>
-<p />
-
-</div> <a name="api:mono_metadata_signature_dup"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_signature_dup</div>
-
-    <div class="prototype">Prototype: mono_metadata_signature_dup</div>
-<p />
-
-</div></body>
-</html>
-</span>
\ No newline at end of file
diff --git a/docs/deploy/mono-api-embedding.html b/docs/deploy/mono-api-embedding.html
deleted file mode 100644
index 1c4cef5..0000000
--- a/docs/deploy/mono-api-embedding.html
+++ /dev/null
@@ -1,428 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><span>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-   <title>mono-api-embedding.html</title>
-   <style type="text/css">
-
-
-   h3 { 
-       font-size: 18px;
-       padding-bottom: 4pt;
-       border-bottom: 2px solid #dddddd;
-   }
-       
-   .api {
-     border: 1px solid;
-     padding: 10pt;
-     margin: 10pt;
-   } 
-
-   .api-entry { 
-       border-bottom: none;
-       font-size: 18px;
-   }
-
-   .prototype {
-     border: 1px solid;
-     background-color: #f2f2f2;
-     padding: 5pt;
-     margin-top: 5pt;
-     margin-bottom: 5pt;  
-   } 
-
-   .header {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-    
-   .code {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-   
-
-</style>
-</head>
-<body>
-<h2>Embedding Mono</h2>
-
-	<p />The simplest way of embedding Mono is illustrated here:
-<pre>
-int main (int argc, char *argv)
-{
-	/*
-	 * Load the default Mono configuration file, this is needed
-	 * if you are planning on using the dllmaps defined on the
-	 * system configuration
-	 */
-	mono_config_parse (NULL);
-
-	/*
-	 * mono_jit_init() creates a domain: each assembly is
-	 * loaded and run in a MonoDomain.
-	 */
-	MonoDomain *domain = mono_jit_init ("startup.exe");
-
-	/*
-	 * Optionally, add an internal call that your startup.exe
-	 * code can call, this will bridge startup.exe to Mono
-	 */
-	mono_add_internal_call ("Sample::GetMessage", getMessage);
-
-	/*
-	 * Open the executable, and run the Main method declared
-	 * in the executable
-	 */
-	MonoAssembly *assembly = mono_domain_assembly_open (domain, "startup.exe");
-
-	if (!assembly)
-		exit (2);
-	/*
-	 * mono_jit_exec() will run the Main() method in the assembly.
-	 * The return value needs to be looked up from
-	 * System.Environment.ExitCode.
-	 */
-	mono_jit_exec (domain, assembly, argc, argv);
-}
-
-/* The C# signature for this method is: string GetMessage () in class Sample */
-MonoString*
-getMessage ()
-{
-	return mono_string_new (mono_domain_get (), "Hello, world");
-}
-</pre>
-
- <a name="api:mono_jit_init"></a>
- <div class="api">
-    <div class="api-entry">mono_jit_init</div>
-
-    <div class="prototype">Prototype: mono_jit_init</div>
-<p />
-
-</div> <a name="api:mono_jit_exec"></a>
- <div class="api">
-    <div class="api-entry">mono_jit_exec</div>
-
-    <div class="prototype">int 
-mono_jit_exec (MonoDomain *domain, MonoAssembly *assembly, int argc, char *argv[])
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>assembly:</i></dt><dd> reference to an assembly</dd><dt><i>argc:</i></dt><dd> argument count</dd><dt><i>argv:</i></dt><dd> argument vector</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Start execution of a program.
-
-</div> <a name="api:mono_set_dirs"></a>
- <div class="api">
-    <div class="api-entry">mono_set_dirs</div>
-
-    <div class="prototype">void
-mono_set_dirs (const char *assembly_dir, const char *config_dir)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>assembly_dir:</i></dt><dd> the base directory for assemblies</dd><dt><i>config_dir:</i></dt><dd> the base directory for configuration files</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 This routine is used internally and by developers embedding
-	 the runtime into their own applications.
-	
-	 There are a number of cases to consider: Mono as a system-installed
-	 package that is available on the location preconfigured or Mono in
-	 a relocated location.
-	
-	 If you are using a system-installed Mono, you can pass NULL
-	 to both parameters.  If you are not, you should compute both
-	 directory values and call this routine.
-	
-	 The values for a given PREFIX are:
-	
-	    assembly_dir: PREFIX/lib
-	    config_dir:   PREFIX/etc
-	
-	 Notice that embedders that use Mono in a relocated way must
-	 compute the location at runtime, as they will be in control
-	 of where Mono is installed.
-
-</div> <a name="api:mono_main"></a>
- <div class="api">
-    <div class="api-entry">mono_main</div>
-
-    <div class="prototype">int
-mono_main (int argc, char* argv[])
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>argc:</i></dt><dd> number of arguments in the argv array</dd><dt><i>argv:</i></dt><dd> array of strings containing the startup arguments</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Launches the Mono JIT engine and parses all the command line options
-	 in the same way that the mono command line VM would.
-
-</div> <a name="api:mono_parse_default_optimizations"></a>
- <div class="api">
-    <div class="api-entry">mono_parse_default_optimizations</div>
-
-    <div class="prototype">Prototype: mono_parse_default_optimizations</div>
-<p />
-
-
-</div> <a name="api:mono_jit_cleanup"></a>
- <div class="api">
-    <div class="api-entry">mono_jit_cleanup</div>
-
-    <div class="prototype">Prototype: mono_jit_cleanup</div>
-<p />
-
-</div> <a name="api:mono_set_defaults"></a>
- <div class="api">
-    <div class="api-entry">mono_set_defaults</div>
-
-    <div class="prototype">Prototype: mono_set_defaults</div>
-<p />
-
-
-</div><h3>Internal Calls</h3>
-
-	<p />The Mono runtime provides two mechanisms to expose C code
-	to the CIL universe: internal calls and native C
-	code. Internal calls are tightly integrated with the runtime,
-	and have the least overhead, as they use the same data types
-	that the runtime uses.
-
-	<p />The other option is to use the Platform Invoke (P/Invoke)
-	to call C code from the CIL universe, using the standard
-	<a href="http://www.mono-project.com/Interop_with_Native_Libraries">P/Invoke</a>
-	mechanisms.
-
-	<p />To register an internal call, use this call you use the
-	<a href="#api:mono_add_internal_call"><tt>mono_add_internal_call</tt>
-	routine.
-
- <a name="api:mono_add_internal_call"></a>
- <div class="api">
-    <div class="api-entry">mono_add_internal_call</div>
-
-    <div class="prototype">Prototype: mono_add_internal_call</div>
-<p />
-
-
-</div><h3>P/Invoke with embedded applications</h3>
-
-	<p />Unlike internal calls, Platform/Invoke is easier to use and
-	more portable.  It allows you to share code with Windows and
-	.NET that have a different setup for internal calls to their
-	own runtime.
-
-	<p />Usually P/Invoke declarations reference external libraries
-	like:
-
-	<pre>
-	[DllImport ("opengl")]
-	void glBegin (GLEnum mode)
-	</pre>
-
-	<p />Mono extends P/Invoke to support looking up symbols not in
-	an external library, but looking up those symbols into the
-	same address space as your program, to do this, use the
-	special library name "__Internal".   This will direct Mono to
-	lookup the method in your own process.
-
-	<p />There are situations where the host operating system does
-	not support looking up symbols on the process address space.
-	For situations like this you can use
-	the <a href="#api:mono_dl_register_library">mono_dl_register_library</a>. 
-
-<h4><a name="api:mono_dl_register_library">mono_dl_register_library</a></h4>
-	
-<h3>Data Marshalling</h3>
-
-	<p />Managed objects are represented as <tt>MonoObject*</tt>
-	types.  Those objects that the runtime consumes directly have
-	more specific C definitions (for example strings are of type
-	<tt>MonoString *</tt>, delegates are of type
-	<tt>MonoDelegate*</tt> but they are still <tt>MonoObject
-	*</tt>s).
-
-	<p />As of Mono 1.2.x types defined in mscorlib.dll do not have
-	their fields reordered in any way.   But other libraries might
-	have their fields reordered.   In these cases, Managed
-	structures and objects have the same layout in the C# code as
-	they do in the unmanaged world.
-
-	<p />Structures defined outside corlib must have a specific
-	StructLayout definition, and have it set as sequential if you
-	plan on accessing these fields directly from C code.
-
-	<p /><b>Important</b> Internal calls do not provide support for
-	marshalling structures.  This means that any API calls that
-	take a structure (excluding the system types like int32,
-	int64, etc) must be passed as a pointer, in C# this means
-	passing the value as a "ref" or "out" parameter.
-
-<h3>Mono Runtime Configuration</h3>
-
-	<p />Certain features of the Mono runtime, like DLL mapping, are
-	available through a configuration file that is loaded at
-	runtime.   The default Mono implementation loads the
-	configuration file from <tt>$sysconfig/mono/config</tt>
-	(typically this is <tt>/etc/mono/config</tt>).
-
-	<p />See the <tt>mono-config(5)</tt> man page for more details
-	on what goes in this file.
-
-	<p />The following APIs expose this functionality:
-	
- <a name="api:mono_config_parse"></a>
- <div class="api">
-    <div class="api-entry">mono_config_parse</div>
-
-    <div class="prototype">void
-mono_config_parse (const char *filename)
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>filename:</i></dt><dd> the filename to load the configuration variables from.</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Pass a NULL filename to parse the default config files
-	 (or the file in the MONO_CONFIG env var).
-
-</div> <a name="api:mono_config_parse_memory"></a>
- <div class="api">
-    <div class="api-entry">mono_config_parse_memory</div>
-
-    <div class="prototype">void
-mono_config_parse_memory (const char *buffer)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>buffer:</i></dt><dd> a pointer to an string XML representation of the configuration</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Parses the configuration from a buffer
-
-</div> <a name="api:mono_get_config_dir"></a>
- <div class="api">
-    <div class="api-entry">mono_get_config_dir</div>
-
-    <div class="prototype">Prototype: mono_get_config_dir</div>
-<p />
-
-
-</div><h3>Function Pointers</h3>
-
-	<p />To wrap a function pointer into something that the Mono
-	runtime can consume, you should use the mono_create_ftnptr.
-	This is only important if you plan on running on the IA64
-	architecture.   Otherwise you can just use the function
-	pointer address.
-	
- <a name="api:mono_create_ftnptr"></a>
- <div class="api">
-    <div class="api-entry">mono_create_ftnptr</div>
-
-    <div class="prototype">Prototype: mono_create_ftnptr</div>
-<p />
-
-
-</div><h3>Advanced Execution Setups</h3>
-
-	<p />These are not recommended ways of initializing Mono, they
-	are done internally by mono_jit_init, but are here to explain
-	what happens internally.
-	
- <a name="api:mono_runtime_exec_managed_code"></a>
- <div class="api">
-    <div class="api-entry">mono_runtime_exec_managed_code</div>
-
-    <div class="prototype">void
-mono_runtime_exec_managed_code (MonoDomain *domain,
-				MonoMainThreadFunc main_func,
-				gpointer main_args)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>domain:</i></dt><dd> Application domain</dd><dt><i>main_func:</i></dt><dd> function to invoke from the execution thread</dd><dt><i>main_args:</i></dt><dd> parameter to the main_func</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Launch a new thread to execute a function
-	
-	 main_func is called back from the thread with main_args as the
-	 parameter.  The callback function is expected to start Main()
-	 eventually.  This function then waits for all managed threads to
-	 finish.
-	 It is not necesseray anymore to execute managed code in a subthread,
-	 so this function should not be used anymore by default: just
-	 execute the code and then call mono_thread_manage ().
-
-</div> <a name="api:mono_runtime_exec_main"></a>
- <div class="api">
-    <div class="api-entry">mono_runtime_exec_main</div>
-
-    <div class="prototype">Prototype: mono_runtime_exec_main</div>
-<p />
-
-</div> <a name="api:mono_init_from_assembly"></a>
- <div class="api">
-    <div class="api-entry">mono_init_from_assembly</div>
-
-    <div class="prototype">MonoDomain*
-mono_init_from_assembly (const char *domain_name, const char *filename)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>domain_name:</i></dt><dd> name to give to the initial domain</dd><dt><i>filename:</i></dt><dd> filename to load on startup</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the initial domain.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Used by the runtime, users should use mono_jit_init instead.
-	
-	 Creates the initial application domain and initializes the mono_defaults
-	 structure.
-	 This function is guaranteed to not run any IL code.
-	 The runtime is initialized using the runtime version required by the
-	 provided executable. The version is determined by looking at the exe 
-	 configuration file and the version PE field)
-	
-
-</div> <a name="api:mono_init"></a>
- <div class="api">
-    <div class="api-entry">mono_init</div>
-
-    <div class="prototype">MonoDomain*
-mono_init (const char *domain_name)
-
-</div>
-<p />
-<b>Returns</b>
-<blockquote>	  the initial domain.
-</blockquote>
-<b>Remarks</b>
-<p />	 <p />
-
-	 Creates the initial application domain and initializes the mono_defaults
-	 structure.
-	 This function is guaranteed to not run any IL code.
-	 The runtime is initialized using the default runtime version.
-	
-
-</div></a></body>
-</html>
-</span>
\ No newline at end of file
diff --git a/docs/deploy/mono-api-exc.html b/docs/deploy/mono-api-exc.html
deleted file mode 100644
index 774a8a6..0000000
--- a/docs/deploy/mono-api-exc.html
+++ /dev/null
@@ -1,694 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><span>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-   <title>mono-api-exc.html</title>
-   <style type="text/css">
-
-
-   h3 { 
-       font-size: 18px;
-       padding-bottom: 4pt;
-       border-bottom: 2px solid #dddddd;
-   }
-       
-   .api {
-     border: 1px solid;
-     padding: 10pt;
-     margin: 10pt;
-   } 
-
-   .api-entry { 
-       border-bottom: none;
-       font-size: 18px;
-   }
-
-   .prototype {
-     border: 1px solid;
-     background-color: #f2f2f2;
-     padding: 5pt;
-     margin-top: 5pt;
-     margin-bottom: 5pt;  
-   } 
-
-   .header {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-    
-   .code {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-   
-
-</style>
-</head>
-<body>
-<h2>Exception Handling</h2>
-
-<div class="header">
-void           <a href="#api:mono_raise_exception">mono_raise_exception</a>                       (MonoException *ex) ;
-void           <a href="#api:mono_unhandled_exception">mono_unhandled_exception</a>                   (MonoObject *exc);
-void           <a href="#api:mono_print_unhandled_exception">mono_print_unhandled_exception</a>             (MonoObject *exc);
-MonoException* <a href="#api:mono_exception_from_name_domain">mono_exception_from_name_domain</a>            (MonoDomain *domain, 
-                                                           MonoImage *image, 
-                                                           ;
-MonoException* <a href="#api:mono_exception_from_name">mono_exception_from_name</a>                   (MonoImage *image, 
-                                                           const char *name_space;
-MonoException* <a href="#api:mono_exception_from_name_msg">mono_exception_from_name_msg</a>               (MonoImage *image, 
-                                                           const char *name_space;
-MonoException* <a href="#api:mono_exception_from_name_two_strings">mono_exception_from_name_two_strings</a>       (MonoImage *image, 
-                                                           const char *name_space;
-MonoException* <a href="#api:mono_get_exception_appdomain_unloaded">mono_get_exception_appdomain_unloaded</a>      (void);
-MonoException* <a href="#api:mono_get_exception_argument">mono_get_exception_argument</a>                (const char *arg, 
-                                                           const char *msg);
-MonoException* <a href="#api:mono_get_exception_argument_null">mono_get_exception_argument_null</a>           (const char *arg);
-MonoException* <a href="#api:mono_get_exception_argument_out_of_range">mono_get_exception_argument_out_of_range</a>   (const char *arg);
-MonoException* <a href="#api:mono_get_exception_arithmetic">mono_get_exception_arithmetic</a>              ();
-MonoException* <a href="#api:mono_get_exception_array_type_mismatch">mono_get_exception_array_type_mismatch</a>     ();
-MonoException* <a href="#api:mono_get_exception_bad_image_format">mono_get_exception_bad_image_format</a>        (const char *msg);
-MonoException* <a href="#api:mono_get_exception_cannot_unload_appdomain">mono_get_exception_cannot_unload_appdomain</a> (const char *msg);
-               <a href="#api:mono_get_exception_class"></a>                                           
-MonoException* <a href="#api:mono_get_exception_divide_by_zero">mono_get_exception_divide_by_zero</a>          ();
-MonoException* <a href="#api:mono_get_exception_execution_engine">mono_get_exception_execution_engine</a>        (const char *msg);
-MonoException* <a href="#api:mono_get_exception_file_not_found2">mono_get_exception_file_not_found2</a>         (const char *msg, 
-                                                           MonoString *fname);
-MonoException* <a href="#api:mono_get_exception_file_not_found">mono_get_exception_file_not_found</a>          (MonoString *fname);
-MonoException* <a href="#api:mono_get_exception_index_out_of_range">mono_get_exception_index_out_of_range</a>      ();
-MonoException* <a href="#api:mono_get_exception_invalid_cast">mono_get_exception_invalid_cast</a>            ();
-MonoException* <a href="#api:mono_get_exception_io">mono_get_exception_io</a>                      (const char *msg);
-MonoException* <a href="#api:mono_get_exception_missing_method">mono_get_exception_missing_method</a>          (const char *class_name, 
-                                                           const char *member_name);
-MonoException* <a href="#api:mono_get_exception_not_implemented">mono_get_exception_not_implemented</a>         (const char *msg);
-MonoException* <a href="#api:mono_get_exception_null_reference">mono_get_exception_null_reference</a>          ();
-MonoException* <a href="#api:mono_get_exception_overflow">mono_get_exception_overflow</a>                ();
-MonoException* <a href="#api:mono_get_exception_security">mono_get_exception_security</a>                ();
-MonoException* <a href="#api:mono_get_exception_serialization">mono_get_exception_serialization</a>           (const char *msg);
-MonoException* <a href="#api:mono_get_exception_stack_overflow">mono_get_exception_stack_overflow</a>          (void);
-MonoException* <a href="#api:mono_get_exception_synchronization_lock">mono_get_exception_synchronization_lock</a>    (const char *msg);
-MonoException* <a href="#api:mono_get_exception_thread_abort">mono_get_exception_thread_abort</a>            ();
-MonoException* <a href="#api:mono_get_exception_thread_state">mono_get_exception_thread_state</a>            (const char *msg);
-MonoException* <a href="#api:mono_get_exception_type_initialization">mono_get_exception_type_initialization</a>     (const gchar *type_name, 
-                                                           MonoException *inner);
-MonoException* <a href="#api:mono_get_exception_type_load">mono_get_exception_type_load</a>               (MonoString *class_name, 
-                                                           char *assembly_name);
-MonoException* <a href="#api:mono_get_exception_invalid_operation">mono_get_exception_invalid_operation</a>       (const char *msg);
-MonoException* <a href="#api:mono_get_exception_missing_field">mono_get_exception_missing_field</a>           (const char *class_name, 
-                                                           const char *member_name);
-MonoException* <a href="#api:mono_get_exception_not_supported">mono_get_exception_not_supported</a>           (const char *msg);
-MonoException* <a href="#api:mono_get_exception_reflection_type_load">mono_get_exception_reflection_type_load</a>    (MonoArray *types, 
-                                                           MonoArray *exceptions);
-
-</div>
-
-<h3>Raising and Catching exceptions</h3>
-
- <a name="api:mono_raise_exception"></a>
- <div class="api">
-    <div class="api-entry">mono_raise_exception</div>
-
-    <div class="prototype">void
-mono_raise_exception (MonoException *ex) 
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>ex:</i></dt><dd> exception object</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Signal the runtime that the exception <i>ex</i> has been raised in unmanaged code.
-
-</div> <a name="api:mono_unhandled_exception"></a>
- <div class="api">
-    <div class="api-entry">mono_unhandled_exception</div>
-
-    <div class="prototype">void
-mono_unhandled_exception (MonoObject *exc)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>exc:</i></dt><dd> exception thrown</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 This is a VM internal routine.
-	
-	 We call this function when we detect an unhandled exception
-	 in the default domain.
-	
-	 It invokes the * UnhandledException event in AppDomain or prints
-	 a warning to the console 
-
-</div> <a name="api:mono_print_unhandled_exception"></a>
- <div class="api">
-    <div class="api-entry">mono_print_unhandled_exception</div>
-
-    <div class="prototype">void
-mono_print_unhandled_exception (MonoObject *exc)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>exc:</i></dt><dd> The exception</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Prints the unhandled exception.
-
-
-
-</div><h3>Exception Types: General API</h3>
-
- <a name="api:mono_exception_from_name_domain"></a>
- <div class="api">
-    <div class="api-entry">mono_exception_from_name_domain</div>
-
-    <div class="prototype">MonoException*
-mono_exception_from_name_domain (MonoDomain *domain, MonoImage *image, 
-				 const char* name_space, const char *name)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>domain:</i></dt><dd> Domain where the return object will be created.</dd><dt><i>image:</i></dt><dd> the Mono image where to look for the class</dd><dt><i>name_space:</i></dt><dd> the namespace for the class</dd><dt><i>name:</i></dt><dd> class name</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the initialized exception instance.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Creates an exception object of the given namespace/name class on
-	 the given domain.
-	
-
-</div> <a name="api:mono_exception_from_name"></a>
- <div class="api">
-    <div class="api-entry">mono_exception_from_name</div>
-
-    <div class="prototype">MonoException*
-mono_exception_from_name (MonoImage *image, const char *name_space,
-			  const char *name)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>image:</i></dt><dd> the Mono image where to look for the class</dd><dt><i>name_space:</i></dt><dd> the namespace for the class</dd><dt><i>name:</i></dt><dd> class name</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the initialized exception instance.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Creates an exception of the given namespace/name class in the
-	 current domain.
-	
-
-</div> <a name="api:mono_exception_from_name_msg"></a>
- <div class="api">
-    <div class="api-entry">mono_exception_from_name_msg</div>
-
-    <div class="prototype">MonoException*
-mono_exception_from_name_msg (MonoImage *image, const char *name_space,
-			      const char *name, const char *msg)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>image:</i></dt><dd> the Mono image where to look for the class</dd><dt><i>name_space:</i></dt><dd> the namespace for the class</dd><dt><i>name:</i></dt><dd> class name</dd><dt><i>msg:</i></dt><dd> the message to embed inside the exception</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the initialized exception instance.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Creates an exception and initializes its message field.
-	
-
-</div> <a name="api:mono_exception_from_name_two_strings"></a>
- <div class="api">
-    <div class="api-entry">mono_exception_from_name_two_strings</div>
-
-    <div class="prototype">MonoException*
-mono_exception_from_name_two_strings (MonoImage *image, const char *name_space,
-				      const char *name, MonoString *a1, MonoString *a2)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>image:</i></dt><dd> the Mono image where to look for the class</dd><dt><i>name_space:</i></dt><dd> the namespace for the class</dd><dt><i>name:</i></dt><dd> class name</dd><dt><i>a1:</i></dt><dd> first string argument to pass</dd><dt><i>a2:</i></dt><dd> second string argument to pass</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the initialized exception instance.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Creates an exception from a constructor that takes two string
-	 arguments.
-	
-
-
-</div><h3>Obtaining Common Exceptions</h3>
-
-	<p />There are a number of common exceptions that are used by
-	the runtime, use the routines in this section to get a copy of
-	those exceptions.
-	
- <a name="api:mono_get_exception_appdomain_unloaded"></a>
- <div class="api">
-    <div class="api-entry">mono_get_exception_appdomain_unloaded</div>
-
-    <div class="prototype">MonoException*
-mono_get_exception_appdomain_unloaded (void)
-
-</div>
-<p />
-<b>Returns</b>
-<blockquote>	  a new instance of the System.AppDomainUnloadedException
-</blockquote>
-
-</div> <a name="api:mono_get_exception_argument"></a>
- <div class="api">
-    <div class="api-entry">mono_get_exception_argument</div>
-
-    <div class="prototype">MonoException*
-mono_get_exception_argument (const char *arg, const char *msg)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>arg:</i></dt><dd> the name of the invalid argument.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a new instance of the System.ArgumentException
-</blockquote>
-
-</div> <a name="api:mono_get_exception_argument_null"></a>
- <div class="api">
-    <div class="api-entry">mono_get_exception_argument_null</div>
-
-    <div class="prototype">MonoException*
-mono_get_exception_argument_null (const char *arg)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>arg:</i></dt><dd> the name of the argument that is null</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a new instance of the System.ArgumentNullException
-</blockquote>
-
-</div> <a name="api:mono_get_exception_argument_out_of_range"></a>
- <div class="api">
-    <div class="api-entry">mono_get_exception_argument_out_of_range</div>
-
-    <div class="prototype">MonoException*
-mono_get_exception_argument_out_of_range (const char *arg)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>arg:</i></dt><dd> the name of the out of range argument.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a new instance of the System.ArgumentOutOfRangeException
-</blockquote>
-
-</div> <a name="api:mono_get_exception_arithmetic"></a>
- <div class="api">
-    <div class="api-entry">mono_get_exception_arithmetic</div>
-
-    <div class="prototype">MonoException*
-mono_get_exception_arithmetic ()
-
-</div>
-<p />
-<b>Returns</b>
-<blockquote>	  a new instance of the System.ArithmeticException.
-</blockquote>
-
-</div> <a name="api:mono_get_exception_array_type_mismatch"></a>
- <div class="api">
-    <div class="api-entry">mono_get_exception_array_type_mismatch</div>
-
-    <div class="prototype">MonoException*
-mono_get_exception_array_type_mismatch ()
-
-</div>
-<p />
-<b>Returns</b>
-<blockquote>	  a new instance of the System.ArrayTypeMismatchException
-</blockquote>
-
-</div> <a name="api:mono_get_exception_bad_image_format"></a>
- <div class="api">
-    <div class="api-entry">mono_get_exception_bad_image_format</div>
-
-    <div class="prototype">MonoException*
-mono_get_exception_bad_image_format (const char *msg)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>msg:</i></dt><dd> an informative message for the user.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a new instance of the System.BadImageFormatException
-</blockquote>
-
-</div> <a name="api:mono_get_exception_cannot_unload_appdomain"></a>
- <div class="api">
-    <div class="api-entry">mono_get_exception_cannot_unload_appdomain</div>
-
-    <div class="prototype">MonoException*
-mono_get_exception_cannot_unload_appdomain (const char *msg)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>inner:</i></dt><dd> the inner exception.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a new instance of the System.CannotUnloadAppDomainException
-</blockquote>
-
-</div> <a name="api:mono_get_exception_class"></a>
- <div class="api">
-    <div class="api-entry">mono_get_exception_class</div>
-
-    <div class="prototype">Prototype: mono_get_exception_class</div>
-<p />
-
-</div> <a name="api:mono_get_exception_divide_by_zero"></a>
- <div class="api">
-    <div class="api-entry">mono_get_exception_divide_by_zero</div>
-
-    <div class="prototype">MonoException*
-mono_get_exception_divide_by_zero ()
-
-</div>
-<p />
-<b>Returns</b>
-<blockquote>	  a new instance of the System.DivideByZeroException
-</blockquote>
-
-</div> <a name="api:mono_get_exception_execution_engine"></a>
- <div class="api">
-    <div class="api-entry">mono_get_exception_execution_engine</div>
-
-    <div class="prototype">MonoException*
-mono_get_exception_execution_engine (const char *msg)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>msg:</i></dt><dd> the message to pass to the user</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a new instance of the System.ExecutionEngineException
-</blockquote>
-
-</div> <a name="api:mono_get_exception_file_not_found2"></a>
- <div class="api">
-    <div class="api-entry">mono_get_exception_file_not_found2</div>
-
-    <div class="prototype">MonoException*
-mono_get_exception_file_not_found2 (const char *msg, MonoString *fname)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>msg:</i></dt><dd> an informative message for the user.</dd><dt><i>fname:</i></dt><dd> the name of the file not found.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a new instance of the System.IO.FileNotFoundException
-</blockquote>
-
-</div> <a name="api:mono_get_exception_file_not_found"></a>
- <div class="api">
-    <div class="api-entry">mono_get_exception_file_not_found</div>
-
-    <div class="prototype">MonoException*
-mono_get_exception_file_not_found (MonoString *fname)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>fname:</i></dt><dd> the name of the file not found.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a new instance of the System.IO.FileNotFoundException
-</blockquote>
-
-</div> <a name="api:mono_get_exception_index_out_of_range"></a>
- <div class="api">
-    <div class="api-entry">mono_get_exception_index_out_of_range</div>
-
-    <div class="prototype">MonoException*
-mono_get_exception_index_out_of_range ()
-
-</div>
-<p />
-<b>Returns</b>
-<blockquote>	  a new instance of the System.IndexOutOfRangeException
-</blockquote>
-
-</div> <a name="api:mono_get_exception_invalid_cast"></a>
- <div class="api">
-    <div class="api-entry">mono_get_exception_invalid_cast</div>
-
-    <div class="prototype">MonoException*
-mono_get_exception_invalid_cast ()
-
-</div>
-<p />
-<b>Returns</b>
-<blockquote>	  a new instance of the System.InvalidCastException
-</blockquote>
-
-</div> <a name="api:mono_get_exception_io"></a>
- <div class="api">
-    <div class="api-entry">mono_get_exception_io</div>
-
-    <div class="prototype">MonoException*
-mono_get_exception_io (const char *msg)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>msg:</i></dt><dd> the message to present to the user</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a new instance of the System.IO.IOException
-</blockquote>
-
-</div> <a name="api:mono_get_exception_missing_method"></a>
- <div class="api">
-    <div class="api-entry">mono_get_exception_missing_method</div>
-
-    <div class="prototype">MonoException*
-mono_get_exception_missing_method (const char *class_name, const char *member_name)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>class_name:</i></dt><dd> the class where the lookup was performed.</dd><dt><i>member_name:</i></dt><dd> the name of the missing method.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a new instance of the System.MissingMethodException
-</blockquote>
-
-</div> <a name="api:mono_get_exception_not_implemented"></a>
- <div class="api">
-    <div class="api-entry">mono_get_exception_not_implemented</div>
-
-    <div class="prototype">MonoException*
-mono_get_exception_not_implemented (const char *msg)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>msg:</i></dt><dd> the message to pass to the user</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a new instance of the System.NotImplementedException
-</blockquote>
-
-</div> <a name="api:mono_get_exception_null_reference"></a>
- <div class="api">
-    <div class="api-entry">mono_get_exception_null_reference</div>
-
-    <div class="prototype">MonoException*
-mono_get_exception_null_reference ()
-
-</div>
-<p />
-<b>Returns</b>
-<blockquote>	  a new instance of the System.NullReferenceException
-</blockquote>
-
-</div> <a name="api:mono_get_exception_overflow"></a>
- <div class="api">
-    <div class="api-entry">mono_get_exception_overflow</div>
-
-    <div class="prototype">MonoException*
-mono_get_exception_overflow ()
-
-</div>
-<p />
-<b>Returns</b>
-<blockquote>	  a new instance of the System.OverflowException
-</blockquote>
-
-</div> <a name="api:mono_get_exception_security"></a>
- <div class="api">
-    <div class="api-entry">mono_get_exception_security</div>
-
-    <div class="prototype">MonoException*
-mono_get_exception_security ()
-
-</div>
-<p />
-<b>Returns</b>
-<blockquote>	  a new instance of the System.Security.SecurityException
-</blockquote>
-
-</div> <a name="api:mono_get_exception_serialization"></a>
- <div class="api">
-    <div class="api-entry">mono_get_exception_serialization</div>
-
-    <div class="prototype">MonoException*
-mono_get_exception_serialization (const char *msg)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>msg:</i></dt><dd> the message to pass to the user</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a new instance of the System.Runtime.Serialization.SerializationException
-</blockquote>
-
-</div> <a name="api:mono_get_exception_stack_overflow"></a>
- <div class="api">
-    <div class="api-entry">mono_get_exception_stack_overflow</div>
-
-    <div class="prototype">MonoException*
-mono_get_exception_stack_overflow (void)
-
-</div>
-<p />
-<b>Returns</b>
-<blockquote>	  a new instance of the System.StackOverflowException
-</blockquote>
-
-</div> <a name="api:mono_get_exception_synchronization_lock"></a>
- <div class="api">
-    <div class="api-entry">mono_get_exception_synchronization_lock</div>
-
-    <div class="prototype">MonoException*
-mono_get_exception_synchronization_lock (const char *msg)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>inner:</i></dt><dd> the inner exception.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a new instance of the System.SynchronizationLockException
-</blockquote>
-
-</div> <a name="api:mono_get_exception_thread_abort"></a>
- <div class="api">
-    <div class="api-entry">mono_get_exception_thread_abort</div>
-
-    <div class="prototype">MonoException*
-mono_get_exception_thread_abort ()
-
-</div>
-<p />
-<b>Returns</b>
-<blockquote>	  a new instance of the System.Threading.ThreadAbortException.
-</blockquote>
-
-</div> <a name="api:mono_get_exception_thread_state"></a>
- <div class="api">
-    <div class="api-entry">mono_get_exception_thread_state</div>
-
-    <div class="prototype">MonoException*
-mono_get_exception_thread_state (const char *msg)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>msg:</i></dt><dd> the message to present to the user</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a new instance of the System.Threading.ThreadStateException
-</blockquote>
-
-</div> <a name="api:mono_get_exception_type_initialization"></a>
- <div class="api">
-    <div class="api-entry">mono_get_exception_type_initialization</div>
-
-    <div class="prototype">MonoException*
-mono_get_exception_type_initialization (const gchar *type_name, MonoException *inner)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>type_name:</i></dt><dd> the name of the type that failed to initialize.</dd><dt><i>inner:</i></dt><dd> the inner exception.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a new instance of the System.TypeInitializationException
-</blockquote>
-
-</div> <a name="api:mono_get_exception_type_load"></a>
- <div class="api">
-    <div class="api-entry">mono_get_exception_type_load</div>
-
-    <div class="prototype">MonoException*
-mono_get_exception_type_load (MonoString *class_name, char *assembly_name)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>class_name:</i></dt><dd> the name of the class that could not be loaded</dd><dt><i>assembly_name:</i></dt><dd> the assembly where the class was looked up.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a new instance of the System.TypeLoadException.
-</blockquote>
-
-</div> <a name="api:mono_get_exception_invalid_operation"></a>
- <div class="api">
-    <div class="api-entry">mono_get_exception_invalid_operation</div>
-
-    <div class="prototype">MonoException*
-mono_get_exception_invalid_operation (const char *msg)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>msg:</i></dt><dd> the message to pass to the user</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a new instance of the System.InvalidOperationException
-</blockquote>
-
-</div> <a name="api:mono_get_exception_missing_field"></a>
- <div class="api">
-    <div class="api-entry">mono_get_exception_missing_field</div>
-
-    <div class="prototype">MonoException*
-mono_get_exception_missing_field (const char *class_name, const char *member_name)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>class_name:</i></dt><dd> the class where the lookup was performed</dd><dt><i>member_name:</i></dt><dd> the name of the missing method.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a new instance of the System.MissingFieldException
-</blockquote>
-
-</div> <a name="api:mono_get_exception_not_supported"></a>
- <div class="api">
-    <div class="api-entry">mono_get_exception_not_supported</div>
-
-    <div class="prototype">MonoException*
-mono_get_exception_not_supported (const char *msg)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>msg:</i></dt><dd> the message to pass to the user</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a new instance of the System.NotSupportedException
-</blockquote>
-
-</div></body>
-</html>
-</span>
\ No newline at end of file
diff --git a/docs/deploy/mono-api-gc.html b/docs/deploy/mono-api-gc.html
deleted file mode 100644
index 047b6cf..0000000
--- a/docs/deploy/mono-api-gc.html
+++ /dev/null
@@ -1,119 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><span>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-   <title>mono-api-gc.html</title>
-   <style type="text/css">
-
-
-   h3 { 
-       font-size: 18px;
-       padding-bottom: 4pt;
-       border-bottom: 2px solid #dddddd;
-   }
-       
-   .api {
-     border: 1px solid;
-     padding: 10pt;
-     margin: 10pt;
-   } 
-
-   .api-entry { 
-       border-bottom: none;
-       font-size: 18px;
-   }
-
-   .prototype {
-     border: 1px solid;
-     background-color: #f2f2f2;
-     padding: 5pt;
-     margin-top: 5pt;
-     margin-bottom: 5pt;  
-   } 
-
-   .header {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-    
-   .code {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-   
-
-</style>
-</head>
-<body>
-<h1>Garbage Collector Interface</h1>
-
-<h1>Public Interface</h1>
-
-	<p />The public interface of the Mono GC is fairly limited, and
-	its the only one that embedders should be using:
-	
- <a name="api:mono_gc_collect"></a>
- <div class="api">
-    <div class="api-entry">mono_gc_collect</div>
-
-    <div class="prototype">void
-mono_gc_collect (int generation)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>generation:</i></dt><dd> GC generation identifier</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Perform a garbage collection for the given generation, higher numbers
-	 mean usually older objects. Collecting a high-numbered generation
-	 implies collecting also the lower-numbered generations.
-	 The maximum value for <i>generation</i> can be retrieved with a call to
-	 mono_gc_max_generation(), so this function is usually called as:
-	
-	 	mono_gc_collect (mono_gc_max_generation ());
-
-</div> <a name="api:mono_gc_max_generation"></a>
- <div class="api">
-    <div class="api-entry">mono_gc_max_generation</div>
-
-    <div class="prototype">int
-mono_gc_max_generation (void)
-
-</div>
-<p />
-<b>Returns</b>
-<blockquote>	  the maximum generation number.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Get the maximum generation number used by the current garbage
-	 collector. The value will be 0 for the Boehm collector, 1 or more
-	 for the generational collectors.
-	
-
-</div> <a name="api:mono_gc_get_heap_size"></a>
- <div class="api">
-    <div class="api-entry">mono_gc_get_heap_size</div>
-
-    <div class="prototype">int64_t
-mono_gc_get_heap_size (void)
-
-</div>
-<p />
-<b>Returns</b>
-<blockquote>	  the size of the heap in bytes
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Get the amount of memory used by the garbage collector.
-	
-
-</div></body>
-</html>
-</span>
\ No newline at end of file
diff --git a/docs/deploy/mono-api-gchandle.html b/docs/deploy/mono-api-gchandle.html
deleted file mode 100644
index 84b9fc2..0000000
--- a/docs/deploy/mono-api-gchandle.html
+++ /dev/null
@@ -1,228 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><span>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-   <title>mono-api-gchandle.html</title>
-   <style type="text/css">
-
-
-   h3 { 
-       font-size: 18px;
-       padding-bottom: 4pt;
-       border-bottom: 2px solid #dddddd;
-   }
-       
-   .api {
-     border: 1px solid;
-     padding: 10pt;
-     margin: 10pt;
-   } 
-
-   .api-entry { 
-       border-bottom: none;
-       font-size: 18px;
-   }
-
-   .prototype {
-     border: 1px solid;
-     background-color: #f2f2f2;
-     padding: 5pt;
-     margin-top: 5pt;
-     margin-bottom: 5pt;  
-   } 
-
-   .header {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-    
-   .code {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-   
-
-</style>
-</head>
-<body>
-<h1>GC Handles</h1>
-
-<h3>Synopsys</h3>
-
-	<div class="header">
-guint32     <a href="#api:mono_gchandle_new">mono_gchandle_new</a>         (MonoObject *obj, 
-                                       gboolean pinned);
-guint32     <a href="#api:mono_gchandle_new_weakref">mono_gchandle_new_weakref</a> (MonoObject *obj, 
-                                       gboolean track_resurrection);
-MonoObject* <a href="#api:mono_gchandle_get_target">mono_gchandle_get_target</a>  (guint32 gchandle);
-void        <a href="#api:mono_gchandle_free">mono_gchandle_free</a>        (guint32 gchandle);
-
-	</div>
-	
-	<p />GC handles are wrappers that are used to keep references to
-	managed objects in the unmanaged space and preventing the
-	object from being disposed.
-	
-	<p />These are the C equivalents of the <tt>System.GCHandle</tt>
-	structure.
-
-	<p />There are two kinds of GCHandles that can be created:
-
-	<ul>
-		<li>Handles to objects (use <tt><a href="#api:mono_gchandle_new">mono_gchandle_new</a></tt>). 
-
-		<li>Weak handles to objects (use <tt><a href="#api:mono_gchandle_new_weakref">mono_gchandle_new_weakref</a></tt>).
-		Weak handles can have the objects reclaimed by the
-		garbage collector. 
-		
-	</li></li></ul>
-
-	<p />To retrieve the target address of an object pointed to by a
-	<tt>GCHandle</tt> you should use
-	<tt>mono_gchandle_get_target</tt>.
-
-	<p />For example, consider the following C code:
-<div class="code">
-static MonoObject* o = NULL;
-</div>
-
-	<p />The object in `o' will *NOT* be scanned.
-
-	<p />If you need to store an object in a C variable and prevent
-	it from being collected, you need to acquire a GC handle for
-	it.
-
-<div class="code">
-        guint32 handle = mono_gchandle_new (my_object, TRUE);
-</div>
-
-	<p />TRUE means the object will be pinned, so it won't move in
-	memory when we'll use a moving GC. You can access the
-	MonoObject* referenced by a handle with:
-
-<div class="code">
-        MonoObject* obj = mono_gchandle_get_target (handle);
-</div>
-
-	<p />When you don't need the handle anymore you need to call:
-
-<div class="code">
-        mono_gchandle_free (handle);
-</div>
-
-	<p />Note that if you assign a new object to the C var, you need
-	to get a new handle, it's not enough to store a new object in
-	the C var.
-
-	<p />So code that looked like this:
-
-<div class="code">
-        static MonoObject* o = NULL;
-        ...
-        o = mono_object_new (...);
-        /* use o */
-        ...
-        /* when done to allow the GC to collect o */
-        o = NULL;
-</div>
-
-	<p />should now be changed to:
-
-<div class="code">
-        static guint32 o_handle;
-        ...
-        MonoObject *o = mono_object_new (...);
-        o_handle = mono_gchandle_new (o, TRUE);
-        /* use o or mono_gchandle_get_target (o_handle) */
-        ...
-        /* when done to allow the GC to collect o */
-        mono_gchandle_free (o_handle);
-</div>
-		
- <a name="api:mono_gchandle_new"></a>
- <div class="api">
-    <div class="api-entry">mono_gchandle_new</div>
-
-    <div class="prototype">guint32
-mono_gchandle_new (MonoObject *obj, gboolean pinned)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>obj:</i></dt><dd> managed object to get a handle for</dd><dt><i>pinned:</i></dt><dd> whether the object should be pinned</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a handle that can be used to access the object from
-
-	 unmanaged code.</blockquote>
-<b>Remarks</b>
-<p />	 
-	 This returns a handle that wraps the object, this is used to keep a
-	 reference to a managed object from the unmanaged world and preventing the
-	 object from being disposed.
-	
-<p />
-	 If <i>pinned</i> is false the address of the object can not be obtained, if it is
-	 true the address of the object can be obtained.  This will also pin the
-	 object so it will not be possible by a moving garbage collector to move the
-	 object. 
-	
-<p />
-
-</div> <a name="api:mono_gchandle_new_weakref"></a>
- <div class="api">
-    <div class="api-entry">mono_gchandle_new_weakref</div>
-
-    <div class="prototype">guint32
-mono_gchandle_new_weakref (MonoObject *obj, gboolean track_resurrection)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>obj:</i></dt><dd> managed object to get a handle for</dd><dt><i>pinned:</i></dt><dd> whether the object should be pinned</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a handle that can be used to access the object from
-
-	 unmanaged code.</blockquote>
-<b>Remarks</b>
-<p />	 
-	 This returns a weak handle that wraps the object, this is used to
-	 keep a reference to a managed object from the unmanaged world.
-	 Unlike the mono_gchandle_new the object can be reclaimed by the
-	 garbage collector.  In this case the value of the GCHandle will be
-	 set to zero.
-	
-<p />
-	 If <i>pinned</i> is false the address of the object can not be obtained, if it is
-	 true the address of the object can be obtained.  This will also pin the
-	 object so it will not be possible by a moving garbage collector to move the
-	 object. 
-	
-<p />
-
-</div> <a name="api:mono_gchandle_get_target"></a>
- <div class="api">
-    <div class="api-entry">mono_gchandle_get_target</div>
-
-    <div class="prototype">MonoObject*
-mono_gchandle_get_target (guint32 gchandle)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>gchandle:</i></dt><dd> a GCHandle's handle.</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 The handle was previously created by calling mono_gchandle_new or
-	 mono_gchandle_new_weakref. 
-	
-	 Returns a pointer to the MonoObject represented by the handle or
-	 NULL for a collected object if using a weakref handle.
-
-</div></body>
-</html>
-</span>
\ No newline at end of file
diff --git a/docs/deploy/mono-api-image.html b/docs/deploy/mono-api-image.html
deleted file mode 100644
index cbb8f2d..0000000
--- a/docs/deploy/mono-api-image.html
+++ /dev/null
@@ -1,517 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><span>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-   <title>mono-api-image.html</title>
-   <style type="text/css">
-
-
-   h3 { 
-       font-size: 18px;
-       padding-bottom: 4pt;
-       border-bottom: 2px solid #dddddd;
-   }
-       
-   .api {
-     border: 1px solid;
-     padding: 10pt;
-     margin: 10pt;
-   } 
-
-   .api-entry { 
-       border-bottom: none;
-       font-size: 18px;
-   }
-
-   .prototype {
-     border: 1px solid;
-     background-color: #f2f2f2;
-     padding: 5pt;
-     margin-top: 5pt;
-     margin-bottom: 5pt;  
-   } 
-
-   .header {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-    
-   .code {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-   
-
-</style>
-</head>
-<body>
-<h2>Image Manipulation</h2>
-
-	<p />Images are the component of assemblies that actually hold
-	the CIL code and <a href="mono-api-metadata.html">metadata</a>
-	in the extended PE/COFF file.
-
-<h3>Synopsis</h3>
-
-	<div class="header">
-#include <metadata/image.h>
-
-typedef struct _MonoImage MonoImage;
-typedef enum {
-        MONO_IMAGE_OK,
-        MONO_IMAGE_ERROR_ERRNO,
-        MONO_IMAGE_MISSING_ASSEMBLYREF,
-        MONO_IMAGE_IMAGE_INVALID
-} MonoImageOpenStatus;
-
-MonoImage*     <a href="#api:mono_image_open">mono_image_open</a>                   (const char *fname, 
-                                                  MonoImageOpenStatus *status);
-               <a href="#api:mono_image_open_full"></a>                                  
-               <a href="#api:mono_image_open_from_data"></a>                                  
-               <a href="#api:mono_image_open_from_data_full"></a>                                  
-void           <a href="#api:mono_image_close">mono_image_close</a>                  (MonoImage *image);
-void           <a href="#api:mono_image_addref">mono_image_addref</a>                 (MonoImage *image);
-               <a href="#api:mono_image_load_file_for_image"></a>                                  
-               <a href="#api:mono_image_get_guid"></a>                                  
-MonoAssembly*  <a href="#api:mono_image_get_assembly">mono_image_get_assembly</a>           (MonoImage *image);
-guint32        <a href="#api:mono_image_get_entry_point">mono_image_get_entry_point</a>        (MonoImage *image);
-const char*    <a href="#api:mono_image_get_filename">mono_image_get_filename</a>           (MonoImage *image);
-const char*    <a href="#api:mono_image_get_name">mono_image_get_name</a>               (MonoImage *image);
-const char*    <a href="#api:mono_image_get_resource">mono_image_get_resource</a>           (MonoImage *image, 
-                                                  guint32 offset, 
-                                                  guint32 *size);
-               <a href="#api:mono_image_get_table_info"></a>                                  
-               <a href="#api:mono_image_get_table_rows"></a>                                  
-gboolean       <a href="#api:mono_image_is_dynamic">mono_image_is_dynamic</a>             (MonoImage *image);
-               <a href="#api:mono_image_loaded_by_guid"></a>                                  
-MonoImage*     <a href="#api:mono_image_loaded">mono_image_loaded</a>                 (const char *name);
-gpointer       <a href="#api:mono_image_lookup_resource">mono_image_lookup_resource</a>        (MonoImage *image, 
-                                                  guint32 res_id, 
-                                                  guint32 lang_id, 
-                                                  gunichar2 *name);
-const char *   <a href="#api:mono_image_strerror">mono_image_strerror</a>               (MonoImageOpenStatus status);
-guint32        <a href="#api:mono_image_strong_name_position">mono_image_strong_name_position</a>   (MonoImage *image, 
-                                                  guint32 *size);
-const char*    <a href="#api:mono_image_get_public_key">mono_image_get_public_key</a>         (MonoImage *image, 
-                                                  guint32 *size);
-const char*    <a href="#api:mono_image_get_strong_name">mono_image_get_strong_name</a>        (MonoImage *image, 
-                                                  guint32 *size);
-gboolean       <a href="#api:mono_image_has_authenticode_entry">mono_image_has_authenticode_entry</a> (MonoImage *image);
-               <a href="#api:mono_image_rva_map"></a>                                  
-int            <a href="#api:mono_image_ensure_section_idx">mono_image_ensure_section_idx</a>     (MonoImage *image, 
-                                                  int section);
-int            <a href="#api:mono_image_ensure_section">mono_image_ensure_section</a>         (MonoImage *image, 
-                                                  const char *section);
-
-	</div>
-
-<h3>Image APIs</h3>
-
-	<p />Images are the actual elements in the runtime that contain
-	the actual code being executed. 
-
-<a name="cil_image_open"></a>
-<h3>Opening and closing MonoImages</h3>
-
- <a name="api:mono_image_open"></a>
- <div class="api">
-    <div class="api-entry">mono_image_open</div>
-
-    <div class="prototype">MonoImage*
-mono_image_open (const char *fname, MonoImageOpenStatus *status)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>fname:</i></dt><dd> filename that points to the module we want to open</dd><dt><i>status:</i></dt><dd> An error condition is returned in this field</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  An open image of type %MonoImage or NULL on error. 
-
-	 The caller holds a temporary reference to the returned image which should be cleared 
-	 when no longer needed by calling mono_image_close ().
-	 if NULL, then check the value of <i>status</i> for details on the error</blockquote>
-
-</div> <a name="api:mono_image_open_full"></a>
- <div class="api">
-    <div class="api-entry">mono_image_open_full</div>
-
-    <div class="prototype">Prototype: mono_image_open_full</div>
-<p />
-
-</div> <a name="api:mono_image_open_from_data"></a>
- <div class="api">
-    <div class="api-entry">mono_image_open_from_data</div>
-
-    <div class="prototype">Prototype: mono_image_open_from_data</div>
-<p />
-
-</div> <a name="api:mono_image_open_from_data_full"></a>
- <div class="api">
-    <div class="api-entry">mono_image_open_from_data_full</div>
-
-    <div class="prototype">Prototype: mono_image_open_from_data_full</div>
-<p />
-
-</div> <a name="api:mono_image_close"></a>
- <div class="api">
-    <div class="api-entry">mono_image_close</div>
-
-    <div class="prototype">void
-mono_image_close (MonoImage *image)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>image:</i></dt><dd> The image file we wish to close</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Closes an image file, deallocates all memory consumed and
-	 unmaps all possible sections of the file
-
-</div> <a name="api:mono_image_addref"></a>
- <div class="api">
-    <div class="api-entry">mono_image_addref</div>
-
-    <div class="prototype">void
-mono_image_addref (MonoImage *image)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>image:</i></dt><dd> The image file we wish to add a reference to</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	  Increases the reference count of an image.
-
-</div> <a name="api:mono_image_load_file_for_image"></a>
- <div class="api">
-    <div class="api-entry">mono_image_load_file_for_image</div>
-
-    <div class="prototype">Prototype: mono_image_load_file_for_image</div>
-<p />
-
-
-</div><h3>Image Information</h3>
-
- <a name="api:mono_image_get_guid"></a>
- <div class="api">
-    <div class="api-entry">mono_image_get_guid</div>
-
-    <div class="prototype">Prototype: mono_image_get_guid</div>
-<p />
-
-</div> <a name="api:mono_image_get_assembly"></a>
- <div class="api">
-    <div class="api-entry">mono_image_get_assembly</div>
-
-    <div class="prototype">MonoAssembly* 
-mono_image_get_assembly (MonoImage *image)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>image:</i></dt><dd> the MonoImage.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the assembly that holds this image.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Use this routine to get the assembly that owns this image.
-	
-
-</div> <a name="api:mono_image_get_entry_point"></a>
- <div class="api">
-    <div class="api-entry">mono_image_get_entry_point</div>
-
-    <div class="prototype">guint32
-mono_image_get_entry_point (MonoImage *image)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>image:</i></dt><dd> the image where the entry point will be looked up.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the token for the entry point method in the image
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Use this routine to determine the metadata token for method that
-	 has been flagged as the entry point.
-	
-
-</div> <a name="api:mono_image_get_filename"></a>
- <div class="api">
-    <div class="api-entry">mono_image_get_filename</div>
-
-    <div class="prototype">const char*
-mono_image_get_filename (MonoImage *image)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>image:</i></dt><dd> a MonoImage</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the filename.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Used to get the filename that hold the actual MonoImage
-	
-
-</div> <a name="api:mono_image_get_name"></a>
- <div class="api">
-    <div class="api-entry">mono_image_get_name</div>
-
-    <div class="prototype">const char*
-mono_image_get_name (MonoImage *image)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>name:</i></dt><dd> a MonoImage</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the name of the assembly.
-</blockquote>
-
-</div> <a name="api:mono_image_get_resource"></a>
- <div class="api">
-    <div class="api-entry">mono_image_get_resource</div>
-
-    <div class="prototype">const char*
-mono_image_get_resource (MonoImage *image, guint32 offset, guint32 *size)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>image:</i></dt><dd> the image where the resource will be looked up.</dd><dt><i>offset:</i></dt><dd> The offset to add to the resource</dd><dt><i>size:</i></dt><dd> a pointer to an int where the size of the resource will be stored</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the pointer to the resource whose offset is <i>offset</i>.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 This is a low-level routine that fetches a resource from the
-	 metadata that starts at a given <i>offset</i>.  The <i>size</i> parameter is
-	 filled with the data field as encoded in the metadata.
-	
-
-</div> <a name="api:mono_image_get_table_info"></a>
- <div class="api">
-    <div class="api-entry">mono_image_get_table_info</div>
-
-    <div class="prototype">Prototype: mono_image_get_table_info</div>
-<p />
-
-</div> <a name="api:mono_image_get_table_rows"></a>
- <div class="api">
-    <div class="api-entry">mono_image_get_table_rows</div>
-
-    <div class="prototype">Prototype: mono_image_get_table_rows</div>
-<p />
-
-</div> <a name="api:mono_image_is_dynamic"></a>
- <div class="api">
-    <div class="api-entry">mono_image_is_dynamic</div>
-
-    <div class="prototype">gboolean
-mono_image_is_dynamic (MonoImage *image)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>image:</i></dt><dd> the MonoImage</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  TRUE if the image was created dynamically, FALSE if not.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Determines if the given image was created dynamically through the
-	 System.Reflection.Emit API
-	
-
-</div> <a name="api:mono_image_loaded_by_guid"></a>
- <div class="api">
-    <div class="api-entry">mono_image_loaded_by_guid</div>
-
-    <div class="prototype">Prototype: mono_image_loaded_by_guid</div>
-<p />
-
-</div> <a name="api:mono_image_loaded"></a>
- <div class="api">
-    <div class="api-entry">mono_image_loaded</div>
-
-    <div class="prototype">MonoImage*
-mono_image_loaded (const char *name)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>name:</i></dt><dd> name of the image to load</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the loaded MonoImage, or NULL on failure.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 This routine ensures that the given image is loaded.
-	
-
-</div> <a name="api:mono_image_lookup_resource"></a>
- <div class="api">
-    <div class="api-entry">mono_image_lookup_resource</div>
-
-    <div class="prototype">gpointer
-mono_image_lookup_resource (MonoImage *image, guint32 res_id, guint32 lang_id, gunichar2 *name)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>image:</i></dt><dd> the image to look up the resource in</dd><dt><i>res_id:</i></dt><dd> A MONO_PE_RESOURCE_ID_ that represents the resource ID to lookup.</dd><dt><i>lang_id:</i></dt><dd> The language id.</dd><dt><i>name:</i></dt><dd> the resource name to lookup.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  NULL if not found, otherwise a pointer to the in-memory representation
-
-	 of the given resource. The caller should free it using g_free () when no longer
-	 needed.</blockquote>
-
-</div> <a name="api:mono_image_strerror"></a>
- <div class="api">
-    <div class="api-entry">mono_image_strerror</div>
-
-    <div class="prototype">const char *
-mono_image_strerror (MonoImageOpenStatus status)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>status:</i></dt><dd> an code indicating the result from a recent operation</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a string describing the error
-</blockquote>
-
-
-</div><h3>Public Keys, Strong Names and Certificates</h3>
-
- <a name="api:mono_image_strong_name_position"></a>
- <div class="api">
-    <div class="api-entry">mono_image_strong_name_position</div>
-
-    <div class="prototype">guint32
-mono_image_strong_name_position (MonoImage *image, guint32 *size)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>image:</i></dt><dd> a MonoImage</dd><dt><i>size:</i></dt><dd> a guint32 pointer, or NULL.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the position within the image file where the strong name
-
-	 is stored.</blockquote>
-<b>Remarks</b>
-<p />	 
-	 If the image has a strong name, and <i>size</i> is not NULL, the value
-	 pointed to by size will have the size of the strong name.
-	
-
-</div> <a name="api:mono_image_get_public_key"></a>
- <div class="api">
-    <div class="api-entry">mono_image_get_public_key</div>
-
-    <div class="prototype">const char*
-mono_image_get_public_key (MonoImage *image, guint32 *size)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>image:</i></dt><dd> a MonoImage</dd><dt><i>size:</i></dt><dd> a guint32 pointer, or NULL.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  NULL if the image does not have a public key, or a pointer
-
-	 to the public key.</blockquote>
-<b>Remarks</b>
-<p />	 
-	 This is used to obtain the public key in the <i>image</i>.
-	
-<p />
-	 If the image has a public key, and <i>size</i> is not NULL, the value
-	 pointed to by size will have the size of the public key.
-	
-<p />
-
-</div> <a name="api:mono_image_get_strong_name"></a>
- <div class="api">
-    <div class="api-entry">mono_image_get_strong_name</div>
-
-    <div class="prototype">const char*
-mono_image_get_strong_name (MonoImage *image, guint32 *size)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>image:</i></dt><dd> a MonoImage</dd><dt><i>size:</i></dt><dd> a guint32 pointer, or NULL.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  NULL if the image does not have a strong name, or a
-
-	 pointer to the public key.</blockquote>
-<b>Remarks</b>
-<p />	 
-	 If the image has a strong name, and <i>size</i> is not NULL, the value
-	 pointed to by size will have the size of the strong name.
-	
-
-</div> <a name="api:mono_image_has_authenticode_entry"></a>
- <div class="api">
-    <div class="api-entry">mono_image_has_authenticode_entry</div>
-
-    <div class="prototype">gboolean
-mono_image_has_authenticode_entry (MonoImage *image)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>image:</i></dt><dd> the MonoImage</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  TRUE if the image contains an authenticode entry in the PE
-
-	 directory.</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Use this routine to determine if the image has a Authenticode
-	 Certificate Table.
-	
-
-
-</div><h3>Low-level features</h3>
-
- <a name="api:mono_image_rva_map"></a>
- <div class="api">
-    <div class="api-entry">mono_image_rva_map</div>
-
-    <div class="prototype">Prototype: mono_image_rva_map</div>
-<p />
-
-</div> <a name="api:mono_image_ensure_section_idx"></a>
- <div class="api">
-    <div class="api-entry">mono_image_ensure_section_idx</div>
-
-    <div class="prototype">int
-mono_image_ensure_section_idx (MonoImage *image, int section)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>image:</i></dt><dd> The image we are operating on</dd><dt><i>section:</i></dt><dd> section number that we will load/map into memory</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  TRUE on success
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 This routine makes sure that we have an in-memory copy of
-	 an image section (.text, .rsrc, .data).
-	
-
-</div></body>
-</html>
-</span>
\ No newline at end of file
diff --git a/docs/deploy/mono-api-internal.html b/docs/deploy/mono-api-internal.html
deleted file mode 100644
index eb3b612..0000000
--- a/docs/deploy/mono-api-internal.html
+++ /dev/null
@@ -1,584 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><span>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-   <title>mono-api-internal.html</title>
-   <style type="text/css">
-
-
-   h3 { 
-       font-size: 18px;
-       padding-bottom: 4pt;
-       border-bottom: 2px solid #dddddd;
-   }
-       
-   .api {
-     border: 1px solid;
-     padding: 10pt;
-     margin: 10pt;
-   } 
-
-   .api-entry { 
-       border-bottom: none;
-       font-size: 18px;
-   }
-
-   .prototype {
-     border: 1px solid;
-     background-color: #f2f2f2;
-     padding: 5pt;
-     margin-top: 5pt;
-     margin-bottom: 5pt;  
-   } 
-
-   .header {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-    
-   .code {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-   
-
-</style>
-</head>
-<body>
-<h1>Mono Internals</h1>
-
-	<p />This section documents some of the internal APIs used
-	inside Mono that developers extending or altering Mono might
-	want to use.
-
-<h2>Marshalling functions</h2>
-
- <a name="api:mono_marshal_alloc"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_alloc</div>
-
-    <div class="prototype">Prototype: mono_marshal_alloc</div>
-<p />
-
-</div> <a name="api:mono_marshal_asany"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_asany</div>
-
-    <div class="prototype">Prototype: mono_marshal_asany</div>
-<p />
-
-</div> <a name="api:mono_marshal_free_array"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_free_array</div>
-
-    <div class="prototype">Prototype: mono_marshal_free_array</div>
-<p />
-
-</div> <a name="api:mono_marshal_free_asany"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_free_asany</div>
-
-    <div class="prototype">Prototype: mono_marshal_free_asany</div>
-<p />
-
-</div> <a name="api:mono_marshal_free"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_free</div>
-
-    <div class="prototype">Prototype: mono_marshal_free</div>
-<p />
-
-</div> <a name="api:mono_marshal_get_castclass"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_get_castclass</div>
-
-    <div class="prototype">Prototype: mono_marshal_get_castclass</div>
-<p />
-
-</div> <a name="api:mono_marshal_get_delegate_begin_invoke"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_get_delegate_begin_invoke</div>
-
-    <div class="prototype">Prototype: mono_marshal_get_delegate_begin_invoke</div>
-<p />
-
-</div> <a name="api:mono_marshal_get_delegate_end_invoke"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_get_delegate_end_invoke</div>
-
-    <div class="prototype">Prototype: mono_marshal_get_delegate_end_invoke</div>
-<p />
-
-</div> <a name="api:mono_marshal_get_delegate_invoke"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_get_delegate_invoke</div>
-
-    <div class="prototype">Prototype: mono_marshal_get_delegate_invoke</div>
-<p />
-
-</div> <a name="api:mono_marshal_get_icall_wrapper"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_get_icall_wrapper</div>
-
-    <div class="prototype">Prototype: mono_marshal_get_icall_wrapper</div>
-<p />
-
-</div> <a name="api:mono_marshal_get_isinst"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_get_isinst</div>
-
-    <div class="prototype">Prototype: mono_marshal_get_isinst</div>
-<p />
-
-</div> <a name="api:mono_marshal_get_ldfld_remote_wrapper"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_get_ldfld_remote_wrapper</div>
-
-    <div class="prototype">Prototype: mono_marshal_get_ldfld_remote_wrapper</div>
-<p />
-
-</div> <a name="api:mono_marshal_get_ldfld_wrapper"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_get_ldfld_wrapper</div>
-
-    <div class="prototype">Prototype: mono_marshal_get_ldfld_wrapper</div>
-<p />
-
-</div> <a name="api:mono_marshal_get_managed_wrapper"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_get_managed_wrapper</div>
-
-    <div class="prototype">Prototype: mono_marshal_get_managed_wrapper</div>
-<p />
-
-</div> <a name="api:mono_marshal_get_native_wrapper"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_get_native_wrapper</div>
-
-    <div class="prototype">MonoMethod*
-mono_marshal_get_native_wrapper (MonoMethod *method, gboolean check_exceptions, gboolean aot)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>method:</i></dt><dd> The MonoMethod to wrap.</dd><dt><i>check_exceptions:</i></dt><dd> Whenever to check for pending exceptions</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 generates IL code for the pinvoke wrapper (the generated method
-	 calls the unmanaged code in piinfo->addr)
-
-</div> <a name="api:mono_marshal_get_proxy_cancast"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_get_proxy_cancast</div>
-
-    <div class="prototype">Prototype: mono_marshal_get_proxy_cancast</div>
-<p />
-
-</div> <a name="api:mono_marshal_get_ptr_to_struct"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_get_ptr_to_struct</div>
-
-    <div class="prototype">MonoMethod*
-mono_marshal_get_ptr_to_struct (MonoClass *klass)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd></dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 generates IL code for PtrToStructure (IntPtr src, object structure)
-
-</div> <a name="api:mono_marshal_get_remoting_invoke_for_target"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_get_remoting_invoke_for_target</div>
-
-    <div class="prototype">Prototype: mono_marshal_get_remoting_invoke_for_target</div>
-<p />
-
-</div> <a name="api:mono_marshal_get_remoting_invoke"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_get_remoting_invoke</div>
-
-    <div class="prototype">Prototype: mono_marshal_get_remoting_invoke</div>
-<p />
-
-</div> <a name="api:mono_marshal_get_remoting_invoke_with_check"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_get_remoting_invoke_with_check</div>
-
-    <div class="prototype">Prototype: mono_marshal_get_remoting_invoke_with_check</div>
-<p />
-
-</div> <a name="api:mono_marshal_get_runtime_invoke"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_get_runtime_invoke</div>
-
-    <div class="prototype">Prototype: mono_marshal_get_runtime_invoke</div>
-<p />
-
-</div> <a name="api:mono_marshal_get_stelemref"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_get_stelemref</div>
-
-    <div class="prototype">Prototype: mono_marshal_get_stelemref</div>
-<p />
-
-</div> <a name="api:mono_marshal_get_stfld_remote_wrapper"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_get_stfld_remote_wrapper</div>
-
-    <div class="prototype">Prototype: mono_marshal_get_stfld_remote_wrapper</div>
-<p />
-
-</div> <a name="api:mono_marshal_get_stfld_wrapper"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_get_stfld_wrapper</div>
-
-    <div class="prototype">Prototype: mono_marshal_get_stfld_wrapper</div>
-<p />
-
-</div> <a name="api:mono_marshal_get_struct_to_ptr"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_get_struct_to_ptr</div>
-
-    <div class="prototype">MonoMethod*
-mono_marshal_get_struct_to_ptr (MonoClass *klass)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd></dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 generates IL code for StructureToPtr (object structure, IntPtr ptr, bool fDeleteOld)
-
-</div> <a name="api:mono_marshal_get_synchronized_wrapper"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_get_synchronized_wrapper</div>
-
-    <div class="prototype">Prototype: mono_marshal_get_synchronized_wrapper</div>
-<p />
-
-</div> <a name="api:mono_marshal_get_unbox_wrapper"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_get_unbox_wrapper</div>
-
-    <div class="prototype">Prototype: mono_marshal_get_unbox_wrapper</div>
-<p />
-
-</div> <a name="api:mono_marshal_get_xappdomain_invoke"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_get_xappdomain_invoke</div>
-
-    <div class="prototype">Prototype: mono_marshal_get_xappdomain_invoke</div>
-<p />
-
-</div> <a name="api:mono_marshal_load_type_info"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_load_type_info</div>
-
-    <div class="prototype">MonoMarshalType*
-mono_marshal_load_type_info (MonoClass* klass)
-
-</div>
-<p />
-<b>Remarks</b>
-<p />	 
-	  Initialize klass->marshal_info using information from metadata. This function can
-	 recursively call itself, and the caller is responsible to avoid that by calling 
-	 mono_marshal_is_loading_type_info () beforehand.
-	
-	 LOCKING: Acquires the loader lock.
-
-</div> <a name="api:mono_marshal_method_from_wrapper"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_method_from_wrapper</div>
-
-    <div class="prototype">Prototype: mono_marshal_method_from_wrapper</div>
-<p />
-
-</div> <a name="api:mono_marshal_realloc"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_realloc</div>
-
-    <div class="prototype">Prototype: mono_marshal_realloc</div>
-<p />
-
-</div> <a name="api:mono_marshal_set_last_error"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_set_last_error</div>
-
-    <div class="prototype">void
-mono_marshal_set_last_error (void)
-
-</div>
-<p />
-<b>Remarks</b>
-<p />	 
-	 This function is invoked to set the last error value from a P/Invoke call
-	 which has SetLastError set.
-
-</div> <a name="api:mono_marshal_type_size"></a>
- <div class="api">
-    <div class="api-entry">mono_marshal_type_size</div>
-
-    <div class="prototype">Prototype: mono_marshal_type_size</div>
-<p />
-
-
-</div><h2>Metadata Loading Errors</h2>
-
-	<p />The routines in this section are used to cope with errors
-	during metadata loading.  Errors in metadata handling can
-	happen for many reason, and these include (this is not an
-	exhaustive list).
-
-	<ul>
-		<li>An assembly referenced is missing.
-		<li>Fields referenced are missing.
-		<li>Methods referenced are missing.
-	</li></li></li></ul>
-
-	<p />The <tt>mono_loader_set_*</tt> routines are invoked during
-	metadata loading to flag that an error has happened.  The
-	class loading errros are flagged in a per-thread basis.
-
-	<p />In various spots in the runtime the
-	<tt>mono_loader_get_last_error</tt> routine is called to check
-	if there was a problem, and then errors are propagated upwards
-	on the stack until we reach a point where an exception can be
-	raised and no runtime locks are held.
-
-	<p />The <tt>mono_loader_error_prepare_exception</tt> takes a
-	<tt>MonoLoaderError</tt> structure (the value returned from
-	<tt>mono_loader_get_last_error</tt>), turns that into an
-	exception and clears the error condition from the current
-	thread. 
-	
- <a name="api:mono_loader_set_error_field_load"></a>
- <div class="api">
-    <div class="api-entry">mono_loader_set_error_field_load</div>
-
-    <div class="prototype">Prototype: mono_loader_set_error_field_load</div>
-<p />
-
-</div> <a name="api:mono_loader_set_error_method_load"></a>
- <div class="api">
-    <div class="api-entry">mono_loader_set_error_method_load</div>
-
-    <div class="prototype">Prototype: mono_loader_set_error_method_load</div>
-<p />
-
-</div> <a name="api:mono_loader_set_error_type_load"></a>
- <div class="api">
-    <div class="api-entry">mono_loader_set_error_type_load</div>
-
-    <div class="prototype">void
-mono_loader_set_error_type_load (const char *class_name, const char *assembly_name)
-
-</div>
-<p />
-<b>Remarks</b>
-<p />	 
-	 Set the loader error for this thread. 
-
-
-</div> <a name="api:mono_loader_get_last_error"></a>
- <div class="api">
-    <div class="api-entry">mono_loader_get_last_error</div>
-
-    <div class="prototype">Prototype: mono_loader_get_last_error</div>
-<p />
-
-</div> <a name="api:mono_loader_clear_error"></a>
- <div class="api">
-    <div class="api-entry">mono_loader_clear_error</div>
-
-    <div class="prototype">void
-mono_loader_clear_error (void)
-
-</div>
-<p />
-<b>Remarks</b>
-<p />	 
-	 Disposes any loader error messages on this thread
-
-</div> <a name="api:mono_loader_error_prepare_exception"></a>
- <div class="api">
-    <div class="api-entry">mono_loader_error_prepare_exception</div>
-
-    <div class="prototype">MonoException*
-mono_loader_error_prepare_exception (MonoLoaderError *error)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>error:</i></dt><dd> The MonoLoaderError to turn into an exception</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 This turns a MonoLoaderError into an exception that can be thrown
-	 and resets the Mono Loader Error state during this process.
-	
-
-
-</div><h2>Metadata Loader Locking: Internals</h2>
-
-	<p />The locking functions here are used by code in class.c and
-	metadata.c to lock access to the shared hashtables inside the
-	MonoImage.
-	
- <a name="api:mono_loader_lock"></a>
- <div class="api">
-    <div class="api-entry">mono_loader_lock</div>
-
-    <div class="prototype">void
-mono_loader_lock (void)
-
-</div>
-<p />
-<b>Remarks</b>
-<p />	 
-	 See docs/thread-safety.txt for the locking strategy.
-
-</div> <a name="api:mono_loader_unlock"></a>
- <div class="api">
-    <div class="api-entry">mono_loader_unlock</div>
-
-    <div class="prototype">Prototype: mono_loader_unlock</div>
-<p />
-
-
-</div><h2>Garbage Collector Internal Interface</h2>
-
-	<p />The internal interface of the Mono GC is the interface used
-	between the runtime engine and the garbage collector.
-	
- <a name="api:mono_gc_disable"></a>
- <div class="api">
-    <div class="api-entry">mono_gc_disable</div>
-
-    <div class="prototype">Prototype: mono_gc_disable</div>
-<p />
-
-</div> <a name="api:mono_gc_enable"></a>
- <div class="api">
-    <div class="api-entry">mono_gc_enable</div>
-
-    <div class="prototype">Prototype: mono_gc_enable</div>
-<p />
-
-</div> <a name="api:mono_gc_is_finalizer_thread"></a>
- <div class="api">
-    <div class="api-entry">mono_gc_is_finalizer_thread</div>
-
-    <div class="prototype">gboolean
-mono_gc_is_finalizer_thread (MonoThread *thread)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>thread:</i></dt><dd> the thread to test.</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 In Mono objects are finalized asynchronously on a separate thread.
-	 This routine tests whether the <i>thread</i> argument represents the
-	 finalization thread.
-	
-<p />
-	 Returns true if <i>thread</i> is the finalization thread.
-
-</div> <a name="api:mono_gc_out_of_memory"></a>
- <div class="api">
-    <div class="api-entry">mono_gc_out_of_memory</div>
-
-    <div class="prototype">Prototype: mono_gc_out_of_memory</div>
-<p />
-
-</div> <a name="api:mono_gc_start_world"></a>
- <div class="api">
-    <div class="api-entry">mono_gc_start_world</div>
-
-    <div class="prototype">Prototype: mono_gc_start_world</div>
-<p />
-
-</div> <a name="api:mono_gc_stop_world"></a>
- <div class="api">
-    <div class="api-entry">mono_gc_stop_world</div>
-
-    <div class="prototype">Prototype: mono_gc_stop_world</div>
-<p />
-
-</div> <a name="api:mono_gc_alloc_fixed"></a>
- <div class="api">
-    <div class="api-entry">mono_gc_alloc_fixed</div>
-
-    <div class="prototype">Prototype: mono_gc_alloc_fixed</div>
-<p />
-
-</div> <a name="api:mono_gc_enable_events"></a>
- <div class="api">
-    <div class="api-entry">mono_gc_enable_events</div>
-
-    <div class="prototype">Prototype: mono_gc_enable_events</div>
-<p />
-
-</div> <a name="api:mono_gc_free_fixed"></a>
- <div class="api">
-    <div class="api-entry">mono_gc_free_fixed</div>
-
-    <div class="prototype">Prototype: mono_gc_free_fixed</div>
-<p />
-
-</div> <a name="api:mono_gc_make_descr_from_bitmap"></a>
- <div class="api">
-    <div class="api-entry">mono_gc_make_descr_from_bitmap</div>
-
-    <div class="prototype">Prototype: mono_gc_make_descr_from_bitmap</div>
-<p />
-
-
-
-</div> <a name="api:mono_gc_base_init"></a>
- <div class="api">
-    <div class="api-entry">mono_gc_base_init</div>
-
-    <div class="prototype">Prototype: mono_gc_base_init</div>
-<p />
-
-</div> <a name="api:mono_gc_invoke_finalizers"></a>
- <div class="api">
-    <div class="api-entry">mono_gc_invoke_finalizers</div>
-
-    <div class="prototype">Prototype: mono_gc_invoke_finalizers</div>
-<p />
-
-</div> <a name="api:mono_gc_is_gc_thread"></a>
- <div class="api">
-    <div class="api-entry">mono_gc_is_gc_thread</div>
-
-    <div class="prototype">Prototype: mono_gc_is_gc_thread</div>
-<p />
-
-</div> <a name="api:mono_gc_pending_finalizers"></a>
- <div class="api">
-    <div class="api-entry">mono_gc_pending_finalizers</div>
-
-    <div class="prototype">Prototype: mono_gc_pending_finalizers</div>
-<p />
-
-</div> <a name="api:mono_gc_register_thread"></a>
- <div class="api">
-    <div class="api-entry">mono_gc_register_thread</div>
-
-    <div class="prototype">Prototype: mono_gc_register_thread</div>
-<p />
-
-</div></body>
-</html>
-</span>
\ No newline at end of file
diff --git a/docs/deploy/mono-api-jit.html b/docs/deploy/mono-api-jit.html
deleted file mode 100644
index 471c46c..0000000
--- a/docs/deploy/mono-api-jit.html
+++ /dev/null
@@ -1,141 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><span>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-   <title>mono-api-jit.html</title>
-   <style type="text/css">
-
-
-   h3 { 
-       font-size: 18px;
-       padding-bottom: 4pt;
-       border-bottom: 2px solid #dddddd;
-   }
-       
-   .api {
-     border: 1px solid;
-     padding: 10pt;
-     margin: 10pt;
-   } 
-
-   .api-entry { 
-       border-bottom: none;
-       font-size: 18px;
-   }
-
-   .prototype {
-     border: 1px solid;
-     background-color: #f2f2f2;
-     padding: 5pt;
-     margin-top: 5pt;
-     margin-bottom: 5pt;  
-   } 
-
-   .header {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-    
-   .code {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-   
-
-</style>
-</head>
-<body>
-<h2>Synopsis</h2>
-
-<div class="header">
-G_GNUC_UNUSED char * <a href="#api:mono_pmip">mono_pmip</a>                        (void *ip);
-void                 <a href="#api:mono_print_method_from_ip">mono_print_method_from_ip</a>        (void *ip);
-                     <a href="#api:mono_print_thread_dump"></a>                                 
-void                 <a href="#api:mono_threads_request_thread_dump">mono_threads_request_thread_dump</a> (void);
-                     <a href="#api:mono_inst_name"></a>                                 
-
-</div>
-
-<h3>Useful Debugging Functions</h3>
-
-	<p />These functions are useful when running the Mono VM inside
-	a debugger.
-
- <a name="api:mono_pmip"></a>
- <div class="api">
-    <div class="api-entry">mono_pmip</div>
-
-    <div class="prototype">G_GNUC_UNUSED char *
-mono_pmip (void *ip)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>ip:</i></dt><dd> an instruction pointer address</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the name of the method at address <i>ip</i>.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 This method is used from a debugger to get the name of the
-	 method at address <i>ip</i>.   This routine is typically invoked from
-	 a debugger like this:
-	
-	 (gdb) print mono_pmip ($pc)
-	
-
-</div> <a name="api:mono_print_method_from_ip"></a>
- <div class="api">
-    <div class="api-entry">mono_print_method_from_ip</div>
-
-    <div class="prototype">#ifdef __GNUC__
-/* Prevent the linker from optimizing this away in embedding setups to help debugging */
- __attribute__((used))
-#endif
-void
-mono_print_method_from_ip (void *ip)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>ip:</i></dt><dd> an instruction pointer address</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 This method is used from a debugger to get the name of the
-	 method at address <i>ip</i>.
-	
-	 This prints the name of the method at address <i>ip</i> in the standard
-	 output.  Unlike mono_pmip which returns a string, this routine
-	 prints the value on the standard output. 
-
-</div> <a name="api:mono_print_thread_dump"></a>
- <div class="api">
-    <div class="api-entry">mono_print_thread_dump</div>
-
-    <div class="prototype">Prototype: mono_print_thread_dump</div>
-<p />
-
-</div> <a name="api:mono_threads_request_thread_dump"></a>
- <div class="api">
-    <div class="api-entry">mono_threads_request_thread_dump</div>
-
-    <div class="prototype">void
-mono_threads_request_thread_dump (void)
-
-</div>
-<p />
-<b>Remarks</b>
-<p />	 
-	   Ask all threads except the current to print their stacktrace to stdout.
-
-
-</div><h3>Helper Tools For Native Ports</h3>
-
-</body>
-</html>
-</span>
\ No newline at end of file
diff --git a/docs/deploy/mono-api-jitinternal.html b/docs/deploy/mono-api-jitinternal.html
deleted file mode 100644
index 476c9d7..0000000
--- a/docs/deploy/mono-api-jitinternal.html
+++ /dev/null
@@ -1,247 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><span>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-   <title>mono-api-jitinternal.html</title>
-   <style type="text/css">
-
-
-   h3 { 
-       font-size: 18px;
-       padding-bottom: 4pt;
-       border-bottom: 2px solid #dddddd;
-   }
-       
-   .api {
-     border: 1px solid;
-     padding: 10pt;
-     margin: 10pt;
-   } 
-
-   .api-entry { 
-       border-bottom: none;
-       font-size: 18px;
-   }
-
-   .prototype {
-     border: 1px solid;
-     background-color: #f2f2f2;
-     padding: 5pt;
-     margin-top: 5pt;
-     margin-bottom: 5pt;  
-   } 
-
-   .header {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-    
-   .code {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-   
-
-</style>
-</head>
-<body>
-<h1>Notification Interface</h1>
-
-	<p />This is an internal profiler interface.   In general, users
-	would not be using this interface, but would be using the
-	profiler interface. 
-
-	<p />These methods must be called to notify the profiler of an
-	event that must be recorded.   Mono's JIT engine currently
-	calls these routines, but if you are extending Mono in some
-	way these are the methods that you might invoke to notify the
-	profiler of an event.
-
- <a name="api:mono_profiler_load"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_load</div>
-
-    <div class="prototype">void 
-mono_profiler_load (const char *desc)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>desc:</i></dt><dd> arguments to configure the profiler</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Invoke this method to initialize the profiler.   This will drive the
-	 loading of the internal ("default") or any external profilers.
-	
-	 This routine is invoked by Mono's driver, but must be called manually
-	 if you embed Mono into your application.
-
-</div> <a name="api:mono_profiler_allocation"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_allocation</div>
-
-    <div class="prototype">Prototype: mono_profiler_allocation</div>
-<p />
-
-</div> <a name="api:mono_profiler_stat_hit"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_stat_hit</div>
-
-    <div class="prototype">Prototype: mono_profiler_stat_hit</div>
-<p />
-
-</div> <a name="api:mono_profiler_thread_start"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_thread_start</div>
-
-    <div class="prototype">Prototype: mono_profiler_thread_start</div>
-<p />
-
-</div> <a name="api:mono_profiler_thread_end"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_thread_end</div>
-
-    <div class="prototype">Prototype: mono_profiler_thread_end</div>
-<p />
-
-</div> <a name="api:mono_profiler_appdomain_event"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_appdomain_event</div>
-
-    <div class="prototype">Prototype: mono_profiler_appdomain_event</div>
-<p />
-
-</div> <a name="api:mono_profiler_appdomain_loaded"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_appdomain_loaded</div>
-
-    <div class="prototype">Prototype: mono_profiler_appdomain_loaded</div>
-<p />
-
-</div> <a name="api:mono_profiler_assembly_event"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_assembly_event</div>
-
-    <div class="prototype">Prototype: mono_profiler_assembly_event</div>
-<p />
-
-</div> <a name="api:mono_profiler_assembly_loaded"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_assembly_loaded</div>
-
-    <div class="prototype">Prototype: mono_profiler_assembly_loaded</div>
-<p />
-
-</div> <a name="api:mono_profiler_class_event"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_class_event</div>
-
-    <div class="prototype">Prototype: mono_profiler_class_event</div>
-<p />
-
-</div> <a name="api:mono_profiler_class_loaded"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_class_loaded</div>
-
-    <div class="prototype">Prototype: mono_profiler_class_loaded</div>
-<p />
-
-</div> <a name="api:mono_profiler_code_transition"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_code_transition</div>
-
-    <div class="prototype">Prototype: mono_profiler_code_transition</div>
-<p />
-
-</div> <a name="api:mono_profiler_method_end_jit"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_method_end_jit</div>
-
-    <div class="prototype">Prototype: mono_profiler_method_end_jit</div>
-<p />
-
-</div> <a name="api:mono_profiler_method_enter"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_method_enter</div>
-
-    <div class="prototype">Prototype: mono_profiler_method_enter</div>
-<p />
-
-</div> <a name="api:mono_profiler_method_jit"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_method_jit</div>
-
-    <div class="prototype">Prototype: mono_profiler_method_jit</div>
-<p />
-
-</div> <a name="api:mono_profiler_method_leave"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_method_leave</div>
-
-    <div class="prototype">Prototype: mono_profiler_method_leave</div>
-<p />
-
-</div> <a name="api:mono_profiler_module_event"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_module_event</div>
-
-    <div class="prototype">Prototype: mono_profiler_module_event</div>
-<p />
-
-</div> <a name="api:mono_profiler_module_loaded"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_module_loaded</div>
-
-    <div class="prototype">Prototype: mono_profiler_module_loaded</div>
-<p />
-
-</div> <a name="api:mono_profiler_shutdown"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_shutdown</div>
-
-    <div class="prototype">Prototype: mono_profiler_shutdown</div>
-<p />
-
-</div> <a name="api:mono_profiler_startup"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_startup</div>
-
-    <div class="prototype">Prototype: mono_profiler_startup</div>
-<p />
-
-</div> <a name="api:mono_profiler_gc_event"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_gc_event</div>
-
-    <div class="prototype">Prototype: mono_profiler_gc_event</div>
-<p />
-
-</div> <a name="api:mono_profiler_gc_heap_resize"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_gc_heap_resize</div>
-
-    <div class="prototype">Prototype: mono_profiler_gc_heap_resize</div>
-<p />
-
-</div> <a name="api:mono_profiler_gc_event"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_gc_event</div>
-
-    <div class="prototype">Prototype: mono_profiler_gc_event</div>
-<p />
-
-</div> <a name="api:mono_profiler_gc_heap_resize"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_gc_heap_resize</div>
-
-    <div class="prototype">Prototype: mono_profiler_gc_heap_resize</div>
-<p />
-
-</div></body>
-</html>
-</span>
\ No newline at end of file
diff --git a/docs/deploy/mono-api-marshal.html b/docs/deploy/mono-api-marshal.html
deleted file mode 100644
index 22d1b8f..0000000
--- a/docs/deploy/mono-api-marshal.html
+++ /dev/null
@@ -1,78 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><span>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-   <title>mono-api-marshal.html</title>
-   <style type="text/css">
-
-
-   h3 { 
-       font-size: 18px;
-       padding-bottom: 4pt;
-       border-bottom: 2px solid #dddddd;
-   }
-       
-   .api {
-     border: 1px solid;
-     padding: 10pt;
-     margin: 10pt;
-   } 
-
-   .api-entry { 
-       border-bottom: none;
-       font-size: 18px;
-   }
-
-   .prototype {
-     border: 1px solid;
-     background-color: #f2f2f2;
-     padding: 5pt;
-     margin-top: 5pt;
-     margin-bottom: 5pt;  
-   } 
-
-   .header {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-    
-   .code {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-   
-
-</style>
-</head>
-<body>
-
-
- <a name="api:mono_delegate_free_ftnptr"></a>
- <div class="api">
-    <div class="api-entry">mono_delegate_free_ftnptr</div>
-
-    <div class="prototype">Prototype: mono_delegate_free_ftnptr</div>
-<p />
-
-</div> <a name="api:mono_delegate_to_ftnptr"></a>
- <div class="api">
-    <div class="api-entry">mono_delegate_to_ftnptr</div>
-
-    <div class="prototype">Prototype: mono_delegate_to_ftnptr</div>
-<p />
-
-</div> <a name="api:mono_ftnptr_to_delegate"></a>
- <div class="api">
-    <div class="api-entry">mono_ftnptr_to_delegate</div>
-
-    <div class="prototype">Prototype: mono_ftnptr_to_delegate</div>
-<p />
-
-</div></body>
-</html>
-</span>
\ No newline at end of file
diff --git a/docs/deploy/mono-api-metadata.html b/docs/deploy/mono-api-metadata.html
deleted file mode 100644
index 39d59d5..0000000
--- a/docs/deploy/mono-api-metadata.html
+++ /dev/null
@@ -1,1313 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><span>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-   <title>mono-api-metadata.html</title>
-   <style type="text/css">
-
-
-   h3 { 
-       font-size: 18px;
-       padding-bottom: 4pt;
-       border-bottom: 2px solid #dddddd;
-   }
-       
-   .api {
-     border: 1px solid;
-     padding: 10pt;
-     margin: 10pt;
-   } 
-
-   .api-entry { 
-       border-bottom: none;
-       font-size: 18px;
-   }
-
-   .prototype {
-     border: 1px solid;
-     background-color: #f2f2f2;
-     padding: 5pt;
-     margin-top: 5pt;
-     margin-bottom: 5pt;  
-   } 
-
-   .header {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-    
-   .code {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-   
-
-</style>
-</head>
-<body>
-<h1>Metadata Reading</h1>
-
-	<p />The Metadata API gives developers low-level access to the
-	information encoded in CLI modules: type and
-	methods definitions encoded in metadata as well as access to
-	the CIL code and embedded resources.
-
-	<p />Managed developers access this information using either the
-	System.Reflection API or a library
-	like <a href="http://www.mono-project.com/Cecil">Cecil</a>.
-
-	<p />To start using the Metadata API it is necessary
-	to <a href="mono-api-assembly.html#cil_assembly_load">open an
-	assembly</a> or a CIL image (a .dll or .exe file) using one of
-	the
-	<a href="mono-api-image.html#cil_image_open">CIL image
-	opening</a> API calls.
-
-<h2>Metadata Heaps</h2>
-
-	<p />ECMA CLI images contain four heaps that store different
-	kinds of information, these are:
-
-	<ul>
-		<li>GUID heap (called #GUID) contains 128-bit GUIDs,
-		you can get pointer to a GUID value by
-		calling <a href="#api:mono_metadata_guid_heap">mono_metadata_guid_heap</a>.
-
-		<li>User string heap (called #US), it contains user
-		visible strings, you can fetch a string from this heap
-		by calling
-		<a href="#api:mono_metadata_user_string">mono_metadata_user_string</a>.
-
-		<li>Blob heap (called #blob), it contains binary
-		blobs of data, you can get a blob
-		by <a href="#api:mono_metadata_blob_heap">mono_metadata_blob_heap</a>.
-		You can determine the size of the blob using
-		the <a href="#api:mono_metadata_decode_blob_size">mono_metadata_decode_blob_size</a>. 
-	
-	</li></li></li></ul>
-
-	<p />The ECMA file format also has an extra section called the
-	"#~" stream, this stream is the one that holds the metadata
-	tables.   There is a high-level API to get access to the
-	contents of this API, described in the
-	section <a href="#metadata-tables">Metadata Tables</a>.
-	
- <a name="api:mono_metadata_guid_heap"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_guid_heap</div>
-
-    <div class="prototype">const char *
-mono_metadata_guid_heap (MonoImage *meta, guint32 index)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>meta:</i></dt><dd> metadata context</dd><dt><i>index:</i></dt><dd> index into the guid heap.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  an in-memory pointer to the <i>index</i> in the guid heap.
-</blockquote>
-
-</div> <a name="api:mono_metadata_string_heap"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_string_heap</div>
-
-    <div class="prototype">const char *
-mono_metadata_string_heap (MonoImage *meta, guint32 index)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>meta:</i></dt><dd> metadata context</dd><dt><i>index:</i></dt><dd> index into the string heap.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  an in-memory pointer to the <i>index</i> in the string heap.
-</blockquote>
-
-</div> <a name="api:mono_metadata_blob_heap"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_blob_heap</div>
-
-    <div class="prototype">const char *
-mono_metadata_blob_heap (MonoImage *meta, guint32 index)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>meta:</i></dt><dd> metadata context</dd><dt><i>index:</i></dt><dd> index into the blob.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  an in-memory pointer to the <i>index</i> in the Blob heap.
-</blockquote>
-
-</div> <a name="api:mono_metadata_user_string"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_user_string</div>
-
-    <div class="prototype">const char *
-mono_metadata_user_string (MonoImage *meta, guint32 index)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>meta:</i></dt><dd> metadata context</dd><dt><i>index:</i></dt><dd> index into the user string heap.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  an in-memory pointer to the <i>index</i> in the user string heap ("<i>US</i>").
-</blockquote>
-
-</div> <a name="api:mono_metadata_decode_blob_size"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_decode_blob_size</div>
-
-    <div class="prototype">guint32
-mono_metadata_decode_blob_size (const char *xptr, const char **rptr)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>ptr:</i></dt><dd> pointer to a blob object</dd><dt><i>rptr:</i></dt><dd> the new position of the pointer</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the size of the blob object
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 This decodes a compressed size as described by 23.1.4 (a blob or user string object)
-	
-
-
-<a name="metadata-tables"></a>
-</div><h2>Metadata Tables</h2>
-
-	<p />Metadata is encoded in a number of tables included on every
-	CIL image.   These tables contain type definitions, member
-	definitions and so on, these constants are defined in the ECMA 335
-	specification Partition II section 22.   The following table
-	shows the C constants defined in the Mono runtime and how they
-	map to the equivalent ECMA CLI metadata table:
-
-	<center>
-	<table border="1">
-	  <thead>
-	    <td>
-	       <b>ECMA CLI Table Name</b>
-	    </td>
-	    <td>
-	    <b>C Constant Name</b>
-	    </td>
-	    <td>
-	       <b>Table Schema (Array Size + Columns Constants)</b>
-	    </td>
-	  </thead>
-<td>Assembly</td><td>MONO_TABLE_ASSEMBLY</td><td>
-Array size: 
-MONO_ASSEMBLY_SIZE
-<ul>
-	<li>MONO_ASSEMBLY_HASH_ALG
-	<li>MONO_ASSEMBLY_MAJOR_VERSION
-	<li>MONO_ASSEMBLY_MINOR_VERSION
-	<li>MONO_ASSEMBLY_BUILD_NUMBER
-	<li>MONO_ASSEMBLY_REV_NUMBER
-	<li>MONO_ASSEMBLY_FLAGS
-	<li>MONO_ASSEMBLY_PUBLIC_KEY
-	<li>MONO_ASSEMBLY_NAME
-	<li>MONO_ASSEMBLY_CULTURE
-</li></li></li></li></li></li></li></li></li></ul>
-</td>
-
-
-<td>AssemblyOS</td><td>MONO_TABLE_ASSEMBLYOS</td><td>
-Array size: 
-MONO_ASSEMBLYOS_SIZE
-<ul>
-	<li>MONO_ASSEMBLYOS_PLATFORM
-	<li>MONO_ASSEMBLYOS_MAJOR_VERSION
-	<li>MONO_ASSEMBLYOS_MINOR_VERSION
-</li></li></li></ul>
-</td>
-
-
-<td>AssemblyProcessor</td><td>MONO_TABLE_ASSEMBLYPROCESSOR</td><td>Array
-size: MONO_ASSEMBLYPROCESSOR_SIZE
-<ul>
-	<li>MONO_ASSEMBLY_PROCESSOR
-</li></ul>
-</td>
-
-
-<td>AssemblyRef</td><td>MONO_TABLE_ASSEMBLYREF</td><td>
-Array size: 
-MONO_ASSEMBLYREF_SIZE
-<ul>
-	<li>MONO_ASSEMBLYREF_MAJOR_VERSION
-	<li>MONO_ASSEMBLYREF_MINOR_VERSION
-	<li>MONO_ASSEMBLYREF_BUILD_NUMBER
-	<li>MONO_ASSEMBLYREF_REV_NUMBER
-	<li>MONO_ASSEMBLYREF_FLAGS
-	<li>MONO_ASSEMBLYREF_PUBLIC_KEY
-	<li>MONO_ASSEMBLYREF_NAME
-	<li>MONO_ASSEMBLYREF_CULTURE
-	<li>MONO_ASSEMBLYREF_HASH_VALUE
-</li></li></li></li></li></li></li></li></li></ul>
-</td>
-
-
-<td>AssemblyRefProcessor</td><td>MONO_TABLE_ASSEMBLYREFPROCESSOR</td><td>Array
-size: MONO_ASSEMBLYREFPROC_SIZE
-<ul>
-	<li>MONO_ASSEMBLYREFPROC_PROCESSOR
-	<li>MONO_ASSEMBLYREFPROC_ASSEMBLYREF
-</li></li></ul>
-</td>
-
-
-<td>AssemblyRefOS</td><td>MONO_TABLE_ASSEMBLYREFOS</td><td>
-Array size: 
-	<li>MONO_ASSEMBLYREFOS_SIZE
-<ul>
-	<li>MONO_ASSEMBLYREFOS_PLATFORM
-	<li>MONO_ASSEMBLYREFOS_MAJOR_VERSION
-	<li>MONO_ASSEMBLYREFOS_MINOR_VERSION
-	<li>MONO_ASSEMBLYREFOS_ASSEMBLYREF
-</li></li></li></li></ul>
-</li></td>
-
-
-<td>ClassLayout</td><td>MONO_TABLE_CLASSLAYOUT</td><td>
-Array size: 
-MONO_CLASSLAYOUT_SIZE
-<ul>
-	<li>MONO_CLASS_LAYOUT_PACKING_SIZE
-	<li>MONO_CLASS_LAYOUT_CLASS_SIZE
-	<li>MONO_CLASS_LAYOUT_PARENT
-</li></li></li></ul>
-</td>
-
-
-<td>Constant</td><td>MONO_TABLE_CONSTANT</td><td>
-Array size: 
-MONO_CONSTANT_SIZE
-<ul>
-	<li>MONO_CONSTANT_TYPE
-	<li>MONO_CONSTANT_PADDING
-	<li>MONO_CONSTANT_PARENT
-	<li>MONO_CONSTANT_VALUE
-</li></li></li></li></ul>
-</td>
-
-
-<td>CustomAttribute</td><td>MONO_TABLE_CUSTOMATTRIBUTE</td><td>
-Array size:
-MONO_CUSTOM_ATTR_SIZE
-<ul>
-	<li>MONO_CUSTOM_ATTR_PARENT
-	<li>MONO_CUSTOM_ATTR_TYPE
-	<li>MONO_CUSTOM_ATTR_VALUE
-</li></li></li></ul>
-</td>
-
-
-<td>DeclSecurity</td><td>MONO_TABLE_DECLSECURITY</td><td>
-Array size: 
-MONO_DECL_SECURITY_SIZE
-<ul>
-	<li>MONO_DECL_SECURITY_ACTION
-	<li>MONO_DECL_SECURITY_PARENT
-	<li>MONO_DECL_SECURITY_PERMISSIONSET
-</li></li></li></ul>
-</td>
-
-
-<td>EventMap</td><td>MONO_TABLE_EVENTMAP</td><td>
-Array size: 
-MONO_EVENT_MAP_SIZE
-<ul>
-	<li>MONO_EVENT_MAP_PARENT
-	<li>MONO_EVENT_MAP_EVENTLIST
-</li></li></ul>
-</td>
-
-
-<td>EventPtr</td><td>MONO_TABLE_EVENT_POINTER</td><td>
-Array size: 
-MONO_EVENT_POINTER_SIZE
-<ul>
-	<li>MONO_EVENT_POINTER_EVENT
-</li></ul>
-</td>
-
-
-<td>Event</td><td>MONO_TABLE_EVENT</td><td>
-Array size:  MONO_EVENT_SIZE
-<ul>
-	<li>MONO_EVENT_FLAGS
-	<li>MONO_EVENT_NAME
-	<li>MONO_EVENT_TYPE
-</li></li></li></ul>
-</td>
-
-
-<td>ExportedType</td><td>MONO_TABLE_EXPORTEDTYPE</td><td>
-Array size: 
-MONO_EXPORTEDTYPE_SIZE
-<ul>
-	<li>MONO_EXP_TYPE_FLAGS
-	<li>MONO_EXP_TYPE_TYPEDEF
-	<li>MONO_EXP_TYPE_NAME
-	<li>MONO_EXP_TYPE_NAMESPACE
-	<li>MONO_EXP_TYPE_IMPLEMENTATION
-</li></li></li></li></li></ul>
-</td>
-
-
-<td>Field</td><td>MONO_TABLE_FIELD</td><td>
-Array size:  MONO_FIELD_SIZE
-<ul>
-	<li>MONO_FIELD_FLAGS
-	<li>MONO_FIELD_NAME
-	<li>MONO_FIELD_SIGNATURE
-</li></li></li></ul>
-</td>
-
-
-<td>FieldLayoutt</td><td>MONO_TABLE_FIELDLAYOUT</td><td>
-Array size: 
-MONO_FIELDLAYOUT_SIZE
-<ul>
-	<li>MONO_FIELD_LAYOUT_OFFSET
-	<li>MONO_FIELD_LAYOUT_FIELD
-</li></li></ul>
-</td>
-
-
-<td>FieldMarshal</td><td>MONO_TABLE_FIELDMARSHAL</td><td>
-Array size: 
-MONO_FIELD_MARSHAL_SIZE
-<ul>
-	<li>MONO_FIELD_MARSHAL_PARENT
-	<li>MONO_FIELD_MARSHAL_NATIVE_TYPE
-</li></li></ul>
-</td>
-
-
-<td>FieldPtr</td><td>MONO_TABLE_FIELD_POINTER</td><td>
-Array size: 
-MONO_FIELD_POINTER_SIZE
-<ul>
-	<li>MONO_FIELD_POINTER_FIELD
-</li></ul>
-</td>
-
-
-<td>FieldRVA</td><td>MONO_TABLE_FIELDRVA</td><td>
-Array size: 
-MONO_FIELDRVA_SIZE
-<ul>
-	<li>MONO_FIELD_RVA_RVA
-	<li>MONO_FIELD_RVA_FIELD
-</li></li></ul>
-</td>
-
-
-<td>File</td><td>MONO_TABLE_FILE</td><td>
-Array size:  MONO_FILE_SIZE
-<ul>
-	<li>MONO_FILE_FLAGS
-	<li>MONO_FILE_NAME
-	<li>MONO_FILE_HASH_VALUE
-</li></li></li></ul>
-</td>
-
-
-<td>GenericParam</td><td>MONO_TABLE_GENERICPARAM</td><td>
-Array size: 
-MONO_GENERICPARAM_SIZE
-<ul>
-	<li>MONO_GENERICPARAM_NUMBER
-	<li>MONO_GENERICPARAM_FLAGS
-	<li>MONO_GENERICPARAM_OWNER
-	<li>MONO_GENERICPARAM_NAME
-</li></li></li></li></ul>
-</td>
-
-
-<td>GenericParamConstraint</td><td>MONO_TABLE_GENERICPARAMCONSTRAINT</td><td>Array
-size: MONO_GENERICPARAMCONSTRAINT_SIZE
-<ul>
-	<li>MONO_GENPARCONSTRAINT_GENERICPAR
-	<li>MONO_GENPARCONSTRAINT_CONSTRAINT
-</li></li></ul>
-</td>
-
-<tr>
-<td>ImplMap</td><td>MONO_TABLE_IMPLMAP</td><td>
-Array size: 
-MONO_IMPLMAP_SIZE
-<ul>
-	<li>MONO_IMPLMAP_FLAGS
-	<li>MONO_IMPLMAP_MEMBER
-	<li>MONO_IMPLMAP_NAME
-	<li>MONO_IMPLMAP_SCOPE
-</li></li></li></li></ul>
-</td>
-</tr>
-
-
-<td>InterfaceImpl</td><td>MONO_TABLE_INTERFACEIMPL</td><td>
-Array size: 
-	<li>MONO_INTERFACEIMPL_SIZE
-<ul>
-	<li>MONO_INTERFACEIMPL_CLASS
-	<li>MONO_INTERFACEIMPL_INTERFACE
-</li></li></ul>
-</li></td>
-
-
-
-<td>ManifestResource</td><td>MONO_TABLE_MANIFESTRESOURCE</td><td>Array
-size: MONO_MANIFESTRESOURCE_SIZE
-<ul>
-	<li>MONO_MANIFEST_OFFSET
-	<li>MONO_MANIFEST_FLAGS
-	<li>MONO_MANIFEST_NAME
-	<li>MONO_MANIFEST_IMPLEMENTATION
-</li></li></li></li></ul>
-</td>
-
-
-<tr>
-<td>MemberRef</td><td>MONO_TABLE_MEMBERREF</td><td>
-Array size: 
-MONO_MEMBERREF_SIZE
-<ul>
-	<li>MONO_MEMBERREF_CLASS
-	<li>MONO_MEMBERREF_NAME
-	<li>MONO_MEMBERREF_SIGNATURE
-</li></li></li></ul>
-</td>
-</tr>
-
-<td>MethodImpl</td><td>MONO_TABLE_METHODIMPL</td><td>
-Array size: 
-MONO_METHODIMPL_SIZE
-<ul>
-	<li>MONO_METHODIMPL_CLASS
-	<li>MONO_METHODIMPL_BODY
-	<li>MONO_METHODIMPL_DECLARATION
-</li></li></li></ul>
-</td>
-
-
-
-<td>MethodSpec</td><td>MONO_TABLE_METHODSPEC</td><td>
-Array size: 
-MONO_METHODSPEC_SIZE
-<ul>
-	<li>MONO_METHODSPEC_METHOD
-	<li>MONO_METHODSPEC_SIGNATURE
-</li></li></ul>
-</td>
-
-<tr>
-<td>MethodSemantics</td><td>MONO_TABLE_METHODSEMANTICS</td><td>Array
-size: MONO_METHOD_SEMA_SIZE
-<ul>
-	<li>MONO_METHOD_SEMA_SEMANTICS
-	<li>MONO_METHOD_SEMA_METHOD
-	<li>MONO_METHOD_SEMA_ASSOCIATION
-</li></li></li></ul>
-</td>
-</tr>
-
-<td>Moduleref</td><td>MONO_TABLE_MODULEREF</td><td>
-Array size: 
-MONO_MODULEREF_SIZE
-<ul>
-	<li>MONO_MODULEREF_NAME
-</li></ul>
-</td>
-
-
-<tr>
-<td>Module</td><td>MONO_TABLE_MODULE</td><td>
-Array size: 
-MONO_MODULE_SIZE
-<br />
-Columns:
-<ul>
-	<li>MONO_MODULE_GENERATION
-	<li>MONO_MODULE_NAME
-	<li>MONO_MODULE_MVID
-	<li>MONO_MODULE_ENC
-	<li>MONO_MODULE_ENCBASE
-</li></li></li></li></li></ul>
-</td>
-</tr>
-
-<td>TypeRef</td><td>MONO_TABLE_TYPEREF</td><td>
-Array size: 
-MONO_TYPEREF_SIZE
-<ul>
-	<li>MONO_TYPEREF_SCOPE
-	<li>MONO_TYPEREF_NAME
-	<li>MONO_TYPEREF_NAMESPACE
-</li></li></li></ul>
-</td>
-
-
-<tr>
-<td>MethodPtr</td><td>MONO_TABLE_METHOD_POINTER</td><td>
-Array size: 
-MONO_METHOD_POINTER_SIZE
-<ul>
-	<li>MONO_METHOD_POINTER_METHOD
-</li></ul>
-</td>
-</tr>
-
-<td>Method</td><td>MONO_TABLE_METHOD</td><td>
-Array size: 
-MONO_METHOD_SIZE
-<ul>
-	<li>MONO_METHOD_RVA
-	<li>MONO_METHOD_IMPLFLAGS
-	<li>MONO_METHOD_FLAGS
-	<li>MONO_METHOD_NAME
-	<li>MONO_METHOD_SIGNATURE
-	<li>MONO_METHOD_PARAMLIST
-</li></li></li></li></li></li></ul>
-</td>
-
-
-<tr>
-<td>NestedClass</td><td>MONO_TABLE_NESTEDCLASS</td><td>
-Array size: 
-MONO_NESTEDCLASS_SIZE
-<ul>
-	<li>MONO_NESTED_CLASS_NESTED
-	<li>MONO_NESTED_CLASS_ENCLOSING
-</li></li></ul>
-</td>
-</tr>
-
-<tr>
-<td>ParamPtr</td><td>MONO_TABLE_PARAM_POINTER</td><td>
-Array size: 
-MONO_PARAM_POINTER_SIZE
-<ul>
-	<li>MONO_PARAM_POINTER_PARAM
-</li></ul>
-</td>
-</tr>
-
-<td>Param</td><td>MONO_TABLE_PARAM</td><td>
-Array size:  MONO_PARAM_SIZE
-<ul>
-	<li>MONO_PARAM_FLAGS
-	<li>MONO_PARAM_SEQUENCE
-	<li>MONO_PARAM_NAME
-</li></li></li></ul>
-</td>
-
-
-<td>PropertyMap</td><td>MONO_TABLE_PROPERTYMAP</td><td>
-Array size: 
-MONO_PROPERTY_MAP_SIZE
-<ul>
-	<li>MONO_PROPERTY_MAP_PARENT
-	<li>MONO_PROPERTY_MAP_PROPERTY_LIST
-</li></li></ul>
-</td>
-
-
-<td>PropertyPtr</td><td>MONO_TABLE_PROPERTY_POINTER</td><td>Array
-size: MONO_PROPERTY_POINTER_SIZE
-<ul>
-	<li>MONO_PROPERTY_POINTER_PROPERTY
-</li></ul>
-</td>
-
-
-<td>Property</td><td>MONO_TABLE_PROPERTY</td><td>
-Array size: 
-MONO_PROPERTY_SIZE
-<ul>
-	<li>MONO_PROPERTY_FLAGS
-	<li>MONO_PROPERTY_NAME
-	<li>MONO_PROPERTY_TYPE
-</li></li></li></ul>
-</td>
-
-<tr>
-<td>StandaloneSig</td><td>MONO_TABLE_STANDALONESIG</td><td>
-Array size: 
-	<li>MONO_STAND_ALONE_SIGNATURE_SIZE
-<ul>
-	<li>MONO_STAND_ALONE_SIGNATURE
-</li></ul>
-</li></td>
-</tr>
-
-<tr>
-<td>TypeDef</td><td>MONO_TABLE_TYPEDEF</td><td>
-Array size: 
-MONO_TYPEDEF_SIZE
-<ul>
-	<li>MONO_TYPEDEF_FLAGS
-	<li>MONO_TYPEDEF_NAME
-	<li>MONO_TYPEDEF_NAMESPACE
-	<li>MONO_TYPEDEF_EXTENDS
-	<li>MONO_TYPEDEF_FIELD_LIST
-	<li>MONO_TYPEDEF_METHOD_LIST
-</li></li></li></li></li></li></ul>
-</td>
-</tr>
-
-<tr>
-<td>TypeSpec</td><td>MONO_TABLE_TYPESPEC</td><td>
-Array size: 
-MONO_TYPESPEC_SIZE
-<ul>
-	<li>MONO_TYPESPEC_SIGNATURE
-</li></ul>
-</td>
-</tr>
-
-	</table>
-	</center>
-
-	<p />Each table can contain zero or more rows, you must call the
-	<a href="#api:mono_metadata_table_rows">mono_metadata_table_rows</a>
-	to obtain the number of rows in a table, and then you can
-	extract individual row values by using
-	the <a href="#api:mono_metadata_decode_row">mono_metadata_decode_row</a>
-	or
-	the <a href="#api:mono_metadata_decode_row_col">mono_metadata_decode_row_col</a>.
-	When decoding rows you must provide an guint32 array large
-	enough to hold as many columns as the table contains.
-	
-	<p />The metadata tables are stored in the MonoImage, you obtain
-	a pointer to the MonoTableInfo by calling
-	the <a href="#api:mono_image_get_table_info">mono_image_get_table_info</a>
-	and then you can scan those tables, for example:
-
-	<pre class="prettyprint">
-	/*
-	 * Dumps a few fields from the AssemblyRef table
-	 */
-	void DumpAssemblyRefs (MonoImage *image)
-	{
-		/* Get a pointer to the AssemblyRef metadata table */
-		MonoTableInfo *t = mono_image_get_table_info (image, MONO_TABLE_ASSEMBLYREF);
-
-		/* Fetch the number of rows available in the table */
-		int rows = mono_table_info_get_rows (t);
-		int i;
-
-		/* For each row, print some of its values */
-		for (i = 0; i < rows; i++){
-			/* Space where we extract one row from the metadata table */
-			guint32 cols [MONO_ASSEMBLYREF_SIZE];
-
-			/* Extract the row into the array cols */
-			mono_metadata_decode_row (t, i, cols, MONO_ASSEMBLYREF_SIZE);
-
-			fprintf (output, "%d: Version=%d.%d.%d.%d\n\tName=%s\n", i + 1,
-                        	cols [MONO_ASSEMBLYREF_MAJOR_VERSION],
-                        	cols [MONO_ASSEMBLYREF_MINOR_VERSION],
-                        	cols [MONO_ASSEMBLYREF_BUILD_NUMBER],
-                        	cols [MONO_ASSEMBLYREF_REV_NUMBER],
-                        	mono_metadata_string_heap (image, cols [MONO_ASSEMBLYREF_NAME]));
-		}
-	}
-	</pre>
-
-	<p />The above program shows the following output when ran on
-	the C# compiler:
-
-	<pre>
-	1: Version=1.0.5000.0
-		Name=mscorlib
-	2: Version=1.0.5000.0
-		Name=System
-	3: Version=1.0.5000.0
-		Name=System.Xml
-	</pre>
-
-	<p />
-
-<h3>Metadata Tables API</h3>
-
-	<p />These are the APIs for dealing with tables:
-
- <a name="api:mono_image_get_table_info"></a>
- <div class="api">
-    <div class="api-entry">mono_image_get_table_info</div>
-
-    <div class="prototype">Prototype: mono_image_get_table_info</div>
-<p />
-
-</div> <a name="api:mono_image_get_table_rows"></a>
- <div class="api">
-    <div class="api-entry">mono_image_get_table_rows</div>
-
-    <div class="prototype">Prototype: mono_image_get_table_rows</div>
-<p />
-
-</div> <a name="api:mono_metadata_get_table"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_get_table</div>
-
-    <div class="prototype">Prototype: mono_metadata_get_table</div>
-<p />
-
-</div> <a name="api:mono_metadata_decode_row_col"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_decode_row_col</div>
-
-    <div class="prototype">guint32
-mono_metadata_decode_row_col (const MonoTableInfo *t, int idx, guint col)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>t:</i></dt><dd> table to extract information from.</dd><dt><i>idx:</i></dt><dd> index for row in table.</dd><dt><i>col:</i></dt><dd> column in the row.</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 This function returns the value of column <i>col</i> from the <i>idx</i>
-	 row in the table <i>t</i>.
-
-</div> <a name="api:mono_metadata_decode_row"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_decode_row</div>
-
-    <div class="prototype">void
-mono_metadata_decode_row (const MonoTableInfo *t, int idx, guint32 *res, int res_size)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>t:</i></dt><dd> table to extract information from.</dd><dt><i>idx:</i></dt><dd> index in table.</dd><dt><i>res:</i></dt><dd> array of <i>res_size</i> cols to store the results in</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 This decompresses the metadata element <i>idx</i> in table <i>t</i>
-	 into the guint32 <i>res</i> array that has res_size elements
-
-</div> <a name="api:mono_metadata_compute_size"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_compute_size</div>
-
-    <div class="prototype">Prototype: mono_metadata_compute_size</div>
-<p />
-
-</div> <a name="api:mono_metadata_custom_attrs_from_index"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_custom_attrs_from_index</div>
-
-    <div class="prototype">Prototype: mono_metadata_custom_attrs_from_index</div>
-<p />
-
-</div> <a name="api:mono_metadata_decode_signed_value"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_decode_signed_value</div>
-
-    <div class="prototype">gint32
-mono_metadata_decode_signed_value (const char *ptr, const char **rptr)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>ptr:</i></dt><dd> pointer to decode from</dd><dt><i>rptr:</i></dt><dd> the new position of the pointer</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the decoded value
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 This routine decompresses 32-bit signed values
-	 (not specified in the spec)
-	
-
-</div> <a name="api:mono_metadata_decode_value"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_decode_value</div>
-
-    <div class="prototype">guint32
-mono_metadata_decode_value (const char *_ptr, const char **rptr)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>ptr:</i></dt><dd> pointer to decode from</dd><dt><i>rptr:</i></dt><dd> the new position of the pointer</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the decoded value
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 This routine decompresses 32-bit values as specified in the "Blob and
-	 Signature" section (22.2)
-	
-
-</div> <a name="api:mono_metadata_encode_value"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_encode_value</div>
-
-    <div class="prototype">Prototype: mono_metadata_encode_value</div>
-<p />
-
-	
-</div><h2>Metadata access API</h2>
-
-	<p />This is the low-level API for accessing the metadata
-	images.
-	
- <a name="api:mono_cli_rva_image_map"></a>
- <div class="api">
-    <div class="api-entry">mono_cli_rva_image_map</div>
-
-    <div class="prototype">Prototype: mono_cli_rva_image_map</div>
-<p />
-
-</div> <a name="api:mono_pe_file_open"></a>
- <div class="api">
-    <div class="api-entry">mono_pe_file_open</div>
-
-    <div class="prototype">MonoImage*
-mono_pe_file_open (const char *fname, MonoImageOpenStatus *status)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>fname:</i></dt><dd> filename that points to the module we want to open</dd><dt><i>status:</i></dt><dd> An error condition is returned in this field</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  An open image of type %MonoImage or NULL on error.  if
-
-	 NULL, then check the value of <i>status</i> for details on the error.
-	 This variant for mono_image_open DOES NOT SET UP CLI METADATA.
-	 It's just a PE file loader, used for FileVersionInfo.  It also does
-	 not use the image cache.</blockquote>
-
-</div> <a name="api:mono_metadata_events_from_typedef"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_events_from_typedef</div>
-
-    <div class="prototype">Prototype: mono_metadata_events_from_typedef</div>
-<p />
-
-</div> <a name="api:mono_metadata_field_info"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_field_info</div>
-
-    <div class="prototype">Prototype: mono_metadata_field_info</div>
-<p />
-
-</div> <a name="api:mono_metadata_free_array"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_free_array</div>
-
-    <div class="prototype">Prototype: mono_metadata_free_array</div>
-<p />
-
-</div> <a name="api:mono_metadata_free_marshal_spec"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_free_marshal_spec</div>
-
-    <div class="prototype">Prototype: mono_metadata_free_marshal_spec</div>
-<p />
-
-</div> <a name="api:mono_metadata_free_mh"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_free_mh</div>
-
-    <div class="prototype">Prototype: mono_metadata_free_mh</div>
-<p />
-
-</div> <a name="api:mono_metadata_free_type"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_free_type</div>
-
-    <div class="prototype">Prototype: mono_metadata_free_type</div>
-<p />
-
-</div> <a name="api:mono_metadata_get_constant_index"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_get_constant_index</div>
-
-    <div class="prototype">Prototype: mono_metadata_get_constant_index</div>
-<p />
-
-</div> <a name="api:mono_metadata_get_marshal_info"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_get_marshal_info</div>
-
-    <div class="prototype">Prototype: mono_metadata_get_marshal_info</div>
-<p />
-
-</div> <a name="api:mono_metadata_implmap_from_method"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_implmap_from_method</div>
-
-    <div class="prototype">Prototype: mono_metadata_implmap_from_method</div>
-<p />
-
-</div> <a name="api:mono_metadata_interfaces_from_typedef"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_interfaces_from_typedef</div>
-
-    <div class="prototype">Prototype: mono_metadata_interfaces_from_typedef</div>
-<p />
-
-</div> <a name="api:mono_metadata_locate"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_locate</div>
-
-    <div class="prototype">const char *
-mono_metadata_locate (MonoImage *meta, int table, int idx)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>meta:</i></dt><dd> metadata context</dd><dt><i>table:</i></dt><dd> table code.</dd><dt><i>idx:</i></dt><dd> index of element to retrieve from <i>table</i>.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a pointer to the <i>idx</i> element in the metadata table
-
-	 whose code is <i>table</i>.</blockquote>
-
-</div> <a name="api:mono_metadata_locate_token"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_locate_token</div>
-
-    <div class="prototype">const char *
-mono_metadata_locate_token (MonoImage *meta, guint32 token)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>meta:</i></dt><dd> metadata context</dd><dt><i>token:</i></dt><dd> metadata token</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a pointer to the data in the metadata represented by the
-
-	 token <i>token</i>.</blockquote>
-
-</div> <a name="api:mono_metadata_methods_from_event"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_methods_from_event</div>
-
-    <div class="prototype">Prototype: mono_metadata_methods_from_event</div>
-<p />
-
-</div> <a name="api:mono_metadata_methods_from_property"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_methods_from_property</div>
-
-    <div class="prototype">Prototype: mono_metadata_methods_from_property</div>
-<p />
-
-</div> <a name="api:mono_metadata_nested_in_typedef"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_nested_in_typedef</div>
-
-    <div class="prototype">Prototype: mono_metadata_nested_in_typedef</div>
-<p />
-
-</div> <a name="api:mono_metadata_nesting_typedef"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_nesting_typedef</div>
-
-    <div class="prototype">Prototype: mono_metadata_nesting_typedef</div>
-<p />
-
-</div> <a name="api:mono_metadata_packing_from_typedef"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_packing_from_typedef</div>
-
-    <div class="prototype">Prototype: mono_metadata_packing_from_typedef</div>
-<p />
-
-</div> <a name="api:mono_metadata_properties_from_typedef"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_properties_from_typedef</div>
-
-    <div class="prototype">Prototype: mono_metadata_properties_from_typedef</div>
-<p />
-
-</div> <a name="api:mono_metadata_token_from_dor"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_token_from_dor</div>
-
-    <div class="prototype">Prototype: mono_metadata_token_from_dor</div>
-<p />
-
-</div> <a name="api:mono_metadata_typedef_from_field"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_typedef_from_field</div>
-
-    <div class="prototype">guint32
-mono_metadata_typedef_from_field (MonoImage *meta, guint32 index)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>meta:</i></dt><dd> metadata context</dd><dt><i>index:</i></dt><dd> FieldDef token</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the 1-based index into the TypeDef table of the type that
-
-	 declared the field described by <i>index</i>, or 0 if not found.</blockquote>
-
-</div> <a name="api:mono_metadata_typedef_from_method"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_typedef_from_method</div>
-
-    <div class="prototype">Prototype: mono_metadata_typedef_from_method</div>
-<p />
-
-</div> <a name="api:mono_metadata_type_equal"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_type_equal</div>
-
-    <div class="prototype">Prototype: mono_metadata_type_equal</div>
-<p />
-
-</div> <a name="api:mono_metadata_type_hash"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_type_hash</div>
-
-    <div class="prototype">Prototype: mono_metadata_type_hash</div>
-<p />
-
-</div> <a name="api:mono_metadata_declsec_from_index"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_declsec_from_index</div>
-
-    <div class="prototype">Prototype: mono_metadata_declsec_from_index</div>
-<p />
-
-</div> <a name="api:mono_metadata_free_method_signature"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_free_method_signature</div>
-
-    <div class="prototype">Prototype: mono_metadata_free_method_signature</div>
-<p />
-
-
-</div><h3>Retrieving Objects from Tokens</h3>
-
- <a name="api:mono_metadata_parse_custom_mod"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_parse_custom_mod</div>
-
-    <div class="prototype">Prototype: mono_metadata_parse_custom_mod</div>
-<p />
-
-</div> <a name="api:mono_metadata_parse_field_type"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_parse_field_type</div>
-
-    <div class="prototype">MonoType*
-mono_metadata_parse_field_type (MonoImage *m, short field_flags, const char *ptr, const char **rptr)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>m:</i></dt><dd> metadata context to extract information from</dd><dt><i>ptr:</i></dt><dd> pointer to the field signature</dd><dt><i>rptr:</i></dt><dd> pointer updated to match the end of the decoded stream</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  The MonoType that was extracted from <i>ptr</i>.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Parses the field signature, and returns the type information for it. 
-	
-
-</div> <a name="api:mono_metadata_parse_marshal_spec"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_parse_marshal_spec</div>
-
-    <div class="prototype">Prototype: mono_metadata_parse_marshal_spec</div>
-<p />
-
-</div> <a name="api:mono_metadata_parse_method_signature_full"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_parse_method_signature_full</div>
-
-    <div class="prototype">Prototype: mono_metadata_parse_method_signature_full</div>
-<p />
-
-</div> <a name="api:mono_metadata_parse_method_signature"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_parse_method_signature</div>
-
-    <div class="prototype">Prototype: mono_metadata_parse_method_signature</div>
-<p />
-
-</div> <a name="api:mono_metadata_parse_mh_full"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_parse_mh_full</div>
-
-    <div class="prototype">Prototype: mono_metadata_parse_mh_full</div>
-<p />
-
-</div> <a name="api:mono_metadata_parse_mh"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_parse_mh</div>
-
-    <div class="prototype">Prototype: mono_metadata_parse_mh</div>
-<p />
-
-</div> <a name="api:mono_metadata_parse_param"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_parse_param</div>
-
-    <div class="prototype">MonoType*
-mono_metadata_parse_param (MonoImage *m, const char *ptr, const char **rptr)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>m:</i></dt><dd> metadata context to extract information from</dd><dt><i>ptr:</i></dt><dd> pointer to the param signature</dd><dt><i>rptr:</i></dt><dd> pointer updated to match the end of the decoded stream</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  The MonoType that was extracted from <i>ptr</i>.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Parses the param signature, and returns the type information for it. 
-	
-
-</div> <a name="api:mono_metadata_parse_signature"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_parse_signature</div>
-
-    <div class="prototype">Prototype: mono_metadata_parse_signature</div>
-<p />
-
-</div> <a name="api:mono_metadata_parse_typedef_or_ref"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_parse_typedef_or_ref</div>
-
-    <div class="prototype">Prototype: mono_metadata_parse_typedef_or_ref</div>
-<p />
-
-</div> <a name="api:mono_metadata_parse_type_full"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_parse_type_full</div>
-
-    <div class="prototype">Prototype: mono_metadata_parse_type_full</div>
-<p />
-
-</div> <a name="api:mono_metadata_parse_type"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_parse_type</div>
-
-    <div class="prototype">static MonoType*
-mono_metadata_parse_type_internal (MonoImage *m, MonoGenericContainer *container, MonoParseTypeMode mode,
-								   short opt_attrs, gboolean transient, const char *ptr, const char **rptr)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>m:</i></dt><dd> metadata context</dd><dt><i>mode:</i></dt><dd> king of type that may be found at <i>ptr</i></dd><dt><i>opt_attrs:</i></dt><dd> optional attributes to store in the returned type</dd><dt><i>ptr:</i></dt><dd> pointer to the type representation</dd><dt><i>rptr:</i></dt><dd> pointer updated to match the end of the decoded stream</dd><dt><i>transient:</i></dt><dd> whenever to allocate the result from the heap or from a mempool</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a <i>MonoType</i> structure representing the decoded type.
-</blockquote>
-<b>Remarks</b>
-<p />	 <p />
-
-	 Decode a compressed type description found at <i>ptr</i> in <i>m</i>.
-	 <i>mode</i> can be one of MONO_PARSE_MOD_TYPE, MONO_PARSE_PARAM, MONO_PARSE_RET,
-	 MONO_PARSE_FIELD, MONO_PARSE_LOCAL, MONO_PARSE_TYPE.
-	 This function can be used to decode type descriptions in method signatures,
-	 field signatures, locals signatures etc.
-	
-	 To parse a generic type, `generic_container' points to the current class'es
-	 (the `generic_container' field in the MonoClass) or the current generic method's
-	 (stored in image->property_hash) generic container.
-	 When we encounter any MONO_TYPE_VAR or MONO_TYPE_MVAR's, they're looked up in
-	 this MonoGenericContainer.
-	
-	 LOCKING: Acquires the loader lock.
-	
-
-
-</div><h2>Generics Support</h2>
-
- <a name="api:mono_metadata_generic_class_is_valuetype"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_generic_class_is_valuetype</div>
-
-    <div class="prototype">Prototype: mono_metadata_generic_class_is_valuetype</div>
-<p />
-
-</div> <a name="api:mono_metadata_inflate_generic_inst"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_inflate_generic_inst</div>
-
-    <div class="prototype">Prototype: mono_metadata_inflate_generic_inst</div>
-<p />
-
-</div> <a name="api:mono_metadata_load_generic_params"></a>
- <div class="api">
-    <div class="api-entry">mono_metadata_load_generic_params</div>
-
-    <div class="prototype">Prototype: mono_metadata_load_generic_params</div>
-<p />
-
-
-</div><h2>Tokens</h2>
-
- <a name="api:mono_ldtoken"></a>
- <div class="api">
-    <div class="api-entry">mono_ldtoken</div>
-
-    <div class="prototype">Prototype: mono_ldtoken</div>
-<p />
-
-</div> <a name="api:mono_ldstr"></a>
- <div class="api">
-    <div class="api-entry">mono_ldstr</div>
-
-    <div class="prototype">MonoString*
-mono_ldstr (MonoDomain *domain, MonoImage *image, guint32 idx)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>domain:</i></dt><dd> the domain where the string will be used.</dd><dt><i>image:</i></dt><dd> a metadata context</dd><dt><i>idx:</i></dt><dd> index into the user string table.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a loaded string from the <i>image</i>/<i>idx</i> combination.
-</blockquote>
-<b>Remarks</b>
-<p />	 <p />
-
-	 Implementation for the ldstr opcode.
-
-</div> <a name="api:mono_exception_from_token"></a>
- <div class="api">
-    <div class="api-entry">mono_exception_from_token</div>
-
-    <div class="prototype">MonoException*
-mono_exception_from_token (MonoImage *image, guint32 token)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>image:</i></dt><dd> the Mono image where to look for the class</dd><dt><i>token:</i></dt><dd> The type token of the class</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the initialized exception instance.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Creates an exception of the type given by <i>token</i>.
-	
-
-
-</div><h2>OpCodes</h2>
-
- <a name="api:mono_opcode_name"></a>
- <div class="api">
-    <div class="api-entry">mono_opcode_name</div>
-
-    <div class="prototype">Prototype: mono_opcode_name</div>
-<p />
-
-</div></body>
-</html>
-</span>
\ No newline at end of file
diff --git a/docs/deploy/mono-api-methods.html b/docs/deploy/mono-api-methods.html
deleted file mode 100644
index d8abf6e..0000000
--- a/docs/deploy/mono-api-methods.html
+++ /dev/null
@@ -1,578 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><span>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-   <title>mono-api-methods.html</title>
-   <style type="text/css">
-
-
-   h3 { 
-       font-size: 18px;
-       padding-bottom: 4pt;
-       border-bottom: 2px solid #dddddd;
-   }
-       
-   .api {
-     border: 1px solid;
-     padding: 10pt;
-     margin: 10pt;
-   } 
-
-   .api-entry { 
-       border-bottom: none;
-       font-size: 18px;
-   }
-
-   .prototype {
-     border: 1px solid;
-     background-color: #f2f2f2;
-     padding: 5pt;
-     margin-top: 5pt;
-     margin-bottom: 5pt;  
-   } 
-
-   .header {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-    
-   .code {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-   
-
-</style>
-</head>
-<body>
-<h3>Methods</h3>
-
-<h3>Invoking Methods</h3>
-
- <a name="api:mono_runtime_invoke"></a>
- <div class="api">
-    <div class="api-entry">mono_runtime_invoke</div>
-
-    <div class="prototype">MonoObject*
-mono_runtime_invoke (MonoMethod *method, void *obj, void **params, MonoObject **exc)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>method:</i></dt><dd> method to invoke</dd><dt><i>obJ:</i></dt><dd> object instance</dd><dt><i>params:</i></dt><dd> arguments to the method</dd><dt><i>exc:</i></dt><dd> exception information.</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Invokes the method represented by <i>method</i> on the object <i>obj</i>.
-	
-	 obj is the 'this' pointer, it should be NULL for static
-	 methods, a MonoObject* for object instances and a pointer to
-	 the value type for value types.
-	
-	 The params array contains the arguments to the method with the
-	 same convention: MonoObject* pointers for object instances and
-	 pointers to the value type otherwise. 
-	
-<p />
-	 From unmanaged code you'll usually use the
-	 mono_runtime_invoke() variant.
-	
-	 Note that this function doesn't handle virtual methods for
-	 you, it will exec the exact method you pass: we still need to
-	 expose a function to lookup the derived class implementation
-	 of a virtual method (there are examples of this in the code,
-	 though).
-	
-<p />
-	 You can pass NULL as the exc argument if you don't want to
-	 catch exceptions, otherwise, *exc will be set to the exception
-	 thrown, if any.  if an exception is thrown, you can't use the
-	 MonoObject* result from the function.
-	
-<p />
-	 If the method returns a value type, it is boxed in an object
-	 reference.
-
-
-If you want to invoke generic methods, you must call the method on the
-"inflated" class, which you can obtain from the
-<tt>mono_object_get_class()</tt>
-
-<div class="code">
-MonoClass *clazz;
-MonoMethod *method;
-
-clazz = mono_object_get_class (obj);
-
-/*
- * If there are more Add methods declared, you
- * may use mono_method_desc_search_in_class (clazz, ":Add(T)"),
- * you must substitute ":Add(T)" with the correct type, for example
- * for List<int>, you would use ":Add(int)".
- */
-method = mono_class_get_method_from_name (clazz, "Add", 1);
-mono_runtime_invoke (method, obj, args, &exception);
-</div>
-
-
-</div> <a name="api:mono_runtime_invoke_array"></a>
- <div class="api">
-    <div class="api-entry">mono_runtime_invoke_array</div>
-
-    <div class="prototype">MonoObject*
-mono_runtime_invoke_array (MonoMethod *method, void *obj, MonoArray *params,
-			   MonoObject **exc)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>method:</i></dt><dd> method to invoke</dd><dt><i>obJ:</i></dt><dd> object instance</dd><dt><i>params:</i></dt><dd> arguments to the method</dd><dt><i>exc:</i></dt><dd> exception information.</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Invokes the method represented by <i>method</i> on the object <i>obj</i>.
-	
-	 obj is the 'this' pointer, it should be NULL for static
-	 methods, a MonoObject* for object instances and a pointer to
-	 the value type for value types.
-	
-	 The params array contains the arguments to the method with the
-	 same convention: MonoObject* pointers for object instances and
-	 pointers to the value type otherwise. The _invoke_array
-	 variant takes a C# object[] as the params argument (MonoArray
-	 *params): in this case the value types are boxed inside the
-	 respective reference representation.
-	
-<p />
-	 From unmanaged code you'll usually use the
-	 mono_runtime_invoke() variant.
-	
-	 Note that this function doesn't handle virtual methods for
-	 you, it will exec the exact method you pass: we still need to
-	 expose a function to lookup the derived class implementation
-	 of a virtual method (there are examples of this in the code,
-	 though).
-	
-<p />
-	 You can pass NULL as the exc argument if you don't want to
-	 catch exceptions, otherwise, *exc will be set to the exception
-	 thrown, if any.  if an exception is thrown, you can't use the
-	 MonoObject* result from the function.
-	
-<p />
-	 If the method returns a value type, it is boxed in an object
-	 reference.
-
-</div> <a name="api:mono_runtime_delegate_invoke"></a>
- <div class="api">
-    <div class="api-entry">mono_runtime_delegate_invoke</div>
-
-    <div class="prototype">MonoObject*
-mono_runtime_delegate_invoke (MonoObject *delegate, void **params, MonoObject **exc)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>delegate:</i></dt><dd> pointer to a delegate object.</dd><dt><i>params:</i></dt><dd> parameters for the delegate.</dd><dt><i>exc:</i></dt><dd> Pointer to the exception result.</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Invokes the delegate method <i>delegate</i> with the parameters provided.
-	
-	 You can pass NULL as the exc argument if you don't want to
-	 catch exceptions, otherwise, *exc will be set to the exception
-	 thrown, if any.  if an exception is thrown, you can't use the
-	 MonoObject* result from the function.
-
-
-</div> <a name="api:mono_method_body_get_object"></a>
- <div class="api">
-    <div class="api-entry">mono_method_body_get_object</div>
-
-    <div class="prototype">Prototype: mono_method_body_get_object</div>
-<p />
-
-</div> <a name="api:mono_method_desc_free"></a>
- <div class="api">
-    <div class="api-entry">mono_method_desc_free</div>
-
-    <div class="prototype">void
-mono_method_desc_free (MonoMethodDesc *desc)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>desc:</i></dt><dd> method description to be released</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Releases the MonoMethodDesc object <i>desc</i>.
-
-</div> <a name="api:mono_method_desc_from_method"></a>
- <div class="api">
-    <div class="api-entry">mono_method_desc_from_method</div>
-
-    <div class="prototype">Prototype: mono_method_desc_from_method</div>
-<p />
-
-</div> <a name="api:mono_method_desc_full_match"></a>
- <div class="api">
-    <div class="api-entry">mono_method_desc_full_match</div>
-
-    <div class="prototype">Prototype: mono_method_desc_full_match</div>
-<p />
-
-</div> <a name="api:mono_method_desc_match"></a>
- <div class="api">
-    <div class="api-entry">mono_method_desc_match</div>
-
-    <div class="prototype">Prototype: mono_method_desc_match</div>
-<p />
-
-</div> <a name="api:mono_method_desc_new"></a>
- <div class="api">
-    <div class="api-entry">mono_method_desc_new</div>
-
-    <div class="prototype">MonoMethodDesc*
-mono_method_desc_new (const char *name, gboolean include_namespace)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>name:</i></dt><dd> the method name.</dd><dt><i>include_namespace:</i></dt><dd> whether the name includes a namespace or not.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a parsed representation of the method description.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Creates a method description for <i>name</i>, which conforms to the following
-	 specification:
-	
-	 [namespace.]classname:methodname[(args...)]
-	
-	 in all the loaded assemblies.
-	
-	 Both classname and methodname can contain '*' which matches anything.
-	
-
-</div> <a name="api:mono_method_desc_search_in_class"></a>
- <div class="api">
-    <div class="api-entry">mono_method_desc_search_in_class</div>
-
-    <div class="prototype">Prototype: mono_method_desc_search_in_class</div>
-<p />
-
-</div> <a name="api:mono_method_desc_search_in_image"></a>
- <div class="api">
-    <div class="api-entry">mono_method_desc_search_in_image</div>
-
-    <div class="prototype">Prototype: mono_method_desc_search_in_image</div>
-<p />
-
-</div> <a name="api:mono_method_full_name"></a>
- <div class="api">
-    <div class="api-entry">mono_method_full_name</div>
-
-    <div class="prototype">Prototype: mono_method_full_name</div>
-<p />
-
-</div> <a name="api:mono_method_get_class"></a>
- <div class="api">
-    <div class="api-entry">mono_method_get_class</div>
-
-    <div class="prototype">Prototype: mono_method_get_class</div>
-<p />
-
-</div> <a name="api:mono_method_get_flags"></a>
- <div class="api">
-    <div class="api-entry">mono_method_get_flags</div>
-
-    <div class="prototype">Prototype: mono_method_get_flags</div>
-<p />
-
-</div> <a name="api:mono_method_get_last_managed"></a>
- <div class="api">
-    <div class="api-entry">mono_method_get_last_managed</div>
-
-    <div class="prototype">Prototype: mono_method_get_last_managed</div>
-<p />
-
-</div> <a name="api:mono_method_get_marshal_info"></a>
- <div class="api">
-    <div class="api-entry">mono_method_get_marshal_info</div>
-
-    <div class="prototype">Prototype: mono_method_get_marshal_info</div>
-<p />
-
-</div> <a name="api:mono_method_get_name"></a>
- <div class="api">
-    <div class="api-entry">mono_method_get_name</div>
-
-    <div class="prototype">Prototype: mono_method_get_name</div>
-<p />
-
-</div> <a name="api:mono_method_get_object"></a>
- <div class="api">
-    <div class="api-entry">mono_method_get_object</div>
-
-    <div class="prototype">Prototype: mono_method_get_object</div>
-<p />
-
-</div> <a name="api:mono_method_get_param_names"></a>
- <div class="api">
-    <div class="api-entry">mono_method_get_param_names</div>
-
-    <div class="prototype">Prototype: mono_method_get_param_names</div>
-<p />
-
-</div> <a name="api:mono_method_get_param_token"></a>
- <div class="api">
-    <div class="api-entry">mono_method_get_param_token</div>
-
-    <div class="prototype">Prototype: mono_method_get_param_token</div>
-<p />
-
-</div> <a name="api:mono_method_get_signature"></a>
- <div class="api">
-    <div class="api-entry">mono_method_get_signature</div>
-
-    <div class="prototype">Prototype: mono_method_get_signature</div>
-<p />
-
-</div> <a name="api:mono_method_get_index"></a>
- <div class="api">
-    <div class="api-entry">mono_method_get_index</div>
-
-    <div class="prototype">Prototype: mono_method_get_index</div>
-<p />
-
-</div> <a name="api:mono_method_get_signature_full"></a>
- <div class="api">
-    <div class="api-entry">mono_method_get_signature_full</div>
-
-    <div class="prototype">Prototype: mono_method_get_signature_full</div>
-<p />
-
-</div> <a name="api:mono_method_get_token"></a>
- <div class="api">
-    <div class="api-entry">mono_method_get_token</div>
-
-    <div class="prototype">Prototype: mono_method_get_token</div>
-<p />
-
-</div> <a name="api:mono_method_has_marshal_info"></a>
- <div class="api">
-    <div class="api-entry">mono_method_has_marshal_info</div>
-
-    <div class="prototype">Prototype: mono_method_has_marshal_info</div>
-<p />
-
-</div> <a name="api:mono_method_verify"></a>
- <div class="api">
-    <div class="api-entry">mono_method_verify</div>
-
-    <div class="prototype">Prototype: mono_method_verify</div>
-<p />
-
-
-</div><h3>Method Signatures</h3>
-
- <a name="api:mono_method_signature"></a>
- <div class="api">
-    <div class="api-entry">mono_method_signature</div>
-
-    <div class="prototype">MonoMethodSignature*
-mono_method_signature (MonoMethod *m)
-
-</div>
-<p />
-<b>Remarks</b>
-<p />	 
-	 Return the signature of the method M. On failure, returns NULL.
-
-</div> <a name="api:mono_signature_explicit_this"></a>
- <div class="api">
-    <div class="api-entry">mono_signature_explicit_this</div>
-
-    <div class="prototype">gboolean
-mono_signature_explicit_this (MonoMethodSignature *sig)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>sig:</i></dt><dd> the method signature inspected</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  <i>TRUE</i> if this the method signature <i>sig</i> has an explicit
-
-	 instance argument. <i>FALSE</i> otherwise.</blockquote>
-
-</div> <a name="api:mono_signature_get_call_conv"></a>
- <div class="api">
-    <div class="api-entry">mono_signature_get_call_conv</div>
-
-    <div class="prototype">guint32
-mono_signature_get_call_conv (MonoMethodSignature *sig)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>sig:</i></dt><dd> the method signature inspected</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the call convention of the method signature <i>sig</i>.
-</blockquote>
-
-</div> <a name="api:mono_signature_get_desc"></a>
- <div class="api">
-    <div class="api-entry">mono_signature_get_desc</div>
-
-    <div class="prototype">Prototype: mono_signature_get_desc</div>
-<p />
-
-</div> <a name="api:mono_signature_get_param_count"></a>
- <div class="api">
-    <div class="api-entry">mono_signature_get_param_count</div>
-
-    <div class="prototype">guint32
-mono_signature_get_param_count (MonoMethodSignature *sig)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>sig:</i></dt><dd> the method signature inspected</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the number of parameters in the method signature <i>sig</i>.
-</blockquote>
-
-</div> <a name="api:mono_signature_get_params"></a>
- <div class="api">
-    <div class="api-entry">mono_signature_get_params</div>
-
-    <div class="prototype">MonoType*
-mono_signature_get_params (MonoMethodSignature *sig, gpointer *iter)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>sig:</i></dt><dd> the method signature inspected</dd><dt><i>iter:</i></dt><dd> pointer to an iterator</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the next parameter type of the method signature <i>sig</i>,
-
-	 <i>NULL</i> when finished.</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Iterates over the parameters for the method signature <i>sig</i>.
-	 A void* pointer must be initualized to <i>NULL</i> to start the iteration
-	 and it's address is passed to this function repeteadly until it returns
-	 <i>NULL</i>.
-	
-
-</div> <a name="api:mono_signature_get_return_type"></a>
- <div class="api">
-    <div class="api-entry">mono_signature_get_return_type</div>
-
-    <div class="prototype">MonoType*
-mono_signature_get_return_type (MonoMethodSignature *sig)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>sig:</i></dt><dd> the method signature inspected</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the return type of the method signature <i>sig</i>
-</blockquote>
-
-</div> <a name="api:mono_signature_hash"></a>
- <div class="api">
-    <div class="api-entry">mono_signature_hash</div>
-
-    <div class="prototype">Prototype: mono_signature_hash</div>
-<p />
-
-</div> <a name="api:mono_signature_is_instance"></a>
- <div class="api">
-    <div class="api-entry">mono_signature_is_instance</div>
-
-    <div class="prototype">gboolean
-mono_signature_is_instance (MonoMethodSignature *sig)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>sig:</i></dt><dd> the method signature inspected</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  <i>TRUE</i> if this the method signature <i>sig</i> has an implicit
-
-	 first instance argument. <i>FALSE</i> otherwise.</blockquote>
-
-</div> <a name="api:mono_signature_vararg_start"></a>
- <div class="api">
-    <div class="api-entry">mono_signature_vararg_start</div>
-
-    <div class="prototype">int
-mono_signature_vararg_start (MonoMethodSignature *sig)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>sig:</i></dt><dd> the method signature inspected</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the number of the first vararg parameter in the
-
-	 method signature <i>sig</i>. -1 if this is not a vararg signature.</blockquote>
-
-</div> <a name="api:mono_param_get_objects"></a>
- <div class="api">
-    <div class="api-entry">mono_param_get_objects</div>
-
-    <div class="prototype">Prototype: mono_param_get_objects</div>
-<p />
-
-</div> <a name="api:mono_get_method_full"></a>
- <div class="api">
-    <div class="api-entry">mono_get_method_full</div>
-
-    <div class="prototype">Prototype: mono_get_method_full</div>
-<p />
-
-</div> <a name="api:mono_get_method"></a>
- <div class="api">
-    <div class="api-entry">mono_get_method</div>
-
-    <div class="prototype">Prototype: mono_get_method</div>
-<p />
-
-
-</div><h3>Methods Header Operations</h3>
-
- <a name="api:mono_method_get_header"></a>
- <div class="api">
-    <div class="api-entry">mono_method_get_header</div>
-
-    <div class="prototype">Prototype: mono_method_get_header</div>
-<p />
-
-</div> <a name="api:mono_method_header_get_clauses"></a>
- <div class="api">
-    <div class="api-entry">mono_method_header_get_clauses</div>
-
-    <div class="prototype">Prototype: mono_method_header_get_clauses</div>
-<p />
-
-</div> <a name="api:mono_method_header_get_code"></a>
- <div class="api">
-    <div class="api-entry">mono_method_header_get_code</div>
-
-    <div class="prototype">Prototype: mono_method_header_get_code</div>
-<p />
-
-</div> <a name="api:mono_method_header_get_locals"></a>
- <div class="api">
-    <div class="api-entry">mono_method_header_get_locals</div>
-
-    <div class="prototype">Prototype: mono_method_header_get_locals</div>
-<p />
-
-</div></body>
-</html>
-</span>
\ No newline at end of file
diff --git a/docs/deploy/mono-api-object.html b/docs/deploy/mono-api-object.html
deleted file mode 100644
index 51cdd0d..0000000
--- a/docs/deploy/mono-api-object.html
+++ /dev/null
@@ -1,1134 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><span>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-   <title>mono-api-object.html</title>
-   <style type="text/css">
-
-
-   h3 { 
-       font-size: 18px;
-       padding-bottom: 4pt;
-       border-bottom: 2px solid #dddddd;
-   }
-       
-   .api {
-     border: 1px solid;
-     padding: 10pt;
-     margin: 10pt;
-   } 
-
-   .api-entry { 
-       border-bottom: none;
-       font-size: 18px;
-   }
-
-   .prototype {
-     border: 1px solid;
-     background-color: #f2f2f2;
-     padding: 5pt;
-     margin-top: 5pt;
-     margin-bottom: 5pt;  
-   } 
-
-   .header {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-    
-   .code {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-   
-
-</style>
-</head>
-<body>
-<h1>Object API</h1>
-
-	<p />The object API deals with all the operations shared by
-	<a href="#objects">objects</a>, <a href="#valuetypes">value
-	types</a>, <a href="#arrays">arrays</a>.
-
-	<p />The object API has methods for accessing <a href="#fields">fields</a>, <a href="#properties">properties</a>, <a href="#events">events</a>, <a href="#delegates">delegates</a>.
-
-	<p />There are some advanced uses that are useful to document
-	here dealing with <a href="#remote">remote fields</a>.
-	
-<h2>Synopsis</h2>
-
-<div class="header">
-#include <metadata/object.h>
-
-typedef struct MonoVTable MonoVTable;
-typedef struct _MonoThreadsSync MonoThreadsSync;
-
-typedef struct {
-	MonoVTable *vtable;
-	MonoThreadsSync *synchronisation;
-} MonoObject;
-
-typedef struct {
-	guint32 length;
-	guint32 lower_bound;
-} MonoArrayBounds;
-
-typedef struct {
-	MonoObject obj;
-	/* bounds is NULL for szarrays */
-	MonoArrayBounds *bounds;
-	/* total number of elements of the array */
-	guint32 max_length; 
-	/* we use double to ensure proper alignment on platforms that need it */
-	double vector [MONO_ZERO_LEN_ARRAY];
-} MonoArray;
-
-MonoObject* <a href="#api:mono_object_new">mono_object_new</a>                (MonoDomain *domain, 
-                                            MonoClass *klass);
-            <a href="#api:mono_object_new_alloc_specific"></a>                               
-            <a href="#api:mono_object_new_fast"></a>                               
-MonoObject* <a href="#api:mono_object_new_from_token">mono_object_new_from_token</a>      (MonoDomain *domain, 
-                                            MonoImage *image, 
-                                            guint32 token);
-MonoObject* <a href="#api:mono_object_new_specific">mono_object_new_specific</a>       (MonoVTable *vtable);
-MonoObject* <a href="#api:mono_object_clone">mono_object_clone</a>              (MonoObject *obj);
-MonoClass*  <a href="#api:mono_object_get_class">mono_object_get_class</a>          (MonoObject *obj);
-MonoDomain* <a href="#api:mono_object_get_domain">mono_object_get_domain</a>         (MonoObject *obj);
-MonoMethod* <a href="#api:mono_object_get_virtual_method">mono_object_get_virtual_method</a> (MonoObject *obj, 
-                                            MonoMethod *method);
-            <a href="#api:mono_object_isinst_mbyref"></a>                               
-MonoObject* <a href="#api:mono_object_isinst">mono_object_isinst</a>             (MonoObject *obj, 
-                                            MonoClass *klass);
-gpointer    <a href="#api:mono_object_unbox">mono_object_unbox</a>              (MonoObject *obj);
-MonoObject* <a href="#api:mono_object_castclass_mbyref">mono_object_castclass_mbyref</a>   (MonoObject *obj, 
-                                            MonoClass *klass);
-            <a href="#api:mono_object_is_alive"></a>                               
-guint       <a href="#api:mono_object_get_size">mono_object_get_size</a>           (MonoObject* o);
-MonoObject* <a href="#api:mono_value_box">mono_value_box</a>                 (MonoDomain *domain, 
-                                            MonoClass *class, 
-                                            gpointer value);
-            <a href="#api:mono_value_copy"></a>                               
-            <a href="#api:mono_value_copy_array"></a>                               
-MonoArray*  <a href="#api:mono_array_new">mono_array_new</a>                 (MonoDomain *domain, 
-                                            MonoClass *eclass, 
-                                            uintptr_t n);
-MonoArray*  <a href="#api:mono_array_new_full">mono_array_new_full</a>            (MonoDomain *domain, 
-                                            MonoClass *array_class, 
-                                            uintptr_t *lengths, 
-                                            intptr_t *lower_bounds);
-MonoArray*  <a href="#api:mono_array_new_specific">mono_array_new_specific</a>        (MonoVTable *vtable, 
-                                            uintptr_t n);
-MonoClass*  <a href="#api:mono_array_class_get">mono_array_class_get</a>           (MonoClass *eclass, 
-                                            guint32 rank);
-MonoArray*  <a href="#api:mono_array_clone">mono_array_clone</a>               (MonoArray *array);
-            <a href="#api:mono_array_set"></a>                               
-            <a href="#api:mono_array_setref"></a>                               
-uintptr_t   <a href="#api:mono_array_length">mono_array_length</a>              (MonoArray *array);
-            <a href="#api:mono_array_addr"></a>                               
-char*       <a href="#api:mono_array_addr_with_size">mono_array_addr_with_size</a>      (MonoArray *array, 
-                                            int size, 
-                                            uintptr_t idx);
-            <a href="#api:mono_array_get"></a>                               
-gint32      <a href="#api:mono_array_element_size">mono_array_element_size</a>        (MonoClass *ac);
-            <a href="#api:mono_field_from_token"></a>                               
-            <a href="#api:mono_field_get_flags"></a>                               
-const char* <a href="#api:mono_field_get_name">mono_field_get_name</a>            (MonoClassField *field);
-MonoClass*  <a href="#api:mono_field_get_parent">mono_field_get_parent</a>          (MonoClassField *field);
-MonoType*   <a href="#api:mono_field_get_type">mono_field_get_type</a>            (MonoClassField *field);
-void        <a href="#api:mono_field_get_value">mono_field_get_value</a>           (MonoObject *obj, 
-                                            MonoClassField *field, 
-                                            void *value);
-MonoObject* <a href="#api:mono_field_get_value_object">mono_field_get_value_object</a>    (MonoDomain *domain, 
-                                            MonoClassField *field, 
-                                            MonoObject *obj);
-void        <a href="#api:mono_field_set_value">mono_field_set_value</a>           (MonoObject *obj, 
-                                            MonoClassField *field, 
-                                            void *value);
-void        <a href="#api:mono_field_static_get_value">mono_field_static_get_value</a>    (MonoVTable *vt, 
-                                            MonoClassField *field, 
-                                            void *value);
-void        <a href="#api:mono_field_static_set_value">mono_field_static_set_value</a>    (MonoVTable *vt, 
-                                            MonoClassField *field, 
-                                            void *value);
-            <a href="#api:mono_field_get_object"></a>                               
-            <a href="#api:mono_property_get_object"></a>                               
-guint32     <a href="#api:mono_property_get_flags">mono_property_get_flags</a>        (MonoProperty *prop);
-MonoMethod* <a href="#api:mono_property_get_get_method">mono_property_get_get_method</a>   (MonoProperty *prop);
-            <a href="#api:mono_property_get_name"></a>                               
-MonoClass*  <a href="#api:mono_property_get_parent">mono_property_get_parent</a>       (MonoProperty *prop);
-MonoMethod* <a href="#api:mono_property_get_set_method">mono_property_get_set_method</a>   (MonoProperty *prop);
-MonoObject* <a href="#api:mono_property_get_value">mono_property_get_value</a>        (MonoProperty *prop, 
-                                            void *obj, 
-                                            void **params, 
-                                            MonoObject **exc);
-void        <a href="#api:mono_property_set_value">mono_property_set_value</a>        (MonoProperty *prop, 
-                                            void *obj, 
-                                            void **params, 
-                                            MonoObject **exc);
-            <a href="#api:mono_event_get_object"></a>                               
-MonoMethod* <a href="#api:mono_event_get_add_method">mono_event_get_add_method</a>      (MonoEvent *event);
-guint32     <a href="#api:mono_event_get_flags">mono_event_get_flags</a>           (MonoEvent *event);
-const char* <a href="#api:mono_event_get_name">mono_event_get_name</a>            (MonoEvent *event);
-MonoClass*  <a href="#api:mono_event_get_parent">mono_event_get_parent</a>          (MonoEvent *event);
-MonoMethod* <a href="#api:mono_event_get_raise_method">mono_event_get_raise_method</a>    (MonoEvent *event);
-MonoMethod* <a href="#api:mono_event_get_remove_method">mono_event_get_remove_method</a>   (MonoEvent *event);
-gpointer    <a href="#api:mono_load_remote_field">mono_load_remote_field</a>         (MonoObject *this, 
-                                            MonoClass *klass, 
-                                            MonoClassField *field, 
-                                            gpointer *res);
-MonoObject* <a href="#api:mono_load_remote_field_new">mono_load_remote_field_new</a>     (MonoObject *this, 
-                                            MonoClass *klass, 
-                                            MonoClassField *field);
-void        <a href="#api:mono_store_remote_field">mono_store_remote_field</a>        (MonoObject *this, 
-                                            MonoClass *klass, 
-                                            MonoClassField *field, 
-                                            gpointer val);
-void        <a href="#api:mono_store_remote_field_new">mono_store_remote_field_new</a>    (MonoObject *this, 
-                                            MonoClass *klass, 
-                                            MonoClassField *field, 
-                                            MonoObject *arg);
-
-</div>
-
-	<p />MonoObject is the base definition for all managed objects
-	in the Mono runtime, it represents the <a href="http://www.mono-project.com/monodoc/T:System.Object">System.Object</a>
-	managed type.
-
-	<p />All objects that derive from <a href="http://www.mono-project.com/monodoc/T:System.Object">System.Object</a>
-	do have this base definition.  Derived objects are declared
-	following the pattern where the parent class is the first
-	field of a structure definition, for example:
-
-	<div class="code">
-	typedef struct {
-		MonoObject parent;
-		int my_new_field;
-	} MyNewObject
-	</div>
-
-<a name="objects"></a>
-<h2>Core Object Methods</h2>
-
- <a name="api:mono_object_new"></a>
- <div class="api">
-    <div class="api-entry">mono_object_new</div>
-
-    <div class="prototype">MonoObject*
-mono_object_new (MonoDomain *domain, MonoClass *klass)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> the class of the object that we want to create</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a newly created object whose definition is
-
-	 looked up using <i>klass</i>.   This will not invoke any constructors, 
-	 so the consumer of this routine has to invoke any constructors on
-	 its own to initialize the object.
-	
-<p />
-	 It returns NULL on failure.</blockquote>
-
-
-	<p />For example, if you wanted to create an object of type
-	System.Version, you would use a piece of code like this:
-
-	<div class="code">
-MonoClass *version_class;
-MonoObject *result;
-
-/* Get the class from mscorlib */
-version_class = mono_class_from_name (mono_get_corlib (),
-	"System", "Version");
-
-/* Create an object of that class */
-result = mono_object_new (mono_domain_get (), version_class);
-	</div>
-
-</div> <a name="api:mono_object_new_alloc_specific"></a>
- <div class="api">
-    <div class="api-entry">mono_object_new_alloc_specific</div>
-
-    <div class="prototype">Prototype: mono_object_new_alloc_specific</div>
-<p />
-
-</div> <a name="api:mono_object_new_fast"></a>
- <div class="api">
-    <div class="api-entry">mono_object_new_fast</div>
-
-    <div class="prototype">Prototype: mono_object_new_fast</div>
-<p />
-
-</div> <a name="api:mono_object_new_from_token"></a>
- <div class="api">
-    <div class="api-entry">mono_object_new_from_token</div>
-
-    <div class="prototype">MonoObject*
-mono_object_new_from_token  (MonoDomain *domain, MonoImage *image, guint32 token)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>image:</i></dt><dd> Context where the type_token is hosted</dd><dt><i>token:</i></dt><dd> a token of the type that we want to create</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  A newly created object whose definition is
-
-	 looked up using <i>token</i> in the <i>image</i> image</blockquote>
-
-</div> <a name="api:mono_object_new_specific"></a>
- <div class="api">
-    <div class="api-entry">mono_object_new_specific</div>
-
-    <div class="prototype">MonoObject*
-mono_object_new_specific (MonoVTable *vtable)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>vtable:</i></dt><dd> the vtable of the object that we want to create</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  A newly created object with class and domain specified
-
-	 by <i>vtable</i></blockquote>
-
-</div> <a name="api:mono_object_clone"></a>
- <div class="api">
-    <div class="api-entry">mono_object_clone</div>
-
-    <div class="prototype">MonoObject*
-mono_object_clone (MonoObject *obj)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>obj:</i></dt><dd> the object to clone</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  A newly created object who is a shallow copy of <i>obj</i>
-</blockquote>
-
-</div> <a name="api:mono_object_get_class"></a>
- <div class="api">
-    <div class="api-entry">mono_object_get_class</div>
-
-    <div class="prototype">MonoClass*
-mono_object_get_class (MonoObject *obj)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>obj:</i></dt><dd> object to query</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the MonOClass of the object.
-</blockquote>
-<b>Remarks</b>
-<p />	 <p />
-
-
-</div> <a name="api:mono_object_get_domain"></a>
- <div class="api">
-    <div class="api-entry">mono_object_get_domain</div>
-
-    <div class="prototype">MonoDomain*
-mono_object_get_domain (MonoObject *obj)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>obj:</i></dt><dd> object to query</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the MonoDomain where the object is hosted
-</blockquote>
-<b>Remarks</b>
-<p />	 <p />
-
-
-</div> <a name="api:mono_object_get_virtual_method"></a>
- <div class="api">
-    <div class="api-entry">mono_object_get_virtual_method</div>
-
-    <div class="prototype">MonoMethod*
-mono_object_get_virtual_method (MonoObject *obj, MonoMethod *method)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>obj:</i></dt><dd> object to operate on.</dd><dt><i>method:</i></dt><dd> method </dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Retrieves the MonoMethod that would be called on obj if obj is passed as
-	 the instance of a callvirt of method.
-
-</div> <a name="api:mono_object_isinst_mbyref"></a>
- <div class="api">
-    <div class="api-entry">mono_object_isinst_mbyref</div>
-
-    <div class="prototype">Prototype: mono_object_isinst_mbyref</div>
-<p />
-
-</div> <a name="api:mono_object_isinst"></a>
- <div class="api">
-    <div class="api-entry">mono_object_isinst</div>
-
-    <div class="prototype">MonoObject*
-mono_object_isinst (MonoObject *obj, MonoClass *klass)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>obj:</i></dt><dd> an object</dd><dt><i>klass:</i></dt><dd> a pointer to a class </dd></blockquote>
-<b>Returns</b>
-<blockquote>	  <i>obj</i> if <i>obj</i> is derived from <i>klass</i>
-</blockquote>
-
-</div> <a name="api:mono_object_unbox"></a>
- <div class="api">
-    <div class="api-entry">mono_object_unbox</div>
-
-    <div class="prototype">gpointer
-mono_object_unbox (MonoObject *obj)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>obj:</i></dt><dd> object to unbox</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a pointer to the start of the valuetype boxed in this
-
-	 object.
-	
-	 This method will assert if the object passed is not a valuetype.</blockquote>
-<b>Remarks</b>
-<p />	 <p />
-
-
-</div> <a name="api:mono_object_castclass_mbyref"></a>
- <div class="api">
-    <div class="api-entry">mono_object_castclass_mbyref</div>
-
-    <div class="prototype">MonoObject*
-mono_object_castclass_mbyref (MonoObject *obj, MonoClass *klass)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>obj:</i></dt><dd> an object</dd><dt><i>klass:</i></dt><dd> a pointer to a class </dd></blockquote>
-<b>Returns</b>
-<blockquote>	  <i>obj</i> if <i>obj</i> is derived from <i>klass</i>, throws an exception otherwise
-</blockquote>
-
-</div> <a name="api:mono_object_is_alive"></a>
- <div class="api">
-    <div class="api-entry">mono_object_is_alive</div>
-
-    <div class="prototype">Prototype: mono_object_is_alive</div>
-<p />
-
-</div> <a name="api:mono_object_get_size"></a>
- <div class="api">
-    <div class="api-entry">mono_object_get_size</div>
-
-    <div class="prototype">guint
-mono_object_get_size (MonoObject* o)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>o:</i></dt><dd> object to query</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the size, in bytes, of <i>o</i>
-</blockquote>
-<b>Remarks</b>
-<p />	 <p />
-
-
-
-<a name="valuetypes"></a>
-</div><h2>Value Types</h2>
-
- <a name="api:mono_value_box"></a>
- <div class="api">
-    <div class="api-entry">mono_value_box</div>
-
-    <div class="prototype">MonoObject*
-mono_value_box (MonoDomain *domain, MonoClass *class, gpointer value)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>class:</i></dt><dd> the class of the value</dd><dt><i>value:</i></dt><dd> a pointer to the unboxed data</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  A newly created object which contains <i>value</i>.
-</blockquote>
-
-</div> <a name="api:mono_value_copy"></a>
- <div class="api">
-    <div class="api-entry">mono_value_copy</div>
-
-    <div class="prototype">Prototype: mono_value_copy</div>
-<p />
-
-</div> <a name="api:mono_value_copy_array"></a>
- <div class="api">
-    <div class="api-entry">mono_value_copy_array</div>
-
-    <div class="prototype">Prototype: mono_value_copy_array</div>
-<p />
-
-
-<a name="arrays"></a>
-</div><h2>Array Methods</h2>
-
-	<p />Use the <tt>mono_array_new_*</tt> methods to create arrays
-	of a given type.
-
-	<p />For example, the following code creates an array with two
-	elements of type <tt>System.Byte</tt>, and sets the values
-	0xca and 0xfe on it:
-	
-	<pre class="code">
-
-	MonoArray *CreateByteArray (MonoDomain *domain)
-	{
-	    MonoArray *data;
-
-	    data = mono_array_new (domain, mono_get_byte_class (), 2);
-	    mono_array_set (data, guint8, 0, 0xca);
-	    mono_array_set (data, guint8, 0, 0xfe);
-
-	    return data;
-	}
-
-	</pre>
-
-<h3>Creating Arrays</h3>
-
- <a name="api:mono_array_new"></a>
- <div class="api">
-    <div class="api-entry">mono_array_new</div>
-
-    <div class="prototype">MonoArray*
-mono_array_new (MonoDomain *domain, MonoClass *eclass, uintptr_t n)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>domain:</i></dt><dd> domain where the object is created</dd><dt><i>eclass:</i></dt><dd> element class</dd><dt><i>n:</i></dt><dd> number of array elements</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 This routine creates a new szarray with <i>n</i> elements of type <i>eclass</i>.
-
-</div> <a name="api:mono_array_new_full"></a>
- <div class="api">
-    <div class="api-entry">mono_array_new_full</div>
-
-    <div class="prototype">MonoArray*
-mono_array_new_full (MonoDomain *domain, MonoClass *array_class, uintptr_t *lengths, intptr_t *lower_bounds)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>domain:</i></dt><dd> domain where the object is created</dd><dt><i>array_class:</i></dt><dd> array class</dd><dt><i>lengths:</i></dt><dd> lengths for each dimension in the array</dd><dt><i>lower_bounds:</i></dt><dd> lower bounds for each dimension in the array (may be NULL)</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 This routine creates a new array objects with the given dimensions,
-	 lower bounds and type.
-
-</div> <a name="api:mono_array_new_specific"></a>
- <div class="api">
-    <div class="api-entry">mono_array_new_specific</div>
-
-    <div class="prototype">MonoArray*
-mono_array_new_specific (MonoVTable *vtable, uintptr_t n)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>vtable:</i></dt><dd> a vtable in the appropriate domain for an initialized class</dd><dt><i>n:</i></dt><dd> number of array elements</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 This routine is a fast alternative to mono_array_new() for code which
-	 can be sure about the domain it operates in.
-
-</div> <a name="api:mono_array_class_get"></a>
- <div class="api">
-    <div class="api-entry">mono_array_class_get</div>
-
-    <div class="prototype">MonoClass*
-mono_array_class_get (MonoClass *eclass, guint32 rank)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>element_class:</i></dt><dd> element class </dd><dt><i>rank:</i></dt><dd> the dimension of the array class</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a class object describing the array with element type <i>element_type</i> and 
-
-	 dimension <i>rank</i>. </blockquote>
-
-</div> <a name="api:mono_array_clone"></a>
- <div class="api">
-    <div class="api-entry">mono_array_clone</div>
-
-    <div class="prototype">MonoArray*
-mono_array_clone (MonoArray *array)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>array:</i></dt><dd> the array to clone</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  A newly created array who is a shallow copy of <i>array</i>
-</blockquote>
-
-
-</div><h3>Using Arrays</h3>
-
- <a name="api:mono_array_set"></a>
- <div class="api">
-    <div class="api-entry">mono_array_set</div>
-
-    <div class="prototype">Prototype: mono_array_set</div>
-<p />
-
-</div> <a name="api:mono_array_setref"></a>
- <div class="api">
-    <div class="api-entry">mono_array_setref</div>
-
-    <div class="prototype">Prototype: mono_array_setref</div>
-<p />
-
-</div> <a name="api:mono_array_length"></a>
- <div class="api">
-    <div class="api-entry">mono_array_length</div>
-
-    <div class="prototype">uintptr_t
-mono_array_length (MonoArray *array)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>array:</i></dt><dd> a MonoArray*</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Returns the total number of elements in the array. This works for
-	 both vectors and multidimensional arrays.
-
-</div> <a name="api:mono_array_addr"></a>
- <div class="api">
-    <div class="api-entry">mono_array_addr</div>
-
-    <div class="prototype">Prototype: mono_array_addr</div>
-<p />
-
-</div> <a name="api:mono_array_addr_with_size"></a>
- <div class="api">
-    <div class="api-entry">mono_array_addr_with_size</div>
-
-    <div class="prototype">char*
-mono_array_addr_with_size (MonoArray *array, int size, uintptr_t idx)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>array:</i></dt><dd> a MonoArray*</dd><dt><i>size:</i></dt><dd> size of the array elements</dd><dt><i>idx:</i></dt><dd> index into the array</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Returns the address of the <i>idx</i> element in the array.
-
-</div> <a name="api:mono_array_get"></a>
- <div class="api">
-    <div class="api-entry">mono_array_get</div>
-
-    <div class="prototype">Prototype: mono_array_get</div>
-<p />
-
-</div> <a name="api:mono_array_element_size"></a>
- <div class="api">
-    <div class="api-entry">mono_array_element_size</div>
-
-    <div class="prototype">gint32
-mono_array_element_size (MonoClass *ac)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>ac:</i></dt><dd> pointer to a #MonoArrayClass</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the size of single array element.
-</blockquote>
-
-
-<a name="fields"></a>
-</div><h2>Fields</h2>
-
- <a name="api:mono_field_from_token"></a>
- <div class="api">
-    <div class="api-entry">mono_field_from_token</div>
-
-    <div class="prototype">Prototype: mono_field_from_token</div>
-<p />
-
-</div> <a name="api:mono_field_get_flags"></a>
- <div class="api">
-    <div class="api-entry">mono_field_get_flags</div>
-
-    <div class="prototype">Prototype: mono_field_get_flags</div>
-<p />
-
-</div> <a name="api:mono_field_get_name"></a>
- <div class="api">
-    <div class="api-entry">mono_field_get_name</div>
-
-    <div class="prototype">const char*
-mono_field_get_name (MonoClassField *field)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>field:</i></dt><dd> the MonoClassField to act on</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the name of the field.
-</blockquote>
-
-</div> <a name="api:mono_field_get_parent"></a>
- <div class="api">
-    <div class="api-entry">mono_field_get_parent</div>
-
-    <div class="prototype">MonoClass*
-mono_field_get_parent (MonoClassField *field)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>field:</i></dt><dd> the MonoClassField to act on</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  MonoClass where the field was defined.
-</blockquote>
-
-</div> <a name="api:mono_field_get_type"></a>
- <div class="api">
-    <div class="api-entry">mono_field_get_type</div>
-
-    <div class="prototype">MonoType*
-mono_field_get_type (MonoClassField *field)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>field:</i></dt><dd> the MonoClassField to act on</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  MonoType of the field.
-</blockquote>
-
-</div> <a name="api:mono_field_get_value"></a>
- <div class="api">
-    <div class="api-entry">mono_field_get_value</div>
-
-    <div class="prototype">void
-mono_field_get_value (MonoObject *obj, MonoClassField *field, void *value)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>obj:</i></dt><dd> Object instance</dd><dt><i>field:</i></dt><dd> MonoClassField describing the field to fetch information from</dd><dt><i>value:</i></dt><dd> pointer to the location where the value will be stored</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Use this routine to get the value of the field <i>field</i> in the object
-	 passed.
-	
-	 The pointer provided by value must be of the field type, for reference
-	 types this is a MonoObject*, for value types its the actual pointer to
-	 the value type.
-	
-	 For example:
-	     int i;
-	     mono_field_get_value (obj, int_field, &i);
-
-</div> <a name="api:mono_field_get_value_object"></a>
- <div class="api">
-    <div class="api-entry">mono_field_get_value_object</div>
-
-    <div class="prototype">MonoObject*
-mono_field_get_value_object (MonoDomain *domain, MonoClassField *field, MonoObject *obj)
-	
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>domain:</i></dt><dd> domain where the object will be created (if boxing)</dd><dt><i>field:</i></dt><dd> MonoClassField describing the field to fetch information from</dd><dt><i>obj:</i></dt><dd> The object instance for the field.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a new MonoObject with the value from the given field.  If the
-
-	 field represents a value type, the value is boxed.
-	</blockquote>
-
-</div> <a name="api:mono_field_set_value"></a>
- <div class="api">
-    <div class="api-entry">mono_field_set_value</div>
-
-    <div class="prototype">void
-mono_field_set_value (MonoObject *obj, MonoClassField *field, void *value)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>obj:</i></dt><dd> Instance object</dd><dt><i>field:</i></dt><dd> MonoClassField describing the field to set</dd><dt><i>value:</i></dt><dd> The value to be set</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Sets the value of the field described by <i>field</i> in the object instance <i>obj</i>
-	 to the value passed in <i>value</i>.   This method should only be used for instance
-	 fields.   For static fields, use mono_field_static_set_value.
-	
-	 The value must be on the native format of the field type. 
-
-</div> <a name="api:mono_field_static_get_value"></a>
- <div class="api">
-    <div class="api-entry">mono_field_static_get_value</div>
-
-    <div class="prototype">void
-mono_field_static_get_value (MonoVTable *vt, MonoClassField *field, void *value)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>vt:</i></dt><dd> vtable to the object</dd><dt><i>field:</i></dt><dd> MonoClassField describing the field to fetch information from</dd><dt><i>value:</i></dt><dd> where the value is returned</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Use this routine to get the value of the static field <i>field</i> value.
-	
-	 The pointer provided by value must be of the field type, for reference
-	 types this is a MonoObject*, for value types its the actual pointer to
-	 the value type.
-	
-	 For example:
-	     int i;
-	     mono_field_static_get_value (vt, int_field, &i);
-
-</div> <a name="api:mono_field_static_set_value"></a>
- <div class="api">
-    <div class="api-entry">mono_field_static_set_value</div>
-
-    <div class="prototype">void
-mono_field_static_set_value (MonoVTable *vt, MonoClassField *field, void *value)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>field:</i></dt><dd> MonoClassField describing the field to set</dd><dt><i>value:</i></dt><dd> The value to be set</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Sets the value of the static field described by <i>field</i>
-	 to the value passed in <i>value</i>.
-	
-	 The value must be on the native format of the field type. 
-
-</div> <a name="api:mono_field_get_object"></a>
- <div class="api">
-    <div class="api-entry">mono_field_get_object</div>
-
-    <div class="prototype">Prototype: mono_field_get_object</div>
-<p />
-
-
-<a name="properties"></a>
-</div><h2>Properties</h2>
-
- <a name="api:mono_property_get_object"></a>
- <div class="api">
-    <div class="api-entry">mono_property_get_object</div>
-
-    <div class="prototype">Prototype: mono_property_get_object</div>
-<p />
-
-</div> <a name="api:mono_property_get_flags"></a>
- <div class="api">
-    <div class="api-entry">mono_property_get_flags</div>
-
-    <div class="prototype">guint32
-mono_property_get_flags (MonoProperty *prop)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>prop:</i></dt><dd> the MonoProperty to act on.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the flags for the property.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 The metadata flags for a property are encoded using the
-	 PROPERTY_ATTRIBUTE_* constants.  See the tabledefs.h file for details.
-	
-
-</div> <a name="api:mono_property_get_get_method"></a>
- <div class="api">
-    <div class="api-entry">mono_property_get_get_method</div>
-
-    <div class="prototype">MonoMethod*
-mono_property_get_get_method (MonoProperty *prop)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>prop:</i></dt><dd> the MonoProperty to act on.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the setter method of the property (A MonoMethod)
-</blockquote>
-
-</div> <a name="api:mono_property_get_name"></a>
- <div class="api">
-    <div class="api-entry">mono_property_get_name</div>
-
-    <div class="prototype">Prototype: mono_property_get_name</div>
-<p />
-
-</div> <a name="api:mono_property_get_parent"></a>
- <div class="api">
-    <div class="api-entry">mono_property_get_parent</div>
-
-    <div class="prototype">MonoClass*
-mono_property_get_parent (MonoProperty *prop)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>prop:</i></dt><dd> the MonoProperty to act on.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the MonoClass where the property was defined.
-</blockquote>
-
-</div> <a name="api:mono_property_get_set_method"></a>
- <div class="api">
-    <div class="api-entry">mono_property_get_set_method</div>
-
-    <div class="prototype">MonoMethod*
-mono_property_get_set_method (MonoProperty *prop)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>prop:</i></dt><dd> the MonoProperty to act on.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the setter method of the property (A MonoMethod)
-</blockquote>
-
-</div> <a name="api:mono_property_get_value"></a>
- <div class="api">
-    <div class="api-entry">mono_property_get_value</div>
-
-    <div class="prototype">MonoObject*
-mono_property_get_value (MonoProperty *prop, void *obj, void **params, MonoObject **exc)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>prop:</i></dt><dd> MonoProperty to fetch</dd><dt><i>obj:</i></dt><dd> instance object on which to act</dd><dt><i>params:</i></dt><dd> parameters to pass to the propery</dd><dt><i>exc:</i></dt><dd> optional exception</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the value from invoking the get method on the property.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Invokes the property's get method with the given arguments on the
-	 object instance obj (or NULL for static properties). 
-	
-<p />
-	 You can pass NULL as the exc argument if you don't want to
-	 catch exceptions, otherwise, *exc will be set to the exception
-	 thrown, if any.  if an exception is thrown, you can't use the
-	 MonoObject* result from the function.
-	
-
-</div> <a name="api:mono_property_set_value"></a>
- <div class="api">
-    <div class="api-entry">mono_property_set_value</div>
-
-    <div class="prototype">void
-mono_property_set_value (MonoProperty *prop, void *obj, void **params, MonoObject **exc)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>prop:</i></dt><dd> MonoProperty to set</dd><dt><i>obj:</i></dt><dd> instance object on which to act</dd><dt><i>params:</i></dt><dd> parameters to pass to the propery</dd><dt><i>exc:</i></dt><dd> optional exception</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Invokes the property's set method with the given arguments on the
-	 object instance obj (or NULL for static properties). 
-	
-<p />
-	 You can pass NULL as the exc argument if you don't want to
-	 catch exceptions, otherwise, *exc will be set to the exception
-	 thrown, if any.  if an exception is thrown, you can't use the
-	 MonoObject* result from the function.
-
-
-<a name="events"></a>
-</div><h2>Events</h2>
-
- <a name="api:mono_event_get_object"></a>
- <div class="api">
-    <div class="api-entry">mono_event_get_object</div>
-
-    <div class="prototype">Prototype: mono_event_get_object</div>
-<p />
-
-</div> <a name="api:mono_event_get_add_method"></a>
- <div class="api">
-    <div class="api-entry">mono_event_get_add_method</div>
-
-    <div class="prototype">MonoMethod*
-mono_event_get_add_method (MonoEvent *event)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>event:</i></dt><dd> The MonoEvent to act on.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the <i>add</i>' method for the event (a MonoMethod).
-</blockquote>
-
-</div> <a name="api:mono_event_get_flags"></a>
- <div class="api">
-    <div class="api-entry">mono_event_get_flags</div>
-
-    <div class="prototype">guint32
-mono_event_get_flags (MonoEvent *event)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>event:</i></dt><dd> the MonoEvent to act on.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the flags for the event.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 The metadata flags for an event are encoded using the
-	 EVENT_* constants.  See the tabledefs.h file for details.
-	
-
-</div> <a name="api:mono_event_get_name"></a>
- <div class="api">
-    <div class="api-entry">mono_event_get_name</div>
-
-    <div class="prototype">const char*
-mono_event_get_name (MonoEvent *event)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>event:</i></dt><dd> the MonoEvent to act on</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the name of the event.
-</blockquote>
-
-</div> <a name="api:mono_event_get_parent"></a>
- <div class="api">
-    <div class="api-entry">mono_event_get_parent</div>
-
-    <div class="prototype">MonoClass*
-mono_event_get_parent (MonoEvent *event)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>event:</i></dt><dd> the MonoEvent to act on.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the MonoClass where the event is defined.
-</blockquote>
-
-</div> <a name="api:mono_event_get_raise_method"></a>
- <div class="api">
-    <div class="api-entry">mono_event_get_raise_method</div>
-
-    <div class="prototype">MonoMethod*
-mono_event_get_raise_method (MonoEvent *event)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>event:</i></dt><dd> The MonoEvent to act on.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the <i>raise</i> method for the event (a MonoMethod).
-</blockquote>
-
-</div> <a name="api:mono_event_get_remove_method"></a>
- <div class="api">
-    <div class="api-entry">mono_event_get_remove_method</div>
-
-    <div class="prototype">MonoMethod*
-mono_event_get_remove_method (MonoEvent *event)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>event:</i></dt><dd> The MonoEvent to act on.</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the <i>remove</i> method for the event (a MonoMethod).
-</blockquote>
-
-
-<a name="remote"></a>
-</div><h2>Remote Fields</h2>
- <a name="api:mono_load_remote_field"></a>
- <div class="api">
-    <div class="api-entry">mono_load_remote_field</div>
-
-    <div class="prototype">gpointer
-mono_load_remote_field (MonoObject *this, MonoClass *klass, MonoClassField *field, gpointer *res)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>this:</i></dt><dd> pointer to an object</dd><dt><i>klass:</i></dt><dd> klass of the object containing <i>field</i></dd><dt><i>field:</i></dt><dd> the field to load</dd><dt><i>res:</i></dt><dd> a storage to store the result</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  an address pointing to the value of field.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 This method is called by the runtime on attempts to load fields of
-	 transparent proxy objects. <i>this</i> points to such TP, <i>klass</i> is the class of
-	 the object containing <i>field</i>. <i>res</i> is a storage location which can be
-	 used to store the result.
-	
-
-</div> <a name="api:mono_load_remote_field_new"></a>
- <div class="api">
-    <div class="api-entry">mono_load_remote_field_new</div>
-
-    <div class="prototype">MonoObject*
-mono_load_remote_field_new (MonoObject *this, MonoClass *klass, MonoClassField *field)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>this:</i></dt><dd> </dd><dt><i>klass:</i></dt><dd> </dd><dt><i>field:</i></dt><dd></dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Missing documentation.
-
-</div> <a name="api:mono_store_remote_field"></a>
- <div class="api">
-    <div class="api-entry">mono_store_remote_field</div>
-
-    <div class="prototype">void
-mono_store_remote_field (MonoObject *this, MonoClass *klass, MonoClassField *field, gpointer val)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>this:</i></dt><dd> pointer to an object</dd><dt><i>klass:</i></dt><dd> klass of the object containing <i>field</i></dd><dt><i>field:</i></dt><dd> the field to load</dd><dt><i>val:</i></dt><dd> the value/object to store</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 This method is called by the runtime on attempts to store fields of
-	 transparent proxy objects. <i>this</i> points to such TP, <i>klass</i> is the class of
-	 the object containing <i>field</i>. <i>val</i> is the new value to store in <i>field</i>.
-
-</div></body>
-</html>
-</span>
\ No newline at end of file
diff --git a/docs/deploy/mono-api-profiler.html b/docs/deploy/mono-api-profiler.html
deleted file mode 100644
index c0b89c9..0000000
--- a/docs/deploy/mono-api-profiler.html
+++ /dev/null
@@ -1,268 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><span>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-   <title>mono-api-profiler.html</title>
-   <style type="text/css">
-
-
-   h3 { 
-       font-size: 18px;
-       padding-bottom: 4pt;
-       border-bottom: 2px solid #dddddd;
-   }
-       
-   .api {
-     border: 1px solid;
-     padding: 10pt;
-     margin: 10pt;
-   } 
-
-   .api-entry { 
-       border-bottom: none;
-       font-size: 18px;
-   }
-
-   .prototype {
-     border: 1px solid;
-     background-color: #f2f2f2;
-     padding: 5pt;
-     margin-top: 5pt;
-     margin-bottom: 5pt;  
-   } 
-
-   .header {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-    
-   .code {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-   
-
-</style>
-</head>
-<body>
-<h1>Profiling Interface</h1>
-
-<h3>Profiler Operation</h3>
-
-	<p />The following methods can be used by dynamic profiler
-	methods to monitor different aspects of the program.
-
-	<p />A custom profiler will have one public method defined in
-	the shared library which is the entry point that Mono calls at
-	startup, it has the following signature:
-
-	<pre>
-	void mono_profiler_startup (const char *desc)
-	</pre>
-
-	<p />Where "desc" is the set of arguments that were passed from
-	the command line.  This routine will call
-	<tt>mono_profiler_install</tt> to activate the profiler and
-	will install one or more filters (one of the various
-	<tt>mono_profiler_install_</tt> functions).
-
-	<p />In addition, a profiler developer will typically call
-	<tt>mono_profiler_set_events</tt> to register which kinds of
-	traces should be enabled, these can be an OR-ed combination of
-	the following:
-
-	<pre>
-	MONO_PROFILE_NONE
-        MONO_PROFILE_APPDOMAIN_EVENTS
-        MONO_PROFILE_ASSEMBLY_EVENTS
-        MONO_PROFILE_MODULE_EVENTS    
-        MONO_PROFILE_CLASS_EVENTS     
-        MONO_PROFILE_JIT_COMPILATION  
-        MONO_PROFILE_INLINING         
-        MONO_PROFILE_EXCEPTIONS       
-        MONO_PROFILE_ALLOCATIONS      
-        MONO_PROFILE_GC               
-        MONO_PROFILE_THREADS          
-        MONO_PROFILE_REMOTING         
-        MONO_PROFILE_TRANSITIONS      
-        MONO_PROFILE_ENTER_LEAVE      
-        MONO_PROFILE_COVERAGE         
-        MONO_PROFILE_INS_COVERAGE     
-        MONO_PROFILE_STATISTICAL      
-	</pre>
-
-	<p />Developers can change the set of monitored events at
-	runtime by calling <tt>mono_profiler_set_events</tt>.
-	
- <a name="api:mono_profiler_install"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_install</div>
-
-    <div class="prototype">void
-mono_profiler_install (MonoProfiler *prof, MonoProfileFunc callback)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>prof:</i></dt><dd> a MonoProfiler structure pointer, or a pointer to a derived structure.</dd><dt><i>callback:</i></dt><dd> the function to invoke at shutdown</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Use mono_profiler_install to activate profiling in the Mono runtime.
-	 Typically developers of new profilers will create a new structure whose
-	 first field is a MonoProfiler and put any extra information that they need
-	 to access from the various profiling callbacks there.
-	
-
-</div> <a name="api:mono_profiler_install_allocation"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_install_allocation</div>
-
-    <div class="prototype">Prototype: mono_profiler_install_allocation</div>
-<p />
-
-</div> <a name="api:mono_profiler_install_appdomain"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_install_appdomain</div>
-
-    <div class="prototype">Prototype: mono_profiler_install_appdomain</div>
-<p />
-
-</div> <a name="api:mono_profiler_install_assembly"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_install_assembly</div>
-
-    <div class="prototype">Prototype: mono_profiler_install_assembly</div>
-<p />
-
-</div> <a name="api:mono_profiler_install_class"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_install_class</div>
-
-    <div class="prototype">Prototype: mono_profiler_install_class</div>
-<p />
-
-</div> <a name="api:mono_profiler_install_coverage_filter"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_install_coverage_filter</div>
-
-    <div class="prototype">Prototype: mono_profiler_install_coverage_filter</div>
-<p />
-
-</div> <a name="api:mono_profiler_install_enter_leave"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_install_enter_leave</div>
-
-    <div class="prototype">void
-mono_profiler_install_enter_leave (MonoProfileMethodFunc enter, MonoProfileMethodFunc fleave)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>enter:</i></dt><dd> the routine to be called on each method entry</dd><dt><i>fleave:</i></dt><dd> the routine to be called each time a method returns</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Use this routine to install routines that will be called everytime
-	 a method enters and leaves.   The routines will receive as an argument
-	 the MonoMethod representing the method that is entering or leaving.
-
-</div> <a name="api:mono_profiler_install_jit_compile"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_install_jit_compile</div>
-
-    <div class="prototype">void 
-mono_profiler_install_jit_compile (MonoProfileMethodFunc start, MonoProfileMethodResult end)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>start:</i></dt><dd> the routine to be called when the JIT process starts.</dd><dt><i>end:</i></dt><dd> the routine to be called when the JIT process ends.</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Use this routine to install routines that will be called when JIT 
-	 compilation of a method starts and completes.
-
-</div> <a name="api:mono_profiler_install_module"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_install_module</div>
-
-    <div class="prototype">Prototype: mono_profiler_install_module</div>
-<p />
-
-</div> <a name="api:mono_profiler_install_thread"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_install_thread</div>
-
-    <div class="prototype">Prototype: mono_profiler_install_thread</div>
-<p />
-
-</div> <a name="api:mono_profiler_install_transition"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_install_transition</div>
-
-    <div class="prototype">Prototype: mono_profiler_install_transition</div>
-<p />
-
-</div> <a name="api:mono_profiler_install_gc"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_install_gc</div>
-
-    <div class="prototype">Prototype: mono_profiler_install_gc</div>
-<p />
-
-</div> <a name="api:mono_profiler_install_statistical"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_install_statistical</div>
-
-    <div class="prototype">Prototype: mono_profiler_install_statistical</div>
-<p />
-
-</div> <a name="api:mono_profiler_set_events"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_set_events</div>
-
-    <div class="prototype">void
-mono_profiler_set_events (MonoProfileFlags events)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>events:</i></dt><dd> an ORed set of values made up of MONO_PROFILER_ flags</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 The events descriped in the <i>events</i> argument is a set of flags
-	 that represent which profiling events must be triggered.  For
-	 example if you have registered a set of methods for tracking
-	 JIT compilation start and end with mono_profiler_install_jit_compile,
-	 you will want to pass the MONO_PROFILE_JIT_COMPILATION flag to
-	 this routine.
-	
-	 You can call mono_profile_set_events more than once and you can
-	 do this at runtime to modify which methods are invoked.
-
-</div> <a name="api:mono_profiler_get_events"></a>
- <div class="api">
-    <div class="api-entry">mono_profiler_get_events</div>
-
-    <div class="prototype">MonoProfileFlags
-mono_profiler_get_events (void)
-
-</div>
-<p />
-<b>Remarks</b>
-<p />	 
-	 Returns a list of active events that will be intercepted. 
-
-
-</div><h3>Coverage</h3>
-
-	<p />To support profiling modules that need to do code coverage
-	analysis, the following routines is provided:
-	
-</body>
-</html>
-</span>
\ No newline at end of file
diff --git a/docs/deploy/mono-api-reflection.html b/docs/deploy/mono-api-reflection.html
deleted file mode 100644
index e51b28d..0000000
--- a/docs/deploy/mono-api-reflection.html
+++ /dev/null
@@ -1,257 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><span>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-   <title>mono-api-reflection.html</title>
-   <style type="text/css">
-
-
-   h3 { 
-       font-size: 18px;
-       padding-bottom: 4pt;
-       border-bottom: 2px solid #dddddd;
-   }
-       
-   .api {
-     border: 1px solid;
-     padding: 10pt;
-     margin: 10pt;
-   } 
-
-   .api-entry { 
-       border-bottom: none;
-       font-size: 18px;
-   }
-
-   .prototype {
-     border: 1px solid;
-     background-color: #f2f2f2;
-     padding: 5pt;
-     margin-top: 5pt;
-     margin-bottom: 5pt;  
-   } 
-
-   .header {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-    
-   .code {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-   
-
-</style>
-</head>
-<body>
-<h2>Fetching Types, and Basic Reflection</h2>
-
- <a name="api:mono_reflection_get_custom_attrs_blob"></a>
- <div class="api">
-    <div class="api-entry">mono_reflection_get_custom_attrs_blob</div>
-
-    <div class="prototype">Prototype: mono_reflection_get_custom_attrs_blob</div>
-<p />
-
-</div> <a name="api:mono_reflection_get_custom_attrs"></a>
- <div class="api">
-    <div class="api-entry">mono_reflection_get_custom_attrs</div>
-
-    <div class="prototype">Prototype: mono_reflection_get_custom_attrs</div>
-<p />
-
-</div> <a name="api:mono_custom_attrs_get_attr"></a>
- <div class="api">
-    <div class="api-entry">mono_custom_attrs_get_attr</div>
-
-    <div class="prototype">Prototype: mono_custom_attrs_get_attr</div>
-<p />
-
-</div> <a name="api:mono_reflection_get_token"></a>
- <div class="api">
-    <div class="api-entry">mono_reflection_get_token</div>
-
-    <div class="prototype">Prototype: mono_reflection_get_token</div>
-<p />
-
-</div> <a name="api:mono_reflection_get_type"></a>
- <div class="api">
-    <div class="api-entry">mono_reflection_get_type</div>
-
-    <div class="prototype">Prototype: mono_reflection_get_type</div>
-<p />
-
-</div> <a name="api:mono_reflection_parse_type"></a>
- <div class="api">
-    <div class="api-entry">mono_reflection_parse_type</div>
-
-    <div class="prototype">Prototype: mono_reflection_parse_type</div>
-<p />
-
-</div> <a name="api:mono_reflection_type_from_name"></a>
- <div class="api">
-    <div class="api-entry">mono_reflection_type_from_name</div>
-
-    <div class="prototype">Prototype: mono_reflection_type_from_name</div>
-<p />
-
-</div> <a name="api:mono_reflection_get_custom_attrs_info"></a>
- <div class="api">
-    <div class="api-entry">mono_reflection_get_custom_attrs_info</div>
-
-    <div class="prototype">Prototype: mono_reflection_get_custom_attrs_info</div>
-<p />
-
-
-</div><h2>Custom Attributes</h2>
-
- <a name="api:mono_custom_attrs_construct"></a>
- <div class="api">
-    <div class="api-entry">mono_custom_attrs_construct</div>
-
-    <div class="prototype">Prototype: mono_custom_attrs_construct</div>
-<p />
-
-</div> <a name="api:mono_custom_attrs_free"></a>
- <div class="api">
-    <div class="api-entry">mono_custom_attrs_free</div>
-
-    <div class="prototype">Prototype: mono_custom_attrs_free</div>
-<p />
-
-</div> <a name="api:mono_custom_attrs_from_assembly"></a>
- <div class="api">
-    <div class="api-entry">mono_custom_attrs_from_assembly</div>
-
-    <div class="prototype">Prototype: mono_custom_attrs_from_assembly</div>
-<p />
-
-</div> <a name="api:mono_custom_attrs_from_class"></a>
- <div class="api">
-    <div class="api-entry">mono_custom_attrs_from_class</div>
-
-    <div class="prototype">Prototype: mono_custom_attrs_from_class</div>
-<p />
-
-</div> <a name="api:mono_custom_attrs_from_event"></a>
- <div class="api">
-    <div class="api-entry">mono_custom_attrs_from_event</div>
-
-    <div class="prototype">Prototype: mono_custom_attrs_from_event</div>
-<p />
-
-</div> <a name="api:mono_custom_attrs_from_field"></a>
- <div class="api">
-    <div class="api-entry">mono_custom_attrs_from_field</div>
-
-    <div class="prototype">Prototype: mono_custom_attrs_from_field</div>
-<p />
-
-</div> <a name="api:mono_custom_attrs_from_index"></a>
- <div class="api">
-    <div class="api-entry">mono_custom_attrs_from_index</div>
-
-    <div class="prototype">MonoCustomAttrInfo*
-mono_custom_attrs_from_index (MonoImage *image, guint32 idx)
-
-</div>
-<p />
-<b>Returns</b>
-<blockquote>	  NULL if no attributes are found or if a loading error occurs.
-</blockquote>
-
-</div> <a name="api:mono_custom_attrs_from_method"></a>
- <div class="api">
-    <div class="api-entry">mono_custom_attrs_from_method</div>
-
-    <div class="prototype">Prototype: mono_custom_attrs_from_method</div>
-<p />
-
-</div> <a name="api:mono_custom_attrs_from_param"></a>
- <div class="api">
-    <div class="api-entry">mono_custom_attrs_from_param</div>
-
-    <div class="prototype">Prototype: mono_custom_attrs_from_param</div>
-<p />
-
-</div> <a name="api:mono_custom_attrs_from_property"></a>
- <div class="api">
-    <div class="api-entry">mono_custom_attrs_from_property</div>
-
-    <div class="prototype">Prototype: mono_custom_attrs_from_property</div>
-<p />
-
-</div> <a name="api:mono_custom_attrs_has_attr"></a>
- <div class="api">
-    <div class="api-entry">mono_custom_attrs_has_attr</div>
-
-    <div class="prototype">Prototype: mono_custom_attrs_has_attr</div>
-<p />
-
-
-</div><h2>
- <a name="api:mono_module_file_get_object"></a>
- <div class="api">
-    <div class="api-entry">mono_module_file_get_object</div>
-
-    <div class="prototype">Prototype: mono_module_file_get_object</div>
-<p />
-
-</div> <a name="api:mono_module_get_object"></a>
- <div class="api">
-    <div class="api-entry">mono_module_get_object</div>
-
-    <div class="prototype">Prototype: mono_module_get_object</div>
-<p />
-
-</div> <a name="api:mono_method_body_get_object"></a>
- <div class="api">
-    <div class="api-entry">mono_method_body_get_object</div>
-
-    <div class="prototype">Prototype: mono_method_body_get_object</div>
-<p />
-
-</div> <a name="api:mono_event_get_object"></a>
- <div class="api">
-    <div class="api-entry">mono_event_get_object</div>
-
-    <div class="prototype">Prototype: mono_event_get_object</div>
-<p />
-
-</div> <a name="api:mono_assembly_get_object"></a>
- <div class="api">
-    <div class="api-entry">mono_assembly_get_object</div>
-
-    <div class="prototype">Prototype: mono_assembly_get_object</div>
-<p />
-
-</div> <a name="api:mono_param_get_objects"></a>
- <div class="api">
-    <div class="api-entry">mono_param_get_objects</div>
-
-    <div class="prototype">Prototype: mono_param_get_objects</div>
-<p />
-
-</div> <a name="api:mono_field_get_object"></a>
- <div class="api">
-    <div class="api-entry">mono_field_get_object</div>
-
-    <div class="prototype">Prototype: mono_field_get_object</div>
-<p />
-
-</div> <a name="api:mono_property_get_object"></a>
- <div class="api">
-    <div class="api-entry">mono_property_get_object</div>
-
-    <div class="prototype">Prototype: mono_property_get_object</div>
-<p />
-
-</div></h2></body>
-</html>
-</span>
\ No newline at end of file
diff --git a/docs/deploy/mono-api-security.html b/docs/deploy/mono-api-security.html
deleted file mode 100644
index 9643964..0000000
--- a/docs/deploy/mono-api-security.html
+++ /dev/null
@@ -1,130 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><span>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-   <title>mono-api-security.html</title>
-   <style type="text/css">
-
-
-   h3 { 
-       font-size: 18px;
-       padding-bottom: 4pt;
-       border-bottom: 2px solid #dddddd;
-   }
-       
-   .api {
-     border: 1px solid;
-     padding: 10pt;
-     margin: 10pt;
-   } 
-
-   .api-entry { 
-       border-bottom: none;
-       font-size: 18px;
-   }
-
-   .prototype {
-     border: 1px solid;
-     background-color: #f2f2f2;
-     padding: 5pt;
-     margin-top: 5pt;
-     margin-bottom: 5pt;  
-   } 
-
-   .header {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-    
-   .code {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-   
-
-</style>
-</head>
-<body>
-<h3>Security Manager</h3>
-
- <a name="api:mono_get_context_capture_method"></a>
- <div class="api">
-    <div class="api-entry">mono_get_context_capture_method</div>
-
-    <div class="prototype">Prototype: mono_get_context_capture_method</div>
-<p />
-
-
-</div><h3>Declarative Security</h3>
-
- <a name="api:mono_declsec_flags_from_assembly"></a>
- <div class="api">
-    <div class="api-entry">mono_declsec_flags_from_assembly</div>
-
-    <div class="prototype">Prototype: mono_declsec_flags_from_assembly</div>
-<p />
-
-</div> <a name="api:mono_declsec_flags_from_class"></a>
- <div class="api">
-    <div class="api-entry">mono_declsec_flags_from_class</div>
-
-    <div class="prototype">Prototype: mono_declsec_flags_from_class</div>
-<p />
-
-</div> <a name="api:mono_declsec_flags_from_method"></a>
- <div class="api">
-    <div class="api-entry">mono_declsec_flags_from_method</div>
-
-    <div class="prototype">Prototype: mono_declsec_flags_from_method</div>
-<p />
-
-</div> <a name="api:mono_declsec_get_assembly_action"></a>
- <div class="api">
-    <div class="api-entry">mono_declsec_get_assembly_action</div>
-
-    <div class="prototype">Prototype: mono_declsec_get_assembly_action</div>
-<p />
-
-</div> <a name="api:mono_declsec_get_class_action"></a>
- <div class="api">
-    <div class="api-entry">mono_declsec_get_class_action</div>
-
-    <div class="prototype">Prototype: mono_declsec_get_class_action</div>
-<p />
-
-</div> <a name="api:mono_declsec_get_demands"></a>
- <div class="api">
-    <div class="api-entry">mono_declsec_get_demands</div>
-
-    <div class="prototype">Prototype: mono_declsec_get_demands</div>
-<p />
-
-</div> <a name="api:mono_declsec_get_inheritdemands_class"></a>
- <div class="api">
-    <div class="api-entry">mono_declsec_get_inheritdemands_class</div>
-
-    <div class="prototype">Prototype: mono_declsec_get_inheritdemands_class</div>
-<p />
-
-</div> <a name="api:mono_declsec_get_inheritdemands_method"></a>
- <div class="api">
-    <div class="api-entry">mono_declsec_get_inheritdemands_method</div>
-
-    <div class="prototype">Prototype: mono_declsec_get_inheritdemands_method</div>
-<p />
-
-</div> <a name="api:mono_declsec_get_linkdemands"></a>
- <div class="api">
-    <div class="api-entry">mono_declsec_get_linkdemands</div>
-
-    <div class="prototype">Prototype: mono_declsec_get_linkdemands</div>
-<p />
-
-</div></body>
-</html>
-</span>
\ No newline at end of file
diff --git a/docs/deploy/mono-api-string.html b/docs/deploy/mono-api-string.html
deleted file mode 100644
index 54b012b..0000000
--- a/docs/deploy/mono-api-string.html
+++ /dev/null
@@ -1,405 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><span>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-   <title>mono-api-string.html</title>
-   <style type="text/css">
-
-
-   h3 { 
-       font-size: 18px;
-       padding-bottom: 4pt;
-       border-bottom: 2px solid #dddddd;
-   }
-       
-   .api {
-     border: 1px solid;
-     padding: 10pt;
-     margin: 10pt;
-   } 
-
-   .api-entry { 
-       border-bottom: none;
-       font-size: 18px;
-   }
-
-   .prototype {
-     border: 1px solid;
-     background-color: #f2f2f2;
-     padding: 5pt;
-     margin-top: 5pt;
-     margin-bottom: 5pt;  
-   } 
-
-   .header {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-    
-   .code {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-   
-
-</style>
-</head>
-<body>
-<h2>Strings</h2>
-
-	<p />Strings representation inside the Mono runtime.
-
-<h3>Synopsis</h3>
-
-	<div class="header">
-#include <metadata/object.h>
-
-typedef struct {
-	MonoObject object;
-	gint32 length;
-	gunichar2 chars [0];
-} MonoString;
-
-MonoString*    <a href="#api:mono_string_new">mono_string_new</a>            (MonoDomain *domain, 
-                                           const char *text);
-MonoString*    <a href="#api:mono_string_new_len">mono_string_new_len</a>        (MonoDomain *domain, 
-                                           const char *text, 
-                                           guint length);
-MonoString*    <a href="#api:mono_string_new_size">mono_string_new_size</a>       (MonoDomain *domain, 
-                                           gint32 len);
-MonoString*    <a href="#api:mono_string_new_utf16">mono_string_new_utf16</a>      (MonoDomain *domain, 
-                                           const guint16 *text, 
-                                           gint32 len);
-MonoString*    <a href="#api:mono_string_from_utf16">mono_string_from_utf16</a>     (gunichar2 *data);
-mono_unichar2* <a href="#api:mono_string_to_utf16">mono_string_to_utf16</a>       (MonoString *s);
-char*          <a href="#api:mono_string_to_utf8">mono_string_to_utf8</a>        (MonoString *s);
-gboolean       <a href="#api:mono_string_equal">mono_string_equal</a>          (MonoString *s1, 
-                                           MonoString *s2);
-guint          <a href="#api:mono_string_hash">mono_string_hash</a>           (MonoString *s);
-MonoString*    <a href="#api:mono_string_intern">mono_string_intern</a>         (MonoString *str);
-MonoString*    <a href="#api:mono_string_is_interned">mono_string_is_interned</a>    (MonoString *o);
-MonoString*    <a href="#api:mono_string_new_wrapper">mono_string_new_wrapper</a>    (const char *text);
-gunichar2*     <a href="#api:mono_string_chars">mono_string_chars</a>          (MonoString *s);
-int            <a href="#api:mono_string_length">mono_string_length</a>         (MonoString *s);
-gunichar2*     <a href="#api:mono_unicode_from_external">mono_unicode_from_external</a> (const gchar *in, 
-                                           gsize *bytes);
-               <a href="#api:mono_unicode_to_external"></a>                           
-               <a href="#api:mono_utf8_from_external"></a>                           
-
-	</div>
-
-	<p />All of the operations on strings are done on pointers to
-	MonoString objects, like this:
-
-	<div class="code">
-	MonoString *hello = mono_string_new (mono_domain_get (), "hello, world");
-	</div>
-
-	<p />Strings are bound to a particular application domain, which
-	is why it is necessary to pass a MonoDomain argument as the
-	first parameter to all the constructor functions. 
-
-	<p />Typically, you want to create the strings on the current
-	application domain, so a call to <tt>mono_domain_get()</tt> is
-	sufficient.
-	
-<h3>Constructors</h3>
-	
- <a name="api:mono_string_new"></a>
- <div class="api">
-    <div class="api-entry">mono_string_new</div>
-
-    <div class="prototype">MonoString*
-mono_string_new (MonoDomain *domain, const char *text)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>text:</i></dt><dd> a pointer to an utf8 string</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  A newly created string object which contains <i>text</i>.
-</blockquote>
-
-</div> <a name="api:mono_string_new_len"></a>
- <div class="api">
-    <div class="api-entry">mono_string_new_len</div>
-
-    <div class="prototype">MonoString*
-mono_string_new_len (MonoDomain *domain, const char *text, guint length)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>text:</i></dt><dd> a pointer to an utf8 string</dd><dt><i>length:</i></dt><dd> number of bytes in <i>text</i> to consider</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  A newly created string object which contains <i>text</i>.
-</blockquote>
-
-</div> <a name="api:mono_string_new_size"></a>
- <div class="api">
-    <div class="api-entry">mono_string_new_size</div>
-
-    <div class="prototype">MonoString*
-mono_string_new_size (MonoDomain *domain, gint32 len)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>text:</i></dt><dd> a pointer to an utf16 string</dd><dt><i>len:</i></dt><dd> the length of the string</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  A newly created string object of <i>len</i>
-</blockquote>
-
-</div> <a name="api:mono_string_new_utf16"></a>
- <div class="api">
-    <div class="api-entry">mono_string_new_utf16</div>
-
-    <div class="prototype">MonoString*
-mono_string_new_utf16 (MonoDomain *domain, const guint16 *text, gint32 len)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>text:</i></dt><dd> a pointer to an utf16 string</dd><dt><i>len:</i></dt><dd> the length of the string</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  A newly created string object which contains <i>text</i>.
-</blockquote>
-
-</div> <a name="api:mono_string_from_utf16"></a>
- <div class="api">
-    <div class="api-entry">mono_string_from_utf16</div>
-
-    <div class="prototype">MonoString*
-mono_string_from_utf16 (gunichar2 *data)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>data:</i></dt><dd> the UTF16 string (LPWSTR) to convert</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a MonoString.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Converts a NULL terminated UTF16 string (LPWSTR) to a MonoString.
-	
-
-
-</div><h3>Conversions</h3>
-
- <a name="api:mono_string_to_utf16"></a>
- <div class="api">
-    <div class="api-entry">mono_string_to_utf16</div>
-
-    <div class="prototype">mono_unichar2*
-mono_string_to_utf16 (MonoString *s)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>s:</i></dt><dd> a MonoString</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Return an null-terminated array of the utf-16 chars
-	 contained in <i>s</i>. The result must be freed with g_free().
-	 This is a temporary helper until our string implementation
-	 is reworked to always include the null terminating char.
-
-</div> <a name="api:mono_string_to_utf8"></a>
- <div class="api">
-    <div class="api-entry">mono_string_to_utf8</div>
-
-    <div class="prototype">char*
-mono_string_to_utf8 (MonoString *s)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>s:</i></dt><dd> a System.String</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Returns the UTF8 representation for <i>s</i>.
-	 The resulting buffer needs to be freed with mono_free().
-	
-	 <i>deprecated</i> Use mono_string_to_utf8_checked to avoid having an exception arbritraly raised.
-
-
-</div><h3>Methods</h3>
-
- <a name="api:mono_string_equal"></a>
- <div class="api">
-    <div class="api-entry">mono_string_equal</div>
-
-    <div class="prototype">gboolean
-mono_string_equal (MonoString *s1, MonoString *s2)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>s1:</i></dt><dd> First string to compare</dd><dt><i>s2:</i></dt><dd> Second string to compare</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Returns FALSE if the strings differ.
-
-</div> <a name="api:mono_string_hash"></a>
- <div class="api">
-    <div class="api-entry">mono_string_hash</div>
-
-    <div class="prototype">guint
-mono_string_hash (MonoString *s)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>s:</i></dt><dd> the string to hash</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Returns the hash for the string.
-
-</div> <a name="api:mono_string_intern"></a>
- <div class="api">
-    <div class="api-entry">mono_string_intern</div>
-
-    <div class="prototype">MonoString*
-mono_string_intern (MonoString *str)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>o:</i></dt><dd> String to intern</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  The interned string.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Interns the string passed.  
-
-</div> <a name="api:mono_string_is_interned"></a>
- <div class="api">
-    <div class="api-entry">mono_string_is_interned</div>
-
-    <div class="prototype">MonoString*
-mono_string_is_interned (MonoString *o)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>o:</i></dt><dd> String to probe</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Returns whether the string has been interned.
-
-</div> <a name="api:mono_string_new_wrapper"></a>
- <div class="api">
-    <div class="api-entry">mono_string_new_wrapper</div>
-
-    <div class="prototype">MonoString*
-mono_string_new_wrapper (const char *text)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>text:</i></dt><dd> pointer to utf8 characters.</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Helper function to create a string object from <i>text</i> in the current domain.
-
-</div> <a name="api:mono_string_chars"></a>
- <div class="api">
-    <div class="api-entry">mono_string_chars</div>
-
-    <div class="prototype">gunichar2*
-mono_string_chars (MonoString *s)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>s:</i></dt><dd> a MonoString</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Returns a pointer to the UCS16 characters stored in the MonoString
-
-</div> <a name="api:mono_string_length"></a>
- <div class="api">
-    <div class="api-entry">mono_string_length</div>
-
-    <div class="prototype">int
-mono_string_length (MonoString *s)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>s:</i></dt><dd> MonoString</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Returns the lenght in characters of the string
-
-
-
-</div><h3>Other Encodings</h3>
-
-	<p />These routines are used when coping with strings that come
-	from Mono's environment, and might be encoded in one or more
-	of the external encodings.
-
-	<p />For example, some file systems might historically contain a
-	mix of file names with both old and new encodings, typically
-	UTF8 for new files, and the old files would be encoded in an 8
-	bit character set (ISO-8859-1 for example).
-	
-	<p />These routines try a number of encodings, those specified
-	in the <tt>MONO_ENCODINGS</tt> environment variable and return
-	unicode strings that can be used internally.
-
-	<p />See the mono(1) man page for more details.
-	
- <a name="api:mono_unicode_from_external"></a>
- <div class="api">
-    <div class="api-entry">mono_unicode_from_external</div>
-
-    <div class="prototype">gunichar2*
-mono_unicode_from_external (const gchar *in, gsize *bytes)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>in:</i></dt><dd> pointers to the buffer.</dd><dt><i>bytes:</i></dt><dd> number of bytes in the string.</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Tries to turn a NULL-terminated string into UTF16.
-	
-	 First, see if it's valid UTF8, in which case just turn it directly
-	 into UTF16.  Next, run through the colon-separated encodings in
-	 MONO_EXTERNAL_ENCODINGS and do an iconv conversion on each,
-	 returning the first successful conversion to UTF16.  If no
-	 conversion succeeds, return NULL.
-	
-	 Callers must free the returned string if not NULL. bytes holds the number
-	 of bytes in the returned string, not including the terminator.
-
-</div> <a name="api:mono_unicode_to_external"></a>
- <div class="api">
-    <div class="api-entry">mono_unicode_to_external</div>
-
-    <div class="prototype">gchar*mono_unicode_to_external (const gunichar2 *uni)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>uni:</i></dt><dd> an UTF16 string to conver to an external representation.</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Turns NULL-terminated UTF16 into either UTF8, or the first
-	 working item in MONO_EXTERNAL_ENCODINGS if set.  If no conversions
-	 work, then UTF8 is returned.
-	
-	 Callers must free the returned string.
-
-</div></body>
-</html>
-</span>
\ No newline at end of file
diff --git a/docs/deploy/mono-api-threads.html b/docs/deploy/mono-api-threads.html
deleted file mode 100644
index 96fa796..0000000
--- a/docs/deploy/mono-api-threads.html
+++ /dev/null
@@ -1,185 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><span>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-   <title>mono-api-threads.html</title>
-   <style type="text/css">
-
-
-   h3 { 
-       font-size: 18px;
-       padding-bottom: 4pt;
-       border-bottom: 2px solid #dddddd;
-   }
-       
-   .api {
-     border: 1px solid;
-     padding: 10pt;
-     margin: 10pt;
-   } 
-
-   .api-entry { 
-       border-bottom: none;
-       font-size: 18px;
-   }
-
-   .prototype {
-     border: 1px solid;
-     background-color: #f2f2f2;
-     padding: 5pt;
-     margin-top: 5pt;
-     margin-bottom: 5pt;  
-   } 
-
-   .header {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-    
-   .code {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-   
-
-</style>
-</head>
-<body>
-<h2>Working with threads</h2>
-
-<h3>Thread API</h3>
- <a name="api:mono_thread_attach"></a>
- <div class="api">
-    <div class="api-entry">mono_thread_attach</div>
-
-    <div class="prototype">Prototype: mono_thread_attach</div>
-<p />
-
-</div> <a name="api:mono_thread_create"></a>
- <div class="api">
-    <div class="api-entry">mono_thread_create</div>
-
-    <div class="prototype">Prototype: mono_thread_create</div>
-<p />
-
-</div> <a name="api:mono_thread_current"></a>
- <div class="api">
-    <div class="api-entry">mono_thread_current</div>
-
-    <div class="prototype">Prototype: mono_thread_current</div>
-<p />
-
-</div> <a name="api:mono_thread_detach"></a>
- <div class="api">
-    <div class="api-entry">mono_thread_detach</div>
-
-    <div class="prototype">Prototype: mono_thread_detach</div>
-<p />
-
-</div> <a name="api:mono_thread_exit"></a>
- <div class="api">
-    <div class="api-entry">mono_thread_exit</div>
-
-    <div class="prototype">Prototype: mono_thread_exit</div>
-<p />
-
-</div> <a name="api:mono_thread_manage"></a>
- <div class="api">
-    <div class="api-entry">mono_thread_manage</div>
-
-    <div class="prototype">Prototype: mono_thread_manage</div>
-<p />
-
-</div> <a name="api:mono_thread_new_init"></a>
- <div class="api">
-    <div class="api-entry">mono_thread_new_init</div>
-
-    <div class="prototype">Prototype: mono_thread_new_init</div>
-<p />
-
-</div> <a name="api:mono_threads_get_default_stacksize"></a>
- <div class="api">
-    <div class="api-entry">mono_threads_get_default_stacksize</div>
-
-    <div class="prototype">Prototype: mono_threads_get_default_stacksize</div>
-<p />
-
-</div> <a name="api:mono_threads_install_cleanup"></a>
- <div class="api">
-    <div class="api-entry">mono_threads_install_cleanup</div>
-
-    <div class="prototype">Prototype: mono_threads_install_cleanup</div>
-<p />
-
-</div> <a name="api:mono_threads_set_default_stacksize"></a>
- <div class="api">
-    <div class="api-entry">mono_threads_set_default_stacksize</div>
-
-    <div class="prototype">Prototype: mono_threads_set_default_stacksize</div>
-<p />
-
-</div> <a name="api:mono_thread_stop"></a>
- <div class="api">
-    <div class="api-entry">mono_thread_stop</div>
-
-    <div class="prototype">Prototype: mono_thread_stop</div>
-<p />
-
-
-</div> <a name="api:mono_thread_get_main"></a>
- <div class="api">
-    <div class="api-entry">mono_thread_get_main</div>
-
-    <div class="prototype">Prototype: mono_thread_get_main</div>
-<p />
-
-</div> <a name="api:mono_thread_set_main"></a>
- <div class="api">
-    <div class="api-entry">mono_thread_set_main</div>
-
-    <div class="prototype">void
-mono_thread_set_main (MonoThread *thread)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>thread:</i></dt><dd> thread to set as the main thread</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 This function can be used to instruct the runtime to treat <i>thread</i>
-	 as the main thread, ie, the thread that would normally execute the Main()
-	 method. This basically means that at the end of <i>thread</i>, the runtime will
-	 wait for the existing foreground threads to quit and other such details.
-
-</div> <a name="api:mono_pthread_key_for_tls"></a>
- <div class="api">
-    <div class="api-entry">mono_pthread_key_for_tls</div>
-
-    <div class="prototype">Prototype: mono_pthread_key_for_tls</div>
-<p />
-
-
-</div><h3>Monitors</h3>
-
- <a name="api:mono_monitor_enter"></a>
- <div class="api">
-    <div class="api-entry">mono_monitor_enter</div>
-
-    <div class="prototype">Prototype: mono_monitor_enter</div>
-<p />
-
-</div> <a name="api:mono_monitor_exit"></a>
- <div class="api">
-    <div class="api-entry">mono_monitor_exit</div>
-
-    <div class="prototype">Prototype: mono_monitor_exit</div>
-<p />
-
-</div></body>
-</html>
-</span>
\ No newline at end of file
diff --git a/docs/deploy/mono-api-type.html b/docs/deploy/mono-api-type.html
deleted file mode 100644
index 4364e7d..0000000
--- a/docs/deploy/mono-api-type.html
+++ /dev/null
@@ -1,274 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><span>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-   <title>mono-api-type.html</title>
-   <style type="text/css">
-
-
-   h3 { 
-       font-size: 18px;
-       padding-bottom: 4pt;
-       border-bottom: 2px solid #dddddd;
-   }
-       
-   .api {
-     border: 1px solid;
-     padding: 10pt;
-     margin: 10pt;
-   } 
-
-   .api-entry { 
-       border-bottom: none;
-       font-size: 18px;
-   }
-
-   .prototype {
-     border: 1px solid;
-     background-color: #f2f2f2;
-     padding: 5pt;
-     margin-top: 5pt;
-     margin-bottom: 5pt;  
-   } 
-
-   .header {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-    
-   .code {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-   
-
-</style>
-</head>
-<body>
-<h2>Type support</h2>
-
-<h3>Synopsis</h3>
-
-	<div class="header">
-#include <metadata/metadata.h>
-#include <metadata/class.h>
-
-typedef struct _MonoType MonoType;
-                     <a href="#api:mono_type_get_object"></a>                         
-                     <a href="#api:mono_type_create_from_typespec"></a>                         
-                     <a href="#api:mono_type_full_name"></a>                         
-MonoArrayType*       <a href="#api:mono_type_get_array_type">mono_type_get_array_type</a> (MonoType *type);
-MonoClass*           <a href="#api:mono_type_get_class">mono_type_get_class</a>      (MonoType *type);
-                     <a href="#api:mono_type_get_desc"></a>                         
-                     <a href="#api:mono_type_get_modifiers"></a>                         
-char*                <a href="#api:mono_type_get_name">mono_type_get_name</a>       (MonoType *type);
-MonoMethodSignature* <a href="#api:mono_type_get_signature">mono_type_get_signature</a>  (MonoType *type);
-int                  <a href="#api:mono_type_get_type">mono_type_get_type</a>       (MonoType *type);
-                     <a href="#api:mono_type_get_underlying_type"></a>                         
-gboolean             <a href="#api:mono_type_is_byref">mono_type_is_byref</a>       (MonoType *type);
-                     <a href="#api:mono_type_size"></a>                         
-                     <a href="#api:mono_type_stack_size"></a>                         
-guint32              <a href="#api:mono_type_to_unmanaged">mono_type_to_unmanaged</a>   (MonoType *type, 
-                                               MonoMarshalSpec *mspec, 
-                                               gboolean as_field;
-                     <a href="#api:mono_type_generic_inst_is_valuetype"></a>                         
-
-	
-	</div>
-
-	<p />The MonoType represents the unmanaged version of
-	System.Type.
-	
- <a name="api:mono_type_get_object"></a>
- <div class="api">
-    <div class="api-entry">mono_type_get_object</div>
-
-    <div class="prototype">Prototype: mono_type_get_object</div>
-<p />
-
-</div> <a name="api:mono_type_create_from_typespec"></a>
- <div class="api">
-    <div class="api-entry">mono_type_create_from_typespec</div>
-
-    <div class="prototype">Prototype: mono_type_create_from_typespec</div>
-<p />
-
-</div> <a name="api:mono_type_full_name"></a>
- <div class="api">
-    <div class="api-entry">mono_type_full_name</div>
-
-    <div class="prototype">Prototype: mono_type_full_name</div>
-<p />
-
-</div> <a name="api:mono_type_get_array_type"></a>
- <div class="api">
-    <div class="api-entry">mono_type_get_array_type</div>
-
-    <div class="prototype">MonoArrayType*
-mono_type_get_array_type (MonoType *type)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>type:</i></dt><dd> the MonoType operated on</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a MonoArrayType struct describing the array type that <i>type</i>
-
-	 represents. The info includes details such as rank, array element type
-	 and the sizes and bounds of multidimensional arrays.</blockquote>
-<b>Remarks</b>
-<p />	 
-	 It is only valid to call this function if <i>type</i> is a MONO_TYPE_ARRAY.
-	
-
-</div> <a name="api:mono_type_get_class"></a>
- <div class="api">
-    <div class="api-entry">mono_type_get_class</div>
-
-    <div class="prototype">MonoClass*
-mono_type_get_class (MonoType *type)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>type:</i></dt><dd> the MonoType operated on</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the MonoClass pointer that describes the class that <i>type</i> represents.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 It is only valid to call this function if <i>type</i> is a MONO_TYPE_CLASS or a
-	 MONO_TYPE_VALUETYPE. For more general functionality, use mono_class_from_mono_type (),
-	 instead
-	
-
-</div> <a name="api:mono_type_get_desc"></a>
- <div class="api">
-    <div class="api-entry">mono_type_get_desc</div>
-
-    <div class="prototype">Prototype: mono_type_get_desc</div>
-<p />
-
-</div> <a name="api:mono_type_get_modifiers"></a>
- <div class="api">
-    <div class="api-entry">mono_type_get_modifiers</div>
-
-    <div class="prototype">Prototype: mono_type_get_modifiers</div>
-<p />
-
-</div> <a name="api:mono_type_get_name"></a>
- <div class="api">
-    <div class="api-entry">mono_type_get_name</div>
-
-    <div class="prototype">char*
-mono_type_get_name (MonoType *type)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>type:</i></dt><dd> a type</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the string representation for type as it would be represented in IL code.
-</blockquote>
-
-</div> <a name="api:mono_type_get_signature"></a>
- <div class="api">
-    <div class="api-entry">mono_type_get_signature</div>
-
-    <div class="prototype">MonoMethodSignature*
-mono_type_get_signature (MonoType *type)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>type:</i></dt><dd> the MonoType operated on</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the MonoMethodSignature pointer that describes the signature
-
-	 of the function pointer <i>type</i> represents.</blockquote>
-<b>Remarks</b>
-<p />	 
-	 It is only valid to call this function if <i>type</i> is a MONO_TYPE_FNPTR.
-	
-
-</div> <a name="api:mono_type_get_type"></a>
- <div class="api">
-    <div class="api-entry">mono_type_get_type</div>
-
-    <div class="prototype">int
-mono_type_get_type (MonoType *type)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>type:</i></dt><dd> the MonoType operated on</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the IL type value for <i>type</i>. This is one of the MonoTypeEnum
-
-	 enum members like MONO_TYPE_I4 or MONO_TYPE_STRING.</blockquote>
-
-</div> <a name="api:mono_type_get_underlying_type"></a>
- <div class="api">
-    <div class="api-entry">mono_type_get_underlying_type</div>
-
-    <div class="prototype">Prototype: mono_type_get_underlying_type</div>
-<p />
-
-</div> <a name="api:mono_type_is_byref"></a>
- <div class="api">
-    <div class="api-entry">mono_type_is_byref</div>
-
-    <div class="prototype">gboolean
-mono_type_is_byref (MonoType *type)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>type:</i></dt><dd> the MonoType operated on</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  <i>TRUE</i> if <i>type</i> represents a type passed by reference,
-
-	 <i>FALSE</i> otherwise.</blockquote>
-
-</div> <a name="api:mono_type_size"></a>
- <div class="api">
-    <div class="api-entry">mono_type_size</div>
-
-    <div class="prototype">Prototype: mono_type_size</div>
-<p />
-
-</div> <a name="api:mono_type_stack_size"></a>
- <div class="api">
-    <div class="api-entry">mono_type_stack_size</div>
-
-    <div class="prototype">Prototype: mono_type_stack_size</div>
-<p />
-
-</div> <a name="api:mono_type_to_unmanaged"></a>
- <div class="api">
-    <div class="api-entry">mono_type_to_unmanaged</div>
-
-    <div class="prototype">guint32
-mono_type_to_unmanaged (MonoType *type, MonoMarshalSpec *mspec, gboolean as_field,
-			gboolean unicode, MonoMarshalConv *conv) 
-
-</div>
-<p />
-<b>Returns</b>
-<blockquote>	  A MonoMarshalNative enumeration value (MONO_NATIVE_) value
-
-	 describing the underlying native reprensetation of the type.
-	
-<p />
-	 In addition the value pointed by
-	 "conv" will contain the kind of marshalling required for this
-	 particular type one of the MONO_MARSHAL_CONV_ enumeration values.</blockquote>
-
-</div></body>
-</html>
-</span>
\ No newline at end of file
diff --git a/docs/deploy/mono-api-types.html b/docs/deploy/mono-api-types.html
deleted file mode 100644
index 0774670..0000000
--- a/docs/deploy/mono-api-types.html
+++ /dev/null
@@ -1,201 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><span>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-   <title>mono-api-types.html</title>
-   <style type="text/css">
-
-
-   h3 { 
-       font-size: 18px;
-       padding-bottom: 4pt;
-       border-bottom: 2px solid #dddddd;
-   }
-       
-   .api {
-     border: 1px solid;
-     padding: 10pt;
-     margin: 10pt;
-   } 
-
-   .api-entry { 
-       border-bottom: none;
-       font-size: 18px;
-   }
-
-   .prototype {
-     border: 1px solid;
-     background-color: #f2f2f2;
-     padding: 5pt;
-     margin-top: 5pt;
-     margin-bottom: 5pt;  
-   } 
-
-   .header {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-    
-   .code {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-   
-
-</style>
-</head>
-<body>
-<h3>Common core types</h3>
-
-	<p />These are accesor methods to retrieve the <tt>MonoClass
-	*</tt> handle for the various built-in CLI types. 
-	
- <a name="api:mono_get_object_class"></a>
- <div class="api">
-    <div class="api-entry">mono_get_object_class</div>
-
-    <div class="prototype">Prototype: mono_get_object_class</div>
-<p />
-
-</div> <a name="api:mono_get_int16_class"></a>
- <div class="api">
-    <div class="api-entry">mono_get_int16_class</div>
-
-    <div class="prototype">Prototype: mono_get_int16_class</div>
-<p />
-
-</div> <a name="api:mono_get_int32_class"></a>
- <div class="api">
-    <div class="api-entry">mono_get_int32_class</div>
-
-    <div class="prototype">Prototype: mono_get_int32_class</div>
-<p />
-
-</div> <a name="api:mono_get_int64_class"></a>
- <div class="api">
-    <div class="api-entry">mono_get_int64_class</div>
-
-    <div class="prototype">Prototype: mono_get_int64_class</div>
-<p />
-
-</div> <a name="api:mono_get_double_class"></a>
- <div class="api">
-    <div class="api-entry">mono_get_double_class</div>
-
-    <div class="prototype">Prototype: mono_get_double_class</div>
-<p />
-
-</div> <a name="api:mono_get_enum_class"></a>
- <div class="api">
-    <div class="api-entry">mono_get_enum_class</div>
-
-    <div class="prototype">Prototype: mono_get_enum_class</div>
-<p />
-
-</div> <a name="api:mono_get_intptr_class"></a>
- <div class="api">
-    <div class="api-entry">mono_get_intptr_class</div>
-
-    <div class="prototype">Prototype: mono_get_intptr_class</div>
-<p />
-
-</div> <a name="api:mono_get_sbyte_class"></a>
- <div class="api">
-    <div class="api-entry">mono_get_sbyte_class</div>
-
-    <div class="prototype">Prototype: mono_get_sbyte_class</div>
-<p />
-
-</div> <a name="api:mono_get_single_class"></a>
- <div class="api">
-    <div class="api-entry">mono_get_single_class</div>
-
-    <div class="prototype">Prototype: mono_get_single_class</div>
-<p />
-
-</div> <a name="api:mono_get_string_class"></a>
- <div class="api">
-    <div class="api-entry">mono_get_string_class</div>
-
-    <div class="prototype">Prototype: mono_get_string_class</div>
-<p />
-
-</div> <a name="api:mono_get_thread_class"></a>
- <div class="api">
-    <div class="api-entry">mono_get_thread_class</div>
-
-    <div class="prototype">Prototype: mono_get_thread_class</div>
-<p />
-
-</div> <a name="api:mono_get_uint16_class"></a>
- <div class="api">
-    <div class="api-entry">mono_get_uint16_class</div>
-
-    <div class="prototype">Prototype: mono_get_uint16_class</div>
-<p />
-
-</div> <a name="api:mono_get_uint32_class"></a>
- <div class="api">
-    <div class="api-entry">mono_get_uint32_class</div>
-
-    <div class="prototype">Prototype: mono_get_uint32_class</div>
-<p />
-
-</div> <a name="api:mono_get_uint64_class"></a>
- <div class="api">
-    <div class="api-entry">mono_get_uint64_class</div>
-
-    <div class="prototype">Prototype: mono_get_uint64_class</div>
-<p />
-
-</div> <a name="api:mono_get_uintptr_class"></a>
- <div class="api">
-    <div class="api-entry">mono_get_uintptr_class</div>
-
-    <div class="prototype">Prototype: mono_get_uintptr_class</div>
-<p />
-
-</div> <a name="api:mono_get_void_class"></a>
- <div class="api">
-    <div class="api-entry">mono_get_void_class</div>
-
-    <div class="prototype">Prototype: mono_get_void_class</div>
-<p />
-
-</div> <a name="api:mono_get_array_class"></a>
- <div class="api">
-    <div class="api-entry">mono_get_array_class</div>
-
-    <div class="prototype">Prototype: mono_get_array_class</div>
-<p />
-
-</div> <a name="api:mono_get_boolean_class"></a>
- <div class="api">
-    <div class="api-entry">mono_get_boolean_class</div>
-
-    <div class="prototype">Prototype: mono_get_boolean_class</div>
-<p />
-
-</div> <a name="api:mono_get_byte_class"></a>
- <div class="api">
-    <div class="api-entry">mono_get_byte_class</div>
-
-    <div class="prototype">Prototype: mono_get_byte_class</div>
-<p />
-
-</div> <a name="api:mono_get_char_class"></a>
- <div class="api">
-    <div class="api-entry">mono_get_char_class</div>
-
-    <div class="prototype">Prototype: mono_get_char_class</div>
-<p />
-
-
-</div></body>
-</html>
-</span>
\ No newline at end of file
diff --git a/docs/deploy/mono-api-unsorted.html b/docs/deploy/mono-api-unsorted.html
deleted file mode 100644
index da555b2..0000000
--- a/docs/deploy/mono-api-unsorted.html
+++ /dev/null
@@ -1,483 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><span>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-   <title>mono-api-unsorted.html</title>
-   <style type="text/css">
-
-
-   h3 { 
-       font-size: 18px;
-       padding-bottom: 4pt;
-       border-bottom: 2px solid #dddddd;
-   }
-       
-   .api {
-     border: 1px solid;
-     padding: 10pt;
-     margin: 10pt;
-   } 
-
-   .api-entry { 
-       border-bottom: none;
-       font-size: 18px;
-   }
-
-   .prototype {
-     border: 1px solid;
-     background-color: #f2f2f2;
-     padding: 5pt;
-     margin-top: 5pt;
-     margin-bottom: 5pt;  
-   } 
-
-   .header {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-    
-   .code {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-   
-
-</style>
-</head>
-<body>
-
-
- <a name="api:mono_bounded_array_class_get"></a>
- <div class="api">
-    <div class="api-entry">mono_bounded_array_class_get</div>
-
-    <div class="prototype">MonoClass*
-mono_bounded_array_class_get (MonoClass *eclass, guint32 rank, gboolean bounded)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>element_class:</i></dt><dd> element class </dd><dt><i>rank:</i></dt><dd> the dimension of the array class</dd><dt><i>bounded:</i></dt><dd> whenever the array has non-zero bounds</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  a class object describing the array with element type <i>element_type</i> and 
-
-	 dimension <i>rank</i>. </blockquote>
-
-</div> <a name="api:mono_check_corlib_version"></a>
- <div class="api">
-    <div class="api-entry">mono_check_corlib_version</div>
-
-    <div class="prototype">const char*
-mono_check_corlib_version (void)
-
-</div>
-<p />
-<b>Returns</b>
-<blockquote>	  NULL if the runtime will work with the corlib, or a g_malloc
-
-	 allocated string with the error otherwise.</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Checks that the corlib that is loaded matches the version of this runtime.
-	
-
-</div> <a name="api:mono_compile_method"></a>
- <div class="api">
-    <div class="api-entry">mono_compile_method</div>
-
-    <div class="prototype">gpointer 
-mono_compile_method (MonoMethod *method)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>method:</i></dt><dd> The method to compile.</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 This JIT-compiles the method, and returns the pointer to the native code
-	 produced.
-
-</div> <a name="api:mono_config_for_assembly"></a>
- <div class="api">
-    <div class="api-entry">mono_config_for_assembly</div>
-
-    <div class="prototype">Prototype: mono_config_for_assembly</div>
-<p />
-
-</div> <a name="api:mono_dllmap_insert"></a>
- <div class="api">
-    <div class="api-entry">mono_dllmap_insert</div>
-
-    <div class="prototype">Prototype: mono_dllmap_insert</div>
-<p />
-
-</div> <a name="api:mono_environment_exitcode_get"></a>
- <div class="api">
-    <div class="api-entry">mono_environment_exitcode_get</div>
-
-    <div class="prototype">Prototype: mono_environment_exitcode_get</div>
-<p />
-
-</div> <a name="api:mono_environment_exitcode_set"></a>
- <div class="api">
-    <div class="api-entry">mono_environment_exitcode_set</div>
-
-    <div class="prototype">Prototype: mono_environment_exitcode_set</div>
-<p />
-
-</div> <a name="api:mono_free_method"></a>
- <div class="api">
-    <div class="api-entry">mono_free_method</div>
-
-    <div class="prototype">Prototype: mono_free_method</div>
-<p />
-
-</div> <a name="api:mono_free_verify_list"></a>
- <div class="api">
-    <div class="api-entry">mono_free_verify_list</div>
-
-    <div class="prototype">Prototype: mono_free_verify_list</div>
-<p />
-
-</div> <a name="api:mono_get_config_dir"></a>
- <div class="api">
-    <div class="api-entry">mono_get_config_dir</div>
-
-    <div class="prototype">Prototype: mono_get_config_dir</div>
-<p />
-
-</div> <a name="api:mono_get_corlib"></a>
- <div class="api">
-    <div class="api-entry">mono_get_corlib</div>
-
-    <div class="prototype">Prototype: mono_get_corlib</div>
-<p />
-
-</div> <a name="api:mono_get_delegate_invoke"></a>
- <div class="api">
-    <div class="api-entry">mono_get_delegate_invoke</div>
-
-    <div class="prototype">MonoMethod*
-mono_get_delegate_invoke (MonoClass *klass)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>klass:</i></dt><dd> The delegate class</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the MonoMethod for the "Invoke" method in the delegate klass or NULL if <i>klass</i> is a broken delegate type
-</blockquote>
-
-</div> <a name="api:mono_get_method_full"></a>
- <div class="api">
-    <div class="api-entry">mono_get_method_full</div>
-
-    <div class="prototype">Prototype: mono_get_method_full</div>
-<p />
-
-</div> <a name="api:mono_get_method"></a>
- <div class="api">
-    <div class="api-entry">mono_get_method</div>
-
-    <div class="prototype">Prototype: mono_get_method</div>
-<p />
-
-</div> <a name="api:mono_get_root_domain"></a>
- <div class="api">
-    <div class="api-entry">mono_get_root_domain</div>
-
-    <div class="prototype">MonoDomain*
-mono_get_root_domain (void)
-
-</div>
-<p />
-<b>Returns</b>
-<blockquote>	  the root appdomain, to obtain the current domain, use mono_domain_get ()
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 The root AppDomain is the initial domain created by the runtime when it is
-	 initialized.  Programs execute on this AppDomain, but can create new ones
-	 later.   Currently there is no unmanaged API to create new AppDomains, this
-	 must be done from managed code.
-	
-
-</div> <a name="api:mono_init_from_assembly"></a>
- <div class="api">
-    <div class="api-entry">mono_init_from_assembly</div>
-
-    <div class="prototype">MonoDomain*
-mono_init_from_assembly (const char *domain_name, const char *filename)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>domain_name:</i></dt><dd> name to give to the initial domain</dd><dt><i>filename:</i></dt><dd> filename to load on startup</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the initial domain.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Used by the runtime, users should use mono_jit_init instead.
-	
-	 Creates the initial application domain and initializes the mono_defaults
-	 structure.
-	 This function is guaranteed to not run any IL code.
-	 The runtime is initialized using the runtime version required by the
-	 provided executable. The version is determined by looking at the exe 
-	 configuration file and the version PE field)
-	
-
-</div> <a name="api:mono_init"></a>
- <div class="api">
-    <div class="api-entry">mono_init</div>
-
-    <div class="prototype">MonoDomain*
-mono_init (const char *domain_name)
-
-</div>
-<p />
-<b>Returns</b>
-<blockquote>	  the initial domain.
-</blockquote>
-<b>Remarks</b>
-<p />	 <p />
-
-	 Creates the initial application domain and initializes the mono_defaults
-	 structure.
-	 This function is guaranteed to not run any IL code.
-	 The runtime is initialized using the default runtime version.
-	
-
-</div> <a name="api:mono_init_version"></a>
- <div class="api">
-    <div class="api-entry">mono_init_version</div>
-
-    <div class="prototype">MonoDomain*
-mono_init_version (const char *domain_name, const char *version)
-
-</div>
-<p />
-<b>Returns</b>
-<blockquote>	  the initial domain.
-</blockquote>
-<b>Remarks</b>
-<p />	 <p />
-
-	 Used by the runtime, users should use mono_jit_init instead.
-	
-<p />
-	 Creates the initial application domain and initializes the mono_defaults
-	 structure.
-	
-	 This function is guaranteed to not run any IL code.
-	 The runtime is initialized using the provided rutime version.
-	
-
-</div> <a name="api:mono_jit_exec"></a>
- <div class="api">
-    <div class="api-entry">mono_jit_exec</div>
-
-    <div class="prototype">int 
-mono_jit_exec (MonoDomain *domain, MonoAssembly *assembly, int argc, char *argv[])
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>assembly:</i></dt><dd> reference to an assembly</dd><dt><i>argc:</i></dt><dd> argument count</dd><dt><i>argv:</i></dt><dd> argument vector</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Start execution of a program.
-
-</div> <a name="api:mono_lookup_internal_call"></a>
- <div class="api">
-    <div class="api-entry">mono_lookup_internal_call</div>
-
-    <div class="prototype">Prototype: mono_lookup_internal_call</div>
-<p />
-
-</div> <a name="api:mono_lookup_pinvoke_call"></a>
- <div class="api">
-    <div class="api-entry">mono_lookup_pinvoke_call</div>
-
-    <div class="prototype">Prototype: mono_lookup_pinvoke_call</div>
-<p />
-
-</div> <a name="api:mono_main"></a>
- <div class="api">
-    <div class="api-entry">mono_main</div>
-
-    <div class="prototype">int
-mono_main (int argc, char* argv[])
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>argc:</i></dt><dd> number of arguments in the argv array</dd><dt><i>argv:</i></dt><dd> array of strings containing the startup arguments</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Launches the Mono JIT engine and parses all the command line options
-	 in the same way that the mono command line VM would.
-
-</div> <a name="api:mono_parse_default_optimizations"></a>
- <div class="api">
-    <div class="api-entry">mono_parse_default_optimizations</div>
-
-    <div class="prototype">Prototype: mono_parse_default_optimizations</div>
-<p />
-
-</div> <a name="api:mono_ptr_class_get"></a>
- <div class="api">
-    <div class="api-entry">mono_ptr_class_get</div>
-
-    <div class="prototype">Prototype: mono_ptr_class_get</div>
-<p />
-
-</div> <a name="api:mono_register_bundled_assemblies"></a>
- <div class="api">
-    <div class="api-entry">mono_register_bundled_assemblies</div>
-
-    <div class="prototype">Prototype: mono_register_bundled_assemblies</div>
-<p />
-
-</div> <a name="api:mono_runtime_class_init"></a>
- <div class="api">
-    <div class="api-entry">mono_runtime_class_init</div>
-
-    <div class="prototype">Prototype: mono_runtime_class_init</div>
-<p />
-
-</div> <a name="api:mono_runtime_cleanup"></a>
- <div class="api">
-    <div class="api-entry">mono_runtime_cleanup</div>
-
-    <div class="prototype">void
-mono_runtime_cleanup (MonoDomain *domain)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>domain:</i></dt><dd> unused.</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Internal routine.
-	
-	 This must not be called while there are still running threads executing
-	 managed code.
-
-</div> <a name="api:mono_runtime_get_main_args"></a>
- <div class="api">
-    <div class="api-entry">mono_runtime_get_main_args</div>
-
-    <div class="prototype">MonoArray*
-mono_runtime_get_main_args (void)
-
-</div>
-<p />
-<b>Returns</b>
-<blockquote>	  a MonoArray with the arguments passed to the main program
-</blockquote>
-
-</div> <a name="api:mono_runtime_init"></a>
- <div class="api">
-    <div class="api-entry">mono_runtime_init</div>
-
-    <div class="prototype">void
-mono_runtime_init (MonoDomain *domain, MonoThreadStartCB start_cb,
-		   MonoThreadAttachCB attach_cb)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>domain:</i></dt><dd> domain returned by mono_init ()</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Initialize the core AppDomain: this function will run also some
-	 IL initialization code, so it needs the execution engine to be fully 
-	 operational.
-	
-	 AppDomain.SetupInformation is set up in mono_runtime_exec_main, where
-	 we know the entry_assembly.
-	
-
-</div> <a name="api:mono_runtime_is_shutting_down"></a>
- <div class="api">
-    <div class="api-entry">mono_runtime_is_shutting_down</div>
-
-    <div class="prototype">gboolean
-mono_runtime_is_shutting_down (void)
-
-</div>
-<p />
-<b>Remarks</b>
-<p />	 
-	 Returns whether the runtime has been flagged for shutdown.
-	
-	 This is consumed by the P:System.Environment.HasShutdownStarted
-	 property.
-	
-
-</div> <a name="api:mono_runtime_object_init"></a>
- <div class="api">
-    <div class="api-entry">mono_runtime_object_init</div>
-
-    <div class="prototype">Prototype: mono_runtime_object_init</div>
-<p />
-
-</div> <a name="api:mono_runtime_quit"></a>
- <div class="api">
-    <div class="api-entry">mono_runtime_quit</div>
-
-    <div class="prototype">Prototype: mono_runtime_quit</div>
-<p />
-
-</div> <a name="api:mono_runtime_run_main"></a>
- <div class="api">
-    <div class="api-entry">mono_runtime_run_main</div>
-
-    <div class="prototype">int
-mono_runtime_run_main (MonoMethod *method, int argc, char* argv[],
-		       MonoObject **exc)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>method:</i></dt><dd> the method to start the application with (usually Main)</dd><dt><i>argc:</i></dt><dd> number of arguments from the command line</dd><dt><i>argv:</i></dt><dd> array of strings from the command line</dd><dt><i>exc:</i></dt><dd> excetption results</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Execute a standard Main() method (argc/argv contains the
-	 executable name). This method also sets the command line argument value
-	 needed by System.Environment.
-	
-	
-<p />
-
-</div> <a name="api:mono_table_info_get_rows"></a>
- <div class="api">
-    <div class="api-entry">mono_table_info_get_rows</div>
-
-    <div class="prototype">Prototype: mono_table_info_get_rows</div>
-<p />
-
-</div> <a name="api:mono_upgrade_remote_class_wrapper"></a>
- <div class="api">
-    <div class="api-entry">mono_upgrade_remote_class_wrapper</div>
-
-    <div class="prototype">Prototype: mono_upgrade_remote_class_wrapper</div>
-<p />
-
-</div> <a name="api:mono_verify_corlib"></a>
- <div class="api">
-    <div class="api-entry">mono_verify_corlib</div>
-
-    <div class="prototype">Prototype: mono_verify_corlib</div>
-<p />
-
-</div></body>
-</html>
-</span>
\ No newline at end of file
diff --git a/docs/deploy/mono-api-utils.html b/docs/deploy/mono-api-utils.html
deleted file mode 100644
index bc05ede..0000000
--- a/docs/deploy/mono-api-utils.html
+++ /dev/null
@@ -1,635 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><span>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-   <title>mono-api-utils.html</title>
-   <style type="text/css">
-
-
-   h3 { 
-       font-size: 18px;
-       padding-bottom: 4pt;
-       border-bottom: 2px solid #dddddd;
-   }
-       
-   .api {
-     border: 1px solid;
-     padding: 10pt;
-     margin: 10pt;
-   } 
-
-   .api-entry { 
-       border-bottom: none;
-       font-size: 18px;
-   }
-
-   .prototype {
-     border: 1px solid;
-     background-color: #f2f2f2;
-     padding: 5pt;
-     margin-top: 5pt;
-     margin-bottom: 5pt;  
-   } 
-
-   .header {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-    
-   .code {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-   
-
-</style>
-</head>
-<body>
-<h2>Utility Methods</h2>
-
-<h3>Bitsets</h3>
-
-	<p />MonoBitsets are a set of routines used to manipulate sets
-	of bits.
-	
- <a name="api:mono_bitset_alloc_size"></a>
- <div class="api">
-    <div class="api-entry">mono_bitset_alloc_size</div>
-
-    <div class="prototype">Prototype: mono_bitset_alloc_size</div>
-<p />
-
-</div> <a name="api:mono_bitset_clear"></a>
- <div class="api">
-    <div class="api-entry">mono_bitset_clear</div>
-
-    <div class="prototype">Prototype: mono_bitset_clear</div>
-<p />
-
-</div> <a name="api:mono_bitset_clear_all"></a>
- <div class="api">
-    <div class="api-entry">mono_bitset_clear_all</div>
-
-    <div class="prototype">Prototype: mono_bitset_clear_all</div>
-<p />
-
-</div> <a name="api:mono_bitset_clone"></a>
- <div class="api">
-    <div class="api-entry">mono_bitset_clone</div>
-
-    <div class="prototype">Prototype: mono_bitset_clone</div>
-<p />
-
-</div> <a name="api:mono_bitset_copyto"></a>
- <div class="api">
-    <div class="api-entry">mono_bitset_copyto</div>
-
-    <div class="prototype">Prototype: mono_bitset_copyto</div>
-<p />
-
-</div> <a name="api:mono_bitset_count"></a>
- <div class="api">
-    <div class="api-entry">mono_bitset_count</div>
-
-    <div class="prototype">Prototype: mono_bitset_count</div>
-<p />
-
-</div> <a name="api:mono_bitset_equal"></a>
- <div class="api">
-    <div class="api-entry">mono_bitset_equal</div>
-
-    <div class="prototype">Prototype: mono_bitset_equal</div>
-<p />
-
-</div> <a name="api:mono_bitset_find_first"></a>
- <div class="api">
-    <div class="api-entry">mono_bitset_find_first</div>
-
-    <div class="prototype">Prototype: mono_bitset_find_first</div>
-<p />
-
-</div> <a name="api:mono_bitset_find_last"></a>
- <div class="api">
-    <div class="api-entry">mono_bitset_find_last</div>
-
-    <div class="prototype">Prototype: mono_bitset_find_last</div>
-<p />
-
-</div> <a name="api:mono_bitset_find_start"></a>
- <div class="api">
-    <div class="api-entry">mono_bitset_find_start</div>
-
-    <div class="prototype">Prototype: mono_bitset_find_start</div>
-<p />
-
-</div> <a name="api:mono_bitset_foreach"></a>
- <div class="api">
-    <div class="api-entry">mono_bitset_foreach</div>
-
-    <div class="prototype">Prototype: mono_bitset_foreach</div>
-<p />
-
-</div> <a name="api:mono_bitset_free"></a>
- <div class="api">
-    <div class="api-entry">mono_bitset_free</div>
-
-    <div class="prototype">Prototype: mono_bitset_free</div>
-<p />
-
-</div> <a name="api:mono_bitset_intersection"></a>
- <div class="api">
-    <div class="api-entry">mono_bitset_intersection</div>
-
-    <div class="prototype">Prototype: mono_bitset_intersection</div>
-<p />
-
-</div> <a name="api:mono_bitset_invert"></a>
- <div class="api">
-    <div class="api-entry">mono_bitset_invert</div>
-
-    <div class="prototype">Prototype: mono_bitset_invert</div>
-<p />
-
-</div> <a name="api:mono_bitset_mem_new"></a>
- <div class="api">
-    <div class="api-entry">mono_bitset_mem_new</div>
-
-    <div class="prototype">Prototype: mono_bitset_mem_new</div>
-<p />
-
-</div> <a name="api:mono_bitset_new"></a>
- <div class="api">
-    <div class="api-entry">mono_bitset_new</div>
-
-    <div class="prototype">Prototype: mono_bitset_new</div>
-<p />
-
-</div> <a name="api:mono_bitset_set"></a>
- <div class="api">
-    <div class="api-entry">mono_bitset_set</div>
-
-    <div class="prototype">Prototype: mono_bitset_set</div>
-<p />
-
-</div> <a name="api:mono_bitset_set_all"></a>
- <div class="api">
-    <div class="api-entry">mono_bitset_set_all</div>
-
-    <div class="prototype">Prototype: mono_bitset_set_all</div>
-<p />
-
-</div> <a name="api:mono_bitset_size"></a>
- <div class="api">
-    <div class="api-entry">mono_bitset_size</div>
-
-    <div class="prototype">Prototype: mono_bitset_size</div>
-<p />
-
-</div> <a name="api:mono_bitset_sub"></a>
- <div class="api">
-    <div class="api-entry">mono_bitset_sub</div>
-
-    <div class="prototype">Prototype: mono_bitset_sub</div>
-<p />
-
-</div> <a name="api:mono_bitset_test"></a>
- <div class="api">
-    <div class="api-entry">mono_bitset_test</div>
-
-    <div class="prototype">Prototype: mono_bitset_test</div>
-<p />
-
-</div> <a name="api:mono_bitset_test_bulk"></a>
- <div class="api">
-    <div class="api-entry">mono_bitset_test_bulk</div>
-
-    <div class="prototype">Prototype: mono_bitset_test_bulk</div>
-<p />
-
-</div> <a name="api:mono_bitset_union"></a>
- <div class="api">
-    <div class="api-entry">mono_bitset_union</div>
-
-    <div class="prototype">Prototype: mono_bitset_union</div>
-<p />
-
-</div> <a name="api:mono_bitset_find_first_unset"></a>
- <div class="api">
-    <div class="api-entry">mono_bitset_find_first_unset</div>
-
-    <div class="prototype">Prototype: mono_bitset_find_first_unset</div>
-<p />
-
-</div> <a name="api:mono_bitset_intersection_2"></a>
- <div class="api">
-    <div class="api-entry">mono_bitset_intersection_2</div>
-
-    <div class="prototype">Prototype: mono_bitset_intersection_2</div>
-<p />
-
-
-</div><h3>Hashtables</h3>
-
-	<p /><tt>GHashTable</tt> is used when you need to store object
-	references into a hashtable, objects stored in a
-	<tt>MonoGHashTable</tt> are properly tracked by the garbage
-	collector.
-
-	<p />The <tt>MonoGHashTable</tt> data type has the same API as
-	the GLIB.
-	
- <a name="api:mono_g_hash_table_destroy"></a>
- <div class="api">
-    <div class="api-entry">mono_g_hash_table_destroy</div>
-
-    <div class="prototype">Prototype: mono_g_hash_table_destroy</div>
-<p />
-
-</div> <a name="api:mono_g_hash_table_foreach"></a>
- <div class="api">
-    <div class="api-entry">mono_g_hash_table_foreach</div>
-
-    <div class="prototype">Prototype: mono_g_hash_table_foreach</div>
-<p />
-
-</div> <a name="api:mono_g_hash_table_foreach_remove"></a>
- <div class="api">
-    <div class="api-entry">mono_g_hash_table_foreach_remove</div>
-
-    <div class="prototype">Prototype: mono_g_hash_table_foreach_remove</div>
-<p />
-
-</div> <a name="api:mono_g_hash_table_foreach_steal"></a>
- <div class="api">
-    <div class="api-entry">mono_g_hash_table_foreach_steal</div>
-
-    <div class="prototype">Prototype: mono_g_hash_table_foreach_steal</div>
-<p />
-
-</div> <a name="api:mono_g_hash_table_insert"></a>
- <div class="api">
-    <div class="api-entry">mono_g_hash_table_insert</div>
-
-    <div class="prototype">Prototype: mono_g_hash_table_insert</div>
-<p />
-
-</div> <a name="api:mono_g_hash_table_lookup"></a>
- <div class="api">
-    <div class="api-entry">mono_g_hash_table_lookup</div>
-
-    <div class="prototype">Prototype: mono_g_hash_table_lookup</div>
-<p />
-
-</div> <a name="api:mono_g_hash_table_lookup_extended"></a>
- <div class="api">
-    <div class="api-entry">mono_g_hash_table_lookup_extended</div>
-
-    <div class="prototype">Prototype: mono_g_hash_table_lookup_extended</div>
-<p />
-
-</div> <a name="api:mono_g_hash_table_new"></a>
- <div class="api">
-    <div class="api-entry">mono_g_hash_table_new</div>
-
-    <div class="prototype">Prototype: mono_g_hash_table_new</div>
-<p />
-
-</div> <a name="api:mono_g_hash_table_new_full"></a>
- <div class="api">
-    <div class="api-entry">mono_g_hash_table_new_full</div>
-
-    <div class="prototype">Prototype: mono_g_hash_table_new_full</div>
-<p />
-
-</div> <a name="api:mono_g_hash_table_remap"></a>
- <div class="api">
-    <div class="api-entry">mono_g_hash_table_remap</div>
-
-    <div class="prototype">Prototype: mono_g_hash_table_remap</div>
-<p />
-
-</div> <a name="api:mono_g_hash_table_remove"></a>
- <div class="api">
-    <div class="api-entry">mono_g_hash_table_remove</div>
-
-    <div class="prototype">Prototype: mono_g_hash_table_remove</div>
-<p />
-
-</div> <a name="api:mono_g_hash_table_replace"></a>
- <div class="api">
-    <div class="api-entry">mono_g_hash_table_replace</div>
-
-    <div class="prototype">Prototype: mono_g_hash_table_replace</div>
-<p />
-
-</div> <a name="api:mono_g_hash_table_size"></a>
- <div class="api">
-    <div class="api-entry">mono_g_hash_table_size</div>
-
-    <div class="prototype">Prototype: mono_g_hash_table_size</div>
-<p />
-
-</div> <a name="api:mono_g_hash_table_steal"></a>
- <div class="api">
-    <div class="api-entry">mono_g_hash_table_steal</div>
-
-    <div class="prototype">Prototype: mono_g_hash_table_steal</div>
-<p />
-
-
-</div><h3>SHA1 Signatures</h3>
-
- <a name="api:mono_sha1_init"></a>
- <div class="api">
-    <div class="api-entry">mono_sha1_init</div>
-
-    <div class="prototype">Prototype: mono_sha1_init</div>
-<p />
-
-</div> <a name="api:mono_sha1_update"></a>
- <div class="api">
-    <div class="api-entry">mono_sha1_update</div>
-
-    <div class="prototype">Prototype: mono_sha1_update</div>
-<p />
-
-</div> <a name="api:mono_sha1_get_digest_from_file"></a>
- <div class="api">
-    <div class="api-entry">mono_sha1_get_digest_from_file</div>
-
-    <div class="prototype">Prototype: mono_sha1_get_digest_from_file</div>
-<p />
-
-</div> <a name="api:mono_sha1_get_digest"></a>
- <div class="api">
-    <div class="api-entry">mono_sha1_get_digest</div>
-
-    <div class="prototype">Prototype: mono_sha1_get_digest</div>
-<p />
-
-</div> <a name="api:mono_sha1_final"></a>
- <div class="api">
-    <div class="api-entry">mono_sha1_final</div>
-
-    <div class="prototype">Prototype: mono_sha1_final</div>
-<p />
-
-
-</div><h3>MD5 Signatures</h3>
-
- <a name="api:mono_md5_init"></a>
- <div class="api">
-    <div class="api-entry">mono_md5_init</div>
-
-    <div class="prototype">Prototype: mono_md5_init</div>
-<p />
-
-</div> <a name="api:mono_md5_update"></a>
- <div class="api">
-    <div class="api-entry">mono_md5_update</div>
-
-    <div class="prototype">Prototype: mono_md5_update</div>
-<p />
-
-</div> <a name="api:mono_md5_get_digest_from_file"></a>
- <div class="api">
-    <div class="api-entry">mono_md5_get_digest_from_file</div>
-
-    <div class="prototype">Prototype: mono_md5_get_digest_from_file</div>
-<p />
-
-</div> <a name="api:mono_md5_get_digest"></a>
- <div class="api">
-    <div class="api-entry">mono_md5_get_digest</div>
-
-    <div class="prototype">Prototype: mono_md5_get_digest</div>
-<p />
-
-</div> <a name="api:mono_md5_final"></a>
- <div class="api">
-    <div class="api-entry">mono_md5_final</div>
-
-    <div class="prototype">Prototype: mono_md5_final</div>
-<p />
-
-
-</div> <a name="api:mono_digest_get_public_token"></a>
- <div class="api">
-    <div class="api-entry">mono_digest_get_public_token</div>
-
-    <div class="prototype">Prototype: mono_digest_get_public_token</div>
-<p />
-
-
-</div><h3>Memory Pools</h3>
-
-	<p />Memory pools are a convenient way of tracking memory
-	allocations that are used for one specific task, they are also
-	faster than using the standard memory allocation procedures,
-	as they are designed to be used only by a single thread at a
-	time. 
-
-	<p /><tt>MonoMemPool</tt> objects are not thread safe, which
-	means that you should not share the objects across multiple
-	threads without providing proper locking around it (unlike
-	<tt>malloc</tt> and <tt>free</tt> which are thread safe). 
-
-	<p />When a <tt>MonoMemPool</tt> is released with
-	<tt>mono_mempool_destroy</tt> all of the of the memory
-	allocated from that memory pool with
-	<tt>mono_mempool_alloc</tt> and <tt>mono_mempool_alloc0</tt>
-	is released.
-	
- <a name="api:mono_mempool_new"></a>
- <div class="api">
-    <div class="api-entry">mono_mempool_new</div>
-
-    <div class="prototype">MonoMemPool*
-mono_mempool_new (void)
-
-</div>
-<p />
-<b>Returns</b>
-<blockquote>	  a new memory pool.
-</blockquote>
-
-</div> <a name="api:mono_mempool_destroy"></a>
- <div class="api">
-    <div class="api-entry">mono_mempool_destroy</div>
-
-    <div class="prototype">void
-mono_mempool_destroy (MonoMemPool *pool)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>pool:</i></dt><dd> the memory pool to destroy</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Free all memory associated with this pool.
-
-</div> <a name="api:mono_mempool_alloc"></a>
- <div class="api">
-    <div class="api-entry">mono_mempool_alloc</div>
-
-    <div class="prototype">gpointer
-mono_mempool_alloc (MonoMemPool *pool, guint size)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>pool:</i></dt><dd> the momory pool to use</dd><dt><i>size:</i></dt><dd> size of the momory block</dd></blockquote>
-<b>Returns</b>
-<blockquote>	  the address of a newly allocated memory block.
-</blockquote>
-<b>Remarks</b>
-<p />	 
-	 Allocates a new block of memory in <i>pool</i>.
-	
-
-</div> <a name="api:mono_mempool_alloc0"></a>
- <div class="api">
-    <div class="api-entry">mono_mempool_alloc0</div>
-
-    <div class="prototype">gpointer
-mono_mempool_alloc0 (MonoMemPool *pool, guint size)
-
-</div>
-<p />
-<b>Remarks</b>
-<p />	 
-	 same as mono_mempool_alloc, but fills memory with zero.
-
-</div> <a name="api:mono_mempool_empty"></a>
- <div class="api">
-    <div class="api-entry">mono_mempool_empty</div>
-
-    <div class="prototype">Prototype: mono_mempool_empty</div>
-<p />
-
-</div> <a name="api:mono_mempool_invalidate"></a>
- <div class="api">
-    <div class="api-entry">mono_mempool_invalidate</div>
-
-    <div class="prototype">void
-mono_mempool_invalidate (MonoMemPool *pool)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>pool:</i></dt><dd> the memory pool to invalidate</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Fill the memory associated with this pool to 0x2a (42). Useful for debugging.
-
-</div> <a name="api:mono_mempool_stats"></a>
- <div class="api">
-    <div class="api-entry">mono_mempool_stats</div>
-
-    <div class="prototype">void
-mono_mempool_stats (MonoMemPool *pool)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>pool:</i></dt><dd> the momory pool we need stats for</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Print a few stats about the mempool
-
-</div> <a name="api:mono_mempool_contains_addr"></a>
- <div class="api">
-    <div class="api-entry">mono_mempool_contains_addr</div>
-
-    <div class="prototype">gboolean
-mono_mempool_contains_addr (MonoMemPool *pool,
-							gpointer addr)
-
-</div>
-<p />
-<b>Remarks</b>
-<p />	 
-	  Determines whenever ADDR is inside the memory used by the mempool.
-
- 
-</div><h3>JIT utilities</h3>
-
- <a name="api:mono_signbit_double"></a>
- <div class="api">
-    <div class="api-entry">mono_signbit_double</div>
-
-    <div class="prototype">Prototype: mono_signbit_double</div>
-<p />
-
-</div> <a name="api:mono_signbit_float"></a>
- <div class="api">
-    <div class="api-entry">mono_signbit_float</div>
-
-    <div class="prototype">Prototype: mono_signbit_float</div>
-<p />
-
-
-</div><h3>Disassembling Generated Code</h3>
-
-	<p />Routines used to debug the JIT-produced code.
-	
- <a name="api:mono_disasm_code"></a>
- <div class="api">
-    <div class="api-entry">mono_disasm_code</div>
-
-    <div class="prototype">Prototype: mono_disasm_code</div>
-<p />
-
-</div> <a name="api:mono_disasm_code_one"></a>
- <div class="api">
-    <div class="api-entry">mono_disasm_code_one</div>
-
-    <div class="prototype">Prototype: mono_disasm_code_one</div>
-<p />
-
-
-</div><h3>Walking the Stack</h3>
-
- <a name="api:mono_walk_stack"></a>
- <div class="api">
-    <div class="api-entry">mono_walk_stack</div>
-
-    <div class="prototype">void
-mono_walk_stack (MonoJitStackWalk func, MonoDomain *domain, MonoContext *start_ctx, MonoUnwindOptions unwind_options, MonoInternalThread *thread, MonoLMF *lmf, gpointer user_data)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>func:</i></dt><dd> callback to call for each stack frame</dd><dt><i>domain:</i></dt><dd> starting appdomain, can be NULL to use the current domain</dd><dt><i>unwind_options:</i></dt><dd> what extra information the unwinder should gather</dd><dt><i>start_ctx:</i></dt><dd> starting state of the stack walk, can be NULL.</dd><dt><i>thread:</i></dt><dd> the thread whose stack to walk, can be NULL to use the current thread</dd><dt><i>lmf:</i></dt><dd> the LMF of <i>thread</i>, can be NULL to use the LMF of the current thread</dd><dt><i>user_data:</i></dt><dd> data passed to the callback</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 This function walks the stack of a thread, starting from the state
-	 represented by start_ctx. For each frame the callback
-	 function is called with the relevant info. The walk ends when no more
-	 managed stack frames are found or when the callback returns a TRUE value.
-
-</div> <a name="api:mono_stack_walk_no_il"></a>
- <div class="api">
-    <div class="api-entry">mono_stack_walk_no_il</div>
-
-    <div class="prototype">Prototype: mono_stack_walk_no_il</div>
-<p />
-
-
-</div><h3>Others</h3>
-
- <a name="api:mono_escape_uri_string"></a>
- <div class="api">
-    <div class="api-entry">mono_escape_uri_string</div>
-
-    <div class="prototype">Prototype: mono_escape_uri_string</div>
-<p />
-
-</div></body>
-</html>
-</span>
\ No newline at end of file
diff --git a/docs/deploy/mono-api-vm.html b/docs/deploy/mono-api-vm.html
deleted file mode 100644
index d1dc657..0000000
--- a/docs/deploy/mono-api-vm.html
+++ /dev/null
@@ -1,55 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><span>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-   <title>mono-api-vm.html</title>
-   <style type="text/css">
-
-
-   h3 { 
-       font-size: 18px;
-       padding-bottom: 4pt;
-       border-bottom: 2px solid #dddddd;
-   }
-       
-   .api {
-     border: 1px solid;
-     padding: 10pt;
-     margin: 10pt;
-   } 
-
-   .api-entry { 
-       border-bottom: none;
-       font-size: 18px;
-   }
-
-   .prototype {
-     border: 1px solid;
-     background-color: #f2f2f2;
-     padding: 5pt;
-     margin-top: 5pt;
-     margin-bottom: 5pt;  
-   } 
-
-   .header {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-    
-   .code {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-   
-
-</style>
-</head>
-<body>
-</body>
-</html>
-</span>
\ No newline at end of file
diff --git a/docs/deploy/mono-api-wapi.html b/docs/deploy/mono-api-wapi.html
deleted file mode 100644
index ab6be4c..0000000
--- a/docs/deploy/mono-api-wapi.html
+++ /dev/null
@@ -1,1604 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?><span>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-   <title>mono-api-wapi.html</title>
-   <style type="text/css">
-
-
-   h3 { 
-       font-size: 18px;
-       padding-bottom: 4pt;
-       border-bottom: 2px solid #dddddd;
-   }
-       
-   .api {
-     border: 1px solid;
-     padding: 10pt;
-     margin: 10pt;
-   } 
-
-   .api-entry { 
-       border-bottom: none;
-       font-size: 18px;
-   }
-
-   .prototype {
-     border: 1px solid;
-     background-color: #f2f2f2;
-     padding: 5pt;
-     margin-top: 5pt;
-     margin-bottom: 5pt;  
-   } 
-
-   .header {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-    
-   .code {
-     border: 1px solid;
-     padding: 0 0 5pt 5pt;
-     margin: 10pt;
-     white-space: pre;
-       font-family: monospace;
-   }
-   
-
-</style>
-</head>
-<body>
-<h2>Windows Compatibility API</h2>
-
-	<p />Mono implements a small subset of the Win32 API for some
-	file system interaction, I/O, thread and process operations.
-
-	<p />On Windows, Mono uses directly the services provided by the
-	operating system.   On other operating system it uses its own
-	implementation (referred to as the "io-layer" or "wapi"). 
-
-<h3>Windows Compatibility API</h3>
-
- <a name="api:BindIoCompletionCallback"></a>
- <div class="api">
-    <div class="api-entry">BindIoCompletionCallback</div>
-
-    <div class="prototype">Prototype: BindIoCompletionCallback</div>
-<p />
-
-</div> <a name="api:CloseHandle"></a>
- <div class="api">
-    <div class="api-entry">CloseHandle</div>
-
-    <div class="prototype">gboolean CloseHandle(gpointer handle)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>handle:</i></dt><dd> The handle to release</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Closes and invalidates <i>handle</i>, releasing any resources it
-	 consumes.  When the last handle to a temporary or non-persistent
-	 object is closed, that object can be deleted.  Closing the same
-	 handle twice is an error.
-	
-	 Return value: %TRUE on success, %FALSE otherwise.
-
-</div> <a name="api:closesocket"></a>
- <div class="api">
-    <div class="api-entry">closesocket</div>
-
-    <div class="prototype">Prototype: closesocket</div>
-<p />
-
-</div> <a name="api:CopyFile"></a>
- <div class="api">
-    <div class="api-entry">CopyFile</div>
-
-    <div class="prototype">gboolean CopyFile (const gunichar2 *name, const gunichar2 *dest_name,
-		   gboolean fail_if_exists)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>name:</i></dt><dd> a pointer to a NULL-terminated unicode string, that names</dd></blockquote>
-<b>Remarks</b>
-<p />	 the file to be copied. 
-	 <i>dest_name</i>: a pointer to a NULL-terminated unicode string, that is the
-	 new name for the file.
-	 <i>fail_if_exists</i>: if TRUE and dest_name exists, the copy will fail.
-	
-	 Copies file <i>name</i> to <i>dest_name</i>
-	
-	 Return value: %TRUE on success, %FALSE otherwise.
-
-</div> <a name="api:CreateDirectory"></a>
- <div class="api">
-    <div class="api-entry">CreateDirectory</div>
-
-    <div class="prototype">gboolean CreateDirectory (const gunichar2 *name,
-			  WapiSecurityAttributes *security)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>name:</i></dt><dd> a pointer to a NULL-terminated unicode string, that names</dd></blockquote>
-<b>Remarks</b>
-<p />	 the directory to be created. 
-	 <i>security</i>: ignored for now
-	
-	 Creates directory <i>name</i>
-	
-	 Return value: %TRUE on success, %FALSE otherwise.
-
-</div> <a name="api:CreateEvent"></a>
- <div class="api">
-    <div class="api-entry">CreateEvent</div>
-
-    <div class="prototype">gpointer CreateEvent(WapiSecurityAttributes *security G_GNUC_UNUSED,
-		     gboolean manual, gboolean initial,
-		     const gunichar2 *name G_GNUC_UNUSED)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>security:</i></dt><dd> Ignored for now.</dd><dt><i>manual:</i></dt><dd> Specifies whether the new event handle has manual or auto</dd></blockquote>
-<b>Remarks</b>
-<p />	 reset behaviour. 
-	 <i>initial</i>: Specifies whether the new event handle is initially
-	 signalled or not.
-	 <i>name</i>:Pointer to a string specifying the name of this name, or
-	 %NULL.  Currently ignored.
-	
-	 Creates a new event handle.
-	
-	 An event handle is signalled with SetEvent().  If the new handle is
-	 a manual reset event handle, it remains signalled until it is reset
-	 with ResetEvent().  An auto reset event remains signalled until a
-	 single thread has waited for it, at which time the event handle is
-	 automatically reset to unsignalled.
-	
-	 Return value: A new handle, or %NULL on error.
-
-</div> <a name="api:CreateFile"></a>
- <div class="api">
-    <div class="api-entry">CreateFile</div>
-
-    <div class="prototype">gpointer CreateFile(const gunichar2 *name, guint32 fileaccess,
-		    guint32 sharemode, WapiSecurityAttributes *security,
-		    guint32 createmode, guint32 attrs,
-		    gpointer template G_GNUC_UNUSED)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>name:</i></dt><dd> a pointer to a NULL-terminated unicode string, that names</dd></blockquote>
-<b>Remarks</b>
-<p />	 the file or other object to create. 
-	 <i>fileaccess</i>: specifies the file access mode
-	 <i>sharemode</i>: whether the file should be shared.  This parameter is
-	 currently ignored.
-	 <i>security</i>: Ignored for now.
-	 <i>createmode</i>: specifies whether to create a new file, whether to
-	 overwrite an existing file, whether to truncate the file, etc.
-	 <i>attrs</i>: specifies file attributes and flags.  On win32 attributes
-	 are characteristics of the file, not the handle, and are ignored
-	 when an existing file is opened.  Flags give the library hints on
-	 how to process a file to optimise performance.
-	 <i>template</i>: the handle of an open %GENERIC_READ file that specifies
-	 attributes to apply to a newly created file, ignoring <i>attrs</i>.
-	 Normally this parameter is NULL.  This parameter is ignored when an
-	 existing file is opened.
-	
-	 Creates a new file handle.  This only applies to normal files:
-	 pipes are handled by CreatePipe(), and console handles are created
-	 with GetStdHandle().
-	
-	 Return value: the new handle, or %INVALID_HANDLE_VALUE on error.
-
-</div> <a name="api:CreateMutex"></a>
- <div class="api">
-    <div class="api-entry">CreateMutex</div>
-
-    <div class="prototype">gpointer CreateMutex(WapiSecurityAttributes *security G_GNUC_UNUSED, gboolean owned,
-			const gunichar2 *name)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>security:</i></dt><dd> Ignored for now.</dd><dt><i>owned:</i></dt><dd> If %TRUE, the mutex is created with the calling thread</dd></blockquote>
-<b>Remarks</b>
-<p />	 already owning the mutex. 
-	 <i>name</i>:Pointer to a string specifying the name of this mutex, or
-	 %NULL.
-	
-	 Creates a new mutex handle.  A mutex is signalled when no thread
-	 owns it.  A thread acquires ownership of the mutex by waiting for
-	 it with WaitForSingleObject() or WaitForMultipleObjects().  A
-	 thread relinquishes ownership with ReleaseMutex().
-	
-	 A thread that owns a mutex can specify the same mutex in repeated
-	 wait function calls without blocking.  The thread must call
-	 ReleaseMutex() an equal number of times to release the mutex.
-	
-	 Return value: A new handle, or %NULL on error.
-
-</div> <a name="api:CreatePipe"></a>
- <div class="api">
-    <div class="api-entry">CreatePipe</div>
-
-    <div class="prototype">Prototype: CreatePipe</div>
-<p />
-
-</div> <a name="api:CreateProcess"></a>
- <div class="api">
-    <div class="api-entry">CreateProcess</div>
-
-    <div class="prototype">Prototype: CreateProcess</div>
-<p />
-
-</div><h4><a name="api:CreateProcessWithLogonW">CreateProcessWithLogonW</a>
- <a name="api:CreateSemaphore"></a>
- <div class="api">
-    <div class="api-entry">CreateSemaphore</div>
-
-    <div class="prototype">gpointer CreateSemaphore(WapiSecurityAttributes *security G_GNUC_UNUSED, gint32 initial, gint32 max, const gunichar2 *name)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>security:</i></dt><dd> Ignored for now.</dd><dt><i>initial:</i></dt><dd> The initial count for the semaphore.  The value must be</dd></blockquote>
-<b>Remarks</b>
-<p />	 greater than or equal to zero, and less than or equal to <i>max</i>. 
-	 <i>max</i>: The maximum count for this semaphore.  The value must be
-	 greater than zero.
-	 <i>name</i>: Pointer to a string specifying the name of this semaphore,
-	 or %NULL.  Currently ignored.
-	
-	 Creates a new semaphore handle.  A semaphore is signalled when its
-	 count is greater than zero, and unsignalled otherwise.  The count
-	 is decreased by one whenever a wait function releases a thread that
-	 was waiting for the semaphore.  The count is increased by calling
-	 ReleaseSemaphore().
-	
-	 Return value: a new handle, or NULL
-
-</div> <a name="api:CreateThread"></a>
- <div class="api">
-    <div class="api-entry">CreateThread</div>
-
-    <div class="prototype">gpointer CreateThread(WapiSecurityAttributes *security G_GNUC_UNUSED, guint32 stacksize,
-		      WapiThreadStart start, gpointer param, guint32 create,
-		      gsize *tid) 
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>security:</i></dt><dd> Ignored for now.</dd><dt><i>stacksize:</i></dt><dd> the size in bytes of the new thread's stack. Use 0 to</dd></blockquote>
-<b>Remarks</b>
-<p />	 default to the normal stack size. (Ignored for now). 
-	 <i>start</i>: The function that the new thread should start with
-	 <i>param</i>: The parameter to give to <i>start</i>.
-	 <i>create</i>: If 0, the new thread is ready to run immediately.  If
-	 %CREATE_SUSPENDED, the new thread will be in the suspended state,
-	 requiring a ResumeThread() call to continue running.
-	 <i>tid</i>: If non-NULL, the ID of the new thread is stored here.  NB
-	 this is defined as a DWORD (ie 32bit) in the MS API, but we need to
-	 cope with 64 bit IDs for s390x and amd64.
-	
-	 Creates a new threading handle.
-	
-	 Return value: a new handle, or NULL
-
-</div> <a name="api:DeleteCriticalSection"></a>
- <div class="api">
-    <div class="api-entry">DeleteCriticalSection</div>
-
-    <div class="prototype">void DeleteCriticalSection(WapiCriticalSection *section)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>section:</i></dt><dd> The critical section to delete.</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Releases all resources owned by critical section <i>section</i>.
-
-</div> <a name="api:DeleteFile"></a>
- <div class="api">
-    <div class="api-entry">DeleteFile</div>
-
-    <div class="prototype">gboolean DeleteFile(const gunichar2 *name)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>name:</i></dt><dd> a pointer to a NULL-terminated unicode string, that names</dd></blockquote>
-<b>Remarks</b>
-<p />	 the file to be deleted. 
-	
-	 Deletes file <i>name</i>.
-	
-	 Return value: %TRUE on success, %FALSE otherwise.
-
-</div><h4><a name="api:DuplicateHandle">DuplicateHandle</a>
- <a name="api:EnterCriticalSection"></a>
- <div class="api">
-    <div class="api-entry">EnterCriticalSection</div>
-
-    <div class="prototype">Prototype: EnterCriticalSection</div>
-<p />
-
-</div> <a name="api:EnumProcesses"></a>
- <div class="api">
-    <div class="api-entry">EnumProcesses</div>
-
-    <div class="prototype">Prototype: EnumProcesses</div>
-<p />
-
-</div> <a name="api:EnumProcessModules"></a>
- <div class="api">
-    <div class="api-entry">EnumProcessModules</div>
-
-    <div class="prototype">Prototype: EnumProcessModules</div>
-<p />
-
-</div> <a name="api:errno_to_WSA"></a>
- <div class="api">
-    <div class="api-entry">errno_to_WSA</div>
-
-    <div class="prototype">Prototype: errno_to_WSA</div>
-<p />
-
-</div> <a name="api:ExitThread"></a>
- <div class="api">
-    <div class="api-entry">ExitThread</div>
-
-    <div class="prototype">void ExitThread(guint32 exitcode)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>exitcode:</i></dt><dd> Sets the thread's exit code, which can be read from</dd></blockquote>
-<b>Remarks</b>
-<p />	 another thread with GetExitCodeThread(). 
-	
-	 Terminates the calling thread.  A thread can also exit by returning
-	 from its start function. When the last thread in a process
-	 terminates, the process itself terminates.
-
-</div> <a name="api:FileTimeToSystemTime"></a>
- <div class="api">
-    <div class="api-entry">FileTimeToSystemTime</div>
-
-    <div class="prototype">gboolean FileTimeToSystemTime(const WapiFileTime *file_time,
-			      WapiSystemTime *system_time)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>file_time:</i></dt><dd> Points to a %WapiFileTime structure that contains the</dd></blockquote>
-<b>Remarks</b>
-<p />	 number of ticks to convert. 
-	 <i>system_time</i>: Points to a %WapiSystemTime structure to receive the
-	 broken-out time.
-	
-	 Converts a tick count into broken-out time values.
-	
-	 Return value: %TRUE on success, %FALSE otherwise.
-
-</div> <a name="api:FindClose"></a>
- <div class="api">
-    <div class="api-entry">FindClose</div>
-
-    <div class="prototype">gboolean FindClose (gpointer handle)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>wapi_handle:</i></dt><dd> the find handle to close.</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Closes find handle <i>wapi_handle</i>
-	
-	 Return value: %TRUE on success, %FALSE otherwise.
-
-</div> <a name="api:FindFirstFile"></a>
- <div class="api">
-    <div class="api-entry">FindFirstFile</div>
-
-    <div class="prototype">Prototype: FindFirstFile</div>
-<p />
-
-</div> <a name="api:FindNextFile"></a>
- <div class="api">
-    <div class="api-entry">FindNextFile</div>
-
-    <div class="prototype">Prototype: FindNextFile</div>
-<p />
-
-</div> <a name="api:FlushFileBuffers"></a>
- <div class="api">
-    <div class="api-entry">FlushFileBuffers</div>
-
-    <div class="prototype">gboolean FlushFileBuffers(gpointer handle)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>handle:</i></dt><dd> Handle to open file.  The handle must have</dd></blockquote>
-<b>Remarks</b>
-<p />	 %GENERIC_WRITE access. 
-	
-	 Flushes buffers of the file and causes all unwritten data to
-	 be written.
-	
-	 Return value: %TRUE on success, %FALSE otherwise.
-
-</div><h4><a name="api:FormatMessage">FormatMessage</a>
- <a name="api:GetCurrentDirectory"></a>
- <div class="api">
-    <div class="api-entry">GetCurrentDirectory</div>
-
-    <div class="prototype">extern guint32 GetCurrentDirectory (guint32 length, gunichar2 *buffer)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>length:</i></dt><dd> size of the buffer</dd><dt><i>buffer:</i></dt><dd> pointer to buffer that recieves path</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Retrieves the current directory for the current process.
-	
-	 Return value: number of characters in buffer on success, zero on failure
-
-</div> <a name="api:GetCurrentProcess"></a>
- <div class="api">
-    <div class="api-entry">GetCurrentProcess</div>
-
-    <div class="prototype">Prototype: GetCurrentProcess</div>
-<p />
-
-</div> <a name="api:GetCurrentProcessId"></a>
- <div class="api">
-    <div class="api-entry">GetCurrentProcessId</div>
-
-    <div class="prototype">Prototype: GetCurrentProcessId</div>
-<p />
-
-</div> <a name="api:GetCurrentThread"></a>
- <div class="api">
-    <div class="api-entry">GetCurrentThread</div>
-
-    <div class="prototype">gpointer GetCurrentThread(void)
-
-</div>
-<p />
-<b>Remarks</b>
-<p />	 
-	 Looks up the handle associated with the current thread.  Under
-	 Windows this is a pseudohandle, and must be duplicated with
-	 DuplicateHandle() for some operations.
-	
-	 Return value: The current thread handle, or %NULL on failure.
-	 (Unknown whether Windows has a possible failure here.  It may be
-	 necessary to implement the pseudohandle-constant behaviour).
-
-</div> <a name="api:GetCurrentThreadId"></a>
- <div class="api">
-    <div class="api-entry">GetCurrentThreadId</div>
-
-    <div class="prototype">gsize GetCurrentThreadId(void)
-
-</div>
-<p />
-<b>Remarks</b>
-<p />	 
-	 Looks up the thread ID of the current thread.  This ID can be
-	 passed to OpenThread() to create a new handle on this thread.
-	
-	 Return value: the thread ID.  NB this is defined as DWORD (ie 32
-	 bit) in the MS API, but we need to cope with 64 bit IDs for s390x
-	 and amd64.  This doesn't really break the API, it just embraces and
-	 extends it on 64bit platforms :)
-
-</div><h4><a name="api:GetDiskFreeSpaceEx">GetDiskFreeSpaceEx</a>
-<h4><a name="api:GetDriveType">GetDriveType</a>
- <a name="api:GetExitCodeProcess"></a>
- <div class="api">
-    <div class="api-entry">GetExitCodeProcess</div>
-
-    <div class="prototype">Prototype: GetExitCodeProcess</div>
-<p />
-
-</div> <a name="api:GetExitCodeThread"></a>
- <div class="api">
-    <div class="api-entry">GetExitCodeThread</div>
-
-    <div class="prototype">gboolean GetExitCodeThread(gpointer handle, guint32 *exitcode)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>handle:</i></dt><dd> The thread handle to query</dd><dt><i>exitcode:</i></dt><dd> The thread <i>handle</i> exit code is stored here</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Finds the exit code of <i>handle</i>, and stores it in <i>exitcode</i>.  If the
-	 thread <i>handle</i> is still running, the value stored is %STILL_ACTIVE.
-	
-	 Return value: %TRUE, or %FALSE on error.
-
-</div> <a name="api:GetFileAttributesEx"></a>
- <div class="api">
-    <div class="api-entry">GetFileAttributesEx</div>
-
-    <div class="prototype">gboolean GetFileAttributesEx (const gunichar2 *name, WapiGetFileExInfoLevels level, gpointer info)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>name:</i></dt><dd> a pointer to a NULL-terminated unicode filename.</dd><dt><i>level:</i></dt><dd> must be GetFileExInfoStandard</dd><dt><i>info:</i></dt><dd> pointer to a WapiFileAttributesData structure</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Gets attributes, size and filetimes for <i>name</i>;
-	
-	 Return value: %TRUE on success, %FALSE on failure
-
-</div> <a name="api:GetFileAttributes"></a>
- <div class="api">
-    <div class="api-entry">GetFileAttributes</div>
-
-    <div class="prototype">guint32 GetFileAttributes (const gunichar2 *name)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>name:</i></dt><dd> a pointer to a NULL-terminated unicode filename.</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Gets the attributes for <i>name</i>;
-	
-	 Return value: %INVALID_FILE_ATTRIBUTES on failure
-
-</div> <a name="api:GetFileSize"></a>
- <div class="api">
-    <div class="api-entry">GetFileSize</div>
-
-    <div class="prototype">guint32 GetFileSize(gpointer handle, guint32 *highsize)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>handle:</i></dt><dd> The file handle to query.  The handle must have</dd></blockquote>
-<b>Remarks</b>
-<p />	 %GENERIC_READ or %GENERIC_WRITE access. 
-	 <i>highsize</i>: If non-%NULL, the high 32 bits of the file size are
-	 stored here.
-	
-	 Retrieves the size of the file <i>handle</i>.
-	
-	 If the library is compiled without large file support, <i>highsize</i>
-	 has its value set to zero on a successful return.
-	
-	 Return value: On success, the low 32 bits of the file size.  If
-	 <i>highsize</i> is non-%NULL then the high 32 bits of the file size are
-	 stored here.  On failure %INVALID_FILE_SIZE is returned.
-
-</div> <a name="api:GetFileTime"></a>
- <div class="api">
-    <div class="api-entry">GetFileTime</div>
-
-    <div class="prototype">gboolean GetFileTime(gpointer handle, WapiFileTime *create_time,
-		     WapiFileTime *last_access, WapiFileTime *last_write)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>handle:</i></dt><dd> The file handle to query.  The handle must have</dd></blockquote>
-<b>Remarks</b>
-<p />	 %GENERIC_READ access. 
-	 <i>create_time</i>: Points to a %WapiFileTime structure to receive the
-	 number of ticks since the epoch that file was created.  May be
-	 %NULL.
-	 <i>last_access</i>: Points to a %WapiFileTime structure to receive the
-	 number of ticks since the epoch when file was last accessed.  May be
-	 %NULL.
-	 <i>last_write</i>: Points to a %WapiFileTime structure to receive the
-	 number of ticks since the epoch when file was last written to.  May
-	 be %NULL.
-	
-	 Finds the number of ticks since the epoch that the file referenced
-	 by <i>handle</i> was created, last accessed and last modified.  A tick is
-	 a 100 nanosecond interval.  The epoch is Midnight, January 1 1601
-	 GMT.
-	
-	 Create time isn't recorded on POSIX file systems or reported by
-	 stat(2), so that time is guessed by returning the oldest of the
-	 other times.
-	
-	 Return value: %TRUE on success, %FALSE otherwise.
-
-</div> <a name="api:GetFileType"></a>
- <div class="api">
-    <div class="api-entry">GetFileType</div>
-
-    <div class="prototype">WapiFileType GetFileType(gpointer handle)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>handle:</i></dt><dd> The file handle to test.</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Finds the type of file <i>handle</i>.
-	
-	 Return value: %FILE_TYPE_UNKNOWN - the type of the file <i>handle</i> is
-	 unknown.  %FILE_TYPE_DISK - <i>handle</i> is a disk file.
-	 %FILE_TYPE_CHAR - <i>handle</i> is a character device, such as a console.
-	 %FILE_TYPE_PIPE - <i>handle</i> is a named or anonymous pipe.
-
-</div><h4><a name="api:GetFileVersionInfo">GetFileVersionInfo</a>
-<h4><a name="api:GetFileVersionInfoSize">GetFileVersionInfoSize</a>
- <a name="api:GetLastError"></a>
- <div class="api">
-    <div class="api-entry">GetLastError</div>
-
-    <div class="prototype">guint32 GetLastError(void)
-
-</div>
-<p />
-<b>Remarks</b>
-<p />	 
-	 Retrieves the last error that occurred in the calling thread.
-	
-	 Return value: The error code for the last error that happened on
-	 the calling thread.
-
-</div> <a name="api:GetLogicalDriveStrings"></a>
- <div class="api">
-    <div class="api-entry">GetLogicalDriveStrings</div>
-
-    <div class="prototype">Prototype: GetLogicalDriveStrings</div>
-<p />
-
-</div> <a name="api:GetModuleBaseName"></a>
- <div class="api">
-    <div class="api-entry">GetModuleBaseName</div>
-
-    <div class="prototype">Prototype: GetModuleBaseName</div>
-<p />
-
-</div><h4><a name="api:GetModuleFileNameEx">GetModuleFileNameEx</a>
-<h4><a name="api:GetModuleInformation">GetModuleInformation</a>
-<h4><a name="api:GetPriorityClass">GetPriorityClass</a>
- <a name="api:GetProcessId"></a>
- <div class="api">
-    <div class="api-entry">GetProcessId</div>
-
-    <div class="prototype">Prototype: GetProcessId</div>
-<p />
-
-</div> <a name="api:GetProcessTimes"></a>
- <div class="api">
-    <div class="api-entry">GetProcessTimes</div>
-
-    <div class="prototype">Prototype: GetProcessTimes</div>
-<p />
-
-</div> <a name="api:GetProcessWorkingSetSize"></a>
- <div class="api">
-    <div class="api-entry">GetProcessWorkingSetSize</div>
-
-    <div class="prototype">Prototype: GetProcessWorkingSetSize</div>
-<p />
-
-</div> <a name="api:GetStdHandle"></a>
- <div class="api">
-    <div class="api-entry">GetStdHandle</div>
-
-    <div class="prototype">
-static mono_mutex_t stdhandle_mutex = MONO_MUTEX_INITIALIZER;
-
-gpointer GetStdHandle(WapiStdHandle stdhandle)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>stdhandle:</i></dt><dd> specifies the file descriptor</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Returns a handle for stdin, stdout, or stderr.  Always returns the
-	 same handle for the same <i>stdhandle</i>.
-	
-	 Return value: the handle, or %INVALID_HANDLE_VALUE on error
-
-</div> <a name="api:GetSystemInfo"></a>
- <div class="api">
-    <div class="api-entry">GetSystemInfo</div>
-
-    <div class="prototype">Prototype: GetSystemInfo</div>
-<p />
-
-</div> <a name="api:GetTempPath"></a>
- <div class="api">
-    <div class="api-entry">GetTempPath</div>
-
-    <div class="prototype">Prototype: GetTempPath</div>
-<p />
-
-</div> <a name="api:GetThreadContext"></a>
- <div class="api">
-    <div class="api-entry">GetThreadContext</div>
-
-    <div class="prototype">Prototype: GetThreadContext</div>
-<p />
-
-</div> <a name="api:GetTickCount"></a>
- <div class="api">
-    <div class="api-entry">GetTickCount</div>
-
-    <div class="prototype">Prototype: GetTickCount</div>
-<p />
-
-</div> <a name="api:ImpersonateLoggedOnUser"></a>
- <div class="api">
-    <div class="api-entry">ImpersonateLoggedOnUser</div>
-
-    <div class="prototype">Prototype: ImpersonateLoggedOnUser</div>
-<p />
-
-</div> <a name="api:InitializeCriticalSectionAndSpinCount"></a>
- <div class="api">
-    <div class="api-entry">InitializeCriticalSectionAndSpinCount</div>
-
-    <div class="prototype">gboolean InitializeCriticalSectionAndSpinCount(WapiCriticalSection *section,
-					       guint32 spincount G_GNUC_UNUSED)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>section:</i></dt><dd> The critical section to initialise.</dd><dt><i>spincount:</i></dt><dd> The spin count for this critical section.  Not</dd></blockquote>
-<b>Remarks</b>
-<p />	 currently used. 
-	
-	 Initialises a critical section and sets the spin count.  This
-	 implementation just calls InitializeCriticalSection().
-	
-	 Return value: %TRUE on success, %FALSE otherwise.  (%FALSE never
-	 happens).
-
-</div> <a name="api:InitializeCriticalSection"></a>
- <div class="api">
-    <div class="api-entry">InitializeCriticalSection</div>
-
-    <div class="prototype">void InitializeCriticalSection(WapiCriticalSection *section)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>section:</i></dt><dd> The critical section to initialise</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Initialises a critical section.
-
-</div> <a name="api:ioctlsocket"></a>
- <div class="api">
-    <div class="api-entry">ioctlsocket</div>
-
-    <div class="prototype">Prototype: ioctlsocket</div>
-<p />
-
-</div> <a name="api:LeaveCriticalSection"></a>
- <div class="api">
-    <div class="api-entry">LeaveCriticalSection</div>
-
-    <div class="prototype">Prototype: LeaveCriticalSection</div>
-<p />
-
-</div> <a name="api:LockFile"></a>
- <div class="api">
-    <div class="api-entry">LockFile</div>
-
-    <div class="prototype">Prototype: LockFile</div>
-<p />
-
-</div> <a name="api:MoveFile"></a>
- <div class="api">
-    <div class="api-entry">MoveFile</div>
-
-    <div class="prototype">gboolean MoveFile (const gunichar2 *name, const gunichar2 *dest_name)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>name:</i></dt><dd> a pointer to a NULL-terminated unicode string, that names</dd></blockquote>
-<b>Remarks</b>
-<p />	 the file to be moved. 
-	 <i>dest_name</i>: a pointer to a NULL-terminated unicode string, that is the
-	 new name for the file.
-	
-	 Renames file <i>name</i> to <i>dest_name</i>.
-	 MoveFile sets ERROR_ALREADY_EXISTS if the destination exists, except
-	 when it is the same file as the source.  In that case it silently succeeds.
-	
-	 Return value: %TRUE on success, %FALSE otherwise.
-
-</div> <a name="api:OpenEvent"></a>
- <div class="api">
-    <div class="api-entry">OpenEvent</div>
-
-    <div class="prototype">Prototype: OpenEvent</div>
-<p />
-
-</div> <a name="api:OpenMutex"></a>
- <div class="api">
-    <div class="api-entry">OpenMutex</div>
-
-    <div class="prototype">Prototype: OpenMutex</div>
-<p />
-
-</div> <a name="api:OpenProcess"></a>
- <div class="api">
-    <div class="api-entry">OpenProcess</div>
-
-    <div class="prototype">Prototype: OpenProcess</div>
-<p />
-
-</div> <a name="api:OpenSemaphore"></a>
- <div class="api">
-    <div class="api-entry">OpenSemaphore</div>
-
-    <div class="prototype">Prototype: OpenSemaphore</div>
-<p />
-
-</div> <a name="api:OpenThread"></a>
- <div class="api">
-    <div class="api-entry">OpenThread</div>
-
-    <div class="prototype">Prototype: OpenThread</div>
-<p />
-
-</div> <a name="api:PulseEvent"></a>
- <div class="api">
-    <div class="api-entry">PulseEvent</div>
-
-    <div class="prototype">gboolean PulseEvent(gpointer handle)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>handle:</i></dt><dd> The event handle.</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Sets the event handle <i>handle</i> to the signalled state, and then
-	 resets it to unsignalled after informing any waiting threads.
-	
-	 If <i>handle</i> is a manual reset event, all waiting threads that can be
-	 released immediately are released.  <i>handle</i> is then reset.  If
-	 <i>handle</i> is an auto reset event, one waiting thread is released even
-	 if multiple threads are waiting.
-	
-	 Return value: %TRUE on success, %FALSE otherwise.  (Currently only
-	 ever returns %TRUE).
-
-</div> <a name="api:QueryPerformanceCounter"></a>
- <div class="api">
-    <div class="api-entry">QueryPerformanceCounter</div>
-
-    <div class="prototype">Prototype: QueryPerformanceCounter</div>
-<p />
-
-</div> <a name="api:QueryPerformanceFrequency"></a>
- <div class="api">
-    <div class="api-entry">QueryPerformanceFrequency</div>
-
-    <div class="prototype">Prototype: QueryPerformanceFrequency</div>
-<p />
-
-</div> <a name="api:QueueUserAPC"></a>
- <div class="api">
-    <div class="api-entry">QueueUserAPC</div>
-
-    <div class="prototype">Prototype: QueueUserAPC</div>
-<p />
-
-</div> <a name="api:ReadFile"></a>
- <div class="api">
-    <div class="api-entry">ReadFile</div>
-
-    <div class="prototype">gboolean ReadFile(gpointer handle, gpointer buffer, guint32 numbytes,
-		  guint32 *bytesread, WapiOverlapped *overlapped)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>handle:</i></dt><dd> The file handle to read from.  The handle must have</dd></blockquote>
-<b>Remarks</b>
-<p />	 %GENERIC_READ access. 
-	 <i>buffer</i>: The buffer to store read data in
-	 <i>numbytes</i>: The maximum number of bytes to read
-	 <i>bytesread</i>: The actual number of bytes read is stored here.  This
-	 value can be zero if the handle is positioned at the end of the
-	 file.
-	 <i>overlapped</i>: points to a required %WapiOverlapped structure if
-	 <i>handle</i> has the %FILE_FLAG_OVERLAPPED option set, should be NULL
-	 otherwise.
-	
-	 If <i>handle</i> does not have the %FILE_FLAG_OVERLAPPED option set, this
-	 function reads up to <i>numbytes</i> bytes from the file from the current
-	 file position, and stores them in <i>buffer</i>.  If there are not enough
-	 bytes left in the file, just the amount available will be read.
-	 The actual number of bytes read is stored in <i>bytesread</i>.
-	
-	 If <i>handle</i> has the %FILE_FLAG_OVERLAPPED option set, the current
-	 file position is ignored and the read position is taken from data
-	 in the <i>overlapped</i> structure.
-	
-	 Return value: %TRUE if the read succeeds (even if no bytes were
-	 read due to an attempt to read past the end of the file), %FALSE on
-	 error.
-
-</div> <a name="api:ReleaseMutex"></a>
- <div class="api">
-    <div class="api-entry">ReleaseMutex</div>
-
-    <div class="prototype">gboolean ReleaseMutex(gpointer handle)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>handle:</i></dt><dd> The mutex handle.</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Releases ownership if the mutex handle <i>handle</i>.
-	
-	 Return value: %TRUE on success, %FALSE otherwise.  This function
-	 fails if the calling thread does not own the mutex <i>handle</i>.
-
-</div> <a name="api:ReleaseSemaphore"></a>
- <div class="api">
-    <div class="api-entry">ReleaseSemaphore</div>
-
-    <div class="prototype">gboolean ReleaseSemaphore(gpointer handle, gint32 count, gint32 *prevcount)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>handle:</i></dt><dd> The semaphore handle to release.</dd><dt><i>count:</i></dt><dd> The amount by which the semaphore's count should be</dd></blockquote>
-<b>Remarks</b>
-<p />	 increased. 
-	 <i>prevcount</i>: Pointer to a location to store the previous count of
-	 the semaphore, or %NULL.
-	
-	 Increases the count of semaphore <i>handle</i> by <i>count</i>.
-	
-	 Return value: %TRUE on success, %FALSE otherwise.
-
-</div> <a name="api:RemoveDirectory"></a>
- <div class="api">
-    <div class="api-entry">RemoveDirectory</div>
-
-    <div class="prototype">gboolean RemoveDirectory (const gunichar2 *name)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>name:</i></dt><dd> a pointer to a NULL-terminated unicode string, that names</dd></blockquote>
-<b>Remarks</b>
-<p />	 the directory to be removed. 
-	
-	 Removes directory <i>name</i>
-	
-	 Return value: %TRUE on success, %FALSE otherwise.
-
-</div><h4><a name="api:ReplaceFile">ReplaceFile</a>
- <a name="api:ResetEvent"></a>
- <div class="api">
-    <div class="api-entry">ResetEvent</div>
-
-    <div class="prototype">gboolean ResetEvent(gpointer handle)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>handle:</i></dt><dd> The event handle.</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Resets the event handle <i>handle</i> to the unsignalled state.
-	
-	 Return value: %TRUE on success, %FALSE otherwise.  (Currently only
-	 ever returns %TRUE).
-
-</div> <a name="api:ResumeThread"></a>
- <div class="api">
-    <div class="api-entry">ResumeThread</div>
-
-    <div class="prototype">guint32 ResumeThread(gpointer handle)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>handle:</i></dt><dd> the thread handle to resume</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Decrements the suspend count of thread <i>handle</i>. A thread can only
-	 run if its suspend count is zero.
-	
-	 Return value: the previous suspend count, or 0xFFFFFFFF on error.
-
-</div> <a name="api:RevertToSelf"></a>
- <div class="api">
-    <div class="api-entry">RevertToSelf</div>
-
-    <div class="prototype">Prototype: RevertToSelf</div>
-<p />
-
-</div> <a name="api:SetCriticalSectionSpinCount"></a>
- <div class="api">
-    <div class="api-entry">SetCriticalSectionSpinCount</div>
-
-    <div class="prototype">guint32 SetCriticalSectionSpinCount(WapiCriticalSection *section G_GNUC_UNUSED, guint32 spincount G_GNUC_UNUSED)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>section:</i></dt><dd> The critical section to set</dd><dt><i>spincount:</i></dt><dd> The new spin count for this critical section.  Not</dd></blockquote>
-<b>Remarks</b>
-<p />	 currently used. 
-	
-	 Sets the spin count for the critical section <i>section</i>.  The spin
-	 count is currently ignored, and set to zero.
-	
-	 Return value: The previous spin count.  (Currently always zero).
-
-</div> <a name="api:SetCurrentDirectory"></a>
- <div class="api">
-    <div class="api-entry">SetCurrentDirectory</div>
-
-    <div class="prototype">extern gboolean SetCurrentDirectory (const gunichar2 *path)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>path:</i></dt><dd> path to new directory</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Changes the directory path for the current process.
-	
-	 Return value: %TRUE on success, %FALSE on failure.
-
-</div> <a name="api:SetEndOfFile"></a>
- <div class="api">
-    <div class="api-entry">SetEndOfFile</div>
-
-    <div class="prototype">gboolean SetEndOfFile(gpointer handle)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>handle:</i></dt><dd> The file handle to set.  The handle must have</dd></blockquote>
-<b>Remarks</b>
-<p />	 %GENERIC_WRITE access. 
-	
-	 Moves the end-of-file position to the current position of the file
-	 pointer.  This function is used to truncate or extend a file.
-	
-	 Return value: %TRUE on success, %FALSE otherwise.
-
-</div> <a name="api:SetEvent"></a>
- <div class="api">
-    <div class="api-entry">SetEvent</div>
-
-    <div class="prototype">gboolean SetEvent(gpointer handle)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>handle:</i></dt><dd> The event handle</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Sets the event handle <i>handle</i> to the signalled state.
-	
-	 If <i>handle</i> is a manual reset event, it remains signalled until it
-	 is reset with ResetEvent().  An auto reset event remains signalled
-	 until a single thread has waited for it, at which time <i>handle</i> is
-	 automatically reset to unsignalled.
-	
-	 Return value: %TRUE on success, %FALSE otherwise.  (Currently only
-	 ever returns %TRUE).
-
-</div> <a name="api:SetFileAttributes"></a>
- <div class="api">
-    <div class="api-entry">SetFileAttributes</div>
-
-    <div class="prototype">extern gboolean SetFileAttributes (const gunichar2 *name, guint32 attrs)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>name:</i></dt><dd> name of file</dd><dt><i>attrs:</i></dt><dd> attributes to set</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Changes the attributes on a named file.
-	
-	 Return value: %TRUE on success, %FALSE on failure.
-
-</div> <a name="api:SetFilePointer"></a>
- <div class="api">
-    <div class="api-entry">SetFilePointer</div>
-
-    <div class="prototype">guint32 SetFilePointer(gpointer handle, gint32 movedistance,
-		       gint32 *highmovedistance, WapiSeekMethod method)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>handle:</i></dt><dd> The file handle to set.  The handle must have</dd></blockquote>
-<b>Remarks</b>
-<p />	 %GENERIC_READ or %GENERIC_WRITE access. 
-	 <i>movedistance</i>: Low 32 bits of a signed value that specifies the
-	 number of bytes to move the file pointer.
-	 <i>highmovedistance</i>: Pointer to the high 32 bits of a signed value
-	 that specifies the number of bytes to move the file pointer, or
-	 %NULL.
-	 <i>method</i>: The starting point for the file pointer move.
-	
-	 Sets the file pointer of an open file.
-	
-	 The distance to move the file pointer is calculated from
-	 <i>movedistance</i> and <i>highmovedistance</i>: If <i>highmovedistance</i> is %NULL,
-	 <i>movedistance</i> is the 32-bit signed value; otherwise, <i>movedistance</i>
-	 is the low 32 bits and <i>highmovedistance</i> a pointer to the high 32
-	 bits of a 64 bit signed value.  A positive distance moves the file
-	 pointer forward from the position specified by <i>method</i>; a negative
-	 distance moves the file pointer backward.
-	
-	 If the library is compiled without large file support,
-	 <i>highmovedistance</i> is ignored and its value is set to zero on a
-	 successful return.
-	
-	 Return value: On success, the low 32 bits of the new file pointer.
-	 If <i>highmovedistance</i> is not %NULL, the high 32 bits of the new file
-	 pointer are stored there.  On failure, %INVALID_SET_FILE_POINTER.
-
-</div> <a name="api:SetFileTime"></a>
- <div class="api">
-    <div class="api-entry">SetFileTime</div>
-
-    <div class="prototype">gboolean SetFileTime(gpointer handle, const WapiFileTime *create_time,
-		     const WapiFileTime *last_access,
-		     const WapiFileTime *last_write)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>handle:</i></dt><dd> The file handle to set.  The handle must have</dd></blockquote>
-<b>Remarks</b>
-<p />	 %GENERIC_WRITE access. 
-	 <i>create_time</i>: Points to a %WapiFileTime structure that contains the
-	 number of ticks since the epoch that the file was created.  May be
-	 %NULL.
-	 <i>last_access</i>: Points to a %WapiFileTime structure that contains the
-	 number of ticks since the epoch when the file was last accessed.
-	 May be %NULL.
-	 <i>last_write</i>: Points to a %WapiFileTime structure that contains the
-	 number of ticks since the epoch when the file was last written to.
-	 May be %NULL.
-	
-	 Sets the number of ticks since the epoch that the file referenced
-	 by <i>handle</i> was created, last accessed or last modified.  A tick is
-	 a 100 nanosecond interval.  The epoch is Midnight, January 1 1601
-	 GMT.
-	
-	 Create time isn't recorded on POSIX file systems, and is ignored.
-	
-	 Return value: %TRUE on success, %FALSE otherwise.
-
-</div> <a name="api:SetLastError"></a>
- <div class="api">
-    <div class="api-entry">SetLastError</div>
-
-    <div class="prototype">void SetLastError(guint32 code)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>code:</i></dt><dd> The error code.</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Sets the error code in the calling thread.
-
-</div><h4><a name="api:SetPriorityClass">SetPriorityClass</a>
- <a name="api:SetProcessWorkingSetSize"></a>
- <div class="api">
-    <div class="api-entry">SetProcessWorkingSetSize</div>
-
-    <div class="prototype">Prototype: SetProcessWorkingSetSize</div>
-<p />
-
-</div> <a name="api:ShellExecuteEx"></a>
- <div class="api">
-    <div class="api-entry">ShellExecuteEx</div>
-
-    <div class="prototype">Prototype: ShellExecuteEx</div>
-<p />
-
-</div> <a name="api:SignalObjectAndWait"></a>
- <div class="api">
-    <div class="api-entry">SignalObjectAndWait</div>
-
-    <div class="prototype">guint32 SignalObjectAndWait(gpointer signal_handle, gpointer wait,
-			    guint32 timeout, gboolean alertable)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>signal_handle:</i></dt><dd> An object to signal</dd><dt><i>wait:</i></dt><dd> An object to wait for</dd><dt><i>timeout:</i></dt><dd> The maximum time in milliseconds to wait for</dd><dt><i>alertable:</i></dt><dd> Specifies whether the function returnes when the system</dd></blockquote>
-<b>Remarks</b>
-<p />	 queues an I/O completion routine or an APC for the calling thread. 
-	
-	 Atomically signals <i>signal</i> and waits for <i>wait</i> to become signalled,
-	 or <i>timeout</i> ms elapses.  If <i>timeout</i> is zero, the object's state is
-	 tested and the function returns immediately.  If <i>timeout</i> is
-	 %INFINITE, the function waits forever.
-	
-	 <i>signal</i> can be a semaphore, mutex or event object.
-	
-	 If <i>alertable</i> is %TRUE and the system queues an I/O completion
-	 routine or an APC for the calling thread, the function returns and
-	 the thread calls the completion routine or APC function.  If
-	 %FALSE, the function does not return, and the thread does not call
-	 the completion routine or APC function.  A completion routine is
-	 queued when the ReadFileEx() or WriteFileEx() function in which it
-	 was specified has completed.  The calling thread is the thread that
-	 initiated the read or write operation.  An APC is queued when
-	 QueueUserAPC() is called.  Currently completion routines and APC
-	 functions are not supported.
-	
-	 Return value: %WAIT_ABANDONED - <i>wait</i> is a mutex that was not
-	 released by the owning thread when it exited.  Ownershop of the
-	 mutex object is granted to the calling thread and the mutex is set
-	 to nonsignalled.  %WAIT_IO_COMPLETION - the wait was ended by one
-	 or more user-mode asynchronous procedure calls queued to the
-	 thread.  %WAIT_OBJECT_0 - The state of <i>wait</i> is signalled.
-	 %WAIT_TIMEOUT - The <i>timeout</i> interval elapsed and <i>wait</i>'s state is
-	 still not signalled.  %WAIT_FAILED - an error occurred.
-
-</div> <a name="api:SleepEx"></a>
- <div class="api">
-    <div class="api-entry">SleepEx</div>
-
-    <div class="prototype">guint32 SleepEx(guint32 ms, gboolean alertable)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>ms:</i></dt><dd> The time in milliseconds to suspend for</dd><dt><i>alertable:</i></dt><dd> if TRUE, the wait can be interrupted by an APC call</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Suspends execution of the current thread for <i>ms</i> milliseconds.  A
-	 value of zero causes the thread to relinquish its time slice.  A
-	 value of %INFINITE causes an infinite delay.
-
-</div> <a name="api:Sleep"></a>
- <div class="api">
-    <div class="api-entry">Sleep</div>
-
-    <div class="prototype">Prototype: Sleep</div>
-<p />
-
-</div> <a name="api:SuspendThread"></a>
- <div class="api">
-    <div class="api-entry">SuspendThread</div>
-
-    <div class="prototype">guint32 SuspendThread(gpointer handle)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>handle:</i></dt><dd> the thread handle to suspend</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Increments the suspend count of thread <i>handle</i>. A thread can only
-	 run if its suspend count is zero.
-	
-	 Return value: the previous suspend count, or 0xFFFFFFFF on error.
-
-</div> <a name="api:TerminateProcess"></a>
- <div class="api">
-    <div class="api-entry">TerminateProcess</div>
-
-    <div class="prototype">Prototype: TerminateProcess</div>
-<p />
-
-</div> <a name="api:TlsAlloc"></a>
- <div class="api">
-    <div class="api-entry">TlsAlloc</div>
-
-    <div class="prototype">guint32 TlsAlloc(void)
-
-</div>
-<p />
-<b>Remarks</b>
-<p />	 
-	 Allocates a Thread Local Storage (TLS) index.  Any thread in the
-	 same process can use this index to store and retrieve values that
-	 are local to that thread.
-	
-	 Return value: The index value, or %TLS_OUT_OF_INDEXES if no index
-	 is available.
-
-</div> <a name="api:TlsFree"></a>
- <div class="api">
-    <div class="api-entry">TlsFree</div>
-
-    <div class="prototype">gboolean TlsFree(guint32 idx)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>idx:</i></dt><dd> The TLS index to free</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Releases a TLS index, making it available for reuse.  This call
-	 will delete any TLS data stored under index <i>idx</i> in all threads.
-	
-	 Return value: %TRUE on success, %FALSE otherwise.
-
-</div> <a name="api:TlsGetValue"></a>
- <div class="api">
-    <div class="api-entry">TlsGetValue</div>
-
-    <div class="prototype">gpointer TlsGetValue(guint32 idx)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>idx:</i></dt><dd> The TLS index to retrieve</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Retrieves the TLS data stored under index <i>idx</i>.
-	
-	 Return value: The value stored in the TLS index <i>idx</i> in the current
-	 thread, or %NULL on error.  As %NULL can be a valid return value,
-	 in this case GetLastError() returns %ERROR_SUCCESS.
-
-</div> <a name="api:TlsSetValue"></a>
- <div class="api">
-    <div class="api-entry">TlsSetValue</div>
-
-    <div class="prototype">gboolean TlsSetValue(guint32 idx, gpointer value)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>idx:</i></dt><dd> The TLS index to store</dd><dt><i>value:</i></dt><dd> The value to store under index <i>idx</i></dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Stores <i>value</i> at TLS index <i>idx</i>.
-	
-	 Return value: %TRUE on success, %FALSE otherwise.
-
-</div><h4><a name="api:TransmitFile">TransmitFile</a>
- <a name="api:TryEnterCriticalSection"></a>
- <div class="api">
-    <div class="api-entry">TryEnterCriticalSection</div>
-
-    <div class="prototype">gboolean TryEnterCriticalSection(WapiCriticalSection *section)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>section:</i></dt><dd> The critical section to try and enter</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 Attempts to enter a critical section without blocking.  If
-	 successful the calling thread takes ownership of the critical
-	 section.
-	
-	 A thread can recursively call EnterCriticalSection() and
-	 TryEnterCriticalSection(), but must call LeaveCriticalSection() an
-	 equal number of times.
-	
-	 Return value: %TRUE if the thread successfully locked the critical
-	 section, %FALSE otherwise.
-
-</div> <a name="api:UnlockFile"></a>
- <div class="api">
-    <div class="api-entry">UnlockFile</div>
-
-    <div class="prototype">Prototype: UnlockFile</div>
-<p />
-
-</div><h4><a name="api:VerLanguageName">VerLanguageName</a>
-<h4><a name="api:VerQueryValue">VerQueryValue</a>
-<h4><a name="api:WaitForInputIdle">WaitForInputIdle</a>
- <a name="api:WaitForMultipleObjectsEx"></a>
- <div class="api">
-    <div class="api-entry">WaitForMultipleObjectsEx</div>
-
-    <div class="prototype">guint32 WaitForMultipleObjectsEx(guint32 numobjects, gpointer *handles,
-				 gboolean waitall, guint32 timeout,
-				 gboolean alertable)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>numobjects:</i></dt><dd> The number of objects in <i>handles</i>. The maximum allowed</dd></blockquote>
-<b>Remarks</b>
-<p />	 is %MAXIMUM_WAIT_OBJECTS. 
-	 <i>handles</i>: An array of object handles.  Duplicates are not allowed.
-	 <i>waitall</i>: If %TRUE, this function waits until all of the handles
-	 are signalled.  If %FALSE, this function returns when any object is
-	 signalled.
-	 <i>timeout</i>: The maximum time in milliseconds to wait for.
-	 <i>alertable</i>: if TRUE, the wait can be interrupted by an APC call
-	
-<p />
-	 This function returns when either one or more of <i>handles</i> is
-	 signalled, or <i>timeout</i> ms elapses.  If <i>timeout</i> is zero, the state
-	 of each item of <i>handles</i> is tested and the function returns
-	 immediately.  If <i>timeout</i> is %INFINITE, the function waits forever.
-	
-	 Return value: %WAIT_OBJECT_0 to %WAIT_OBJECT_0 + <i>numobjects</i> - 1 -
-	 if <i>waitall</i> is %TRUE, indicates that all objects are signalled.  If
-	 <i>waitall</i> is %FALSE, the return value minus %WAIT_OBJECT_0 indicates
-	 the first index into <i>handles</i> of the objects that are signalled.
-	 %WAIT_ABANDONED_0 to %WAIT_ABANDONED_0 + <i>numobjects</i> - 1 - if
-	 <i>waitall</i> is %TRUE, indicates that all objects are signalled, and at
-	 least one object is an abandoned mutex object (See
-	 WaitForSingleObject() for a description of abandoned mutexes.)  If
-	 <i>waitall</i> is %FALSE, the return value minus %WAIT_ABANDONED_0
-	 indicates the first index into <i>handles</i> of an abandoned mutex.
-	 %WAIT_TIMEOUT - The <i>timeout</i> interval elapsed and no objects in
-	 <i>handles</i> are signalled.  %WAIT_FAILED - an error occurred.
-	 %WAIT_IO_COMPLETION - the wait was ended by an APC.
-
-</div> <a name="api:WaitForMultipleObjects"></a>
- <div class="api">
-    <div class="api-entry">WaitForMultipleObjects</div>
-
-    <div class="prototype">Prototype: WaitForMultipleObjects</div>
-<p />
-
-</div> <a name="api:WaitForSingleObjectEx"></a>
- <div class="api">
-    <div class="api-entry">WaitForSingleObjectEx</div>
-
-    <div class="prototype">guint32 WaitForSingleObjectEx(gpointer handle, guint32 timeout,
-			      gboolean alertable)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>handle:</i></dt><dd> an object to wait for</dd><dt><i>timeout:</i></dt><dd> the maximum time in milliseconds to wait for</dd><dt><i>alertable:</i></dt><dd> if TRUE, the wait can be interrupted by an APC call</dd></blockquote>
-<b>Remarks</b>
-<p />	 
-	 This function returns when either <i>handle</i> is signalled, or <i>timeout</i>
-	 ms elapses.  If <i>timeout</i> is zero, the object's state is tested and
-	 the function returns immediately.  If <i>timeout</i> is %INFINITE, the
-	 function waits forever.
-	
-	 Return value: %WAIT_ABANDONED - <i>handle</i> is a mutex that was not
-	 released by the owning thread when it exited.  Ownership of the
-	 mutex object is granted to the calling thread and the mutex is set
-	 to nonsignalled.  %WAIT_OBJECT_0 - The state of <i>handle</i> is
-	 signalled.  %WAIT_TIMEOUT - The <i>timeout</i> interval elapsed and
-	 <i>handle</i>'s state is still not signalled.  %WAIT_FAILED - an error
-	 occurred. %WAIT_IO_COMPLETION - the wait was ended by an APC.
-
-</div> <a name="api:WaitForSingleObject"></a>
- <div class="api">
-    <div class="api-entry">WaitForSingleObject</div>
-
-    <div class="prototype">Prototype: WaitForSingleObject</div>
-<p />
-
-</div> <a name="api:WriteFile"></a>
- <div class="api">
-    <div class="api-entry">WriteFile</div>
-
-    <div class="prototype">gboolean WriteFile(gpointer handle, gconstpointer buffer, guint32 numbytes,
-		   guint32 *byteswritten, WapiOverlapped *overlapped)
-
-</div>
-<p />
-<b>Parameters</b>
-<blockquote><dt><i>handle:</i></dt><dd> The file handle to write to.  The handle must have</dd></blockquote>
-<b>Remarks</b>
-<p />	 %GENERIC_WRITE access. 
-	 <i>buffer</i>: The buffer to read data from.
-	 <i>numbytes</i>: The maximum number of bytes to write.
-	 <i>byteswritten</i>: The actual number of bytes written is stored here.
-	 If the handle is positioned at the file end, the length of the file
-	 is extended.  This parameter may be %NULL.
-	 <i>overlapped</i>: points to a required %WapiOverlapped structure if
-	 <i>handle</i> has the %FILE_FLAG_OVERLAPPED option set, should be NULL
-	 otherwise.
-	
-	 If <i>handle</i> does not have the %FILE_FLAG_OVERLAPPED option set, this
-	 function writes up to <i>numbytes</i> bytes from <i>buffer</i> to the file at
-	 the current file position.  If <i>handle</i> is positioned at the end of
-	 the file, the file is extended.  The actual number of bytes written
-	 is stored in <i>byteswritten</i>.
-	
-	 If <i>handle</i> has the %FILE_FLAG_OVERLAPPED option set, the current
-	 file position is ignored and the write position is taken from data
-	 in the <i>overlapped</i> structure.
-	
-	 Return value: %TRUE if the write succeeds, %FALSE on error.
-
-</div> <a name="api:WSACleanup"></a>
- <div class="api">
-    <div class="api-entry">WSACleanup</div>
-
-    <div class="prototype">Prototype: WSACleanup</div>
-<p />
-
-</div> <a name="api:WSAGetLastError"></a>
- <div class="api">
-    <div class="api-entry">WSAGetLastError</div>
-
-    <div class="prototype">Prototype: WSAGetLastError</div>
-<p />
-
-</div> <a name="api:WSAIoctl"></a>
- <div class="api">
-    <div class="api-entry">WSAIoctl</div>
-
-    <div class="prototype">Prototype: WSAIoctl</div>
-<p />
-
-</div> <a name="api:WSARecv"></a>
- <div class="api">
-    <div class="api-entry">WSARecv</div>
-
-    <div class="prototype">Prototype: WSARecv</div>
-<p />
-
-</div> <a name="api:WSASend"></a>
- <div class="api">
-    <div class="api-entry">WSASend</div>
-
-    <div class="prototype">Prototype: WSASend</div>
-<p />
-
-</div> <a name="api:WSASetLastError"></a>
- <div class="api">
-    <div class="api-entry">WSASetLastError</div>
-
-    <div class="prototype">Prototype: WSASetLastError</div>
-<p />
-
-</div> <a name="api:WSAStartup"></a>
- <div class="api">
-    <div class="api-entry">WSAStartup</div>
-
-    <div class="prototype">Prototype: WSAStartup</div>
-<p />
-
-
-</div><h3>Extended APIs</h3>
-
-	<p />The extended APIs provide access to a few internals of the
-	WAPI stack that are not exposed through the standard Win32
-	APIs.
-	
- <a name="api:mono_once"></a>
- <div class="api">
-    <div class="api-entry">mono_once</div>
-
-    <div class="prototype">Prototype: mono_once</div>
-<p />
-
-</div><h4><a name="api:wapi_clear_interruption">wapi_clear_interruption</a>
-<h4><a name="api:wapi_current_thread_desc">wapi_current_thread_desc</a>
-<h4><a name="api:wapi_interrupt_thread">wapi_interrupt_thread</a>
-<h4><a name="api:wapi_self_interrupt">wapi_self_interrupt</a>
-<h4><a name="api:wapi_thread_clear_wait_handle">wapi_thread_clear_wait_handle</a>
-</h4></h4></h4></h4></h4></h4></h4></h4></h4></h4></h4></h4></h4></h4></h4></h4></h4></h4></h4></h4></h4></body>
-</html>
-</span>
\ No newline at end of file
diff --git a/eglib/ChangeLog b/eglib/ChangeLog
index 8c4a405..4f4631e 100644
--- a/eglib/ChangeLog
+++ b/eglib/ChangeLog
@@ -1,3 +1,7 @@
+2011-07-29  Chris Toshok  <toshok at gmail.com>
+
+	don't redefine ABS
+
 2011-06-15  Gonzalo Paniagua Javier  <gonzalo.mono at gmail.com>
 
 	Fix crash when there's a \' in the arguments.
diff --git a/eglib/INSTALL b/eglib/INSTALL
index 7d1c323..5458714 100644
--- a/eglib/INSTALL
+++ b/eglib/INSTALL
@@ -2,24 +2,18 @@ Installation Instructions
 *************************
 
 Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005,
-2006, 2007, 2008, 2009 Free Software Foundation, Inc.
+2006 Free Software Foundation, Inc.
 
-   Copying and distribution of this file, with or without modification,
-are permitted in any medium without royalty provided the copyright
-notice and this notice are preserved.  This file is offered as-is,
-without warranty of any kind.
+This file is free documentation; the Free Software Foundation gives
+unlimited permission to copy, distribute and modify it.
 
 Basic Installation
 ==================
 
-   Briefly, the shell commands `./configure; make; make install' should
+Briefly, the shell commands `./configure; make; make install' should
 configure, build, and install this package.  The following
 more-detailed instructions are generic; see the `README' file for
-instructions specific to this package.  Some packages provide this
-`INSTALL' file but do not implement all of the features documented
-below.  The lack of an optional feature in a given package is not
-necessarily a bug.  More recommendations for GNU packages can be found
-in *note Makefile Conventions: (standards)Makefile Conventions.
+instructions specific to this package.
 
    The `configure' shell script attempts to guess correct values for
 various system-dependent variables used during compilation.  It uses
@@ -48,7 +42,7 @@ may remove or edit it.
 you want to change it or regenerate `configure' using a newer version
 of `autoconf'.
 
-   The simplest way to compile this package is:
+The simplest way to compile this package is:
 
   1. `cd' to the directory containing the package's source code and type
      `./configure' to configure the package for your system.
@@ -59,22 +53,12 @@ of `autoconf'.
   2. Type `make' to compile the package.
 
   3. Optionally, type `make check' to run any self-tests that come with
-     the package, generally using the just-built uninstalled binaries.
+     the package.
 
   4. Type `make install' to install the programs and any data files and
-     documentation.  When installing into a prefix owned by root, it is
-     recommended that the package be configured and built as a regular
-     user, and only the `make install' phase executed with root
-     privileges.
-
-  5. Optionally, type `make installcheck' to repeat any self-tests, but
-     this time using the binaries in their final installed location.
-     This target does not install anything.  Running this target as a
-     regular user, particularly if the prior `make install' required
-     root privileges, verifies that the installation completed
-     correctly.
-
-  6. You can remove the program binaries and object files from the
+     documentation.
+
+  5. You can remove the program binaries and object files from the
      source code directory by typing `make clean'.  To also remove the
      files that `configure' created (so you can compile the package for
      a different kind of computer), type `make distclean'.  There is
@@ -83,22 +67,12 @@ of `autoconf'.
      all sorts of other programs in order to regenerate files that came
      with the distribution.
 
-  7. Often, you can also type `make uninstall' to remove the installed
-     files again.  In practice, not all packages have tested that
-     uninstallation works correctly, even though it is required by the
-     GNU Coding Standards.
-
-  8. Some packages, particularly those that use Automake, provide `make
-     distcheck', which can by used by developers to test that all other
-     targets like `make install' and `make uninstall' work correctly.
-     This target is generally not run by end users.
-
 Compilers and Options
 =====================
 
-   Some systems require unusual options for compilation or linking that
-the `configure' script does not know about.  Run `./configure --help'
-for details on some of the pertinent environment variables.
+Some systems require unusual options for compilation or linking that the
+`configure' script does not know about.  Run `./configure --help' for
+details on some of the pertinent environment variables.
 
    You can give `configure' initial values for configuration parameters
 by setting variables in the command line or in the environment.  Here
@@ -111,41 +85,25 @@ is an example:
 Compiling For Multiple Architectures
 ====================================
 
-   You can compile the package for more than one kind of computer at the
+You can compile the package for more than one kind of computer at the
 same time, by placing the object files for each architecture in their
 own directory.  To do this, you can use GNU `make'.  `cd' to the
 directory where you want the object files and executables to go and run
 the `configure' script.  `configure' automatically checks for the
-source code in the directory that `configure' is in and in `..'.  This
-is known as a "VPATH" build.
+source code in the directory that `configure' is in and in `..'.
 
    With a non-GNU `make', it is safer to compile the package for one
 architecture at a time in the source code directory.  After you have
 installed the package for one architecture, use `make distclean' before
 reconfiguring for another architecture.
 
-   On MacOS X 10.5 and later systems, you can create libraries and
-executables that work on multiple system types--known as "fat" or
-"universal" binaries--by specifying multiple `-arch' options to the
-compiler but only a single `-arch' option to the preprocessor.  Like
-this:
-
-     ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
-                 CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
-                 CPP="gcc -E" CXXCPP="g++ -E"
-
-   This is not guaranteed to produce working output in all cases, you
-may have to build one architecture at a time and combine the results
-using the `lipo' tool if you have problems.
-
 Installation Names
 ==================
 
-   By default, `make install' installs the package's commands under
+By default, `make install' installs the package's commands under
 `/usr/local/bin', include files under `/usr/local/include', etc.  You
 can specify an installation prefix other than `/usr/local' by giving
-`configure' the option `--prefix=PREFIX', where PREFIX must be an
-absolute file name.
+`configure' the option `--prefix=PREFIX'.
 
    You can specify separate installation prefixes for
 architecture-specific files and architecture-independent files.  If you
@@ -156,47 +114,16 @@ Documentation and other data files still use the regular prefix.
    In addition, if you use an unusual directory layout you can give
 options like `--bindir=DIR' to specify different values for particular
 kinds of files.  Run `configure --help' for a list of the directories
-you can set and what kinds of files go in them.  In general, the
-default for these options is expressed in terms of `${prefix}', so that
-specifying just `--prefix' will affect all of the other directory
-specifications that were not explicitly provided.
-
-   The most portable way to affect installation locations is to pass the
-correct locations to `configure'; however, many packages provide one or
-both of the following shortcuts of passing variable assignments to the
-`make install' command line to change installation locations without
-having to reconfigure or recompile.
-
-   The first method involves providing an override variable for each
-affected directory.  For example, `make install
-prefix=/alternate/directory' will choose an alternate location for all
-directory configuration variables that were expressed in terms of
-`${prefix}'.  Any directories that were specified during `configure',
-but not in terms of `${prefix}', must each be overridden at install
-time for the entire installation to be relocated.  The approach of
-makefile variable overrides for each directory variable is required by
-the GNU Coding Standards, and ideally causes no recompilation.
-However, some platforms have known limitations with the semantics of
-shared libraries that end up requiring recompilation when using this
-method, particularly noticeable in packages that use GNU Libtool.
-
-   The second method involves providing the `DESTDIR' variable.  For
-example, `make install DESTDIR=/alternate/directory' will prepend
-`/alternate/directory' before all installation names.  The approach of
-`DESTDIR' overrides is not required by the GNU Coding Standards, and
-does not work on platforms that have drive letters.  On the other hand,
-it does better at avoiding recompilation issues, and works well even
-when some directory options were not specified in terms of `${prefix}'
-at `configure' time.
-
-Optional Features
-=================
+you can set and what kinds of files go in them.
 
    If the package supports it, you can cause programs to be installed
 with an extra prefix or suffix on their names by giving `configure' the
 option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
 
-   Some packages pay attention to `--enable-FEATURE' options to
+Optional Features
+=================
+
+Some packages pay attention to `--enable-FEATURE' options to
 `configure', where FEATURE indicates an optional part of the package.
 They may also pay attention to `--with-PACKAGE' options, where PACKAGE
 is something like `gnu-as' or `x' (for the X Window System).  The
@@ -208,53 +135,14 @@ find the X include and library files automatically, but if it doesn't,
 you can use the `configure' options `--x-includes=DIR' and
 `--x-libraries=DIR' to specify their locations.
 
-   Some packages offer the ability to configure how verbose the
-execution of `make' will be.  For these packages, running `./configure
---enable-silent-rules' sets the default to minimal output, which can be
-overridden with `make V=1'; while running `./configure
---disable-silent-rules' sets the default to verbose, which can be
-overridden with `make V=0'.
-
-Particular systems
-==================
-
-   On HP-UX, the default C compiler is not ANSI C compatible.  If GNU
-CC is not installed, it is recommended to use the following options in
-order to use an ANSI C compiler:
-
-     ./configure CC="cc -Ae -D_XOPEN_SOURCE=500"
-
-and if that doesn't work, install pre-built binaries of GCC for HP-UX.
-
-   On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
-parse its `<wchar.h>' header file.  The option `-nodtk' can be used as
-a workaround.  If GNU CC is not installed, it is therefore recommended
-to try
-
-     ./configure CC="cc"
-
-and if that doesn't work, try
-
-     ./configure CC="cc -nodtk"
-
-   On Solaris, don't put `/usr/ucb' early in your `PATH'.  This
-directory contains several dysfunctional programs; working variants of
-these programs are available in `/usr/bin'.  So, if you need `/usr/ucb'
-in your `PATH', put it _after_ `/usr/bin'.
-
-   On Haiku, software installed for all users goes in `/boot/common',
-not `/usr/local'.  It is recommended to use the following options:
-
-     ./configure --prefix=/boot/common
-
 Specifying the System Type
 ==========================
 
-   There may be some features `configure' cannot figure out
-automatically, but needs to determine by the type of machine the package
-will run on.  Usually, assuming the package is built to be run on the
-_same_ architectures, `configure' can figure that out, but if it prints
-a message saying it cannot guess the machine type, give it the
+There may be some features `configure' cannot figure out automatically,
+but needs to determine by the type of machine the package will run on.
+Usually, assuming the package is built to be run on the _same_
+architectures, `configure' can figure that out, but if it prints a
+message saying it cannot guess the machine type, give it the
 `--build=TYPE' option.  TYPE can either be a short name for the system
 type, such as `sun4', or a canonical name which has the form:
 
@@ -262,8 +150,7 @@ type, such as `sun4', or a canonical name which has the form:
 
 where SYSTEM can have one of these forms:
 
-     OS
-     KERNEL-OS
+     OS KERNEL-OS
 
    See the file `config.sub' for the possible values of each field.  If
 `config.sub' isn't included in this package, then this package doesn't
@@ -281,9 +168,9 @@ eventually be run) with `--host=TYPE'.
 Sharing Defaults
 ================
 
-   If you want to set default values for `configure' scripts to share,
-you can create a site shell script called `config.site' that gives
-default values for variables like `CC', `cache_file', and `prefix'.
+If you want to set default values for `configure' scripts to share, you
+can create a site shell script called `config.site' that gives default
+values for variables like `CC', `cache_file', and `prefix'.
 `configure' looks for `PREFIX/share/config.site' if it exists, then
 `PREFIX/etc/config.site' if it exists.  Or, you can set the
 `CONFIG_SITE' environment variable to the location of the site script.
@@ -292,7 +179,7 @@ A warning: not all `configure' scripts look for a site script.
 Defining Variables
 ==================
 
-   Variables not defined in a site shell script can be set in the
+Variables not defined in a site shell script can be set in the
 environment passed to `configure'.  However, some packages may run
 configure again during the build, and the customized values of these
 variables may be lost.  In order to avoid this problem, you should set
@@ -311,19 +198,11 @@ an Autoconf bug.  Until the bug is fixed you can use this workaround:
 `configure' Invocation
 ======================
 
-   `configure' recognizes the following options to control how it
-operates.
+`configure' recognizes the following options to control how it operates.
 
 `--help'
 `-h'
-     Print a summary of all of the options to `configure', and exit.
-
-`--help=short'
-`--help=recursive'
-     Print a summary of the options unique to this package's
-     `configure', and exit.  The `short' variant lists options used
-     only in the top level, while the `recursive' variant lists options
-     also present in any nested packages.
+     Print a summary of the options to `configure', and exit.
 
 `--version'
 `-V'
@@ -350,16 +229,6 @@ operates.
      Look for the package's source code in directory DIR.  Usually
      `configure' can determine that directory automatically.
 
-`--prefix=DIR'
-     Use DIR as the installation prefix.  *note Installation Names::
-     for more details, including other options available for fine-tuning
-     the installation locations.
-
-`--no-create'
-`-n'
-     Run the configure checks, but stop before creating any output
-     files.
-
 `configure' also accepts some other, not widely useful, options.  Run
 `configure --help' for more details.
 
diff --git a/eglib/Makefile.in b/eglib/Makefile.in
index 4fb433c..414ca22 100644
--- a/eglib/Makefile.in
+++ b/eglib/Makefile.in
@@ -35,13 +35,11 @@ build_triplet = @build@
 host_triplet = @host@
 target_triplet = @target@
 subdir = .
-DIST_COMMON = README $(am__configure_deps) $(srcdir)/../config.guess \
-	$(srcdir)/../config.sub $(srcdir)/../install-sh \
-	$(srcdir)/../ltmain.sh $(srcdir)/../missing \
-	$(srcdir)/../mkinstalldirs $(srcdir)/Makefile.am \
+DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
 	$(srcdir)/Makefile.in $(srcdir)/config.h.in \
 	$(top_srcdir)/configure AUTHORS COPYING ChangeLog INSTALL NEWS \
-	TODO
+	TODO config.guess config.sub depcomp install-sh ltmain.sh \
+	missing
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
 	$(top_srcdir)/configure.ac
@@ -49,7 +47,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 	$(ACLOCAL_M4)
 am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
  configure.lineno config.status.lineno
-mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs
+mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = config.h
 CONFIG_CLEAN_FILES =
 CONFIG_CLEAN_VPATH_FILES =
diff --git a/eglib/config.guess b/eglib/config.guess
new file mode 100755
index 0000000..396482d
--- /dev/null
+++ b/eglib/config.guess
@@ -0,0 +1,1500 @@
+#! /bin/sh
+# Attempt to guess a canonical system name.
+#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
+#   2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation,
+#   Inc.
+
+timestamp='2006-07-02'
+
+# This file 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., 51 Franklin Street - Fifth Floor, Boston, MA
+# 02110-1301, 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.
+
+
+# Originally written by Per Bothner <per at bothner.com>.
+# Please send patches to <config-patches at gnu.org>.  Submit a context
+# diff and a properly formatted ChangeLog entry.
+#
+# This script attempts to guess a canonical system name similar to
+# config.sub.  If it succeeds, it prints the system name on stdout, and
+# exits with 0.  Otherwise, it exits with 1.
+#
+# The plan is that this can be called by configure scripts if you
+# don't specify an explicit build system type.
+
+me=`echo "$0" | sed -e 's,.*/,,'`
+
+usage="\
+Usage: $0 [OPTION]
+
+Output the configuration name of the system \`$me' is run on.
+
+Operation modes:
+  -h, --help         print this help, then exit
+  -t, --time-stamp   print date of last modification, then exit
+  -v, --version      print version number, then exit
+
+Report bugs and patches to <config-patches at gnu.org>."
+
+version="\
+GNU config.guess ($timestamp)
+
+Originally written by Per Bothner.
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
+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."
+
+help="
+Try \`$me --help' for more information."
+
+# Parse command line
+while test $# -gt 0 ; do
+  case $1 in
+    --time-stamp | --time* | -t )
+       echo "$timestamp" ; exit ;;
+    --version | -v )
+       echo "$version" ; exit ;;
+    --help | --h* | -h )
+       echo "$usage"; exit ;;
+    -- )     # Stop option processing
+       shift; break ;;
+    - )	# Use stdin as input.
+       break ;;
+    -* )
+       echo "$me: invalid option $1$help" >&2
+       exit 1 ;;
+    * )
+       break ;;
+  esac
+done
+
+if test $# != 0; then
+  echo "$me: too many arguments$help" >&2
+  exit 1
+fi
+
+trap 'exit 1' 1 2 15
+
+# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
+# compiler to aid in system detection is discouraged as it requires
+# temporary files to be created and, as you can see below, it is a
+# headache to deal with in a portable fashion.
+
+# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
+# use `HOST_CC' if defined, but it is deprecated.
+
+# Portable tmp directory creation inspired by the Autoconf team.
+
+set_cc_for_build='
+trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
+trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
+: ${TMPDIR=/tmp} ;
+ { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
+ { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
+ { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
+ { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
+dummy=$tmp/dummy ;
+tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
+case $CC_FOR_BUILD,$HOST_CC,$CC in
+ ,,)    echo "int x;" > $dummy.c ;
+	for c in cc gcc c89 c99 ; do
+	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
+	     CC_FOR_BUILD="$c"; break ;
+	  fi ;
+	done ;
+	if test x"$CC_FOR_BUILD" = x ; then
+	  CC_FOR_BUILD=no_compiler_found ;
+	fi
+	;;
+ ,,*)   CC_FOR_BUILD=$CC ;;
+ ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
+esac ; set_cc_for_build= ;'
+
+# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
+# (ghazi at noc.rutgers.edu 1994-08-24)
+if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
+	PATH=$PATH:/.attbin ; export PATH
+fi
+
+UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
+UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
+UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
+UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
+
+# Note: order is significant - the case branches are not exclusive.
+
+case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
+    *:NetBSD:*:*)
+	# NetBSD (nbsd) targets should (where applicable) match one or
+	# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
+	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
+	# switched to ELF, *-*-netbsd* would select the old
+	# object file format.  This provides both forward
+	# compatibility and a consistent mechanism for selecting the
+	# object file format.
+	#
+	# Note: NetBSD doesn't particularly care about the vendor
+	# portion of the name.  We always set it to "unknown".
+	sysctl="sysctl -n hw.machine_arch"
+	UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
+	    /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
+	case "${UNAME_MACHINE_ARCH}" in
+	    armeb) machine=armeb-unknown ;;
+	    arm*) machine=arm-unknown ;;
+	    sh3el) machine=shl-unknown ;;
+	    sh3eb) machine=sh-unknown ;;
+	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
+	esac
+	# The Operating System including object format, if it has switched
+	# to ELF recently, or will in the future.
+	case "${UNAME_MACHINE_ARCH}" in
+	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
+		eval $set_cc_for_build
+		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
+			| grep __ELF__ >/dev/null
+		then
+		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
+		    # Return netbsd for either.  FIX?
+		    os=netbsd
+		else
+		    os=netbsdelf
+		fi
+		;;
+	    *)
+	        os=netbsd
+		;;
+	esac
+	# The OS release
+	# Debian GNU/NetBSD machines have a different userland, and
+	# thus, need a distinct triplet. However, they do not need
+	# kernel version information, so it can be replaced with a
+	# suitable tag, in the style of linux-gnu.
+	case "${UNAME_VERSION}" in
+	    Debian*)
+		release='-gnu'
+		;;
+	    *)
+		release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
+		;;
+	esac
+	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
+	# contains redundant information, the shorter form:
+	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
+	echo "${machine}-${os}${release}"
+	exit ;;
+    *:OpenBSD:*:*)
+	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
+	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
+	exit ;;
+    *:ekkoBSD:*:*)
+	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
+	exit ;;
+    *:SolidBSD:*:*)
+	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
+	exit ;;
+    macppc:MirBSD:*:*)
+	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
+	exit ;;
+    *:MirBSD:*:*)
+	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
+	exit ;;
+    alpha:OSF1:*:*)
+	case $UNAME_RELEASE in
+	*4.0)
+		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
+		;;
+	*5.*)
+	        UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
+		;;
+	esac
+	# According to Compaq, /usr/sbin/psrinfo has been available on
+	# OSF/1 and Tru64 systems produced since 1995.  I hope that
+	# covers most systems running today.  This code pipes the CPU
+	# types through head -n 1, so we only detect the type of CPU 0.
+	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
+	case "$ALPHA_CPU_TYPE" in
+	    "EV4 (21064)")
+		UNAME_MACHINE="alpha" ;;
+	    "EV4.5 (21064)")
+		UNAME_MACHINE="alpha" ;;
+	    "LCA4 (21066/21068)")
+		UNAME_MACHINE="alpha" ;;
+	    "EV5 (21164)")
+		UNAME_MACHINE="alphaev5" ;;
+	    "EV5.6 (21164A)")
+		UNAME_MACHINE="alphaev56" ;;
+	    "EV5.6 (21164PC)")
+		UNAME_MACHINE="alphapca56" ;;
+	    "EV5.7 (21164PC)")
+		UNAME_MACHINE="alphapca57" ;;
+	    "EV6 (21264)")
+		UNAME_MACHINE="alphaev6" ;;
+	    "EV6.7 (21264A)")
+		UNAME_MACHINE="alphaev67" ;;
+	    "EV6.8CB (21264C)")
+		UNAME_MACHINE="alphaev68" ;;
+	    "EV6.8AL (21264B)")
+		UNAME_MACHINE="alphaev68" ;;
+	    "EV6.8CX (21264D)")
+		UNAME_MACHINE="alphaev68" ;;
+	    "EV6.9A (21264/EV69A)")
+		UNAME_MACHINE="alphaev69" ;;
+	    "EV7 (21364)")
+		UNAME_MACHINE="alphaev7" ;;
+	    "EV7.9 (21364A)")
+		UNAME_MACHINE="alphaev79" ;;
+	esac
+	# A Pn.n version is a patched version.
+	# A Vn.n version is a released version.
+	# A Tn.n version is a released field test version.
+	# A Xn.n version is an unreleased experimental baselevel.
+	# 1.2 uses "1.2" for uname -r.
+	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
+	exit ;;
+    Alpha\ *:Windows_NT*:*)
+	# How do we know it's Interix rather than the generic POSIX subsystem?
+	# Should we change UNAME_MACHINE based on the output of uname instead
+	# of the specific Alpha model?
+	echo alpha-pc-interix
+	exit ;;
+    21064:Windows_NT:50:3)
+	echo alpha-dec-winnt3.5
+	exit ;;
+    Amiga*:UNIX_System_V:4.0:*)
+	echo m68k-unknown-sysv4
+	exit ;;
+    *:[Aa]miga[Oo][Ss]:*:*)
+	echo ${UNAME_MACHINE}-unknown-amigaos
+	exit ;;
+    *:[Mm]orph[Oo][Ss]:*:*)
+	echo ${UNAME_MACHINE}-unknown-morphos
+	exit ;;
+    *:OS/390:*:*)
+	echo i370-ibm-openedition
+	exit ;;
+    *:z/VM:*:*)
+	echo s390-ibm-zvmoe
+	exit ;;
+    *:OS400:*:*)
+        echo powerpc-ibm-os400
+	exit ;;
+    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
+	echo arm-acorn-riscix${UNAME_RELEASE}
+	exit ;;
+    arm:riscos:*:*|arm:RISCOS:*:*)
+	echo arm-unknown-riscos
+	exit ;;
+    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
+	echo hppa1.1-hitachi-hiuxmpp
+	exit ;;
+    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
+	# akee at wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
+	if test "`(/bin/universe) 2>/dev/null`" = att ; then
+		echo pyramid-pyramid-sysv3
+	else
+		echo pyramid-pyramid-bsd
+	fi
+	exit ;;
+    NILE*:*:*:dcosx)
+	echo pyramid-pyramid-svr4
+	exit ;;
+    DRS?6000:unix:4.0:6*)
+	echo sparc-icl-nx6
+	exit ;;
+    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
+	case `/usr/bin/uname -p` in
+	    sparc) echo sparc-icl-nx7; exit ;;
+	esac ;;
+    sun4H:SunOS:5.*:*)
+	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+	exit ;;
+    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
+	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+	exit ;;
+    i86pc:SunOS:5.*:*)
+	echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+	exit ;;
+    sun4*:SunOS:6*:*)
+	# According to config.sub, this is the proper way to canonicalize
+	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
+	# it's likely to be more like Solaris than SunOS4.
+	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+	exit ;;
+    sun4*:SunOS:*:*)
+	case "`/usr/bin/arch -k`" in
+	    Series*|S4*)
+		UNAME_RELEASE=`uname -v`
+		;;
+	esac
+	# Japanese Language versions have a version number like `4.1.3-JL'.
+	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
+	exit ;;
+    sun3*:SunOS:*:*)
+	echo m68k-sun-sunos${UNAME_RELEASE}
+	exit ;;
+    sun*:*:4.2BSD:*)
+	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
+	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
+	case "`/bin/arch`" in
+	    sun3)
+		echo m68k-sun-sunos${UNAME_RELEASE}
+		;;
+	    sun4)
+		echo sparc-sun-sunos${UNAME_RELEASE}
+		;;
+	esac
+	exit ;;
+    aushp:SunOS:*:*)
+	echo sparc-auspex-sunos${UNAME_RELEASE}
+	exit ;;
+    # The situation for MiNT is a little confusing.  The machine name
+    # can be virtually everything (everything which is not
+    # "atarist" or "atariste" at least should have a processor
+    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
+    # to the lowercase version "mint" (or "freemint").  Finally
+    # the system name "TOS" denotes a system which is actually not
+    # MiNT.  But MiNT is downward compatible to TOS, so this should
+    # be no problem.
+    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
+        echo m68k-atari-mint${UNAME_RELEASE}
+	exit ;;
+    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
+	echo m68k-atari-mint${UNAME_RELEASE}
+        exit ;;
+    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
+        echo m68k-atari-mint${UNAME_RELEASE}
+	exit ;;
+    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
+        echo m68k-milan-mint${UNAME_RELEASE}
+        exit ;;
+    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
+        echo m68k-hades-mint${UNAME_RELEASE}
+        exit ;;
+    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
+        echo m68k-unknown-mint${UNAME_RELEASE}
+        exit ;;
+    m68k:machten:*:*)
+	echo m68k-apple-machten${UNAME_RELEASE}
+	exit ;;
+    powerpc:machten:*:*)
+	echo powerpc-apple-machten${UNAME_RELEASE}
+	exit ;;
+    RISC*:Mach:*:*)
+	echo mips-dec-mach_bsd4.3
+	exit ;;
+    RISC*:ULTRIX:*:*)
+	echo mips-dec-ultrix${UNAME_RELEASE}
+	exit ;;
+    VAX*:ULTRIX*:*:*)
+	echo vax-dec-ultrix${UNAME_RELEASE}
+	exit ;;
+    2020:CLIX:*:* | 2430:CLIX:*:*)
+	echo clipper-intergraph-clix${UNAME_RELEASE}
+	exit ;;
+    mips:*:*:UMIPS | mips:*:*:RISCos)
+	eval $set_cc_for_build
+	sed 's/^	//' << EOF >$dummy.c
+#ifdef __cplusplus
+#include <stdio.h>  /* for printf() prototype */
+	int main (int argc, char *argv[]) {
+#else
+	int main (argc, argv) int argc; char *argv[]; {
+#endif
+	#if defined (host_mips) && defined (MIPSEB)
+	#if defined (SYSTYPE_SYSV)
+	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
+	#endif
+	#if defined (SYSTYPE_SVR4)
+	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
+	#endif
+	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
+	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
+	#endif
+	#endif
+	  exit (-1);
+	}
+EOF
+	$CC_FOR_BUILD -o $dummy $dummy.c &&
+	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
+	  SYSTEM_NAME=`$dummy $dummyarg` &&
+	    { echo "$SYSTEM_NAME"; exit; }
+	echo mips-mips-riscos${UNAME_RELEASE}
+	exit ;;
+    Motorola:PowerMAX_OS:*:*)
+	echo powerpc-motorola-powermax
+	exit ;;
+    Motorola:*:4.3:PL8-*)
+	echo powerpc-harris-powermax
+	exit ;;
+    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
+	echo powerpc-harris-powermax
+	exit ;;
+    Night_Hawk:Power_UNIX:*:*)
+	echo powerpc-harris-powerunix
+	exit ;;
+    m88k:CX/UX:7*:*)
+	echo m88k-harris-cxux7
+	exit ;;
+    m88k:*:4*:R4*)
+	echo m88k-motorola-sysv4
+	exit ;;
+    m88k:*:3*:R3*)
+	echo m88k-motorola-sysv3
+	exit ;;
+    AViiON:dgux:*:*)
+        # DG/UX returns AViiON for all architectures
+        UNAME_PROCESSOR=`/usr/bin/uname -p`
+	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
+	then
+	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
+	       [ ${TARGET_BINARY_INTERFACE}x = x ]
+	    then
+		echo m88k-dg-dgux${UNAME_RELEASE}
+	    else
+		echo m88k-dg-dguxbcs${UNAME_RELEASE}
+	    fi
+	else
+	    echo i586-dg-dgux${UNAME_RELEASE}
+	fi
+ 	exit ;;
+    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
+	echo m88k-dolphin-sysv3
+	exit ;;
+    M88*:*:R3*:*)
+	# Delta 88k system running SVR3
+	echo m88k-motorola-sysv3
+	exit ;;
+    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
+	echo m88k-tektronix-sysv3
+	exit ;;
+    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
+	echo m68k-tektronix-bsd
+	exit ;;
+    *:IRIX*:*:*)
+	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
+	exit ;;
+    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
+	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
+	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
+    i*86:AIX:*:*)
+	echo i386-ibm-aix
+	exit ;;
+    ia64:AIX:*:*)
+	if [ -x /usr/bin/oslevel ] ; then
+		IBM_REV=`/usr/bin/oslevel`
+	else
+		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
+	fi
+	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
+	exit ;;
+    *:AIX:2:3)
+	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
+		eval $set_cc_for_build
+		sed 's/^		//' << EOF >$dummy.c
+		#include <sys/systemcfg.h>
+
+		main()
+			{
+			if (!__power_pc())
+				exit(1);
+			puts("powerpc-ibm-aix3.2.5");
+			exit(0);
+			}
+EOF
+		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
+		then
+			echo "$SYSTEM_NAME"
+		else
+			echo rs6000-ibm-aix3.2.5
+		fi
+	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
+		echo rs6000-ibm-aix3.2.4
+	else
+		echo rs6000-ibm-aix3.2
+	fi
+	exit ;;
+    *:AIX:*:[45])
+	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
+	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
+		IBM_ARCH=rs6000
+	else
+		IBM_ARCH=powerpc
+	fi
+	if [ -x /usr/bin/oslevel ] ; then
+		IBM_REV=`/usr/bin/oslevel`
+	else
+		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
+	fi
+	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
+	exit ;;
+    *:AIX:*:*)
+	echo rs6000-ibm-aix
+	exit ;;
+    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
+	echo romp-ibm-bsd4.4
+	exit ;;
+    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
+	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
+	exit ;;                             # report: romp-ibm BSD 4.3
+    *:BOSX:*:*)
+	echo rs6000-bull-bosx
+	exit ;;
+    DPX/2?00:B.O.S.:*:*)
+	echo m68k-bull-sysv3
+	exit ;;
+    9000/[34]??:4.3bsd:1.*:*)
+	echo m68k-hp-bsd
+	exit ;;
+    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
+	echo m68k-hp-bsd4.4
+	exit ;;
+    9000/[34678]??:HP-UX:*:*)
+	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
+	case "${UNAME_MACHINE}" in
+	    9000/31? )            HP_ARCH=m68000 ;;
+	    9000/[34]?? )         HP_ARCH=m68k ;;
+	    9000/[678][0-9][0-9])
+		if [ -x /usr/bin/getconf ]; then
+		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
+                    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
+                    case "${sc_cpu_version}" in
+                      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
+                      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
+                      532)                      # CPU_PA_RISC2_0
+                        case "${sc_kernel_bits}" in
+                          32) HP_ARCH="hppa2.0n" ;;
+                          64) HP_ARCH="hppa2.0w" ;;
+			  '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
+                        esac ;;
+                    esac
+		fi
+		if [ "${HP_ARCH}" = "" ]; then
+		    eval $set_cc_for_build
+		    sed 's/^              //' << EOF >$dummy.c
+
+              #define _HPUX_SOURCE
+              #include <stdlib.h>
+              #include <unistd.h>
+
+              int main ()
+              {
+              #if defined(_SC_KERNEL_BITS)
+                  long bits = sysconf(_SC_KERNEL_BITS);
+              #endif
+                  long cpu  = sysconf (_SC_CPU_VERSION);
+
+                  switch (cpu)
+              	{
+              	case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
+              	case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
+              	case CPU_PA_RISC2_0:
+              #if defined(_SC_KERNEL_BITS)
+              	    switch (bits)
+              		{
+              		case 64: puts ("hppa2.0w"); break;
+              		case 32: puts ("hppa2.0n"); break;
+              		default: puts ("hppa2.0"); break;
+              		} break;
+              #else  /* !defined(_SC_KERNEL_BITS) */
+              	    puts ("hppa2.0"); break;
+              #endif
+              	default: puts ("hppa1.0"); break;
+              	}
+                  exit (0);
+              }
+EOF
+		    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
+		    test -z "$HP_ARCH" && HP_ARCH=hppa
+		fi ;;
+	esac
+	if [ ${HP_ARCH} = "hppa2.0w" ]
+	then
+	    eval $set_cc_for_build
+
+	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
+	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
+	    # generating 64-bit code.  GNU and HP use different nomenclature:
+	    #
+	    # $ CC_FOR_BUILD=cc ./config.guess
+	    # => hppa2.0w-hp-hpux11.23
+	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
+	    # => hppa64-hp-hpux11.23
+
+	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
+		grep __LP64__ >/dev/null
+	    then
+		HP_ARCH="hppa2.0w"
+	    else
+		HP_ARCH="hppa64"
+	    fi
+	fi
+	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
+	exit ;;
+    ia64:HP-UX:*:*)
+	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
+	echo ia64-hp-hpux${HPUX_REV}
+	exit ;;
+    3050*:HI-UX:*:*)
+	eval $set_cc_for_build
+	sed 's/^	//' << EOF >$dummy.c
+	#include <unistd.h>
+	int
+	main ()
+	{
+	  long cpu = sysconf (_SC_CPU_VERSION);
+	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
+	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
+	     results, however.  */
+	  if (CPU_IS_PA_RISC (cpu))
+	    {
+	      switch (cpu)
+		{
+		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
+		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
+		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
+		  default: puts ("hppa-hitachi-hiuxwe2"); break;
+		}
+	    }
+	  else if (CPU_IS_HP_MC68K (cpu))
+	    puts ("m68k-hitachi-hiuxwe2");
+	  else puts ("unknown-hitachi-hiuxwe2");
+	  exit (0);
+	}
+EOF
+	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
+		{ echo "$SYSTEM_NAME"; exit; }
+	echo unknown-hitachi-hiuxwe2
+	exit ;;
+    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
+	echo hppa1.1-hp-bsd
+	exit ;;
+    9000/8??:4.3bsd:*:*)
+	echo hppa1.0-hp-bsd
+	exit ;;
+    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
+	echo hppa1.0-hp-mpeix
+	exit ;;
+    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
+	echo hppa1.1-hp-osf
+	exit ;;
+    hp8??:OSF1:*:*)
+	echo hppa1.0-hp-osf
+	exit ;;
+    i*86:OSF1:*:*)
+	if [ -x /usr/sbin/sysversion ] ; then
+	    echo ${UNAME_MACHINE}-unknown-osf1mk
+	else
+	    echo ${UNAME_MACHINE}-unknown-osf1
+	fi
+	exit ;;
+    parisc*:Lites*:*:*)
+	echo hppa1.1-hp-lites
+	exit ;;
+    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
+	echo c1-convex-bsd
+        exit ;;
+    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
+	if getsysinfo -f scalar_acc
+	then echo c32-convex-bsd
+	else echo c2-convex-bsd
+	fi
+        exit ;;
+    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
+	echo c34-convex-bsd
+        exit ;;
+    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
+	echo c38-convex-bsd
+        exit ;;
+    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
+	echo c4-convex-bsd
+        exit ;;
+    CRAY*Y-MP:*:*:*)
+	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+	exit ;;
+    CRAY*[A-Z]90:*:*:*)
+	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
+	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
+	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
+	      -e 's/\.[^.]*$/.X/'
+	exit ;;
+    CRAY*TS:*:*:*)
+	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+	exit ;;
+    CRAY*T3E:*:*:*)
+	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+	exit ;;
+    CRAY*SV1:*:*:*)
+	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+	exit ;;
+    *:UNICOS/mp:*:*)
+	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+	exit ;;
+    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
+	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
+        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
+        FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
+        echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+        exit ;;
+    5000:UNIX_System_V:4.*:*)
+        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
+        FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
+        echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+	exit ;;
+    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
+	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
+	exit ;;
+    sparc*:BSD/OS:*:*)
+	echo sparc-unknown-bsdi${UNAME_RELEASE}
+	exit ;;
+    *:BSD/OS:*:*)
+	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
+	exit ;;
+    *:FreeBSD:*:*)
+	case ${UNAME_MACHINE} in
+	    pc98)
+		echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+	    amd64)
+		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+	    *)
+		echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+	esac
+	exit ;;
+    i*:CYGWIN*:*)
+	echo ${UNAME_MACHINE}-pc-cygwin
+	exit ;;
+    i*:MINGW*:*)
+	echo ${UNAME_MACHINE}-pc-mingw32
+	exit ;;
+    i*:windows32*:*)
+    	# uname -m includes "-pc" on this system.
+    	echo ${UNAME_MACHINE}-mingw32
+	exit ;;
+    i*:PW*:*)
+	echo ${UNAME_MACHINE}-pc-pw32
+	exit ;;
+    x86:Interix*:[3456]*)
+	echo i586-pc-interix${UNAME_RELEASE}
+	exit ;;
+    EM64T:Interix*:[3456]*)
+	echo x86_64-unknown-interix${UNAME_RELEASE}
+	exit ;;
+    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
+	echo i${UNAME_MACHINE}-pc-mks
+	exit ;;
+    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
+	# How do we know it's Interix rather than the generic POSIX subsystem?
+	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
+	# UNAME_MACHINE based on the output of uname instead of i386?
+	echo i586-pc-interix
+	exit ;;
+    i*:UWIN*:*)
+	echo ${UNAME_MACHINE}-pc-uwin
+	exit ;;
+    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
+	echo x86_64-unknown-cygwin
+	exit ;;
+    p*:CYGWIN*:*)
+	echo powerpcle-unknown-cygwin
+	exit ;;
+    prep*:SunOS:5.*:*)
+	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+	exit ;;
+    *:GNU:*:*)
+	# the GNU system
+	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
+	exit ;;
+    *:GNU/*:*:*)
+	# other systems with GNU libc and userland
+	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
+	exit ;;
+    i*86:Minix:*:*)
+	echo ${UNAME_MACHINE}-pc-minix
+	exit ;;
+    arm*:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	exit ;;
+    avr32*:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	exit ;;
+    cris:Linux:*:*)
+	echo cris-axis-linux-gnu
+	exit ;;
+    crisv32:Linux:*:*)
+	echo crisv32-axis-linux-gnu
+	exit ;;
+    frv:Linux:*:*)
+    	echo frv-unknown-linux-gnu
+	exit ;;
+    ia64:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	exit ;;
+    m32r*:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	exit ;;
+    m68*:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	exit ;;
+    mips:Linux:*:*)
+	eval $set_cc_for_build
+	sed 's/^	//' << EOF >$dummy.c
+	#undef CPU
+	#undef mips
+	#undef mipsel
+	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
+	CPU=mipsel
+	#else
+	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
+	CPU=mips
+	#else
+	CPU=
+	#endif
+	#endif
+EOF
+	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
+	    /^CPU/{
+		s: ::g
+		p
+	    }'`"
+	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
+	;;
+    mips64:Linux:*:*)
+	eval $set_cc_for_build
+	sed 's/^	//' << EOF >$dummy.c
+	#undef CPU
+	#undef mips64
+	#undef mips64el
+	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
+	CPU=mips64el
+	#else
+	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
+	CPU=mips64
+	#else
+	CPU=
+	#endif
+	#endif
+EOF
+	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
+	    /^CPU/{
+		s: ::g
+		p
+	    }'`"
+	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
+	;;
+    or32:Linux:*:*)
+	echo or32-unknown-linux-gnu
+	exit ;;
+    ppc:Linux:*:*)
+	echo powerpc-unknown-linux-gnu
+	exit ;;
+    ppc64:Linux:*:*)
+	echo powerpc64-unknown-linux-gnu
+	exit ;;
+    alpha:Linux:*:*)
+	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
+	  EV5)   UNAME_MACHINE=alphaev5 ;;
+	  EV56)  UNAME_MACHINE=alphaev56 ;;
+	  PCA56) UNAME_MACHINE=alphapca56 ;;
+	  PCA57) UNAME_MACHINE=alphapca56 ;;
+	  EV6)   UNAME_MACHINE=alphaev6 ;;
+	  EV67)  UNAME_MACHINE=alphaev67 ;;
+	  EV68*) UNAME_MACHINE=alphaev68 ;;
+        esac
+	objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
+	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
+	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
+	exit ;;
+    parisc:Linux:*:* | hppa:Linux:*:*)
+	# Look for CPU level
+	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
+	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
+	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
+	  *)    echo hppa-unknown-linux-gnu ;;
+	esac
+	exit ;;
+    parisc64:Linux:*:* | hppa64:Linux:*:*)
+	echo hppa64-unknown-linux-gnu
+	exit ;;
+    s390:Linux:*:* | s390x:Linux:*:*)
+	echo ${UNAME_MACHINE}-ibm-linux
+	exit ;;
+    sh64*:Linux:*:*)
+    	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	exit ;;
+    sh*:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	exit ;;
+    sparc:Linux:*:* | sparc64:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	exit ;;
+    vax:Linux:*:*)
+	echo ${UNAME_MACHINE}-dec-linux-gnu
+	exit ;;
+    x86_64:Linux:*:*)
+	echo x86_64-unknown-linux-gnu
+	exit ;;
+    i*86:Linux:*:*)
+	# The BFD linker knows what the default object file format is, so
+	# first see if it will tell us. cd to the root directory to prevent
+	# problems with other programs or directories called `ld' in the path.
+	# Set LC_ALL=C to ensure ld outputs messages in English.
+	ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
+			 | sed -ne '/supported targets:/!d
+				    s/[ 	][ 	]*/ /g
+				    s/.*supported targets: *//
+				    s/ .*//
+				    p'`
+        case "$ld_supported_targets" in
+	  elf32-i386)
+		TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
+		;;
+	  a.out-i386-linux)
+		echo "${UNAME_MACHINE}-pc-linux-gnuaout"
+		exit ;;
+	  coff-i386)
+		echo "${UNAME_MACHINE}-pc-linux-gnucoff"
+		exit ;;
+	  "")
+		# Either a pre-BFD a.out linker (linux-gnuoldld) or
+		# one that does not give us useful --help.
+		echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
+		exit ;;
+	esac
+	# Determine whether the default compiler is a.out or elf
+	eval $set_cc_for_build
+	sed 's/^	//' << EOF >$dummy.c
+	#include <features.h>
+	#ifdef __ELF__
+	# ifdef __GLIBC__
+	#  if __GLIBC__ >= 2
+	LIBC=gnu
+	#  else
+	LIBC=gnulibc1
+	#  endif
+	# else
+	LIBC=gnulibc1
+	# endif
+	#else
+	#if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC)
+	LIBC=gnu
+	#else
+	LIBC=gnuaout
+	#endif
+	#endif
+	#ifdef __dietlibc__
+	LIBC=dietlibc
+	#endif
+EOF
+	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
+	    /^LIBC/{
+		s: ::g
+		p
+	    }'`"
+	test x"${LIBC}" != x && {
+		echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
+		exit
+	}
+	test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; }
+	;;
+    i*86:DYNIX/ptx:4*:*)
+	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
+	# earlier versions are messed up and put the nodename in both
+	# sysname and nodename.
+	echo i386-sequent-sysv4
+	exit ;;
+    i*86:UNIX_SV:4.2MP:2.*)
+        # Unixware is an offshoot of SVR4, but it has its own version
+        # number series starting with 2...
+        # I am not positive that other SVR4 systems won't match this,
+	# I just have to hope.  -- rms.
+        # Use sysv4.2uw... so that sysv4* matches it.
+	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
+	exit ;;
+    i*86:OS/2:*:*)
+	# If we were able to find `uname', then EMX Unix compatibility
+	# is probably installed.
+	echo ${UNAME_MACHINE}-pc-os2-emx
+	exit ;;
+    i*86:XTS-300:*:STOP)
+	echo ${UNAME_MACHINE}-unknown-stop
+	exit ;;
+    i*86:atheos:*:*)
+	echo ${UNAME_MACHINE}-unknown-atheos
+	exit ;;
+    i*86:syllable:*:*)
+	echo ${UNAME_MACHINE}-pc-syllable
+	exit ;;
+    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
+	echo i386-unknown-lynxos${UNAME_RELEASE}
+	exit ;;
+    i*86:*DOS:*:*)
+	echo ${UNAME_MACHINE}-pc-msdosdjgpp
+	exit ;;
+    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
+	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
+	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
+		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
+	else
+		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
+	fi
+	exit ;;
+    i*86:*:5:[678]*)
+    	# UnixWare 7.x, OpenUNIX and OpenServer 6.
+	case `/bin/uname -X | grep "^Machine"` in
+	    *486*)	     UNAME_MACHINE=i486 ;;
+	    *Pentium)	     UNAME_MACHINE=i586 ;;
+	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
+	esac
+	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
+	exit ;;
+    i*86:*:3.2:*)
+	if test -f /usr/options/cb.name; then
+		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
+		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
+	elif /bin/uname -X 2>/dev/null >/dev/null ; then
+		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
+		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
+		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
+			&& UNAME_MACHINE=i586
+		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
+			&& UNAME_MACHINE=i686
+		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
+			&& UNAME_MACHINE=i686
+		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
+	else
+		echo ${UNAME_MACHINE}-pc-sysv32
+	fi
+	exit ;;
+    pc:*:*:*)
+	# Left here for compatibility:
+        # uname -m prints for DJGPP always 'pc', but it prints nothing about
+        # the processor, so we play safe by assuming i386.
+	echo i386-pc-msdosdjgpp
+        exit ;;
+    Intel:Mach:3*:*)
+	echo i386-pc-mach3
+	exit ;;
+    paragon:*:*:*)
+	echo i860-intel-osf1
+	exit ;;
+    i860:*:4.*:*) # i860-SVR4
+	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
+	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
+	else # Add other i860-SVR4 vendors below as they are discovered.
+	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
+	fi
+	exit ;;
+    mini*:CTIX:SYS*5:*)
+	# "miniframe"
+	echo m68010-convergent-sysv
+	exit ;;
+    mc68k:UNIX:SYSTEM5:3.51m)
+	echo m68k-convergent-sysv
+	exit ;;
+    M680?0:D-NIX:5.3:*)
+	echo m68k-diab-dnix
+	exit ;;
+    M68*:*:R3V[5678]*:*)
+	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
+    3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
+	OS_REL=''
+	test -r /etc/.relid \
+	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
+	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
+	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
+	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
+    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
+        /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+          && { echo i486-ncr-sysv4; exit; } ;;
+    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
+	echo m68k-unknown-lynxos${UNAME_RELEASE}
+	exit ;;
+    mc68030:UNIX_System_V:4.*:*)
+	echo m68k-atari-sysv4
+	exit ;;
+    TSUNAMI:LynxOS:2.*:*)
+	echo sparc-unknown-lynxos${UNAME_RELEASE}
+	exit ;;
+    rs6000:LynxOS:2.*:*)
+	echo rs6000-unknown-lynxos${UNAME_RELEASE}
+	exit ;;
+    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
+	echo powerpc-unknown-lynxos${UNAME_RELEASE}
+	exit ;;
+    SM[BE]S:UNIX_SV:*:*)
+	echo mips-dde-sysv${UNAME_RELEASE}
+	exit ;;
+    RM*:ReliantUNIX-*:*:*)
+	echo mips-sni-sysv4
+	exit ;;
+    RM*:SINIX-*:*:*)
+	echo mips-sni-sysv4
+	exit ;;
+    *:SINIX-*:*:*)
+	if uname -p 2>/dev/null >/dev/null ; then
+		UNAME_MACHINE=`(uname -p) 2>/dev/null`
+		echo ${UNAME_MACHINE}-sni-sysv4
+	else
+		echo ns32k-sni-sysv
+	fi
+	exit ;;
+    PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
+                      # says <Richard.M.Bartel at ccMail.Census.GOV>
+        echo i586-unisys-sysv4
+        exit ;;
+    *:UNIX_System_V:4*:FTX*)
+	# From Gerald Hewes <hewes at openmarket.com>.
+	# How about differentiating between stratus architectures? -djm
+	echo hppa1.1-stratus-sysv4
+	exit ;;
+    *:*:*:FTX*)
+	# From seanf at swdc.stratus.com.
+	echo i860-stratus-sysv4
+	exit ;;
+    i*86:VOS:*:*)
+	# From Paul.Green at stratus.com.
+	echo ${UNAME_MACHINE}-stratus-vos
+	exit ;;
+    *:VOS:*:*)
+	# From Paul.Green at stratus.com.
+	echo hppa1.1-stratus-vos
+	exit ;;
+    mc68*:A/UX:*:*)
+	echo m68k-apple-aux${UNAME_RELEASE}
+	exit ;;
+    news*:NEWS-OS:6*:*)
+	echo mips-sony-newsos6
+	exit ;;
+    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
+	if [ -d /usr/nec ]; then
+	        echo mips-nec-sysv${UNAME_RELEASE}
+	else
+	        echo mips-unknown-sysv${UNAME_RELEASE}
+	fi
+        exit ;;
+    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
+	echo powerpc-be-beos
+	exit ;;
+    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
+	echo powerpc-apple-beos
+	exit ;;
+    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
+	echo i586-pc-beos
+	exit ;;
+    SX-4:SUPER-UX:*:*)
+	echo sx4-nec-superux${UNAME_RELEASE}
+	exit ;;
+    SX-5:SUPER-UX:*:*)
+	echo sx5-nec-superux${UNAME_RELEASE}
+	exit ;;
+    SX-6:SUPER-UX:*:*)
+	echo sx6-nec-superux${UNAME_RELEASE}
+	exit ;;
+    Power*:Rhapsody:*:*)
+	echo powerpc-apple-rhapsody${UNAME_RELEASE}
+	exit ;;
+    *:Rhapsody:*:*)
+	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
+	exit ;;
+    *:Darwin:*:*)
+	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
+	case $UNAME_PROCESSOR in
+	    unknown) UNAME_PROCESSOR=powerpc ;;
+	esac
+	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
+	exit ;;
+    *:procnto*:*:* | *:QNX:[0123456789]*:*)
+	UNAME_PROCESSOR=`uname -p`
+	if test "$UNAME_PROCESSOR" = "x86"; then
+		UNAME_PROCESSOR=i386
+		UNAME_MACHINE=pc
+	fi
+	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
+	exit ;;
+    *:QNX:*:4*)
+	echo i386-pc-qnx
+	exit ;;
+    NSE-?:NONSTOP_KERNEL:*:*)
+	echo nse-tandem-nsk${UNAME_RELEASE}
+	exit ;;
+    NSR-?:NONSTOP_KERNEL:*:*)
+	echo nsr-tandem-nsk${UNAME_RELEASE}
+	exit ;;
+    *:NonStop-UX:*:*)
+	echo mips-compaq-nonstopux
+	exit ;;
+    BS2000:POSIX*:*:*)
+	echo bs2000-siemens-sysv
+	exit ;;
+    DS/*:UNIX_System_V:*:*)
+	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
+	exit ;;
+    *:Plan9:*:*)
+	# "uname -m" is not consistent, so use $cputype instead. 386
+	# is converted to i386 for consistency with other x86
+	# operating systems.
+	if test "$cputype" = "386"; then
+	    UNAME_MACHINE=i386
+	else
+	    UNAME_MACHINE="$cputype"
+	fi
+	echo ${UNAME_MACHINE}-unknown-plan9
+	exit ;;
+    *:TOPS-10:*:*)
+	echo pdp10-unknown-tops10
+	exit ;;
+    *:TENEX:*:*)
+	echo pdp10-unknown-tenex
+	exit ;;
+    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
+	echo pdp10-dec-tops20
+	exit ;;
+    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
+	echo pdp10-xkl-tops20
+	exit ;;
+    *:TOPS-20:*:*)
+	echo pdp10-unknown-tops20
+	exit ;;
+    *:ITS:*:*)
+	echo pdp10-unknown-its
+	exit ;;
+    SEI:*:*:SEIUX)
+        echo mips-sei-seiux${UNAME_RELEASE}
+	exit ;;
+    *:DragonFly:*:*)
+	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
+	exit ;;
+    *:*VMS:*:*)
+    	UNAME_MACHINE=`(uname -p) 2>/dev/null`
+	case "${UNAME_MACHINE}" in
+	    A*) echo alpha-dec-vms ; exit ;;
+	    I*) echo ia64-dec-vms ; exit ;;
+	    V*) echo vax-dec-vms ; exit ;;
+	esac ;;
+    *:XENIX:*:SysV)
+	echo i386-pc-xenix
+	exit ;;
+    i*86:skyos:*:*)
+	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
+	exit ;;
+    i*86:rdos:*:*)
+	echo ${UNAME_MACHINE}-pc-rdos
+	exit ;;
+esac
+
+#echo '(No uname command or uname output not recognized.)' 1>&2
+#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
+
+eval $set_cc_for_build
+cat >$dummy.c <<EOF
+#ifdef _SEQUENT_
+# include <sys/types.h>
+# include <sys/utsname.h>
+#endif
+main ()
+{
+#if defined (sony)
+#if defined (MIPSEB)
+  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
+     I don't know....  */
+  printf ("mips-sony-bsd\n"); exit (0);
+#else
+#include <sys/param.h>
+  printf ("m68k-sony-newsos%s\n",
+#ifdef NEWSOS4
+          "4"
+#else
+	  ""
+#endif
+         ); exit (0);
+#endif
+#endif
+
+#if defined (__arm) && defined (__acorn) && defined (__unix)
+  printf ("arm-acorn-riscix\n"); exit (0);
+#endif
+
+#if defined (hp300) && !defined (hpux)
+  printf ("m68k-hp-bsd\n"); exit (0);
+#endif
+
+#if defined (NeXT)
+#if !defined (__ARCHITECTURE__)
+#define __ARCHITECTURE__ "m68k"
+#endif
+  int version;
+  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
+  if (version < 4)
+    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
+  else
+    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
+  exit (0);
+#endif
+
+#if defined (MULTIMAX) || defined (n16)
+#if defined (UMAXV)
+  printf ("ns32k-encore-sysv\n"); exit (0);
+#else
+#if defined (CMU)
+  printf ("ns32k-encore-mach\n"); exit (0);
+#else
+  printf ("ns32k-encore-bsd\n"); exit (0);
+#endif
+#endif
+#endif
+
+#if defined (__386BSD__)
+  printf ("i386-pc-bsd\n"); exit (0);
+#endif
+
+#if defined (sequent)
+#if defined (i386)
+  printf ("i386-sequent-dynix\n"); exit (0);
+#endif
+#if defined (ns32000)
+  printf ("ns32k-sequent-dynix\n"); exit (0);
+#endif
+#endif
+
+#if defined (_SEQUENT_)
+    struct utsname un;
+
+    uname(&un);
+
+    if (strncmp(un.version, "V2", 2) == 0) {
+	printf ("i386-sequent-ptx2\n"); exit (0);
+    }
+    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
+	printf ("i386-sequent-ptx1\n"); exit (0);
+    }
+    printf ("i386-sequent-ptx\n"); exit (0);
+
+#endif
+
+#if defined (vax)
+# if !defined (ultrix)
+#  include <sys/param.h>
+#  if defined (BSD)
+#   if BSD == 43
+      printf ("vax-dec-bsd4.3\n"); exit (0);
+#   else
+#    if BSD == 199006
+      printf ("vax-dec-bsd4.3reno\n"); exit (0);
+#    else
+      printf ("vax-dec-bsd\n"); exit (0);
+#    endif
+#   endif
+#  else
+    printf ("vax-dec-bsd\n"); exit (0);
+#  endif
+# else
+    printf ("vax-dec-ultrix\n"); exit (0);
+# endif
+#endif
+
+#if defined (alliant) && defined (i860)
+  printf ("i860-alliant-bsd\n"); exit (0);
+#endif
+
+  exit (1);
+}
+EOF
+
+$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
+	{ echo "$SYSTEM_NAME"; exit; }
+
+# Apollos put the system type in the environment.
+
+test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
+
+# Convex versions that predate uname can use getsysinfo(1)
+
+if [ -x /usr/convex/getsysinfo ]
+then
+    case `getsysinfo -f cpu_type` in
+    c1*)
+	echo c1-convex-bsd
+	exit ;;
+    c2*)
+	if getsysinfo -f scalar_acc
+	then echo c32-convex-bsd
+	else echo c2-convex-bsd
+	fi
+	exit ;;
+    c34*)
+	echo c34-convex-bsd
+	exit ;;
+    c38*)
+	echo c38-convex-bsd
+	exit ;;
+    c4*)
+	echo c4-convex-bsd
+	exit ;;
+    esac
+fi
+
+cat >&2 <<EOF
+$0: unable to guess system type
+
+This script, last modified $timestamp, has failed to recognize
+the operating system you are using. It is advised that you
+download the most up to date version of the config scripts from
+
+  http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess
+and
+  http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub
+
+If the version you run ($0) is already up to date, please
+send the following data and any information you think might be
+pertinent to <config-patches at gnu.org> in order to provide the needed
+information to handle your system.
+
+config.guess timestamp = $timestamp
+
+uname -m = `(uname -m) 2>/dev/null || echo unknown`
+uname -r = `(uname -r) 2>/dev/null || echo unknown`
+uname -s = `(uname -s) 2>/dev/null || echo unknown`
+uname -v = `(uname -v) 2>/dev/null || echo unknown`
+
+/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
+/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
+
+hostinfo               = `(hostinfo) 2>/dev/null`
+/bin/universe          = `(/bin/universe) 2>/dev/null`
+/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
+/bin/arch              = `(/bin/arch) 2>/dev/null`
+/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
+/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
+
+UNAME_MACHINE = ${UNAME_MACHINE}
+UNAME_RELEASE = ${UNAME_RELEASE}
+UNAME_SYSTEM  = ${UNAME_SYSTEM}
+UNAME_VERSION = ${UNAME_VERSION}
+EOF
+
+exit 1
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "timestamp='"
+# time-stamp-format: "%:y-%02m-%02d"
+# time-stamp-end: "'"
+# End:
diff --git a/eglib/config.sub b/eglib/config.sub
new file mode 100755
index 0000000..fab0aa3
--- /dev/null
+++ b/eglib/config.sub
@@ -0,0 +1,1616 @@
+#! /bin/sh
+# Configuration validation subroutine script.
+#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
+#   2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation,
+#   Inc.
+
+timestamp='2006-09-20'
+
+# This file is (in principle) common to ALL GNU software.
+# The presence of a machine in this file suggests that SOME GNU software
+# can handle that machine.  It does not imply ALL GNU software can.
+#
+# This file 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., 51 Franklin Street - Fifth Floor, Boston, MA
+# 02110-1301, 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.
+
+
+# Please send patches to <config-patches at gnu.org>.  Submit a context
+# diff and a properly formatted ChangeLog entry.
+#
+# Configuration subroutine to validate and canonicalize a configuration type.
+# Supply the specified configuration type as an argument.
+# If it is invalid, we print an error message on stderr and exit with code 1.
+# Otherwise, we print the canonical config type on stdout and succeed.
+
+# This file is supposed to be the same for all GNU packages
+# and recognize all the CPU types, system types and aliases
+# that are meaningful with *any* GNU software.
+# Each package is responsible for reporting which valid configurations
+# it does not support.  The user should be able to distinguish
+# a failure to support a valid configuration from a meaningless
+# configuration.
+
+# The goal of this file is to map all the various variations of a given
+# machine specification into a single specification in the form:
+#	CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
+# or in some cases, the newer four-part form:
+#	CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
+# It is wrong to echo any other type of specification.
+
+me=`echo "$0" | sed -e 's,.*/,,'`
+
+usage="\
+Usage: $0 [OPTION] CPU-MFR-OPSYS
+       $0 [OPTION] ALIAS
+
+Canonicalize a configuration name.
+
+Operation modes:
+  -h, --help         print this help, then exit
+  -t, --time-stamp   print date of last modification, then exit
+  -v, --version      print version number, then exit
+
+Report bugs and patches to <config-patches at gnu.org>."
+
+version="\
+GNU config.sub ($timestamp)
+
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
+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."
+
+help="
+Try \`$me --help' for more information."
+
+# Parse command line
+while test $# -gt 0 ; do
+  case $1 in
+    --time-stamp | --time* | -t )
+       echo "$timestamp" ; exit ;;
+    --version | -v )
+       echo "$version" ; exit ;;
+    --help | --h* | -h )
+       echo "$usage"; exit ;;
+    -- )     # Stop option processing
+       shift; break ;;
+    - )	# Use stdin as input.
+       break ;;
+    -* )
+       echo "$me: invalid option $1$help"
+       exit 1 ;;
+
+    *local*)
+       # First pass through any local machine types.
+       echo $1
+       exit ;;
+
+    * )
+       break ;;
+  esac
+done
+
+case $# in
+ 0) echo "$me: missing argument$help" >&2
+    exit 1;;
+ 1) ;;
+ *) echo "$me: too many arguments$help" >&2
+    exit 1;;
+esac
+
+# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
+# Here we must recognize all the valid KERNEL-OS combinations.
+maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
+case $maybe_os in
+  nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
+  uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
+  storm-chaos* | os2-emx* | rtmk-nova*)
+    os=-$maybe_os
+    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
+    ;;
+  *)
+    basic_machine=`echo $1 | sed 's/-[^-]*$//'`
+    if [ $basic_machine != $1 ]
+    then os=`echo $1 | sed 's/.*-/-/'`
+    else os=; fi
+    ;;
+esac
+
+### Let's recognize common machines as not being operating systems so
+### that things like config.sub decstation-3100 work.  We also
+### recognize some manufacturers as not being operating systems, so we
+### can provide default operating systems below.
+case $os in
+	-sun*os*)
+		# Prevent following clause from handling this invalid input.
+		;;
+	-dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
+	-att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
+	-unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
+	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
+	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
+	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
+	-apple | -axis | -knuth | -cray)
+		os=
+		basic_machine=$1
+		;;
+	-sim | -cisco | -oki | -wec | -winbond)
+		os=
+		basic_machine=$1
+		;;
+	-scout)
+		;;
+	-wrs)
+		os=-vxworks
+		basic_machine=$1
+		;;
+	-chorusos*)
+		os=-chorusos
+		basic_machine=$1
+		;;
+ 	-chorusrdb)
+ 		os=-chorusrdb
+		basic_machine=$1
+ 		;;
+	-hiux*)
+		os=-hiuxwe2
+		;;
+	-sco6)
+		os=-sco5v6
+		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		;;
+	-sco5)
+		os=-sco3.2v5
+		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		;;
+	-sco4)
+		os=-sco3.2v4
+		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		;;
+	-sco3.2.[4-9]*)
+		os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
+		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		;;
+	-sco3.2v[4-9]*)
+		# Don't forget version if it is 3.2v4 or newer.
+		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		;;
+	-sco5v6*)
+		# Don't forget version if it is 3.2v4 or newer.
+		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		;;
+	-sco*)
+		os=-sco3.2v2
+		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		;;
+	-udk*)
+		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		;;
+	-isc)
+		os=-isc2.2
+		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		;;
+	-clix*)
+		basic_machine=clipper-intergraph
+		;;
+	-isc*)
+		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		;;
+	-lynx*)
+		os=-lynxos
+		;;
+	-ptx*)
+		basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
+		;;
+	-windowsnt*)
+		os=`echo $os | sed -e 's/windowsnt/winnt/'`
+		;;
+	-psos*)
+		os=-psos
+		;;
+	-mint | -mint[0-9]*)
+		basic_machine=m68k-atari
+		os=-mint
+		;;
+esac
+
+# Decode aliases for certain CPU-COMPANY combinations.
+case $basic_machine in
+	# Recognize the basic CPU types without company name.
+	# Some are omitted here because they have special meanings below.
+	1750a | 580 \
+	| a29k \
+	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
+	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
+	| am33_2.0 \
+	| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
+	| bfin \
+	| c4x | clipper \
+	| d10v | d30v | dlx | dsp16xx \
+	| fr30 | frv \
+	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
+	| i370 | i860 | i960 | ia64 \
+	| ip2k | iq2000 \
+	| m32c | m32r | m32rle | m68000 | m68k | m88k \
+	| maxq | mb | microblaze | mcore \
+	| mips | mipsbe | mipseb | mipsel | mipsle \
+	| mips16 \
+	| mips64 | mips64el \
+	| mips64vr | mips64vrel \
+	| mips64orion | mips64orionel \
+	| mips64vr4100 | mips64vr4100el \
+	| mips64vr4300 | mips64vr4300el \
+	| mips64vr5000 | mips64vr5000el \
+	| mips64vr5900 | mips64vr5900el \
+	| mipsisa32 | mipsisa32el \
+	| mipsisa32r2 | mipsisa32r2el \
+	| mipsisa64 | mipsisa64el \
+	| mipsisa64r2 | mipsisa64r2el \
+	| mipsisa64sb1 | mipsisa64sb1el \
+	| mipsisa64sr71k | mipsisa64sr71kel \
+	| mipstx39 | mipstx39el \
+	| mn10200 | mn10300 \
+	| mt \
+	| msp430 \
+	| nios | nios2 \
+	| ns16k | ns32k \
+	| or32 \
+	| pdp10 | pdp11 | pj | pjl \
+	| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
+	| pyramid \
+	| score \
+	| sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
+	| sh64 | sh64le \
+	| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
+	| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
+	| spu | strongarm \
+	| tahoe | thumb | tic4x | tic80 | tron \
+	| v850 | v850e \
+	| we32k \
+	| x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
+	| z8k)
+		basic_machine=$basic_machine-unknown
+		;;
+	m6811 | m68hc11 | m6812 | m68hc12)
+		# Motorola 68HC11/12.
+		basic_machine=$basic_machine-unknown
+		os=-none
+		;;
+	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
+		;;
+	ms1)
+		basic_machine=mt-unknown
+		;;
+
+	# We use `pc' rather than `unknown'
+	# because (1) that's what they normally are, and
+	# (2) the word "unknown" tends to confuse beginning users.
+	i*86 | x86_64)
+	  basic_machine=$basic_machine-pc
+	  ;;
+	# Object if more than one company name word.
+	*-*-*)
+		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
+		exit 1
+		;;
+	# Recognize the basic CPU types with company name.
+	580-* \
+	| a29k-* \
+	| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
+	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
+	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
+	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
+	| avr-* | avr32-* \
+	| bfin-* | bs2000-* \
+	| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
+	| clipper-* | craynv-* | cydra-* \
+	| d10v-* | d30v-* | dlx-* \
+	| elxsi-* \
+	| f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
+	| h8300-* | h8500-* \
+	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
+	| i*86-* | i860-* | i960-* | ia64-* \
+	| ip2k-* | iq2000-* \
+	| m32c-* | m32r-* | m32rle-* \
+	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
+	| m88110-* | m88k-* | maxq-* | mcore-* \
+	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
+	| mips16-* \
+	| mips64-* | mips64el-* \
+	| mips64vr-* | mips64vrel-* \
+	| mips64orion-* | mips64orionel-* \
+	| mips64vr4100-* | mips64vr4100el-* \
+	| mips64vr4300-* | mips64vr4300el-* \
+	| mips64vr5000-* | mips64vr5000el-* \
+	| mips64vr5900-* | mips64vr5900el-* \
+	| mipsisa32-* | mipsisa32el-* \
+	| mipsisa32r2-* | mipsisa32r2el-* \
+	| mipsisa64-* | mipsisa64el-* \
+	| mipsisa64r2-* | mipsisa64r2el-* \
+	| mipsisa64sb1-* | mipsisa64sb1el-* \
+	| mipsisa64sr71k-* | mipsisa64sr71kel-* \
+	| mipstx39-* | mipstx39el-* \
+	| mmix-* \
+	| mt-* \
+	| msp430-* \
+	| nios-* | nios2-* \
+	| none-* | np1-* | ns16k-* | ns32k-* \
+	| orion-* \
+	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
+	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
+	| pyramid-* \
+	| romp-* | rs6000-* \
+	| sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
+	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
+	| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
+	| sparclite-* \
+	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
+	| tahoe-* | thumb-* \
+	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
+	| tron-* \
+	| v850-* | v850e-* | vax-* \
+	| we32k-* \
+	| x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
+	| xstormy16-* | xtensa-* \
+	| ymp-* \
+	| z8k-*)
+		;;
+	# Recognize the various machine names and aliases which stand
+	# for a CPU type and a company and sometimes even an OS.
+	386bsd)
+		basic_machine=i386-unknown
+		os=-bsd
+		;;
+	3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
+		basic_machine=m68000-att
+		;;
+	3b*)
+		basic_machine=we32k-att
+		;;
+	a29khif)
+		basic_machine=a29k-amd
+		os=-udi
+		;;
+    	abacus)
+		basic_machine=abacus-unknown
+		;;
+	adobe68k)
+		basic_machine=m68010-adobe
+		os=-scout
+		;;
+	alliant | fx80)
+		basic_machine=fx80-alliant
+		;;
+	altos | altos3068)
+		basic_machine=m68k-altos
+		;;
+	am29k)
+		basic_machine=a29k-none
+		os=-bsd
+		;;
+	amd64)
+		basic_machine=x86_64-pc
+		;;
+	amd64-*)
+		basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
+		;;
+	amdahl)
+		basic_machine=580-amdahl
+		os=-sysv
+		;;
+	amiga | amiga-*)
+		basic_machine=m68k-unknown
+		;;
+	amigaos | amigados)
+		basic_machine=m68k-unknown
+		os=-amigaos
+		;;
+	amigaunix | amix)
+		basic_machine=m68k-unknown
+		os=-sysv4
+		;;
+	apollo68)
+		basic_machine=m68k-apollo
+		os=-sysv
+		;;
+	apollo68bsd)
+		basic_machine=m68k-apollo
+		os=-bsd
+		;;
+	aux)
+		basic_machine=m68k-apple
+		os=-aux
+		;;
+	balance)
+		basic_machine=ns32k-sequent
+		os=-dynix
+		;;
+	c90)
+		basic_machine=c90-cray
+		os=-unicos
+		;;
+	convex-c1)
+		basic_machine=c1-convex
+		os=-bsd
+		;;
+	convex-c2)
+		basic_machine=c2-convex
+		os=-bsd
+		;;
+	convex-c32)
+		basic_machine=c32-convex
+		os=-bsd
+		;;
+	convex-c34)
+		basic_machine=c34-convex
+		os=-bsd
+		;;
+	convex-c38)
+		basic_machine=c38-convex
+		os=-bsd
+		;;
+	cray | j90)
+		basic_machine=j90-cray
+		os=-unicos
+		;;
+	craynv)
+		basic_machine=craynv-cray
+		os=-unicosmp
+		;;
+	cr16c)
+		basic_machine=cr16c-unknown
+		os=-elf
+		;;
+	crds | unos)
+		basic_machine=m68k-crds
+		;;
+	crisv32 | crisv32-* | etraxfs*)
+		basic_machine=crisv32-axis
+		;;
+	cris | cris-* | etrax*)
+		basic_machine=cris-axis
+		;;
+	crx)
+		basic_machine=crx-unknown
+		os=-elf
+		;;
+	da30 | da30-*)
+		basic_machine=m68k-da30
+		;;
+	decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
+		basic_machine=mips-dec
+		;;
+	decsystem10* | dec10*)
+		basic_machine=pdp10-dec
+		os=-tops10
+		;;
+	decsystem20* | dec20*)
+		basic_machine=pdp10-dec
+		os=-tops20
+		;;
+	delta | 3300 | motorola-3300 | motorola-delta \
+	      | 3300-motorola | delta-motorola)
+		basic_machine=m68k-motorola
+		;;
+	delta88)
+		basic_machine=m88k-motorola
+		os=-sysv3
+		;;
+	djgpp)
+		basic_machine=i586-pc
+		os=-msdosdjgpp
+		;;
+	dpx20 | dpx20-*)
+		basic_machine=rs6000-bull
+		os=-bosx
+		;;
+	dpx2* | dpx2*-bull)
+		basic_machine=m68k-bull
+		os=-sysv3
+		;;
+	ebmon29k)
+		basic_machine=a29k-amd
+		os=-ebmon
+		;;
+	elxsi)
+		basic_machine=elxsi-elxsi
+		os=-bsd
+		;;
+	encore | umax | mmax)
+		basic_machine=ns32k-encore
+		;;
+	es1800 | OSE68k | ose68k | ose | OSE)
+		basic_machine=m68k-ericsson
+		os=-ose
+		;;
+	fx2800)
+		basic_machine=i860-alliant
+		;;
+	genix)
+		basic_machine=ns32k-ns
+		;;
+	gmicro)
+		basic_machine=tron-gmicro
+		os=-sysv
+		;;
+	go32)
+		basic_machine=i386-pc
+		os=-go32
+		;;
+	h3050r* | hiux*)
+		basic_machine=hppa1.1-hitachi
+		os=-hiuxwe2
+		;;
+	h8300hms)
+		basic_machine=h8300-hitachi
+		os=-hms
+		;;
+	h8300xray)
+		basic_machine=h8300-hitachi
+		os=-xray
+		;;
+	h8500hms)
+		basic_machine=h8500-hitachi
+		os=-hms
+		;;
+	harris)
+		basic_machine=m88k-harris
+		os=-sysv3
+		;;
+	hp300-*)
+		basic_machine=m68k-hp
+		;;
+	hp300bsd)
+		basic_machine=m68k-hp
+		os=-bsd
+		;;
+	hp300hpux)
+		basic_machine=m68k-hp
+		os=-hpux
+		;;
+	hp3k9[0-9][0-9] | hp9[0-9][0-9])
+		basic_machine=hppa1.0-hp
+		;;
+	hp9k2[0-9][0-9] | hp9k31[0-9])
+		basic_machine=m68000-hp
+		;;
+	hp9k3[2-9][0-9])
+		basic_machine=m68k-hp
+		;;
+	hp9k6[0-9][0-9] | hp6[0-9][0-9])
+		basic_machine=hppa1.0-hp
+		;;
+	hp9k7[0-79][0-9] | hp7[0-79][0-9])
+		basic_machine=hppa1.1-hp
+		;;
+	hp9k78[0-9] | hp78[0-9])
+		# FIXME: really hppa2.0-hp
+		basic_machine=hppa1.1-hp
+		;;
+	hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
+		# FIXME: really hppa2.0-hp
+		basic_machine=hppa1.1-hp
+		;;
+	hp9k8[0-9][13679] | hp8[0-9][13679])
+		basic_machine=hppa1.1-hp
+		;;
+	hp9k8[0-9][0-9] | hp8[0-9][0-9])
+		basic_machine=hppa1.0-hp
+		;;
+	hppa-next)
+		os=-nextstep3
+		;;
+	hppaosf)
+		basic_machine=hppa1.1-hp
+		os=-osf
+		;;
+	hppro)
+		basic_machine=hppa1.1-hp
+		os=-proelf
+		;;
+	i370-ibm* | ibm*)
+		basic_machine=i370-ibm
+		;;
+# I'm not sure what "Sysv32" means.  Should this be sysv3.2?
+	i*86v32)
+		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+		os=-sysv32
+		;;
+	i*86v4*)
+		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+		os=-sysv4
+		;;
+	i*86v)
+		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+		os=-sysv
+		;;
+	i*86sol2)
+		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+		os=-solaris2
+		;;
+	i386mach)
+		basic_machine=i386-mach
+		os=-mach
+		;;
+	i386-vsta | vsta)
+		basic_machine=i386-unknown
+		os=-vsta
+		;;
+	iris | iris4d)
+		basic_machine=mips-sgi
+		case $os in
+		    -irix*)
+			;;
+		    *)
+			os=-irix4
+			;;
+		esac
+		;;
+	isi68 | isi)
+		basic_machine=m68k-isi
+		os=-sysv
+		;;
+	m88k-omron*)
+		basic_machine=m88k-omron
+		;;
+	magnum | m3230)
+		basic_machine=mips-mips
+		os=-sysv
+		;;
+	merlin)
+		basic_machine=ns32k-utek
+		os=-sysv
+		;;
+	mingw32)
+		basic_machine=i386-pc
+		os=-mingw32
+		;;
+	miniframe)
+		basic_machine=m68000-convergent
+		;;
+	*mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
+		basic_machine=m68k-atari
+		os=-mint
+		;;
+	mips3*-*)
+		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
+		;;
+	mips3*)
+		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
+		;;
+	monitor)
+		basic_machine=m68k-rom68k
+		os=-coff
+		;;
+	morphos)
+		basic_machine=powerpc-unknown
+		os=-morphos
+		;;
+	msdos)
+		basic_machine=i386-pc
+		os=-msdos
+		;;
+	ms1-*)
+		basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
+		;;
+	mvs)
+		basic_machine=i370-ibm
+		os=-mvs
+		;;
+	ncr3000)
+		basic_machine=i486-ncr
+		os=-sysv4
+		;;
+	netbsd386)
+		basic_machine=i386-unknown
+		os=-netbsd
+		;;
+	netwinder)
+		basic_machine=armv4l-rebel
+		os=-linux
+		;;
+	news | news700 | news800 | news900)
+		basic_machine=m68k-sony
+		os=-newsos
+		;;
+	news1000)
+		basic_machine=m68030-sony
+		os=-newsos
+		;;
+	news-3600 | risc-news)
+		basic_machine=mips-sony
+		os=-newsos
+		;;
+	necv70)
+		basic_machine=v70-nec
+		os=-sysv
+		;;
+	next | m*-next )
+		basic_machine=m68k-next
+		case $os in
+		    -nextstep* )
+			;;
+		    -ns2*)
+		      os=-nextstep2
+			;;
+		    *)
+		      os=-nextstep3
+			;;
+		esac
+		;;
+	nh3000)
+		basic_machine=m68k-harris
+		os=-cxux
+		;;
+	nh[45]000)
+		basic_machine=m88k-harris
+		os=-cxux
+		;;
+	nindy960)
+		basic_machine=i960-intel
+		os=-nindy
+		;;
+	mon960)
+		basic_machine=i960-intel
+		os=-mon960
+		;;
+	nonstopux)
+		basic_machine=mips-compaq
+		os=-nonstopux
+		;;
+	np1)
+		basic_machine=np1-gould
+		;;
+	nsr-tandem)
+		basic_machine=nsr-tandem
+		;;
+	op50n-* | op60c-*)
+		basic_machine=hppa1.1-oki
+		os=-proelf
+		;;
+	openrisc | openrisc-*)
+		basic_machine=or32-unknown
+		;;
+	os400)
+		basic_machine=powerpc-ibm
+		os=-os400
+		;;
+	OSE68000 | ose68000)
+		basic_machine=m68000-ericsson
+		os=-ose
+		;;
+	os68k)
+		basic_machine=m68k-none
+		os=-os68k
+		;;
+	pa-hitachi)
+		basic_machine=hppa1.1-hitachi
+		os=-hiuxwe2
+		;;
+	paragon)
+		basic_machine=i860-intel
+		os=-osf
+		;;
+	pbd)
+		basic_machine=sparc-tti
+		;;
+	pbb)
+		basic_machine=m68k-tti
+		;;
+	pc532 | pc532-*)
+		basic_machine=ns32k-pc532
+		;;
+	pc98)
+		basic_machine=i386-pc
+		;;
+	pc98-*)
+		basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
+		;;
+	pentium | p5 | k5 | k6 | nexgen | viac3)
+		basic_machine=i586-pc
+		;;
+	pentiumpro | p6 | 6x86 | athlon | athlon_*)
+		basic_machine=i686-pc
+		;;
+	pentiumii | pentium2 | pentiumiii | pentium3)
+		basic_machine=i686-pc
+		;;
+	pentium4)
+		basic_machine=i786-pc
+		;;
+	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
+		basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
+		;;
+	pentiumpro-* | p6-* | 6x86-* | athlon-*)
+		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
+		;;
+	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
+		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
+		;;
+	pentium4-*)
+		basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
+		;;
+	pn)
+		basic_machine=pn-gould
+		;;
+	power)	basic_machine=power-ibm
+		;;
+	ppc)	basic_machine=powerpc-unknown
+		;;
+	ppc-*)	basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
+		;;
+	ppcle | powerpclittle | ppc-le | powerpc-little)
+		basic_machine=powerpcle-unknown
+		;;
+	ppcle-* | powerpclittle-*)
+		basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
+		;;
+	ppc64)	basic_machine=powerpc64-unknown
+		;;
+	ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
+		;;
+	ppc64le | powerpc64little | ppc64-le | powerpc64-little)
+		basic_machine=powerpc64le-unknown
+		;;
+	ppc64le-* | powerpc64little-*)
+		basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
+		;;
+	ps2)
+		basic_machine=i386-ibm
+		;;
+	pw32)
+		basic_machine=i586-unknown
+		os=-pw32
+		;;
+	rdos)
+		basic_machine=i386-pc
+		os=-rdos
+		;;
+	rom68k)
+		basic_machine=m68k-rom68k
+		os=-coff
+		;;
+	rm[46]00)
+		basic_machine=mips-siemens
+		;;
+	rtpc | rtpc-*)
+		basic_machine=romp-ibm
+		;;
+	s390 | s390-*)
+		basic_machine=s390-ibm
+		;;
+	s390x | s390x-*)
+		basic_machine=s390x-ibm
+		;;
+	sa29200)
+		basic_machine=a29k-amd
+		os=-udi
+		;;
+	sb1)
+		basic_machine=mipsisa64sb1-unknown
+		;;
+	sb1el)
+		basic_machine=mipsisa64sb1el-unknown
+		;;
+	sde)
+		basic_machine=mipsisa32-sde
+		os=-elf
+		;;
+	sei)
+		basic_machine=mips-sei
+		os=-seiux
+		;;
+	sequent)
+		basic_machine=i386-sequent
+		;;
+	sh)
+		basic_machine=sh-hitachi
+		os=-hms
+		;;
+	sh64)
+		basic_machine=sh64-unknown
+		;;
+	sparclite-wrs | simso-wrs)
+		basic_machine=sparclite-wrs
+		os=-vxworks
+		;;
+	sps7)
+		basic_machine=m68k-bull
+		os=-sysv2
+		;;
+	spur)
+		basic_machine=spur-unknown
+		;;
+	st2000)
+		basic_machine=m68k-tandem
+		;;
+	stratus)
+		basic_machine=i860-stratus
+		os=-sysv4
+		;;
+	sun2)
+		basic_machine=m68000-sun
+		;;
+	sun2os3)
+		basic_machine=m68000-sun
+		os=-sunos3
+		;;
+	sun2os4)
+		basic_machine=m68000-sun
+		os=-sunos4
+		;;
+	sun3os3)
+		basic_machine=m68k-sun
+		os=-sunos3
+		;;
+	sun3os4)
+		basic_machine=m68k-sun
+		os=-sunos4
+		;;
+	sun4os3)
+		basic_machine=sparc-sun
+		os=-sunos3
+		;;
+	sun4os4)
+		basic_machine=sparc-sun
+		os=-sunos4
+		;;
+	sun4sol2)
+		basic_machine=sparc-sun
+		os=-solaris2
+		;;
+	sun3 | sun3-*)
+		basic_machine=m68k-sun
+		;;
+	sun4)
+		basic_machine=sparc-sun
+		;;
+	sun386 | sun386i | roadrunner)
+		basic_machine=i386-sun
+		;;
+	sv1)
+		basic_machine=sv1-cray
+		os=-unicos
+		;;
+	symmetry)
+		basic_machine=i386-sequent
+		os=-dynix
+		;;
+	t3e)
+		basic_machine=alphaev5-cray
+		os=-unicos
+		;;
+	t90)
+		basic_machine=t90-cray
+		os=-unicos
+		;;
+	tic54x | c54x*)
+		basic_machine=tic54x-unknown
+		os=-coff
+		;;
+	tic55x | c55x*)
+		basic_machine=tic55x-unknown
+		os=-coff
+		;;
+	tic6x | c6x*)
+		basic_machine=tic6x-unknown
+		os=-coff
+		;;
+	tx39)
+		basic_machine=mipstx39-unknown
+		;;
+	tx39el)
+		basic_machine=mipstx39el-unknown
+		;;
+	toad1)
+		basic_machine=pdp10-xkl
+		os=-tops20
+		;;
+	tower | tower-32)
+		basic_machine=m68k-ncr
+		;;
+	tpf)
+		basic_machine=s390x-ibm
+		os=-tpf
+		;;
+	udi29k)
+		basic_machine=a29k-amd
+		os=-udi
+		;;
+	ultra3)
+		basic_machine=a29k-nyu
+		os=-sym1
+		;;
+	v810 | necv810)
+		basic_machine=v810-nec
+		os=-none
+		;;
+	vaxv)
+		basic_machine=vax-dec
+		os=-sysv
+		;;
+	vms)
+		basic_machine=vax-dec
+		os=-vms
+		;;
+	vpp*|vx|vx-*)
+		basic_machine=f301-fujitsu
+		;;
+	vxworks960)
+		basic_machine=i960-wrs
+		os=-vxworks
+		;;
+	vxworks68)
+		basic_machine=m68k-wrs
+		os=-vxworks
+		;;
+	vxworks29k)
+		basic_machine=a29k-wrs
+		os=-vxworks
+		;;
+	w65*)
+		basic_machine=w65-wdc
+		os=-none
+		;;
+	w89k-*)
+		basic_machine=hppa1.1-winbond
+		os=-proelf
+		;;
+	xbox)
+		basic_machine=i686-pc
+		os=-mingw32
+		;;
+	xps | xps100)
+		basic_machine=xps100-honeywell
+		;;
+	ymp)
+		basic_machine=ymp-cray
+		os=-unicos
+		;;
+	z8k-*-coff)
+		basic_machine=z8k-unknown
+		os=-sim
+		;;
+	none)
+		basic_machine=none-none
+		os=-none
+		;;
+
+# Here we handle the default manufacturer of certain CPU types.  It is in
+# some cases the only manufacturer, in others, it is the most popular.
+	w89k)
+		basic_machine=hppa1.1-winbond
+		;;
+	op50n)
+		basic_machine=hppa1.1-oki
+		;;
+	op60c)
+		basic_machine=hppa1.1-oki
+		;;
+	romp)
+		basic_machine=romp-ibm
+		;;
+	mmix)
+		basic_machine=mmix-knuth
+		;;
+	rs6000)
+		basic_machine=rs6000-ibm
+		;;
+	vax)
+		basic_machine=vax-dec
+		;;
+	pdp10)
+		# there are many clones, so DEC is not a safe bet
+		basic_machine=pdp10-unknown
+		;;
+	pdp11)
+		basic_machine=pdp11-dec
+		;;
+	we32k)
+		basic_machine=we32k-att
+		;;
+	sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele)
+		basic_machine=sh-unknown
+		;;
+	sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
+		basic_machine=sparc-sun
+		;;
+	cydra)
+		basic_machine=cydra-cydrome
+		;;
+	orion)
+		basic_machine=orion-highlevel
+		;;
+	orion105)
+		basic_machine=clipper-highlevel
+		;;
+	mac | mpw | mac-mpw)
+		basic_machine=m68k-apple
+		;;
+	pmac | pmac-mpw)
+		basic_machine=powerpc-apple
+		;;
+	*-unknown)
+		# Make sure to match an already-canonicalized machine name.
+		;;
+	*)
+		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
+		exit 1
+		;;
+esac
+
+# Here we canonicalize certain aliases for manufacturers.
+case $basic_machine in
+	*-digital*)
+		basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
+		;;
+	*-commodore*)
+		basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
+		;;
+	*)
+		;;
+esac
+
+# Decode manufacturer-specific aliases for certain operating systems.
+
+if [ x"$os" != x"" ]
+then
+case $os in
+        # First match some system type aliases
+        # that might get confused with valid system types.
+	# -solaris* is a basic system type, with this one exception.
+	-solaris1 | -solaris1.*)
+		os=`echo $os | sed -e 's|solaris1|sunos4|'`
+		;;
+	-solaris)
+		os=-solaris2
+		;;
+	-svr4*)
+		os=-sysv4
+		;;
+	-unixware*)
+		os=-sysv4.2uw
+		;;
+	-gnu/linux*)
+		os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
+		;;
+	# First accept the basic system types.
+	# The portable systems comes first.
+	# Each alternative MUST END IN A *, to match a version number.
+	# -sysv* is not here because it comes later, after sysvr4.
+	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
+	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
+	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
+	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
+	      | -aos* \
+	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
+	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
+	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
+	      | -openbsd* | -solidbsd* \
+	      | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
+	      | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
+	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
+	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
+	      | -chorusos* | -chorusrdb* \
+	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
+	      | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
+	      | -uxpv* | -beos* | -mpeix* | -udk* \
+	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
+	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
+	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
+	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
+	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
+	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
+	      | -skyos* | -haiku* | -rdos* | -toppers*)
+	# Remember, each alternative MUST END IN *, to match a version number.
+		;;
+	-qnx*)
+		case $basic_machine in
+		    x86-* | i*86-*)
+			;;
+		    *)
+			os=-nto$os
+			;;
+		esac
+		;;
+	-nto-qnx*)
+		;;
+	-nto*)
+		os=`echo $os | sed -e 's|nto|nto-qnx|'`
+		;;
+	-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
+	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
+	      | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
+		;;
+	-mac*)
+		os=`echo $os | sed -e 's|mac|macos|'`
+		;;
+	-linux-dietlibc)
+		os=-linux-dietlibc
+		;;
+	-linux*)
+		os=`echo $os | sed -e 's|linux|linux-gnu|'`
+		;;
+	-sunos5*)
+		os=`echo $os | sed -e 's|sunos5|solaris2|'`
+		;;
+	-sunos6*)
+		os=`echo $os | sed -e 's|sunos6|solaris3|'`
+		;;
+	-opened*)
+		os=-openedition
+		;;
+        -os400*)
+		os=-os400
+		;;
+	-wince*)
+		os=-wince
+		;;
+	-osfrose*)
+		os=-osfrose
+		;;
+	-osf*)
+		os=-osf
+		;;
+	-utek*)
+		os=-bsd
+		;;
+	-dynix*)
+		os=-bsd
+		;;
+	-acis*)
+		os=-aos
+		;;
+	-atheos*)
+		os=-atheos
+		;;
+	-syllable*)
+		os=-syllable
+		;;
+	-386bsd)
+		os=-bsd
+		;;
+	-ctix* | -uts*)
+		os=-sysv
+		;;
+	-nova*)
+		os=-rtmk-nova
+		;;
+	-ns2 )
+		os=-nextstep2
+		;;
+	-nsk*)
+		os=-nsk
+		;;
+	# Preserve the version number of sinix5.
+	-sinix5.*)
+		os=`echo $os | sed -e 's|sinix|sysv|'`
+		;;
+	-sinix*)
+		os=-sysv4
+		;;
+        -tpf*)
+		os=-tpf
+		;;
+	-triton*)
+		os=-sysv3
+		;;
+	-oss*)
+		os=-sysv3
+		;;
+	-svr4)
+		os=-sysv4
+		;;
+	-svr3)
+		os=-sysv3
+		;;
+	-sysvr4)
+		os=-sysv4
+		;;
+	# This must come after -sysvr4.
+	-sysv*)
+		;;
+	-ose*)
+		os=-ose
+		;;
+	-es1800*)
+		os=-ose
+		;;
+	-xenix)
+		os=-xenix
+		;;
+	-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
+		os=-mint
+		;;
+	-aros*)
+		os=-aros
+		;;
+	-kaos*)
+		os=-kaos
+		;;
+	-zvmoe)
+		os=-zvmoe
+		;;
+	-none)
+		;;
+	*)
+		# Get rid of the `-' at the beginning of $os.
+		os=`echo $os | sed 's/[^-]*-//'`
+		echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
+		exit 1
+		;;
+esac
+else
+
+# Here we handle the default operating systems that come with various machines.
+# The value should be what the vendor currently ships out the door with their
+# machine or put another way, the most popular os provided with the machine.
+
+# Note that if you're going to try to match "-MANUFACTURER" here (say,
+# "-sun"), then you have to tell the case statement up towards the top
+# that MANUFACTURER isn't an operating system.  Otherwise, code above
+# will signal an error saying that MANUFACTURER isn't an operating
+# system, and we'll never get to this point.
+
+case $basic_machine in
+        score-*)
+		os=-elf
+		;;
+        spu-*)
+		os=-elf
+		;;
+	*-acorn)
+		os=-riscix1.2
+		;;
+	arm*-rebel)
+		os=-linux
+		;;
+	arm*-semi)
+		os=-aout
+		;;
+        c4x-* | tic4x-*)
+        	os=-coff
+		;;
+	# This must come before the *-dec entry.
+	pdp10-*)
+		os=-tops20
+		;;
+	pdp11-*)
+		os=-none
+		;;
+	*-dec | vax-*)
+		os=-ultrix4.2
+		;;
+	m68*-apollo)
+		os=-domain
+		;;
+	i386-sun)
+		os=-sunos4.0.2
+		;;
+	m68000-sun)
+		os=-sunos3
+		# This also exists in the configure program, but was not the
+		# default.
+		# os=-sunos4
+		;;
+	m68*-cisco)
+		os=-aout
+		;;
+	mips*-cisco)
+		os=-elf
+		;;
+	mips*-*)
+		os=-elf
+		;;
+	or32-*)
+		os=-coff
+		;;
+	*-tti)	# must be before sparc entry or we get the wrong os.
+		os=-sysv3
+		;;
+	sparc-* | *-sun)
+		os=-sunos4.1.1
+		;;
+	*-be)
+		os=-beos
+		;;
+	*-haiku)
+		os=-haiku
+		;;
+	*-ibm)
+		os=-aix
+		;;
+    	*-knuth)
+		os=-mmixware
+		;;
+	*-wec)
+		os=-proelf
+		;;
+	*-winbond)
+		os=-proelf
+		;;
+	*-oki)
+		os=-proelf
+		;;
+	*-hp)
+		os=-hpux
+		;;
+	*-hitachi)
+		os=-hiux
+		;;
+	i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
+		os=-sysv
+		;;
+	*-cbm)
+		os=-amigaos
+		;;
+	*-dg)
+		os=-dgux
+		;;
+	*-dolphin)
+		os=-sysv3
+		;;
+	m68k-ccur)
+		os=-rtu
+		;;
+	m88k-omron*)
+		os=-luna
+		;;
+	*-next )
+		os=-nextstep
+		;;
+	*-sequent)
+		os=-ptx
+		;;
+	*-crds)
+		os=-unos
+		;;
+	*-ns)
+		os=-genix
+		;;
+	i370-*)
+		os=-mvs
+		;;
+	*-next)
+		os=-nextstep3
+		;;
+	*-gould)
+		os=-sysv
+		;;
+	*-highlevel)
+		os=-bsd
+		;;
+	*-encore)
+		os=-bsd
+		;;
+	*-sgi)
+		os=-irix
+		;;
+	*-siemens)
+		os=-sysv4
+		;;
+	*-masscomp)
+		os=-rtu
+		;;
+	f30[01]-fujitsu | f700-fujitsu)
+		os=-uxpv
+		;;
+	*-rom68k)
+		os=-coff
+		;;
+	*-*bug)
+		os=-coff
+		;;
+	*-apple)
+		os=-macos
+		;;
+	*-atari*)
+		os=-mint
+		;;
+	*)
+		os=-none
+		;;
+esac
+fi
+
+# Here we handle the case where we know the os, and the CPU type, but not the
+# manufacturer.  We pick the logical manufacturer.
+vendor=unknown
+case $basic_machine in
+	*-unknown)
+		case $os in
+			-riscix*)
+				vendor=acorn
+				;;
+			-sunos*)
+				vendor=sun
+				;;
+			-aix*)
+				vendor=ibm
+				;;
+			-beos*)
+				vendor=be
+				;;
+			-hpux*)
+				vendor=hp
+				;;
+			-mpeix*)
+				vendor=hp
+				;;
+			-hiux*)
+				vendor=hitachi
+				;;
+			-unos*)
+				vendor=crds
+				;;
+			-dgux*)
+				vendor=dg
+				;;
+			-luna*)
+				vendor=omron
+				;;
+			-genix*)
+				vendor=ns
+				;;
+			-mvs* | -opened*)
+				vendor=ibm
+				;;
+			-os400*)
+				vendor=ibm
+				;;
+			-ptx*)
+				vendor=sequent
+				;;
+			-tpf*)
+				vendor=ibm
+				;;
+			-vxsim* | -vxworks* | -windiss*)
+				vendor=wrs
+				;;
+			-aux*)
+				vendor=apple
+				;;
+			-hms*)
+				vendor=hitachi
+				;;
+			-mpw* | -macos*)
+				vendor=apple
+				;;
+			-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
+				vendor=atari
+				;;
+			-vos*)
+				vendor=stratus
+				;;
+		esac
+		basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
+		;;
+esac
+
+echo $basic_machine$os
+exit
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "timestamp='"
+# time-stamp-format: "%:y-%02m-%02d"
+# time-stamp-end: "'"
+# End:
diff --git a/eglib/depcomp b/eglib/depcomp
new file mode 100755
index 0000000..ca5ea4e
--- /dev/null
+++ b/eglib/depcomp
@@ -0,0 +1,584 @@
+#! /bin/sh
+# depcomp - compile a program generating dependencies as side-effects
+
+scriptversion=2006-10-15.18
+
+# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006 Free Software
+# Foundation, Inc.
+
+# 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, 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., 51 Franklin Street, Fifth Floor, Boston, MA
+# 02110-1301, 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.
+
+# Originally written by Alexandre Oliva <oliva at dcc.unicamp.br>.
+
+case $1 in
+  '')
+     echo "$0: No command.  Try \`$0 --help' for more information." 1>&2
+     exit 1;
+     ;;
+  -h | --h*)
+    cat <<\EOF
+Usage: depcomp [--help] [--version] PROGRAM [ARGS]
+
+Run PROGRAMS ARGS to compile a file, generating dependencies
+as side-effects.
+
+Environment variables:
+  depmode     Dependency tracking mode.
+  source      Source file read by `PROGRAMS ARGS'.
+  object      Object file output by `PROGRAMS ARGS'.
+  DEPDIR      directory where to store dependencies.
+  depfile     Dependency file to output.
+  tmpdepfile  Temporary file to use when outputing dependencies.
+  libtool     Whether libtool is used (yes/no).
+
+Report bugs to <bug-automake at gnu.org>.
+EOF
+    exit $?
+    ;;
+  -v | --v*)
+    echo "depcomp $scriptversion"
+    exit $?
+    ;;
+esac
+
+if test -z "$depmode" || test -z "$source" || test -z "$object"; then
+  echo "depcomp: Variables source, object and depmode must be set" 1>&2
+  exit 1
+fi
+
+# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
+depfile=${depfile-`echo "$object" |
+  sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
+tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
+
+rm -f "$tmpdepfile"
+
+# Some modes work just like other modes, but use different flags.  We
+# parameterize here, but still list the modes in the big case below,
+# to make depend.m4 easier to write.  Note that we *cannot* use a case
+# here, because this file can only contain one case statement.
+if test "$depmode" = hp; then
+  # HP compiler uses -M and no extra arg.
+  gccflag=-M
+  depmode=gcc
+fi
+
+if test "$depmode" = dashXmstdout; then
+   # This is just like dashmstdout with a different argument.
+   dashmflag=-xM
+   depmode=dashmstdout
+fi
+
+case "$depmode" in
+gcc3)
+## gcc 3 implements dependency tracking that does exactly what
+## we want.  Yay!  Note: for some reason libtool 1.4 doesn't like
+## it if -MD -MP comes after the -MF stuff.  Hmm.
+## Unfortunately, FreeBSD c89 acceptance of flags depends upon
+## the command line argument order; so add the flags where they
+## appear in depend2.am.  Note that the slowdown incurred here
+## affects only configure: in makefiles, %FASTDEP% shortcuts this.
+  for arg
+  do
+    case $arg in
+    -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;
+    *)  set fnord "$@" "$arg" ;;
+    esac
+    shift # fnord
+    shift # $arg
+  done
+  "$@"
+  stat=$?
+  if test $stat -eq 0; then :
+  else
+    rm -f "$tmpdepfile"
+    exit $stat
+  fi
+  mv "$tmpdepfile" "$depfile"
+  ;;
+
+gcc)
+## There are various ways to get dependency output from gcc.  Here's
+## why we pick this rather obscure method:
+## - Don't want to use -MD because we'd like the dependencies to end
+##   up in a subdir.  Having to rename by hand is ugly.
+##   (We might end up doing this anyway to support other compilers.)
+## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
+##   -MM, not -M (despite what the docs say).
+## - Using -M directly means running the compiler twice (even worse
+##   than renaming).
+  if test -z "$gccflag"; then
+    gccflag=-MD,
+  fi
+  "$@" -Wp,"$gccflag$tmpdepfile"
+  stat=$?
+  if test $stat -eq 0; then :
+  else
+    rm -f "$tmpdepfile"
+    exit $stat
+  fi
+  rm -f "$depfile"
+  echo "$object : \\" > "$depfile"
+  alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
+## The second -e expression handles DOS-style file names with drive letters.
+  sed -e 's/^[^:]*: / /' \
+      -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
+## This next piece of magic avoids the `deleted header file' problem.
+## The problem is that when a header file which appears in a .P file
+## is deleted, the dependency causes make to die (because there is
+## typically no way to rebuild the header).  We avoid this by adding
+## dummy dependencies for each header file.  Too bad gcc doesn't do
+## this for us directly.
+  tr ' ' '
+' < "$tmpdepfile" |
+## Some versions of gcc put a space before the `:'.  On the theory
+## that the space means something, we add a space to the output as
+## well.
+## Some versions of the HPUX 10.20 sed can't process this invocation
+## correctly.  Breaking it into two sed invocations is a workaround.
+    sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
+  rm -f "$tmpdepfile"
+  ;;
+
+hp)
+  # This case exists only to let depend.m4 do its work.  It works by
+  # looking at the text of this script.  This case will never be run,
+  # since it is checked for above.
+  exit 1
+  ;;
+
+sgi)
+  if test "$libtool" = yes; then
+    "$@" "-Wp,-MDupdate,$tmpdepfile"
+  else
+    "$@" -MDupdate "$tmpdepfile"
+  fi
+  stat=$?
+  if test $stat -eq 0; then :
+  else
+    rm -f "$tmpdepfile"
+    exit $stat
+  fi
+  rm -f "$depfile"
+
+  if test -f "$tmpdepfile"; then  # yes, the sourcefile depend on other files
+    echo "$object : \\" > "$depfile"
+
+    # Clip off the initial element (the dependent).  Don't try to be
+    # clever and replace this with sed code, as IRIX sed won't handle
+    # lines with more than a fixed number of characters (4096 in
+    # IRIX 6.2 sed, 8192 in IRIX 6.5).  We also remove comment lines;
+    # the IRIX cc adds comments like `#:fec' to the end of the
+    # dependency line.
+    tr ' ' '
+' < "$tmpdepfile" \
+    | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
+    tr '
+' ' ' >> $depfile
+    echo >> $depfile
+
+    # The second pass generates a dummy entry for each header file.
+    tr ' ' '
+' < "$tmpdepfile" \
+   | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
+   >> $depfile
+  else
+    # The sourcefile does not contain any dependencies, so just
+    # store a dummy comment line, to avoid errors with the Makefile
+    # "include basename.Plo" scheme.
+    echo "#dummy" > "$depfile"
+  fi
+  rm -f "$tmpdepfile"
+  ;;
+
+aix)
+  # The C for AIX Compiler uses -M and outputs the dependencies
+  # in a .u file.  In older versions, this file always lives in the
+  # current directory.  Also, the AIX compiler puts `$object:' at the
+  # start of each line; $object doesn't have directory information.
+  # Version 6 uses the directory in both cases.
+  stripped=`echo "$object" | sed 's/\(.*\)\..*$/\1/'`
+  tmpdepfile="$stripped.u"
+  if test "$libtool" = yes; then
+    "$@" -Wc,-M
+  else
+    "$@" -M
+  fi
+  stat=$?
+
+  if test -f "$tmpdepfile"; then :
+  else
+    stripped=`echo "$stripped" | sed 's,^.*/,,'`
+    tmpdepfile="$stripped.u"
+  fi
+
+  if test $stat -eq 0; then :
+  else
+    rm -f "$tmpdepfile"
+    exit $stat
+  fi
+
+  if test -f "$tmpdepfile"; then
+    outname="$stripped.o"
+    # Each line is of the form `foo.o: dependent.h'.
+    # Do two passes, one to just change these to
+    # `$object: dependent.h' and one to simply `dependent.h:'.
+    sed -e "s,^$outname:,$object :," < "$tmpdepfile" > "$depfile"
+    sed -e "s,^$outname: \(.*\)$,\1:," < "$tmpdepfile" >> "$depfile"
+  else
+    # The sourcefile does not contain any dependencies, so just
+    # store a dummy comment line, to avoid errors with the Makefile
+    # "include basename.Plo" scheme.
+    echo "#dummy" > "$depfile"
+  fi
+  rm -f "$tmpdepfile"
+  ;;
+
+icc)
+  # Intel's C compiler understands `-MD -MF file'.  However on
+  #    icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c
+  # ICC 7.0 will fill foo.d with something like
+  #    foo.o: sub/foo.c
+  #    foo.o: sub/foo.h
+  # which is wrong.  We want:
+  #    sub/foo.o: sub/foo.c
+  #    sub/foo.o: sub/foo.h
+  #    sub/foo.c:
+  #    sub/foo.h:
+  # ICC 7.1 will output
+  #    foo.o: sub/foo.c sub/foo.h
+  # and will wrap long lines using \ :
+  #    foo.o: sub/foo.c ... \
+  #     sub/foo.h ... \
+  #     ...
+
+  "$@" -MD -MF "$tmpdepfile"
+  stat=$?
+  if test $stat -eq 0; then :
+  else
+    rm -f "$tmpdepfile"
+    exit $stat
+  fi
+  rm -f "$depfile"
+  # Each line is of the form `foo.o: dependent.h',
+  # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
+  # Do two passes, one to just change these to
+  # `$object: dependent.h' and one to simply `dependent.h:'.
+  sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
+  # Some versions of the HPUX 10.20 sed can't process this invocation
+  # correctly.  Breaking it into two sed invocations is a workaround.
+  sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" |
+    sed -e 's/$/ :/' >> "$depfile"
+  rm -f "$tmpdepfile"
+  ;;
+
+hp2)
+  # The "hp" stanza above does not work with aCC (C++) and HP's ia64
+  # compilers, which have integrated preprocessors.  The correct option
+  # to use with these is +Maked; it writes dependencies to a file named
+  # 'foo.d', which lands next to the object file, wherever that
+  # happens to be.
+  # Much of this is similar to the tru64 case; see comments there.
+  dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
+  test "x$dir" = "x$object" && dir=
+  base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
+  if test "$libtool" = yes; then
+    tmpdepfile1=$dir$base.d
+    tmpdepfile2=$dir.libs/$base.d
+    "$@" -Wc,+Maked
+  else
+    tmpdepfile1=$dir$base.d
+    tmpdepfile2=$dir$base.d
+    "$@" +Maked
+  fi
+  stat=$?
+  if test $stat -eq 0; then :
+  else
+     rm -f "$tmpdepfile1" "$tmpdepfile2"
+     exit $stat
+  fi
+
+  for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2"
+  do
+    test -f "$tmpdepfile" && break
+  done
+  if test -f "$tmpdepfile"; then
+    sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile"
+    # Add `dependent.h:' lines.
+    sed -ne '2,${; s/^ *//; s/ \\*$//; s/$/:/; p;}' "$tmpdepfile" >> "$depfile"
+  else
+    echo "#dummy" > "$depfile"
+  fi
+  rm -f "$tmpdepfile" "$tmpdepfile2"
+  ;;
+
+tru64)
+   # The Tru64 compiler uses -MD to generate dependencies as a side
+   # effect.  `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
+   # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
+   # dependencies in `foo.d' instead, so we check for that too.
+   # Subdirectories are respected.
+   dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
+   test "x$dir" = "x$object" && dir=
+   base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
+
+   if test "$libtool" = yes; then
+      # With Tru64 cc, shared objects can also be used to make a
+      # static library.  This mechanism is used in libtool 1.4 series to
+      # handle both shared and static libraries in a single compilation.
+      # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
+      #
+      # With libtool 1.5 this exception was removed, and libtool now
+      # generates 2 separate objects for the 2 libraries.  These two
+      # compilations output dependencies in $dir.libs/$base.o.d and
+      # in $dir$base.o.d.  We have to check for both files, because
+      # one of the two compilations can be disabled.  We should prefer
+      # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
+      # automatically cleaned when .libs/ is deleted, while ignoring
+      # the former would cause a distcleancheck panic.
+      tmpdepfile1=$dir.libs/$base.lo.d   # libtool 1.4
+      tmpdepfile2=$dir$base.o.d          # libtool 1.5
+      tmpdepfile3=$dir.libs/$base.o.d    # libtool 1.5
+      tmpdepfile4=$dir.libs/$base.d      # Compaq CCC V6.2-504
+      "$@" -Wc,-MD
+   else
+      tmpdepfile1=$dir$base.o.d
+      tmpdepfile2=$dir$base.d
+      tmpdepfile3=$dir$base.d
+      tmpdepfile4=$dir$base.d
+      "$@" -MD
+   fi
+
+   stat=$?
+   if test $stat -eq 0; then :
+   else
+      rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
+      exit $stat
+   fi
+
+   for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
+   do
+     test -f "$tmpdepfile" && break
+   done
+   if test -f "$tmpdepfile"; then
+      sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
+      # That's a tab and a space in the [].
+      sed -e 's,^.*\.[a-z]*:[	 ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
+   else
+      echo "#dummy" > "$depfile"
+   fi
+   rm -f "$tmpdepfile"
+   ;;
+
+#nosideeffect)
+  # This comment above is used by automake to tell side-effect
+  # dependency tracking mechanisms from slower ones.
+
+dashmstdout)
+  # Important note: in order to support this mode, a compiler *must*
+  # always write the preprocessed file to stdout, regardless of -o.
+  "$@" || exit $?
+
+  # Remove the call to Libtool.
+  if test "$libtool" = yes; then
+    while test $1 != '--mode=compile'; do
+      shift
+    done
+    shift
+  fi
+
+  # Remove `-o $object'.
+  IFS=" "
+  for arg
+  do
+    case $arg in
+    -o)
+      shift
+      ;;
+    $object)
+      shift
+      ;;
+    *)
+      set fnord "$@" "$arg"
+      shift # fnord
+      shift # $arg
+      ;;
+    esac
+  done
+
+  test -z "$dashmflag" && dashmflag=-M
+  # Require at least two characters before searching for `:'
+  # in the target name.  This is to cope with DOS-style filenames:
+  # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise.
+  "$@" $dashmflag |
+    sed 's:^[  ]*[^: ][^:][^:]*\:[    ]*:'"$object"'\: :' > "$tmpdepfile"
+  rm -f "$depfile"
+  cat < "$tmpdepfile" > "$depfile"
+  tr ' ' '
+' < "$tmpdepfile" | \
+## Some versions of the HPUX 10.20 sed can't process this invocation
+## correctly.  Breaking it into two sed invocations is a workaround.
+    sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
+  rm -f "$tmpdepfile"
+  ;;
+
+dashXmstdout)
+  # This case only exists to satisfy depend.m4.  It is never actually
+  # run, as this mode is specially recognized in the preamble.
+  exit 1
+  ;;
+
+makedepend)
+  "$@" || exit $?
+  # Remove any Libtool call
+  if test "$libtool" = yes; then
+    while test $1 != '--mode=compile'; do
+      shift
+    done
+    shift
+  fi
+  # X makedepend
+  shift
+  cleared=no
+  for arg in "$@"; do
+    case $cleared in
+    no)
+      set ""; shift
+      cleared=yes ;;
+    esac
+    case "$arg" in
+    -D*|-I*)
+      set fnord "$@" "$arg"; shift ;;
+    # Strip any option that makedepend may not understand.  Remove
+    # the object too, otherwise makedepend will parse it as a source file.
+    -*|$object)
+      ;;
+    *)
+      set fnord "$@" "$arg"; shift ;;
+    esac
+  done
+  obj_suffix="`echo $object | sed 's/^.*\././'`"
+  touch "$tmpdepfile"
+  ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
+  rm -f "$depfile"
+  cat < "$tmpdepfile" > "$depfile"
+  sed '1,2d' "$tmpdepfile" | tr ' ' '
+' | \
+## Some versions of the HPUX 10.20 sed can't process this invocation
+## correctly.  Breaking it into two sed invocations is a workaround.
+    sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
+  rm -f "$tmpdepfile" "$tmpdepfile".bak
+  ;;
+
+cpp)
+  # Important note: in order to support this mode, a compiler *must*
+  # always write the preprocessed file to stdout.
+  "$@" || exit $?
+
+  # Remove the call to Libtool.
+  if test "$libtool" = yes; then
+    while test $1 != '--mode=compile'; do
+      shift
+    done
+    shift
+  fi
+
+  # Remove `-o $object'.
+  IFS=" "
+  for arg
+  do
+    case $arg in
+    -o)
+      shift
+      ;;
+    $object)
+      shift
+      ;;
+    *)
+      set fnord "$@" "$arg"
+      shift # fnord
+      shift # $arg
+      ;;
+    esac
+  done
+
+  "$@" -E |
+    sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
+       -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
+    sed '$ s: \\$::' > "$tmpdepfile"
+  rm -f "$depfile"
+  echo "$object : \\" > "$depfile"
+  cat < "$tmpdepfile" >> "$depfile"
+  sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
+  rm -f "$tmpdepfile"
+  ;;
+
+msvisualcpp)
+  # Important note: in order to support this mode, a compiler *must*
+  # always write the preprocessed file to stdout, regardless of -o,
+  # because we must use -o when running libtool.
+  "$@" || exit $?
+  IFS=" "
+  for arg
+  do
+    case "$arg" in
+    "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
+	set fnord "$@"
+	shift
+	shift
+	;;
+    *)
+	set fnord "$@" "$arg"
+	shift
+	shift
+	;;
+    esac
+  done
+  "$@" -E |
+  sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile"
+  rm -f "$depfile"
+  echo "$object : \\" > "$depfile"
+  . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::	\1 \\:p' >> "$depfile"
+  echo "	" >> "$depfile"
+  . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile"
+  rm -f "$tmpdepfile"
+  ;;
+
+none)
+  exec "$@"
+  ;;
+
+*)
+  echo "Unknown depmode $depmode" 1>&2
+  exit 1
+  ;;
+esac
+
+exit 0
+
+# Local Variables:
+# mode: shell-script
+# sh-indentation: 2
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-end: "$"
+# End:
diff --git a/eglib/install-sh b/eglib/install-sh
new file mode 100755
index 0000000..4fbbae7
--- /dev/null
+++ b/eglib/install-sh
@@ -0,0 +1,507 @@
+#!/bin/sh
+# install - install a program, script, or datafile
+
+scriptversion=2006-10-14.15
+
+# This originates from X11R5 (mit/util/scripts/install.sh), which was
+# later released in X11R6 (xc/config/util/install.sh) with the
+# following copyright and license.
+#
+# Copyright (C) 1994 X Consortium
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to
+# deal in the Software without restriction, including without limitation the
+# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+# sell copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
+# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
+# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+#
+# Except as contained in this notice, the name of the X Consortium shall not
+# be used in advertising or otherwise to promote the sale, use or other deal-
+# ings in this Software without prior written authorization from the X Consor-
+# tium.
+#
+#
+# FSF changes to this file are in the public domain.
+#
+# Calling this script install-sh is preferred over install.sh, to prevent
+# `make' implicit rules from creating a file called install from it
+# when there is no Makefile.
+#
+# This script is compatible with the BSD install script, but was written
+# from scratch.
+
+nl='
+'
+IFS=" ""	$nl"
+
+# set DOITPROG to echo to test this script
+
+# Don't use :- since 4.3BSD and earlier shells don't like it.
+doit="${DOITPROG-}"
+if test -z "$doit"; then
+  doit_exec=exec
+else
+  doit_exec=$doit
+fi
+
+# Put in absolute file names if you don't have them in your path;
+# or use environment vars.
+
+mvprog="${MVPROG-mv}"
+cpprog="${CPPROG-cp}"
+chmodprog="${CHMODPROG-chmod}"
+chownprog="${CHOWNPROG-chown}"
+chgrpprog="${CHGRPPROG-chgrp}"
+stripprog="${STRIPPROG-strip}"
+rmprog="${RMPROG-rm}"
+mkdirprog="${MKDIRPROG-mkdir}"
+
+posix_glob=
+posix_mkdir=
+
+# Desired mode of installed file.
+mode=0755
+
+chmodcmd=$chmodprog
+chowncmd=
+chgrpcmd=
+stripcmd=
+rmcmd="$rmprog -f"
+mvcmd="$mvprog"
+src=
+dst=
+dir_arg=
+dstarg=
+no_target_directory=
+
+usage="Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
+   or: $0 [OPTION]... SRCFILES... DIRECTORY
+   or: $0 [OPTION]... -t DIRECTORY SRCFILES...
+   or: $0 [OPTION]... -d DIRECTORIES...
+
+In the 1st form, copy SRCFILE to DSTFILE.
+In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
+In the 4th, create DIRECTORIES.
+
+Options:
+-c         (ignored)
+-d         create directories instead of installing files.
+-g GROUP   $chgrpprog installed files to GROUP.
+-m MODE    $chmodprog installed files to MODE.
+-o USER    $chownprog installed files to USER.
+-s         $stripprog installed files.
+-t DIRECTORY  install into DIRECTORY.
+-T         report an error if DSTFILE is a directory.
+--help     display this help and exit.
+--version  display version info and exit.
+
+Environment variables override the default commands:
+  CHGRPPROG CHMODPROG CHOWNPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG
+"
+
+while test $# -ne 0; do
+  case $1 in
+    -c) shift
+        continue;;
+
+    -d) dir_arg=true
+        shift
+        continue;;
+
+    -g) chgrpcmd="$chgrpprog $2"
+        shift
+        shift
+        continue;;
+
+    --help) echo "$usage"; exit $?;;
+
+    -m) mode=$2
+        shift
+        shift
+	case $mode in
+	  *' '* | *'	'* | *'
+'*	  | *'*'* | *'?'* | *'['*)
+	    echo "$0: invalid mode: $mode" >&2
+	    exit 1;;
+	esac
+        continue;;
+
+    -o) chowncmd="$chownprog $2"
+        shift
+        shift
+        continue;;
+
+    -s) stripcmd=$stripprog
+        shift
+        continue;;
+
+    -t) dstarg=$2
+	shift
+	shift
+	continue;;
+
+    -T) no_target_directory=true
+	shift
+	continue;;
+
+    --version) echo "$0 $scriptversion"; exit $?;;
+
+    --)	shift
+	break;;
+
+    -*)	echo "$0: invalid option: $1" >&2
+	exit 1;;
+
+    *)  break;;
+  esac
+done
+
+if test $# -ne 0 && test -z "$dir_arg$dstarg"; then
+  # When -d is used, all remaining arguments are directories to create.
+  # When -t is used, the destination is already specified.
+  # Otherwise, the last argument is the destination.  Remove it from $@.
+  for arg
+  do
+    if test -n "$dstarg"; then
+      # $@ is not empty: it contains at least $arg.
+      set fnord "$@" "$dstarg"
+      shift # fnord
+    fi
+    shift # arg
+    dstarg=$arg
+  done
+fi
+
+if test $# -eq 0; then
+  if test -z "$dir_arg"; then
+    echo "$0: no input file specified." >&2
+    exit 1
+  fi
+  # It's OK to call `install-sh -d' without argument.
+  # This can happen when creating conditional directories.
+  exit 0
+fi
+
+if test -z "$dir_arg"; then
+  trap '(exit $?); exit' 1 2 13 15
+
+  # Set umask so as not to create temps with too-generous modes.
+  # However, 'strip' requires both read and write access to temps.
+  case $mode in
+    # Optimize common cases.
+    *644) cp_umask=133;;
+    *755) cp_umask=22;;
+
+    *[0-7])
+      if test -z "$stripcmd"; then
+	u_plus_rw=
+      else
+	u_plus_rw='% 200'
+      fi
+      cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
+    *)
+      if test -z "$stripcmd"; then
+	u_plus_rw=
+      else
+	u_plus_rw=,u+rw
+      fi
+      cp_umask=$mode$u_plus_rw;;
+  esac
+fi
+
+for src
+do
+  # Protect names starting with `-'.
+  case $src in
+    -*) src=./$src ;;
+  esac
+
+  if test -n "$dir_arg"; then
+    dst=$src
+    dstdir=$dst
+    test -d "$dstdir"
+    dstdir_status=$?
+  else
+
+    # Waiting for this to be detected by the "$cpprog $src $dsttmp" command
+    # might cause directories to be created, which would be especially bad
+    # if $src (and thus $dsttmp) contains '*'.
+    if test ! -f "$src" && test ! -d "$src"; then
+      echo "$0: $src does not exist." >&2
+      exit 1
+    fi
+
+    if test -z "$dstarg"; then
+      echo "$0: no destination specified." >&2
+      exit 1
+    fi
+
+    dst=$dstarg
+    # Protect names starting with `-'.
+    case $dst in
+      -*) dst=./$dst ;;
+    esac
+
+    # If destination is a directory, append the input filename; won't work
+    # if double slashes aren't ignored.
+    if test -d "$dst"; then
+      if test -n "$no_target_directory"; then
+	echo "$0: $dstarg: Is a directory" >&2
+	exit 1
+      fi
+      dstdir=$dst
+      dst=$dstdir/`basename "$src"`
+      dstdir_status=0
+    else
+      # Prefer dirname, but fall back on a substitute if dirname fails.
+      dstdir=`
+	(dirname "$dst") 2>/dev/null ||
+	expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+	     X"$dst" : 'X\(//\)[^/]' \| \
+	     X"$dst" : 'X\(//\)$' \| \
+	     X"$dst" : 'X\(/\)' \| . 2>/dev/null ||
+	echo X"$dst" |
+	    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+		   s//\1/
+		   q
+		 }
+		 /^X\(\/\/\)[^/].*/{
+		   s//\1/
+		   q
+		 }
+		 /^X\(\/\/\)$/{
+		   s//\1/
+		   q
+		 }
+		 /^X\(\/\).*/{
+		   s//\1/
+		   q
+		 }
+		 s/.*/./; q'
+      `
+
+      test -d "$dstdir"
+      dstdir_status=$?
+    fi
+  fi
+
+  obsolete_mkdir_used=false
+
+  if test $dstdir_status != 0; then
+    case $posix_mkdir in
+      '')
+	# Create intermediate dirs using mode 755 as modified by the umask.
+	# This is like FreeBSD 'install' as of 1997-10-28.
+	umask=`umask`
+	case $stripcmd.$umask in
+	  # Optimize common cases.
+	  *[2367][2367]) mkdir_umask=$umask;;
+	  .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
+
+	  *[0-7])
+	    mkdir_umask=`expr $umask + 22 \
+	      - $umask % 100 % 40 + $umask % 20 \
+	      - $umask % 10 % 4 + $umask % 2
+	    `;;
+	  *) mkdir_umask=$umask,go-w;;
+	esac
+
+	# With -d, create the new directory with the user-specified mode.
+	# Otherwise, rely on $mkdir_umask.
+	if test -n "$dir_arg"; then
+	  mkdir_mode=-m$mode
+	else
+	  mkdir_mode=
+	fi
+
+	posix_mkdir=false
+	case $umask in
+	  *[123567][0-7][0-7])
+	    # POSIX mkdir -p sets u+wx bits regardless of umask, which
+	    # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
+	    ;;
+	  *)
+	    tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
+	    trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
+
+	    if (umask $mkdir_umask &&
+		exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
+	    then
+	      if test -z "$dir_arg" || {
+		   # Check for POSIX incompatibilities with -m.
+		   # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
+		   # other-writeable bit of parent directory when it shouldn't.
+		   # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
+		   ls_ld_tmpdir=`ls -ld "$tmpdir"`
+		   case $ls_ld_tmpdir in
+		     d????-?r-*) different_mode=700;;
+		     d????-?--*) different_mode=755;;
+		     *) false;;
+		   esac &&
+		   $mkdirprog -m$different_mode -p -- "$tmpdir" && {
+		     ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
+		     test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
+		   }
+		 }
+	      then posix_mkdir=:
+	      fi
+	      rmdir "$tmpdir/d" "$tmpdir"
+	    else
+	      # Remove any dirs left behind by ancient mkdir implementations.
+	      rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
+	    fi
+	    trap '' 0;;
+	esac;;
+    esac
+
+    if
+      $posix_mkdir && (
+	umask $mkdir_umask &&
+	$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
+      )
+    then :
+    else
+
+      # The umask is ridiculous, or mkdir does not conform to POSIX,
+      # or it failed possibly due to a race condition.  Create the
+      # directory the slow way, step by step, checking for races as we go.
+
+      case $dstdir in
+	/*) prefix=/ ;;
+	-*) prefix=./ ;;
+	*)  prefix= ;;
+      esac
+
+      case $posix_glob in
+        '')
+	  if (set -f) 2>/dev/null; then
+	    posix_glob=true
+	  else
+	    posix_glob=false
+	  fi ;;
+      esac
+
+      oIFS=$IFS
+      IFS=/
+      $posix_glob && set -f
+      set fnord $dstdir
+      shift
+      $posix_glob && set +f
+      IFS=$oIFS
+
+      prefixes=
+
+      for d
+      do
+	test -z "$d" && continue
+
+	prefix=$prefix$d
+	if test -d "$prefix"; then
+	  prefixes=
+	else
+	  if $posix_mkdir; then
+	    (umask=$mkdir_umask &&
+	     $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
+	    # Don't fail if two instances are running concurrently.
+	    test -d "$prefix" || exit 1
+	  else
+	    case $prefix in
+	      *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
+	      *) qprefix=$prefix;;
+	    esac
+	    prefixes="$prefixes '$qprefix'"
+	  fi
+	fi
+	prefix=$prefix/
+      done
+
+      if test -n "$prefixes"; then
+	# Don't fail if two instances are running concurrently.
+	(umask $mkdir_umask &&
+	 eval "\$doit_exec \$mkdirprog $prefixes") ||
+	  test -d "$dstdir" || exit 1
+	obsolete_mkdir_used=true
+      fi
+    fi
+  fi
+
+  if test -n "$dir_arg"; then
+    { test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
+    { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
+    { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
+      test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
+  else
+
+    # Make a couple of temp file names in the proper directory.
+    dsttmp=$dstdir/_inst.$$_
+    rmtmp=$dstdir/_rm.$$_
+
+    # Trap to clean up those temp files at exit.
+    trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
+
+    # Copy the file name to the temp name.
+    (umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") &&
+
+    # and set any options; do chmod last to preserve setuid bits.
+    #
+    # If any of these fail, we abort the whole thing.  If we want to
+    # ignore errors from any of these, just make sure not to ignore
+    # errors from the above "$doit $cpprog $src $dsttmp" command.
+    #
+    { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } \
+      && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } \
+      && { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } \
+      && { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
+
+    # Now rename the file to the real destination.
+    { $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null \
+      || {
+	   # The rename failed, perhaps because mv can't rename something else
+	   # to itself, or perhaps because mv is so ancient that it does not
+	   # support -f.
+
+	   # Now remove or move aside any old file at destination location.
+	   # We try this two ways since rm can't unlink itself on some
+	   # systems and the destination file might be busy for other
+	   # reasons.  In this case, the final cleanup might fail but the new
+	   # file should still install successfully.
+	   {
+	     if test -f "$dst"; then
+	       $doit $rmcmd -f "$dst" 2>/dev/null \
+	       || { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null \
+		     && { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }; }\
+	       || {
+		 echo "$0: cannot unlink or rename $dst" >&2
+		 (exit 1); exit 1
+	       }
+	     else
+	       :
+	     fi
+	   } &&
+
+	   # Now rename the file to the real destination.
+	   $doit $mvcmd "$dsttmp" "$dst"
+	 }
+    } || exit 1
+
+    trap '' 0
+  fi
+done
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-end: "$"
+# End:
diff --git a/libgc/ltmain.sh b/eglib/ltmain.sh
similarity index 100%
copy from libgc/ltmain.sh
copy to eglib/ltmain.sh
diff --git a/eglib/missing b/eglib/missing
new file mode 100755
index 0000000..1c8ff70
--- /dev/null
+++ b/eglib/missing
@@ -0,0 +1,367 @@
+#! /bin/sh
+# Common stub for a few missing GNU programs while installing.
+
+scriptversion=2006-05-10.23
+
+# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006
+#   Free Software Foundation, Inc.
+# Originally by Fran,cois Pinard <pinard at iro.umontreal.ca>, 1996.
+
+# 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, 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., 51 Franklin Street, Fifth Floor, Boston, MA
+# 02110-1301, 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.
+
+if test $# -eq 0; then
+  echo 1>&2 "Try \`$0 --help' for more information"
+  exit 1
+fi
+
+run=:
+sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
+sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
+
+# In the cases where this matters, `missing' is being run in the
+# srcdir already.
+if test -f configure.ac; then
+  configure_ac=configure.ac
+else
+  configure_ac=configure.in
+fi
+
+msg="missing on your system"
+
+case $1 in
+--run)
+  # Try to run requested program, and just exit if it succeeds.
+  run=
+  shift
+  "$@" && exit 0
+  # Exit code 63 means version mismatch.  This often happens
+  # when the user try to use an ancient version of a tool on
+  # a file that requires a minimum version.  In this case we
+  # we should proceed has if the program had been absent, or
+  # if --run hadn't been passed.
+  if test $? = 63; then
+    run=:
+    msg="probably too old"
+  fi
+  ;;
+
+  -h|--h|--he|--hel|--help)
+    echo "\
+$0 [OPTION]... PROGRAM [ARGUMENT]...
+
+Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
+error status if there is no known handling for PROGRAM.
+
+Options:
+  -h, --help      display this help and exit
+  -v, --version   output version information and exit
+  --run           try to run the given command, and emulate it if it fails
+
+Supported PROGRAM values:
+  aclocal      touch file \`aclocal.m4'
+  autoconf     touch file \`configure'
+  autoheader   touch file \`config.h.in'
+  autom4te     touch the output file, or create a stub one
+  automake     touch all \`Makefile.in' files
+  bison        create \`y.tab.[ch]', if possible, from existing .[ch]
+  flex         create \`lex.yy.c', if possible, from existing .c
+  help2man     touch the output file
+  lex          create \`lex.yy.c', if possible, from existing .c
+  makeinfo     touch the output file
+  tar          try tar, gnutar, gtar, then tar without non-portable flags
+  yacc         create \`y.tab.[ch]', if possible, from existing .[ch]
+
+Send bug reports to <bug-automake at gnu.org>."
+    exit $?
+    ;;
+
+  -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
+    echo "missing $scriptversion (GNU Automake)"
+    exit $?
+    ;;
+
+  -*)
+    echo 1>&2 "$0: Unknown \`$1' option"
+    echo 1>&2 "Try \`$0 --help' for more information"
+    exit 1
+    ;;
+
+esac
+
+# Now exit if we have it, but it failed.  Also exit now if we
+# don't have it and --version was passed (most likely to detect
+# the program).
+case $1 in
+  lex|yacc)
+    # Not GNU programs, they don't have --version.
+    ;;
+
+  tar)
+    if test -n "$run"; then
+       echo 1>&2 "ERROR: \`tar' requires --run"
+       exit 1
+    elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
+       exit 1
+    fi
+    ;;
+
+  *)
+    if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
+       # We have it, but it failed.
+       exit 1
+    elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
+       # Could not run --version or --help.  This is probably someone
+       # running `$TOOL --version' or `$TOOL --help' to check whether
+       # $TOOL exists and not knowing $TOOL uses missing.
+       exit 1
+    fi
+    ;;
+esac
+
+# If it does not exist, or fails to run (possibly an outdated version),
+# try to emulate it.
+case $1 in
+  aclocal*)
+    echo 1>&2 "\
+WARNING: \`$1' is $msg.  You should only need it if
+         you modified \`acinclude.m4' or \`${configure_ac}'.  You might want
+         to install the \`Automake' and \`Perl' packages.  Grab them from
+         any GNU archive site."
+    touch aclocal.m4
+    ;;
+
+  autoconf)
+    echo 1>&2 "\
+WARNING: \`$1' is $msg.  You should only need it if
+         you modified \`${configure_ac}'.  You might want to install the
+         \`Autoconf' and \`GNU m4' packages.  Grab them from any GNU
+         archive site."
+    touch configure
+    ;;
+
+  autoheader)
+    echo 1>&2 "\
+WARNING: \`$1' is $msg.  You should only need it if
+         you modified \`acconfig.h' or \`${configure_ac}'.  You might want
+         to install the \`Autoconf' and \`GNU m4' packages.  Grab them
+         from any GNU archive site."
+    files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
+    test -z "$files" && files="config.h"
+    touch_files=
+    for f in $files; do
+      case $f in
+      *:*) touch_files="$touch_files "`echo "$f" |
+				       sed -e 's/^[^:]*://' -e 's/:.*//'`;;
+      *) touch_files="$touch_files $f.in";;
+      esac
+    done
+    touch $touch_files
+    ;;
+
+  automake*)
+    echo 1>&2 "\
+WARNING: \`$1' is $msg.  You should only need it if
+         you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
+         You might want to install the \`Automake' and \`Perl' packages.
+         Grab them from any GNU archive site."
+    find . -type f -name Makefile.am -print |
+	   sed 's/\.am$/.in/' |
+	   while read f; do touch "$f"; done
+    ;;
+
+  autom4te)
+    echo 1>&2 "\
+WARNING: \`$1' is needed, but is $msg.
+         You might have modified some files without having the
+         proper tools for further handling them.
+         You can get \`$1' as part of \`Autoconf' from any GNU
+         archive site."
+
+    file=`echo "$*" | sed -n "$sed_output"`
+    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
+    if test -f "$file"; then
+	touch $file
+    else
+	test -z "$file" || exec >$file
+	echo "#! /bin/sh"
+	echo "# Created by GNU Automake missing as a replacement of"
+	echo "#  $ $@"
+	echo "exit 0"
+	chmod +x $file
+	exit 1
+    fi
+    ;;
+
+  bison|yacc)
+    echo 1>&2 "\
+WARNING: \`$1' $msg.  You should only need it if
+         you modified a \`.y' file.  You may need the \`Bison' package
+         in order for those modifications to take effect.  You can get
+         \`Bison' from any GNU archive site."
+    rm -f y.tab.c y.tab.h
+    if test $# -ne 1; then
+        eval LASTARG="\${$#}"
+	case $LASTARG in
+	*.y)
+	    SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
+	    if test -f "$SRCFILE"; then
+	         cp "$SRCFILE" y.tab.c
+	    fi
+	    SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
+	    if test -f "$SRCFILE"; then
+	         cp "$SRCFILE" y.tab.h
+	    fi
+	  ;;
+	esac
+    fi
+    if test ! -f y.tab.h; then
+	echo >y.tab.h
+    fi
+    if test ! -f y.tab.c; then
+	echo 'main() { return 0; }' >y.tab.c
+    fi
+    ;;
+
+  lex|flex)
+    echo 1>&2 "\
+WARNING: \`$1' is $msg.  You should only need it if
+         you modified a \`.l' file.  You may need the \`Flex' package
+         in order for those modifications to take effect.  You can get
+         \`Flex' from any GNU archive site."
+    rm -f lex.yy.c
+    if test $# -ne 1; then
+        eval LASTARG="\${$#}"
+	case $LASTARG in
+	*.l)
+	    SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
+	    if test -f "$SRCFILE"; then
+	         cp "$SRCFILE" lex.yy.c
+	    fi
+	  ;;
+	esac
+    fi
+    if test ! -f lex.yy.c; then
+	echo 'main() { return 0; }' >lex.yy.c
+    fi
+    ;;
+
+  help2man)
+    echo 1>&2 "\
+WARNING: \`$1' is $msg.  You should only need it if
+	 you modified a dependency of a manual page.  You may need the
+	 \`Help2man' package in order for those modifications to take
+	 effect.  You can get \`Help2man' from any GNU archive site."
+
+    file=`echo "$*" | sed -n "$sed_output"`
+    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
+    if test -f "$file"; then
+	touch $file
+    else
+	test -z "$file" || exec >$file
+	echo ".ab help2man is required to generate this page"
+	exit 1
+    fi
+    ;;
+
+  makeinfo)
+    echo 1>&2 "\
+WARNING: \`$1' is $msg.  You should only need it if
+         you modified a \`.texi' or \`.texinfo' file, or any other file
+         indirectly affecting the aspect of the manual.  The spurious
+         call might also be the consequence of using a buggy \`make' (AIX,
+         DU, IRIX).  You might want to install the \`Texinfo' package or
+         the \`GNU make' package.  Grab either from any GNU archive site."
+    # The file to touch is that specified with -o ...
+    file=`echo "$*" | sed -n "$sed_output"`
+    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
+    if test -z "$file"; then
+      # ... or it is the one specified with @setfilename ...
+      infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
+      file=`sed -n '
+	/^@setfilename/{
+	  s/.* \([^ ]*\) *$/\1/
+	  p
+	  q
+	}' $infile`
+      # ... or it is derived from the source name (dir/f.texi becomes f.info)
+      test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
+    fi
+    # If the file does not exist, the user really needs makeinfo;
+    # let's fail without touching anything.
+    test -f $file || exit 1
+    touch $file
+    ;;
+
+  tar)
+    shift
+
+    # We have already tried tar in the generic part.
+    # Look for gnutar/gtar before invocation to avoid ugly error
+    # messages.
+    if (gnutar --version > /dev/null 2>&1); then
+       gnutar "$@" && exit 0
+    fi
+    if (gtar --version > /dev/null 2>&1); then
+       gtar "$@" && exit 0
+    fi
+    firstarg="$1"
+    if shift; then
+	case $firstarg in
+	*o*)
+	    firstarg=`echo "$firstarg" | sed s/o//`
+	    tar "$firstarg" "$@" && exit 0
+	    ;;
+	esac
+	case $firstarg in
+	*h*)
+	    firstarg=`echo "$firstarg" | sed s/h//`
+	    tar "$firstarg" "$@" && exit 0
+	    ;;
+	esac
+    fi
+
+    echo 1>&2 "\
+WARNING: I can't seem to be able to run \`tar' with the given arguments.
+         You may want to install GNU tar or Free paxutils, or check the
+         command line arguments."
+    exit 1
+    ;;
+
+  *)
+    echo 1>&2 "\
+WARNING: \`$1' is needed, and is $msg.
+         You might have modified some files without having the
+         proper tools for further handling them.  Check the \`README' file,
+         it often tells you about the needed prerequisites for installing
+         this package.  You may also peek at any GNU archive site, in case
+         some other package would contain this missing \`$1' program."
+    exit 1
+    ;;
+esac
+
+exit 0
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-end: "$"
+# End:
diff --git a/eglib/src/Makefile.in b/eglib/src/Makefile.in
index 3171c9d..c6d8122 100644
--- a/eglib/src/Makefile.in
+++ b/eglib/src/Makefile.in
@@ -43,7 +43,7 @@ am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
 	$(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 	$(ACLOCAL_M4)
-mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs
+mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES = eglib-config.h
 CONFIG_CLEAN_VPATH_FILES =
@@ -129,7 +129,7 @@ libeglib_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
 	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(libeglib_la_CFLAGS) \
 	$(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
 DEFAULT_INCLUDES = -I. at am__isrc@ -I$(top_builddir)
-depcomp = $(SHELL) $(top_srcdir)/../depcomp
+depcomp = $(SHELL) $(top_srcdir)/depcomp
 am__depfiles_maybe = depfiles
 am__mv = mv -f
 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
diff --git a/eglib/src/glib.h b/eglib/src/glib.h
index 0075cbf..f4b2141 100644
--- a/eglib/src/glib.h
+++ b/eglib/src/glib.h
@@ -114,7 +114,9 @@ typedef int32_t        gboolean;
 
 #define G_USEC_PER_SEC  1000000
 
+#ifndef ABS
 #define ABS(a)         ((a) > 0 ? (a) : -(a))
+#endif
 
 #define G_STRUCT_OFFSET(p_type,field) offsetof(p_type,field)
 
diff --git a/eglib/test/Makefile.in b/eglib/test/Makefile.in
index 25c65bb..cd839a0 100644
--- a/eglib/test/Makefile.in
+++ b/eglib/test/Makefile.in
@@ -45,7 +45,7 @@ am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
 	$(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 	$(ACLOCAL_M4)
-mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs
+mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
 CONFIG_CLEAN_VPATH_FILES =
@@ -94,7 +94,7 @@ test_glib_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
 	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(test_glib_CFLAGS) \
 	$(CFLAGS) $(test_glib_LDFLAGS) $(LDFLAGS) -o $@
 DEFAULT_INCLUDES = -I. at am__isrc@ -I$(top_builddir)
-depcomp = $(SHELL) $(top_srcdir)/../depcomp
+depcomp = $(SHELL) $(top_srcdir)/depcomp
 am__depfiles_maybe = depfiles
 am__mv = mv -f
 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
diff --git a/install-sh b/install-sh
index 6781b98..4fbbae7 100755
--- a/install-sh
+++ b/install-sh
@@ -1,7 +1,7 @@
 #!/bin/sh
 # install - install a program, script, or datafile
 
-scriptversion=2009-04-28.21; # UTC
+scriptversion=2006-10-14.15
 
 # This originates from X11R5 (mit/util/scripts/install.sh), which was
 # later released in X11R6 (xc/config/util/install.sh) with the
@@ -48,7 +48,7 @@ IFS=" ""	$nl"
 # set DOITPROG to echo to test this script
 
 # Don't use :- since 4.3BSD and earlier shells don't like it.
-doit=${DOITPROG-}
+doit="${DOITPROG-}"
 if test -z "$doit"; then
   doit_exec=exec
 else
@@ -58,49 +58,34 @@ fi
 # Put in absolute file names if you don't have them in your path;
 # or use environment vars.
 
-chgrpprog=${CHGRPPROG-chgrp}
-chmodprog=${CHMODPROG-chmod}
-chownprog=${CHOWNPROG-chown}
-cmpprog=${CMPPROG-cmp}
-cpprog=${CPPROG-cp}
-mkdirprog=${MKDIRPROG-mkdir}
-mvprog=${MVPROG-mv}
-rmprog=${RMPROG-rm}
-stripprog=${STRIPPROG-strip}
-
-posix_glob='?'
-initialize_posix_glob='
-  test "$posix_glob" != "?" || {
-    if (set -f) 2>/dev/null; then
-      posix_glob=
-    else
-      posix_glob=:
-    fi
-  }
-'
+mvprog="${MVPROG-mv}"
+cpprog="${CPPROG-cp}"
+chmodprog="${CHMODPROG-chmod}"
+chownprog="${CHOWNPROG-chown}"
+chgrpprog="${CHGRPPROG-chgrp}"
+stripprog="${STRIPPROG-strip}"
+rmprog="${RMPROG-rm}"
+mkdirprog="${MKDIRPROG-mkdir}"
 
+posix_glob=
 posix_mkdir=
 
 # Desired mode of installed file.
 mode=0755
 
-chgrpcmd=
 chmodcmd=$chmodprog
 chowncmd=
-mvcmd=$mvprog
-rmcmd="$rmprog -f"
+chgrpcmd=
 stripcmd=
-
+rmcmd="$rmprog -f"
+mvcmd="$mvprog"
 src=
 dst=
 dir_arg=
-dst_arg=
-
-copy_on_change=false
+dstarg=
 no_target_directory=
 
-usage="\
-Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
+usage="Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
    or: $0 [OPTION]... SRCFILES... DIRECTORY
    or: $0 [OPTION]... -t DIRECTORY SRCFILES...
    or: $0 [OPTION]... -d DIRECTORIES...
@@ -110,55 +95,65 @@ In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
 In the 4th, create DIRECTORIES.
 
 Options:
-     --help     display this help and exit.
-     --version  display version info and exit.
-
-  -c            (ignored)
-  -C            install only if different (preserve the last data modification time)
-  -d            create directories instead of installing files.
-  -g GROUP      $chgrpprog installed files to GROUP.
-  -m MODE       $chmodprog installed files to MODE.
-  -o USER       $chownprog installed files to USER.
-  -s            $stripprog installed files.
-  -t DIRECTORY  install into DIRECTORY.
-  -T            report an error if DSTFILE is a directory.
+-c         (ignored)
+-d         create directories instead of installing files.
+-g GROUP   $chgrpprog installed files to GROUP.
+-m MODE    $chmodprog installed files to MODE.
+-o USER    $chownprog installed files to USER.
+-s         $stripprog installed files.
+-t DIRECTORY  install into DIRECTORY.
+-T         report an error if DSTFILE is a directory.
+--help     display this help and exit.
+--version  display version info and exit.
 
 Environment variables override the default commands:
-  CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
-  RMPROG STRIPPROG
+  CHGRPPROG CHMODPROG CHOWNPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG
 "
 
 while test $# -ne 0; do
   case $1 in
-    -c) ;;
-
-    -C) copy_on_change=true;;
+    -c) shift
+        continue;;
 
-    -d) dir_arg=true;;
+    -d) dir_arg=true
+        shift
+        continue;;
 
     -g) chgrpcmd="$chgrpprog $2"
-	shift;;
+        shift
+        shift
+        continue;;
 
     --help) echo "$usage"; exit $?;;
 
     -m) mode=$2
+        shift
+        shift
 	case $mode in
 	  *' '* | *'	'* | *'
 '*	  | *'*'* | *'?'* | *'['*)
 	    echo "$0: invalid mode: $mode" >&2
 	    exit 1;;
 	esac
-	shift;;
+        continue;;
 
     -o) chowncmd="$chownprog $2"
-	shift;;
+        shift
+        shift
+        continue;;
 
-    -s) stripcmd=$stripprog;;
+    -s) stripcmd=$stripprog
+        shift
+        continue;;
 
-    -t) dst_arg=$2
-	shift;;
+    -t) dstarg=$2
+	shift
+	shift
+	continue;;
 
-    -T) no_target_directory=true;;
+    -T) no_target_directory=true
+	shift
+	continue;;
 
     --version) echo "$0 $scriptversion"; exit $?;;
 
@@ -170,22 +165,21 @@ while test $# -ne 0; do
 
     *)  break;;
   esac
-  shift
 done
 
-if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
+if test $# -ne 0 && test -z "$dir_arg$dstarg"; then
   # When -d is used, all remaining arguments are directories to create.
   # When -t is used, the destination is already specified.
   # Otherwise, the last argument is the destination.  Remove it from $@.
   for arg
   do
-    if test -n "$dst_arg"; then
+    if test -n "$dstarg"; then
       # $@ is not empty: it contains at least $arg.
-      set fnord "$@" "$dst_arg"
+      set fnord "$@" "$dstarg"
       shift # fnord
     fi
     shift # arg
-    dst_arg=$arg
+    dstarg=$arg
   done
 fi
 
@@ -230,7 +224,7 @@ for src
 do
   # Protect names starting with `-'.
   case $src in
-    -*) src=./$src;;
+    -*) src=./$src ;;
   esac
 
   if test -n "$dir_arg"; then
@@ -248,22 +242,22 @@ do
       exit 1
     fi
 
-    if test -z "$dst_arg"; then
+    if test -z "$dstarg"; then
       echo "$0: no destination specified." >&2
       exit 1
     fi
 
-    dst=$dst_arg
+    dst=$dstarg
     # Protect names starting with `-'.
     case $dst in
-      -*) dst=./$dst;;
+      -*) dst=./$dst ;;
     esac
 
     # If destination is a directory, append the input filename; won't work
     # if double slashes aren't ignored.
     if test -d "$dst"; then
       if test -n "$no_target_directory"; then
-	echo "$0: $dst_arg: Is a directory" >&2
+	echo "$0: $dstarg: Is a directory" >&2
 	exit 1
       fi
       dstdir=$dst
@@ -384,19 +378,26 @@ do
       # directory the slow way, step by step, checking for races as we go.
 
       case $dstdir in
-	/*) prefix='/';;
-	-*) prefix='./';;
-	*)  prefix='';;
+	/*) prefix=/ ;;
+	-*) prefix=./ ;;
+	*)  prefix= ;;
       esac
 
-      eval "$initialize_posix_glob"
+      case $posix_glob in
+        '')
+	  if (set -f) 2>/dev/null; then
+	    posix_glob=true
+	  else
+	    posix_glob=false
+	  fi ;;
+      esac
 
       oIFS=$IFS
       IFS=/
-      $posix_glob set -f
+      $posix_glob && set -f
       set fnord $dstdir
       shift
-      $posix_glob set +f
+      $posix_glob && set +f
       IFS=$oIFS
 
       prefixes=
@@ -458,54 +459,41 @@ do
     # ignore errors from any of these, just make sure not to ignore
     # errors from the above "$doit $cpprog $src $dsttmp" command.
     #
-    { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
-    { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
-    { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
-    { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
-
-    # If -C, don't bother to copy if it wouldn't change the file.
-    if $copy_on_change &&
-       old=`LC_ALL=C ls -dlL "$dst"	2>/dev/null` &&
-       new=`LC_ALL=C ls -dlL "$dsttmp"	2>/dev/null` &&
-
-       eval "$initialize_posix_glob" &&
-       $posix_glob set -f &&
-       set X $old && old=:$2:$4:$5:$6 &&
-       set X $new && new=:$2:$4:$5:$6 &&
-       $posix_glob set +f &&
-
-       test "$old" = "$new" &&
-       $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
-    then
-      rm -f "$dsttmp"
-    else
-      # Rename the file to the real destination.
-      $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
-
-      # The rename failed, perhaps because mv can't rename something else
-      # to itself, or perhaps because mv is so ancient that it does not
-      # support -f.
-      {
-	# Now remove or move aside any old file at destination location.
-	# We try this two ways since rm can't unlink itself on some
-	# systems and the destination file might be busy for other
-	# reasons.  In this case, the final cleanup might fail but the new
-	# file should still install successfully.
-	{
-	  test ! -f "$dst" ||
-	  $doit $rmcmd -f "$dst" 2>/dev/null ||
-	  { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
-	    { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
-	  } ||
-	  { echo "$0: cannot unlink or rename $dst" >&2
-	    (exit 1); exit 1
-	  }
-	} &&
-
-	# Now rename the file to the real destination.
-	$doit $mvcmd "$dsttmp" "$dst"
-      }
-    fi || exit 1
+    { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } \
+      && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } \
+      && { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } \
+      && { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
+
+    # Now rename the file to the real destination.
+    { $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null \
+      || {
+	   # The rename failed, perhaps because mv can't rename something else
+	   # to itself, or perhaps because mv is so ancient that it does not
+	   # support -f.
+
+	   # Now remove or move aside any old file at destination location.
+	   # We try this two ways since rm can't unlink itself on some
+	   # systems and the destination file might be busy for other
+	   # reasons.  In this case, the final cleanup might fail but the new
+	   # file should still install successfully.
+	   {
+	     if test -f "$dst"; then
+	       $doit $rmcmd -f "$dst" 2>/dev/null \
+	       || { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null \
+		     && { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }; }\
+	       || {
+		 echo "$0: cannot unlink or rename $dst" >&2
+		 (exit 1); exit 1
+	       }
+	     else
+	       :
+	     fi
+	   } &&
+
+	   # Now rename the file to the real destination.
+	   $doit $mvcmd "$dsttmp" "$dst"
+	 }
+    } || exit 1
 
     trap '' 0
   fi
@@ -515,6 +503,5 @@ done
 # eval: (add-hook 'write-file-hooks 'time-stamp)
 # time-stamp-start: "scriptversion="
 # time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
-# time-stamp-end: "; # UTC"
+# time-stamp-end: "$"
 # End:
diff --git a/libgc/ChangeLog b/libgc/ChangeLog
index 0049ba4..de9b317 100644
--- a/libgc/ChangeLog
+++ b/libgc/ChangeLog
@@ -1,3 +1,9 @@
+2011-08-02  Geoff Norton  <grompf at gmail.com>
+
+	[gc] Darwin/AMD64 can have 64-bit thread id's, so we need to
+	ensure we cast properly to make sure the modulus has a valid
+	result. Additionally add support for x86_THREAD_STATE64.
+
 2011-04-29  Geoff Norton  <grompf at sublimeintervention.com>
 
 	[boehm] Avoid a ENOMEM when allocating across an unallocated page
diff --git a/libgc/config.guess b/libgc/config.guess
index 666c5ad..396482d 100755
--- a/libgc/config.guess
+++ b/libgc/config.guess
@@ -1,10 +1,10 @@
 #! /bin/sh
 # Attempt to guess a canonical system name.
 #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
-#   Free Software Foundation, Inc.
+#   2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation,
+#   Inc.
 
-timestamp='2009-11-20'
+timestamp='2006-07-02'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -27,16 +27,16 @@ timestamp='2009-11-20'
 # the same distribution terms that you use for the rest of that program.
 
 
-# Originally written by Per Bothner.  Please send patches (context
-# diff format) to <config-patches at gnu.org> and include a ChangeLog
-# entry.
+# Originally written by Per Bothner <per at bothner.com>.
+# Please send patches to <config-patches at gnu.org>.  Submit a context
+# diff and a properly formatted ChangeLog entry.
 #
 # This script attempts to guess a canonical system name similar to
 # config.sub.  If it succeeds, it prints the system name on stdout, and
 # exits with 0.  Otherwise, it exits with 1.
 #
-# You can get the latest version of this script from:
-# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
+# The plan is that this can be called by configure scripts if you
+# don't specify an explicit build system type.
 
 me=`echo "$0" | sed -e 's,.*/,,'`
 
@@ -56,8 +56,8 @@ version="\
 GNU config.guess ($timestamp)
 
 Originally written by Per Bothner.
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
-2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
+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."
@@ -139,16 +139,6 @@ UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
 UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
 UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
 
-case "${UNAME_MACHINE}" in
-    i?86)
-	test -z "$VENDOR" && VENDOR=pc
-	;;
-    *)
-	test -z "$VENDOR" && VENDOR=unknown
-	;;
-esac
-test -f /etc/SuSE-release -o -f /.buildenv && VENDOR=suse
-
 # Note: order is significant - the case branches are not exclusive.
 
 case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
@@ -171,7 +161,6 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
 	    arm*) machine=arm-unknown ;;
 	    sh3el) machine=shl-unknown ;;
 	    sh3eb) machine=sh-unknown ;;
-	    sh5el) machine=sh5le-unknown ;;
 	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
 	esac
 	# The Operating System including object format, if it has switched
@@ -180,7 +169,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
 	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
 		eval $set_cc_for_build
 		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
-			| grep -q __ELF__
+			| grep __ELF__ >/dev/null
 		then
 		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
 		    # Return netbsd for either.  FIX?
@@ -213,19 +202,19 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
 	exit ;;
     *:OpenBSD:*:*)
 	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
-	echo ${UNAME_MACHINE_ARCH}-${VENDOR}-openbsd${UNAME_RELEASE}
+	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
 	exit ;;
     *:ekkoBSD:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-ekkobsd${UNAME_RELEASE}
+	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
 	exit ;;
     *:SolidBSD:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-solidbsd${UNAME_RELEASE}
+	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
 	exit ;;
     macppc:MirBSD:*:*)
-	echo powerpc-${VENDOR}-mirbsd${UNAME_RELEASE}
+	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
 	exit ;;
     *:MirBSD:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-mirbsd${UNAME_RELEASE}
+	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
 	exit ;;
     alpha:OSF1:*:*)
 	case $UNAME_RELEASE in
@@ -290,13 +279,13 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
 	echo alpha-dec-winnt3.5
 	exit ;;
     Amiga*:UNIX_System_V:4.0:*)
-	echo m68k-${VENDOR}-sysv4
+	echo m68k-unknown-sysv4
 	exit ;;
     *:[Aa]miga[Oo][Ss]:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-amigaos
+	echo ${UNAME_MACHINE}-unknown-amigaos
 	exit ;;
     *:[Mm]orph[Oo][Ss]:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-morphos
+	echo ${UNAME_MACHINE}-unknown-morphos
 	exit ;;
     *:OS/390:*:*)
 	echo i370-ibm-openedition
@@ -311,7 +300,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
 	echo arm-acorn-riscix${UNAME_RELEASE}
 	exit ;;
     arm:riscos:*:*|arm:RISCOS:*:*)
-	echo arm-${VENDOR}-riscos
+	echo arm-unknown-riscos
 	exit ;;
     SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
 	echo hppa1.1-hitachi-hiuxmpp
@@ -334,33 +323,14 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
 	case `/usr/bin/uname -p` in
 	    sparc) echo sparc-icl-nx7; exit ;;
 	esac ;;
-    s390x:SunOS:*:*)
-	echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
     sun4H:SunOS:5.*:*)
 	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
 	exit ;;
     sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
 	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
 	exit ;;
-    i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
-	echo i386-pc-auroraux${UNAME_RELEASE}
-	exit ;;
-    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
-	eval $set_cc_for_build
-	SUN_ARCH="i386"
-	# If there is a compiler, see if it is configured for 64-bit objects.
-	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
-	# This test works for both compilers.
-	if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
-	    if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
-		(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
-		grep IS_64BIT_ARCH >/dev/null
-	    then
-		SUN_ARCH="x86_64"
-	    fi
-	fi
-	echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+    i86pc:SunOS:5.*:*)
+	echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
 	exit ;;
     sun4*:SunOS:6*:*)
 	# According to config.sub, this is the proper way to canonicalize
@@ -419,7 +389,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
         echo m68k-hades-mint${UNAME_RELEASE}
         exit ;;
     *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
-        echo m68k-${VENDOR}-mint${UNAME_RELEASE}
+        echo m68k-unknown-mint${UNAME_RELEASE}
         exit ;;
     m68k:machten:*:*)
 	echo m68k-apple-machten${UNAME_RELEASE}
@@ -561,7 +531,7 @@ EOF
 		echo rs6000-ibm-aix3.2
 	fi
 	exit ;;
-    *:AIX:*:[456])
+    *:AIX:*:[45])
 	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
 	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
 		IBM_ARCH=rs6000
@@ -669,7 +639,7 @@ EOF
 	    # => hppa64-hp-hpux11.23
 
 	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
-		grep -q __LP64__
+		grep __LP64__ >/dev/null
 	    then
 		HP_ARCH="hppa2.0w"
 	    else
@@ -730,9 +700,9 @@ EOF
 	exit ;;
     i*86:OSF1:*:*)
 	if [ -x /usr/sbin/sysversion ] ; then
-	    echo ${UNAME_MACHINE}-${VENDOR}-osf1mk
+	    echo ${UNAME_MACHINE}-unknown-osf1mk
 	else
-	    echo ${UNAME_MACHINE}-${VENDOR}-osf1
+	    echo ${UNAME_MACHINE}-unknown-osf1
 	fi
 	exit ;;
     parisc*:Lites*:*:*)
@@ -792,25 +762,25 @@ EOF
 	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
 	exit ;;
     sparc*:BSD/OS:*:*)
-	echo sparc-${VENDOR}-bsdi${UNAME_RELEASE}
+	echo sparc-unknown-bsdi${UNAME_RELEASE}
 	exit ;;
     *:BSD/OS:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-bsdi${UNAME_RELEASE}
+	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
 	exit ;;
     *:FreeBSD:*:*)
 	case ${UNAME_MACHINE} in
 	    pc98)
-		echo i386-${VENDOR}-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+		echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
 	    amd64)
-		echo x86_64-${VENDOR}-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
 	    *)
-		echo ${UNAME_MACHINE}-${VENDOR}-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+		echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
 	esac
 	exit ;;
     i*:CYGWIN*:*)
 	echo ${UNAME_MACHINE}-pc-cygwin
 	exit ;;
-    *:MINGW*:*)
+    i*:MINGW*:*)
 	echo ${UNAME_MACHINE}-pc-mingw32
 	exit ;;
     i*:windows32*:*)
@@ -820,24 +790,15 @@ EOF
     i*:PW*:*)
 	echo ${UNAME_MACHINE}-pc-pw32
 	exit ;;
-    *:Interix*:*)
-    	case ${UNAME_MACHINE} in
-	    x86)
-		echo i586-pc-interix${UNAME_RELEASE}
-		exit ;;
-	    authenticamd | genuineintel | EM64T)
-		echo x86_64-${VENDOR}-interix${UNAME_RELEASE}
-		exit ;;
-	    IA64)
-		echo ia64-${VENDOR}-interix${UNAME_RELEASE}
-		exit ;;
-	esac ;;
+    x86:Interix*:[3456]*)
+	echo i586-pc-interix${UNAME_RELEASE}
+	exit ;;
+    EM64T:Interix*:[3456]*)
+	echo x86_64-unknown-interix${UNAME_RELEASE}
+	exit ;;
     [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
 	echo i${UNAME_MACHINE}-pc-mks
 	exit ;;
-    8664:Windows_NT:*)
-	echo x86_64-pc-mks
-	exit ;;
     i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
 	# How do we know it's Interix rather than the generic POSIX subsystem?
 	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
@@ -848,51 +809,30 @@ EOF
 	echo ${UNAME_MACHINE}-pc-uwin
 	exit ;;
     amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
-	echo x86_64-${VENDOR}-cygwin
+	echo x86_64-unknown-cygwin
 	exit ;;
     p*:CYGWIN*:*)
-	echo powerpcle-${VENDOR}-cygwin
+	echo powerpcle-unknown-cygwin
 	exit ;;
     prep*:SunOS:5.*:*)
-	echo powerpcle-${VENDOR}-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
 	exit ;;
     *:GNU:*:*)
 	# the GNU system
-	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-${VENDOR}-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
+	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
 	exit ;;
     *:GNU/*:*:*)
 	# other systems with GNU libc and userland
-	echo ${UNAME_MACHINE}-${VENDOR}-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
+	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
 	exit ;;
     i*86:Minix:*:*)
 	echo ${UNAME_MACHINE}-pc-minix
 	exit ;;
-    alpha:Linux:*:*)
-	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
-	  EV5)   UNAME_MACHINE=alphaev5 ;;
-	  EV56)  UNAME_MACHINE=alphaev56 ;;
-	  PCA56) UNAME_MACHINE=alphapca56 ;;
-	  PCA57) UNAME_MACHINE=alphapca56 ;;
-	  EV6)   UNAME_MACHINE=alphaev6 ;;
-	  EV67)  UNAME_MACHINE=alphaev67 ;;
-	  EV68*) UNAME_MACHINE=alphaev68 ;;
-        esac
-	objdump --private-headers /bin/sh | grep -q ld.so.1
-	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
-	echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu${LIBC}
-	exit ;;
     arm*:Linux:*:*)
-	eval $set_cc_for_build
-	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
-	    | grep -q __ARM_EABI__
-	then
-	    echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
-	else
-	    echo ${UNAME_MACHINE}-${VENDOR}-linux-gnueabi
-	fi
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
 	exit ;;
     avr32*:Linux:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
 	exit ;;
     cris:Linux:*:*)
 	echo cris-axis-linux-gnu
@@ -901,91 +841,178 @@ EOF
 	echo crisv32-axis-linux-gnu
 	exit ;;
     frv:Linux:*:*)
-    	echo frv-${VENDOR}-linux-gnu
-	exit ;;
-    i*86:Linux:*:*)
-	LIBC=gnu
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
-	#ifdef __dietlibc__
-	LIBC=dietlibc
-	#endif
-EOF
-	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
-	echo "${UNAME_MACHINE}-${VENDOR}-linux-${LIBC}"
+    	echo frv-unknown-linux-gnu
 	exit ;;
     ia64:Linux:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
 	exit ;;
     m32r*:Linux:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
 	exit ;;
     m68*:Linux:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
 	exit ;;
-    mips:Linux:*:* | mips64:Linux:*:*)
+    mips:Linux:*:*)
+	eval $set_cc_for_build
+	sed 's/^	//' << EOF >$dummy.c
+	#undef CPU
+	#undef mips
+	#undef mipsel
+	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
+	CPU=mipsel
+	#else
+	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
+	CPU=mips
+	#else
+	CPU=
+	#endif
+	#endif
+EOF
+	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
+	    /^CPU/{
+		s: ::g
+		p
+	    }'`"
+	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
+	;;
+    mips64:Linux:*:*)
 	eval $set_cc_for_build
 	sed 's/^	//' << EOF >$dummy.c
 	#undef CPU
-	#undef ${UNAME_MACHINE}
-	#undef ${UNAME_MACHINE}el
+	#undef mips64
+	#undef mips64el
 	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
-	CPU=${UNAME_MACHINE}el
+	CPU=mips64el
 	#else
 	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
-	CPU=${UNAME_MACHINE}
+	CPU=mips64
 	#else
 	CPU=
 	#endif
 	#endif
 EOF
-	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
-	test x"${CPU}" != x && { echo "${CPU}-${VENDOR}-linux-gnu"; exit; }
+	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
+	    /^CPU/{
+		s: ::g
+		p
+	    }'`"
+	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
 	;;
     or32:Linux:*:*)
-	echo or32-${VENDOR}-linux-gnu
+	echo or32-unknown-linux-gnu
 	exit ;;
-    padre:Linux:*:*)
-	echo sparc-${VENDOR}-linux-gnu
+    ppc:Linux:*:*)
+	echo powerpc-unknown-linux-gnu
 	exit ;;
-    parisc64:Linux:*:* | hppa64:Linux:*:*)
-	echo hppa64-${VENDOR}-linux-gnu
+    ppc64:Linux:*:*)
+	echo powerpc64-unknown-linux-gnu
+	exit ;;
+    alpha:Linux:*:*)
+	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
+	  EV5)   UNAME_MACHINE=alphaev5 ;;
+	  EV56)  UNAME_MACHINE=alphaev56 ;;
+	  PCA56) UNAME_MACHINE=alphapca56 ;;
+	  PCA57) UNAME_MACHINE=alphapca56 ;;
+	  EV6)   UNAME_MACHINE=alphaev6 ;;
+	  EV67)  UNAME_MACHINE=alphaev67 ;;
+	  EV68*) UNAME_MACHINE=alphaev68 ;;
+        esac
+	objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
+	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
+	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
 	exit ;;
     parisc:Linux:*:* | hppa:Linux:*:*)
 	# Look for CPU level
 	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
-	  PA7*) echo hppa1.1-${VENDOR}-linux-gnu ;;
-	  PA8*) echo hppa2.0-${VENDOR}-linux-gnu ;;
-	  *)    echo hppa-${VENDOR}-linux-gnu ;;
+	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
+	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
+	  *)    echo hppa-unknown-linux-gnu ;;
 	esac
 	exit ;;
-    ppc64:Linux:*:*)
-	echo powerpc64-${VENDOR}-linux-gnu
-	exit ;;
-    ppc:Linux:*:*)
-	echo powerpc-${VENDOR}-linux-gnu
+    parisc64:Linux:*:* | hppa64:Linux:*:*)
+	echo hppa64-unknown-linux-gnu
 	exit ;;
     s390:Linux:*:* | s390x:Linux:*:*)
 	echo ${UNAME_MACHINE}-ibm-linux
 	exit ;;
     sh64*:Linux:*:*)
-    	echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
+    	echo ${UNAME_MACHINE}-unknown-linux-gnu
 	exit ;;
     sh*:Linux:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
 	exit ;;
     sparc:Linux:*:* | sparc64:Linux:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
 	exit ;;
     vax:Linux:*:*)
 	echo ${UNAME_MACHINE}-dec-linux-gnu
 	exit ;;
     x86_64:Linux:*:*)
-	echo x86_64-${VENDOR}-linux-gnu
-	exit ;;
-    xtensa*:Linux:*:*)
-    	echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
+	echo x86_64-unknown-linux-gnu
 	exit ;;
+    i*86:Linux:*:*)
+	# The BFD linker knows what the default object file format is, so
+	# first see if it will tell us. cd to the root directory to prevent
+	# problems with other programs or directories called `ld' in the path.
+	# Set LC_ALL=C to ensure ld outputs messages in English.
+	ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
+			 | sed -ne '/supported targets:/!d
+				    s/[ 	][ 	]*/ /g
+				    s/.*supported targets: *//
+				    s/ .*//
+				    p'`
+        case "$ld_supported_targets" in
+	  elf32-i386)
+		TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
+		;;
+	  a.out-i386-linux)
+		echo "${UNAME_MACHINE}-pc-linux-gnuaout"
+		exit ;;
+	  coff-i386)
+		echo "${UNAME_MACHINE}-pc-linux-gnucoff"
+		exit ;;
+	  "")
+		# Either a pre-BFD a.out linker (linux-gnuoldld) or
+		# one that does not give us useful --help.
+		echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
+		exit ;;
+	esac
+	# Determine whether the default compiler is a.out or elf
+	eval $set_cc_for_build
+	sed 's/^	//' << EOF >$dummy.c
+	#include <features.h>
+	#ifdef __ELF__
+	# ifdef __GLIBC__
+	#  if __GLIBC__ >= 2
+	LIBC=gnu
+	#  else
+	LIBC=gnulibc1
+	#  endif
+	# else
+	LIBC=gnulibc1
+	# endif
+	#else
+	#if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC)
+	LIBC=gnu
+	#else
+	LIBC=gnuaout
+	#endif
+	#endif
+	#ifdef __dietlibc__
+	LIBC=dietlibc
+	#endif
+EOF
+	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
+	    /^LIBC/{
+		s: ::g
+		p
+	    }'`"
+	test x"${LIBC}" != x && {
+		echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
+		exit
+	}
+	test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; }
+	;;
     i*86:DYNIX/ptx:4*:*)
 	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
 	# earlier versions are messed up and put the nodename in both
@@ -1006,16 +1033,16 @@ EOF
 	echo ${UNAME_MACHINE}-pc-os2-emx
 	exit ;;
     i*86:XTS-300:*:STOP)
-	echo ${UNAME_MACHINE}-${VENDOR}-stop
+	echo ${UNAME_MACHINE}-unknown-stop
 	exit ;;
     i*86:atheos:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-atheos
+	echo ${UNAME_MACHINE}-unknown-atheos
 	exit ;;
     i*86:syllable:*:*)
 	echo ${UNAME_MACHINE}-pc-syllable
 	exit ;;
-    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
-	echo i386-${VENDOR}-lynxos${UNAME_RELEASE}
+    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
+	echo i386-unknown-lynxos${UNAME_RELEASE}
 	exit ;;
     i*86:*DOS:*:*)
 	echo ${UNAME_MACHINE}-pc-msdosdjgpp
@@ -1035,7 +1062,7 @@ EOF
 	    *Pentium)	     UNAME_MACHINE=i586 ;;
 	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
 	esac
-	echo ${UNAME_MACHINE}-${VENDOR}-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
+	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
 	exit ;;
     i*86:*:3.2:*)
 	if test -f /usr/options/cb.name; then
@@ -1058,11 +1085,8 @@ EOF
     pc:*:*:*)
 	# Left here for compatibility:
         # uname -m prints for DJGPP always 'pc', but it prints nothing about
-        # the processor, so we play safe by assuming i586.
-	# Note: whatever this is, it MUST be the same as what config.sub
-	# prints for the "djgpp" host, or else GDB configury will decide that
-	# this is a cross-build.
-	echo i586-pc-msdosdjgpp
+        # the processor, so we play safe by assuming i386.
+	echo i386-pc-msdosdjgpp
         exit ;;
     Intel:Mach:3*:*)
 	echo i386-pc-mach3
@@ -1074,7 +1098,7 @@ EOF
 	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
 	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
 	else # Add other i860-SVR4 vendors below as they are discovered.
-	  echo i860-${VENDOR}-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
+	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
 	fi
 	exit ;;
     mini*:CTIX:SYS*5:*)
@@ -1100,30 +1124,20 @@ EOF
     3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
         /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
           && { echo i486-ncr-sysv4; exit; } ;;
-    NCR*:*:4.2:* | MPRAS*:*:4.2:*)
-	OS_REL='.3'
-	test -r /etc/.relid \
-	    && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
-	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
-	    && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
-	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
-	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
-	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
-	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
     m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
-	echo m68k-${VENDOR}-lynxos${UNAME_RELEASE}
+	echo m68k-unknown-lynxos${UNAME_RELEASE}
 	exit ;;
     mc68030:UNIX_System_V:4.*:*)
 	echo m68k-atari-sysv4
 	exit ;;
     TSUNAMI:LynxOS:2.*:*)
-	echo sparc-${VENDOR}-lynxos${UNAME_RELEASE}
+	echo sparc-unknown-lynxos${UNAME_RELEASE}
 	exit ;;
     rs6000:LynxOS:2.*:*)
-	echo rs6000-${VENDOR}-lynxos${UNAME_RELEASE}
+	echo rs6000-unknown-lynxos${UNAME_RELEASE}
 	exit ;;
-    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
-	echo powerpc-${VENDOR}-lynxos${UNAME_RELEASE}
+    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
+	echo powerpc-unknown-lynxos${UNAME_RELEASE}
 	exit ;;
     SM[BE]S:UNIX_SV:*:*)
 	echo mips-dde-sysv${UNAME_RELEASE}
@@ -1173,7 +1187,7 @@ EOF
 	if [ -d /usr/nec ]; then
 	        echo mips-nec-sysv${UNAME_RELEASE}
 	else
-	        echo mips-${VENDOR}-sysv${UNAME_RELEASE}
+	        echo mips-unknown-sysv${UNAME_RELEASE}
 	fi
         exit ;;
     BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
@@ -1185,9 +1199,6 @@ EOF
     BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
 	echo i586-pc-beos
 	exit ;;
-    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
-	echo i586-pc-haiku
-	exit ;;
     SX-4:SUPER-UX:*:*)
 	echo sx4-nec-superux${UNAME_RELEASE}
 	exit ;;
@@ -1197,15 +1208,6 @@ EOF
     SX-6:SUPER-UX:*:*)
 	echo sx6-nec-superux${UNAME_RELEASE}
 	exit ;;
-    SX-7:SUPER-UX:*:*)
-	echo sx7-nec-superux${UNAME_RELEASE}
-	exit ;;
-    SX-8:SUPER-UX:*:*)
-	echo sx8-nec-superux${UNAME_RELEASE}
-	exit ;;
-    SX-8R:SUPER-UX:*:*)
-	echo sx8r-nec-superux${UNAME_RELEASE}
-	exit ;;
     Power*:Rhapsody:*:*)
 	echo powerpc-apple-rhapsody${UNAME_RELEASE}
 	exit ;;
@@ -1215,16 +1217,6 @@ EOF
     *:Darwin:*:*)
 	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
 	case $UNAME_PROCESSOR in
-	    i386)
-		eval $set_cc_for_build
-		if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
-		  if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
-		      (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
-		      grep IS_64BIT_ARCH >/dev/null
-		  then
-		      UNAME_PROCESSOR="x86_64"
-		  fi
-		fi ;;
 	    unknown) UNAME_PROCESSOR=powerpc ;;
 	esac
 	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
@@ -1264,13 +1256,13 @@ EOF
 	else
 	    UNAME_MACHINE="$cputype"
 	fi
-	echo ${UNAME_MACHINE}-${VENDOR}-plan9
+	echo ${UNAME_MACHINE}-unknown-plan9
 	exit ;;
     *:TOPS-10:*:*)
-	echo pdp10-${VENDOR}-tops10
+	echo pdp10-unknown-tops10
 	exit ;;
     *:TENEX:*:*)
-	echo pdp10-${VENDOR}-tenex
+	echo pdp10-unknown-tenex
 	exit ;;
     KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
 	echo pdp10-dec-tops20
@@ -1279,16 +1271,16 @@ EOF
 	echo pdp10-xkl-tops20
 	exit ;;
     *:TOPS-20:*:*)
-	echo pdp10-${VENDOR}-tops20
+	echo pdp10-unknown-tops20
 	exit ;;
     *:ITS:*:*)
-	echo pdp10-${VENDOR}-its
+	echo pdp10-unknown-its
 	exit ;;
     SEI:*:*:SEIUX)
         echo mips-sei-seiux${UNAME_RELEASE}
 	exit ;;
     *:DragonFly:*:*)
-	echo ${UNAME_MACHINE}-${VENDOR}-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
+	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
 	exit ;;
     *:*VMS:*:*)
     	UNAME_MACHINE=`(uname -p) 2>/dev/null`
@@ -1306,9 +1298,6 @@ EOF
     i*86:rdos:*:*)
 	echo ${UNAME_MACHINE}-pc-rdos
 	exit ;;
-    i*86:AROS:*:*)
-	echo ${UNAME_MACHINE}-pc-aros
-	exit ;;
 esac
 
 #echo '(No uname command or uname output not recognized.)' 1>&2
@@ -1469,9 +1458,9 @@ This script, last modified $timestamp, has failed to recognize
 the operating system you are using. It is advised that you
 download the most up to date version of the config scripts from
 
-  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
+  http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess
 and
-  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
+  http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub
 
 If the version you run ($0) is already up to date, please
 send the following data and any information you think might be
diff --git a/libgc/config.sub b/libgc/config.sub
index 2a55a50..fab0aa3 100755
--- a/libgc/config.sub
+++ b/libgc/config.sub
@@ -1,10 +1,10 @@
 #! /bin/sh
 # Configuration validation subroutine script.
 #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
-#   Free Software Foundation, Inc.
+#   2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation,
+#   Inc.
 
-timestamp='2009-11-20'
+timestamp='2006-09-20'
 
 # This file is (in principle) common to ALL GNU software.
 # The presence of a machine in this file suggests that SOME GNU software
@@ -32,16 +32,13 @@ timestamp='2009-11-20'
 
 
 # Please send patches to <config-patches at gnu.org>.  Submit a context
-# diff and a properly formatted GNU ChangeLog entry.
+# diff and a properly formatted ChangeLog entry.
 #
 # Configuration subroutine to validate and canonicalize a configuration type.
 # Supply the specified configuration type as an argument.
 # If it is invalid, we print an error message on stderr and exit with code 1.
 # Otherwise, we print the canonical config type on stdout and succeed.
 
-# You can get the latest version of this script from:
-# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
-
 # This file is supposed to be the same for all GNU packages
 # and recognize all the CPU types, system types and aliases
 # that are meaningful with *any* GNU software.
@@ -75,8 +72,8 @@ Report bugs and patches to <config-patches at gnu.org>."
 version="\
 GNU config.sub ($timestamp)
 
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
-2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
+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."
@@ -125,7 +122,6 @@ maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
 case $maybe_os in
   nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
   uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
-  kopensolaris*-gnu* | \
   storm-chaos* | os2-emx* | rtmk-nova*)
     os=-$maybe_os
     basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
@@ -152,13 +148,10 @@ case $os in
 	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
 	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
 	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
-	-apple | -axis | -knuth | -cray | -microblaze)
+	-apple | -axis | -knuth | -cray)
 		os=
 		basic_machine=$1
 		;;
-        -bluegene*)
-	        os=-cnk
-		;;
 	-sim | -cisco | -oki | -wec | -winbond)
 		os=
 		basic_machine=$1
@@ -252,20 +245,17 @@ case $basic_machine in
 	| bfin \
 	| c4x | clipper \
 	| d10v | d30v | dlx | dsp16xx \
-	| fido | fr30 | frv \
+	| fr30 | frv \
 	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
 	| i370 | i860 | i960 | ia64 \
 	| ip2k | iq2000 \
-	| lm32 \
 	| m32c | m32r | m32rle | m68000 | m68k | m88k \
-	| maxq | mb | microblaze | mcore | mep | metag \
+	| maxq | mb | microblaze | mcore \
 	| mips | mipsbe | mipseb | mipsel | mipsle \
 	| mips16 \
 	| mips64 | mips64el \
-	| mips64octeon | mips64octeonel \
-	| mips64orion | mips64orionel \
-	| mips64r5900 | mips64r5900el \
 	| mips64vr | mips64vrel \
+	| mips64orion | mips64orionel \
 	| mips64vr4100 | mips64vr4100el \
 	| mips64vr4300 | mips64vr4300el \
 	| mips64vr5000 | mips64vr5000el \
@@ -278,7 +268,6 @@ case $basic_machine in
 	| mipsisa64sr71k | mipsisa64sr71kel \
 	| mipstx39 | mipstx39el \
 	| mn10200 | mn10300 \
-	| moxie \
 	| mt \
 	| msp430 \
 	| nios | nios2 \
@@ -287,22 +276,20 @@ case $basic_machine in
 	| pdp10 | pdp11 | pj | pjl \
 	| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
 	| pyramid \
-	| rx \
 	| score \
-	| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
+	| sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
 	| sh64 | sh64le \
 	| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
 	| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
 	| spu | strongarm \
 	| tahoe | thumb | tic4x | tic80 | tron \
-	| ubicom32 \
 	| v850 | v850e \
 	| we32k \
 	| x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
-	| z8k | z80)
+	| z8k)
 		basic_machine=$basic_machine-unknown
 		;;
-	m6811 | m68hc11 | m6812 | m68hc12 | picochip)
+	m6811 | m68hc11 | m6812 | m68hc12)
 		# Motorola 68HC11/12.
 		basic_machine=$basic_machine-unknown
 		os=-none
@@ -337,22 +324,19 @@ case $basic_machine in
 	| clipper-* | craynv-* | cydra-* \
 	| d10v-* | d30v-* | dlx-* \
 	| elxsi-* \
-	| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
+	| f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
 	| h8300-* | h8500-* \
 	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
 	| i*86-* | i860-* | i960-* | ia64-* \
 	| ip2k-* | iq2000-* \
-	| lm32-* \
 	| m32c-* | m32r-* | m32rle-* \
 	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
-	| m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \
+	| m88110-* | m88k-* | maxq-* | mcore-* \
 	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
 	| mips16-* \
 	| mips64-* | mips64el-* \
-	| mips64octeon-* | mips64octeonel-* \
-	| mips64orion-* | mips64orionel-* \
-	| mips64r5900-* | mips64r5900el-* \
 	| mips64vr-* | mips64vrel-* \
+	| mips64orion-* | mips64orionel-* \
 	| mips64vr4100-* | mips64vr4100el-* \
 	| mips64vr4300-* | mips64vr4300el-* \
 	| mips64vr5000-* | mips64vr5000el-* \
@@ -373,26 +357,21 @@ case $basic_machine in
 	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
 	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
 	| pyramid-* \
-	| romp-* | rs6000-* | rx-* \
-	| sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
+	| romp-* | rs6000-* \
+	| sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
 	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
 	| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
 	| sparclite-* \
 	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
 	| tahoe-* | thumb-* \
-	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \
+	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
 	| tron-* \
-	| ubicom32-* \
 	| v850-* | v850e-* | vax-* \
 	| we32k-* \
 	| x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
-	| xstormy16-* | xtensa*-* \
+	| xstormy16-* | xtensa-* \
 	| ymp-* \
-	| z8k-* | z80-*)
-		;;
-	# Recognize the basic CPU types without company name, with glob match.
-	xtensa*)
-		basic_machine=$basic_machine-unknown
+	| z8k-*)
 		;;
 	# Recognize the various machine names and aliases which stand
 	# for a CPU type and a company and sometimes even an OS.
@@ -456,10 +435,6 @@ case $basic_machine in
 		basic_machine=m68k-apollo
 		os=-bsd
 		;;
-	aros)
-		basic_machine=i386-pc
-		os=-aros
-		;;
 	aux)
 		basic_machine=m68k-apple
 		os=-aux
@@ -468,26 +443,10 @@ case $basic_machine in
 		basic_machine=ns32k-sequent
 		os=-dynix
 		;;
-	blackfin)
-		basic_machine=bfin-unknown
-		os=-linux
-		;;
-	blackfin-*)
-		basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
-		os=-linux
-		;;
-	bluegene*)
-		basic_machine=powerpc-ibm
-		os=-cnk
-		;;
 	c90)
 		basic_machine=c90-cray
 		os=-unicos
 		;;
-        cegcc)
-		basic_machine=arm-unknown
-		os=-cegcc
-		;;
 	convex-c1)
 		basic_machine=c1-convex
 		os=-bsd
@@ -516,8 +475,8 @@ case $basic_machine in
 		basic_machine=craynv-cray
 		os=-unicosmp
 		;;
-	cr16)
-		basic_machine=cr16-unknown
+	cr16c)
+		basic_machine=cr16c-unknown
 		os=-elf
 		;;
 	crds | unos)
@@ -555,10 +514,6 @@ case $basic_machine in
 		basic_machine=m88k-motorola
 		os=-sysv3
 		;;
-	dicos)
-		basic_machine=i686-pc
-		os=-dicos
-		;;
 	djgpp)
 		basic_machine=i586-pc
 		os=-msdosdjgpp
@@ -713,14 +668,6 @@ case $basic_machine in
 		basic_machine=m68k-isi
 		os=-sysv
 		;;
-	m68knommu)
-		basic_machine=m68k-unknown
-		os=-linux
-		;;
-	m68knommu-*)
-		basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
-		os=-linux
-		;;
 	m88k-omron*)
 		basic_machine=m88k-omron
 		;;
@@ -732,17 +679,10 @@ case $basic_machine in
 		basic_machine=ns32k-utek
 		os=-sysv
 		;;
-        microblaze)
-		basic_machine=microblaze-xilinx
-		;;
 	mingw32)
 		basic_machine=i386-pc
 		os=-mingw32
 		;;
-	mingw32ce)
-		basic_machine=arm-unknown
-		os=-mingw32ce
-		;;
 	miniframe)
 		basic_machine=m68000-convergent
 		;;
@@ -869,14 +809,6 @@ case $basic_machine in
 		basic_machine=i860-intel
 		os=-osf
 		;;
-	parisc)
-		basic_machine=hppa-unknown
-		os=-linux
-		;;
-	parisc-*)
-		basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
-		os=-linux
-		;;
 	pbd)
 		basic_machine=sparc-tti
 		;;
@@ -993,9 +925,6 @@ case $basic_machine in
 		basic_machine=sh-hitachi
 		os=-hms
 		;;
-	sh5el)
-		basic_machine=sh5le-unknown
-		;;
 	sh64)
 		basic_machine=sh64-unknown
 		;;
@@ -1085,10 +1014,6 @@ case $basic_machine in
 		basic_machine=tic6x-unknown
 		os=-coff
 		;;
-	tile*)
-		basic_machine=tile-unknown
-		os=-linux-gnu
-		;;
 	tx39)
 		basic_machine=mipstx39-unknown
 		;;
@@ -1164,10 +1089,6 @@ case $basic_machine in
 		basic_machine=z8k-unknown
 		os=-sim
 		;;
-	z80-*-coff)
-		basic_machine=z80-unknown
-		os=-sim
-		;;
 	none)
 		basic_machine=none-none
 		os=-none
@@ -1206,7 +1127,7 @@ case $basic_machine in
 	we32k)
 		basic_machine=we32k-att
 		;;
-	sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
+	sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele)
 		basic_machine=sh-unknown
 		;;
 	sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
@@ -1256,9 +1177,6 @@ case $os in
         # First match some system type aliases
         # that might get confused with valid system types.
 	# -solaris* is a basic system type, with this one exception.
-        -auroraux)
-	        os=-auroraux
-		;;
 	-solaris1 | -solaris1.*)
 		os=`echo $os | sed -e 's|solaris1|sunos4|'`
 		;;
@@ -1279,11 +1197,10 @@ case $os in
 	# Each alternative MUST END IN A *, to match a version number.
 	# -sysv* is not here because it comes later, after sysvr4.
 	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
-	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
-	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
-	      | -sym* | -kopensolaris* \
+	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
+	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
 	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
-	      | -aos* | -aros* \
+	      | -aos* \
 	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
 	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
 	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
@@ -1292,7 +1209,7 @@ case $os in
 	      | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
 	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
 	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
-	      | -chorusos* | -chorusrdb* | -cegcc* \
+	      | -chorusos* | -chorusrdb* \
 	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
 	      | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
 	      | -uxpv* | -beos* | -mpeix* | -udk* \
@@ -1302,7 +1219,7 @@ case $os in
 	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
 	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
 	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
-	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
+	      | -skyos* | -haiku* | -rdos* | -toppers*)
 	# Remember, each alternative MUST END IN *, to match a version number.
 		;;
 	-qnx*)
@@ -1432,9 +1349,6 @@ case $os in
 	-zvmoe)
 		os=-zvmoe
 		;;
-	-dicos*)
-		os=-dicos
-		;;
 	-none)
 		;;
 	*)
@@ -1500,9 +1414,6 @@ case $basic_machine in
 	m68*-cisco)
 		os=-aout
 		;;
-        mep-*)
-		os=-elf
-		;;
 	mips*-cisco)
 		os=-elf
 		;;
@@ -1632,7 +1543,7 @@ case $basic_machine in
 			-sunos*)
 				vendor=sun
 				;;
-			-cnk*|-aix*)
+			-aix*)
 				vendor=ibm
 				;;
 			-beos*)
diff --git a/libgc/include/private/gc_priv.h b/libgc/include/private/gc_priv.h
index 5c4c514..9e19551 100644
--- a/libgc/include/private/gc_priv.h
+++ b/libgc/include/private/gc_priv.h
@@ -371,6 +371,8 @@ void GC_print_callers GC_PROTO((struct callinfo info[NFRAMES]));
 #		define GC_MACH_THREAD_STATE_FLAVOR PPC_THREAD_STATE
 #	elif defined(I386)
 #		define GC_MACH_THREAD_STATE_FLAVOR i386_THREAD_STATE
+#	elif defined(X86_64)
+#		define GC_MACH_THREAD_STATE_FLAVOR x86_THREAD_STATE64
 #	else
 #		define GC_MACH_THREAD_STATE_FLAVOR MACHINE_THREAD_STATE
 #	endif
diff --git a/libgc/pthread_support.c b/libgc/pthread_support.c
index 3e588ac..96e8a01 100644
--- a/libgc/pthread_support.c
+++ b/libgc/pthread_support.c
@@ -729,7 +729,7 @@ void nacl_shutdown_gc_thread()
 /* Caller holds allocation lock.					*/
 GC_thread GC_new_thread(pthread_t id)
 {
-    int hv = ((word)id) % THREAD_TABLE_SZ;
+    int hv = ((unsigned long)id) % THREAD_TABLE_SZ;
     GC_thread result;
     static GC_bool first_thread_used = FALSE;
     
@@ -760,7 +760,7 @@ GC_thread GC_new_thread(pthread_t id)
 /* Caller holds allocation lock.				*/
 void GC_delete_thread(pthread_t id)
 {
-    int hv = ((word)id) % THREAD_TABLE_SZ;
+    int hv = ((unsigned long)id) % THREAD_TABLE_SZ;
     register GC_thread p = GC_threads[hv];
     register GC_thread prev = 0;
     
@@ -796,7 +796,7 @@ void GC_delete_thread(pthread_t id)
 /* This is OK, but we need a way to delete a specific one.	*/
 void GC_delete_gc_thread(pthread_t id, GC_thread gc_id)
 {
-    int hv = ((word)id) % THREAD_TABLE_SZ;
+    int hv = ((unsigned long)id) % THREAD_TABLE_SZ;
     register GC_thread p = GC_threads[hv];
     register GC_thread prev = 0;
 
@@ -825,7 +825,7 @@ void GC_delete_gc_thread(pthread_t id, GC_thread gc_id)
 /* return the most recent one.					*/
 GC_thread GC_lookup_thread(pthread_t id)
 {
-    int hv = ((word)id) % THREAD_TABLE_SZ;
+    int hv = ((unsigned long)id) % THREAD_TABLE_SZ;
     register GC_thread p = GC_threads[hv];
     
     while (p != 0 && !pthread_equal(p -> id, id)) p = p -> next;
diff --git a/mcs/build/common/Consts.cs b/mcs/build/common/Consts.cs
index 1331370..5ca4b8b 100644
--- a/mcs/build/common/Consts.cs
+++ b/mcs/build/common/Consts.cs
@@ -34,7 +34,7 @@ static class Consts
 	// Use these assembly version constants to make code more maintainable.
 	//
 
-	public const string MonoVersion = "2.10.3.0";
+	public const string MonoVersion = "2.10.2.0";
 	public const string MonoCompany = "MONO development team";
 	public const string MonoProduct = "MONO Common language infrastructure";
 	public const string MonoCopyright = "(c) various MONO Authors";
diff --git a/mcs/class/System.IdentityModel/System.IdentityModel.Tokens/ChangeLog b/mcs/class/System.IdentityModel/System.IdentityModel.Tokens/ChangeLog
old mode 100755
new mode 100644
index 8838333..1d8b766
--- a/mcs/class/System.IdentityModel/System.IdentityModel.Tokens/ChangeLog
+++ b/mcs/class/System.IdentityModel/System.IdentityModel.Tokens/ChangeLog
@@ -1,3 +1,9 @@
+2011-08-02  Atsushi Eno  <atsushieno at gmail.com>
+
+	Merge pull request #143 from mistoll/master
+
+	Fixes for WCF BasicHttpBinding with message security
+
 2010-07-26  Atsushi Enomoto  <atsushi at ximian.com>
 
 	* SamlSubject.cs : add missing .ctor().
diff --git a/mcs/class/System.IdentityModel/System.IdentityModel.Tokens/ChangeLog b/mcs/class/System.IdentityModel/System.IdentityModel.Tokens/ChangeLog.old
similarity index 100%
copy from mcs/class/System.IdentityModel/System.IdentityModel.Tokens/ChangeLog
copy to mcs/class/System.IdentityModel/System.IdentityModel.Tokens/ChangeLog.old
diff --git a/mcs/class/System.IdentityModel/System.IdentityModel.Tokens/X509IssuerSerialKeyIdentifierClause.cs b/mcs/class/System.IdentityModel/System.IdentityModel.Tokens/X509IssuerSerialKeyIdentifierClause.cs
index 2ac8a09..f95ec9b 100644
--- a/mcs/class/System.IdentityModel/System.IdentityModel.Tokens/X509IssuerSerialKeyIdentifierClause.cs
+++ b/mcs/class/System.IdentityModel/System.IdentityModel.Tokens/X509IssuerSerialKeyIdentifierClause.cs
@@ -54,9 +54,24 @@ namespace System.IdentityModel.Tokens
 #if TARGET_DOTNET
 			throw new NotImplementedException ();
 #else			
-			return new BigInteger (FromBinHex (hexString)).ToString ();
+            // http://tools.ietf.org/html/rfc5280#section-4.1.2.2
+            // We SHOULD support negative numbers
+            var bytes = FromBinHex (hexString);
+			
+            var negative = bytes.Length > 0 && bytes [0] >= 0x80;
+            if (negative) {
+                for (int i = 0; i < bytes.Length; i++)
+                    bytes [i] = (byte) ~ bytes [i];
+            }
+        	
+			var big = new BigInteger (bytes);
+			if (negative) { 
+				big = big + 1;
+				return "-" + big.ToString ();
+			} else 
+				return big.ToString ();
 #endif
-		}
+        }
 
 		public X509IssuerSerialKeyIdentifierClause (X509Certificate2 certificate)
 			: base (null)
diff --git a/mcs/class/System.IdentityModel/Test/System.IdentityModel.Tokens/ChangeLog b/mcs/class/System.IdentityModel/Test/System.IdentityModel.Tokens/ChangeLog
old mode 100755
new mode 100644
index a05c357..ea9d8f7
--- a/mcs/class/System.IdentityModel/Test/System.IdentityModel.Tokens/ChangeLog
+++ b/mcs/class/System.IdentityModel/Test/System.IdentityModel.Tokens/ChangeLog
@@ -1,3 +1,9 @@
+2011-08-02  Atsushi Eno  <atsushieno at gmail.com>
+
+	Merge pull request #143 from mistoll/master
+
+	Fixes for WCF BasicHttpBinding with message security
+
 2007-02-21  Atsushi Enomoto  <atsushi at ximian.com>
 
 	* InMemorySymmetricSecurityKeyTest.cs :
diff --git a/mcs/class/System.IdentityModel/Test/System.IdentityModel.Tokens/ChangeLog b/mcs/class/System.IdentityModel/Test/System.IdentityModel.Tokens/ChangeLog.old
similarity index 100%
copy from mcs/class/System.IdentityModel/Test/System.IdentityModel.Tokens/ChangeLog
copy to mcs/class/System.IdentityModel/Test/System.IdentityModel.Tokens/ChangeLog.old
diff --git a/mcs/class/System.IdentityModel/Test/System.IdentityModel.Tokens/X509IssuerSerialKeyIdentifierClauseTest.cs b/mcs/class/System.IdentityModel/Test/System.IdentityModel.Tokens/X509IssuerSerialKeyIdentifierClauseTest.cs
index 97157e9..8040785 100644
--- a/mcs/class/System.IdentityModel/Test/System.IdentityModel.Tokens/X509IssuerSerialKeyIdentifierClauseTest.cs
+++ b/mcs/class/System.IdentityModel/Test/System.IdentityModel.Tokens/X509IssuerSerialKeyIdentifierClauseTest.cs
@@ -40,6 +40,7 @@ namespace MonoTests.System.IdentityModel.Selectors
 	{
 		static readonly X509Certificate2 cert = new X509Certificate2 ("Test/Resources/test.pfx", "mono");
 		static readonly X509Certificate2 cert2 = new X509Certificate2 ("Test/Resources/test2.pfx", "mono");
+        static readonly X509Certificate2 cert3 = new X509Certificate2("Test/Resources/test_neg_serial.cer");
 
 		[Test]
 		public void Properties ()
@@ -50,5 +51,14 @@ namespace MonoTests.System.IdentityModel.Selectors
 			Assert.AreEqual ("22491767666218099257720700881460366085", ic.IssuerSerialNumber, "#2");
 			Assert.AreEqual (null, ic.ClauseType, "#3");
 		}
+
+        [Test]
+        public void NegativeSerialNumber ()
+        {
+            var clause = new X509IssuerSerialKeyIdentifierClause (cert3);
+            Assert.AreEqual ("CN=test, OU=cert, O=test, E=test at test.com", clause.IssuerName, "#1");
+            Assert.AreEqual ("-168428216848510272180165529369113665228", clause.IssuerSerialNumber, "#2");
+            Assert.AreEqual (null, clause.ClauseType, "#3");
+        }
 	}
 }
diff --git a/mcs/class/System.ServiceModel/ChangeLog b/mcs/class/System.ServiceModel/ChangeLog
index 224e1e9..033b644 100644
--- a/mcs/class/System.ServiceModel/ChangeLog
+++ b/mcs/class/System.ServiceModel/ChangeLog
@@ -1,3 +1,12 @@
+2011-08-02  Atsushi Eno  <atsushi at ximian.com>
+
+	part of fix bug #41. MessageParameterAttribute is considered for
+	return value.
+
+	Conflicts:
+
+	mcs/class/System.ServiceModel/System.ServiceModel.Description/MessagePartDescription.cs
+
 2011-07-19  Atsushi Eno  <atsushieno at veritas-vos-liberabit.com>
 
 	support action parameter in SOAP 1.2 content type. Close pull
diff --git a/mcs/class/System.ServiceModel/System.ServiceModel.Channels.Security/ChangeLog b/mcs/class/System.ServiceModel/System.ServiceModel.Channels.Security/ChangeLog
index 9388d84..975a34e 100644
--- a/mcs/class/System.ServiceModel/System.ServiceModel.Channels.Security/ChangeLog
+++ b/mcs/class/System.ServiceModel/System.ServiceModel.Channels.Security/ChangeLog
@@ -1,3 +1,9 @@
+2011-08-02  Atsushi Eno  <atsushieno at gmail.com>
+
+	Merge pull request #143 from mistoll/master
+
+	Fixes for WCF BasicHttpBinding with message security
+
 2010-10-15  Atsushi Eno  <atsushi at ximian.com>
 
 	The previous changes somehow regressed on olive samples, so give
diff --git a/mcs/class/System.ServiceModel/System.ServiceModel.Channels.Security/SecureMessageDecryptor.cs b/mcs/class/System.ServiceModel/System.ServiceModel.Channels.Security/SecureMessageDecryptor.cs
index 6c8b3f8..81b49d8 100644
--- a/mcs/class/System.ServiceModel/System.ServiceModel.Channels.Security/SecureMessageDecryptor.cs
+++ b/mcs/class/System.ServiceModel/System.ServiceModel.Channels.Security/SecureMessageDecryptor.cs
@@ -132,7 +132,7 @@ namespace System.ServiceModel.Channels.Security
 
 			// FIXME: use proper max buffer
 			buf = source.CreateBufferedCopy (int.MaxValue);
-Console.WriteLine ("####### " + buf.CreateMessage ());
+			//Console.WriteLine ("####### " + buf.CreateMessage ());
 
 			doc = new XmlDocument ();
 			doc.PreserveWhitespace = true;
@@ -162,10 +162,7 @@ Console.WriteLine ("####### " + buf.CreateMessage ());
 			if (srcmsg.Version.Envelope == EnvelopeVersion.None)
 				throw new ArgumentException ("The message to decrypt is not an expected SOAP envelope.");
 
-			string action = GetAction ();
-			if (action == null)
-				throw new ArgumentException ("SOAP action could not be retrieved from the message to decrypt.");
-
+			
 			XPathNavigator nav = doc.CreateNavigator ();
 			using (XmlWriter writer = nav.AppendChild ()) {
 				buf.CreateMessage ().WriteMessage (writer);
@@ -348,6 +345,9 @@ doc.PreserveWhitespace = true;
 			// and check if any of them can validate it.
 			SupportingTokenParameters supp;
 			string action = GetAction ();
+            if (action == null)
+                throw new ArgumentException ("SOAP action could not be retrieved from the message to decrypt.");
+
 			ValidateTokensByParameters (security.Element.EndpointSupportingTokenParameters, tokens, false);
 			if (security.Element.OperationSupportingTokenParameters.TryGetValue (action, out supp))
 				ValidateTokensByParameters (supp, tokens, false);
@@ -441,7 +441,7 @@ doc.PreserveWhitespace = true;
 			string ret = source_message.Headers.Action;
 			if (ret == null) {
 				HttpRequestMessageProperty reqprop =
-					source_message.Properties ["Action"] as HttpRequestMessageProperty;
+                    source_message.Properties[HttpRequestMessageProperty.Name] as HttpRequestMessageProperty;
 				if (reqprop != null)
 					ret = reqprop.Headers ["Action"];
 			}
diff --git a/mcs/class/System.ServiceModel/System.ServiceModel.Channels.Security/SecureMessageGenerator.cs b/mcs/class/System.ServiceModel/System.ServiceModel.Channels.Security/SecureMessageGenerator.cs
index 4593992..4080a60 100644
--- a/mcs/class/System.ServiceModel/System.ServiceModel.Channels.Security/SecureMessageGenerator.cs
+++ b/mcs/class/System.ServiceModel/System.ServiceModel.Channels.Security/SecureMessageGenerator.cs
@@ -233,8 +233,6 @@ namespace System.ServiceModel.Channels.Security
 				security.SigningToken;
 			MessageProtectionOrder protectionOrder =
 				security.MessageProtectionOrder;
-			SecurityTokenSerializer serializer =
-				security.TokenSerializer;
 			SecurityBindingElement element =
 				security.Element;
 			SecurityAlgorithmSuite suite = element.DefaultAlgorithmSuite;
@@ -243,26 +241,19 @@ namespace System.ServiceModel.Channels.Security
 			int identForMessageId = 1;
 			XmlDocument doc = new XmlDocument ();
 			doc.PreserveWhitespace = true;
+            var action = msg.Headers.Action;
 
-			// FIXME: get correct ReplyTo value
-			if (Direction == MessageDirection.Input)
-				msg.Headers.ReplyTo = new EndpointAddress (Constants.WsaAnonymousUri);
-
-			if (MessageTo != null)
-				msg.Headers.To = MessageTo.Uri;
-
+			if (msg.Version.Addressing != AddressingVersion.None) {
+                AddAddressingToHeader (msg.Headers);
+			}
+				
 			// wss:Security
 			WSSecurityMessageHeader header =
-				new WSSecurityMessageHeader (serializer);
+                new WSSecurityMessageHeader (security.TokenSerializer);
 			msg.Headers.Add (header);
 			// 1. [Timestamp]
 			if (element.IncludeTimestamp) {
-				WsuTimestamp timestamp = new WsuTimestamp ();
-				timestamp.Id = messageId + "-" + identForMessageId++;
-				timestamp.Created = DateTime.Now;
-				// FIXME: on service side, use element.LocalServiceSettings.TimestampValidityDuration
-				timestamp.Expires = timestamp.Created.Add (element.LocalClientSettings.TimestampValidityDuration);
-				header.AddContent (timestamp);
+                AddTimestampToHeader (header, messageId + "-" + identForMessageId++);
 			}
 
 			XmlNamespaceManager nsmgr = new XmlNamespaceManager (doc.NameTable);
@@ -272,13 +263,10 @@ namespace System.ServiceModel.Channels.Security
 			nsmgr.AddNamespace ("o11", Constants.Wss11Namespace);
 
 			/*WrappedKey*/SecurityToken primaryToken = null;
-			DerivedKeySecurityToken dkeyToken = null;
 			SecurityToken actualToken = null;
 			SecurityKeyIdentifierClause actualClause = null;
-			Signature sig = null;
 
-			List<DerivedKeySecurityToken> derivedKeys =
-				new List<DerivedKeySecurityToken> ();
+			
 
 			SymmetricAlgorithm masterKey = new RijndaelManaged ();
 			masterKey.KeySize = suite.DefaultSymmetricKeyLength;
@@ -303,7 +291,6 @@ namespace System.ServiceModel.Channels.Security
 			SecurityKeyIdentifierClause encClause = ShouldOutputEncryptedKey ?
 				CounterParameters.CallCreateKeyIdentifierClause (encToken, !ShouldOutputEncryptedKey ? SecurityTokenReferenceStyle.Internal : includeEncToken ? Parameters.ReferenceStyle : SecurityTokenReferenceStyle.External) : null;
 
-			MessagePartSpecification sigSpec = SignaturePart;
 			MessagePartSpecification encSpec = EncryptionPart;
 
 			// encryption key (possibly also used for signing)
@@ -341,27 +328,11 @@ else
 
 			// generate derived key if needed
 			if (CounterParameters.RequireDerivedKeys) {
-				RijndaelManaged deriv = new RijndaelManaged ();
-				deriv.KeySize = suite.DefaultEncryptionKeyDerivationLength;
-				deriv.Mode = CipherMode.CBC;
-				deriv.Padding = PaddingMode.ISO10126;
-				deriv.GenerateKey ();
-				dkeyToken = new DerivedKeySecurityToken (
-					GenerateId (doc),
-					null, // algorithm
-					actualClause,
-					new InMemorySymmetricSecurityKey (actualKey.Key),
-					null, // name
-					null, // generation
-					null, // offset
-					deriv.Key.Length,
-					null, // label
-					deriv.Key);
-				derivedKeys.Add (dkeyToken);
-				actualToken = dkeyToken;
-				actualKey.Key = ((SymmetricSecurityKey) dkeyToken.SecurityKeys [0]).GetSymmetricKey ();
-				actualClause = new LocalIdKeyIdentifierClause (dkeyToken.Id);
-				header.AddContent (dkeyToken);
+                var dkeyToken = CreateDerivedKey (GenerateId (doc), actualClause, actualKey);
+                actualToken = dkeyToken;
+                actualKey.Key = ((SymmetricSecurityKey)dkeyToken.SecurityKeys [0]).GetSymmetricKey ();
+                actualClause = new LocalIdKeyIdentifierClause (dkeyToken.Id);
+                header.AddContent (dkeyToken);
 			}
 
 			ReferenceList refList = new ReferenceList ();
@@ -397,7 +368,6 @@ else
 
 			XmlElement body = doc.SelectSingleNode ("/s:Envelope/s:Body/*", nsmgr) as XmlElement;
 			string bodyId = null;
-			XmlElement secElem = null;
 			Collection<WSSignedXml> endorsedSignatures =
 				new Collection<WSSignedXml> ();
 			bool signatureProtection = (protectionOrder == MessageProtectionOrder.SignBeforeEncryptAndEncryptSignature);
@@ -413,110 +383,29 @@ else
 			case MessageProtectionOrder.SignBeforeEncrypt:
 			case MessageProtectionOrder.SignBeforeEncryptAndEncryptSignature:
 
-				// sign
-				// see clause 8 of WS-SecurityPolicy C.2.2
-				WSSignedXml sxml = new WSSignedXml (doc);
-				SecurityTokenReferenceKeyInfo sigKeyInfo;
-
-				sig = sxml.Signature;
-				sig.SignedInfo.CanonicalizationMethod =
-					suite.DefaultCanonicalizationAlgorithm;
-				foreach (XmlElement elem in doc.SelectNodes ("/s:Envelope/s:Header/o:Security/u:Timestamp", nsmgr))
-					CreateReference (sig, elem, elem.GetAttribute ("Id", Constants.WsuNamespace));
-				foreach (XmlElement elem in doc.SelectNodes ("/s:Envelope/s:Header/o:Security/o11:SignatureConfirmation", nsmgr))
-					CreateReference (sig, elem, elem.GetAttribute ("Id", Constants.WsuNamespace));
-				foreach (SupportingTokenInfo tinfo in tokenInfos)
-					if (tinfo.Mode != SecurityTokenAttachmentMode.Endorsing) {
-						XmlElement el = sxml.GetIdElement (doc, tinfo.Token.Id);
-						CreateReference (sig, el, el.GetAttribute ("Id", Constants.WsuNamespace));
-					}
-				XmlNodeList nodes = doc.SelectNodes ("/s:Envelope/s:Header/*", nsmgr);
-				for (int i = 0; i < msg.Headers.Count; i++) {
-					MessageHeaderInfo h = msg.Headers [i];
-					if (h.Name == "Security" && h.Namespace == Constants.WssNamespace)
-						secElem = nodes [i] as XmlElement;
-					else if (sigSpec.HeaderTypes.Count == 0 ||
-					    sigSpec.HeaderTypes.Contains (new XmlQualifiedName (h.Name, h.Namespace))) {
-						string id = GenerateId (doc);
-						h.Id = id;
-						CreateReference (sig, nodes [i] as XmlElement, id);
-					}
-				}
-				if (sigSpec.IsBodyIncluded) {
-					bodyId = GenerateId (doc);
-					CreateReference (sig, body.ParentNode as XmlElement, bodyId);
-				}
-
-				if (security.DefaultSignatureAlgorithm == SignedXml.XmlDsigHMACSHA1Url) {
-					// FIXME: use appropriate hash algorithm
-					sxml.ComputeSignature (new HMACSHA1 (actualKey.Key));
-					sigKeyInfo = new SecurityTokenReferenceKeyInfo (actualClause, serializer, doc);
-				}
-				else {
-					SecurityKeyIdentifierClause signClause =
-						CounterParameters.CallCreateKeyIdentifierClause (signToken, includeSigToken ? CounterParameters.ReferenceStyle : SecurityTokenReferenceStyle.External);
-					AsymmetricSecurityKey signKey = (AsymmetricSecurityKey) signToken.ResolveKeyIdentifierClause (signClause);
-					sxml.SigningKey = signKey.GetAsymmetricAlgorithm (security.DefaultSignatureAlgorithm, true);
-					sxml.ComputeSignature ();
-					sigKeyInfo = new SecurityTokenReferenceKeyInfo (signClause, serializer, doc);
-				}
-
-				sxml.KeyInfo = new KeyInfo ();
-				sxml.KeyInfo.AddClause (sigKeyInfo);
-
-				if (!signatureProtection)
-					header.AddContent (sig);
-
-				// endorse the signature with (signed)endorsing
-				// supporting tokens.
-
-				foreach (SupportingTokenInfo tinfo in tokenInfos) {
-					switch (tinfo.Mode) {
-					case SecurityTokenAttachmentMode.Endorsing:
-					case SecurityTokenAttachmentMode.SignedEndorsing:
-						if (sxml.Signature.Id == null) {
-							sig.Id = GenerateId (doc);
-							secElem.AppendChild (sxml.GetXml ());
-						}
-						WSSignedXml ssxml = new WSSignedXml (doc);
-						ssxml.Signature.SignedInfo.CanonicalizationMethod = suite.DefaultCanonicalizationAlgorithm;
-						CreateReference (ssxml.Signature, doc, sig.Id);
-						SecurityToken sst = tinfo.Token;
-						SecurityKey ssk = sst.SecurityKeys [0]; // FIXME: could be different?
-						SecurityKeyIdentifierClause tclause = new LocalIdKeyIdentifierClause (sst.Id); // FIXME: could be different?
-						if (ssk is SymmetricSecurityKey) {
-							SymmetricSecurityKey signKey = (SymmetricSecurityKey) ssk;
-							ssxml.ComputeSignature (signKey.GetKeyedHashAlgorithm (suite.DefaultSymmetricSignatureAlgorithm));
-						} else {
-							AsymmetricSecurityKey signKey = (AsymmetricSecurityKey) ssk;
-							ssxml.SigningKey = signKey.GetAsymmetricAlgorithm (suite.DefaultAsymmetricSignatureAlgorithm, true);
-							ssxml.ComputeSignature ();
-						}
-						ssxml.KeyInfo.AddClause (new SecurityTokenReferenceKeyInfo (tclause, serializer, doc));
-						if (!signatureProtection)
-							header.AddContent (ssxml.Signature);
-						endorsedSignatures.Add (ssxml);
-
-						break;
-					}
-				}
+               
+                var sig = CreateSignature (doc, body, nsmgr, tokenInfos, 
+                    actualClause, actualKey, signToken, includeSigToken, 
+                    signatureProtection, header, endorsedSignatures, 
+                    ref bodyId);
 
+				
 				// encrypt
 
 				WSEncryptedXml exml = new WSEncryptedXml (doc);
 
-				EncryptedData edata = Encrypt (body, actualKey, actualToken.Id, refList, actualClause, exml, doc);
+				EncryptedData edata = Encrypt (body, actualKey, actualToken.Id, refList, actualClause, exml, doc, EncryptedXml.XmlEncElementContentUrl);
 				EncryptedXml.ReplaceElement (body, edata, false);
 
 				// encrypt signature
 				if (signatureProtection) {
 					XmlElement sigxml = sig.GetXml ();
-					edata = Encrypt (sigxml, actualKey, actualToken.Id, refList, actualClause, exml, doc);
+					edata = Encrypt (sigxml, actualKey, actualToken.Id, refList, actualClause, exml, doc, EncryptedXml.XmlEncElementUrl);
 					header.AddContent (edata);
 
 					foreach (WSSignedXml ssxml in endorsedSignatures) {
 						sigxml = ssxml.GetXml ();
-						edata = Encrypt (sigxml, actualKey, actualToken.Id, refList, actualClause, exml, doc);
+						edata = Encrypt (sigxml, actualKey, actualToken.Id, refList, actualClause, exml, doc, EncryptedXml.XmlEncElementUrl);
 						header.AddContent (edata);
 					}
 
@@ -524,7 +413,7 @@ else
 						Collection<Wss11SignatureConfirmation> confs = header.FindAll<Wss11SignatureConfirmation> ();
 						int count = 0;
 						foreach (XmlElement elem in doc.SelectNodes ("/s:Envelope/s:Header/o:Security/o11:SignatureConfirmation", nsmgr)) {
-							edata = Encrypt (elem, actualKey, confs [count].Id, refList, actualClause, exml, doc);
+							edata = Encrypt (elem, actualKey, confs [count].Id, refList, actualClause, exml, doc, EncryptedXml.XmlEncElementUrl);
 							EncryptedXml.ReplaceElement (elem, edata, false);
 							header.Contents.Insert (header.Contents.IndexOf (confs [count]), edata);
 							header.Contents.Remove (confs [count++]);
@@ -532,11 +421,12 @@ else
 					}
 				}
 
+
 				// encrypt Encrypted supporting tokens
 				foreach (SupportingTokenInfo tinfo in tokenInfos) {
 					if (tinfo.Mode == SecurityTokenAttachmentMode.SignedEncrypted) {
 						XmlElement el = exml.GetIdElement (doc, tinfo.Token.Id);
-						tinfo.Encrypted = Encrypt (el, actualKey, actualToken.Id, refList, actualClause, exml, doc);
+						tinfo.Encrypted = Encrypt (el, actualKey, actualToken.Id, refList, actualClause, exml, doc, EncryptedXml.XmlEncElementUrl);
 						EncryptedXml.ReplaceElement (el, tinfo.Encrypted, false);
 						header.Contents.Insert (header.Contents.IndexOf (tinfo.Token), tinfo.Encrypted);
 						header.Contents.Remove (tinfo.Token);
@@ -545,7 +435,10 @@ else
 				break;
 			}
 
-			Message ret = new WSSecurityMessage (Message.CreateMessage (msg.Version, msg.Headers.Action, new XmlNodeReader (doc.SelectSingleNode ("/s:Envelope/s:Body/*", nsmgr) as XmlElement)), bodyId);
+
+            
+
+			Message ret = new WSSecurityMessage (Message.CreateMessage (msg.Version, action, new XmlNodeReader (doc.SelectSingleNode ("/s:Envelope/s:Body/*", nsmgr) as XmlElement)), bodyId);
 			ret.Properties.Security = (SecurityMessageProperty) secprop.CreateCopy ();
 			ret.Properties.Security.EncryptionKey = masterKey.Key;
 
@@ -559,7 +452,7 @@ else
 
 			ret.Headers.Clear ();
 			ret.Headers.CopyHeadersFrom (msg);
-
+            
 			// Header contents are:
 			//	- Timestamp
 			//	- SignatureConfirmation if required
@@ -589,6 +482,157 @@ else
 			return ret;
 		}
 
+        Signature CreateSignature (XmlDocument doc, XmlElement body, 
+                                           XmlNamespaceManager nsmgr,
+                                           SupportingTokenInfoCollection tokenInfos,
+                                           SecurityKeyIdentifierClause actualClause,
+                                           SymmetricAlgorithm actualKey,
+                                           SecurityToken signToken,
+                                           bool includeSigToken,
+                                           bool signatureProtection,
+                                           WSSecurityMessageHeader header,
+                                           Collection<WSSignedXml> endorsedSignatures,
+                                           ref string bodyId)
+        {
+            // sign
+            // see clause 8 of WS-SecurityPolicy C.2.2
+            WSSignedXml sxml = new WSSignedXml (doc);
+            SecurityTokenReferenceKeyInfo sigKeyInfo;
+            XmlElement secElem = null;
+            var sigSpec = SignaturePart;
+            var serializer = security.TokenSerializer;
+            var suite = security.Element.DefaultAlgorithmSuite;
+
+            var sig = sxml.Signature;
+            sig.SignedInfo.CanonicalizationMethod =
+                suite.DefaultCanonicalizationAlgorithm;
+            foreach (XmlElement elem in doc.SelectNodes ("/s:Envelope/s:Header/o:Security/u:Timestamp", nsmgr))
+                CreateReference(sig, elem, elem.GetAttribute ("Id", Constants.WsuNamespace));
+            foreach (XmlElement elem in doc.SelectNodes ("/s:Envelope/s:Header/o:Security/o11:SignatureConfirmation", nsmgr))
+                CreateReference(sig, elem, elem.GetAttribute ("Id", Constants.WsuNamespace));
+            foreach (SupportingTokenInfo tinfo in tokenInfos)
+                if (tinfo.Mode != SecurityTokenAttachmentMode.Endorsing) {
+                    XmlElement el = sxml.GetIdElement (doc, tinfo.Token.Id);
+                    CreateReference (sig, el, el.GetAttribute ("Id", Constants.WsuNamespace));
+                }
+            XmlNodeList nodes = doc.SelectNodes ("/s:Envelope/s:Header/*", nsmgr);
+            for (int i = 0; i < msg.Headers.Count; i++) {
+                MessageHeaderInfo h = msg.Headers [i];
+                if (h.Name == "Security" && h.Namespace == Constants.WssNamespace)
+                    secElem = nodes [i] as XmlElement;
+                else if ((sigSpec.HeaderTypes.Count == 0 ||
+                    sigSpec.HeaderTypes.Contains (new XmlQualifiedName(h.Name, h.Namespace))) &&
+                    (msg.Version.Addressing != AddressingVersion.None ||
+                    !String.Equals (h.Name, "Action", StringComparison.Ordinal))) {
+                    string id = GenerateId (doc);
+                    h.Id = id;
+                    CreateReference (sig, nodes [i] as XmlElement, id);
+                }
+            }
+            if (sigSpec.IsBodyIncluded) {
+                bodyId = GenerateId (doc);
+                CreateReference (sig, body.ParentNode as XmlElement, bodyId);
+            }
+
+
+            if (security.DefaultSignatureAlgorithm == SignedXml.XmlDsigHMACSHA1Url) {
+                // FIXME: use appropriate hash algorithm
+                sxml.ComputeSignature (new HMACSHA1(actualKey.Key));
+                sigKeyInfo = new SecurityTokenReferenceKeyInfo (actualClause, serializer, doc);
+            } else  {
+                SecurityKeyIdentifierClause signClause =
+                    CounterParameters.CallCreateKeyIdentifierClause (signToken, includeSigToken ? CounterParameters.ReferenceStyle : SecurityTokenReferenceStyle.External);
+                AsymmetricSecurityKey signKey = (AsymmetricSecurityKey)signToken.ResolveKeyIdentifierClause (signClause);
+                sxml.SigningKey = signKey.GetAsymmetricAlgorithm (security.DefaultSignatureAlgorithm, true);
+                sxml.ComputeSignature ();
+                sigKeyInfo = new SecurityTokenReferenceKeyInfo (signClause, serializer, doc);
+            }
+
+            sxml.KeyInfo = new KeyInfo ();
+            sxml.KeyInfo.AddClause (sigKeyInfo);
+
+            if (!signatureProtection)
+                header.AddContent (sig);
+
+            // endorse the signature with (signed)endorsing
+            // supporting tokens.
+
+            foreach (SupportingTokenInfo tinfo in tokenInfos) {
+                switch (tinfo.Mode) {
+                case SecurityTokenAttachmentMode.Endorsing:
+                case SecurityTokenAttachmentMode.SignedEndorsing:
+                    if (sxml.Signature.Id == null) {
+                        sig.Id = GenerateId (doc);
+                        secElem.AppendChild (sxml.GetXml ());
+                    }
+                    WSSignedXml ssxml = new WSSignedXml (doc);
+                    ssxml.Signature.SignedInfo.CanonicalizationMethod = suite.DefaultCanonicalizationAlgorithm;
+                    CreateReference (ssxml.Signature, doc, sig.Id);
+                    SecurityToken sst = tinfo.Token;
+                    SecurityKey ssk = sst.SecurityKeys [0]; // FIXME: could be different?
+                    SecurityKeyIdentifierClause tclause = new LocalIdKeyIdentifierClause (sst.Id); // FIXME: could be different?
+                    if (ssk is SymmetricSecurityKey) {
+                        SymmetricSecurityKey signKey = (SymmetricSecurityKey)ssk;
+                        ssxml.ComputeSignature (signKey.GetKeyedHashAlgorithm(suite.DefaultSymmetricSignatureAlgorithm));
+                    } else {
+                        AsymmetricSecurityKey signKey = (AsymmetricSecurityKey)ssk;
+                        ssxml.SigningKey = signKey.GetAsymmetricAlgorithm (suite.DefaultAsymmetricSignatureAlgorithm, true);
+                        ssxml.ComputeSignature ();
+                    }
+                    ssxml.KeyInfo.AddClause (new SecurityTokenReferenceKeyInfo (tclause, serializer, doc));
+                    if (!signatureProtection)
+                        header.AddContent (ssxml.Signature);
+                    endorsedSignatures.Add (ssxml);
+
+                    break;
+                }
+            }
+            return sig;
+        }
+
+        void AddAddressingToHeader (MessageHeaders headers)
+        {
+            // FIXME: get correct ReplyTo value
+            if (Direction == MessageDirection.Input)
+                headers.ReplyTo = new EndpointAddress (Constants.WsaAnonymousUri);
+
+            if (MessageTo != null)
+                headers.To = MessageTo.Uri;
+        }
+
+        DerivedKeySecurityToken CreateDerivedKey (string id, 
+                                                          SecurityKeyIdentifierClause actualClause, 
+                                                          SymmetricAlgorithm actualKey)
+        {
+            RijndaelManaged deriv = new RijndaelManaged ();
+            deriv.KeySize = security.Element.DefaultAlgorithmSuite.DefaultEncryptionKeyDerivationLength;
+            deriv.Mode = CipherMode.CBC;
+            deriv.Padding = PaddingMode.ISO10126;
+            deriv.GenerateKey ();
+            var dkeyToken = new DerivedKeySecurityToken (
+                id,
+                null, // algorithm
+                actualClause,
+                new InMemorySymmetricSecurityKey (actualKey.Key),
+                null, // name
+                null, // generation
+                null, // offset
+                deriv.Key.Length,
+                null, // label
+                deriv.Key);
+            return dkeyToken;
+        }
+
+        void AddTimestampToHeader (WSSecurityMessageHeader header, string id)
+        {
+            WsuTimestamp timestamp = new WsuTimestamp ();
+            timestamp.Id = id;
+            timestamp.Created = DateTime.Now;
+            // FIXME: on service side, use element.LocalServiceSettings.TimestampValidityDuration
+            timestamp.Expires = timestamp.Created.Add (security.Element.LocalClientSettings.TimestampValidityDuration);
+            header.AddContent (timestamp);
+        }
+
 		void CreateReference (Signature sig, XmlElement el, string id)
 		{
 			CreateReference (sig, el.OwnerDocument, id);
@@ -626,7 +670,7 @@ else
 			throw new Exception (String.Format ("INTERNAL ERROR: Invalid canonicalization URL: {0}", url));
 		}
 
-		EncryptedData Encrypt (XmlElement target, SymmetricAlgorithm actualKey, string ekeyId, ReferenceList refList, SecurityKeyIdentifierClause encClause, EncryptedXml exml, XmlDocument doc)
+		EncryptedData Encrypt (XmlElement target, SymmetricAlgorithm actualKey, string ekeyId, ReferenceList refList, SecurityKeyIdentifierClause encClause, EncryptedXml exml, XmlDocument doc, string elementType)
 		{
 			SecurityAlgorithmSuite suite = security.Element.DefaultAlgorithmSuite;
 			SecurityTokenSerializer serializer = security.TokenSerializer;
@@ -634,7 +678,7 @@ else
 			byte [] encrypted = exml.EncryptData (target, actualKey, false);
 			EncryptedData edata = new EncryptedData ();
 			edata.Id = GenerateId (doc);
-			edata.Type = EncryptedXml.XmlEncElementContentUrl;
+			edata.Type = elementType;
 			edata.EncryptionMethod = new EncryptionMethod (suite.DefaultEncryptionAlgorithm);
 			// FIXME: here wsse:DigestMethod should be embedded 
 			// inside EncryptionMethod. Since it is not possible 
@@ -668,7 +712,7 @@ else
 			string ret = msg.Headers.Action;
 			if (ret == null) {
 				HttpRequestMessageProperty reqprop =
-					msg.Properties ["Action"] as HttpRequestMessageProperty;
+                    msg.Properties[HttpRequestMessageProperty.Name] as HttpRequestMessageProperty;
 				if (reqprop != null)
 					ret = reqprop.Headers ["Action"];
 			}
@@ -716,8 +760,10 @@ else
 		{
 			var dic = Constants.SoapDictionary;
 			writer.WriteStartElement ("s", dic.Add ("Body"), dic.Add (Version.Envelope.Namespace));
-			if (body_id != null)
-				writer.WriteAttributeString ("Id", Constants.WsuNamespace, body_id);
+
+            if (body_id != null)
+				writer.WriteAttributeString ("u", "Id", Constants.WsuNamespace, body_id);
+            
 		}
 
 		protected override void OnWriteBodyContents (XmlDictionaryWriter w)
diff --git a/mcs/class/System.ServiceModel/System.ServiceModel.Channels/ChangeLog b/mcs/class/System.ServiceModel/System.ServiceModel.Channels/ChangeLog
index 63d4650..287c3b3 100644
--- a/mcs/class/System.ServiceModel/System.ServiceModel.Channels/ChangeLog
+++ b/mcs/class/System.ServiceModel/System.ServiceModel.Channels/ChangeLog
@@ -1,3 +1,9 @@
+2011-08-02  Atsushi Eno  <atsushieno at gmail.com>
+
+	Merge pull request #143 from mistoll/master
+
+	Fixes for WCF BasicHttpBinding with message security
+
 2011-07-22  Atsushi Eno  <atsushieno at veritas-vos-liberabit.com>
 
 	Avoid possible duplicate xmlns output. Fixes xsp-based hosting
diff --git a/mcs/class/System.ServiceModel/System.ServiceModel.Channels/SecurityBindingElement.cs b/mcs/class/System.ServiceModel/System.ServiceModel.Channels/SecurityBindingElement.cs
index 9b90339..b82a6f0 100644
--- a/mcs/class/System.ServiceModel/System.ServiceModel.Channels/SecurityBindingElement.cs
+++ b/mcs/class/System.ServiceModel/System.ServiceModel.Channels/SecurityBindingElement.cs
@@ -372,27 +372,59 @@ namespace System.ServiceModel.Channels
 			throw new NotImplementedException ();
 		}
 
-		[MonoTODO]
 		public static SecurityBindingElement 
 			CreateMutualCertificateBindingElement ()
 		{
-			throw new NotImplementedException ();
+			return CreateMutualCertificateBindingElement (MessageSecurityVersion.Default, false);
 		}
 
-		[MonoTODO]
 		public static SecurityBindingElement 
 			CreateMutualCertificateBindingElement (MessageSecurityVersion version)
 		{
-			throw new NotImplementedException ();
+			return CreateMutualCertificateBindingElement (version, false);
 		}
 
-		[MonoTODO]
+		[MonoTODO("Does not support allowSerializedSigningTokenOnReply.")]
 		public static SecurityBindingElement 
 			CreateMutualCertificateBindingElement (
 			MessageSecurityVersion version,
 			bool allowSerializedSigningTokenOnReply)
 		{
-			throw new NotImplementedException ();
+			if (version == null)
+				throw new ArgumentNullException ("version");
+			
+			if (allowSerializedSigningTokenOnReply)
+				throw new NotSupportedException ("allowSerializedSigningTokenOnReply is not supported");
+			
+			if (version.SecurityVersion == SecurityVersion.WSSecurity10) {
+			
+				var recipient = new X509SecurityTokenParameters (
+					X509KeyIdentifierClauseType.Any,	
+				    SecurityTokenInclusionMode.Never);
+				recipient.RequireDerivedKeys = false;
+				
+				var initiator = new X509SecurityTokenParameters (
+				    X509KeyIdentifierClauseType.Any, 
+				    SecurityTokenInclusionMode.AlwaysToRecipient);
+				initiator.RequireDerivedKeys = false;                                          
+				                                                 
+				return new AsymmetricSecurityBindingElement (recipient, initiator) {
+					MessageSecurityVersion = version
+				};
+			} else {
+				X509SecurityTokenParameters p =
+					new X509SecurityTokenParameters (X509KeyIdentifierClauseType.Thumbprint);
+				p.RequireDerivedKeys = false;
+					
+				var sym = new SymmetricSecurityBindingElement () {
+					MessageSecurityVersion = version,
+					RequireSignatureConfirmation = true
+                };
+				
+				sym.EndpointSupportingTokenParameters.Endorsing.Add (p);
+				return sym;
+			}
+			
 		}
 
 		[MonoTODO]
diff --git a/mcs/class/System.ServiceModel/System.ServiceModel.Description/ChangeLog b/mcs/class/System.ServiceModel/System.ServiceModel.Description/ChangeLog
index 1e2c996..be77bbc 100644
--- a/mcs/class/System.ServiceModel/System.ServiceModel.Description/ChangeLog
+++ b/mcs/class/System.ServiceModel/System.ServiceModel.Description/ChangeLog
@@ -1,3 +1,16 @@
+2011-08-03  Atsushi Eno  <atsushieno at veritas-vos-liberabit.com>
+
+	Fix build, merge some missing changes to MessagePartDescription.
+
+2011-08-02  Atsushi Eno  <atsushi at ximian.com>
+
+	part of fix bug #41. MessageParameterAttribute is considered for
+	return value.
+
+	Conflicts:
+
+	mcs/class/System.ServiceModel/System.ServiceModel.Description/MessagePartDescription.cs
+
 2011-07-27  Atsushi Eno  <atsushi at ximian.com>
 
 	Fix wsdl import wrt element qname (!= type name).
diff --git a/mcs/class/System.ServiceModel/System.ServiceModel.Description/ContractDescription.cs b/mcs/class/System.ServiceModel/System.ServiceModel.Description/ContractDescription.cs
index de1aca3..d692721 100644
--- a/mcs/class/System.ServiceModel/System.ServiceModel.Description/ContractDescription.cs
+++ b/mcs/class/System.ServiceModel/System.ServiceModel.Description/ContractDescription.cs
@@ -47,6 +47,13 @@ namespace System.ServiceModel.Description
 				return att;
 			return null;
 		}
+
+		public static T GetCustomAttribute<T> (this ParameterInfo pi, bool inherit) where T : Attribute
+		{
+			foreach (T att in pi.GetCustomAttributes (typeof (T), inherit))
+				return att;
+			return null;
+		}
 	}
 
 	public class ContractDescription
diff --git a/mcs/class/System.ServiceModel/System.ServiceModel.Description/ContractDescriptionGenerator.cs b/mcs/class/System.ServiceModel/System.ServiceModel.Description/ContractDescriptionGenerator.cs
index f053e8b..27874bb 100644
--- a/mcs/class/System.ServiceModel/System.ServiceModel.Description/ContractDescriptionGenerator.cs
+++ b/mcs/class/System.ServiceModel/System.ServiceModel.Description/ContractDescriptionGenerator.cs
@@ -294,8 +294,21 @@ namespace System.ServiceModel.Description
 					od.Behaviors.Add (new DataContractSerializerOperationBehavior (od, dfa));
 
 				od.Messages.Add (GetMessage (od, mi, oca, true, isCallback, null));
-				if (!od.IsOneWay)
-					od.Messages.Add (GetMessage (od, mi, oca, false, isCallback, asyncReturnType));
+				if (!od.IsOneWay) {
+					var md = GetMessage (od, mi, oca, false, isCallback, asyncReturnType);
+					od.Messages.Add (md);
+					var mpa = mi.ReturnParameter.GetCustomAttribute<MessageParameterAttribute> (true);
+					if (mpa != null) {
+						var mpd = md.Body.Parts.FirstOrDefault (pd => pd.Name == mpa.Name);
+						if (mpd != null) {
+							md.Body.Parts.Remove (mpd);
+							md.Body.ReturnValue = mpd;
+							mpd.Name = mpa.Name;
+						}
+						else if (md.Body.ReturnValue == null)
+							throw new InvalidOperationException (String.Format ("Specified message part '{0}' in MessageParameterAttribute on the return value, was not found", mpa.Name));
+					}
+				}
 				var knownTypeAtts =
 						    cd.ContractType.GetCustomAttributes (typeof (ServiceKnownTypeAttribute), false).Union (
 						    mi.GetCustomAttributes (typeof (ServiceKnownTypeAttribute), false)).Union (
diff --git a/mcs/class/System.ServiceModel/System.ServiceModel.Description/MessagePartDescription.cs b/mcs/class/System.ServiceModel/System.ServiceModel.Description/MessagePartDescription.cs
index 1e5ede6..70e427a 100644
--- a/mcs/class/System.ServiceModel/System.ServiceModel.Description/MessagePartDescription.cs
+++ b/mcs/class/System.ServiceModel/System.ServiceModel.Description/MessagePartDescription.cs
@@ -27,6 +27,7 @@
 //
 using System;
 using System.Collections.Generic;
+using System.Diagnostics;
 using System.Net.Security;
 using System.Runtime.Serialization;
 using System.Reflection;
@@ -35,6 +36,7 @@ using System.Xml.Serialization;
 
 namespace System.ServiceModel.Description
 {
+	[DebuggerDisplay ("Name={name}, Namespace={ns}, Type={Type}, Index={index}}")]
 	public class MessagePartDescription
 	{
 		int index;
@@ -50,8 +52,8 @@ namespace System.ServiceModel.Description
 		
 		public MessagePartDescription (string name, string ns)
 		{
-			this.name = name;
 			this.ns = ns;
+			this.Name = name;
 		}
 
 		public int Index {
@@ -66,6 +68,10 @@ namespace System.ServiceModel.Description
 
 		public string Name {
 			get { return name; }
+			internal set {
+				name = value;
+				XmlName = new XmlName (value);
+			}
 		}
 
 		public string Namespace {
@@ -102,6 +108,10 @@ namespace System.ServiceModel.Description
 
 		#region internals required for moonlight compatibility
 
+		internal XmlName XmlName {
+			get; private set;
+		}
+
 		ICustomAttributeProvider additional_att_provider;
 
 		internal ICustomAttributeProvider AdditionalAttributesProvider {
diff --git a/mcs/class/System.ServiceModel/System.ServiceModel.Dispatcher/BaseMessagesFormatter.cs b/mcs/class/System.ServiceModel/System.ServiceModel.Dispatcher/BaseMessagesFormatter.cs
index 01ef6c2..28c4417 100644
--- a/mcs/class/System.ServiceModel/System.ServiceModel.Dispatcher/BaseMessagesFormatter.cs
+++ b/mcs/class/System.ServiceModel/System.ServiceModel.Dispatcher/BaseMessagesFormatter.cs
@@ -300,7 +300,10 @@ namespace System.ServiceModel.Dispatcher
 						((PropertyInfo) mi).SetValue (msgObject, pair.Value, null);
 				}
 
-			foreach (MessagePartDescription partDesc in md.Body.Parts)
+			var l = new List<MessagePartDescription> (md.Body.Parts);
+			if (md.Body.ReturnValue != null)
+				l.Add (md.Body.ReturnValue);
+			foreach (MessagePartDescription partDesc in l)
 				if (partDesc.MemberInfo is FieldInfo)
 					((FieldInfo) partDesc.MemberInfo).SetValue (msgObject, parts [partDesc.Index]);
 				else
@@ -317,7 +320,10 @@ namespace System.ServiceModel.Dispatcher
 					headers [headDesc] = ((PropertyInfo) mi).GetValue (msgObject, null);
 			}
 
-			foreach (MessagePartDescription partDesc in md.Body.Parts)
+			var l = new List<MessagePartDescription> (md.Body.Parts);
+			if (md.Body.ReturnValue != null)
+				l.Add (md.Body.ReturnValue);
+			foreach (MessagePartDescription partDesc in l)
 				if (partDesc.MemberInfo is FieldInfo)
 					parts [partDesc.Index] = ((FieldInfo) partDesc.MemberInfo).GetValue (msgObject);
 				else
diff --git a/mcs/class/System.ServiceModel/System.ServiceModel.Dispatcher/ChangeLog b/mcs/class/System.ServiceModel/System.ServiceModel.Dispatcher/ChangeLog
index d4c10b6..10c6b0e 100644
--- a/mcs/class/System.ServiceModel/System.ServiceModel.Dispatcher/ChangeLog
+++ b/mcs/class/System.ServiceModel/System.ServiceModel.Dispatcher/ChangeLog
@@ -1,3 +1,16 @@
+2011-08-02  Nicolas GRAZIANO  <nicolas.graziano at ineo-gdfsuez.com>
+
+	TypedMessageConverter do not take into account the xml attribute
+	which modify the serialization.
+
+	Correction and Unit Test.
+
+2011-08-02  Atsushi Eno  <atsushi at ximian.com>
+
+	Fill/reflect ReturnValue to and from corresponding message part.
+
+	This may have fixed bug #41.
+
 2011-06-28  Atsushi Eno  <atsushi at ximian.com>
 
 	Implement support for Stream param with WebHttpBinding raw content
diff --git a/mcs/class/System.ServiceModel/System.ServiceModel.Dispatcher/XmlMessagesFormatter.cs b/mcs/class/System.ServiceModel/System.ServiceModel.Dispatcher/XmlMessagesFormatter.cs
index 2e7d672..859daca 100644
--- a/mcs/class/System.ServiceModel/System.ServiceModel.Dispatcher/XmlMessagesFormatter.cs
+++ b/mcs/class/System.ServiceModel/System.ServiceModel.Dispatcher/XmlMessagesFormatter.cs
@@ -65,6 +65,7 @@ namespace System.ServiceModel.Dispatcher
 			m.IsReturnValue = isReturnValue;
 			m.MemberName = partDesc.Name;
 			m.MemberType = partDesc.Type;
+			m.XmlAttributes = new XmlAttributes(partDesc.MemberInfo);
 			return m;
 		}
 
diff --git a/mcs/class/System.ServiceModel/System.ServiceModel/BasicHttpBinding.cs b/mcs/class/System.ServiceModel/System.ServiceModel/BasicHttpBinding.cs
index b1f1876..d462b0f 100644
--- a/mcs/class/System.ServiceModel/System.ServiceModel/BasicHttpBinding.cs
+++ b/mcs/class/System.ServiceModel/System.ServiceModel/BasicHttpBinding.cs
@@ -181,33 +181,51 @@ namespace System.ServiceModel
 			CreateBindingElements ()
 		{
 			var list = new List<BindingElement> ();
+			
+			var security = CreateSecurityBindingElement ();
+			if (security != null)
+				list.Add (security);
+
+#if NET_2_1
+			if (EnableHttpCookieContainer)
+				list.Add (new HttpCookieContainerBindingElement ());
+#endif
+
+			list.Add (BuildMessageEncodingBindingElement ());
+			list.Add (GetTransport ());
+
+			return new BindingElementCollection (list.ToArray ());
+		}
+		
+		SecurityBindingElement CreateSecurityBindingElement () 
+		{
+            SecurityBindingElement element;
 			switch (Security.Mode) {
 #if !NET_2_1
 			case BasicHttpSecurityMode.Message:
 				if (Security.Message.ClientCredentialType != BasicHttpMessageCredentialType.Certificate)
 					throw new InvalidOperationException ("When Message security is enabled in a BasicHttpBinding, the message security credential type must be BasicHttpMessageCredentialType.Certificate.");
-				goto case BasicHttpSecurityMode.TransportWithMessageCredential;
+				element = SecurityBindingElement.CreateMutualCertificateBindingElement (
+				    MessageSecurityVersion.WSSecurity10WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11BasicSecurityProfile10);
+				break;
+
 			case BasicHttpSecurityMode.TransportWithMessageCredential:
-				SecurityBindingElement sec;
 				if (Security.Message.ClientCredentialType != BasicHttpMessageCredentialType.Certificate)
 					// FIXME: pass proper security token parameters.
-					sec = SecurityBindingElement.CreateCertificateOverTransportBindingElement ();
+					element = SecurityBindingElement.CreateCertificateOverTransportBindingElement ();
 				else
-					sec = new AsymmetricSecurityBindingElement ();
-				list.Add (sec);
+					element = new AsymmetricSecurityBindingElement ();
 				break;
 #endif
+			default: 
+				return null;
 			}
 
-#if NET_2_1
-			if (EnableHttpCookieContainer)
-				list.Add (new HttpCookieContainerBindingElement ());
+#if !NET_2_1
+			element.SetKeyDerivation (false);
+			element.SecurityHeaderLayout = SecurityHeaderLayout.Lax;
 #endif
-
-			list.Add (BuildMessageEncodingBindingElement ());
-			list.Add (GetTransport ());
-
-			return new BindingElementCollection (list.ToArray ());
+			return element;
 		}
 
 		MessageEncodingBindingElement BuildMessageEncodingBindingElement ()
diff --git a/mcs/class/System.ServiceModel/System.ServiceModel/ChangeLog b/mcs/class/System.ServiceModel/System.ServiceModel/ChangeLog
index bdfe824..79cd13b 100644
--- a/mcs/class/System.ServiceModel/System.ServiceModel/ChangeLog
+++ b/mcs/class/System.ServiceModel/System.ServiceModel/ChangeLog
@@ -1,3 +1,14 @@
+2011-08-03  Atsushi Eno  <atsushieno at veritas-vos-liberabit.com>
+
+	Fix NET_2_1 builds (regression from the previous
+	SecurityBindingElement fixes).
+
+2011-08-02  Atsushi Eno  <atsushieno at gmail.com>
+
+	Merge pull request #143 from mistoll/master
+
+	Fixes for WCF BasicHttpBinding with message security
+
 2011-07-27  Atsushi Eno  <atsushi at ximian.com>
 
 	Fix wsdl import wrt element qname (!= type name).
diff --git a/mcs/class/System.ServiceModel/System.ServiceModel_test.dll.sources b/mcs/class/System.ServiceModel/System.ServiceModel_test.dll.sources
index f66640f..6b69b82 100644
--- a/mcs/class/System.ServiceModel/System.ServiceModel_test.dll.sources
+++ b/mcs/class/System.ServiceModel/System.ServiceModel_test.dll.sources
@@ -103,6 +103,7 @@ System.ServiceModel.Configuration/StandardBindingElementCollectionTest.cs
 System.ServiceModel.Configuration/StandardBindingElementTest.cs
 System.ServiceModel.Configuration/StandardEndpointsSectionTest.cs
 System.ServiceModel.Configuration/UserBinding.cs
+System.ServiceModel.Description/BugX41.cs
 System.ServiceModel.Description/ClientCredentialsTest.cs
 System.ServiceModel.Description/ContractDescriptionTest.cs
 System.ServiceModel.Description/FaultDescriptionTest.cs
diff --git a/mcs/class/System.ServiceModel/Test/System.ServiceModel.Description/BugX41.cs b/mcs/class/System.ServiceModel/Test/System.ServiceModel.Description/BugX41.cs
new file mode 100644
index 0000000..5bdd172
--- /dev/null
+++ b/mcs/class/System.ServiceModel/Test/System.ServiceModel.Description/BugX41.cs
@@ -0,0 +1,288 @@
+//------------------------------------------------------------------------------
+// <auto-generated>
+//     This code was generated by a tool.
+//     Runtime Version:4.0.30319.235
+//
+//     Changes to this file may cause incorrect behavior and will be lost if
+//     the code is regenerated.
+// </auto-generated>
+//------------------------------------------------------------------------------
+
+namespace Dealerinfo.wsvDealerinfo {
+    
+    
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+    [System.ServiceModel.ServiceContractAttribute(Namespace="http://programcallbean.accentry.accell.nl", ConfigurationName="wsvDealerinfo.WSVDealerInfoServices")]
+    public interface WSVDealerInfoServices {
+        
+        // CODEGEN: Parameter 'wsvdealerinfo_XMLReturn' requires additional schema information that cannot be captured using the parameter mode. The specific attribute is 'System.Xml.Serialization.XmlElementAttribute'.
+        [System.ServiceModel.OperationContractAttribute(Action="wsvdealerinfo_XML", ReplyAction="*")]
+        [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)]
+        [return: System.ServiceModel.MessageParameterAttribute(Name="wsvdealerinfo_XMLReturn")]
+        Dealerinfo.wsvDealerinfo.wsvdealerinfo_XMLResponse wsvdealerinfo_XML(Dealerinfo.wsvDealerinfo.wsvdealerinfo_XMLRequest request);
+        
+        // CODEGEN: Parameter 'wsvdealerinfoReturn' requires additional schema information that cannot be captured using the parameter mode. The specific attribute is 'System.Xml.Serialization.XmlElementAttribute'.
+        [System.ServiceModel.OperationContractAttribute(Action="wsvdealerinfo", ReplyAction="*")]
+        [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)]
+        [return: System.ServiceModel.MessageParameterAttribute(Name="wsvdealerinfoReturn")]
+        Dealerinfo.wsvDealerinfo.wsvdealerinfoResponse wsvdealerinfo(Dealerinfo.wsvDealerinfo.wsvdealerinfoRequest request);
+    }
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.1")]
+    [System.SerializableAttribute()]
+    [System.Diagnostics.DebuggerStepThroughAttribute()]
+    [System.ComponentModel.DesignerCategoryAttribute("code")]
+    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://programcallbean.accentry.accell.nl")]
+    public partial class WSVDealerInfoInput : object, System.ComponentModel.INotifyPropertyChanged {
+        
+        private string returncodeField;
+        
+        private string wSVBedrijfscodeField;
+        
+        private string wSVDealercodeField;
+        
+        private string wSVWachtwoordField;
+        
+        /// <remarks/>
+        [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified, IsNullable=true, Order=0)]
+        public string returncode {
+            get {
+                return this.returncodeField;
+            }
+            set {
+                this.returncodeField = value;
+                this.RaisePropertyChanged("returncode");
+            }
+        }
+        
+        /// <remarks/>
+        [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified, IsNullable=true, Order=1)]
+        public string WSVBedrijfscode {
+            get {
+                return this.wSVBedrijfscodeField;
+            }
+            set {
+                this.wSVBedrijfscodeField = value;
+                this.RaisePropertyChanged("WSVBedrijfscode");
+            }
+        }
+        
+        /// <remarks/>
+        [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified, IsNullable=true, Order=2)]
+        public string WSVDealercode {
+            get {
+                return this.wSVDealercodeField;
+            }
+            set {
+                this.wSVDealercodeField = value;
+                this.RaisePropertyChanged("WSVDealercode");
+            }
+        }
+        
+        /// <remarks/>
+        [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified, IsNullable=true, Order=3)]
+        public string WSVWachtwoord {
+            get {
+                return this.wSVWachtwoordField;
+            }
+            set {
+                this.wSVWachtwoordField = value;
+                this.RaisePropertyChanged("WSVWachtwoord");
+            }
+        }
+        
+        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
+        
+        protected void RaisePropertyChanged(string propertyName) {
+            System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
+            if ((propertyChanged != null)) {
+                propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
+            }
+        }
+    }
+    
+    /// <remarks/>
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.1")]
+    [System.SerializableAttribute()]
+    [System.Diagnostics.DebuggerStepThroughAttribute()]
+    [System.ComponentModel.DesignerCategoryAttribute("code")]
+    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://programcallbean.accentry.accell.nl")]
+    public partial class WSVDealerInfoResult : object, System.ComponentModel.INotifyPropertyChanged {
+        
+        private string returncodeField;
+        
+        private string wSVFoutmeldingField;
+        
+        private string wSVDealerinfoField;
+        
+        /// <remarks/>
+        [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified, IsNullable=true, Order=0)]
+        public string returncode {
+            get {
+                return this.returncodeField;
+            }
+            set {
+                this.returncodeField = value;
+                this.RaisePropertyChanged("returncode");
+            }
+        }
+        
+        /// <remarks/>
+        [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified, IsNullable=true, Order=1)]
+        public string WSVFoutmelding {
+            get {
+                return this.wSVFoutmeldingField;
+            }
+            set {
+                this.wSVFoutmeldingField = value;
+                this.RaisePropertyChanged("WSVFoutmelding");
+            }
+        }
+        
+        /// <remarks/>
+        [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified, IsNullable=true, Order=2)]
+        public string WSVDealerinfo {
+            get {
+                return this.wSVDealerinfoField;
+            }
+            set {
+                this.wSVDealerinfoField = value;
+                this.RaisePropertyChanged("WSVDealerinfo");
+            }
+        }
+        
+        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
+        
+        protected void RaisePropertyChanged(string propertyName) {
+            System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
+            if ((propertyChanged != null)) {
+                propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
+            }
+        }
+    }
+    
+    [System.Diagnostics.DebuggerStepThroughAttribute()]
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+    [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
+    [System.ServiceModel.MessageContractAttribute(WrapperName="wsvdealerinfo_XML", WrapperNamespace="http://programcallbean.accentry.accell.nl", IsWrapped=true)]
+    public partial class wsvdealerinfo_XMLRequest {
+        
+        [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://programcallbean.accentry.accell.nl", Order=0)]
+        [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified, IsNullable=true)]
+        public Dealerinfo.wsvDealerinfo.WSVDealerInfoInput inputData;
+        
+        public wsvdealerinfo_XMLRequest() {
+        }
+        
+        public wsvdealerinfo_XMLRequest(Dealerinfo.wsvDealerinfo.WSVDealerInfoInput inputData) {
+            this.inputData = inputData;
+        }
+    }
+    
+    [System.Diagnostics.DebuggerStepThroughAttribute()]
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+    [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
+    [System.ServiceModel.MessageContractAttribute(WrapperName="wsvdealerinfo_XMLResponse", WrapperNamespace="http://programcallbean.accentry.accell.nl", IsWrapped=true)]
+    public partial class wsvdealerinfo_XMLResponse {
+        
+        [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://programcallbean.accentry.accell.nl", Order=0)]
+        [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified, IsNullable=true)]
+        public string wsvdealerinfo_XMLReturn;
+        
+        public wsvdealerinfo_XMLResponse() {
+        }
+        
+        public wsvdealerinfo_XMLResponse(string wsvdealerinfo_XMLReturn) {
+            this.wsvdealerinfo_XMLReturn = wsvdealerinfo_XMLReturn;
+        }
+    }
+    
+    [System.Diagnostics.DebuggerStepThroughAttribute()]
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+    [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
+    [System.ServiceModel.MessageContractAttribute(WrapperName="wsvdealerinfo", WrapperNamespace="http://programcallbean.accentry.accell.nl", IsWrapped=true)]
+    public partial class wsvdealerinfoRequest {
+        
+        [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://programcallbean.accentry.accell.nl", Order=0)]
+        [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified, IsNullable=true)]
+        public Dealerinfo.wsvDealerinfo.WSVDealerInfoInput inputData;
+        
+        public wsvdealerinfoRequest() {
+        }
+        
+        public wsvdealerinfoRequest(Dealerinfo.wsvDealerinfo.WSVDealerInfoInput inputData) {
+            this.inputData = inputData;
+        }
+    }
+    
+    [System.Diagnostics.DebuggerStepThroughAttribute()]
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+    [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
+    [System.ServiceModel.MessageContractAttribute(WrapperName="wsvdealerinfoResponse", WrapperNamespace="http://programcallbean.accentry.accell.nl", IsWrapped=true)]
+    public partial class wsvdealerinfoResponse {
+        
+        [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://programcallbean.accentry.accell.nl", Order=0)]
+        [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified, IsNullable=true)]
+        public Dealerinfo.wsvDealerinfo.WSVDealerInfoResult wsvdealerinfoReturn;
+        
+        public wsvdealerinfoResponse() {
+        }
+        
+        public wsvdealerinfoResponse(Dealerinfo.wsvDealerinfo.WSVDealerInfoResult wsvdealerinfoReturn) {
+            this.wsvdealerinfoReturn = wsvdealerinfoReturn;
+        }
+    }
+    
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+    public interface WSVDealerInfoServicesChannel : Dealerinfo.wsvDealerinfo.WSVDealerInfoServices, System.ServiceModel.IClientChannel {
+    }
+    
+    [System.Diagnostics.DebuggerStepThroughAttribute()]
+    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
+    public partial class WSVDealerInfoServicesClient : System.ServiceModel.ClientBase<Dealerinfo.wsvDealerinfo.WSVDealerInfoServices>, Dealerinfo.wsvDealerinfo.WSVDealerInfoServices {
+        
+        public WSVDealerInfoServicesClient() {
+        }
+        
+        public WSVDealerInfoServicesClient(string endpointConfigurationName) : 
+                base(endpointConfigurationName) {
+        }
+        
+        public WSVDealerInfoServicesClient(string endpointConfigurationName, string remoteAddress) : 
+                base(endpointConfigurationName, remoteAddress) {
+        }
+        
+        public WSVDealerInfoServicesClient(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress) : 
+                base(endpointConfigurationName, remoteAddress) {
+        }
+        
+        public WSVDealerInfoServicesClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) : 
+                base(binding, remoteAddress) {
+        }
+        
+        [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
+        Dealerinfo.wsvDealerinfo.wsvdealerinfo_XMLResponse Dealerinfo.wsvDealerinfo.WSVDealerInfoServices.wsvdealerinfo_XML(Dealerinfo.wsvDealerinfo.wsvdealerinfo_XMLRequest request) {
+            return base.Channel.wsvdealerinfo_XML(request);
+        }
+        
+        public string wsvdealerinfo_XML(Dealerinfo.wsvDealerinfo.WSVDealerInfoInput inputData) {
+            Dealerinfo.wsvDealerinfo.wsvdealerinfo_XMLRequest inValue = new Dealerinfo.wsvDealerinfo.wsvdealerinfo_XMLRequest();
+            inValue.inputData = inputData;
+            Dealerinfo.wsvDealerinfo.wsvdealerinfo_XMLResponse retVal = ((Dealerinfo.wsvDealerinfo.WSVDealerInfoServices)(this)).wsvdealerinfo_XML(inValue);
+            return retVal.wsvdealerinfo_XMLReturn;
+        }
+        
+        [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
+        Dealerinfo.wsvDealerinfo.wsvdealerinfoResponse Dealerinfo.wsvDealerinfo.WSVDealerInfoServices.wsvdealerinfo(Dealerinfo.wsvDealerinfo.wsvdealerinfoRequest request) {
+            return base.Channel.wsvdealerinfo(request);
+        }
+        
+        public Dealerinfo.wsvDealerinfo.WSVDealerInfoResult wsvdealerinfo(Dealerinfo.wsvDealerinfo.WSVDealerInfoInput inputData) {
+            Dealerinfo.wsvDealerinfo.wsvdealerinfoRequest inValue = new Dealerinfo.wsvDealerinfo.wsvdealerinfoRequest();
+            inValue.inputData = inputData;
+            Dealerinfo.wsvDealerinfo.wsvdealerinfoResponse retVal = ((Dealerinfo.wsvDealerinfo.WSVDealerInfoServices)(this)).wsvdealerinfo(inValue);
+            return retVal.wsvdealerinfoReturn;
+        }
+    }
+}
diff --git a/mcs/class/System.ServiceModel/Test/System.ServiceModel.Description/ChangeLog b/mcs/class/System.ServiceModel/Test/System.ServiceModel.Description/ChangeLog
index 32cb4dd..f43aa87 100644
--- a/mcs/class/System.ServiceModel/Test/System.ServiceModel.Description/ChangeLog
+++ b/mcs/class/System.ServiceModel/Test/System.ServiceModel.Description/ChangeLog
@@ -1,3 +1,19 @@
+2011-08-02  Nicolas GRAZIANO  <nicolas.graziano at ineo-gdfsuez.com>
+
+	TypedMessageConverter do not take into account the xml attribute
+	which modify the serialization.
+
+	Correction and Unit Test.
+
+2011-08-02  Atsushi Eno  <atsushi at ximian.com>
+
+	part of fix bug #41. MessageParameterAttribute is considered for
+	return value.
+
+	Conflicts:
+
+	mcs/class/System.ServiceModel/System.ServiceModel.Description/MessagePartDescription.cs
+
 2011-05-10  Atsushi Eno  <atsushi at ximian.com>
 
 	Fix common issue in MetadataSet - call MoveToContent() while
diff --git a/mcs/class/System.ServiceModel/Test/System.ServiceModel.Description/ContractDescriptionTest.cs b/mcs/class/System.ServiceModel/Test/System.ServiceModel.Description/ContractDescriptionTest.cs
index 386e0be..f35568a 100644
--- a/mcs/class/System.ServiceModel/Test/System.ServiceModel.Description/ContractDescriptionTest.cs
+++ b/mcs/class/System.ServiceModel/Test/System.ServiceModel.Description/ContractDescriptionTest.cs
@@ -544,6 +544,17 @@ namespace MonoTests.System.ServiceModel.Description
 			Assert.IsNotNull (xb, "#1");
 		}
 
+		[Test]
+		public void MessageParameterDescriptionInUse ()
+		{
+			// bug #41
+			var cd = ContractDescription.GetContract (typeof (Dealerinfo.wsvDealerinfo.WSVDealerInfoServices));
+			foreach (var od in cd.Operations)
+				foreach (var md in od.Messages)
+					if (md.Action == "*") // return
+						Assert.IsNotNull (md.Body.ReturnValue, od.Name);
+		}
+
 		// It is for testing attribute search in interfaces.
 		public class Foo : IFoo
 		{
diff --git a/mcs/class/System.ServiceModel/Test/System.ServiceModel.Description/TypedMessageConverterTest.cs b/mcs/class/System.ServiceModel/Test/System.ServiceModel.Description/TypedMessageConverterTest.cs
index eb9b672..63f4ba5 100644
--- a/mcs/class/System.ServiceModel/Test/System.ServiceModel.Description/TypedMessageConverterTest.cs
+++ b/mcs/class/System.ServiceModel/Test/System.ServiceModel.Description/TypedMessageConverterTest.cs
@@ -34,7 +34,9 @@ using System.ServiceModel;
 using System.ServiceModel.Channels;
 using System.ServiceModel.Description;
 using System.ServiceModel.Dispatcher;
+using System.Text;
 using System.Xml;
+using System.Xml.Serialization;
 using NUnit.Framework;
 
 namespace MonoTests.System.ServiceModel.Description
@@ -119,6 +121,49 @@ namespace MonoTests.System.ServiceModel.Description
 			Assert.AreEqual ("test", t2.echo.msg, "#01");
 			Assert.AreEqual ("testtest", t2.body2, "#02");
 		}
+
+
+		[Test]
+		public void XmlSerializerdWithXmlAttribute()
+		{
+			TypedMessageConverter c = TypedMessageConverter.Create (
+				typeof (Test3), "http://tempuri.org/MyTest",
+                new XmlSerializerFormatAttribute ());
+
+
+			string xmlMessage = @"<s:Envelope xmlns:s='http://www.w3.org/2003/05/soap-envelope'
+									xmlns:a='http://www.w3.org/2005/08/addressing'>
+				<s:Header><a:Action s:mustUnderstand='1'>http://tempuri.org/MyTest</a:Action></s:Header>
+				<s:Body xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema'>
+					<test xmlns='urn:foo'>
+						<Id>OneID</Id>
+						<Element>
+							<Prop1 xmlns='urn:bar'>foo</Prop1>
+							<Prop2 xmlns='urn:bar'>2</Prop2>
+						</Element>
+						<Element>
+							<Prop1 xmlns='urn:bar'>bar</Prop1>
+							<Prop2 xmlns='urn:bar'>3</Prop2>
+						</Element>
+					</test>
+				</s:Body>
+				</s:Envelope>";
+
+			byte[] buffer = Encoding.UTF8.GetBytes(xmlMessage);
+			using (XmlDictionaryReader reader = XmlDictionaryReader.CreateTextReader(buffer, XmlDictionaryReaderQuotas.Max))
+			{
+				Message messagedisk = Message.CreateMessage(reader, int.MaxValue, MessageVersion.Soap12);
+				Test3 obj = c.FromMessage(messagedisk) as Test3;
+				Assert.IsNotNull(obj);
+				Assert.AreEqual("OneID", obj.Id);
+				Assert.IsNotNull(obj.ArrayOfElement);
+				Assert.AreEqual(2, obj.ArrayOfElement.Length);
+				Assert.AreEqual("foo", obj.ArrayOfElement[0].Prop1);
+				Assert.AreEqual(3, obj.ArrayOfElement[1].Prop2);
+			}
+		}
+
+
 	}
 
 	[MessageContract (WrapperNamespace = "space", WrapperName = "MyName")]
@@ -146,4 +191,32 @@ namespace MonoTests.System.ServiceModel.Description
 		[MessageBodyMember (Name = "body", Namespace = "urn:foo")]
 		public Echo Body { get; set; }
 	}
+
+    [MessageContract(WrapperName = "test",
+        WrapperNamespace = "urn:foo",
+        IsWrapped = true)]
+	public class Test3
+	{
+
+		[MessageBodyMember()]
+		[XmlElementAttribute()]
+		public string Id;
+
+		[MessageBodyMember()]
+		[XmlElement(Type = typeof(ElementType), ElementName = "Element")]
+		public ElementType[] ArrayOfElement;
+
+	}
+
+	[Serializable]
+	[XmlType(Namespace = "urn:bar")]
+	public class ElementType
+	{
+		[XmlElement(Order = 0)]
+		public string Prop1 { get; set; }
+
+		[XmlElement(Order = 1)]
+		public int Prop2 { get; set; }
+	}
+
 }
diff --git a/mcs/class/System.Web.Routing/System.Web.Routing/ChangeLog b/mcs/class/System.Web.Routing/System.Web.Routing/ChangeLog
index 5a8a3a2..5a3feeb 100644
--- a/mcs/class/System.Web.Routing/System.Web.Routing/ChangeLog
+++ b/mcs/class/System.Web.Routing/System.Web.Routing/ChangeLog
@@ -1,3 +1,9 @@
+2011-08-07  Bassam Tabbara  <bassam at symform.com>
+
+	Fixed regression in System.Web.Routing caused by
+	62b047ae5bb8eec096e5b764029a1f283ee51347. Value and constraint
+	where switched when evaluating regex route constraints.
+
 2011-03-16  Bassam Tabbara  <bassam at symform.com>
 
 	[asp.net] Fix for bug #667513. Implement support for PathInfo in
diff --git a/mcs/class/System.Web.Routing/System.Web.Routing/Route.cs b/mcs/class/System.Web.Routing/System.Web.Routing/Route.cs
index ebc947a..1a7ce99 100644
--- a/mcs/class/System.Web.Routing/System.Web.Routing/Route.cs
+++ b/mcs/class/System.Web.Routing/System.Web.Routing/Route.cs
@@ -188,22 +188,22 @@ namespace System.Web.Routing
 			return false;
 		}
 
-		static bool MatchConstraintRegex (string rx, string constraint)
+		static bool MatchConstraintRegex (string value, string constraint)
 		{
-			int rxlen = rx.Length;
-			if (rxlen > 0) {
+			int len = constraint.Length;
+			if (len > 0) {
 				// Bug #651966 - regexp constraints must be treated
 				// as absolute expressions
-				if (rx [0] != '^') {
-					rx = "^" + rx;
-					rxlen++;
+				if (constraint [0] != '^') {
+					constraint = "^" + constraint;
+					len++;
 				}
 
-				if (rx [rxlen - 1] != '$')
-					rx += "$";
+				if (constraint [len - 1] != '$')
+					constraint += "$";
 			}
 
-			return Regex.Match (rx, constraint).Success;
+			return Regex.Match (value, constraint).Success;
 		}
 		
 		protected virtual bool ProcessConstraint (HttpContextBase httpContext, object constraint, string parameterName, RouteValueDictionary values, RouteDirection routeDirection)
diff --git a/mcs/class/System.XML/System.Xml.Serialization/ChangeLog b/mcs/class/System.XML/System.Xml.Serialization/ChangeLog
index 0476d57..f7839cb 100644
--- a/mcs/class/System.XML/System.Xml.Serialization/ChangeLog
+++ b/mcs/class/System.XML/System.Xml.Serialization/ChangeLog
@@ -1,3 +1,18 @@
+2011-08-03  Atsushi Eno  <atsushieno at gmail.com>
+
+	Merge pull request #146 from
+	flutos/207ce0bccceec3ff7860ea986086fedb5a92d822
+
+	fix for bug 708178 that would fail if the type wasnt IEnumerable,
+	should check if it implement IEnumerable rather than is
+	IEnumerable
+
+2011-08-03  Atsushi Eno  <atsushieno at veritas-vos-liberabit.com>
+
+	Fix bug #707434, check order only when applicable.
+
+	Based on the input by Scott Fluto.
+
 2011-07-21  Atsushi Eno  <atsushieno at veritas-vos-liberabit.com>
 
 	Fix bug #703910 - implement Order support in XmlSerializer.
diff --git a/mcs/class/System.XML/System.Xml.Serialization/TypeData.cs b/mcs/class/System.XML/System.Xml.Serialization/TypeData.cs
index 35509a0..7cc0152 100644
--- a/mcs/class/System.XML/System.Xml.Serialization/TypeData.cs
+++ b/mcs/class/System.XML/System.Xml.Serialization/TypeData.cs
@@ -444,7 +444,7 @@ namespace System.Xml.Serialization
 #if NET_2_0
 		internal static Type GetGenericListItemType (Type type)
 		{
-			if (type.IsGenericType && type.GetGenericTypeDefinition () == typeof (IEnumerable<>)) {
+			if (type.IsGenericType && typeof(IEnumerable).IsAssignableFrom(type.GetGenericTypeDefinition ())) {
 				Type [] gatypes = type.GetGenericArguments ();
 				if (type.GetMethod ("Add", gatypes) != null)
 					return gatypes [0];
diff --git a/mcs/class/System.XML/System.Xml.Serialization/XmlAttributes.cs b/mcs/class/System.XML/System.Xml.Serialization/XmlAttributes.cs
index 60e5208..46b39b7 100644
--- a/mcs/class/System.XML/System.Xml.Serialization/XmlAttributes.cs
+++ b/mcs/class/System.XML/System.Xml.Serialization/XmlAttributes.cs
@@ -279,17 +279,21 @@ namespace System.Xml.Serialization
 			sb.Append ("|");
 		}
 
-		public int Order {
+		internal int? Order {
 			get {
-				int order = -1;
-				if (XmlElements != null)
+				int? order = null;
+				if (XmlElements.Count > 0)
 					order = XmlElements.Order;
-				if (order < 0 && XmlArray != null)
+				else if (XmlArray != null)
 					order = XmlArray.Order;
-				if (order < 0 && XmlAnyElements != null)
+				else if (XmlAnyElements.Count > 0)
 					order = XmlAnyElements.Order;
 				return order;
 			}
 		}
+		
+		internal int SortableOrder {
+			get { return Order != null ? (int) Order : int.MinValue; }
+		}
 	}
 }
diff --git a/mcs/class/System.XML/System.Xml.Serialization/XmlReflectionImporter.cs b/mcs/class/System.XML/System.Xml.Serialization/XmlReflectionImporter.cs
index fd10f43..be282f1 100644
--- a/mcs/class/System.XML/System.Xml.Serialization/XmlReflectionImporter.cs
+++ b/mcs/class/System.XML/System.Xml.Serialization/XmlReflectionImporter.cs
@@ -348,13 +348,17 @@ namespace System.Xml.Serialization {
 			bool? isOrderExplicit = null;
 			foreach (XmlReflectionMember rmember in members)
 			{
+				int? order = rmember.XmlAttributes.Order;
 				if (isOrderExplicit == null)
-					isOrderExplicit = rmember.XmlAttributes.Order >= 0;
-				else if (isOrderExplicit != (rmember.XmlAttributes.Order >= 0))
+				{
+					if (order != null)
+						isOrderExplicit = (int) order >= 0;
+				}
+				else if (order != null && isOrderExplicit != ((int) order >= 0))
 					throw new InvalidOperationException ("Inconsistent XML sequence was detected. If there are XmlElement/XmlArray/XmlAnyElement attributes with explicit Order, then every other member must have an explicit order too.");
 			}
 			if (isOrderExplicit == true)
-				members.Sort ((m1, m2) => m1.XmlAttributes.Order - m2.XmlAttributes.Order);
+				members.Sort ((m1, m2) => (int) m1.XmlAttributes.SortableOrder - (int) m2.XmlAttributes.SortableOrder);
 
 			foreach (XmlReflectionMember rmember in members)
 			{
diff --git a/mcs/class/System.XML/Test/System.Xml.Serialization/ChangeLog b/mcs/class/System.XML/Test/System.Xml.Serialization/ChangeLog
index 12faf0a..46d0e61 100644
--- a/mcs/class/System.XML/Test/System.Xml.Serialization/ChangeLog
+++ b/mcs/class/System.XML/Test/System.Xml.Serialization/ChangeLog
@@ -1,3 +1,18 @@
+2011-08-03  Atsushi Eno  <atsushieno at gmail.com>
+
+	Merge pull request #146 from
+	flutos/207ce0bccceec3ff7860ea986086fedb5a92d822
+
+	fix for bug 708178 that would fail if the type wasnt IEnumerable,
+	should check if it implement IEnumerable rather than is
+	IEnumerable
+
+2011-08-03  Atsushi Eno  <atsushieno at veritas-vos-liberabit.com>
+
+	Fix bug #707434, check order only when applicable.
+
+	Based on the input by Scott Fluto.
+
 2011-07-21  Atsushi Eno  <atsushieno at veritas-vos-liberabit.com>
 
 	Fix bug #703910 - implement Order support in XmlSerializer.
diff --git a/mcs/class/System.XML/Test/System.Xml.Serialization/XmlReflectionImporterTests.cs b/mcs/class/System.XML/Test/System.Xml.Serialization/XmlReflectionImporterTests.cs
index 6dbbd2e..7512424 100644
--- a/mcs/class/System.XML/Test/System.Xml.Serialization/XmlReflectionImporterTests.cs
+++ b/mcs/class/System.XML/Test/System.Xml.Serialization/XmlReflectionImporterTests.cs
@@ -1635,6 +1635,27 @@ namespace MonoTests.System.XmlSerialization
 			var xs = new XmlSerializer (typeof (Bug704813Type));
 			xs.Serialize (TextWriter.Null, new Bug704813Type ());
 		}
+
+		[Test]
+		public void Bug708178Type()
+		{
+			XmlSerializer xmlSerializer = new XmlSerializer (typeof(Bug708178Type));
+			Bug708178Type bugType = new Bug708178Type ();
+			bugType.Foo.Add ("test");
+			Assert.AreEqual (1, bugType.Foo.Count);
+		 
+			//xml Serialize
+			TextWriter WriteFileStream = new StreamWriter (@"Bug708178Type.xml", false);
+			xmlSerializer.Serialize (WriteFileStream, bugType);
+			WriteFileStream.Close ();
+		 
+			//xml Deserialize
+			FileStream ReadFileStream = new FileStream (@"Bug708178Type.xml", FileMode.Open, FileAccess.Read, FileShare.Read);
+			Bug708178Type bugTypeReload = (Bug708178Type)xmlSerializer.Deserialize (ReadFileStream);
+		 
+			//should have deserialized the relationship
+			Assert.AreEqual(1, bugTypeReload.Foo.Count);
+	       }
 #endif
 
 		public class Employee : IXmlSerializable
diff --git a/mcs/class/System.XML/Test/System.Xml.Serialization/XmlSerializationReaderTests.cs b/mcs/class/System.XML/Test/System.Xml.Serialization/XmlSerializationReaderTests.cs
index ce86b3b..53e29d2 100644
--- a/mcs/class/System.XML/Test/System.Xml.Serialization/XmlSerializationReaderTests.cs
+++ b/mcs/class/System.XML/Test/System.Xml.Serialization/XmlSerializationReaderTests.cs
@@ -188,6 +188,22 @@ namespace MonoTests.System.XmlSerialization
 			Assert.AreEqual ("World", result.Child2, "#2");
 			Assert.IsNull (result.Child0, "#3"); // not "test"
 		}
+
+		[Test]
+		public void ExplicitlyOrderedMembers4 ()
+		{
+			var xs = new XmlSerializer (typeof (ExplicitlyOrderedMembersType4));
+			//Would result in an Inconsistent XML sequence error , see Bug 707434
+			var result = (ExplicitlyOrderedMembersType4) xs.Deserialize(new StringReader (@"
+<root>
+	<child>Hello</child>
+	<child>World</child>
+	<child0>test</child0>
+</root>"));
+			Assert.AreEqual ("Hello", result.Child1, "#1");
+			Assert.AreEqual ("World", result.Child2, "#2");
+			Assert.IsNull (result.Child0, "#3"); // not "test"
+		}
 	}
 
 	public class XmlSerializarionReaderTester : XmlSerializationReader
diff --git a/mcs/class/System.XML/Test/System.Xml.Serialization/XmlSerializerTestClasses.cs b/mcs/class/System.XML/Test/System.Xml.Serialization/XmlSerializerTestClasses.cs
index 27cf617..f478076 100644
--- a/mcs/class/System.XML/Test/System.Xml.Serialization/XmlSerializerTestClasses.cs
+++ b/mcs/class/System.XML/Test/System.Xml.Serialization/XmlSerializerTestClasses.cs
@@ -968,6 +968,16 @@ namespace MonoTests.System.Xml.TestClasses
 		}
 	}
 
+	public class Bug708178Type
+	{
+		List<string> foo = new List<string> ();
+
+		[XmlArray("Foo"), XmlArrayItem("Foo", typeof(string))]
+		public List<string> Foo {
+			get { return foo; }
+		}                
+	}
+
 	[XmlRoot("root")]
 	public class ExplicitlyOrderedMembersType1
 	{
@@ -1007,5 +1017,20 @@ namespace MonoTests.System.Xml.TestClasses
 		public string Child2;
 	}
 
+	[XmlRoot("root")]
+	public class ExplicitlyOrderedMembersType4
+	{
+		[XmlElement("child0", Order = 1)] // it's between 0 and 2. After two "child" elements, child0 is not recognized as this member.
+		public string Child0;
+		
+		[XmlElement("child", Order = 0)]
+		public string Child1;
+		
+		[XmlElement("child", Order = 2)]
+		public string Child2;
+		
+		[XmlAttribute]
+		public string Child3;
+	}
 }
 
diff --git a/mcs/class/System/System.Net.Sockets/ChangeLog b/mcs/class/System/System.Net.Sockets/ChangeLog
index aba8a7e..a61e2ff 100644
--- a/mcs/class/System/System.Net.Sockets/ChangeLog
+++ b/mcs/class/System/System.Net.Sockets/ChangeLog
@@ -1,3 +1,8 @@
+2011-08-07  Bassam Tabbara  <bassam at symform.com>
+
+	Networkstream now throws IOException('connection closed') if the
+	socket was closed/disposed
+
 2011-06-20  XTZGZoReX  <xtzgzorex at gmail.com>
 
 	Socket: Fixed a security issue when default-initialized
diff --git a/mcs/class/System/System.Net.Sockets/NetworkStream.cs b/mcs/class/System/System.Net.Sockets/NetworkStream.cs
index 29c5b8b..95d3b4d 100644
--- a/mcs/class/System/System.Net.Sockets/NetworkStream.cs
+++ b/mcs/class/System/System.Net.Sockets/NetworkStream.cs
@@ -214,8 +214,14 @@ namespace System.Net.Sockets
 				throw new ArgumentOutOfRangeException("offset+size exceeds the size of buffer");
 			}
 
+			Socket s = socket;
+
+			if (s == null) {
+				throw new IOException("Connection closed");
+			}
+
 			try {
-				retval = socket.BeginReceive (buffer, offset, size, 0, callback, state);
+				retval = s.BeginReceive (buffer, offset, size, 0, callback, state);
 			} catch (Exception e) {
 				throw new IOException ("BeginReceive failure", e);
 			}
@@ -240,8 +246,14 @@ namespace System.Net.Sockets
 				throw new ArgumentOutOfRangeException("offset+size exceeds the size of buffer");
 			}
 
+			Socket s = socket;
+
+			if (s == null) {
+				throw new IOException("Connection closed");
+			}
+
 			try {
-				retval = socket.BeginSend (buffer, offset, size, 0, callback, state);
+				retval = s.BeginSend (buffer, offset, size, 0, callback, state);
 			} catch {
 				throw new IOException ("BeginWrite failure");
 			}
@@ -316,8 +328,14 @@ namespace System.Net.Sockets
 			if (ar == null)
 				throw new ArgumentNullException ("async result is null");
 
+			Socket s = socket;
+
+			if (s == null) {
+				throw new IOException("Connection closed");
+			}
+
 			try {
-				res = socket.EndReceive (ar);
+				res = s.EndReceive (ar);
 			} catch (Exception e) {
 				throw new IOException ("EndRead failure", e);
 			}
@@ -330,8 +348,14 @@ namespace System.Net.Sockets
 			if (ar == null)
 				throw new ArgumentNullException ("async result is null");
 
+			Socket s = socket;
+
+			if (s == null) {
+				throw new IOException("Connection closed");
+			}
+
 			try {
-				socket.EndSend (ar);
+				s.EndSend (ar);
 			} catch (Exception e) {
 				throw new IOException ("EndWrite failure", e);
 			}
@@ -363,8 +387,14 @@ namespace System.Net.Sockets
 				throw new ArgumentOutOfRangeException("offset+size exceeds the size of buffer");
 			}
 
+			Socket s = socket;
+
+			if (s == null) {
+				throw new IOException("Connection closed");
+			}
+
 			try {
-				res = socket.Receive (buffer, offset, size, 0);
+				res = s.Receive (buffer, offset, size, 0);
 			} catch (Exception e) {
 				throw new IOException ("Read failure", e);
 			}
@@ -398,10 +428,16 @@ namespace System.Net.Sockets
 			if (size < 0 || size > buffer.Length - offset)
 				throw new ArgumentOutOfRangeException("offset+size exceeds the size of buffer");
 
+			Socket s = socket;
+
+			if (s == null) {
+				throw new IOException("Connection closed");
+			}
+
 			try {
 				int count = 0;
 				while (size - count > 0) {
-					count += socket.Send (buffer, offset + count, size - count, 0);
+					count += s.Send (buffer, offset + count, size - count, 0);
 				}
 			} catch (Exception e) {
 				throw new IOException ("Write failure", e); 
diff --git a/mcs/class/corlib/System.IO/ChangeLog b/mcs/class/corlib/System.IO/ChangeLog
index 03ab50d..df7a035 100644
--- a/mcs/class/corlib/System.IO/ChangeLog
+++ b/mcs/class/corlib/System.IO/ChangeLog
@@ -1,3 +1,7 @@
+2011-08-07  Bassam Tabbara  <bassam at symform.com>
+
+	Remove Console.WriteLine from DriveInfo.GetDrives()
+
 2011-04-25  Gonzalo Paniagua Javier  <gonzalo.mono at gmail.com>
 
 	In *AllLines use WriteLine instead of Write.
diff --git a/mcs/class/corlib/System.IO/DriveInfo.cs b/mcs/class/corlib/System.IO/DriveInfo.cs
index a94f94b..e7db887 100644
--- a/mcs/class/corlib/System.IO/DriveInfo.cs
+++ b/mcs/class/corlib/System.IO/DriveInfo.cs
@@ -232,7 +232,6 @@ namespace System.IO {
 			int i = 0;
 			foreach (string s in drives) {
 				infos [i++] = new DriveInfo (s, GetDriveFormat (s));
-				Console.WriteLine (infos [i-1].path);
 			}
 
 			return infos;
diff --git a/mcs/class/corlib/System.Security.Cryptography/ChangeLog b/mcs/class/corlib/System.Security.Cryptography/ChangeLog
index 27b81e2..2d5f66b 100644
--- a/mcs/class/corlib/System.Security.Cryptography/ChangeLog
+++ b/mcs/class/corlib/System.Security.Cryptography/ChangeLog
@@ -1,3 +1,9 @@
+2011-08-05  Miguel de Icaza  <miguel at gnome.org>
+
+	Merge pull request #129 from grumpydev/CryptoFixo
+
+	Fix for out of bounds exception in Rfc2898DeriveBytes
+
 2011-04-17  Sebastien Pouliot  <sebastien at ximian.com>
 
 	backport pull request for 2.10.2
diff --git a/mcs/class/corlib/System.Security.Cryptography/Rfc2898DeriveBytes.cs b/mcs/class/corlib/System.Security.Cryptography/Rfc2898DeriveBytes.cs
index 17c7fc9..d3ad55e 100644
--- a/mcs/class/corlib/System.Security.Cryptography/Rfc2898DeriveBytes.cs
+++ b/mcs/class/corlib/System.Security.Cryptography/Rfc2898DeriveBytes.cs
@@ -33,9 +33,9 @@ using System.Text;
 
 using Mono.Security.Cryptography;
 
-namespace System.Security.Cryptography { 
+namespace System.Security.Cryptography {
 
-	[ComVisible (true)]
+    [ComVisible (true)]
 	public class Rfc2898DeriveBytes : DeriveBytes {
 
 		private const int defaultIterations = 1000;
@@ -155,6 +155,13 @@ namespace System.Security.Cryptography {
 				Buffer.BlockCopy (_buffer, _pos, result, 0, count);
 				if (count >= cb)
 					return result;
+
+                // If we are going to go over the boundaries
+                // of the result on our l-1 iteration, reduce
+                // l to compensate.
+                if (((l-1) * 20 + count) > result.Length)
+                    l--;
+
 				_pos = 0;
 				rpos = count;
 			}
diff --git a/mcs/class/corlib/System.Threading.Tasks/ChangeLog b/mcs/class/corlib/System.Threading.Tasks/ChangeLog
index 2ab803f..df96464 100644
--- a/mcs/class/corlib/System.Threading.Tasks/ChangeLog
+++ b/mcs/class/corlib/System.Threading.Tasks/ChangeLog
@@ -1,3 +1,7 @@
+2011-08-05  Jérémie Laval  <jeremie.laval at gmail.com>
+
+	Fix for #162
+
 2011-07-27  Jérémie Laval  <jeremie.laval at gmail.com>
 
 	Ensure that Task is in a correct initial state before starting it
diff --git a/mcs/class/corlib/System.Threading.Tasks/Task.cs b/mcs/class/corlib/System.Threading.Tasks/Task.cs
index 6e0b213..399504f 100644
--- a/mcs/class/corlib/System.Threading.Tasks/Task.cs
+++ b/mcs/class/corlib/System.Threading.Tasks/Task.cs
@@ -108,7 +108,7 @@ namespace System.Threading.Tasks
 			this.action              = action == null ? EmptyFunc : action;
 			this.state               = state;
 			this.taskId              = Interlocked.Increment (ref id);
-			this.status              = TaskStatus.Created;
+			this.status              = cancellationToken.IsCancellationRequested ? TaskStatus.Canceled : TaskStatus.Created;
 			this.token               = cancellationToken;
 
 			// Process taskCreationOptions
diff --git a/mcs/class/corlib/Test/System.Security.Cryptography/ChangeLog b/mcs/class/corlib/Test/System.Security.Cryptography/ChangeLog
index cf24615..e718b5c 100644
--- a/mcs/class/corlib/Test/System.Security.Cryptography/ChangeLog
+++ b/mcs/class/corlib/Test/System.Security.Cryptography/ChangeLog
@@ -1,3 +1,9 @@
+2011-08-05  Miguel de Icaza  <miguel at gnome.org>
+
+	Merge pull request #129 from grumpydev/CryptoFixo
+
+	Fix for out of bounds exception in Rfc2898DeriveBytes
+
 2011-01-11  Sebastien Pouliot  <sebastien at ximian.com>
 
 	* Test/System.Security.Cryptography/CryptoConfigTest.cs: Add test
diff --git a/mcs/class/corlib/Test/System.Security.Cryptography/Rfc2898DeriveBytesTest.cs b/mcs/class/corlib/Test/System.Security.Cryptography/Rfc2898DeriveBytesTest.cs
index d3daf65..3852cb6 100644
--- a/mcs/class/corlib/Test/System.Security.Cryptography/Rfc2898DeriveBytesTest.cs
+++ b/mcs/class/corlib/Test/System.Security.Cryptography/Rfc2898DeriveBytesTest.cs
@@ -356,6 +356,15 @@ namespace MonoTests.System.Security.Cryptography {
 
 			CompareBuffers (big, a, b);
 		}
+		
+		[Test]
+		public void MultipleCalls_DoesntOverrunBuffer ()
+		{
+			Rfc2898DeriveBytes keygen = new Rfc2898DeriveBytes("Password", new byte[] { 1, 2, 3, 4, 5, 6, 7, 8 });
+
+			keygen.GetBytes(32);
+			keygen.GetBytes(64);
+		}
 	}
 }
 
diff --git a/mcs/class/corlib/Test/System.Threading.Tasks/ChangeLog b/mcs/class/corlib/Test/System.Threading.Tasks/ChangeLog
index e40f844..59bd1ce 100644
--- a/mcs/class/corlib/Test/System.Threading.Tasks/ChangeLog
+++ b/mcs/class/corlib/Test/System.Threading.Tasks/ChangeLog
@@ -1,3 +1,7 @@
+2011-08-05  Jérémie Laval  <jeremie.laval at gmail.com>
+
+	Fix for #162
+
 2011-07-27  Jérémie Laval  <jeremie.laval at gmail.com>
 
 	Same test for TaskCompletionSource
diff --git a/mcs/class/corlib/Test/System.Threading.Tasks/TaskTest.cs b/mcs/class/corlib/Test/System.Threading.Tasks/TaskTest.cs
index 3909fa5..e0ba4f3 100644
--- a/mcs/class/corlib/Test/System.Threading.Tasks/TaskTest.cs
+++ b/mcs/class/corlib/Test/System.Threading.Tasks/TaskTest.cs
@@ -117,6 +117,15 @@ namespace MonoTests.System.Threading.Tasks
 			Assert.AreEqual (1, aggr.InnerExceptions.Count, "#4");
 			Assert.IsInstanceOfType (typeof (OperationCanceledException), aggr.InnerExceptions[0], "#5");
 		}
+
+		[Test, ExpectedException (typeof (InvalidOperationException))]
+		public void CreationWhileInitiallyCanceled ()
+		{
+			var token = new CancellationToken (true);
+			var task = new Task (() => { }, token);
+			Assert.AreEqual (TaskStatus.Canceled, task.Status);
+			task.Start ();
+		}
 		
 		[Test]
 		public void ContinueWithOnAnyTestCase()
diff --git a/mcs/class/lib/monolite/Mono.Security.dll b/mcs/class/lib/monolite/Mono.Security.dll
old mode 100644
new mode 100755
index 1e99db0..5c159dd
Binary files a/mcs/class/lib/monolite/Mono.Security.dll and b/mcs/class/lib/monolite/Mono.Security.dll differ
diff --git a/mcs/class/lib/monolite/System.Core.dll b/mcs/class/lib/monolite/System.Core.dll
old mode 100644
new mode 100755
index 22ee354..bee9428
Binary files a/mcs/class/lib/monolite/System.Core.dll and b/mcs/class/lib/monolite/System.Core.dll differ
diff --git a/mcs/class/lib/monolite/System.Xml.dll b/mcs/class/lib/monolite/System.Xml.dll
old mode 100644
new mode 100755
index 84f5b14..50304a4
Binary files a/mcs/class/lib/monolite/System.Xml.dll and b/mcs/class/lib/monolite/System.Xml.dll differ
diff --git a/mcs/class/lib/monolite/System.dll b/mcs/class/lib/monolite/System.dll
old mode 100644
new mode 100755
index 811864a..5f971ae
Binary files a/mcs/class/lib/monolite/System.dll and b/mcs/class/lib/monolite/System.dll differ
diff --git a/mcs/class/lib/monolite/mcs.exe b/mcs/class/lib/monolite/mcs.exe
old mode 100644
new mode 100755
index 568edb6..f111bf8
Binary files a/mcs/class/lib/monolite/mcs.exe and b/mcs/class/lib/monolite/mcs.exe differ
diff --git a/mcs/class/lib/monolite/mscorlib.dll b/mcs/class/lib/monolite/mscorlib.dll
old mode 100644
new mode 100755
index 80cd13e..4530c1e
Binary files a/mcs/class/lib/monolite/mscorlib.dll and b/mcs/class/lib/monolite/mscorlib.dll differ
diff --git a/mcs/tools/mkbundle/ChangeLog b/mcs/tools/mkbundle/ChangeLog
index 4331c02..f4ed7b1 100644
--- a/mcs/tools/mkbundle/ChangeLog
+++ b/mcs/tools/mkbundle/ChangeLog
@@ -1,3 +1,11 @@
+2011-08-01  Jeffrey Stedfast  <jeff at xamarin.com>
+
+	Oops, fixed a typo
+
+2011-07-29  Jeffrey Stedfast  <jeff at xamarin.com>
+
+	Fix a mkbundle compiler warning by #including mono-config.h
+
 2010-08-26  Gonzalo Paniagua Javier  <gonzalo.mono at gmail.com>
 
 	Fix the build
diff --git a/mcs/tools/mkbundle/mkbundle.cs b/mcs/tools/mkbundle/mkbundle.cs
index 8227c1c..0d4dc93 100644
--- a/mcs/tools/mkbundle/mkbundle.cs
+++ b/mcs/tools/mkbundle/mkbundle.cs
@@ -206,6 +206,7 @@ class MakeBundle {
 			string prog = null;
 
 			tc.WriteLine ("/* This source code was produced by mkbundle, do not edit */");
+			tc.WriteLine ("#include <mono/metadata/mono-config.h>");
 			tc.WriteLine ("#include <mono/metadata/assembly.h>\n");
 
 			if (compress) {
diff --git a/missing b/missing
index 28055d2..1c8ff70 100755
--- a/missing
+++ b/missing
@@ -1,10 +1,10 @@
 #! /bin/sh
 # Common stub for a few missing GNU programs while installing.
 
-scriptversion=2009-04-28.21; # UTC
+scriptversion=2006-05-10.23
 
-# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006,
-# 2008, 2009 Free Software Foundation, Inc.
+# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006
+#   Free Software Foundation, Inc.
 # Originally by Fran,cois Pinard <pinard at iro.umontreal.ca>, 1996.
 
 # This program is free software; you can redistribute it and/or modify
@@ -18,7 +18,9 @@ scriptversion=2009-04-28.21; # UTC
 # 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/>.
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+# 02110-1301, USA.
 
 # As a special exception to the GNU General Public License, if you
 # distribute this file as part of a program that contains a
@@ -87,9 +89,6 @@ Supported PROGRAM values:
   tar          try tar, gnutar, gtar, then tar without non-portable flags
   yacc         create \`y.tab.[ch]', if possible, from existing .[ch]
 
-Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and
-\`g' are ignored when checking the name.
-
 Send bug reports to <bug-automake at gnu.org>."
     exit $?
     ;;
@@ -107,22 +106,15 @@ Send bug reports to <bug-automake at gnu.org>."
 
 esac
 
-# normalize program name to check for.
-program=`echo "$1" | sed '
-  s/^gnu-//; t
-  s/^gnu//; t
-  s/^g//; t'`
-
 # Now exit if we have it, but it failed.  Also exit now if we
 # don't have it and --version was passed (most likely to detect
-# the program).  This is about non-GNU programs, so use $1 not
-# $program.
+# the program).
 case $1 in
-  lex*|yacc*)
+  lex|yacc)
     # Not GNU programs, they don't have --version.
     ;;
 
-  tar*)
+  tar)
     if test -n "$run"; then
        echo 1>&2 "ERROR: \`tar' requires --run"
        exit 1
@@ -146,7 +138,7 @@ esac
 
 # If it does not exist, or fails to run (possibly an outdated version),
 # try to emulate it.
-case $program in
+case $1 in
   aclocal*)
     echo 1>&2 "\
 WARNING: \`$1' is $msg.  You should only need it if
@@ -156,7 +148,7 @@ WARNING: \`$1' is $msg.  You should only need it if
     touch aclocal.m4
     ;;
 
-  autoconf*)
+  autoconf)
     echo 1>&2 "\
 WARNING: \`$1' is $msg.  You should only need it if
          you modified \`${configure_ac}'.  You might want to install the
@@ -165,7 +157,7 @@ WARNING: \`$1' is $msg.  You should only need it if
     touch configure
     ;;
 
-  autoheader*)
+  autoheader)
     echo 1>&2 "\
 WARNING: \`$1' is $msg.  You should only need it if
          you modified \`acconfig.h' or \`${configure_ac}'.  You might want
@@ -195,7 +187,7 @@ WARNING: \`$1' is $msg.  You should only need it if
 	   while read f; do touch "$f"; done
     ;;
 
-  autom4te*)
+  autom4te)
     echo 1>&2 "\
 WARNING: \`$1' is needed, but is $msg.
          You might have modified some files without having the
@@ -218,7 +210,7 @@ WARNING: \`$1' is needed, but is $msg.
     fi
     ;;
 
-  bison*|yacc*)
+  bison|yacc)
     echo 1>&2 "\
 WARNING: \`$1' $msg.  You should only need it if
          you modified a \`.y' file.  You may need the \`Bison' package
@@ -248,7 +240,7 @@ WARNING: \`$1' $msg.  You should only need it if
     fi
     ;;
 
-  lex*|flex*)
+  lex|flex)
     echo 1>&2 "\
 WARNING: \`$1' is $msg.  You should only need it if
          you modified a \`.l' file.  You may need the \`Flex' package
@@ -271,7 +263,7 @@ WARNING: \`$1' is $msg.  You should only need it if
     fi
     ;;
 
-  help2man*)
+  help2man)
     echo 1>&2 "\
 WARNING: \`$1' is $msg.  You should only need it if
 	 you modified a dependency of a manual page.  You may need the
@@ -285,11 +277,11 @@ WARNING: \`$1' is $msg.  You should only need it if
     else
 	test -z "$file" || exec >$file
 	echo ".ab help2man is required to generate this page"
-	exit $?
+	exit 1
     fi
     ;;
 
-  makeinfo*)
+  makeinfo)
     echo 1>&2 "\
 WARNING: \`$1' is $msg.  You should only need it if
          you modified a \`.texi' or \`.texinfo' file, or any other file
@@ -318,7 +310,7 @@ WARNING: \`$1' is $msg.  You should only need it if
     touch $file
     ;;
 
-  tar*)
+  tar)
     shift
 
     # We have already tried tar in the generic part.
@@ -371,6 +363,5 @@ exit 0
 # eval: (add-hook 'write-file-hooks 'time-stamp)
 # time-stamp-start: "scriptversion="
 # time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
-# time-stamp-end: "; # UTC"
+# time-stamp-end: "$"
 # End:
diff --git a/mono/metadata/ChangeLog b/mono/metadata/ChangeLog
index a052191..8136892 100644
--- a/mono/metadata/ChangeLog
+++ b/mono/metadata/ChangeLog
@@ -1,3 +1,17 @@
+2011-08-04  Mark Probst  <mark.probst at gmail.com>
+
+	[sgen] Enqueue finalizers after update the pointer.
+
+	If the object was forwarded we read a bogus vtable and hence a
+	bogus klass.
+
+2011-08-03  Marek Habersack  <grendel at twistedcode.net>
+
+	[runtime, globalization] Fix for Xamarin bug #161. Fix culture
+	info data for certain locale short date formats
+
+	Modified locales which don't use '/' as the short date separator.
+
 2011-07-26  Rodrigo Kumpera  <kumpera at gmail.com>
 
 	OSX won't expose IPV6_PKTINFO unless __APPLE_USE_RFC_3542 is
diff --git a/mono/metadata/culture-info-tables.h b/mono/metadata/culture-info-tables.h
index b328319..4a737b2 100644
--- a/mono/metadata/culture-info-tables.h
+++ b/mono/metadata/culture-info-tables.h
@@ -10,1153 +10,1153 @@
 
 static const DateTimeFormatEntry datetime_format_entries [] = {
 	{1, 24, 37, 46, 56, 63, 74, 81, 84, {87, 98, 113, 130, 147, 160, 173}, {184, 187, 190, 193, 196, 199, 202}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, 0, 6, 344, 346, {348,37},{357,24},{370,56},{376,46}},
-	{387, 409, 422, 438, 370, 447, 457, 465, 468, {471, 484, 505, 520, 531, 550, 561}, {574, 582, 590, 596, 602, 612, 620}, {628, 641, 658, 667, 678, 685, 692, 699, 712, 731, 748, 763, 343}, {780, 786, 658, 794, 678, 685, 692, 802, 810, 818, 826, 836, 343}, 0, 1, 344, 346, {348,844,422},{357,409},{370},{376,438}},
-	{853, 876, 888, 376, 370, 447, 457, 465, 468, {897, 906, 914, 922, 931, 938, 948}, {957, 961, 965, 969, 973, 977, 981}, {985, 991, 998, 1004, 1010, 1015, 1020, 1027, 1033, 1042, 1050, 1059, 343}, {1068, 1073, 998, 1078, 1010, 1015, 1083, 1088, 1092, 1097, 1102, 1107, 343}, 0, 0, 344, 346, {348,888},{357,876},{370},{376}},
-	{1112, 357, 348, 376, 370, 1136, 1146, 1154, 1161, {1168, 1178, 1188, 1198, 1208, 1218, 1228}, {1238, 1242, 1246, 1250, 1254, 1258, 1262}, {1266, 1273, 1280, 1287, 1294, 1301, 1308, 1315, 1322, 1329, 1336, 1346, 343}, {1266, 1273, 1280, 1287, 1294, 1301, 1308, 1315, 1322, 1329, 1336, 1346, 343}, 0, 0, 344, 346, {348},{357},{370},{376}},
-	{1356, 1379, 1392, 1399, 1409, 447, 1414, 1422, 1427, {1432, 1440, 1450, 1458, 1466, 1475, 1482}, {1489, 1492, 1495, 1499, 1502, 1506, 1510}, {1513, 1519, 1525, 1533, 1539, 1547, 1555, 1565, 1571, 1579, 1587, 1596, 343}, {1605, 1607, 1610, 1614, 1617, 1619, 1622, 1626, 1631, 1634, 1636, 1639, 343}, 0, 1, 344, 346, {348,1392},{357,1379},{370,1409},{376,1399}},
-	{1643, 1664, 1676, 438, 370, 447, 1687, 465, 468, {1696, 1704, 1711, 1719, 1726, 1734, 1741}, {1749, 1754, 1758, 1762, 1766, 1770, 1774}, {1779, 1786, 1794, 1800, 1806, 1810, 1815, 1820, 1827, 1837, 1845, 1854, 343}, {1863, 1867, 1871, 1875, 1806, 1879, 1883, 1887, 1891, 1895, 1899, 1903, 343}, 0, 1, 344, 346, {348,1907,1676},{357,1664},{370},{376,438}},
-	{1916, 1379, 1938, 438, 370, 447, 1414, 1949, 1955, {1962, 1970, 1977, 1986, 1995, 2006, 2014}, {2022, 2025, 2028, 2031, 2034, 2037, 2040}, {2043, 2050, 2058, 2064, 2070, 2074, 2079, 2084, 2091, 2101, 2109, 2118, 343}, {2127, 2131, 2135, 2139, 2070, 2143, 2147, 2151, 2155, 2159, 2163, 2167, 343}, 0, 1, 344, 346, {348,844,1938},{357,1379},{370},{376,438}},
-	{2171, 409, 37, 2195, 56, 447, 457, 2206, 2211, {2216, 2231, 2246, 2257, 2272, 2285, 2304}, {2319, 2326, 2333, 2340, 2347, 2354, 2361}, {2368, 2389, 2412, 2427, 2444, 2455, 2470, 2485, 2504, 2527, 2546, 2565, 343}, {2586, 2593, 2600, 2607, 2614, 2621, 2630, 2639, 2646, 2653, 2660, 2667, 343}, 0, 1, 344, 346, {348,2674,37},{357,409},{370,56},{376,2685,2195}},
-	{2697, 2728, 2748, 2195, 2755, 447, 2763, 465, 468, {2770, 2777, 2784, 2792, 2802, 2811, 2818}, {2827, 2831, 2835, 2839, 2843, 2847, 2851}, {2855, 2863, 2872, 2064, 2878, 2882, 2887, 2084, 2091, 2892, 2109, 2900, 343}, {2127, 2131, 2909, 2139, 2878, 2143, 2147, 2151, 2155, 2913, 2163, 2917, 343}, 0, 0, 344, 346, {348,2748},{2728,2728,2921,2935,2955},{2755,2755,2970,1409,370},{2195,2195,2979,2991,438}},
-	{2999, 3033, 3055, 2979, 370, 3066, 3071, 3083, 3088, {3093, 3101, 3107, 3114, 3125, 3132, 3140}, {3148, 3152, 1871, 3156, 3161, 3165, 3169}, {3174, 3180, 3188, 1004, 3194, 3199, 3205, 3211, 3218, 1042, 3229, 3239, 343}, {3249, 1867, 1871, 3253, 3257, 1879, 1883, 3261, 1891, 3265, 1899, 3269, 343}, 0, 1, 344, 346, {348,3273,3055},{357,3033},{370},{376,2979}},
-	{3281, 3306, 3323, 2991, 370, 3332, 3345, 465, 468, {3357, 3367, 3377, 3385, 3397, 3405, 3415}, {3424, 3427, 3430, 3433, 3436, 3439, 3442}, {3445, 3454, 3463, 3473, 3482, 3491, 3500, 3510, 3517, 3525, 3533, 3543, 343}, {3552, 3558, 3564, 3571, 3577, 3583, 3589, 3596, 3600, 3605, 3610, 3617, 343}, 0, 1, 344, 346, {348,3323},{357,3306},{370},{376,2991}},
-	{3623, 3649, 888, 438, 370, 447, 74, 465, 468, {3666, 3675, 3681, 3687, 3696, 3702, 3711}, {3718, 3723, 3728, 3733, 3738, 3743, 3748}, {3753, 3761, 3770, 3775, 3781, 3785, 3790, 3798, 3804, 3814, 1050, 3822, 343}, {3832, 3838, 3770, 3845, 3781, 3785, 3850, 3798, 3856, 1097, 1102, 3862, 343}, 0, 0, 344, 346, {888,3868,3273},{357,876,3649},{370},{376,438}},
-	{3878, 876, 2674, 438, 370, 447, 74, 465, 468, {3899, 3917, 3931, 3949, 3967, 3985, 4001}, {4008, 4011, 4014, 4017, 4020, 4023, 4026}, {4029, 4040, 4053, 4060, 4071, 4078, 4087, 4096, 4109, 4122, 4137, 4150, 343}, {4161, 4168, 4053, 4175, 4071, 4182, 4189, 4196, 4203, 4210, 4217, 4224, 343}, 0, 0, 344, 346, {348,888,2674},{357,876},{370},{376,438}},
-	{4231, 4253, 4267, 2991, 1409, 4281, 4292, 4300, 4303, {4306, 4316, 4324, 4329, 4336, 4349, 4357}, {1617, 4365, 4367, 4369, 4373, 4376, 4378}, {4382, 4390, 4399, 4408, 4417, 4424, 4432, 4440, 4450, 4461, 1845, 1854, 343}, {4470, 4475, 4481, 4488, 4494, 4500, 4506, 4512, 4517, 4524, 1102, 4529, 343}, 0, 1, 344, 346, {348,4534,4267},{357,4253},{370,1409},{376,1399,2991}},
-	{1916, 1379, 3323, 438, 370, 447, 1414, 465, 468, {4546, 4557, 4568, 4582, 4596, 4608, 4620}, {4632, 4636, 4641, 4646, 4651, 4655, 4660}, {4664, 4672, 3770, 4681, 4688, 4693, 4700, 4707, 1827, 4461, 4715, 4725, 343}, {1863, 1867, 1871, 1875, 4688, 4734, 4739, 4744, 1891, 1895, 4750, 4755, 343}, 0, 0, 344, 346, {348,3323},{357,1379},{370},{376,438}},
-	{4759, 409, 888, 376, 370, 447, 74, 4783, 4786, {4789, 4798, 4806, 4815, 4826, 4835, 4844}, {3148, 3152, 1871, 4851, 4855, 4859, 4863}, {4867, 4875, 3188, 4884, 4891, 4898, 4905, 3211, 4912, 4922, 1050, 4930, 343}, {4939, 1867, 1871, 1875, 4943, 4947, 4951, 3261, 4955, 4959, 1899, 3269, 343}, 0, 1, 344, 346, {348,888},{357,409},{370},{376}},
-	{4963, 4993, 5015, 2991, 1409, 5026, 5042, 5055, 5062, {5069, 5079, 5089, 5099, 5109, 5119, 5129}, {1238, 5139, 5143, 5147, 5151, 5155, 5159}, {5163, 5168, 5173, 5178, 5183, 5188, 5193, 5198, 5203, 5208, 5214, 5220, 343}, {5226, 5228, 5230, 5232, 5234, 5236, 5238, 5240, 5242, 5244, 5247, 5250, 343}, 0, 0, 344, 346, {5015,5015,348,5253,5260,5269,5288,5305},{4993,4993,5324,5348,5375},{1409,1409,370,5404,5412},{2991,438,5421,5432}},
-	{5444, 5497, 5524, 5533, 5559, 5577, 5594, 5608, 5615, {5622, 5632, 5642, 5652, 5662, 5672, 5682}, {5692, 5696, 5700, 5704, 5708, 5712, 5716}, {5720, 5725, 5730, 5735, 5740, 5745, 5750, 5755, 5760, 5765, 5771, 5777, 343}, {5720, 5725, 5730, 5735, 5740, 5745, 5750, 5755, 5760, 5765, 5771, 5777, 343}, 0, 0, 344, 346, {348,5524},{357,5497},{370,5559},{376,5533}},
-	{5783, 876, 5805, 1399, 1409, 447, 74, 465, 468, {5812, 5819, 5827, 5835, 5844, 5854, 5862}, {5871, 3427, 5874, 5877, 5880, 5883, 5886}, {5889, 5897, 5906, 1800, 5912, 1810, 1815, 5916, 1827, 1837, 1845, 1854, 343}, {1863, 1867, 5925, 1875, 5912, 1879, 1883, 1887, 1891, 1895, 1899, 1903, 343}, 0, 1, 344, 346, {348,5805},{357,876},{370,1409},{376,1399}},
-	{5929, 1379, 844, 5953, 5964, 447, 1414, 465, 468, {1696, 1704, 1711, 1719, 1726, 1734, 1741}, {5970, 3427, 3430, 5974, 3436, 5977, 5980}, {1779, 1786, 3770, 1800, 3781, 1810, 1815, 1820, 1827, 1837, 1845, 4725, 343}, {1863, 1867, 1871, 1875, 3781, 1879, 1883, 1887, 1891, 1895, 1899, 4755, 343}, 0, 1, 344, 346, {348,844},{357,1379},{370,5964},{376,5953}},
-	{5984, 876, 6005, 438, 370, 447, 74, 465, 468, {6016, 6026, 6040, 6047, 6054, 6063, 1482}, {6071, 6073, 6076, 6079, 6083, 6086, 2022}, {6089, 6098, 6103, 6110, 1806, 6120, 6129, 6136, 6146, 6156, 1587, 6169, 343}, {6179, 6183, 1871, 6187, 1806, 6191, 6195, 6199, 6203, 6207, 6212, 6216, 343}, 0, 1, 344, 346, {348,5524,6005},{357,876},{370},{376,438}},
-	{6220, 3033, 1676, 376, 370, 3066, 3071, 465, 468, {3093, 6253, 6267, 6280, 6293, 6306, 3140}, {3148, 6318, 6322, 6326, 6330, 6334, 3169}, {6338, 6346, 6356, 1004, 6363, 6368, 6374, 3211, 6380, 6389, 6397, 6406, 343}, {1863, 6415, 1871, 3253, 3781, 1879, 1883, 3261, 4955, 6419, 1899, 6423, 343}, 0, 0, 344, 346, {348,1676},{357,3033},{370},{376}},
-	{5984, 876, 1938, 438, 370, 447, 74, 465, 468, {6427, 6437, 6442, 6449, 6458, 6462, 6469}, {6480, 6482, 6484, 2031, 6487, 1617, 6489}, {6491, 6500, 6510, 6517, 3781, 6525, 6531, 1820, 6537, 6548, 6558, 6568, 343}, {6578, 2131, 2909, 2139, 2070, 6582, 6586, 2151, 2155, 2913, 2163, 2917, 343}, 0, 1, 344, 346, {348,1938},{357,876},{370},{376,438}},
-	{6590, 6616, 1938, 2991, 1409, 6634, 74, 465, 468, {6650, 6673, 505, 6696, 6707, 6722, 6737}, {6752, 6757, 6762, 6767, 6772, 6777, 6782}, {6787, 6800, 6815, 6824, 6837, 6844, 6853, 6862, 6875, 6892, 6907, 6920, 343}, {6935, 6942, 6949, 6956, 678, 6963, 6970, 6977, 6984, 6991, 6998, 7005, 343}, 0, 1, 344, 346, {348,844,1938},{357,6616},{370,1409},{376,1399,2991}},
-	{7012, 7034, 3323, 2991, 370, 4281, 1146, 465, 468, {7048, 7057, 7069, 7076, 7084, 7094, 7100}, {7107, 7111, 7115, 7119, 7123, 7128, 7132}, {7136, 7146, 7155, 7163, 7171, 7179, 7186, 7193, 7201, 1587, 7207, 7215, 343}, {7224, 7228, 7232, 7237, 7241, 6195, 7245, 7249, 7253, 6212, 7257, 7261, 343}, 0, 1, 344, 346, {348,7265,3323},{357,7034},{370},{376,2991}},
-	{7276, 1379, 7297, 2991, 1409, 447, 1414, 465, 468, {7308, 7316, 7325, 7332, 7339, 7348, 7355}, {7362, 7365, 7368, 7371, 7374, 7378, 2022}, {4382, 4390, 7381, 4681, 7387, 4734, 4739, 1820, 1827, 4461, 1845, 1854, 343}, {1863, 1867, 1871, 1875, 7387, 4734, 4739, 1887, 1891, 1895, 1899, 1903, 343}, 0, 1, 344, 346, {348,3323,7297},{357,1379},{370,1409},{376,1399,2991}},
-	{7392, 409, 6005, 7416, 7427, 447, 457, 7434, 7437, {7440, 7447, 7456, 7465, 7477, 7485, 7494}, {7504, 7508, 2909, 7513, 7518, 7522, 7526}, {7530, 7536, 3770, 7543, 1806, 7549, 7557, 7564, 7570, 7578, 7584, 7592, 343}, {2127, 7600, 2909, 7604, 7608, 7612, 7616, 7620, 7526, 7624, 7628, 7633, 343}, 0, 1, 344, 346, {348,5524,6005},{357,409},{370,7427},{376,7637,7416}},
-	{7649, 7677, 6005, 5953, 5964, 447, 74, 7694, 7697, {7700, 7708, 7716, 1719, 1726, 1734, 7723}, {7731, 7735, 3430, 5974, 3436, 5977, 7739}, {5889, 5897, 3770, 1800, 1806, 1810, 1815, 7743, 1827, 1837, 1845, 1854, 343}, {1863, 1867, 1871, 1875, 1806, 1879, 1883, 1887, 1891, 1895, 1899, 1903, 343}, 0, 1, 344, 346, {348,6005},{357,7677},{370,5964},{376,5953}},
-	{7751, 876, 37, 2991, 1409, 447, 74, 7772, 7803, {7834, 7865, 7893, 7921, 7940, 7974, 7999}, {8024, 8032, 8037, 8042, 8047, 8055, 8060}, {8065, 8084, 8115, 8134, 8153, 8175, 8200, 8222, 8244, 8266, 8285, 8313, 343}, {8335, 8344, 8353, 8365, 8377, 8386, 8398, 8407, 8416, 8425, 8434, 8443, 343}, 0, 0, 344, 346, {348,37},{357,876},{370,1409},{376,8452,2991}},
-	{8492, 8519, 1938, 438, 370, 447, 457, 465, 468, {8537, 8543, 8553, 8559, 8570, 8580, 8585}, {8595, 8599, 8603, 8607, 8612, 8616, 8620}, {8624, 8629, 8636, 8641, 8647, 8654, 8662, 8669, 8678, 8685, 8690, 8697, 343}, {8705, 8709, 2909, 8714, 2878, 8718, 8722, 8726, 8731, 8735, 8739, 8743, 343}, 0, 1, 344, 346, {348,1938},{357,8519},{370},{376,438}},
-	{1112, 357, 348, 376, 370, 1136, 1146, 465, 468, {8747, 8754, 8760, 8767, 8772, 8778, 8784}, {8790, 8794, 8798, 8802, 8806, 8810, 8814}, {8818, 8826, 8835, 2064, 8841, 2074, 2079, 8845, 2091, 2101, 2109, 8853, 343}, {2127, 2131, 2909, 2139, 8841, 2143, 2147, 8862, 2155, 2159, 2163, 8866, 343}, 0, 0, 344, 346, {348},{357},{370},{376}},
-	{8870, 876, 1938, 2991, 370, 8890, 74, 465, 468, {8906, 8919, 8938, 8955, 8968, 8981, 8997}, {9010, 6757, 6762, 6767, 6772, 6777, 6782}, {9015, 9026, 9039, 9054, 9067, 9080, 9093, 9104, 9117, 9132, 9145, 9164, 343}, {9177, 9184, 9191, 9198, 9207, 9216, 9225, 9232, 9241, 9248, 9257, 9266, 343}, 0, 1, 344, 346, {348,844,1938},{357,876},{370},{376,2991}},
-	{9275, 876, 1392, 5953, 5964, 447, 74, 465, 468, {9298, 9313, 9334, 9349, 9362, 9375, 9390}, {9403, 9408, 9413, 9418, 9423, 9428, 9433}, {9438, 9455, 9464, 9479, 678, 9496, 9511, 9524, 9539, 9556, 9577, 9594, 343}, {9609, 9184, 9616, 9623, 678, 9630, 9637, 9644, 9241, 9651, 9658, 9665, 343}, 0, 1, 344, 346, {348,1392},{357,876},{370,5964},{376,5953}},
-	{9672, 9694, 3323, 2991, 1409, 447, 1687, 465, 468, {9708, 9716, 9727, 9733, 9739, 9748, 1482}, {7107, 7111, 1766, 9754, 7123, 7128, 9758}, {1779, 1786, 7381, 1800, 1806, 9762, 9768, 9774, 1827, 1837, 1845, 1854, 343}, {1863, 1867, 1871, 1875, 1806, 1879, 1883, 9781, 1891, 1895, 1899, 1903, 343}, 0, 1, 344, 346, {348,9785,3323},{357,9694},{370,1409},{376,1399,2991}},
-	{8870, 876, 9792, 2991, 1409, 447, 9802, 465, 468, {9810, 9821, 9832, 9843, 9854, 9865, 9871}, {4376, 9880, 9882, 4367, 6071, 9884, 6482}, {9886, 9894, 9903, 9910, 3781, 9917, 9923, 1820, 1827, 9929, 1845, 9938, 343}, {9948, 9953, 9903, 1875, 3781, 9917, 9923, 1887, 9959, 1895, 1899, 9964, 343}, 0, 1, 344, 346, {348,844,9792},{357,876},{370,1409},{376,1399,2991}},
-	{9969, 9998, 4534, 2991, 370, 10019, 1414, 465, 468, {10037, 10048, 10058, 10067, 10078, 10090, 10101}, {10111, 4376, 10114, 9882, 10116, 10118, 6489}, {10121, 10131, 1794, 10142, 10151, 10157, 10165, 10173, 10181, 10192, 10201, 10211, 343}, {2127, 2131, 2909, 2139, 2070, 10221, 10226, 2151, 2155, 2159, 2163, 2917, 343}, 0, 1, 344, 346, {348,10231,4534},{357,9998},{370},{376,2991}},
-	{10238, 10271, 7265, 376, 370, 10293, 10308, 465, 468, {10320, 10332, 10344, 10356, 10370, 10385, 10398}, {10412, 10415, 10418, 10421, 10424, 6073, 7374}, {10427, 10434, 10442, 10447, 10458, 10468, 10478, 10485, 10497, 10506, 10513, 10524, 343}, {10534, 10538, 10542, 10546, 10550, 10554, 10558, 10562, 10566, 10570, 10574, 10578, 343}, 0, 1, 344, 346, {348,7265},{357,10271},{370},{376}},
-	{10582, 876, 10606, 2979, 370, 447, 74, 10615, 10622, {10629, 10645, 10658, 10674, 10691, 10709, 10718}, {10727, 10731, 10735, 10739, 10743, 10747, 10751}, {10755, 10768, 229, 10779, 10790, 10795, 10804, 10815, 10822, 10837, 10848, 10861, 343}, {10874, 10881, 10888, 10895, 10902, 10909, 10916, 10815, 10923, 10930, 10937, 10944, 343}, 0, 0, 344, 346, {348,10951,10606},{357,876},{370},{376,10961,2979}},
-	{10974, 409, 2674, 2195, 370, 447, 457, 10998, 11001, {11004, 11017, 11027, 11036, 11046, 11057, 11068}, {11080, 11083, 11088, 11093, 11098, 11103, 11108}, {11113, 11126, 11137, 11147, 11158, 11170, 11182, 11195, 11207, 11220, 11235, 11256, 343}, {11275, 11281, 11287, 11293, 11299, 11305, 11311, 11317, 11323, 11329, 11336, 11343, 343}, 0, 1, 344, 346, {348,2674},{357,409},{370},{376,2195}},
-	{11350, 2921, 1938, 2991, 370, 447, 2763, 11372, 11380, {11388, 11401, 11422, 11441, 11462, 11481, 11494}, {11505, 11512, 11519, 11526, 11533, 11540, 11547}, {11554, 11571, 11588, 11597, 11608, 11619, 11632, 11645, 11660, 11679, 11698, 11715, 343}, {11734, 11741, 11748, 11755, 11762, 11769, 11776, 11783, 11790, 11797, 11804, 11811, 343}, 0, 1, 344, 346, {348,11818,1938},{357,2921},{370},{376,2991}},
-	{1112, 357, 348, 376, 370, 1136, 1146, 465, 468, {11827, 11835, 11846, 11856, 11867, 11876, 11885}, {11895, 11898, 11901, 11904, 11907, 11910, 11913}, {11916, 11926, 11934, 11942, 11950, 11958, 11965, 11973, 11981, 11988, 11994, 12001, 343}, {12009, 12013, 1871, 12017, 3781, 12021, 12025, 12029, 12033, 12037, 12041, 12045, 343}, 0, 0, 344, 346, {348},{357},{370},{376}},
-	{387, 409, 1938, 438, 370, 447, 457, 465, 468, {12049, 484, 505, 6696, 12062, 12079, 12090}, {574, 582, 590, 12103, 12111, 612, 12119}, {12127, 641, 658, 667, 12142, 12149, 12158, 699, 712, 731, 748, 763, 343}, {12167, 786, 12175, 794, 12183, 12191, 12199, 802, 12207, 818, 826, 12217, 343}, 0, 1, 344, 346, {348,12229,1938},{357,409},{370},{376,438}},
-	{1112, 357, 348, 376, 370, 1136, 1146, 12237, 12240, {12243, 12250, 12258, 12266, 12275, 12285, 12292}, {2022, 6484, 2028, 12301, 2034, 12304, 2040}, {12307, 12316, 12326, 2064, 8841, 12332, 12338, 12344, 2091, 2101, 2109, 8853, 343}, {2127, 2131, 2909, 2139, 8841, 2143, 2147, 2151, 2155, 2159, 2163, 8866, 343}, 0, 0, 344, 346, {348},{357},{370},{376}},
-	{12353, 12373, 348, 376, 370, 12382, 1146, 12389, 12405, {5226, 5228, 5230, 5232, 5234, 5236, 5238}, {5226, 5228, 5230, 5232, 5234, 5236, 5238}, {5226, 5228, 5230, 5232, 5234, 5236, 5238, 5240, 5242, 5244, 5247, 5250, 343}, {5226, 5228, 5230, 5232, 5234, 5236, 5238, 5240, 5242, 5244, 5247, 5250, 343}, 0, 0, 344, 346, {348},{357,12373},{370},{376}},
-	{12427, 1664, 1907, 376, 370, 447, 457, 465, 468, {4546, 12450, 12461, 12471, 12481, 12491, 12505}, {4632, 4636, 12517, 12522, 12526, 12531, 12536}, {1779, 1786, 3770, 4681, 3781, 1810, 1815, 1820, 1827, 1837, 1845, 4725, 343}, {1863, 1867, 1871, 1875, 3781, 1879, 1883, 1887, 1891, 1895, 1899, 4755, 343}, 0, 0, 344, 346, {348,1907},{357,1664},{370},{376}},
-	{1112, 357, 348, 376, 370, 1136, 1146, 12540, 12568, {12590, 12609, 12628, 12650, 12669, 12691, 12716}, {12735, 12745, 12755, 12768, 12778, 12791, 12807}, {12817, 12833, 12849, 12865, 12884, 12891, 12901, 12917, 12933, 12955, 12977, 12996, 343}, {12817, 12833, 12849, 12865, 12884, 12891, 12901, 12917, 12933, 12955, 12977, 12996, 343}, 0, 0, 344, 346, {348},{357},{370},{376}},
-	{1112, 357, 348, 376, 370, 1136, 1146, 465, 468, {13018, 13027, 13036, 13044, 13053, 13062, 13069}, {13078, 13082, 13086, 13090, 13094, 13098, 13102}, {8818, 8826, 13106, 13112, 8841, 2074, 13119, 13125, 13132, 13141, 13148, 13156, 343}, {2127, 2131, 2909, 2139, 8841, 2143, 2147, 13164, 2155, 2159, 2163, 8866, 343}, 0, 6, 344, 346, {348},{357},{370},{376}},
-	{1112, 357, 348, 376, 370, 1136, 1146, 13168, 13210, {13252, 13271, 13290, 13312, 13331, 13353, 13378}, {13397, 13407, 13417, 13430, 13440, 13453, 13469}, {13479, 13507, 13535, 13551, 13570, 13577, 13587, 13603, 13619, 13647, 13669, 13691, 343}, {13716, 13735, 13535, 13551, 13570, 13577, 13587, 13603, 13754, 13770, 13786, 13796, 343}, 0, 0, 344, 346, {348},{357},{370},{376}},
-	{1112, 357, 348, 376, 370, 1136, 1146, 13809, 13822, {13835, 13854, 13876, 13901, 13917, 13939, 13958}, {13968, 13975, 13982, 13989, 13996, 14003, 14010}, {14014, 14030, 14055, 14074, 14093, 14100, 14113, 14126, 14145, 14176, 14201, 14223, 343}, {14248, 14256, 14270, 14284, 14093, 14100, 14113, 14295, 14303, 14317, 14328, 14336, 343}, 0, 0, 344, 346, {348},{357},{370},{376}},
-	{1112, 357, 348, 376, 370, 1136, 1146, 14347, 14375, {14397, 14419, 14441, 14466, 14488, 14513, 14541}, {14563, 14573, 14583, 14596, 14606, 14619, 14635}, {14645, 14661, 14686, 14705, 14727, 14734, 14747, 14760, 14779, 14810, 14835, 14854, 343}, {14645, 14661, 14686, 14705, 14727, 14734, 14747, 14760, 14779, 14810, 14835, 14854, 343}, 0, 0, 344, 346, {348},{357},{370},{376}},
-	{1112, 357, 348, 376, 370, 1136, 1146, 14879, 14907, {14929, 14948, 14967, 14989, 15008, 15030, 15055}, {15074, 15079, 15087, 15095, 15103, 15111, 15119}, {15130, 15146, 15171, 15190, 15212, 15219, 15232, 15245, 15264, 15292, 15317, 15339, 343}, {15130, 15146, 15171, 15190, 15212, 15219, 15232, 15245, 15264, 15292, 15317, 15339, 343}, 0, 0, 344, 346, {348},{357},{370},{376}},
-	{1112, 357, 348, 376, 370, 1136, 1146, 15364, 15376, {12590, 12609, 15388, 12650, 12669, 12691, 12716}, {12735, 12745, 15410, 12768, 12778, 12791, 12807}, {15423, 15448, 12849, 15473, 15492, 12891, 15499, 15512, 15528, 15556, 15578, 15606, 343}, {15423, 15448, 12849, 15473, 15492, 12891, 15499, 15512, 15528, 15556, 15578, 15606, 343}, 0, 0, 344, 346, {348},{357},{370},{376}},
-	{1112, 357, 348, 376, 370, 1136, 1146, 465, 468, {15628, 15636, 15641, 15648, 15658, 15664, 15671}, {15679, 15683, 2909, 15687, 15692, 15696, 15700}, {15705, 15713, 15722, 15728, 15734, 15739, 15745, 15751, 15758, 15767, 15775, 15784, 343}, {15793, 2131, 2909, 15797, 2070, 15801, 15806, 13164, 15810, 15814, 2163, 2917, 343}, 0, 0, 344, 346, {348},{357},{370},{376}},
-	{1112, 357, 348, 376, 370, 1136, 1146, 15364, 15376, {15818, 12609, 15846, 12650, 12669, 12691, 12716}, {12735, 12745, 15410, 12768, 12778, 12791, 12807}, {15423, 15865, 12849, 15473, 15492, 12891, 15499, 15512, 15528, 15556, 15578, 15606, 343}, {15423, 15448, 12849, 15473, 15492, 12891, 15499, 15512, 15528, 15556, 15578, 15606, 343}, 0, 0, 344, 346, {348},{357},{370},{376}},
+	{387, 409, 422, 438, 370, 447, 457, 465, 468, {471, 484, 505, 520, 531, 550, 561}, {574, 582, 590, 596, 602, 612, 620}, {628, 641, 658, 667, 678, 685, 692, 699, 712, 731, 748, 763, 343}, {780, 786, 658, 794, 678, 685, 692, 802, 810, 818, 826, 836, 343}, 0, 1, 844, 346, {348,846,422},{357,409},{370},{376,438}},
+	{855, 878, 890, 376, 370, 447, 457, 465, 468, {899, 908, 916, 924, 933, 940, 950}, {959, 963, 967, 971, 975, 979, 983}, {987, 993, 1000, 1006, 1012, 1017, 1022, 1029, 1035, 1044, 1052, 1061, 343}, {1070, 1075, 1000, 1080, 1012, 1017, 1085, 1090, 1094, 1099, 1104, 1109, 343}, 0, 0, 344, 346, {348,890},{357,878},{370},{376}},
+	{1114, 357, 348, 376, 370, 1138, 1148, 1156, 1163, {1170, 1180, 1190, 1200, 1210, 1220, 1230}, {1240, 1244, 1248, 1252, 1256, 1260, 1264}, {1268, 1275, 1282, 1289, 1296, 1303, 1310, 1317, 1324, 1331, 1338, 1348, 343}, {1268, 1275, 1282, 1289, 1296, 1303, 1310, 1317, 1324, 1331, 1338, 1348, 343}, 0, 0, 344, 346, {348},{357},{370},{376}},
+	{1358, 1381, 1394, 1401, 1411, 447, 1416, 1424, 1429, {1434, 1442, 1452, 1460, 1468, 1477, 1484}, {1491, 1494, 1497, 1501, 1504, 1508, 1512}, {1515, 1521, 1527, 1535, 1541, 1549, 1557, 1567, 1573, 1581, 1589, 1598, 343}, {1607, 1609, 1612, 1616, 1619, 1621, 1624, 1628, 1633, 1636, 1638, 1641, 343}, 0, 1, 344, 346, {348,1394},{357,1381},{370,1411},{376,1401}},
+	{1645, 1666, 1678, 438, 370, 447, 1689, 465, 468, {1698, 1706, 1713, 1721, 1728, 1736, 1743}, {1751, 1756, 1760, 1764, 1768, 1772, 1776}, {1781, 1788, 1796, 1802, 1808, 1812, 1817, 1822, 1829, 1839, 1847, 1856, 343}, {1865, 1869, 1873, 1877, 1808, 1881, 1885, 1889, 1893, 1897, 1901, 1905, 343}, 0, 1, 1909, 346, {348,1911,1678},{357,1666},{370},{376,438}},
+	{1920, 1381, 1942, 438, 370, 447, 1416, 1953, 1959, {1966, 1974, 1981, 1990, 1999, 2010, 2018}, {2026, 2029, 2032, 2035, 2038, 2041, 2044}, {2047, 2054, 2062, 2068, 2074, 2078, 2083, 2088, 2095, 2105, 2113, 2122, 343}, {2131, 2135, 2139, 2143, 2074, 2147, 2151, 2155, 2159, 2163, 2167, 2171, 343}, 0, 1, 844, 346, {348,846,1942},{357,1381},{370},{376,438}},
+	{2175, 409, 37, 2199, 56, 447, 457, 2210, 2215, {2220, 2235, 2250, 2261, 2276, 2289, 2308}, {2323, 2330, 2337, 2344, 2351, 2358, 2365}, {2372, 2393, 2416, 2431, 2448, 2459, 2474, 2489, 2508, 2531, 2550, 2569, 343}, {2590, 2597, 2604, 2611, 2618, 2625, 2634, 2643, 2650, 2657, 2664, 2671, 343}, 0, 1, 344, 346, {348,2678,37},{357,409},{370,56},{376,2689,2199}},
+	{2701, 2732, 2752, 2199, 2759, 447, 2767, 465, 468, {2774, 2781, 2788, 2796, 2806, 2815, 2822}, {2831, 2835, 2839, 2843, 2847, 2851, 2855}, {2859, 2867, 2876, 2068, 2882, 2886, 2891, 2088, 2095, 2896, 2113, 2904, 343}, {2131, 2135, 2913, 2143, 2882, 2147, 2151, 2155, 2159, 2917, 2167, 2921, 343}, 0, 0, 344, 346, {348,2752},{2732,2732,2925,2939,2959},{2759,2759,2974,1411,370},{2199,2199,2983,2995,438}},
+	{3003, 3037, 3059, 2983, 370, 3070, 3075, 3087, 3092, {3097, 3105, 3111, 3118, 3129, 3136, 3144}, {3152, 3156, 1873, 3160, 3165, 3169, 3173}, {3178, 3184, 3192, 1006, 3198, 3203, 3209, 3215, 3222, 1044, 3233, 3243, 343}, {3253, 1869, 1873, 3257, 3261, 1881, 1885, 3265, 1893, 3269, 1901, 3273, 343}, 0, 1, 344, 346, {348,3277,3059},{357,3037},{370},{376,2983}},
+	{3285, 3310, 3327, 2995, 370, 3336, 3349, 465, 468, {3361, 3371, 3381, 3389, 3401, 3409, 3419}, {3428, 3431, 3434, 3437, 3440, 3443, 3446}, {3449, 3458, 3467, 3477, 3486, 3495, 3504, 3514, 3521, 3529, 3537, 3547, 343}, {3556, 3562, 3568, 3575, 3581, 3587, 3593, 3600, 3604, 3609, 3614, 3621, 343}, 0, 1, 844, 346, {348,3327},{357,3310},{370},{376,2995}},
+	{3627, 3653, 890, 438, 370, 447, 74, 465, 468, {3670, 3679, 3685, 3691, 3700, 3706, 3715}, {3722, 3727, 3732, 3737, 3742, 3747, 3752}, {3757, 3765, 3774, 3779, 3785, 3789, 3794, 3802, 3808, 3818, 1052, 3826, 343}, {3836, 3842, 3774, 3849, 3785, 3789, 3854, 3802, 3860, 1099, 1104, 3866, 343}, 0, 0, 344, 346, {890,3872,3277},{357,878,3653},{370},{376,438}},
+	{3882, 878, 2678, 438, 370, 447, 74, 465, 468, {3903, 3921, 3935, 3953, 3971, 3989, 4005}, {4012, 4015, 4018, 4021, 4024, 4027, 4030}, {4033, 4044, 4057, 4064, 4075, 4082, 4091, 4100, 4113, 4126, 4141, 4154, 343}, {4165, 4172, 4057, 4179, 4075, 4186, 4193, 4200, 4207, 4214, 4221, 4228, 343}, 0, 0, 344, 346, {348,890,2678},{357,878},{370},{376,438}},
+	{4235, 4257, 4271, 2995, 1411, 4285, 4296, 4304, 4307, {4310, 4320, 4328, 4333, 4340, 4353, 4361}, {1619, 4369, 4371, 4373, 4377, 4380, 4382}, {4386, 4394, 4403, 4412, 4421, 4428, 4436, 4444, 4454, 4465, 1847, 1856, 343}, {4474, 4479, 4485, 4492, 4498, 4504, 4510, 4516, 4521, 4528, 1104, 4533, 343}, 0, 1, 4538, 346, {348,4541,4271},{357,4257},{370,1411},{376,1401,2995}},
+	{1920, 1381, 3327, 438, 370, 447, 1416, 465, 468, {4553, 4564, 4575, 4589, 4603, 4615, 4627}, {4639, 4643, 4648, 4653, 4658, 4662, 4667}, {4671, 4679, 3774, 4688, 4695, 4700, 4707, 4714, 1829, 4465, 4722, 4732, 343}, {1865, 1869, 1873, 1877, 4695, 4741, 4746, 4751, 1893, 1897, 4757, 4762, 343}, 0, 0, 844, 346, {348,3327},{357,1381},{370},{376,438}},
+	{4766, 409, 890, 376, 370, 447, 74, 4790, 4793, {4796, 4805, 4813, 4822, 4833, 4842, 4851}, {3152, 3156, 1873, 4858, 4862, 4866, 4870}, {4874, 4882, 3192, 4891, 4898, 4905, 4912, 3215, 4919, 4929, 1052, 4937, 343}, {4946, 1869, 1873, 1877, 4950, 4954, 4958, 3265, 4962, 4966, 1901, 3273, 343}, 0, 1, 344, 346, {348,890},{357,409},{370},{376}},
+	{4970, 5000, 5022, 2995, 1411, 5033, 5049, 5062, 5069, {5076, 5086, 5096, 5106, 5116, 5126, 5136}, {1240, 5146, 5150, 5154, 5158, 5162, 5166}, {5170, 5175, 5180, 5185, 5190, 5195, 5200, 5205, 5210, 5215, 5221, 5227, 343}, {5233, 5235, 5237, 5239, 5241, 5243, 5245, 5247, 5249, 5251, 5254, 5257, 343}, 0, 0, 344, 346, {5022,5022,348,5260,5267,5276,5295,5312},{5000,5000,5331,5355,5382},{1411,1411,370,5411,5419},{2995,438,5428,5439}},
+	{5451, 5504, 5531, 5540, 5566, 5584, 5601, 5615, 5622, {5629, 5639, 5649, 5659, 5669, 5679, 5689}, {5699, 5703, 5707, 5711, 5715, 5719, 5723}, {5727, 5732, 5737, 5742, 5747, 5752, 5757, 5762, 5767, 5772, 5778, 5784, 343}, {5727, 5732, 5737, 5742, 5747, 5752, 5757, 5762, 5767, 5772, 5778, 5784, 343}, 0, 0, 344, 346, {348,5531},{357,5504},{370,5566},{376,5540}},
+	{5790, 878, 5812, 1401, 1411, 447, 74, 465, 468, {5819, 5826, 5834, 5842, 5851, 5861, 5869}, {5878, 3431, 5881, 5884, 5887, 5890, 5893}, {5896, 5904, 5913, 1802, 5919, 1812, 1817, 5923, 1829, 1839, 1847, 1856, 343}, {1865, 1869, 5932, 1877, 5919, 1881, 1885, 1889, 1893, 1897, 1901, 1905, 343}, 0, 1, 344, 346, {348,5812},{357,878},{370,1411},{376,1401}},
+	{5936, 1381, 846, 5960, 5971, 447, 1416, 465, 468, {1698, 1706, 1713, 1721, 1728, 1736, 1743}, {5977, 3431, 3434, 5981, 3440, 5984, 5987}, {1781, 1788, 3774, 1802, 3785, 1812, 1817, 1822, 1829, 1839, 1847, 4732, 343}, {1865, 1869, 1873, 1877, 3785, 1881, 1885, 1889, 1893, 1897, 1901, 4762, 343}, 0, 1, 344, 346, {348,846},{357,1381},{370,5971},{376,5960}},
+	{5991, 878, 6012, 438, 370, 447, 74, 465, 468, {6023, 6033, 6047, 6054, 6061, 6070, 1484}, {6078, 6080, 6083, 6086, 6090, 6093, 2026}, {6096, 6105, 6110, 6117, 1808, 6127, 6136, 6143, 6153, 6163, 1589, 6176, 343}, {6186, 6190, 1873, 6194, 1808, 6198, 6202, 6206, 6210, 6214, 6219, 6223, 343}, 0, 1, 1909, 346, {348,5531,6012},{357,878},{370},{376,438}},
+	{6227, 3037, 1678, 376, 370, 3070, 3075, 465, 468, {3097, 6260, 6274, 6287, 6300, 6313, 3144}, {3152, 6325, 6329, 6333, 6337, 6341, 3173}, {6345, 6353, 6363, 1006, 6370, 6375, 6381, 3215, 6387, 6396, 6404, 6413, 343}, {1865, 6422, 1873, 3257, 3785, 1881, 1885, 3265, 4962, 6426, 1901, 6430, 343}, 0, 0, 344, 346, {348,1678},{357,3037},{370},{376}},
+	{5991, 878, 1942, 438, 370, 447, 74, 465, 468, {6434, 6444, 6449, 6456, 6465, 6469, 6476}, {6487, 6489, 6491, 2035, 6494, 1619, 6496}, {6498, 6507, 6517, 6524, 3785, 6532, 6538, 1822, 6544, 6555, 6565, 6575, 343}, {6585, 2135, 2913, 2143, 2074, 6589, 6593, 2155, 2159, 2917, 2167, 2921, 343}, 0, 1, 844, 346, {348,1942},{357,878},{370},{376,438}},
+	{6597, 6623, 1942, 2995, 1411, 6641, 74, 465, 468, {6657, 6680, 505, 6703, 6714, 6729, 6744}, {6759, 6764, 6769, 6774, 6779, 6784, 6789}, {6794, 6807, 6822, 6831, 6844, 6851, 6860, 6869, 6882, 6899, 6914, 6927, 343}, {6942, 6949, 6956, 6963, 678, 6970, 6977, 6984, 6991, 6998, 7005, 7012, 343}, 0, 1, 844, 346, {348,846,1942},{357,6623},{370,1411},{376,1401,2995}},
+	{7019, 7041, 3327, 2995, 370, 4285, 1148, 465, 468, {7055, 7064, 7076, 7083, 7091, 7101, 7107}, {7114, 7118, 7122, 7126, 7130, 7135, 7139}, {7143, 7153, 7162, 7170, 7178, 7186, 7193, 7200, 7208, 1589, 7214, 7222, 343}, {7231, 7235, 7239, 7244, 7248, 6202, 7252, 7256, 7260, 6219, 7264, 7268, 343}, 0, 1, 844, 346, {348,7272,3327},{357,7041},{370},{376,2995}},
+	{7283, 1381, 7304, 2995, 1411, 447, 1416, 465, 468, {7315, 7323, 7332, 7339, 7346, 7355, 7362}, {7369, 7372, 7375, 7378, 7381, 7385, 2026}, {4386, 4394, 7388, 4688, 7394, 4741, 4746, 1822, 1829, 4465, 1847, 1856, 343}, {1865, 1869, 1873, 1877, 7394, 4741, 4746, 1889, 1893, 1897, 1901, 1905, 343}, 0, 1, 4538, 346, {348,3327,7304},{357,1381},{370,1411},{376,1401,2995}},
+	{7399, 409, 6012, 7423, 7434, 447, 457, 7441, 7444, {7447, 7454, 7463, 7472, 7484, 7492, 7501}, {7511, 7515, 2913, 7520, 7525, 7529, 7533}, {7537, 7543, 3774, 7550, 1808, 7556, 7564, 7571, 7577, 7585, 7591, 7599, 343}, {2131, 7607, 2913, 7611, 7615, 7619, 7623, 7627, 7533, 7631, 7635, 7640, 343}, 0, 1, 1909, 346, {348,5531,6012},{357,409},{370,7434},{376,7644,7423}},
+	{7656, 7684, 6012, 5960, 5971, 447, 74, 7701, 7704, {7707, 7715, 7723, 1721, 1728, 1736, 7730}, {7738, 7742, 3434, 5981, 3440, 5984, 7746}, {5896, 5904, 3774, 1802, 1808, 1812, 1817, 7750, 1829, 1839, 1847, 1856, 343}, {1865, 1869, 1873, 1877, 1808, 1881, 1885, 1889, 1893, 1897, 1901, 1905, 343}, 0, 1, 344, 346, {348,6012},{357,7684},{370,5971},{376,5960}},
+	{7758, 878, 37, 2995, 1411, 447, 74, 7779, 7810, {7841, 7872, 7900, 7928, 7947, 7981, 8006}, {8031, 8039, 8044, 8049, 8054, 8062, 8067}, {8072, 8091, 8122, 8141, 8160, 8182, 8207, 8229, 8251, 8273, 8292, 8320, 343}, {8342, 8351, 8360, 8372, 8384, 8393, 8405, 8414, 8423, 8432, 8441, 8450, 343}, 0, 0, 344, 346, {348,37},{357,878},{370,1411},{376,8459,2995}},
+	{8499, 8526, 1942, 438, 370, 447, 457, 465, 468, {8544, 8550, 8560, 8566, 8577, 8587, 8592}, {8602, 8606, 8610, 8614, 8619, 8623, 8627}, {8631, 8636, 8643, 8648, 8654, 8661, 8669, 8676, 8685, 8692, 8697, 8704, 343}, {8712, 8716, 2913, 8721, 2882, 8725, 8729, 8733, 8738, 8742, 8746, 8750, 343}, 0, 1, 844, 346, {348,1942},{357,8526},{370},{376,438}},
+	{1114, 357, 348, 376, 370, 1138, 1148, 465, 468, {8754, 8761, 8767, 8774, 8779, 8785, 8791}, {8797, 8801, 8805, 8809, 8813, 8817, 8821}, {8825, 8833, 8842, 2068, 8848, 2078, 2083, 8852, 2095, 2105, 2113, 8860, 343}, {2131, 2135, 2913, 2143, 8848, 2147, 2151, 8869, 2159, 2163, 2167, 8873, 343}, 0, 0, 344, 346, {348},{357},{370},{376}},
+	{8877, 878, 1942, 2995, 370, 8897, 74, 465, 468, {8913, 8926, 8945, 8962, 8975, 8988, 9004}, {9017, 6764, 6769, 6774, 6779, 6784, 6789}, {9022, 9033, 9046, 9061, 9074, 9087, 9100, 9111, 9124, 9139, 9152, 9171, 343}, {9184, 9191, 9198, 9205, 9214, 9223, 9232, 9239, 9248, 9255, 9264, 9273, 343}, 0, 1, 844, 346, {348,846,1942},{357,878},{370},{376,2995}},
+	{9282, 878, 1394, 5960, 5971, 447, 74, 465, 468, {9305, 9320, 9341, 9356, 9369, 9382, 9397}, {9410, 9415, 9420, 9425, 9430, 9435, 9440}, {9445, 9462, 9471, 9486, 678, 9503, 9518, 9531, 9546, 9563, 9584, 9601, 343}, {9616, 9191, 9623, 9630, 678, 9637, 9644, 9651, 9248, 9658, 9665, 9672, 343}, 0, 1, 344, 346, {348,1394},{357,878},{370,5971},{376,5960}},
+	{9679, 9701, 3327, 2995, 1411, 447, 1689, 465, 468, {9715, 9723, 9734, 9740, 9746, 9755, 1484}, {7114, 7118, 1768, 9761, 7130, 7135, 9765}, {1781, 1788, 7388, 1802, 1808, 9769, 9775, 9781, 1829, 1839, 1847, 1856, 343}, {1865, 1869, 1873, 1877, 1808, 1881, 1885, 9788, 1893, 1897, 1901, 1905, 343}, 0, 1, 844, 346, {348,9792,3327},{357,9701},{370,1411},{376,1401,2995}},
+	{8877, 878, 9799, 2995, 1411, 447, 9809, 465, 468, {9817, 9828, 9839, 9850, 9861, 9872, 9878}, {4380, 9887, 9889, 4371, 6078, 9891, 6489}, {9893, 9901, 9910, 9917, 3785, 9924, 9930, 1822, 1829, 9936, 1847, 9945, 343}, {9955, 9960, 9910, 1877, 3785, 9924, 9930, 1889, 9966, 1897, 1901, 9971, 343}, 0, 1, 844, 346, {348,846,9799},{357,878},{370,1411},{376,1401,2995}},
+	{9976, 10005, 4541, 2995, 370, 10026, 1416, 465, 468, {10044, 10055, 10065, 10074, 10085, 10097, 10108}, {10118, 4380, 10121, 9889, 10123, 10125, 6496}, {10128, 10138, 1796, 10149, 10158, 10164, 10172, 10180, 10188, 10199, 10208, 10218, 343}, {2131, 2135, 2913, 2143, 2074, 10228, 10233, 2155, 2159, 2163, 2167, 2921, 343}, 0, 1, 844, 346, {348,10238,4541},{357,10005},{370},{376,2995}},
+	{10245, 10278, 7272, 376, 370, 10300, 10315, 465, 468, {10327, 10339, 10351, 10363, 10377, 10392, 10405}, {10419, 10422, 10425, 10428, 10431, 6080, 7381}, {10434, 10441, 10449, 10454, 10465, 10475, 10485, 10492, 10504, 10513, 10520, 10531, 343}, {10541, 10545, 10549, 10553, 10557, 10561, 10565, 10569, 10573, 10577, 10581, 10585, 343}, 0, 1, 344, 346, {348,7272},{357,10278},{370},{376}},
+	{10589, 878, 10613, 2983, 370, 447, 74, 10622, 10629, {10636, 10652, 10665, 10681, 10698, 10716, 10725}, {10734, 10738, 10742, 10746, 10750, 10754, 10758}, {10762, 10775, 229, 10786, 10797, 10802, 10811, 10822, 10829, 10844, 10855, 10868, 343}, {10881, 10888, 10895, 10902, 10909, 10916, 10923, 10822, 10930, 10937, 10944, 10951, 343}, 0, 0, 344, 346, {348,10958,10613},{357,878},{370},{376,10968,2983}},
+	{10981, 409, 2678, 2199, 370, 447, 457, 11005, 11008, {11011, 11024, 11034, 11043, 11053, 11064, 11075}, {11087, 11090, 11095, 11100, 11105, 11110, 11115}, {11120, 11133, 11144, 11154, 11165, 11177, 11189, 11202, 11214, 11227, 11242, 11263, 343}, {11282, 11288, 11294, 11300, 11306, 11312, 11318, 11324, 11330, 11336, 11343, 11350, 343}, 0, 1, 344, 346, {348,2678},{357,409},{370},{376,2199}},
+	{11357, 2925, 1942, 2995, 370, 447, 2767, 11379, 11387, {11395, 11408, 11429, 11448, 11469, 11488, 11501}, {11512, 11519, 11526, 11533, 11540, 11547, 11554}, {11561, 11578, 11595, 11604, 11615, 11626, 11639, 11652, 11667, 11686, 11705, 11722, 343}, {11741, 11748, 11755, 11762, 11769, 11776, 11783, 11790, 11797, 11804, 11811, 11818, 343}, 0, 1, 844, 346, {348,11825,1942},{357,2925},{370},{376,2995}},
+	{1114, 357, 348, 376, 370, 1138, 1148, 465, 468, {11834, 11842, 11853, 11863, 11874, 11883, 11892}, {11902, 11905, 11908, 11911, 11914, 11917, 11920}, {11923, 11933, 11941, 11949, 11957, 11965, 11972, 11980, 11988, 11995, 12001, 12008, 343}, {12016, 12020, 1873, 12024, 3785, 12028, 12032, 12036, 12040, 12044, 12048, 12052, 343}, 0, 0, 344, 346, {348},{357},{370},{376}},
+	{387, 409, 1942, 438, 370, 447, 457, 465, 468, {12056, 484, 505, 6703, 12069, 12086, 12097}, {574, 582, 590, 12110, 12118, 612, 12126}, {12134, 641, 658, 667, 12149, 12156, 12165, 699, 712, 731, 748, 763, 343}, {12174, 786, 12182, 794, 12190, 12198, 12206, 802, 12214, 818, 826, 12224, 343}, 0, 1, 844, 346, {348,12236,1942},{357,409},{370},{376,438}},
+	{1114, 357, 348, 376, 370, 1138, 1148, 12244, 12247, {12250, 12257, 12265, 12273, 12282, 12292, 12299}, {2026, 6491, 2032, 12308, 2038, 12311, 2044}, {12314, 12323, 12333, 2068, 8848, 12339, 12345, 12351, 2095, 2105, 2113, 8860, 343}, {2131, 2135, 2913, 2143, 8848, 2147, 2151, 2155, 2159, 2163, 2167, 8873, 343}, 0, 0, 344, 346, {348},{357},{370},{376}},
+	{12360, 12380, 348, 376, 370, 12389, 1148, 12396, 12412, {5233, 5235, 5237, 5239, 5241, 5243, 5245}, {5233, 5235, 5237, 5239, 5241, 5243, 5245}, {5233, 5235, 5237, 5239, 5241, 5243, 5245, 5247, 5249, 5251, 5254, 5257, 343}, {5233, 5235, 5237, 5239, 5241, 5243, 5245, 5247, 5249, 5251, 5254, 5257, 343}, 0, 0, 344, 346, {348},{357,12380},{370},{376}},
+	{12434, 1666, 1911, 376, 370, 447, 457, 465, 468, {4553, 12457, 12468, 12478, 12488, 12498, 12512}, {4639, 4643, 12524, 12529, 12533, 12538, 12543}, {1781, 1788, 3774, 4688, 3785, 1812, 1817, 1822, 1829, 1839, 1847, 4732, 343}, {1865, 1869, 1873, 1877, 3785, 1881, 1885, 1889, 1893, 1897, 1901, 4762, 343}, 0, 0, 344, 346, {348,1911},{357,1666},{370},{376}},
+	{1114, 357, 348, 376, 370, 1138, 1148, 12547, 12575, {12597, 12616, 12635, 12657, 12676, 12698, 12723}, {12742, 12752, 12762, 12775, 12785, 12798, 12814}, {12824, 12840, 12856, 12872, 12891, 12898, 12908, 12924, 12940, 12962, 12984, 13003, 343}, {12824, 12840, 12856, 12872, 12891, 12898, 12908, 12924, 12940, 12962, 12984, 13003, 343}, 0, 0, 344, 346, {348},{357},{370},{376}},
+	{1114, 357, 348, 376, 370, 1138, 1148, 465, 468, {13025, 13034, 13043, 13051, 13060, 13069, 13076}, {13085, 13089, 13093, 13097, 13101, 13105, 13109}, {8825, 8833, 13113, 13119, 8848, 2078, 13126, 13132, 13139, 13148, 13155, 13163, 343}, {2131, 2135, 2913, 2143, 8848, 2147, 2151, 13171, 2159, 2163, 2167, 8873, 343}, 0, 6, 344, 346, {348},{357},{370},{376}},
+	{1114, 357, 348, 376, 370, 1138, 1148, 13175, 13217, {13259, 13278, 13297, 13319, 13338, 13360, 13385}, {13404, 13414, 13424, 13437, 13447, 13460, 13476}, {13486, 13514, 13542, 13558, 13577, 13584, 13594, 13610, 13626, 13654, 13676, 13698, 343}, {13723, 13742, 13542, 13558, 13577, 13584, 13594, 13610, 13761, 13777, 13793, 13803, 343}, 0, 0, 344, 346, {348},{357},{370},{376}},
+	{1114, 357, 348, 376, 370, 1138, 1148, 13816, 13829, {13842, 13861, 13883, 13908, 13924, 13946, 13965}, {13975, 13982, 13989, 13996, 14003, 14010, 14017}, {14021, 14037, 14062, 14081, 14100, 14107, 14120, 14133, 14152, 14183, 14208, 14230, 343}, {14255, 14263, 14277, 14291, 14100, 14107, 14120, 14302, 14310, 14324, 14335, 14343, 343}, 0, 0, 344, 346, {348},{357},{370},{376}},
+	{1114, 357, 348, 376, 370, 1138, 1148, 14354, 14382, {14404, 14426, 14448, 14473, 14495, 14520, 14548}, {14570, 14580, 14590, 14603, 14613, 14626, 14642}, {14652, 14668, 14693, 14712, 14734, 14741, 14754, 14767, 14786, 14817, 14842, 14861, 343}, {14652, 14668, 14693, 14712, 14734, 14741, 14754, 14767, 14786, 14817, 14842, 14861, 343}, 0, 0, 344, 346, {348},{357},{370},{376}},
+	{1114, 357, 348, 376, 370, 1138, 1148, 14886, 14914, {14936, 14955, 14974, 14996, 15015, 15037, 15062}, {15081, 15086, 15094, 15102, 15110, 15118, 15126}, {15137, 15153, 15178, 15197, 15219, 15226, 15239, 15252, 15271, 15299, 15324, 15346, 343}, {15137, 15153, 15178, 15197, 15219, 15226, 15239, 15252, 15271, 15299, 15324, 15346, 343}, 0, 0, 344, 346, {348},{357},{370},{376}},
+	{1114, 357, 348, 376, 370, 1138, 1148, 15371, 15383, {12597, 12616, 15395, 12657, 12676, 12698, 12723}, {12742, 12752, 15417, 12775, 12785, 12798, 12814}, {15430, 15455, 12856, 15480, 15499, 12898, 15506, 15519, 15535, 15563, 15585, 15613, 343}, {15430, 15455, 12856, 15480, 15499, 12898, 15506, 15519, 15535, 15563, 15585, 15613, 343}, 0, 0, 344, 346, {348},{357},{370},{376}},
+	{1114, 357, 348, 376, 370, 1138, 1148, 465, 468, {15635, 15643, 15648, 15655, 15665, 15671, 15678}, {15686, 15690, 2913, 15694, 15699, 15703, 15707}, {15712, 15720, 15729, 15735, 15741, 15746, 15752, 15758, 15765, 15774, 15782, 15791, 343}, {15800, 2135, 2913, 15804, 2074, 15808, 15813, 13171, 15817, 15821, 2167, 2921, 343}, 0, 0, 344, 346, {348},{357},{370},{376}},
+	{1114, 357, 348, 376, 370, 1138, 1148, 15371, 15383, {15825, 12616, 15853, 12657, 12676, 12698, 12723}, {12742, 12752, 15417, 12775, 12785, 12798, 12814}, {15430, 15872, 12856, 15480, 15499, 12898, 15506, 15519, 15535, 15563, 15585, 15613, 343}, {15430, 15455, 12856, 15480, 15499, 12898, 15506, 15519, 15535, 15563, 15585, 15613, 343}, 0, 0, 344, 346, {348},{357},{370},{376}},
 	{1, 24, 37, 46, 56, 63, 74, 81, 84, {87, 98, 113, 130, 147, 160, 173}, {87, 98, 113, 130, 147, 160, 173}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, 0, 6, 344, 346, {348,37},{357,24},{370,56},{376,46}},
-	{387, 409, 422, 438, 370, 447, 457, 465, 468, {471, 484, 505, 520, 531, 550, 561}, {574, 582, 590, 596, 602, 612, 620}, {628, 641, 658, 667, 678, 685, 692, 699, 712, 731, 748, 763, 343}, {780, 786, 658, 794, 678, 685, 692, 802, 810, 818, 826, 836, 343}, 0, 1, 344, 346, {348,844,422},{357,409},{370},{376,438}},
-	{5984, 876, 2674, 438, 370, 447, 457, 465, 468, {897, 906, 914, 922, 931, 938, 948}, {957, 961, 965, 969, 973, 977, 981}, {985, 991, 998, 1004, 1010, 1015, 1020, 1027, 1033, 1042, 1050, 1059, 343}, {1068, 1073, 998, 1078, 1010, 1015, 1083, 1088, 1092, 1097, 1102, 1107, 343}, 0, 1, 344, 346, {348,888,2674},{357,876},{370},{376,438}},
-	{15896, 4993, 5260, 15941, 15964, 5026, 5042, 1154, 1161, {1168, 1178, 1188, 1198, 1208, 1218, 1228}, {1238, 1242, 1246, 1250, 1254, 1258, 1262}, {1266, 1273, 1280, 1287, 1294, 1301, 1308, 1315, 1322, 1329, 1336, 1346, 343}, {1266, 1273, 1280, 1287, 1294, 1301, 1308, 1315, 1322, 1329, 1336, 1346, 343}, 0, 0, 344, 346, {348,5260},{357,4993},{370,15964},{376,15941}},
-	{7276, 1379, 3323, 2991, 1409, 447, 1414, 1422, 1427, {1432, 1440, 1450, 1458, 1466, 1475, 1482}, {1489, 1492, 1495, 1499, 1502, 1506, 1510}, {1513, 1519, 1525, 1533, 1539, 1547, 1555, 1565, 1571, 1579, 1587, 1596, 343}, {1605, 1607, 1610, 1614, 1617, 1619, 1622, 1626, 1631, 1634, 1636, 1639, 343}, 0, 1, 344, 346, {348,1392,3323},{357,1379},{370,1409},{376,1399,2991}},
-	{1643, 1664, 1676, 438, 370, 447, 1687, 465, 468, {1696, 1704, 1711, 1719, 1726, 1734, 1741}, {1749, 1754, 1758, 1762, 1766, 1770, 1774}, {1779, 1786, 1794, 1800, 1806, 1810, 1815, 1820, 1827, 1837, 1845, 1854, 343}, {1863, 1867, 1871, 1875, 1806, 1879, 1883, 1887, 1891, 1895, 1899, 1903, 343}, 0, 1, 344, 346, {348,1907,1676},{357,1664},{370},{376,438}},
-	{1916, 1379, 1938, 438, 370, 447, 1414, 1949, 1955, {1962, 1970, 1977, 1986, 1995, 2006, 2014}, {2022, 2025, 2028, 2031, 2034, 2037, 2040}, {2043, 2050, 2058, 2064, 2070, 2074, 2079, 2084, 2091, 2101, 2109, 2118, 343}, {2127, 2131, 2135, 2139, 2070, 2143, 2147, 2151, 2155, 2159, 2163, 2167, 343}, 0, 1, 344, 346, {348,844,1938},{357,1379},{370},{376,438}},
-	{2171, 409, 37, 2195, 56, 447, 457, 2206, 2211, {2216, 2231, 2246, 2257, 2272, 2285, 2304}, {2319, 2326, 2333, 2340, 2347, 2354, 2361}, {2368, 2389, 2412, 2427, 2444, 2455, 2470, 2485, 2504, 2527, 2546, 2565, 343}, {2586, 2593, 2600, 2607, 2614, 2621, 2630, 2639, 2646, 2653, 2660, 2667, 343}, 0, 1, 344, 346, {348,2674,37},{357,409},{370,56},{376,2685,2195}},
-	{2697, 2728, 10606, 2195, 2755, 63, 2763, 465, 468, {2770, 2777, 2784, 2792, 2802, 2811, 2818}, {2827, 2831, 2835, 2839, 2843, 2847, 2851}, {2855, 2863, 2872, 2064, 2878, 2882, 2887, 2084, 2091, 2892, 2109, 2900, 343}, {2127, 2131, 2909, 2139, 2878, 2143, 2147, 2151, 2155, 2913, 2163, 2917, 343}, 0, 0, 344, 346, {10606,10606,2748,2748,11818,3055,348,6005,15971},{2728,2728,2921,2935,2955},{2755,2755,2970,1409,370},{2195,2195,2979,2991,438}},
-	{3281, 3306, 3323, 2991, 370, 3332, 3345, 465, 468, {3357, 3367, 3377, 3385, 3397, 3405, 3415}, {3424, 3427, 3430, 3433, 3436, 3439, 3442}, {3445, 3454, 3463, 3473, 3482, 3491, 3500, 3510, 3517, 3525, 3533, 3543, 343}, {3552, 3558, 3564, 3571, 3577, 3583, 3589, 3596, 3600, 3605, 3610, 3617, 343}, 0, 1, 344, 346, {348,3323},{357,3306},{370},{376,2991}},
-	{3623, 3649, 2674, 438, 370, 447, 74, 465, 468, {3666, 3675, 3681, 3687, 3696, 3702, 3711}, {3718, 3723, 3728, 3733, 3738, 3743, 3748}, {3753, 3761, 3770, 3775, 3781, 3785, 3790, 3798, 3804, 3814, 1050, 3822, 343}, {3832, 3838, 3770, 3845, 3781, 3785, 3850, 3798, 3856, 1097, 1102, 3862, 343}, 0, 1, 344, 346, {888,3868,3273,2674},{357,876,3649},{370},{376,438}},
-	{3878, 876, 2674, 438, 370, 447, 74, 465, 468, {3899, 3917, 3931, 3949, 3967, 3985, 4001}, {4008, 4011, 4014, 4017, 4020, 4023, 4026}, {4029, 4040, 4053, 4060, 4071, 4078, 4087, 4096, 4109, 4122, 4137, 4150, 343}, {4161, 4168, 4053, 4175, 4071, 4182, 4189, 4196, 4203, 4210, 4217, 4224, 343}, 0, 0, 344, 346, {348,888,2674},{357,876},{370},{376,438}},
-	{4231, 4253, 4267, 2991, 1409, 4281, 4292, 4300, 4303, {4306, 4316, 4324, 4329, 4336, 4349, 4357}, {1617, 4365, 4367, 4369, 4373, 4376, 4378}, {4382, 4390, 4399, 4408, 4417, 4424, 4432, 4440, 4450, 4461, 1845, 1854, 343}, {4470, 4475, 4481, 4488, 4494, 4500, 4506, 4512, 4517, 4524, 1102, 4529, 343}, 0, 1, 344, 346, {348,4534,4267},{357,4253},{370,1409},{376,1399,2991}},
-	{1916, 1379, 3323, 438, 370, 447, 1414, 465, 468, {4546, 4557, 4568, 4582, 4596, 4608, 4620}, {4632, 4636, 4641, 4646, 4651, 4655, 4660}, {4664, 4672, 3770, 4681, 4688, 4693, 4700, 4707, 1827, 4461, 4715, 4725, 343}, {1863, 1867, 1871, 1875, 4688, 4734, 4739, 4744, 1891, 1895, 4750, 4755, 343}, 0, 0, 344, 346, {348,3323},{357,1379},{370},{376,438}},
-	{15981, 409, 2674, 16002, 370, 447, 74, 4783, 4786, {4789, 4798, 4806, 4815, 4826, 4835, 4844}, {3148, 3152, 1871, 4851, 4855, 4859, 4863}, {4867, 4875, 3188, 4884, 4891, 4898, 4905, 3211, 4912, 4922, 1050, 4930, 343}, {4939, 1867, 1871, 1875, 4943, 4947, 4951, 3261, 4955, 4959, 1899, 3269, 343}, 0, 1, 344, 346, {348,888,2674},{357,409},{370},{376,1399,16002}},
-	{4963, 4993, 5015, 2991, 1409, 5026, 5042, 5055, 5062, {5069, 5079, 5089, 5099, 5109, 5119, 5129}, {1238, 5139, 5143, 5147, 5151, 5155, 5159}, {5163, 5168, 5173, 5178, 5183, 5188, 5193, 5198, 5203, 5208, 5214, 5220, 343}, {5226, 5228, 5230, 5232, 5234, 5236, 5238, 5240, 5242, 5244, 5247, 5250, 343}, 0, 0, 344, 346, {5015,5015,348,5253,5260,5269,5288,5305},{4993,4993,5324,5348,5375},{1409,1409,370,5404,5412},{2991,438,5421,5432}},
-	{16010, 16060, 5015, 16084, 5404, 5577, 5594, 5608, 5615, {5622, 5632, 5642, 5652, 5662, 5672, 5682}, {5692, 5696, 5700, 5704, 5708, 5712, 5716}, {5720, 5725, 5730, 5735, 5740, 5745, 5750, 5755, 5760, 5765, 5771, 5777, 343}, {5720, 5725, 5730, 5735, 5740, 5745, 5750, 5755, 5760, 5765, 5771, 5777, 343}, 0, 0, 344, 346, {5015,5015,348,5253,5260,16110,16123},{16060,16060,16134,16160,16182},{5404,1409,370,16206,16220,16235,5404,5412,16251,16268,16286},{16084,16084,16305,16327,2991,438,16351,16376,5421,5432}},
-	{8870, 876, 16403, 2991, 1409, 447, 74, 465, 468, {5812, 5819, 5827, 5835, 5844, 5854, 5862}, {5871, 3427, 5874, 5877, 5880, 5883, 5886}, {5889, 5897, 5906, 1800, 5912, 1810, 1815, 5916, 1827, 1837, 1845, 1854, 343}, {1863, 1867, 5925, 1875, 5912, 1879, 1883, 1887, 1891, 1895, 1899, 1903, 343}, 0, 1, 344, 346, {348,5805,16403},{357,876},{370,1409},{376,1399,2991}},
-	{5929, 1379, 844, 5953, 5964, 447, 1414, 465, 468, {1696, 1704, 1711, 1719, 1726, 1734, 1741}, {5970, 3427, 3430, 5974, 3436, 5977, 5980}, {1779, 1786, 3770, 1800, 3781, 1810, 1815, 1820, 1827, 1837, 1845, 4725, 343}, {1863, 1867, 1871, 1875, 3781, 1879, 1883, 1887, 1891, 1895, 1899, 4755, 343}, 0, 1, 344, 346, {348,844},{357,1379},{370,5964},{376,5953}},
-	{5984, 876, 6005, 438, 370, 447, 74, 465, 468, {6016, 6026, 6040, 6047, 6054, 6063, 1482}, {6071, 6073, 6076, 6079, 6083, 6086, 2022}, {6089, 6098, 6103, 6110, 1806, 6120, 6129, 6136, 6146, 6156, 1587, 6169, 343}, {6179, 6183, 1871, 6187, 1806, 6191, 6195, 6199, 6203, 6207, 6212, 6216, 343}, 0, 1, 344, 346, {348,5524,6005},{357,876},{370},{376,438}},
-	{16412, 3033, 37, 438, 370, 3066, 3071, 465, 468, {3093, 6253, 6267, 6280, 6293, 6306, 3140}, {3148, 6318, 6322, 6326, 6330, 6334, 3169}, {6338, 6346, 6356, 1004, 6363, 6368, 6374, 3211, 6380, 6389, 6397, 6406, 343}, {1863, 6415, 1871, 3253, 3781, 1879, 1883, 3261, 4955, 6419, 1899, 6423, 343}, 0, 0, 344, 346, {348,1676,888,37},{357,3033},{370},{376,16443,438}},
-	{5984, 876, 1938, 438, 370, 447, 74, 465, 468, {6427, 6437, 6442, 6449, 6458, 6462, 6469}, {6480, 6482, 6484, 2031, 6487, 1617, 6489}, {6491, 6500, 6510, 6517, 3781, 6525, 6531, 1820, 6537, 6548, 6558, 6568, 343}, {6578, 2131, 2909, 2139, 2070, 6582, 6586, 2151, 2155, 2913, 2163, 2917, 343}, 0, 1, 344, 346, {348,1938},{357,876},{370},{376,438}},
-	{6590, 6616, 1938, 2991, 1409, 6634, 74, 465, 468, {6650, 6673, 505, 6696, 6707, 6722, 6737}, {6752, 6757, 6762, 6767, 6772, 6777, 6782}, {6787, 6800, 6815, 6824, 6837, 6844, 6853, 6862, 6875, 6892, 6907, 6920, 343}, {6935, 6942, 6949, 6956, 678, 6963, 6970, 6977, 6984, 6991, 6998, 7005, 343}, 0, 1, 344, 346, {348,844,1938},{357,6616},{370,1409},{376,1399,2991}},
-	{7012, 7034, 3323, 2991, 370, 4281, 1146, 465, 468, {7048, 7057, 7069, 7076, 7084, 7094, 7100}, {7107, 7111, 7115, 7119, 7123, 7128, 7132}, {7136, 7146, 7155, 7163, 7171, 7179, 7186, 7193, 7201, 1587, 7207, 7215, 343}, {7224, 7228, 7232, 7237, 7241, 6195, 7245, 7249, 7253, 6212, 7257, 7261, 343}, 0, 1, 344, 346, {348,7265,3323},{357,7034},{370},{376,2991}},
-	{7276, 1379, 7297, 2991, 1409, 447, 1414, 465, 468, {7308, 7316, 7325, 7332, 7339, 7348, 7355}, {7362, 7365, 7368, 7371, 7374, 7378, 2022}, {4382, 4390, 7381, 4681, 7387, 4734, 4739, 1820, 1827, 4461, 1845, 1854, 343}, {1863, 1867, 1871, 1875, 7387, 4734, 4739, 1887, 1891, 1895, 1899, 1903, 343}, 0, 1, 344, 346, {348,3323,7297},{357,1379},{370,1409},{376,1399,2991}},
-	{7392, 409, 6005, 7416, 7427, 447, 457, 7434, 7437, {7440, 7447, 7456, 7465, 7477, 7485, 7494}, {7504, 7508, 2909, 7513, 7518, 7522, 7526}, {7530, 7536, 3770, 7543, 1806, 7549, 7557, 7564, 7570, 7578, 7584, 7592, 343}, {2127, 7600, 2909, 7604, 7608, 7612, 7616, 7620, 7526, 7624, 7628, 7633, 343}, 0, 1, 344, 346, {348,5524,6005},{357,409},{370,7427},{376,7637,7416}},
-	{16460, 7677, 6005, 438, 370, 447, 74, 7694, 7697, {7700, 7708, 7716, 1719, 1726, 1734, 7723}, {7731, 7735, 3430, 5974, 3436, 5977, 7739}, {5889, 5897, 3770, 1800, 1806, 1810, 1815, 7743, 1827, 1837, 1845, 1854, 343}, {1863, 1867, 1871, 1875, 1806, 1879, 1883, 1887, 1891, 1895, 1899, 1903, 343}, 0, 1, 344, 346, {348,6005},{357,7677},{370,5964},{376,5953,438}},
-	{7751, 876, 37, 2991, 1409, 447, 74, 7772, 7803, {7834, 7865, 7893, 7921, 7940, 7974, 7999}, {8024, 8032, 8037, 8042, 8047, 8055, 8060}, {8065, 8084, 8115, 8134, 8153, 8175, 8200, 8222, 8244, 8266, 8285, 8313, 343}, {8335, 8344, 8353, 8365, 8377, 8386, 8398, 8407, 8416, 8425, 8434, 8443, 343}, 0, 0, 344, 346, {348,37},{357,876},{370,1409},{376,8452,2991}},
-	{8492, 8519, 1938, 438, 370, 447, 457, 465, 468, {8537, 8543, 8553, 8559, 8570, 8580, 8585}, {8595, 8599, 8603, 8607, 8612, 8616, 8620}, {8624, 8629, 8636, 8641, 8647, 8654, 8662, 8669, 8678, 8685, 8690, 8697, 343}, {8705, 8709, 2909, 8714, 2878, 8718, 8722, 8726, 8731, 8735, 8739, 8743, 343}, 0, 1, 344, 346, {348,1938},{357,8519},{370},{376,438}},
-	{16486, 409, 2674, 2991, 1409, 447, 457, 465, 468, {8747, 8754, 8760, 8767, 8772, 8778, 8784}, {8790, 8794, 8798, 8802, 8806, 8810, 8814}, {8818, 8826, 8835, 2064, 8841, 2074, 2079, 8845, 2091, 2101, 2109, 8853, 343}, {2127, 2131, 2909, 2139, 8841, 2143, 2147, 8862, 2155, 2159, 2163, 8866, 343}, 0, 0, 344, 346, {348,888,2674},{357,409},{370,1409},{376,2991}},
-	{8870, 876, 1938, 2991, 370, 8890, 74, 465, 468, {8906, 8919, 8938, 8955, 8968, 8981, 8997}, {9010, 6757, 6762, 6767, 6772, 6777, 6782}, {9015, 9026, 9039, 9054, 9067, 9080, 9093, 9104, 9117, 9132, 9145, 9164, 343}, {9177, 9184, 9191, 9198, 9207, 9216, 9225, 9232, 9241, 9248, 9257, 9266, 343}, 0, 1, 344, 346, {348,844,1938},{357,876},{370},{376,2991}},
-	{8870, 876, 1938, 2991, 5964, 447, 74, 465, 468, {9298, 9313, 9334, 9349, 9362, 9375, 9390}, {9403, 9408, 9413, 9418, 9423, 9428, 9433}, {9438, 9455, 9464, 9479, 678, 9496, 9511, 9524, 9539, 9556, 9577, 9594, 343}, {9609, 9184, 9616, 9623, 678, 9630, 9637, 9644, 9241, 9651, 9658, 9665, 343}, 0, 1, 344, 346, {348,1392,1938},{357,876},{370,5964},{376,5953,2991}},
-	{9672, 9694, 3323, 2991, 1409, 447, 1687, 465, 468, {9708, 9716, 9727, 9733, 9739, 9748, 1482}, {7107, 7111, 1766, 9754, 7123, 7128, 9758}, {1779, 1786, 7381, 1800, 1806, 9762, 9768, 9774, 1827, 1837, 1845, 1854, 343}, {1863, 1867, 1871, 1875, 1806, 1879, 1883, 9781, 1891, 1895, 1899, 1903, 343}, 0, 1, 344, 346, {348,9785,3323},{357,9694},{370,1409},{376,1399,2991}},
-	{8870, 876, 9792, 2991, 1409, 447, 9802, 465, 468, {9810, 9821, 9832, 9843, 9854, 9865, 9871}, {4376, 9880, 9882, 4367, 6071, 9884, 6482}, {9886, 9894, 9903, 9910, 3781, 9917, 9923, 1820, 1827, 9929, 1845, 9938, 343}, {9948, 9953, 9903, 1875, 3781, 9917, 9923, 1887, 9959, 1895, 1899, 9964, 343}, 0, 1, 344, 346, {348,844,9792},{357,876},{370,1409},{376,1399,2991}},
-	{9969, 9998, 4534, 2991, 370, 10019, 1414, 465, 468, {10037, 10048, 10058, 10067, 10078, 10090, 10101}, {10111, 4376, 10114, 9882, 10116, 10118, 6489}, {10121, 10131, 1794, 10142, 10151, 10157, 10165, 10173, 10181, 10192, 10201, 10211, 343}, {2127, 2131, 2909, 2139, 2070, 10221, 10226, 2151, 2155, 2159, 2163, 2917, 343}, 0, 1, 344, 346, {348,10231,4534},{357,9998},{370},{376,2991}},
-	{16507, 10271, 7265, 438, 370, 10293, 10308, 465, 468, {10320, 10332, 10344, 10356, 10370, 10385, 10398}, {10412, 10415, 10418, 10421, 10424, 6073, 7374}, {10427, 10434, 10442, 10447, 10458, 10468, 10478, 10485, 10497, 10506, 10513, 10524, 343}, {10534, 10538, 10542, 10546, 10550, 10554, 10558, 10562, 10566, 10570, 10574, 10578, 343}, 0, 1, 344, 346, {348,7265},{357,10271},{370},{376,438}},
-	{10582, 876, 10606, 2979, 370, 447, 74, 10615, 10622, {10629, 10645, 10658, 10674, 10691, 10709, 10718}, {10727, 10731, 10735, 10739, 10743, 10747, 10751}, {10755, 10768, 229, 10779, 10790, 10795, 10804, 10815, 10822, 10837, 10848, 10861, 343}, {10874, 10881, 10888, 10895, 10902, 10909, 10916, 10815, 10923, 10930, 10937, 10944, 343}, 0, 6, 344, 346, {348,10951,10606},{357,876},{370},{376,10961,2979}},
-	{10974, 409, 2674, 2195, 370, 447, 457, 10998, 11001, {11004, 11017, 11027, 11036, 11046, 11057, 11068}, {11080, 11083, 11088, 11093, 11098, 11103, 11108}, {11113, 11126, 11137, 11147, 11158, 11170, 11182, 11195, 11207, 11220, 11235, 11256, 343}, {11275, 11281, 11287, 11293, 11299, 11305, 11311, 11317, 11323, 11329, 11336, 11343, 343}, 0, 1, 344, 346, {348,2674},{357,409},{370},{376,2195}},
-	{11350, 2921, 1938, 2991, 370, 447, 2763, 11372, 16538, {11388, 11401, 11422, 11441, 11462, 11481, 11494}, {11505, 11512, 11519, 11526, 11533, 11540, 11547}, {16546, 16561, 11588, 11597, 11608, 16576, 16589, 11645, 11660, 11679, 11698, 11715, 343}, {16602, 16609, 11748, 11755, 11762, 16616, 16623, 11783, 11790, 11797, 11804, 11811, 343}, 0, 1, 344, 346, {348,11818,1938},{357,2921},{370},{376,2991}},
-	{16630, 16669, 5015, 438, 370, 16699, 1146, 465, 468, {11827, 11835, 11846, 11856, 11867, 11876, 11885}, {11895, 11898, 11901, 11904, 11907, 11910, 11913}, {11916, 11926, 11934, 11942, 11950, 11958, 11965, 11973, 11981, 11988, 11994, 12001, 343}, {12009, 12013, 1871, 12017, 3781, 12021, 12025, 12029, 12033, 12037, 12041, 12045, 343}, 0, 1, 344, 346, {348,16714,5015},{357,16669},{370},{376,438}},
-	{387, 409, 1938, 438, 370, 447, 457, 465, 468, {12049, 484, 505, 6696, 12062, 12079, 12090}, {574, 582, 590, 12103, 12111, 612, 12119}, {12127, 641, 658, 667, 12142, 12149, 12158, 699, 712, 731, 748, 763, 343}, {12167, 786, 12175, 794, 12183, 12191, 12199, 802, 12207, 818, 826, 12217, 343}, 0, 1, 344, 346, {348,12229,1938},{357,409},{370},{376,438}},
-	{16727, 409, 5015, 2979, 56, 447, 457, 343, 343, {12243, 12250, 12258, 12266, 12275, 12285, 12292}, {2022, 6484, 2028, 12301, 2034, 12304, 2040}, {12307, 12316, 12326, 2064, 8841, 12332, 12338, 12344, 2091, 2101, 2109, 8853, 343}, {2127, 2131, 2909, 2139, 8841, 2143, 2147, 2151, 2155, 2159, 2163, 8866, 343}, 0, 0, 344, 346, {348,5015},{357,409},{370,56},{376,46,2979}},
-	{16752, 16792, 1938, 2991, 1409, 12382, 1146, 12389, 12405, {5226, 5228, 5230, 5232, 5234, 5236, 5238}, {5226, 5228, 5230, 5232, 5234, 5236, 5238}, {5226, 5228, 5230, 5232, 5234, 5236, 5238, 5240, 5242, 5244, 5247, 5250, 343}, {5226, 5228, 5230, 5232, 5234, 5236, 5238, 5240, 5242, 5244, 5247, 5250, 343}, 0, 0, 344, 346, {348,1938},{357,12373,16792},{370,1409},{376,2991}},
-	{16824, 1664, 1676, 16845, 370, 447, 457, 465, 468, {4546, 12450, 12461, 12471, 12481, 12491, 12505}, {4632, 4636, 12517, 12522, 12526, 12531, 12536}, {1779, 1786, 3770, 4681, 3781, 1810, 1815, 1820, 1827, 1837, 1845, 4725, 343}, {1863, 1867, 1871, 1875, 3781, 1879, 1883, 1887, 1891, 1895, 1899, 4755, 343}, 0, 0, 344, 346, {348,1907,1676},{357,1664},{370},{376,16845}},
-	{5984, 876, 1676, 438, 56, 447, 74, 12540, 12568, {12590, 12609, 12628, 12650, 12669, 12691, 12716}, {12735, 12745, 12755, 12768, 12778, 12791, 12807}, {12817, 12833, 12849, 12865, 12884, 12891, 12901, 12917, 12933, 12955, 12977, 12996, 343}, {12817, 12833, 12849, 12865, 12884, 12891, 12901, 12917, 12933, 12955, 12977, 12996, 343}, 0, 0, 344, 346, {348,5805,1676},{357,876},{370,56},{376,2685,438}},
-	{16854, 357, 10606, 16878, 370, 1136, 1146, 465, 468, {13018, 13027, 13036, 13044, 13053, 13062, 13069}, {13078, 13082, 13086, 13090, 13094, 13098, 13102}, {8818, 8826, 13106, 13112, 8841, 2074, 13119, 13125, 13132, 13141, 13148, 13156, 343}, {2127, 2131, 2909, 2139, 8841, 2143, 2147, 13164, 2155, 2159, 2163, 8866, 343}, 0, 6, 344, 346, {348,10606},{357},{370},{376,16878}},
-	{16889, 876, 16914, 16922, 16935, 447, 74, 13168, 13210, {13252, 13271, 13290, 13312, 13331, 13353, 13378}, {13397, 13407, 13417, 13430, 13440, 13453, 13469}, {13479, 13507, 13535, 13551, 13570, 13577, 13587, 13603, 13619, 13647, 13669, 13691, 343}, {13716, 13735, 13535, 13551, 13570, 13577, 13587, 13603, 13754, 13770, 13786, 13796, 343}, 0, 0, 344, 346, {348,16914},{357,876},{370,16935},{376,16922}},
-	{16943, 876, 5805, 2685, 56, 447, 74, 13809, 13822, {13835, 13854, 13876, 13901, 13917, 13939, 13958}, {13968, 13975, 13982, 13989, 13996, 14003, 14010}, {14014, 14030, 14055, 14074, 14093, 14100, 14113, 14126, 14145, 14176, 14201, 14223, 343}, {14248, 14256, 14270, 14284, 14093, 14100, 14113, 14295, 14303, 14317, 14328, 14336, 343}, 0, 0, 344, 346, {348,5805},{357,876},{370,56},{376,2685}},
-	{16943, 876, 1907, 2685, 56, 447, 74, 14347, 14375, {14397, 14419, 14441, 14466, 14488, 14513, 14541}, {14563, 14573, 14583, 14596, 14606, 14619, 14635}, {14645, 14661, 14686, 14705, 14727, 14734, 14747, 14760, 14779, 14810, 14835, 14854, 343}, {14645, 14661, 14686, 14705, 14727, 14734, 14747, 14760, 14779, 14810, 14835, 14854, 343}, 0, 0, 344, 346, {348,1907},{357,876},{370,56},{376,2685}},
-	{16889, 876, 5805, 16922, 16935, 447, 74, 14879, 14907, {14929, 14948, 14967, 14989, 15008, 15030, 15055}, {15074, 15079, 15087, 15095, 15103, 15111, 15119}, {15130, 15146, 15171, 15190, 15212, 15219, 15232, 15245, 15264, 15292, 15317, 15339, 343}, {15130, 15146, 15171, 15190, 15212, 15219, 15232, 15245, 15264, 15292, 15317, 15339, 343}, 0, 0, 344, 346, {348,5805},{357,876},{370,16935},{376,16922}},
-	{16943, 876, 5805, 2685, 56, 447, 74, 15364, 15376, {12590, 12609, 15388, 12650, 12669, 12691, 12716}, {12735, 12745, 15410, 12768, 12778, 12791, 12807}, {15423, 15448, 12849, 15473, 15492, 12891, 15499, 15512, 15528, 15556, 15578, 15606, 343}, {15423, 15448, 12849, 15473, 15492, 12891, 15499, 15512, 15528, 15556, 15578, 15606, 343}, 0, 0, 344, 346, {348,5805},{357,876},{370,56},{376,2685}},
-	{4759, 409, 888, 376, 370, 447, 457, 465, 468, {15628, 15636, 15641, 15648, 15658, 15664, 15671}, {15679, 15683, 2909, 15687, 15692, 15696, 15700}, {15705, 15713, 15722, 15728, 15734, 15739, 15745, 15751, 15758, 15767, 15775, 15784, 343}, {15793, 2131, 2909, 15797, 2070, 15801, 15806, 13164, 15810, 15814, 2163, 2917, 343}, 0, 1, 344, 346, {348,888},{357,409},{370},{376}},
-	{16943, 876, 5805, 2685, 56, 447, 74, 15364, 15376, {15818, 12609, 15846, 12650, 12669, 12691, 12716}, {12735, 12745, 15410, 12768, 12778, 12791, 12807}, {15423, 15865, 12849, 15473, 15492, 12891, 15499, 15512, 15528, 15556, 15578, 15606, 343}, {15423, 15448, 12849, 15473, 15492, 12891, 15499, 15512, 15528, 15556, 15578, 15606, 343}, 0, 0, 344, 346, {348,5805},{357,876},{370,56},{376,2685}},
+	{387, 409, 422, 438, 370, 447, 457, 465, 468, {471, 484, 505, 520, 531, 550, 561}, {574, 582, 590, 596, 602, 612, 620}, {628, 641, 658, 667, 678, 685, 692, 699, 712, 731, 748, 763, 343}, {780, 786, 658, 794, 678, 685, 692, 802, 810, 818, 826, 836, 343}, 0, 1, 844, 346, {348,846,422},{357,409},{370},{376,438}},
+	{5991, 878, 2678, 438, 370, 447, 457, 465, 468, {899, 908, 916, 924, 933, 940, 950}, {959, 963, 967, 971, 975, 979, 983}, {987, 993, 1000, 1006, 1012, 1017, 1022, 1029, 1035, 1044, 1052, 1061, 343}, {1070, 1075, 1000, 1080, 1012, 1017, 1085, 1090, 1094, 1099, 1104, 1109, 343}, 0, 1, 344, 346, {348,890,2678},{357,878},{370},{376,438}},
+	{15903, 5000, 5267, 15948, 15971, 5033, 5049, 1156, 1163, {1170, 1180, 1190, 1200, 1210, 1220, 1230}, {1240, 1244, 1248, 1252, 1256, 1260, 1264}, {1268, 1275, 1282, 1289, 1296, 1303, 1310, 1317, 1324, 1331, 1338, 1348, 343}, {1268, 1275, 1282, 1289, 1296, 1303, 1310, 1317, 1324, 1331, 1338, 1348, 343}, 0, 0, 344, 346, {348,5267},{357,5000},{370,15971},{376,15948}},
+	{7283, 1381, 3327, 2995, 1411, 447, 1416, 1424, 1429, {1434, 1442, 1452, 1460, 1468, 1477, 1484}, {1491, 1494, 1497, 1501, 1504, 1508, 1512}, {1515, 1521, 1527, 1535, 1541, 1549, 1557, 1567, 1573, 1581, 1589, 1598, 343}, {1607, 1609, 1612, 1616, 1619, 1621, 1624, 1628, 1633, 1636, 1638, 1641, 343}, 0, 1, 844, 346, {348,1394,3327},{357,1381},{370,1411},{376,1401,2995}},
+	{1645, 1666, 1678, 438, 370, 447, 1689, 465, 468, {1698, 1706, 1713, 1721, 1728, 1736, 1743}, {1751, 1756, 1760, 1764, 1768, 1772, 1776}, {1781, 1788, 1796, 1802, 1808, 1812, 1817, 1822, 1829, 1839, 1847, 1856, 343}, {1865, 1869, 1873, 1877, 1808, 1881, 1885, 1889, 1893, 1897, 1901, 1905, 343}, 0, 1, 1909, 346, {348,1911,1678},{357,1666},{370},{376,438}},
+	{1920, 1381, 1942, 438, 370, 447, 1416, 1953, 1959, {1966, 1974, 1981, 1990, 1999, 2010, 2018}, {2026, 2029, 2032, 2035, 2038, 2041, 2044}, {2047, 2054, 2062, 2068, 2074, 2078, 2083, 2088, 2095, 2105, 2113, 2122, 343}, {2131, 2135, 2139, 2143, 2074, 2147, 2151, 2155, 2159, 2163, 2167, 2171, 343}, 0, 1, 844, 346, {348,846,1942},{357,1381},{370},{376,438}},
+	{2175, 409, 37, 2199, 56, 447, 457, 2210, 2215, {2220, 2235, 2250, 2261, 2276, 2289, 2308}, {2323, 2330, 2337, 2344, 2351, 2358, 2365}, {2372, 2393, 2416, 2431, 2448, 2459, 2474, 2489, 2508, 2531, 2550, 2569, 343}, {2590, 2597, 2604, 2611, 2618, 2625, 2634, 2643, 2650, 2657, 2664, 2671, 343}, 0, 1, 344, 346, {348,2678,37},{357,409},{370,56},{376,2689,2199}},
+	{2701, 2732, 10613, 2199, 2759, 63, 2767, 465, 468, {2774, 2781, 2788, 2796, 2806, 2815, 2822}, {2831, 2835, 2839, 2843, 2847, 2851, 2855}, {2859, 2867, 2876, 2068, 2882, 2886, 2891, 2088, 2095, 2896, 2113, 2904, 343}, {2131, 2135, 2913, 2143, 2882, 2147, 2151, 2155, 2159, 2917, 2167, 2921, 343}, 0, 0, 344, 346, {10613,10613,2752,2752,11825,3059,348,6012,15978},{2732,2732,2925,2939,2959},{2759,2759,2974,1411,370},{2199,2199,2983,2995,438}},
+	{3285, 3310, 3327, 2995, 370, 3336, 3349, 465, 468, {3361, 3371, 3381, 3389, 3401, 3409, 3419}, {3428, 3431, 3434, 3437, 3440, 3443, 3446}, {3449, 3458, 3467, 3477, 3486, 3495, 3504, 3514, 3521, 3529, 3537, 3547, 343}, {3556, 3562, 3568, 3575, 3581, 3587, 3593, 3600, 3604, 3609, 3614, 3621, 343}, 0, 1, 844, 346, {348,3327},{357,3310},{370},{376,2995}},
+	{3627, 3653, 2678, 438, 370, 447, 74, 465, 468, {3670, 3679, 3685, 3691, 3700, 3706, 3715}, {3722, 3727, 3732, 3737, 3742, 3747, 3752}, {3757, 3765, 3774, 3779, 3785, 3789, 3794, 3802, 3808, 3818, 1052, 3826, 343}, {3836, 3842, 3774, 3849, 3785, 3789, 3854, 3802, 3860, 1099, 1104, 3866, 343}, 0, 1, 344, 346, {890,3872,3277,2678},{357,878,3653},{370},{376,438}},
+	{3882, 878, 2678, 438, 370, 447, 74, 465, 468, {3903, 3921, 3935, 3953, 3971, 3989, 4005}, {4012, 4015, 4018, 4021, 4024, 4027, 4030}, {4033, 4044, 4057, 4064, 4075, 4082, 4091, 4100, 4113, 4126, 4141, 4154, 343}, {4165, 4172, 4057, 4179, 4075, 4186, 4193, 4200, 4207, 4214, 4221, 4228, 343}, 0, 0, 344, 346, {348,890,2678},{357,878},{370},{376,438}},
+	{4235, 4257, 4271, 2995, 1411, 4285, 4296, 4304, 4307, {4310, 4320, 4328, 4333, 4340, 4353, 4361}, {1619, 4369, 4371, 4373, 4377, 4380, 4382}, {4386, 4394, 4403, 4412, 4421, 4428, 4436, 4444, 4454, 4465, 1847, 1856, 343}, {4474, 4479, 4485, 4492, 4498, 4504, 4510, 4516, 4521, 4528, 1104, 4533, 343}, 0, 1, 4538, 346, {348,4541,4271},{357,4257},{370,1411},{376,1401,2995}},
+	{1920, 1381, 3327, 438, 370, 447, 1416, 465, 468, {4553, 4564, 4575, 4589, 4603, 4615, 4627}, {4639, 4643, 4648, 4653, 4658, 4662, 4667}, {4671, 4679, 3774, 4688, 4695, 4700, 4707, 4714, 1829, 4465, 4722, 4732, 343}, {1865, 1869, 1873, 1877, 4695, 4741, 4746, 4751, 1893, 1897, 4757, 4762, 343}, 0, 0, 844, 346, {348,3327},{357,1381},{370},{376,438}},
+	{15988, 409, 2678, 16009, 370, 447, 74, 4790, 4793, {4796, 4805, 4813, 4822, 4833, 4842, 4851}, {3152, 3156, 1873, 4858, 4862, 4866, 4870}, {4874, 4882, 3192, 4891, 4898, 4905, 4912, 3215, 4919, 4929, 1052, 4937, 343}, {4946, 1869, 1873, 1877, 4950, 4954, 4958, 3265, 4962, 4966, 1901, 3273, 343}, 0, 1, 344, 346, {348,890,2678},{357,409},{370},{376,1401,16009}},
+	{4970, 5000, 5022, 2995, 1411, 5033, 5049, 5062, 5069, {5076, 5086, 5096, 5106, 5116, 5126, 5136}, {1240, 5146, 5150, 5154, 5158, 5162, 5166}, {5170, 5175, 5180, 5185, 5190, 5195, 5200, 5205, 5210, 5215, 5221, 5227, 343}, {5233, 5235, 5237, 5239, 5241, 5243, 5245, 5247, 5249, 5251, 5254, 5257, 343}, 0, 0, 344, 346, {5022,5022,348,5260,5267,5276,5295,5312},{5000,5000,5331,5355,5382},{1411,1411,370,5411,5419},{2995,438,5428,5439}},
+	{16017, 16067, 5022, 16091, 5411, 5584, 5601, 5615, 5622, {5629, 5639, 5649, 5659, 5669, 5679, 5689}, {5699, 5703, 5707, 5711, 5715, 5719, 5723}, {5727, 5732, 5737, 5742, 5747, 5752, 5757, 5762, 5767, 5772, 5778, 5784, 343}, {5727, 5732, 5737, 5742, 5747, 5752, 5757, 5762, 5767, 5772, 5778, 5784, 343}, 0, 0, 344, 346, {5022,5022,348,5260,5267,16117,16130},{16067,16067,16141,16167,16189},{5411,1411,370,16213,16227,16242,5411,5419,16258,16275,16293},{16091,16091,16312,16334,2995,438,16358,16383,5428,5439}},
+	{8877, 878, 16410, 2995, 1411, 447, 74, 465, 468, {5819, 5826, 5834, 5842, 5851, 5861, 5869}, {5878, 3431, 5881, 5884, 5887, 5890, 5893}, {5896, 5904, 5913, 1802, 5919, 1812, 1817, 5923, 1829, 1839, 1847, 1856, 343}, {1865, 1869, 5932, 1877, 5919, 1881, 1885, 1889, 1893, 1897, 1901, 1905, 343}, 0, 1, 1909, 346, {348,5812,16410},{357,878},{370,1411},{376,1401,2995}},
+	{5936, 1381, 846, 5960, 5971, 447, 1416, 465, 468, {1698, 1706, 1713, 1721, 1728, 1736, 1743}, {5977, 3431, 3434, 5981, 3440, 5984, 5987}, {1781, 1788, 3774, 1802, 3785, 1812, 1817, 1822, 1829, 1839, 1847, 4732, 343}, {1865, 1869, 1873, 1877, 3785, 1881, 1885, 1889, 1893, 1897, 1901, 4762, 343}, 0, 1, 344, 346, {348,846},{357,1381},{370,5971},{376,5960}},
+	{5991, 878, 6012, 438, 370, 447, 74, 465, 468, {6023, 6033, 6047, 6054, 6061, 6070, 1484}, {6078, 6080, 6083, 6086, 6090, 6093, 2026}, {6096, 6105, 6110, 6117, 1808, 6127, 6136, 6143, 6153, 6163, 1589, 6176, 343}, {6186, 6190, 1873, 6194, 1808, 6198, 6202, 6206, 6210, 6214, 6219, 6223, 343}, 0, 1, 1909, 346, {348,5531,6012},{357,878},{370},{376,438}},
+	{16419, 3037, 37, 438, 370, 3070, 3075, 465, 468, {3097, 6260, 6274, 6287, 6300, 6313, 3144}, {3152, 6325, 6329, 6333, 6337, 6341, 3173}, {6345, 6353, 6363, 1006, 6370, 6375, 6381, 3215, 6387, 6396, 6404, 6413, 343}, {1865, 6422, 1873, 3257, 3785, 1881, 1885, 3265, 4962, 6426, 1901, 6430, 343}, 0, 0, 344, 346, {348,1678,890,37},{357,3037},{370},{376,16450,438}},
+	{5991, 878, 1942, 438, 370, 447, 74, 465, 468, {6434, 6444, 6449, 6456, 6465, 6469, 6476}, {6487, 6489, 6491, 2035, 6494, 1619, 6496}, {6498, 6507, 6517, 6524, 3785, 6532, 6538, 1822, 6544, 6555, 6565, 6575, 343}, {6585, 2135, 2913, 2143, 2074, 6589, 6593, 2155, 2159, 2917, 2167, 2921, 343}, 0, 1, 844, 346, {348,1942},{357,878},{370},{376,438}},
+	{6597, 6623, 1942, 2995, 1411, 6641, 74, 465, 468, {6657, 6680, 505, 6703, 6714, 6729, 6744}, {6759, 6764, 6769, 6774, 6779, 6784, 6789}, {6794, 6807, 6822, 6831, 6844, 6851, 6860, 6869, 6882, 6899, 6914, 6927, 343}, {6942, 6949, 6956, 6963, 678, 6970, 6977, 6984, 6991, 6998, 7005, 7012, 343}, 0, 1, 844, 346, {348,846,1942},{357,6623},{370,1411},{376,1401,2995}},
+	{7019, 7041, 3327, 2995, 370, 4285, 1148, 465, 468, {7055, 7064, 7076, 7083, 7091, 7101, 7107}, {7114, 7118, 7122, 7126, 7130, 7135, 7139}, {7143, 7153, 7162, 7170, 7178, 7186, 7193, 7200, 7208, 1589, 7214, 7222, 343}, {7231, 7235, 7239, 7244, 7248, 6202, 7252, 7256, 7260, 6219, 7264, 7268, 343}, 0, 1, 844, 346, {348,7272,3327},{357,7041},{370},{376,2995}},
+	{7283, 1381, 7304, 2995, 1411, 447, 1416, 465, 468, {7315, 7323, 7332, 7339, 7346, 7355, 7362}, {7369, 7372, 7375, 7378, 7381, 7385, 2026}, {4386, 4394, 7388, 4688, 7394, 4741, 4746, 1822, 1829, 4465, 1847, 1856, 343}, {1865, 1869, 1873, 1877, 7394, 4741, 4746, 1889, 1893, 1897, 1901, 1905, 343}, 0, 1, 4538, 346, {348,3327,7304},{357,1381},{370,1411},{376,1401,2995}},
+	{7399, 409, 6012, 7423, 7434, 447, 457, 7441, 7444, {7447, 7454, 7463, 7472, 7484, 7492, 7501}, {7511, 7515, 2913, 7520, 7525, 7529, 7533}, {7537, 7543, 3774, 7550, 1808, 7556, 7564, 7571, 7577, 7585, 7591, 7599, 343}, {2131, 7607, 2913, 7611, 7615, 7619, 7623, 7627, 7533, 7631, 7635, 7640, 343}, 0, 1, 1909, 346, {348,5531,6012},{357,409},{370,7434},{376,7644,7423}},
+	{16467, 7684, 6012, 438, 370, 447, 74, 7701, 7704, {7707, 7715, 7723, 1721, 1728, 1736, 7730}, {7738, 7742, 3434, 5981, 3440, 5984, 7746}, {5896, 5904, 3774, 1802, 1808, 1812, 1817, 7750, 1829, 1839, 1847, 1856, 343}, {1865, 1869, 1873, 1877, 1808, 1881, 1885, 1889, 1893, 1897, 1901, 1905, 343}, 0, 1, 1909, 346, {348,6012},{357,7684},{370,5971},{376,5960,438}},
+	{7758, 878, 37, 2995, 1411, 447, 74, 7779, 7810, {7841, 7872, 7900, 7928, 7947, 7981, 8006}, {8031, 8039, 8044, 8049, 8054, 8062, 8067}, {8072, 8091, 8122, 8141, 8160, 8182, 8207, 8229, 8251, 8273, 8292, 8320, 343}, {8342, 8351, 8360, 8372, 8384, 8393, 8405, 8414, 8423, 8432, 8441, 8450, 343}, 0, 0, 344, 346, {348,37},{357,878},{370,1411},{376,8459,2995}},
+	{8499, 8526, 1942, 438, 370, 447, 457, 465, 468, {8544, 8550, 8560, 8566, 8577, 8587, 8592}, {8602, 8606, 8610, 8614, 8619, 8623, 8627}, {8631, 8636, 8643, 8648, 8654, 8661, 8669, 8676, 8685, 8692, 8697, 8704, 343}, {8712, 8716, 2913, 8721, 2882, 8725, 8729, 8733, 8738, 8742, 8746, 8750, 343}, 0, 1, 844, 346, {348,1942},{357,8526},{370},{376,438}},
+	{16493, 409, 2678, 2995, 1411, 447, 457, 465, 468, {8754, 8761, 8767, 8774, 8779, 8785, 8791}, {8797, 8801, 8805, 8809, 8813, 8817, 8821}, {8825, 8833, 8842, 2068, 8848, 2078, 2083, 8852, 2095, 2105, 2113, 8860, 343}, {2131, 2135, 2913, 2143, 8848, 2147, 2151, 8869, 2159, 2163, 2167, 8873, 343}, 0, 0, 344, 346, {348,890,2678},{357,409},{370,1411},{376,2995}},
+	{8877, 878, 1942, 2995, 370, 8897, 74, 465, 468, {8913, 8926, 8945, 8962, 8975, 8988, 9004}, {9017, 6764, 6769, 6774, 6779, 6784, 6789}, {9022, 9033, 9046, 9061, 9074, 9087, 9100, 9111, 9124, 9139, 9152, 9171, 343}, {9184, 9191, 9198, 9205, 9214, 9223, 9232, 9239, 9248, 9255, 9264, 9273, 343}, 0, 1, 844, 346, {348,846,1942},{357,878},{370},{376,2995}},
+	{8877, 878, 1942, 2995, 5971, 447, 74, 465, 468, {9305, 9320, 9341, 9356, 9369, 9382, 9397}, {9410, 9415, 9420, 9425, 9430, 9435, 9440}, {9445, 9462, 9471, 9486, 678, 9503, 9518, 9531, 9546, 9563, 9584, 9601, 343}, {9616, 9191, 9623, 9630, 678, 9637, 9644, 9651, 9248, 9658, 9665, 9672, 343}, 0, 1, 844, 346, {348,1394,1942},{357,878},{370,5971},{376,5960,2995}},
+	{9679, 9701, 3327, 2995, 1411, 447, 1689, 465, 468, {9715, 9723, 9734, 9740, 9746, 9755, 1484}, {7114, 7118, 1768, 9761, 7130, 7135, 9765}, {1781, 1788, 7388, 1802, 1808, 9769, 9775, 9781, 1829, 1839, 1847, 1856, 343}, {1865, 1869, 1873, 1877, 1808, 1881, 1885, 9788, 1893, 1897, 1901, 1905, 343}, 0, 1, 844, 346, {348,9792,3327},{357,9701},{370,1411},{376,1401,2995}},
+	{8877, 878, 9799, 2995, 1411, 447, 9809, 465, 468, {9817, 9828, 9839, 9850, 9861, 9872, 9878}, {4380, 9887, 9889, 4371, 6078, 9891, 6489}, {9893, 9901, 9910, 9917, 3785, 9924, 9930, 1822, 1829, 9936, 1847, 9945, 343}, {9955, 9960, 9910, 1877, 3785, 9924, 9930, 1889, 9966, 1897, 1901, 9971, 343}, 0, 1, 844, 346, {348,846,9799},{357,878},{370,1411},{376,1401,2995}},
+	{9976, 10005, 4541, 2995, 370, 10026, 1416, 465, 468, {10044, 10055, 10065, 10074, 10085, 10097, 10108}, {10118, 4380, 10121, 9889, 10123, 10125, 6496}, {10128, 10138, 1796, 10149, 10158, 10164, 10172, 10180, 10188, 10199, 10208, 10218, 343}, {2131, 2135, 2913, 2143, 2074, 10228, 10233, 2155, 2159, 2163, 2167, 2921, 343}, 0, 1, 844, 346, {348,10238,4541},{357,10005},{370},{376,2995}},
+	{16514, 10278, 7272, 438, 370, 10300, 10315, 465, 468, {10327, 10339, 10351, 10363, 10377, 10392, 10405}, {10419, 10422, 10425, 10428, 10431, 6080, 7381}, {10434, 10441, 10449, 10454, 10465, 10475, 10485, 10492, 10504, 10513, 10520, 10531, 343}, {10541, 10545, 10549, 10553, 10557, 10561, 10565, 10569, 10573, 10577, 10581, 10585, 343}, 0, 1, 844, 346, {348,7272},{357,10278},{370},{376,438}},
+	{10589, 878, 10613, 2983, 370, 447, 74, 10622, 10629, {10636, 10652, 10665, 10681, 10698, 10716, 10725}, {10734, 10738, 10742, 10746, 10750, 10754, 10758}, {10762, 10775, 229, 10786, 10797, 10802, 10811, 10822, 10829, 10844, 10855, 10868, 343}, {10881, 10888, 10895, 10902, 10909, 10916, 10923, 10822, 10930, 10937, 10944, 10951, 343}, 0, 6, 344, 346, {348,10958,10613},{357,878},{370},{376,10968,2983}},
+	{10981, 409, 2678, 2199, 370, 447, 457, 11005, 11008, {11011, 11024, 11034, 11043, 11053, 11064, 11075}, {11087, 11090, 11095, 11100, 11105, 11110, 11115}, {11120, 11133, 11144, 11154, 11165, 11177, 11189, 11202, 11214, 11227, 11242, 11263, 343}, {11282, 11288, 11294, 11300, 11306, 11312, 11318, 11324, 11330, 11336, 11343, 11350, 343}, 0, 1, 344, 346, {348,2678},{357,409},{370},{376,2199}},
+	{11357, 2925, 1942, 2995, 370, 447, 2767, 11379, 16545, {11395, 11408, 11429, 11448, 11469, 11488, 11501}, {11512, 11519, 11526, 11533, 11540, 11547, 11554}, {16553, 16568, 11595, 11604, 11615, 16583, 16596, 11652, 11667, 11686, 11705, 11722, 343}, {16609, 16616, 11755, 11762, 11769, 16623, 16630, 11790, 11797, 11804, 11811, 11818, 343}, 0, 1, 844, 346, {348,11825,1942},{357,2925},{370},{376,2995}},
+	{16637, 16676, 5022, 438, 370, 16706, 1148, 465, 468, {11834, 11842, 11853, 11863, 11874, 11883, 11892}, {11902, 11905, 11908, 11911, 11914, 11917, 11920}, {11923, 11933, 11941, 11949, 11957, 11965, 11972, 11980, 11988, 11995, 12001, 12008, 343}, {12016, 12020, 1873, 12024, 3785, 12028, 12032, 12036, 12040, 12044, 12048, 12052, 343}, 0, 1, 344, 346, {348,16721,5022},{357,16676},{370},{376,438}},
+	{387, 409, 1942, 438, 370, 447, 457, 465, 468, {12056, 484, 505, 6703, 12069, 12086, 12097}, {574, 582, 590, 12110, 12118, 612, 12126}, {12134, 641, 658, 667, 12149, 12156, 12165, 699, 712, 731, 748, 763, 343}, {12174, 786, 12182, 794, 12190, 12198, 12206, 802, 12214, 818, 826, 12224, 343}, 0, 1, 844, 346, {348,12236,1942},{357,409},{370},{376,438}},
+	{16734, 409, 5022, 2983, 56, 447, 457, 343, 343, {12250, 12257, 12265, 12273, 12282, 12292, 12299}, {2026, 6491, 2032, 12308, 2038, 12311, 2044}, {12314, 12323, 12333, 2068, 8848, 12339, 12345, 12351, 2095, 2105, 2113, 8860, 343}, {2131, 2135, 2913, 2143, 8848, 2147, 2151, 2155, 2159, 2163, 2167, 8873, 343}, 0, 0, 344, 346, {348,5022},{357,409},{370,56},{376,46,2983}},
+	{16759, 16799, 1942, 2995, 1411, 12389, 1148, 12396, 12412, {5233, 5235, 5237, 5239, 5241, 5243, 5245}, {5233, 5235, 5237, 5239, 5241, 5243, 5245}, {5233, 5235, 5237, 5239, 5241, 5243, 5245, 5247, 5249, 5251, 5254, 5257, 343}, {5233, 5235, 5237, 5239, 5241, 5243, 5245, 5247, 5249, 5251, 5254, 5257, 343}, 0, 0, 844, 346, {348,1942},{357,12380,16799},{370,1411},{376,2995}},
+	{16831, 1666, 1678, 16852, 370, 447, 457, 465, 468, {4553, 12457, 12468, 12478, 12488, 12498, 12512}, {4639, 4643, 12524, 12529, 12533, 12538, 12543}, {1781, 1788, 3774, 4688, 3785, 1812, 1817, 1822, 1829, 1839, 1847, 4732, 343}, {1865, 1869, 1873, 1877, 3785, 1881, 1885, 1889, 1893, 1897, 1901, 4762, 343}, 0, 0, 1909, 346, {348,1911,1678},{357,1666},{370},{376,16852}},
+	{5991, 878, 1678, 438, 56, 447, 74, 12547, 12575, {12597, 12616, 12635, 12657, 12676, 12698, 12723}, {12742, 12752, 12762, 12775, 12785, 12798, 12814}, {12824, 12840, 12856, 12872, 12891, 12898, 12908, 12924, 12940, 12962, 12984, 13003, 343}, {12824, 12840, 12856, 12872, 12891, 12898, 12908, 12924, 12940, 12962, 12984, 13003, 343}, 0, 0, 1909, 346, {348,5812,1678},{357,878},{370,56},{376,2689,438}},
+	{16861, 357, 10613, 16885, 370, 1138, 1148, 465, 468, {13025, 13034, 13043, 13051, 13060, 13069, 13076}, {13085, 13089, 13093, 13097, 13101, 13105, 13109}, {8825, 8833, 13113, 13119, 8848, 2078, 13126, 13132, 13139, 13148, 13155, 13163, 343}, {2131, 2135, 2913, 2143, 8848, 2147, 2151, 13171, 2159, 2163, 2167, 8873, 343}, 0, 6, 344, 346, {348,10613},{357},{370},{376,16885}},
+	{16896, 878, 16921, 16929, 16942, 447, 74, 13175, 13217, {13259, 13278, 13297, 13319, 13338, 13360, 13385}, {13404, 13414, 13424, 13437, 13447, 13460, 13476}, {13486, 13514, 13542, 13558, 13577, 13584, 13594, 13610, 13626, 13654, 13676, 13698, 343}, {13723, 13742, 13542, 13558, 13577, 13584, 13594, 13610, 13761, 13777, 13793, 13803, 343}, 0, 0, 344, 346, {348,16921},{357,878},{370,16942},{376,16929}},
+	{16950, 878, 5812, 2689, 56, 447, 74, 13816, 13829, {13842, 13861, 13883, 13908, 13924, 13946, 13965}, {13975, 13982, 13989, 13996, 14003, 14010, 14017}, {14021, 14037, 14062, 14081, 14100, 14107, 14120, 14133, 14152, 14183, 14208, 14230, 343}, {14255, 14263, 14277, 14291, 14100, 14107, 14120, 14302, 14310, 14324, 14335, 14343, 343}, 0, 0, 344, 346, {348,5812},{357,878},{370,56},{376,2689}},
+	{16950, 878, 1911, 2689, 56, 447, 74, 14354, 14382, {14404, 14426, 14448, 14473, 14495, 14520, 14548}, {14570, 14580, 14590, 14603, 14613, 14626, 14642}, {14652, 14668, 14693, 14712, 14734, 14741, 14754, 14767, 14786, 14817, 14842, 14861, 343}, {14652, 14668, 14693, 14712, 14734, 14741, 14754, 14767, 14786, 14817, 14842, 14861, 343}, 0, 0, 344, 346, {348,1911},{357,878},{370,56},{376,2689}},
+	{16896, 878, 5812, 16929, 16942, 447, 74, 14886, 14914, {14936, 14955, 14974, 14996, 15015, 15037, 15062}, {15081, 15086, 15094, 15102, 15110, 15118, 15126}, {15137, 15153, 15178, 15197, 15219, 15226, 15239, 15252, 15271, 15299, 15324, 15346, 343}, {15137, 15153, 15178, 15197, 15219, 15226, 15239, 15252, 15271, 15299, 15324, 15346, 343}, 0, 0, 344, 346, {348,5812},{357,878},{370,16942},{376,16929}},
+	{16950, 878, 5812, 2689, 56, 447, 74, 15371, 15383, {12597, 12616, 15395, 12657, 12676, 12698, 12723}, {12742, 12752, 15417, 12775, 12785, 12798, 12814}, {15430, 15455, 12856, 15480, 15499, 12898, 15506, 15519, 15535, 15563, 15585, 15613, 343}, {15430, 15455, 12856, 15480, 15499, 12898, 15506, 15519, 15535, 15563, 15585, 15613, 343}, 0, 0, 344, 346, {348,5812},{357,878},{370,56},{376,2689}},
+	{4766, 409, 890, 376, 370, 447, 457, 465, 468, {15635, 15643, 15648, 15655, 15665, 15671, 15678}, {15686, 15690, 2913, 15694, 15699, 15703, 15707}, {15712, 15720, 15729, 15735, 15741, 15746, 15752, 15758, 15765, 15774, 15782, 15791, 343}, {15800, 2135, 2913, 15804, 2074, 15808, 15813, 13171, 15817, 15821, 2167, 2921, 343}, 0, 1, 344, 346, {348,890},{357,409},{370},{376}},
+	{16950, 878, 5812, 2689, 56, 447, 74, 15371, 15383, {15825, 12616, 15853, 12657, 12676, 12698, 12723}, {12742, 12752, 15417, 12775, 12785, 12798, 12814}, {15430, 15872, 12856, 15480, 15499, 12898, 15506, 15519, 15535, 15563, 15585, 15613, 343}, {15430, 15455, 12856, 15480, 15499, 12898, 15506, 15519, 15535, 15563, 15585, 15613, 343}, 0, 0, 344, 346, {348,5812},{357,878},{370,56},{376,2689}},
 	{1, 24, 37, 46, 56, 63, 74, 81, 84, {87, 98, 113, 130, 147, 160, 173}, {184, 187, 190, 193, 196, 199, 202}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, 0, 6, 344, 346, {348,37},{357,24},{370,56},{376,46}},
-	{16967, 4993, 17012, 17019, 17042, 5026, 5042, 1154, 1161, {1168, 1178, 1188, 1198, 1208, 1218, 1228}, {1238, 1242, 1246, 1250, 1254, 1258, 1262}, {1266, 1273, 1280, 1287, 1294, 1301, 1308, 1315, 1322, 1329, 1336, 1346, 343}, {1266, 1273, 1280, 1287, 1294, 1301, 1308, 1315, 1322, 1329, 1336, 1346, 343}, 0, 0, 344, 346, {348,17012},{357,4993},{370,17042},{376,17019}},
-	{1916, 1379, 1938, 438, 370, 447, 1414, 1949, 1955, {1962, 1970, 1977, 1986, 1995, 2006, 2014}, {2022, 2025, 2028, 2031, 2034, 2037, 2040}, {2043, 2050, 2058, 2064, 2070, 2074, 2079, 2084, 2091, 2101, 2109, 2118, 343}, {2127, 2131, 2135, 2139, 2070, 2143, 2147, 2151, 2155, 2159, 2163, 2167, 343}, 0, 1, 344, 346, {348,844,1938},{357,1379},{370},{376,438}},
-	{5984, 876, 2674, 438, 370, 447, 74, 465, 468, {2770, 2777, 2784, 2792, 2802, 2811, 2818}, {2827, 2831, 2835, 2839, 2843, 2847, 2851}, {2855, 2863, 2872, 2064, 2878, 2882, 2887, 2084, 2091, 2892, 2109, 2900, 343}, {2127, 2131, 2909, 2139, 2878, 2143, 2147, 2151, 2155, 2913, 2163, 2917, 343}, 0, 1, 344, 346, {348,2748,2674},{2728,2728,2921,2935,2955,876},{2755,2755,2970,1409,370},{2195,2195,2979,2991,438,376}},
-	{2999, 3033, 2674, 2979, 16935, 3066, 3071, 3083, 3088, {3093, 3101, 3107, 3114, 3125, 3132, 3140}, {3148, 3152, 1871, 3156, 3161, 3165, 3169}, {3174, 3180, 3188, 1004, 3194, 3199, 3205, 3211, 3218, 1042, 3229, 3239, 343}, {3249, 1867, 1871, 3253, 3257, 1879, 1883, 3261, 1891, 3265, 1899, 3269, 343}, 0, 1, 344, 346, {348,3273,3055,888,2674},{357,3033},{370,16935},{376,2979,16922}},
-	{8870, 876, 3868, 2991, 370, 447, 74, 465, 468, {3666, 3675, 3681, 3687, 3696, 3702, 3711}, {3718, 3723, 3728, 3733, 3738, 3743, 3748}, {3753, 3761, 3770, 3775, 3781, 3785, 3790, 3798, 3804, 3814, 1050, 3822, 343}, {3832, 3838, 3770, 3845, 3781, 3785, 3850, 3798, 3856, 1097, 1102, 3862, 343}, 0, 1, 344, 346, {888,3868,3273},{357,876,3649},{370},{376,438,2991}},
-	{5984, 876, 1938, 438, 370, 447, 74, 4783, 4786, {4789, 4798, 4806, 4815, 4826, 4835, 4844}, {3148, 3152, 1871, 4851, 4855, 4859, 4863}, {4867, 4875, 3188, 4884, 4891, 4898, 4905, 3211, 4912, 4922, 1050, 4930, 343}, {4939, 1867, 1871, 1875, 4943, 4947, 4951, 3261, 4955, 4959, 1899, 3269, 343}, 0, 1, 344, 346, {348,888,844,1938},{357,409,876},{370},{376,438}},
-	{8870, 876, 3868, 2991, 370, 447, 74, 465, 468, {5812, 5819, 5827, 5835, 5844, 5854, 5862}, {5871, 3427, 5874, 5877, 5880, 5883, 5886}, {5889, 5897, 5906, 1800, 5912, 1810, 1815, 5916, 1827, 1837, 1845, 1854, 343}, {1863, 1867, 5925, 1875, 5912, 1879, 1883, 1887, 1891, 1895, 1899, 1903, 343}, 0, 1, 344, 346, {348,5805,3273,3868},{357,876},{370,1409},{376,1399,2991}},
-	{5929, 1379, 844, 5953, 5964, 447, 1414, 465, 468, {1696, 1704, 1711, 1719, 1726, 1734, 1741}, {5970, 3427, 3430, 5974, 3436, 5977, 5980}, {1779, 1786, 3770, 1800, 3781, 1810, 1815, 1820, 1827, 1837, 1845, 4725, 343}, {1863, 1867, 1871, 1875, 3781, 1879, 1883, 1887, 1891, 1895, 1899, 4755, 343}, 0, 1, 344, 346, {348,844},{357,1379},{370,5964},{376,5953}},
-	{17048, 3033, 1676, 2991, 370, 3066, 3071, 465, 468, {3093, 6253, 6267, 6280, 6293, 6306, 3140}, {3148, 6318, 6322, 6326, 6330, 6334, 3169}, {6338, 6346, 6356, 1004, 6363, 6368, 6374, 3211, 6380, 6389, 6397, 6406, 343}, {1863, 6415, 1871, 3253, 3781, 1879, 1883, 3261, 4955, 6419, 1899, 6423, 343}, 0, 1, 344, 346, {348,1676},{357,3033},{370},{376,2991}},
-	{16460, 7677, 3323, 438, 5964, 447, 74, 7694, 7697, {7700, 7708, 7716, 1719, 1726, 1734, 7723}, {7731, 7735, 3430, 5974, 3436, 5977, 7739}, {5889, 5897, 3770, 1800, 1806, 1810, 1815, 7743, 1827, 1837, 1845, 1854, 343}, {1863, 1867, 1871, 1875, 1806, 1879, 1883, 1887, 1891, 1895, 1899, 1903, 343}, 0, 1, 344, 346, {348,6005,3323},{357,7677},{370,5964},{376,5953,438}},
-	{17078, 24, 2674, 2979, 56, 63, 74, 81, 84, {87, 98, 113, 130, 147, 160, 173}, {184, 187, 190, 193, 196, 199, 202}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, 0, 6, 344, 346, {348,37,2674},{357,24},{370,56},{376,46,2979}},
-	{17103, 5324, 17150, 15941, 17042, 17170, 17187, 1154, 1161, {1168, 1178, 1188, 1198, 1208, 1218, 1228}, {1238, 1242, 1246, 1250, 1254, 1258, 1262}, {1266, 1273, 1280, 1287, 1294, 1301, 1308, 1315, 1322, 1329, 1336, 1346, 343}, {5163, 5168, 5173, 5178, 5183, 5188, 5193, 5198, 5203, 5208, 5214, 5220, 343}, 0, 0, 344, 346, {348,17150},{357,5324},{370,17042},{376,15941}},
-	{17202, 9694, 1938, 438, 370, 447, 1687, 1949, 1955, {1962, 1970, 1977, 1986, 1995, 2006, 2014}, {2022, 2025, 2028, 2031, 2034, 2037, 2040}, {17225, 2050, 2058, 2064, 2070, 2074, 2079, 2084, 2091, 2101, 2109, 2118, 343}, {17233, 2131, 17238, 2139, 2070, 2143, 2147, 2151, 2155, 2159, 2163, 2167, 343}, 0, 1, 344, 346, {348,844,1938},{357,1379,9694},{370},{376,438}},
-	{17243, 876, 3868, 2195, 56, 447, 74, 465, 468, {2770, 2777, 2784, 2792, 2802, 2811, 2818}, {2827, 2831, 2835, 2839, 2843, 2847, 2851}, {2855, 2863, 2872, 2064, 2878, 2882, 2887, 2084, 2091, 2892, 2109, 2900, 343}, {2127, 2131, 2909, 2139, 2878, 2143, 2147, 2151, 2155, 2913, 2163, 2917, 343}, 0, 0, 344, 346, {348,2748,3273,3868},{2728,2728,2921,2935,2955,876},{2755,2755,2970,1409,370,56},{2195,2195,2979,2991,438,46}},
-	{17266, 17303, 2674, 2991, 1409, 17332, 457, 3083, 3088, {3093, 3101, 3107, 3114, 3125, 3132, 3140}, {3148, 3152, 1871, 3156, 3161, 3165, 3169}, {3174, 3180, 3188, 1004, 3194, 3199, 3205, 3211, 3218, 1042, 3229, 3239, 343}, {3249, 1867, 1871, 3253, 3257, 1879, 1883, 3261, 1891, 3265, 1899, 3269, 343}, 0, 1, 344, 346, {348,3273,3055,888,2674},{357,3033,17303},{370,1409},{376,2979,2991}},
-	{5984, 876, 6005, 438, 370, 447, 74, 465, 468, {3666, 3675, 3681, 3687, 3696, 3702, 3711}, {3718, 3723, 3728, 3733, 3738, 3743, 3748}, {3753, 3761, 3770, 3775, 3781, 3785, 3790, 3798, 3804, 3814, 1050, 3822, 343}, {3832, 3838, 3770, 3845, 3781, 3785, 3850, 3798, 3856, 1097, 1102, 3862, 343}, 0, 0, 344, 346, {888,3868,3273,5524,6005},{357,876,3649},{370},{376,438}},
-	{17078, 24, 2674, 2979, 56, 63, 74, 81, 84, {87, 98, 113, 130, 147, 160, 173}, {184, 187, 190, 193, 196, 199, 202}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, 0, 6, 344, 346, {348,37,2674},{357,24},{370,56},{376,46,2979}},
-	{17347, 17370, 888, 17382, 17393, 447, 457, 1154, 1161, {1168, 1178, 1188, 1198, 1208, 1218, 1228}, {1238, 1242, 1246, 1250, 1254, 1258, 1262}, {1266, 1273, 1280, 1287, 1294, 1301, 1308, 1315, 1322, 1329, 1336, 1346, 343}, {1266, 1273, 1280, 1287, 1294, 1301, 1308, 1315, 1322, 1329, 1336, 1346, 343}, 0, 0, 344, 346, {348,888},{357,17370},{370,17393},{376,17382}},
-	{1916, 1379, 1938, 438, 370, 447, 1414, 1949, 1955, {1962, 1970, 1977, 1986, 1995, 2006, 2014}, {2022, 2025, 2028, 2031, 2034, 2037, 2040}, {2043, 2050, 2058, 2064, 2070, 2074, 2079, 2084, 2091, 2101, 2109, 2118, 343}, {2127, 2131, 2135, 2139, 2070, 2143, 2147, 2151, 2155, 2159, 2163, 2167, 343}, 0, 1, 344, 346, {348,844,1938},{357,1379},{370},{376,438}},
-	{17401, 17425, 2674, 2195, 56, 447, 2763, 465, 468, {2770, 2777, 2784, 2792, 2802, 2811, 2818}, {2827, 2831, 2835, 2839, 2843, 2847, 2851}, {2855, 2863, 2872, 2064, 2878, 2882, 2887, 2084, 2091, 2892, 2109, 2900, 343}, {2127, 2131, 2909, 2139, 2878, 2143, 2147, 2151, 2155, 2913, 2163, 2917, 343}, 0, 0, 344, 346, {348,2748,888,2674},{2728,2728,2921,2935,2955,17425},{2755,2755,2970,1409,370,56},{2195,2195,2979,2991,438,2685}},
-	{2999, 3033, 2674, 2979, 16935, 3066, 3071, 3083, 3088, {3093, 3101, 3107, 3114, 3125, 3132, 3140}, {3148, 3152, 1871, 3156, 3161, 3165, 3169}, {3174, 3180, 3188, 1004, 3194, 3199, 3205, 3211, 3218, 1042, 3229, 3239, 343}, {3249, 1867, 1871, 3253, 3257, 1879, 1883, 3261, 1891, 3265, 1899, 3269, 343}, 0, 1, 344, 346, {348,3273,3055,2674},{357,3033},{370,16935},{376,2979,16922}},
-	{5984, 876, 1938, 438, 370, 447, 74, 465, 468, {3666, 3675, 3681, 3687, 3696, 3702, 3711}, {3718, 3723, 3728, 3733, 3738, 3743, 3748}, {3753, 3761, 3770, 3775, 3781, 3785, 3790, 3798, 3804, 3814, 1050, 3822, 343}, {3832, 3838, 3770, 3845, 3781, 3785, 3850, 3798, 3856, 1097, 1102, 3862, 343}, 0, 1, 344, 346, {888,3868,3273,844,1938},{357,876,3649},{370},{376,438}},
-	{17438, 24, 1676, 2991, 56, 63, 74, 81, 84, {87, 98, 113, 130, 147, 160, 173}, {184, 187, 190, 193, 196, 199, 202}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, 0, 6, 344, 346, {348,37,1676},{357,24},{370,56},{376,46,2991}},
-	{17103, 5324, 17150, 15941, 17042, 17170, 17187, 1154, 1161, {1168, 1178, 1188, 1198, 1208, 1218, 1228}, {1238, 1242, 1246, 1250, 1254, 1258, 1262}, {1266, 1273, 1280, 1287, 1294, 1301, 1308, 1315, 1322, 1329, 1336, 1346, 343}, {5163, 5168, 5173, 5178, 5183, 5188, 5193, 5198, 5203, 5208, 5214, 5220, 343}, 0, 0, 344, 346, {348,17150},{357,5324},{370,17042},{376,15941}},
-	{17243, 876, 3868, 2195, 56, 447, 74, 3083, 3088, {2770, 2777, 2784, 2792, 2802, 2811, 2818}, {2827, 2831, 2835, 2839, 2843, 2847, 2851}, {2855, 2863, 2872, 2064, 2878, 2882, 2887, 2084, 2091, 2892, 2109, 2900, 343}, {2127, 2131, 2909, 2139, 2878, 2143, 2147, 2151, 2155, 2913, 2163, 2917, 343}, 0, 0, 344, 346, {348,2748,3273,3868},{2728,2728,2921,2935,2955,876},{2755,2755,2970,1409,370,56},{2195,2195,2979,2991,438,46}},
-	{2999, 3033, 2674, 2979, 16935, 3066, 3071, 3083, 3088, {3093, 3101, 3107, 3114, 3125, 3132, 3140}, {3148, 3152, 1871, 3156, 3161, 3165, 3169}, {3174, 3180, 3188, 1004, 3194, 3199, 3205, 3211, 3218, 1042, 3229, 3239, 343}, {3249, 1867, 1871, 3253, 3257, 1879, 1883, 3261, 1891, 3265, 1899, 3269, 343}, 0, 1, 344, 346, {348,3273,3055,888,2674},{357,3033},{370,16935},{376,2979,16922}},
-	{3623, 3649, 2674, 438, 370, 447, 74, 465, 468, {3666, 3675, 3681, 3687, 3696, 3702, 3711}, {3718, 3723, 3728, 3733, 3738, 3743, 3748}, {3753, 3761, 3770, 3775, 3781, 3785, 3790, 3798, 3804, 3814, 1050, 3822, 343}, {3832, 3838, 3770, 3845, 3781, 3785, 3850, 3798, 3856, 1097, 1102, 3862, 343}, 0, 1, 344, 346, {888,3868,3273,2674},{357,876,3649},{370},{376,438}},
-	{17438, 24, 1676, 2991, 56, 63, 74, 81, 84, {87, 98, 113, 130, 147, 160, 173}, {184, 187, 190, 193, 196, 199, 202}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, 0, 6, 344, 346, {348,37,1676},{357,24},{370,56},{376,46,2991}},
-	{5984, 876, 2674, 438, 370, 447, 74, 3083, 3088, {2770, 2777, 2784, 2792, 2802, 2811, 2818}, {2827, 2831, 2835, 2839, 2843, 2847, 2851}, {2855, 2863, 2872, 2064, 2878, 2882, 2887, 2084, 2091, 2892, 2109, 2900, 343}, {2127, 2131, 2909, 2139, 2878, 2143, 2147, 2151, 2155, 2913, 2163, 2917, 343}, 0, 0, 344, 346, {348,2748,2674},{2728,2728,2921,2935,2955,876},{2755,2755,2970,1409,370},{2195,2195,2979,2991,438,376}},
-	{2999, 3033, 3055, 2979, 16935, 3066, 3071, 3083, 3088, {3093, 3101, 3107, 3114, 3125, 3132, 3140}, {3148, 3152, 1871, 3156, 3161, 3165, 3169}, {3174, 3180, 3188, 1004, 3194, 3199, 3205, 3211, 3218, 1042, 3229, 3239, 343}, {3249, 1867, 1871, 3253, 3257, 1879, 1883, 3261, 1891, 3265, 1899, 3269, 343}, 0, 1, 344, 346, {348,3273,3055,11818},{357,3033},{370,16935},{376,2979,16922}},
-	{17438, 24, 1676, 2991, 56, 63, 74, 81, 84, {87, 98, 113, 130, 147, 160, 173}, {87, 98, 113, 130, 147, 160, 173}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, 0, 6, 344, 346, {348,37,1676},{357,24},{370,56},{376,46,2991}},
-	{16727, 409, 5015, 2979, 56, 447, 457, 465, 468, {2770, 2777, 2784, 2792, 2802, 2811, 2818}, {2827, 2831, 2835, 2839, 2843, 2847, 2851}, {2855, 2863, 2872, 2064, 2878, 2882, 2887, 2084, 2091, 2892, 2109, 2900, 343}, {2127, 2131, 2909, 2139, 2878, 2143, 2147, 2151, 2155, 2913, 2163, 2917, 343}, 0, 0, 344, 346, {348,2748,5015},{2728,2728,2921,2935,2955,409},{2755,2755,2970,1409,370,56},{2195,2195,2979,2991,438,46}},
-	{2999, 3033, 2674, 2979, 16935, 3066, 3071, 3083, 3088, {3093, 3101, 3107, 3114, 3125, 3132, 3140}, {3148, 3152, 1871, 3156, 3161, 3165, 3169}, {3174, 3180, 3188, 1004, 3194, 3199, 3205, 3211, 3218, 1042, 3229, 3239, 343}, {3249, 1867, 1871, 3253, 3257, 1879, 1883, 3261, 1891, 3265, 1899, 3269, 343}, 0, 1, 344, 346, {348,3273,3055,888,2674},{357,3033},{370,16935},{376,2979,16922}},
-	{17078, 24, 2674, 2979, 56, 63, 74, 81, 84, {87, 98, 113, 130, 147, 160, 173}, {184, 187, 190, 193, 196, 199, 202}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, 0, 6, 344, 346, {348,37,2674},{357,24},{370,56},{376,46,2979}},
-	{2999, 3033, 2674, 2979, 16935, 3066, 3071, 3083, 3088, {3093, 3101, 3107, 3114, 3125, 3132, 3140}, {3148, 3152, 1871, 3156, 3161, 3165, 3169}, {3174, 3180, 3188, 1004, 3194, 3199, 3205, 3211, 3218, 1042, 3229, 3239, 343}, {3249, 1867, 1871, 3253, 3257, 1879, 1883, 3261, 1891, 3265, 1899, 3269, 343}, 0, 1, 344, 346, {348,3273,3055,888,2674},{357,3033},{370,16935},{376,2979,16922}},
-	{17078, 24, 2674, 2979, 56, 63, 74, 81, 84, {87, 98, 113, 130, 147, 160, 173}, {87, 98, 113, 130, 147, 160, 173}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, 0, 6, 344, 346, {348,37,2674},{357,24},{370,56},{376,46,2979}},
-	{2999, 3033, 2674, 2979, 1409, 3066, 3071, 3083, 3088, {3093, 3101, 3107, 3114, 3125, 3132, 3140}, {3148, 3152, 1871, 3156, 3161, 3165, 3169}, {3174, 3180, 3188, 1004, 3194, 3199, 3205, 3211, 3218, 1042, 3229, 3239, 343}, {3249, 1867, 1871, 3253, 3257, 1879, 1883, 3261, 1891, 3265, 1899, 3269, 343}, 0, 1, 344, 346, {348,3273,3055,2674},{357,3033},{370,1409},{376,2979,1399}},
-	{17078, 24, 2674, 2979, 56, 63, 74, 81, 84, {87, 98, 113, 130, 147, 160, 173}, {87, 98, 113, 130, 147, 160, 173}, {17459, 17483, 17492, 17501, 17512, 17521, 17534, 17543, 17548, 17559, 17581, 17605, 343}, {17459, 17483, 17492, 17501, 17512, 17521, 17534, 17543, 17548, 17559, 17581, 17605, 343}, 0, 4, 344, 346, {348,37,2674},{357,24},{370,56},{376,46,2979}},
-	{2999, 3033, 2674, 2979, 16935, 3066, 3071, 3083, 3088, {3093, 3101, 3107, 3114, 3125, 3132, 3140}, {3148, 3152, 1871, 3156, 3161, 3165, 3169}, {3174, 3180, 3188, 1004, 3194, 3199, 3205, 3211, 3218, 1042, 3229, 3239, 343}, {3249, 1867, 1871, 3253, 3257, 1879, 1883, 3261, 1891, 3265, 1899, 3269, 343}, 0, 1, 344, 346, {348,3273,3055,888,2674},{357,3033},{370,16935},{376,2979,16922}},
-	{17078, 24, 2674, 2979, 56, 63, 74, 81, 84, {87, 98, 113, 130, 147, 160, 173}, {87, 98, 113, 130, 147, 160, 173}, {17459, 17483, 17492, 17501, 17627, 17521, 17534, 17543, 17548, 17559, 17581, 17605, 343}, {17459, 17483, 17492, 17501, 17627, 17521, 17534, 17543, 17548, 17559, 17581, 17605, 343}, 0, 6, 344, 346, {348,37,2674},{357,24},{370,56},{376,46,2979}},
-	{17636, 17667, 2674, 2979, 2755, 447, 2763, 465, 468, {2770, 2777, 2784, 2792, 2802, 2811, 2818}, {2827, 2831, 2835, 2839, 2843, 2847, 2851}, {2855, 2863, 2872, 2064, 2878, 2882, 2887, 2084, 2091, 2892, 2109, 2900, 343}, {2127, 2131, 2909, 2139, 2878, 2143, 2147, 2151, 2155, 2913, 2163, 2917, 343}, 0, 0, 344, 346, {2674,6005},{2728,2728,2921,2935,2955,17667},{2755,2755,2970,1409,370},{2979,438}},
-	{2999, 3033, 2674, 2979, 370, 3066, 3071, 3083, 3088, {3093, 3101, 3107, 3114, 3125, 3132, 3140}, {3148, 3152, 1871, 3156, 3161, 3165, 3169}, {3174, 3180, 3188, 1004, 3194, 3199, 3205, 3211, 3218, 1042, 3229, 3239, 343}, {3249, 1867, 1871, 3253, 3257, 1879, 1883, 3261, 1891, 3265, 1899, 3269, 343}, 0, 1, 344, 346, {348,3273,3055,888,2674},{357,3033},{370},{376,2979,1399}},
-	{17078, 24, 2674, 2979, 56, 63, 74, 81, 84, {87, 98, 113, 130, 147, 160, 173}, {87, 98, 113, 130, 147, 160, 173}, {17459, 17483, 17492, 17501, 17512, 17521, 17534, 17543, 17548, 17559, 17581, 17605, 343}, {17459, 17483, 17492, 17501, 17512, 17521, 17534, 17543, 17548, 17559, 17581, 17605, 343}, 0, 6, 344, 346, {348,37,2674},{357,24},{370,56},{376,46,2979}},
-	{2171, 409, 10606, 2195, 56, 447, 457, 465, 468, {2770, 2777, 2784, 2792, 2802, 2811, 2818}, {2827, 2831, 2835, 2839, 2843, 2847, 2851}, {2855, 2863, 2872, 2064, 2878, 2882, 2887, 2084, 2091, 2892, 2109, 2900, 343}, {2127, 2131, 2909, 2139, 2878, 2143, 2147, 2151, 2155, 2913, 2163, 2917, 343}, 0, 0, 344, 346, {348,2748,37,10606},{2728,2728,2921,2935,2955,409},{2755,2755,2970,1409,370,56},{2195,2195,2979,2991,438,46}},
-	{17048, 3033, 2674, 2991, 1409, 3066, 3071, 3083, 3088, {3093, 3101, 3107, 3114, 3125, 3132, 3140}, {3148, 3152, 1871, 3156, 3161, 3165, 3169}, {3174, 3180, 3188, 1004, 3194, 3199, 3205, 3211, 3218, 1042, 3229, 3239, 343}, {3249, 1867, 1871, 3253, 3257, 1879, 1883, 3261, 1891, 3265, 1899, 3269, 343}, 0, 1, 344, 346, {348,3273,3055,888,2674},{357,3033},{370,1409},{376,2979,1399,2991}},
-	{17078, 24, 2674, 2979, 56, 63, 74, 81, 84, {87, 98, 113, 130, 147, 160, 173}, {184, 187, 190, 193, 196, 199, 202}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, 0, 6, 344, 346, {348,37,2674},{357,24},{370,56},{376,46,2979}},
-	{17401, 17425, 10606, 2195, 56, 447, 2763, 465, 468, {2770, 2777, 2784, 2792, 2802, 2811, 2818}, {2827, 2831, 2835, 2839, 2843, 2847, 2851}, {2855, 2863, 2872, 2064, 2878, 2882, 2887, 2084, 2091, 2892, 2109, 2900, 343}, {2127, 2131, 2909, 2139, 2878, 2143, 2147, 2151, 2155, 2913, 2163, 2917, 343}, 0, 0, 344, 346, {348,2748,10606},{2728,2728,2921,2935,2955,17425},{2755,2755,2970,1409,370,56},{2195,2195,2979,2991,438,2685}},
-	{17048, 3033, 1676, 2991, 1409, 3066, 3071, 3083, 3088, {3093, 3101, 3107, 3114, 3125, 3132, 3140}, {3148, 3152, 1871, 3156, 3161, 3165, 3169}, {3174, 3180, 3188, 1004, 3194, 3199, 3205, 3211, 3218, 1042, 3229, 3239, 343}, {3249, 1867, 1871, 3253, 3257, 1879, 1883, 3261, 1891, 3265, 1899, 3269, 343}, 0, 1, 344, 346, {348,3273,3055,1907,1676},{357,3033},{370,1409},{376,2979,1399,2991}},
-	{17078, 24, 2674, 2979, 56, 63, 74, 81, 84, {87, 98, 113, 130, 147, 160, 173}, {184, 187, 190, 193, 196, 199, 202}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, 0, 6, 344, 346, {348,37,2674},{357,24},{370,56},{376,46,2979}},
-	{2999, 3033, 2674, 2979, 16935, 3066, 3071, 3083, 3088, {3093, 3101, 3107, 3114, 3125, 3132, 3140}, {3148, 3152, 1871, 3156, 3161, 3165, 3169}, {3174, 3180, 3188, 1004, 3194, 3199, 3205, 3211, 3218, 1042, 3229, 3239, 343}, {3249, 1867, 1871, 3253, 3257, 1879, 1883, 3261, 1891, 3265, 1899, 3269, 343}, 0, 1, 344, 346, {348,3273,3055,888,2674},{357,3033},{370,16935},{376,2979,16922}},
-	{17078, 24, 2674, 2979, 56, 63, 74, 81, 84, {87, 98, 113, 130, 147, 160, 173}, {184, 187, 190, 193, 196, 199, 202}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, 0, 6, 344, 346, {348,37,2674},{357,24},{370,56},{376,46,2979}},
-	{2999, 3033, 2674, 2979, 16935, 3066, 3071, 3083, 3088, {3093, 3101, 3107, 3114, 3125, 3132, 3140}, {3148, 3152, 1871, 3156, 3161, 3165, 3169}, {3174, 3180, 3188, 1004, 3194, 3199, 3205, 3211, 3218, 1042, 3229, 3239, 343}, {3249, 1867, 1871, 3253, 3257, 1879, 1883, 3261, 1891, 3265, 1899, 3269, 343}, 0, 1, 344, 346, {348,3273,3055,888,2674},{357,3033},{370,16935},{376,2979,16922}},
-	{17078, 24, 2674, 2979, 56, 63, 74, 81, 84, {87, 98, 113, 130, 147, 160, 173}, {87, 98, 113, 130, 147, 160, 173}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, 0, 6, 344, 346, {348,37,2674},{357,24},{370,56},{376,46,2979}},
-	{2999, 3033, 2674, 2979, 16935, 3066, 3071, 3083, 3088, {3093, 3101, 3107, 3114, 3125, 3132, 3140}, {3148, 3152, 1871, 3156, 3161, 3165, 3169}, {3174, 3180, 3188, 1004, 3194, 3199, 3205, 3211, 3218, 1042, 3229, 3239, 343}, {3249, 1867, 1871, 3253, 3257, 1879, 1883, 3261, 1891, 3265, 1899, 3269, 343}, 0, 1, 344, 346, {348,3273,3055,888,2674},{357,3033},{370,16935},{376,2979,16922}},
-	{2999, 3033, 2674, 2979, 16935, 3066, 3071, 3083, 3088, {3093, 3101, 3107, 3114, 3125, 3132, 3140}, {3148, 3152, 1871, 3156, 3161, 3165, 3169}, {3174, 3180, 3188, 1004, 3194, 3199, 3205, 3211, 3218, 1042, 3229, 3239, 343}, {3249, 1867, 1871, 3253, 3257, 1879, 1883, 3261, 1891, 3265, 1899, 3269, 343}, 0, 1, 344, 346, {348,3273,3055,888,2674},{357,3033},{370,16935},{376,2979,16922}},
-	{17686, 17721, 2674, 2979, 16935, 3066, 17744, 3083, 3088, {3093, 3101, 3107, 3114, 3125, 3132, 3140}, {3148, 3152, 1871, 3156, 3161, 3165, 3169}, {3174, 3180, 3188, 1004, 3194, 3199, 3205, 3211, 3218, 1042, 3229, 3239, 343}, {3249, 1867, 1871, 3253, 3257, 1879, 1883, 3261, 1891, 3265, 1899, 3269, 343}, 0, 1, 344, 346, {348,3273,3055,888,2674},{357,3033,17721},{370,16935},{376,2979,16922}},
-	{2999, 3033, 2674, 2979, 16935, 3066, 3071, 3083, 3088, {3093, 3101, 3107, 3114, 3125, 3132, 3140}, {3148, 3152, 1871, 3156, 3161, 3165, 3169}, {3174, 3180, 3188, 1004, 3194, 3199, 3205, 3211, 3218, 1042, 3229, 3239, 343}, {3249, 1867, 1871, 3253, 3257, 1879, 1883, 3261, 1891, 3265, 1899, 3269, 343}, 0, 1, 344, 346, {348,3273,3055,888,2674},{357,3033},{370,16935},{376,2979,16922}},
-	{2999, 3033, 2674, 2979, 16935, 3066, 3071, 3083, 3088, {3093, 3101, 3107, 3114, 3125, 3132, 3140}, {3148, 3152, 1871, 3156, 3161, 3165, 3169}, {3174, 3180, 3188, 1004, 3194, 3199, 3205, 3211, 3218, 1042, 3229, 3239, 343}, {3249, 1867, 1871, 3253, 3257, 1879, 1883, 3261, 1891, 3265, 1899, 3269, 343}, 0, 1, 344, 346, {348,3273,3055,11818,2674},{357,3033},{370,16935},{376,2979,16922}},
-	{1112, 357, 348, 376, 370, 1136, 1146, 1154, 1161, {1168, 1178, 1188, 1198, 1208, 1218, 1228}, {1238, 1242, 1246, 1250, 1254, 1258, 1262}, {1266, 1273, 1280, 1287, 1294, 1301, 1308, 1315, 1322, 1329, 1336, 1346, 343}, {1266, 1273, 1280, 1287, 1294, 1301, 1308, 1315, 1322, 1329, 1336, 1346, 343}, 0, 0, 344, 346, {348},{357},{370},{376}}
+	{16974, 5000, 17019, 17026, 17049, 5033, 5049, 1156, 1163, {1170, 1180, 1190, 1200, 1210, 1220, 1230}, {1240, 1244, 1248, 1252, 1256, 1260, 1264}, {1268, 1275, 1282, 1289, 1296, 1303, 1310, 1317, 1324, 1331, 1338, 1348, 343}, {1268, 1275, 1282, 1289, 1296, 1303, 1310, 1317, 1324, 1331, 1338, 1348, 343}, 0, 0, 344, 346, {348,17019},{357,5000},{370,17049},{376,17026}},
+	{1920, 1381, 1942, 438, 370, 447, 1416, 1953, 1959, {1966, 1974, 1981, 1990, 1999, 2010, 2018}, {2026, 2029, 2032, 2035, 2038, 2041, 2044}, {2047, 2054, 2062, 2068, 2074, 2078, 2083, 2088, 2095, 2105, 2113, 2122, 343}, {2131, 2135, 2139, 2143, 2074, 2147, 2151, 2155, 2159, 2163, 2167, 2171, 343}, 0, 1, 844, 346, {348,846,1942},{357,1381},{370},{376,438}},
+	{5991, 878, 2678, 438, 370, 447, 74, 465, 468, {2774, 2781, 2788, 2796, 2806, 2815, 2822}, {2831, 2835, 2839, 2843, 2847, 2851, 2855}, {2859, 2867, 2876, 2068, 2882, 2886, 2891, 2088, 2095, 2896, 2113, 2904, 343}, {2131, 2135, 2913, 2143, 2882, 2147, 2151, 2155, 2159, 2917, 2167, 2921, 343}, 0, 1, 344, 346, {348,2752,2678},{2732,2732,2925,2939,2959,878},{2759,2759,2974,1411,370},{2199,2199,2983,2995,438,376}},
+	{3003, 3037, 2678, 2983, 16942, 3070, 3075, 3087, 3092, {3097, 3105, 3111, 3118, 3129, 3136, 3144}, {3152, 3156, 1873, 3160, 3165, 3169, 3173}, {3178, 3184, 3192, 1006, 3198, 3203, 3209, 3215, 3222, 1044, 3233, 3243, 343}, {3253, 1869, 1873, 3257, 3261, 1881, 1885, 3265, 1893, 3269, 1901, 3273, 343}, 0, 1, 344, 346, {348,3277,3059,890,2678},{357,3037},{370,16942},{376,2983,16929}},
+	{8877, 878, 3872, 2995, 370, 447, 74, 465, 468, {3670, 3679, 3685, 3691, 3700, 3706, 3715}, {3722, 3727, 3732, 3737, 3742, 3747, 3752}, {3757, 3765, 3774, 3779, 3785, 3789, 3794, 3802, 3808, 3818, 1052, 3826, 343}, {3836, 3842, 3774, 3849, 3785, 3789, 3854, 3802, 3860, 1099, 1104, 3866, 343}, 0, 1, 344, 346, {890,3872,3277},{357,878,3653},{370},{376,438,2995}},
+	{5991, 878, 1942, 438, 370, 447, 74, 4790, 4793, {4796, 4805, 4813, 4822, 4833, 4842, 4851}, {3152, 3156, 1873, 4858, 4862, 4866, 4870}, {4874, 4882, 3192, 4891, 4898, 4905, 4912, 3215, 4919, 4929, 1052, 4937, 343}, {4946, 1869, 1873, 1877, 4950, 4954, 4958, 3265, 4962, 4966, 1901, 3273, 343}, 0, 1, 844, 346, {348,890,846,1942},{357,409,878},{370},{376,438}},
+	{8877, 878, 3872, 2995, 370, 447, 74, 465, 468, {5819, 5826, 5834, 5842, 5851, 5861, 5869}, {5878, 3431, 5881, 5884, 5887, 5890, 5893}, {5896, 5904, 5913, 1802, 5919, 1812, 1817, 5923, 1829, 1839, 1847, 1856, 343}, {1865, 1869, 5932, 1877, 5919, 1881, 1885, 1889, 1893, 1897, 1901, 1905, 343}, 0, 1, 344, 346, {348,5812,3277,3872},{357,878},{370,1411},{376,1401,2995}},
+	{5936, 1381, 846, 5960, 5971, 447, 1416, 465, 468, {1698, 1706, 1713, 1721, 1728, 1736, 1743}, {5977, 3431, 3434, 5981, 3440, 5984, 5987}, {1781, 1788, 3774, 1802, 3785, 1812, 1817, 1822, 1829, 1839, 1847, 4732, 343}, {1865, 1869, 1873, 1877, 3785, 1881, 1885, 1889, 1893, 1897, 1901, 4762, 343}, 0, 1, 344, 346, {348,846},{357,1381},{370,5971},{376,5960}},
+	{17055, 3037, 1678, 2995, 370, 3070, 3075, 465, 468, {3097, 6260, 6274, 6287, 6300, 6313, 3144}, {3152, 6325, 6329, 6333, 6337, 6341, 3173}, {6345, 6353, 6363, 1006, 6370, 6375, 6381, 3215, 6387, 6396, 6404, 6413, 343}, {1865, 6422, 1873, 3257, 3785, 1881, 1885, 3265, 4962, 6426, 1901, 6430, 343}, 0, 1, 1909, 346, {348,1678},{357,3037},{370},{376,2995}},
+	{16467, 7684, 3327, 438, 5971, 447, 74, 7701, 7704, {7707, 7715, 7723, 1721, 1728, 1736, 7730}, {7738, 7742, 3434, 5981, 3440, 5984, 7746}, {5896, 5904, 3774, 1802, 1808, 1812, 1817, 7750, 1829, 1839, 1847, 1856, 343}, {1865, 1869, 1873, 1877, 1808, 1881, 1885, 1889, 1893, 1897, 1901, 1905, 343}, 0, 1, 844, 346, {348,6012,3327},{357,7684},{370,5971},{376,5960,438}},
+	{17085, 24, 2678, 2983, 56, 63, 74, 81, 84, {87, 98, 113, 130, 147, 160, 173}, {184, 187, 190, 193, 196, 199, 202}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, 0, 6, 344, 346, {348,37,2678},{357,24},{370,56},{376,46,2983}},
+	{17110, 5331, 17157, 15948, 17049, 17177, 17194, 1156, 1163, {1170, 1180, 1190, 1200, 1210, 1220, 1230}, {1240, 1244, 1248, 1252, 1256, 1260, 1264}, {1268, 1275, 1282, 1289, 1296, 1303, 1310, 1317, 1324, 1331, 1338, 1348, 343}, {5170, 5175, 5180, 5185, 5190, 5195, 5200, 5205, 5210, 5215, 5221, 5227, 343}, 0, 0, 344, 346, {348,17157},{357,5331},{370,17049},{376,15948}},
+	{17209, 9701, 1942, 438, 370, 447, 1689, 1953, 1959, {1966, 1974, 1981, 1990, 1999, 2010, 2018}, {2026, 2029, 2032, 2035, 2038, 2041, 2044}, {17232, 2054, 2062, 2068, 2074, 2078, 2083, 2088, 2095, 2105, 2113, 2122, 343}, {17240, 2135, 17245, 2143, 2074, 2147, 2151, 2155, 2159, 2163, 2167, 2171, 343}, 0, 1, 844, 346, {348,846,1942},{357,1381,9701},{370},{376,438}},
+	{17250, 878, 3872, 2199, 56, 447, 74, 465, 468, {2774, 2781, 2788, 2796, 2806, 2815, 2822}, {2831, 2835, 2839, 2843, 2847, 2851, 2855}, {2859, 2867, 2876, 2068, 2882, 2886, 2891, 2088, 2095, 2896, 2113, 2904, 343}, {2131, 2135, 2913, 2143, 2882, 2147, 2151, 2155, 2159, 2917, 2167, 2921, 343}, 0, 0, 344, 346, {348,2752,3277,3872},{2732,2732,2925,2939,2959,878},{2759,2759,2974,1411,370,56},{2199,2199,2983,2995,438,46}},
+	{17273, 17310, 2678, 2995, 1411, 17339, 457, 3087, 3092, {3097, 3105, 3111, 3118, 3129, 3136, 3144}, {3152, 3156, 1873, 3160, 3165, 3169, 3173}, {3178, 3184, 3192, 1006, 3198, 3203, 3209, 3215, 3222, 1044, 3233, 3243, 343}, {3253, 1869, 1873, 3257, 3261, 1881, 1885, 3265, 1893, 3269, 1901, 3273, 343}, 0, 1, 344, 346, {348,3277,3059,890,2678},{357,3037,17310},{370,1411},{376,2983,2995}},
+	{5991, 878, 6012, 438, 370, 447, 74, 465, 468, {3670, 3679, 3685, 3691, 3700, 3706, 3715}, {3722, 3727, 3732, 3737, 3742, 3747, 3752}, {3757, 3765, 3774, 3779, 3785, 3789, 3794, 3802, 3808, 3818, 1052, 3826, 343}, {3836, 3842, 3774, 3849, 3785, 3789, 3854, 3802, 3860, 1099, 1104, 3866, 343}, 0, 0, 1909, 346, {890,3872,3277,5531,6012},{357,878,3653},{370},{376,438}},
+	{17085, 24, 2678, 2983, 56, 63, 74, 81, 84, {87, 98, 113, 130, 147, 160, 173}, {184, 187, 190, 193, 196, 199, 202}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, 0, 6, 344, 346, {348,37,2678},{357,24},{370,56},{376,46,2983}},
+	{17354, 17377, 890, 17389, 17400, 447, 457, 1156, 1163, {1170, 1180, 1190, 1200, 1210, 1220, 1230}, {1240, 1244, 1248, 1252, 1256, 1260, 1264}, {1268, 1275, 1282, 1289, 1296, 1303, 1310, 1317, 1324, 1331, 1338, 1348, 343}, {1268, 1275, 1282, 1289, 1296, 1303, 1310, 1317, 1324, 1331, 1338, 1348, 343}, 0, 0, 344, 346, {348,890},{357,17377},{370,17400},{376,17389}},
+	{1920, 1381, 1942, 438, 370, 447, 1416, 1953, 1959, {1966, 1974, 1981, 1990, 1999, 2010, 2018}, {2026, 2029, 2032, 2035, 2038, 2041, 2044}, {2047, 2054, 2062, 2068, 2074, 2078, 2083, 2088, 2095, 2105, 2113, 2122, 343}, {2131, 2135, 2139, 2143, 2074, 2147, 2151, 2155, 2159, 2163, 2167, 2171, 343}, 0, 1, 844, 346, {348,846,1942},{357,1381},{370},{376,438}},
+	{17408, 17432, 2678, 2199, 56, 447, 2767, 465, 468, {2774, 2781, 2788, 2796, 2806, 2815, 2822}, {2831, 2835, 2839, 2843, 2847, 2851, 2855}, {2859, 2867, 2876, 2068, 2882, 2886, 2891, 2088, 2095, 2896, 2113, 2904, 343}, {2131, 2135, 2913, 2143, 2882, 2147, 2151, 2155, 2159, 2917, 2167, 2921, 343}, 0, 0, 344, 346, {348,2752,890,2678},{2732,2732,2925,2939,2959,17432},{2759,2759,2974,1411,370,56},{2199,2199,2983,2995,438,2689}},
+	{3003, 3037, 2678, 2983, 16942, 3070, 3075, 3087, 3092, {3097, 3105, 3111, 3118, 3129, 3136, 3144}, {3152, 3156, 1873, 3160, 3165, 3169, 3173}, {3178, 3184, 3192, 1006, 3198, 3203, 3209, 3215, 3222, 1044, 3233, 3243, 343}, {3253, 1869, 1873, 3257, 3261, 1881, 1885, 3265, 1893, 3269, 1901, 3273, 343}, 0, 1, 344, 346, {348,3277,3059,2678},{357,3037},{370,16942},{376,2983,16929}},
+	{5991, 878, 1942, 438, 370, 447, 74, 465, 468, {3670, 3679, 3685, 3691, 3700, 3706, 3715}, {3722, 3727, 3732, 3737, 3742, 3747, 3752}, {3757, 3765, 3774, 3779, 3785, 3789, 3794, 3802, 3808, 3818, 1052, 3826, 343}, {3836, 3842, 3774, 3849, 3785, 3789, 3854, 3802, 3860, 1099, 1104, 3866, 343}, 0, 1, 844, 346, {890,3872,3277,846,1942},{357,878,3653},{370},{376,438}},
+	{17445, 24, 1678, 2995, 56, 63, 74, 81, 84, {87, 98, 113, 130, 147, 160, 173}, {184, 187, 190, 193, 196, 199, 202}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, 0, 6, 1909, 346, {348,37,1678},{357,24},{370,56},{376,46,2995}},
+	{17110, 5331, 17157, 15948, 17049, 17177, 17194, 1156, 1163, {1170, 1180, 1190, 1200, 1210, 1220, 1230}, {1240, 1244, 1248, 1252, 1256, 1260, 1264}, {1268, 1275, 1282, 1289, 1296, 1303, 1310, 1317, 1324, 1331, 1338, 1348, 343}, {5170, 5175, 5180, 5185, 5190, 5195, 5200, 5205, 5210, 5215, 5221, 5227, 343}, 0, 0, 344, 346, {348,17157},{357,5331},{370,17049},{376,15948}},
+	{17250, 878, 3872, 2199, 56, 447, 74, 3087, 3092, {2774, 2781, 2788, 2796, 2806, 2815, 2822}, {2831, 2835, 2839, 2843, 2847, 2851, 2855}, {2859, 2867, 2876, 2068, 2882, 2886, 2891, 2088, 2095, 2896, 2113, 2904, 343}, {2131, 2135, 2913, 2143, 2882, 2147, 2151, 2155, 2159, 2917, 2167, 2921, 343}, 0, 0, 344, 346, {348,2752,3277,3872},{2732,2732,2925,2939,2959,878},{2759,2759,2974,1411,370,56},{2199,2199,2983,2995,438,46}},
+	{3003, 3037, 2678, 2983, 16942, 3070, 3075, 3087, 3092, {3097, 3105, 3111, 3118, 3129, 3136, 3144}, {3152, 3156, 1873, 3160, 3165, 3169, 3173}, {3178, 3184, 3192, 1006, 3198, 3203, 3209, 3215, 3222, 1044, 3233, 3243, 343}, {3253, 1869, 1873, 3257, 3261, 1881, 1885, 3265, 1893, 3269, 1901, 3273, 343}, 0, 1, 344, 346, {348,3277,3059,890,2678},{357,3037},{370,16942},{376,2983,16929}},
+	{3627, 3653, 2678, 438, 370, 447, 74, 465, 468, {3670, 3679, 3685, 3691, 3700, 3706, 3715}, {3722, 3727, 3732, 3737, 3742, 3747, 3752}, {3757, 3765, 3774, 3779, 3785, 3789, 3794, 3802, 3808, 3818, 1052, 3826, 343}, {3836, 3842, 3774, 3849, 3785, 3789, 3854, 3802, 3860, 1099, 1104, 3866, 343}, 0, 1, 344, 346, {890,3872,3277,2678},{357,878,3653},{370},{376,438}},
+	{17445, 24, 1678, 2995, 56, 63, 74, 81, 84, {87, 98, 113, 130, 147, 160, 173}, {184, 187, 190, 193, 196, 199, 202}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, 0, 6, 1909, 346, {348,37,1678},{357,24},{370,56},{376,46,2995}},
+	{5991, 878, 2678, 438, 370, 447, 74, 3087, 3092, {2774, 2781, 2788, 2796, 2806, 2815, 2822}, {2831, 2835, 2839, 2843, 2847, 2851, 2855}, {2859, 2867, 2876, 2068, 2882, 2886, 2891, 2088, 2095, 2896, 2113, 2904, 343}, {2131, 2135, 2913, 2143, 2882, 2147, 2151, 2155, 2159, 2917, 2167, 2921, 343}, 0, 0, 344, 346, {348,2752,2678},{2732,2732,2925,2939,2959,878},{2759,2759,2974,1411,370},{2199,2199,2983,2995,438,376}},
+	{3003, 3037, 3059, 2983, 16942, 3070, 3075, 3087, 3092, {3097, 3105, 3111, 3118, 3129, 3136, 3144}, {3152, 3156, 1873, 3160, 3165, 3169, 3173}, {3178, 3184, 3192, 1006, 3198, 3203, 3209, 3215, 3222, 1044, 3233, 3243, 343}, {3253, 1869, 1873, 3257, 3261, 1881, 1885, 3265, 1893, 3269, 1901, 3273, 343}, 0, 1, 344, 346, {348,3277,3059,11825},{357,3037},{370,16942},{376,2983,16929}},
+	{17445, 24, 1678, 2995, 56, 63, 74, 81, 84, {87, 98, 113, 130, 147, 160, 173}, {87, 98, 113, 130, 147, 160, 173}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, 0, 6, 1909, 346, {348,37,1678},{357,24},{370,56},{376,46,2995}},
+	{16734, 409, 5022, 2983, 56, 447, 457, 465, 468, {2774, 2781, 2788, 2796, 2806, 2815, 2822}, {2831, 2835, 2839, 2843, 2847, 2851, 2855}, {2859, 2867, 2876, 2068, 2882, 2886, 2891, 2088, 2095, 2896, 2113, 2904, 343}, {2131, 2135, 2913, 2143, 2882, 2147, 2151, 2155, 2159, 2917, 2167, 2921, 343}, 0, 0, 344, 346, {348,2752,5022},{2732,2732,2925,2939,2959,409},{2759,2759,2974,1411,370,56},{2199,2199,2983,2995,438,46}},
+	{3003, 3037, 2678, 2983, 16942, 3070, 3075, 3087, 3092, {3097, 3105, 3111, 3118, 3129, 3136, 3144}, {3152, 3156, 1873, 3160, 3165, 3169, 3173}, {3178, 3184, 3192, 1006, 3198, 3203, 3209, 3215, 3222, 1044, 3233, 3243, 343}, {3253, 1869, 1873, 3257, 3261, 1881, 1885, 3265, 1893, 3269, 1901, 3273, 343}, 0, 1, 344, 346, {348,3277,3059,890,2678},{357,3037},{370,16942},{376,2983,16929}},
+	{17085, 24, 2678, 2983, 56, 63, 74, 81, 84, {87, 98, 113, 130, 147, 160, 173}, {184, 187, 190, 193, 196, 199, 202}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, 0, 6, 344, 346, {348,37,2678},{357,24},{370,56},{376,46,2983}},
+	{3003, 3037, 2678, 2983, 16942, 3070, 3075, 3087, 3092, {3097, 3105, 3111, 3118, 3129, 3136, 3144}, {3152, 3156, 1873, 3160, 3165, 3169, 3173}, {3178, 3184, 3192, 1006, 3198, 3203, 3209, 3215, 3222, 1044, 3233, 3243, 343}, {3253, 1869, 1873, 3257, 3261, 1881, 1885, 3265, 1893, 3269, 1901, 3273, 343}, 0, 1, 344, 346, {348,3277,3059,890,2678},{357,3037},{370,16942},{376,2983,16929}},
+	{17085, 24, 2678, 2983, 56, 63, 74, 81, 84, {87, 98, 113, 130, 147, 160, 173}, {87, 98, 113, 130, 147, 160, 173}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, 0, 6, 344, 346, {348,37,2678},{357,24},{370,56},{376,46,2983}},
+	{3003, 3037, 2678, 2983, 1411, 3070, 3075, 3087, 3092, {3097, 3105, 3111, 3118, 3129, 3136, 3144}, {3152, 3156, 1873, 3160, 3165, 3169, 3173}, {3178, 3184, 3192, 1006, 3198, 3203, 3209, 3215, 3222, 1044, 3233, 3243, 343}, {3253, 1869, 1873, 3257, 3261, 1881, 1885, 3265, 1893, 3269, 1901, 3273, 343}, 0, 1, 344, 346, {348,3277,3059,2678},{357,3037},{370,1411},{376,2983,1401}},
+	{17085, 24, 2678, 2983, 56, 63, 74, 81, 84, {87, 98, 113, 130, 147, 160, 173}, {87, 98, 113, 130, 147, 160, 173}, {17466, 17490, 17499, 17508, 17519, 17528, 17541, 17550, 17555, 17566, 17588, 17612, 343}, {17466, 17490, 17499, 17508, 17519, 17528, 17541, 17550, 17555, 17566, 17588, 17612, 343}, 0, 4, 344, 346, {348,37,2678},{357,24},{370,56},{376,46,2983}},
+	{3003, 3037, 2678, 2983, 16942, 3070, 3075, 3087, 3092, {3097, 3105, 3111, 3118, 3129, 3136, 3144}, {3152, 3156, 1873, 3160, 3165, 3169, 3173}, {3178, 3184, 3192, 1006, 3198, 3203, 3209, 3215, 3222, 1044, 3233, 3243, 343}, {3253, 1869, 1873, 3257, 3261, 1881, 1885, 3265, 1893, 3269, 1901, 3273, 343}, 0, 1, 344, 346, {348,3277,3059,890,2678},{357,3037},{370,16942},{376,2983,16929}},
+	{17085, 24, 2678, 2983, 56, 63, 74, 81, 84, {87, 98, 113, 130, 147, 160, 173}, {87, 98, 113, 130, 147, 160, 173}, {17466, 17490, 17499, 17508, 17634, 17528, 17541, 17550, 17555, 17566, 17588, 17612, 343}, {17466, 17490, 17499, 17508, 17634, 17528, 17541, 17550, 17555, 17566, 17588, 17612, 343}, 0, 6, 344, 346, {348,37,2678},{357,24},{370,56},{376,46,2983}},
+	{17643, 17674, 2678, 2983, 2759, 447, 2767, 465, 468, {2774, 2781, 2788, 2796, 2806, 2815, 2822}, {2831, 2835, 2839, 2843, 2847, 2851, 2855}, {2859, 2867, 2876, 2068, 2882, 2886, 2891, 2088, 2095, 2896, 2113, 2904, 343}, {2131, 2135, 2913, 2143, 2882, 2147, 2151, 2155, 2159, 2917, 2167, 2921, 343}, 0, 0, 344, 346, {2678,6012},{2732,2732,2925,2939,2959,17674},{2759,2759,2974,1411,370},{2983,438}},
+	{3003, 3037, 2678, 2983, 370, 3070, 3075, 3087, 3092, {3097, 3105, 3111, 3118, 3129, 3136, 3144}, {3152, 3156, 1873, 3160, 3165, 3169, 3173}, {3178, 3184, 3192, 1006, 3198, 3203, 3209, 3215, 3222, 1044, 3233, 3243, 343}, {3253, 1869, 1873, 3257, 3261, 1881, 1885, 3265, 1893, 3269, 1901, 3273, 343}, 0, 1, 344, 346, {348,3277,3059,890,2678},{357,3037},{370},{376,2983,1401}},
+	{17085, 24, 2678, 2983, 56, 63, 74, 81, 84, {87, 98, 113, 130, 147, 160, 173}, {87, 98, 113, 130, 147, 160, 173}, {17466, 17490, 17499, 17508, 17519, 17528, 17541, 17550, 17555, 17566, 17588, 17612, 343}, {17466, 17490, 17499, 17508, 17519, 17528, 17541, 17550, 17555, 17566, 17588, 17612, 343}, 0, 6, 344, 346, {348,37,2678},{357,24},{370,56},{376,46,2983}},
+	{2175, 409, 10613, 2199, 56, 447, 457, 465, 468, {2774, 2781, 2788, 2796, 2806, 2815, 2822}, {2831, 2835, 2839, 2843, 2847, 2851, 2855}, {2859, 2867, 2876, 2068, 2882, 2886, 2891, 2088, 2095, 2896, 2113, 2904, 343}, {2131, 2135, 2913, 2143, 2882, 2147, 2151, 2155, 2159, 2917, 2167, 2921, 343}, 0, 0, 344, 346, {348,2752,37,10613},{2732,2732,2925,2939,2959,409},{2759,2759,2974,1411,370,56},{2199,2199,2983,2995,438,46}},
+	{17055, 3037, 2678, 2995, 1411, 3070, 3075, 3087, 3092, {3097, 3105, 3111, 3118, 3129, 3136, 3144}, {3152, 3156, 1873, 3160, 3165, 3169, 3173}, {3178, 3184, 3192, 1006, 3198, 3203, 3209, 3215, 3222, 1044, 3233, 3243, 343}, {3253, 1869, 1873, 3257, 3261, 1881, 1885, 3265, 1893, 3269, 1901, 3273, 343}, 0, 1, 344, 346, {348,3277,3059,890,2678},{357,3037},{370,1411},{376,2983,1401,2995}},
+	{17085, 24, 2678, 2983, 56, 63, 74, 81, 84, {87, 98, 113, 130, 147, 160, 173}, {184, 187, 190, 193, 196, 199, 202}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, 0, 6, 344, 346, {348,37,2678},{357,24},{370,56},{376,46,2983}},
+	{17408, 17432, 10613, 2199, 56, 447, 2767, 465, 468, {2774, 2781, 2788, 2796, 2806, 2815, 2822}, {2831, 2835, 2839, 2843, 2847, 2851, 2855}, {2859, 2867, 2876, 2068, 2882, 2886, 2891, 2088, 2095, 2896, 2113, 2904, 343}, {2131, 2135, 2913, 2143, 2882, 2147, 2151, 2155, 2159, 2917, 2167, 2921, 343}, 0, 0, 344, 346, {348,2752,10613},{2732,2732,2925,2939,2959,17432},{2759,2759,2974,1411,370,56},{2199,2199,2983,2995,438,2689}},
+	{17055, 3037, 1678, 2995, 1411, 3070, 3075, 3087, 3092, {3097, 3105, 3111, 3118, 3129, 3136, 3144}, {3152, 3156, 1873, 3160, 3165, 3169, 3173}, {3178, 3184, 3192, 1006, 3198, 3203, 3209, 3215, 3222, 1044, 3233, 3243, 343}, {3253, 1869, 1873, 3257, 3261, 1881, 1885, 3265, 1893, 3269, 1901, 3273, 343}, 0, 1, 1909, 346, {348,3277,3059,1911,1678},{357,3037},{370,1411},{376,2983,1401,2995}},
+	{17085, 24, 2678, 2983, 56, 63, 74, 81, 84, {87, 98, 113, 130, 147, 160, 173}, {184, 187, 190, 193, 196, 199, 202}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, 0, 6, 344, 346, {348,37,2678},{357,24},{370,56},{376,46,2983}},
+	{3003, 3037, 2678, 2983, 16942, 3070, 3075, 3087, 3092, {3097, 3105, 3111, 3118, 3129, 3136, 3144}, {3152, 3156, 1873, 3160, 3165, 3169, 3173}, {3178, 3184, 3192, 1006, 3198, 3203, 3209, 3215, 3222, 1044, 3233, 3243, 343}, {3253, 1869, 1873, 3257, 3261, 1881, 1885, 3265, 1893, 3269, 1901, 3273, 343}, 0, 1, 344, 346, {348,3277,3059,890,2678},{357,3037},{370,16942},{376,2983,16929}},
+	{17085, 24, 2678, 2983, 56, 63, 74, 81, 84, {87, 98, 113, 130, 147, 160, 173}, {184, 187, 190, 193, 196, 199, 202}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, 0, 6, 344, 346, {348,37,2678},{357,24},{370,56},{376,46,2983}},
+	{3003, 3037, 2678, 2983, 16942, 3070, 3075, 3087, 3092, {3097, 3105, 3111, 3118, 3129, 3136, 3144}, {3152, 3156, 1873, 3160, 3165, 3169, 3173}, {3178, 3184, 3192, 1006, 3198, 3203, 3209, 3215, 3222, 1044, 3233, 3243, 343}, {3253, 1869, 1873, 3257, 3261, 1881, 1885, 3265, 1893, 3269, 1901, 3273, 343}, 0, 1, 344, 346, {348,3277,3059,890,2678},{357,3037},{370,16942},{376,2983,16929}},
+	{17085, 24, 2678, 2983, 56, 63, 74, 81, 84, {87, 98, 113, 130, 147, 160, 173}, {87, 98, 113, 130, 147, 160, 173}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, {205, 216, 229, 238, 249, 258, 269, 280, 291, 304, 317, 330, 343}, 0, 6, 344, 346, {348,37,2678},{357,24},{370,56},{376,46,2983}},
+	{3003, 3037, 2678, 2983, 16942, 3070, 3075, 3087, 3092, {3097, 3105, 3111, 3118, 3129, 3136, 3144}, {3152, 3156, 1873, 3160, 3165, 3169, 3173}, {3178, 3184, 3192, 1006, 3198, 3203, 3209, 3215, 3222, 1044, 3233, 3243, 343}, {3253, 1869, 1873, 3257, 3261, 1881, 1885, 3265, 1893, 3269, 1901, 3273, 343}, 0, 1, 344, 346, {348,3277,3059,890,2678},{357,3037},{370,16942},{376,2983,16929}},
+	{3003, 3037, 2678, 2983, 16942, 3070, 3075, 3087, 3092, {3097, 3105, 3111, 3118, 3129, 3136, 3144}, {3152, 3156, 1873, 3160, 3165, 3169, 3173}, {3178, 3184, 3192, 1006, 3198, 3203, 3209, 3215, 3222, 1044, 3233, 3243, 343}, {3253, 1869, 1873, 3257, 3261, 1881, 1885, 3265, 1893, 3269, 1901, 3273, 343}, 0, 1, 344, 346, {348,3277,3059,890,2678},{357,3037},{370,16942},{376,2983,16929}},
+	{17693, 17728, 2678, 2983, 16942, 3070, 17751, 3087, 3092, {3097, 3105, 3111, 3118, 3129, 3136, 3144}, {3152, 3156, 1873, 3160, 3165, 3169, 3173}, {3178, 3184, 3192, 1006, 3198, 3203, 3209, 3215, 3222, 1044, 3233, 3243, 343}, {3253, 1869, 1873, 3257, 3261, 1881, 1885, 3265, 1893, 3269, 1901, 3273, 343}, 0, 1, 344, 346, {348,3277,3059,890,2678},{357,3037,17728},{370,16942},{376,2983,16929}},
+	{3003, 3037, 2678, 2983, 16942, 3070, 3075, 3087, 3092, {3097, 3105, 3111, 3118, 3129, 3136, 3144}, {3152, 3156, 1873, 3160, 3165, 3169, 3173}, {3178, 3184, 3192, 1006, 3198, 3203, 3209, 3215, 3222, 1044, 3233, 3243, 343}, {3253, 1869, 1873, 3257, 3261, 1881, 1885, 3265, 1893, 3269, 1901, 3273, 343}, 0, 1, 344, 346, {348,3277,3059,890,2678},{357,3037},{370,16942},{376,2983,16929}},
+	{3003, 3037, 2678, 2983, 16942, 3070, 3075, 3087, 3092, {3097, 3105, 3111, 3118, 3129, 3136, 3144}, {3152, 3156, 1873, 3160, 3165, 3169, 3173}, {3178, 3184, 3192, 1006, 3198, 3203, 3209, 3215, 3222, 1044, 3233, 3243, 343}, {3253, 1869, 1873, 3257, 3261, 1881, 1885, 3265, 1893, 3269, 1901, 3273, 343}, 0, 1, 344, 346, {348,3277,3059,11825,2678},{357,3037},{370,16942},{376,2983,16929}},
+	{1114, 357, 348, 376, 370, 1138, 1148, 1156, 1163, {1170, 1180, 1190, 1200, 1210, 1220, 1230}, {1240, 1244, 1248, 1252, 1256, 1260, 1264}, {1268, 1275, 1282, 1289, 1296, 1303, 1310, 1317, 1324, 1331, 1338, 1348, 343}, {1268, 1275, 1282, 1289, 1296, 1303, 1310, 1317, 1324, 1331, 1338, 1348, 343}, 0, 0, 344, 346, {348},{357},{370},{376}}
 };
 
 
 static const NumberFormatEntry number_format_entries [] = {
-	{17757, 17760, 17757, 17760, 17757, 17760, 0, 17763, 17766, 17770, 17774, 17779, 17783, 17785, 11, 2, 1, 1, 3, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17789, 17787, 17789, 17787, 17789, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 0, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17789, 17787, 17789, 17787, 17789, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 0, 0, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 0, 0, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 0, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 1, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 0, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17789, 17787, 17789, 17787, 17789, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 0, 0, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17789, 17787, 17789, 17787, 17789, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 0, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 9, 2, 2, 2, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17789, 17787, 17789, 17787, 17789, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 0, 0, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 0, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 0, 0, 1, 1, 1, 0, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 0, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17789, 17787, 17789, 17787, 17789, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17789, 17787, 17789, 17787, 17789, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 0, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17789, 17787, 17789, 17787, 17789, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17789, 17787, 17789, 17787, 17789, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 0, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 1, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17789, 17787, 17789, 17787, 17789, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17789, 17787, 17789, 17787, 17789, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17789, 17787, 17789, 17787, 17789, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17789, 17787, 17789, 17787, 17789, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 0, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 0, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 0, 17792, 17796, 17770, 17774, 17779, 17783, 17785, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 0, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 0, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 0, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 0, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 0, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17757, 17760, 17757, 17760, 17757, 17760, 17819, 17763, 17766, 17770, 17774, 17779, 17783, 17785, 1, 0, 1, 1, 3, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17789, 17787, 17789, 17787, 17789, 17829, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 17835, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 8, 3, 0, 0, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 17839, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 1, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17789, 17787, 17789, 17787, 17789, 17843, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 17847, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 12, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 17835, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 17835, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 1, 1, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 17850, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 0, 0, 0, 0, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17789, 17787, 17789, 17787, 17789, 17835, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17789, 17787, 17789, 17787, 17789, 17835, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 8, 3, 0, 0, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 17852, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17789, 17787, 17789, 17787, 17789, 17856, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 17859, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 17835, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 17863, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 1, 0, 1, 1, 1, 0, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 17865, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 0, 0, 0, 0, 1, 0, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 17835, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 11, 2, 0, 0, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17789, 17787, 17789, 17787, 17789, 17847, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 0, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17789, 17787, 17789, 17787, 17789, 17869, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 17873, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 17877, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17789, 17787, 17789, 17787, 17789, 17881, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 5, 1, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 17885, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17789, 17787, 17789, 17787, 17789, 10412, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 17888, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 1, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17789, 17787, 17789, 17787, 17789, 17847, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 17892, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 2, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 17896, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 17899, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 0, 0, 1, 1, 1, 0, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17789, 17787, 17789, 17787, 17789, 17902, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17789, 17787, 17789, 17787, 17789, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 1, 0, 1, 1, 1, 0, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 17910, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17789, 17787, 17789, 17787, 17789, 17847, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17789, 17787, 17789, 17787, 17789, 17914, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 17917, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {2, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17757, 17760, 17757, 17760, 17757, 17760, 17920, 17763, 17766, 17770, 17774, 17779, 17783, 17785, 0, 3, 2, 2, 1, 0, 2, 2, {5, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 17924, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 0, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 17835, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 17927, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 0, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 9884, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 1, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 0, 17792, 17796, 17770, 17774, 17779, 17783, 17785, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 17847, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 12, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 17931, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 17938, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 1, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 17942, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 17949, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 17956, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 17931, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 17931, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 17835, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 17931, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}},
-	{17757, 17760, 17757, 17760, 17757, 17760, 17964, 17763, 17766, 17770, 17774, 17779, 17783, 17785, 11, 2, 1, 1, 3, 3, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 17974, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 1, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17978, 17794, 17978, 17794, 17978, 17980, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 2, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 17985, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 1, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 17850, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 17835, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17978, 17794, 17978, 17794, 17978, 17980, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 2, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 17835, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 12, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17789, 17787, 17789, 17787, 17789, 17847, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 0, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 17835, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17789, 17787, 17789, 17787, 17789, 17835, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17757, 17760, 17757, 17760, 17757, 17760, 17988, 17763, 17766, 17770, 17774, 17779, 17783, 17785, 11, 2, 1, 1, 3, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 17998, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 17835, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 17850, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 1, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 17835, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17789, 17787, 17789, 17787, 17789, 17850, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 0, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17757, 17760, 17757, 17760, 17757, 17760, 18002, 17763, 17766, 17770, 17774, 17779, 17783, 17785, 11, 2, 1, 1, 3, 3, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 18012, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 1, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 17835, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 17850, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 18015, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17978, 17794, 17978, 17794, 17978, 18017, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 2, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17757, 17760, 17757, 17760, 17757, 17760, 18022, 17763, 17766, 17770, 17774, 17779, 17783, 17785, 11, 2, 1, 1, 3, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 4376, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 17850, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 1, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 18032, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 17835, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17757, 17760, 17757, 17760, 17757, 17760, 18036, 17763, 17766, 17770, 17774, 17779, 17783, 17785, 11, 2, 1, 1, 3, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 17835, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 1, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 18046, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17757, 17760, 17757, 17760, 17757, 17760, 18049, 17763, 17766, 17770, 17774, 17779, 17783, 17785, 1, 0, 1, 1, 3, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 9884, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 1, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 18059, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17757, 17760, 17757, 17760, 17757, 17760, 18063, 17763, 17766, 17770, 17774, 17779, 17783, 17785, 11, 2, 1, 1, 3, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 18073, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 12, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17757, 17760, 17757, 17760, 17757, 17760, 18076, 17763, 17766, 17770, 17774, 17779, 17783, 17785, 1, 0, 1, 1, 3, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 17850, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17757, 17760, 17757, 17760, 17757, 17760, 18086, 17763, 17766, 17770, 17774, 17779, 17783, 17785, 1, 0, 1, 1, 3, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 18096, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 2, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17757, 17760, 17757, 17760, 17757, 17760, 18099, 17763, 17766, 17770, 17774, 17779, 17783, 17785, 11, 2, 1, 1, 3, 3, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 17850, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 17850, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17757, 17760, 17757, 17760, 17757, 17760, 18109, 17763, 17766, 17770, 17774, 17779, 17783, 17785, 11, 2, 1, 1, 3, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 18119, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 1, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 18122, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 2, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17757, 17760, 17757, 17760, 17757, 17760, 18126, 17763, 17766, 17770, 17774, 17779, 17783, 17785, 11, 2, 1, 1, 3, 3, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 18136, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 17850, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 2, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17757, 17760, 17757, 17760, 17757, 17760, 18140, 17763, 17766, 17770, 17774, 17779, 17783, 17785, 11, 2, 1, 1, 3, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 18150, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 0, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17757, 17760, 17757, 17760, 17757, 17760, 18154, 17763, 17766, 17770, 17774, 17779, 17783, 17785, 11, 2, 1, 1, 3, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 18164, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 12, 2, 1, 1, 1, 0, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17757, 17760, 17757, 17760, 17757, 17760, 18167, 17763, 17766, 17770, 17774, 17779, 17783, 17785, 1, 0, 1, 1, 3, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17787, 17794, 17787, 17794, 17787, 17794, 18177, 17792, 17766, 17770, 17774, 17779, 17783, 17785, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 18180, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 18184, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 18187, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 17850, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
-	{17794, 17787, 17794, 17787, 17794, 17787, 0, 17792, 17796, 17770, 17800, 17810, 17783, 17785, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}}
+	{17764, 17767, 17764, 17767, 17764, 17767, 0, 17770, 17773, 17777, 17781, 17786, 1909, 17790, 11, 2, 1, 1, 3, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 17794, 17792, 17794, 17792, 17794, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 0, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 17794, 17792, 17794, 17792, 17794, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 0, 0, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 0, 0, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 0, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 1, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 0, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 17794, 17792, 17794, 17792, 17794, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 0, 0, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 17794, 17792, 17794, 17792, 17794, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 0, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 9, 2, 2, 2, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 17794, 17792, 17794, 17792, 17794, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 0, 0, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 0, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 0, 0, 1, 1, 1, 0, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 0, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 17794, 17792, 17794, 17792, 17794, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 17794, 17792, 17794, 17792, 17794, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 0, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 17794, 17792, 17794, 17792, 17794, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 17794, 17792, 17794, 17792, 17794, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 0, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 1, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 17794, 17792, 17794, 17792, 17794, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 17794, 17792, 17794, 17792, 17794, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 17794, 17792, 17794, 17792, 17794, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 17794, 17792, 17794, 17792, 17794, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 0, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 0, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 0, 17797, 17799, 17777, 17781, 17786, 1909, 17790, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 0, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 0, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 0, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 0, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 0, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17764, 17767, 17764, 17767, 17764, 17767, 17822, 17770, 17773, 17777, 17781, 17786, 1909, 17790, 1, 0, 1, 1, 3, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 17794, 17792, 17794, 17792, 17794, 17832, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 17838, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 8, 3, 0, 0, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 17842, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 1, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 17794, 17792, 17794, 17792, 17794, 17846, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 17850, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 12, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 17838, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 17838, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 1, 1, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 17853, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 0, 0, 0, 0, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 17794, 17792, 17794, 17792, 17794, 17838, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 17794, 17792, 17794, 17792, 17794, 17838, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 8, 3, 0, 0, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 17855, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 17794, 17792, 17794, 17792, 17794, 17859, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 17862, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 17838, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 17866, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 1, 0, 1, 1, 1, 0, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 17868, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 0, 0, 0, 0, 1, 0, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 17838, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 11, 2, 0, 0, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 17794, 17792, 17794, 17792, 17794, 17850, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 0, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 17794, 17792, 17794, 17792, 17794, 17872, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 17876, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 17880, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 17794, 17792, 17794, 17792, 17794, 17884, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 5, 1, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 17888, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 17794, 17792, 17794, 17792, 17794, 10419, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 17891, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 1, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 17794, 17792, 17794, 17792, 17794, 17850, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 17895, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 2, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 17899, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 17902, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 0, 0, 1, 1, 1, 0, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 17794, 17792, 17794, 17792, 17794, 17905, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 17794, 17792, 17794, 17792, 17794, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 1, 0, 1, 1, 1, 0, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 17913, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 17794, 17792, 17794, 17792, 17794, 17850, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 17794, 17792, 17794, 17792, 17794, 17917, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 17920, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {2, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17764, 17767, 17764, 17767, 17764, 17767, 17923, 17770, 17773, 17777, 17781, 17786, 1909, 17790, 0, 3, 2, 2, 1, 0, 2, 2, {5, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 17927, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 0, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 17838, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 17930, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 0, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 9891, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 1, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 0, 17797, 17799, 17777, 17781, 17786, 1909, 17790, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 17850, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 12, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 17934, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 17941, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 1, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 17945, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 17952, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 17959, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 17934, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 17934, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 17838, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 17934, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}, {2, 2, -1, -1, -1}},
+	{17764, 17767, 17764, 17767, 17764, 17767, 17967, 17770, 17773, 17777, 17781, 17786, 1909, 17790, 11, 2, 1, 1, 3, 3, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 17977, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 1, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17981, 844, 17981, 844, 17981, 17983, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 2, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 17988, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 1, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 17853, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 17838, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17981, 844, 17981, 844, 17981, 17983, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 2, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 17838, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 12, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 17794, 17792, 17794, 17792, 17794, 17850, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 0, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 17838, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 17794, 17792, 17794, 17792, 17794, 17838, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17764, 17767, 17764, 17767, 17764, 17767, 17991, 17770, 17773, 17777, 17781, 17786, 1909, 17790, 11, 2, 1, 1, 3, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 18001, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 17838, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 17853, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 1, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 17838, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 17794, 17792, 17794, 17792, 17794, 17853, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 0, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17764, 17767, 17764, 17767, 17764, 17767, 18005, 17770, 17773, 17777, 17781, 17786, 1909, 17790, 11, 2, 1, 1, 3, 3, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 18015, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 1, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 17838, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 17853, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 18018, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17981, 844, 17981, 844, 17981, 18020, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 2, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17764, 17767, 17764, 17767, 17764, 17767, 18025, 17770, 17773, 17777, 17781, 17786, 1909, 17790, 11, 2, 1, 1, 3, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 4380, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 17853, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 1, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 18035, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 17838, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 8, 3, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17764, 17767, 17764, 17767, 17764, 17767, 18039, 17770, 17773, 17777, 17781, 17786, 1909, 17790, 11, 2, 1, 1, 3, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 17838, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 1, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 18049, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17764, 17767, 17764, 17767, 17764, 17767, 18052, 17770, 17773, 17777, 17781, 17786, 1909, 17790, 1, 0, 1, 1, 3, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 9891, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 1, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 18062, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17764, 17767, 17764, 17767, 17764, 17767, 18066, 17770, 17773, 17777, 17781, 17786, 1909, 17790, 11, 2, 1, 1, 3, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 18076, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 12, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17764, 17767, 17764, 17767, 17764, 17767, 18079, 17770, 17773, 17777, 17781, 17786, 1909, 17790, 1, 0, 1, 1, 3, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 17853, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17764, 17767, 17764, 17767, 17764, 17767, 18089, 17770, 17773, 17777, 17781, 17786, 1909, 17790, 1, 0, 1, 1, 3, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 18099, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 2, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17764, 17767, 17764, 17767, 17764, 17767, 18102, 17770, 17773, 17777, 17781, 17786, 1909, 17790, 11, 2, 1, 1, 3, 3, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 17853, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 17853, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17764, 17767, 17764, 17767, 17764, 17767, 18112, 17770, 17773, 17777, 17781, 17786, 1909, 17790, 11, 2, 1, 1, 3, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 18122, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 1, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 18125, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 2, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17764, 17767, 17764, 17767, 17764, 17767, 18129, 17770, 17773, 17777, 17781, 17786, 1909, 17790, 11, 2, 1, 1, 3, 3, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 18139, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 17853, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 2, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17764, 17767, 17764, 17767, 17764, 17767, 18143, 17770, 17773, 17777, 17781, 17786, 1909, 17790, 11, 2, 1, 1, 3, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 18153, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 0, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17764, 17767, 17764, 17767, 17764, 17767, 18157, 17770, 17773, 17777, 17781, 17786, 1909, 17790, 11, 2, 1, 1, 3, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 18167, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 12, 2, 1, 1, 1, 0, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17764, 17767, 17764, 17767, 17764, 17767, 18170, 17770, 17773, 17777, 17781, 17786, 1909, 17790, 1, 0, 1, 1, 3, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{17792, 844, 17792, 844, 17792, 844, 18180, 17797, 17773, 17777, 17781, 17786, 1909, 17790, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 18183, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 18187, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 18190, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 17853, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 0, 0, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}},
+	{844, 17792, 844, 17792, 844, 17792, 0, 17797, 17799, 17777, 17803, 17813, 1909, 17790, 9, 2, 1, 1, 1, 2, 2, 2, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}, {3, -1, -1, -1, -1}}
 };
 
 
 static const CultureInfoEntry culture_entries [] = {
-	{0x0001, 0x007F, 0x0401, -1,18190, 18193, 18193, 18193, 18200, 18215, 18219, 18190, 0, {16777216, 0, 0, 0, 0}, 0, 0, { 1256, 20420, 10004, 720, ';' }},
-	{0x0002, 0x007F, 0x0402, -1,18223, 18226, 18226, 18226, 18236, 18255, 18259, 18223, 0, {0, 0, 0, 0, 0}, 1, 1, { 1251, 20420, 10007, 866, ';' }},
-	{0x0003, 0x007F, 0x0403, -1,18263, 18266, 18266, 18266, 18274, 18282, 18286, 18263, 0, {0, 0, 0, 0, 0}, 2, 2, { 1252, 500, 10000, 850, ';' }},
-	{0x0004, 0x007F, 0x0000, -1,18290, 18297, 18297, 18297, 18305, 18312, 18316, 18320, 0, {0, 0, 0, 0, 0}, 166, 166, { 936, 500, 10008, 936, ',' }},
-	{0x0005, 0x007F, 0x0405, -1,18323, 18326, 18326, 18326, 18332, 18342, 18346, 18323, 0, {0, 0, 0, 0, 0}, 4, 4, { 1250, 500, 10029, 852, ';' }},
-	{0x0006, 0x007F, 0x0406, -1,18350, 18353, 18353, 18353, 18360, 18366, 18370, 18350, 0, {0, 0, 0, 0, 0}, 5, 5, { 1252, 20277, 10000, 850, ';' }},
-	{0x0007, 0x007F, 0x0407, -1,18374, 18377, 18377, 18377, 18384, 18392, 18396, 18374, 0, {0, 0, 0, 0, 0}, 6, 6, { 1252, 20273, 10000, 850, ';' }},
-	{0x0008, 0x007F, 0x0408, -1,18400, 18403, 18403, 18403, 18409, 18426, 18430, 18400, 0, {0, 0, 0, 0, 0}, 7, 7, { 1253, 20273, 10006, 737, ';' }},
-	{0x0009, 0x007F, 0x0409, -1,18434, 18437, 18437, 18437, 18437, 18445, 18449, 18434, 0, {0, 0, 0, 0, 0}, 8, 8, { 1252, 37, 10000, 437, ',' }},
-	{0x000A, 0x007F, 0x0C0A, -1,18453, 18456, 18456, 18456, 18464, 18473, 18477, 18453, 0, {0, 0, 0, 0, 0}, 9, 9, { 1252, 20284, 10000, 850, ';' }},
-	{0x000B, 0x007F, 0x040B, -1,18481, 18484, 18484, 18484, 18492, 18498, 18502, 18481, 0, {0, 0, 0, 0, 0}, 10, 10, { 1252, 20278, 10000, 850, ';' }},
-	{0x000C, 0x007F, 0x040C, -1,5977, 18506, 18506, 18506, 18513, 18523, 18527, 5977, 0, {0, 0, 0, 0, 0}, 11, 11, { 1252, 20297, 10000, 850, ';' }},
-	{0x000D, 0x007F, 0x040D, -1,18531, 18534, 18534, 18534, 18541, 18552, 18556, 18531, 0, {0, 0, 0, 0, 0}, 12, 12, { 1255, 500, 10005, 862, ',' }},
-	{0x000E, 0x007F, 0x040E, -1,18560, 18563, 18563, 18563, 18573, 18580, 18584, 18560, 0, {0, 0, 0, 0, 0}, 13, 13, { 1250, 500, 10029, 852, ';' }},
-	{0x000F, 0x007F, 0x040F, -1,18588, 18591, 18591, 18591, 18601, 18611, 18615, 18588, 0, {0, 0, 0, 0, 0}, 14, 14, { 1252, 20871, 10079, 850, ';' }},
-	{0x0010, 0x007F, 0x0410, -1,18619, 18622, 18622, 18622, 18630, 18639, 18643, 18619, 0, {0, 0, 0, 0, 0}, 15, 15, { 1252, 20280, 10000, 850, ';' }},
-	{0x0011, 0x007F, 0x0411, -1,18647, 18650, 18650, 18650, 18659, 18669, 18673, 18647, 0, {0, 0, 0, 0, 0}, 16, 16, { 932, 20290, 10001, 932, ',' }},
-	{0x0012, 0x007F, 0x0412, -1,18677, 18680, 18680, 18680, 18687, 18697, 18701, 18677, 0, {0, 0, 0, 0, 0}, 17, 17, { 949, 20833, 10003, 949, ',' }},
-	{0x0013, 0x007F, 0x0413, -1,18705, 18708, 18708, 18708, 18714, 18725, 18729, 18705, 0, {0, 0, 0, 0, 0}, 18, 18, { 1252, 500, 10000, 850, ';' }},
-	{0x0014, 0x007F, 0x0414, -1,18733, 18736, 18736, 18736, 18746, 18752, 18756, 18733, 0, {0, 0, 0, 0, 0}, 19, 19, { 1252, 20277, 10000, 850, ';' }},
-	{0x0015, 0x007F, 0x0415, -1,18760, 18763, 18763, 18763, 18770, 18777, 18781, 18760, 0, {0, 0, 0, 0, 0}, 20, 20, { 1250, 20880, 10029, 852, ';' }},
-	{0x0016, 0x007F, 0x0416, -1,18785, 18788, 18788, 18788, 18799, 18810, 18814, 18785, 0, {0, 0, 0, 0, 0}, 21, 21, { 1252, 500, 10000, 850, ';' }},
-	{0x0018, 0x007F, 0x0418, -1,18818, 18821, 18821, 18821, 18830, 18839, 18843, 18818, 0, {0, 0, 0, 0, 0}, 22, 22, { 1250, 20880, 10029, 852, ';' }},
-	{0x0019, 0x007F, 0x0419, -1,18847, 18850, 18850, 18850, 18858, 18873, 18877, 18847, 0, {0, 0, 0, 0, 0}, 23, 23, { 1251, 20880, 10007, 866, ';' }},
-	{0x001A, 0x007F, 0x041A, -1,18881, 18884, 18884, 18884, 18893, 18902, 18906, 18881, 0, {0, 0, 0, 0, 0}, 24, 24, { 1250, 500, 10082, 852, ';' }},
-	{0x001B, 0x007F, 0x041B, -1,18910, 18913, 18913, 18913, 18920, 18931, 18935, 18910, 0, {0, 0, 0, 0, 0}, 25, 25, { 1250, 20880, 10029, 852, ';' }},
-	{0x001C, 0x007F, 0x041C, -1,18939, 18942, 18942, 18942, 18951, 18958, 18962, 18939, 0, {0, 0, 0, 0, 0}, 26, 26, { 1250, 20880, 10029, 852, ';' }},
-	{0x001D, 0x007F, 0x041D, -1,18966, 18969, 18969, 18969, 18977, 18985, 18989, 18966, 0, {0, 0, 0, 0, 0}, 27, 27, { 1252, 20278, 10000, 850, ';' }},
-	{0x001E, 0x007F, 0x041E, -1,18993, 18996, 18996, 18996, 19001, 19011, 19015, 18993, 0, {0, 0, 0, 0, 0}, 28, 28, { 874, 20838, 10021, 874, ',' }},
-	{0x001F, 0x007F, 0x041F, -1,19019, 19022, 19022, 19022, 19030, 19039, 19043, 19019, 0, {0, 0, 0, 0, 0}, 29, 29, { 1254, 20905, 10081, 857, ';' }},
-	{0x0021, 0x007F, 0x0421, -1,19047, 19050, 19050, 19050, 19061, 19078, 19082, 19047, 0, {0, 0, 0, 0, 0}, 30, 30, { 1252, 500, 10000, 850, ';' }},
-	{0x0022, 0x007F, 0x0422, -1,19086, 19089, 19089, 19089, 19099, 19120, 19124, 19086, 0, {0, 0, 0, 0, 0}, 31, 31, { 1251, 500, 10017, 866, ';' }},
-	{0x0023, 0x007F, 0x0423, -1,19128, 19131, 19131, 19131, 19142, 19161, 19165, 19128, 0, {0, 0, 0, 0, 0}, 32, 32, { 1251, 500, 10007, 866, ';' }},
-	{0x0024, 0x007F, 0x0424, -1,19169, 19172, 19172, 19172, 19182, 19196, 19200, 19169, 0, {0, 0, 0, 0, 0}, 33, 33, { 1250, 20880, 10029, 852, ';' }},
-	{0x0025, 0x007F, 0x0425, -1,19204, 19207, 19207, 19207, 19216, 19222, 19226, 19204, 0, {0, 0, 0, 0, 0}, 34, 34, { 1257, 500, 10029, 775, ';' }},
-	{0x0026, 0x007F, 0x0426, -1,19230, 19233, 19233, 19233, 19241, 19251, 19255, 19230, 0, {0, 0, 0, 0, 0}, 35, 35, { 1257, 500, 10029, 775, ';' }},
-	{0x0027, 0x007F, 0x0427, -1,19259, 19262, 19262, 19262, 19273, 19283, 19287, 19259, 0, {0, 0, 0, 0, 0}, 36, 36, { 1257, 500, 10029, 775, ';' }},
-	{0x0029, 0x007F, 0x0429, -1,19291, 19294, 19294, 19294, 19302, 19313, 19317, 19291, 0, {0, 0, 0, 0, 0}, 37, 37, { 1256, 20420, 10004, 720, ';' }},
-	{0x002A, 0x007F, 0x042A, -1,19321, 19324, 19324, 19324, 19335, 19350, 3165, 19321, 0, {0, 0, 0, 0, 0}, 38, 38, { 1258, 500, 10000, 1258, ',' }},
-	{0x002B, 0x007F, 0x042B, -1,19354, 19357, 19357, 19357, 19366, 19381, 19385, 19354, 0, {0, 0, 0, 0, 0}, 39, 39, { 0, 500, 2, 1, ',' }},
-	{0x002D, 0x007F, 0x042D, -1,19389, 19392, 19392, 19392, 19399, 19407, 19411, 19389, 0, {0, 0, 0, 0, 0}, 40, 40, { 1252, 500, 10000, 850, ';' }},
-	{0x002F, 0x007F, 0x042F, -1,19415, 19418, 19418, 19418, 19429, 19450, 19454, 19415, 0, {0, 0, 0, 0, 0}, 41, 41, { 1251, 500, 10007, 866, ';' }},
-	{0x0036, 0x007F, 0x0436, -1,19458, 19461, 19461, 19461, 19471, 19482, 19486, 19458, 0, {0, 0, 0, 0, 0}, 42, 42, { 1252, 500, 10000, 850, ',' }},
-	{0x0037, 0x007F, 0x0437, -1,19490, 19493, 19493, 19493, 19502, 19524, 19528, 19490, 0, {0, 0, 0, 0, 0}, 43, 43, { 0, 500, 2, 1, ';' }},
-	{0x0038, 0x007F, 0x0438, -1,19532, 19535, 19535, 19535, 19543, 19553, 19557, 19532, 0, {0, 0, 0, 0, 0}, 44, 44, { 1252, 20277, 10079, 850, ';' }},
-	{0x0039, 0x007F, 0x0439, -1,19561, 19564, 19564, 19564, 19570, 19586, 19590, 19561, 0, {0, 0, 0, 0, 0}, 45, 45, { 0, 500, 2, 1, ',' }},
-	{0x0041, 0x007F, 0x0441, -1,19594, 19597, 19597, 19597, 19605, 19615, 19619, 19594, 0, {0, 0, 0, 0, 0}, 46, 46, { 1252, 500, 10000, 437, ',' }},
-	{0x0047, 0x007F, 0x0447, -1,19623, 19626, 19626, 19626, 19635, 19657, 19661, 19623, 0, {0, 0, 0, 0, 0}, 47, 47, { 0, 500, 2, 1, ',' }},
-	{0x0049, 0x007F, 0x0449, -1,19665, 19668, 19668, 19668, 19674, 19690, 19694, 19665, 0, {0, 0, 0, 0, 0}, 48, 48, { 0, 500, 2, 1, ',' }},
-	{0x004A, 0x007F, 0x044A, -1,19698, 19701, 19701, 19701, 19708, 19727, 19731, 19698, 0, {0, 0, 0, 0, 0}, 49, 49, { 0, 500, 2, 1, ',' }},
-	{0x004B, 0x007F, 0x044B, -1,19735, 19738, 19738, 19738, 19746, 19762, 19766, 19735, 0, {0, 0, 0, 0, 0}, 50, 50, { 0, 500, 2, 1, ',' }},
-	{0x004E, 0x007F, 0x044E, -1,19770, 19773, 19773, 19773, 19781, 19797, 1871, 19770, 0, {0, 0, 0, 0, 0}, 51, 51, { 0, 500, 2, 1, ',' }},
-	{0x0056, 0x007F, 0x0456, -1,19801, 19804, 19804, 19804, 19813, 19820, 19824, 19801, 0, {0, 0, 0, 0, 0}, 52, 52, { 1252, 500, 10000, 850, ',' }},
-	{0x0057, 0x007F, 0x0457, -1,19828, 19832, 19832, 19832, 19840, 19859, 19828, 19561, 0, {0, 0, 0, 0, 0}, 53, 53, { 0, 500, 2, 1, ',' }},
-	{0x0401, 0x0001, 0x0401, 174,19863, 19869, 19869, 19869, 19891, 18215, 18219, 18190, 10998, {16777216, 0, 0, 0, 0}, 54, 54, { 1256, 20420, 10004, 720, ';' }},
-	{0x0402, 0x0002, 0x0402, 19,19940, 19946, 19946, 19946, 19967, 18255, 18259, 18223, 20005, {0, 0, 0, 0, 0}, 55, 55, { 1251, 20420, 10007, 866, ';' }},
-	{0x0403, 0x0003, 0x0403, 61,20008, 20014, 20014, 20014, 20030, 18282, 18286, 18263, 20048, {0, 0, 0, 0, 0}, 56, 56, { 1252, 500, 10000, 850, ';' }},
-	{0x0404, 0x7C04, 0x0404, 207,20051, 20057, 20057, 20057, 20074, 20090, 18316, 18320, 20094, {0, 0, 0, 0, 0}, 57, 57, { 950, 500, 10002, 950, ',' }},
-	{0x0405, 0x0005, 0x0405, 49,20097, 20103, 20103, 20103, 20126, 18342, 18346, 18323, 20156, {0, 0, 0, 0, 0}, 58, 58, { 1250, 500, 10029, 852, ';' }},
-	{0x0406, 0x0006, 0x0406, 52,20159, 20165, 20165, 20165, 20182, 18366, 18370, 18350, 20198, {0, 0, 0, 0, 0}, 59, 59, { 1252, 20277, 10000, 850, ';' }},
-	{0x0407, 0x0007, 0x0407, 50,20201, 20207, 20207, 20207, 20224, 18392, 18396, 18374, 4300, {0, 0, 0, 0, 0}, 60, 60, { 1252, 20273, 10000, 850, ';' }},
-	{0x0408, 0x0008, 0x0408, 81,20246, 20252, 20252, 20252, 20267, 18426, 18430, 18400, 20299, {0, 0, 0, 0, 0}, 61, 61, { 1253, 20273, 10006, 737, ';' }},
-	{0x0409, 0x0009, 0x0409, 212,20302, 20308, 20308, 20308, 20308, 18445, 18449, 18434, 20332, {0, 0, 0, 0, 0}, 62, 62, { 1252, 37, 10000, 437, ',' }},
-	{0x040B, 0x000B, 0x040B, 63,20335, 20341, 20341, 20341, 20359, 18498, 18502, 18481, 20373, {0, 0, 0, 0, 0}, 63, 63, { 1252, 20278, 10000, 850, ';' }},
-	{0x040C, 0x000C, 0x040C, 68,20376, 20382, 20382, 20382, 20398, 18523, 18527, 5977, 20417, {0, 0, 0, 0, 0}, 64, 64, { 1252, 20297, 10000, 850, ';' }},
-	{0x040D, 0x000D, 0x040D, 92,20420, 20426, 20426, 20426, 20442, 18552, 18556, 18531, 20466, {0, 0, 0, 0, 0}, 65, 65, { 1255, 500, 10005, 862, ',' }},
-	{0x040E, 0x000E, 0x040E, 89,20469, 20475, 20475, 20475, 20495, 18580, 18584, 18560, 20518, {0, 0, 0, 0, 0}, 66, 66, { 1250, 500, 10029, 852, ';' }},
-	{0x040F, 0x000F, 0x040F, 97,20521, 20527, 20527, 20527, 20547, 18611, 18615, 18588, 20567, {0, 0, 0, 0, 0}, 67, 67, { 1252, 20871, 10079, 850, ';' }},
-	{0x0410, 0x0010, 0x0410, 98,20570, 20576, 20576, 20576, 20592, 18639, 18643, 18619, 20610, {0, 0, 0, 0, 0}, 68, 68, { 1252, 20280, 10000, 850, ';' }},
-	{0x0411, 0x0011, 0x0411, 101,20613, 20619, 20619, 20619, 20636, 18669, 18673, 18647, 20655, {0, 0, 0, 0, 0}, 69, 69, { 932, 20290, 10001, 932, ',' }},
-	{0x0412, 0x0012, 0x0412, 109,20658, 20664, 20664, 20664, 20685, 18697, 18701, 18677, 20710, {0, 0, 0, 0, 0}, 70, 70, { 949, 20833, 10003, 949, ',' }},
-	{0x0413, 0x0013, 0x0413, 149,20713, 20719, 20719, 20719, 20739, 18725, 18729, 18705, 20762, {0, 0, 0, 0, 0}, 71, 71, { 1252, 500, 10000, 850, ';' }},
-	{0x0414, 0x0014, 0x0414, 150,20765, 20771, 20797, 20797, 20824, 18752, 20846, 20850, 20853, {0, 0, 0, 0, 0}, 72, 72, { 1252, 20277, 10000, 850, ';' }},
-	{0x0415, 0x0015, 0x0415, 162,20856, 20862, 20862, 20862, 20878, 18777, 18781, 18760, 20894, {0, 0, 0, 0, 0}, 73, 73, { 1250, 20880, 10029, 852, ';' }},
-	{0x0416, 0x0016, 0x0416, 26,20897, 20903, 20903, 20903, 20923, 18810, 18814, 18785, 20943, {0, 0, 0, 0, 0}, 74, 74, { 1252, 500, 10000, 850, ';' }},
-	{0x0418, 0x0018, 0x0418, 171,20946, 20952, 20952, 20952, 20971, 18839, 18843, 18818, 20991, {0, 0, 0, 0, 0}, 75, 75, { 1250, 20880, 10029, 852, ';' }},
-	{0x0419, 0x0019, 0x0419, 172,20994, 21000, 21000, 21000, 21017, 18873, 18877, 18847, 21047, {0, 0, 0, 0, 0}, 76, 76, { 1251, 20880, 10007, 866, ';' }},
-	{0x041A, 0x001A, 0x041A, 88,21050, 21056, 21056, 21056, 21075, 18902, 18906, 18881, 21095, {0, 0, 0, 0, 0}, 77, 77, { 1250, 500, 10082, 852, ';' }},
-	{0x041B, 0x001B, 0x041B, 183,21098, 21104, 21104, 21104, 21122, 18931, 18935, 18910, 21156, {0, 0, 0, 0, 0}, 78, 78, { 1250, 20880, 10029, 852, ';' }},
-	{0x041C, 0x001C, 0x041C, 4,21159, 21165, 21165, 21165, 21184, 18958, 18962, 18939, 21204, {0, 0, 0, 0, 0}, 79, 79, { 1250, 20880, 10029, 852, ';' }},
-	{0x041D, 0x001D, 0x041D, 178,21207, 21213, 21213, 21213, 21230, 18985, 18989, 18966, 21248, {0, 0, 0, 0, 0}, 80, 80, { 1252, 20278, 10000, 850, ';' }},
-	{0x041E, 0x001E, 0x041E, 197,21251, 21257, 21257, 21257, 21273, 19011, 19015, 18993, 21313, {0, 0, 0, 0, 0}, 81, 81, { 874, 20838, 10021, 874, ',' }},
-	{0x041F, 0x001F, 0x041F, 204,21316, 21322, 21322, 21322, 21339, 19039, 19043, 19019, 21359, {0, 0, 0, 0, 0}, 82, 82, { 1254, 20905, 10081, 857, ';' }},
-	{0x0421, 0x0021, 0x0421, 90,21362, 21368, 21368, 21368, 21391, 19078, 19082, 19047, 21420, {0, 0, 0, 0, 0}, 83, 83, { 1252, 500, 10000, 850, ';' }},
-	{0x0422, 0x0022, 0x0422, 209,21423, 21429, 21429, 21429, 21449, 19120, 19124, 19086, 21487, {0, 0, 0, 0, 0}, 84, 84, { 1251, 500, 10017, 866, ';' }},
-	{0x0423, 0x0023, 0x0423, 30,21490, 21496, 21496, 21496, 21517, 19161, 19165, 19128, 21555, {0, 0, 0, 0, 0}, 85, 85, { 1251, 500, 10007, 866, ';' }},
-	{0x0424, 0x0024, 0x0424, 181,21558, 21564, 21564, 21564, 21585, 19196, 19200, 19169, 21611, {0, 0, 0, 0, 0}, 86, 86, { 1250, 20880, 10029, 852, ';' }},
-	{0x0425, 0x0025, 0x0425, 57,21614, 21620, 21620, 21620, 21639, 19222, 19226, 19204, 21653, {0, 0, 0, 0, 0}, 87, 87, { 1257, 500, 10029, 775, ';' }},
-	{0x0426, 0x0026, 0x0426, 121,21656, 21662, 21662, 21662, 21679, 19251, 19255, 19230, 21699, {0, 0, 0, 0, 0}, 88, 88, { 1257, 500, 10029, 775, ';' }},
-	{0x0427, 0x0027, 0x0427, 119,21702, 21708, 21708, 21708, 21731, 19283, 19287, 19259, 21751, {0, 0, 0, 0, 0}, 89, 89, { 1257, 500, 10029, 775, ';' }},
-	{0x0429, 0x0029, 0x0429, 96,21754, 21760, 21760, 21760, 21775, 19313, 19317, 19291, 21799, {0, 0, 0, 0, 0}, 90, 90, { 1256, 20420, 10004, 720, ';' }},
-	{0x042A, 0x002A, 0x042A, 220,21802, 21808, 21808, 21808, 21829, 19350, 3165, 19321, 21857, {0, 0, 0, 0, 0}, 91, 91, { 1258, 500, 10000, 1258, ',' }},
-	{0x042B, 0x002B, 0x042B, 5,21860, 21866, 21866, 21866, 21885, 19381, 19385, 19354, 465, {0, 0, 0, 0, 0}, 92, 92, { 0, 500, 2, 1, ',' }},
-	{0x042D, 0x002D, 0x042D, 61,21950, 21956, 21956, 21956, 21971, 19407, 19411, 19389, 20048, {0, 0, 0, 0, 0}, 93, 93, { 1252, 500, 10000, 850, ';' }},
-	{0x042F, 0x002F, 0x042F, 128,21990, 21996, 21996, 21996, 22019, 19450, 19454, 19415, 22063, {0, 0, 0, 0, 0}, 94, 94, { 1251, 500, 10007, 866, ';' }},
-	{0x0436, 0x0036, 0x0436, 227,22066, 22072, 22072, 22072, 22097, 19482, 19486, 19458, 22122, {0, 0, 0, 0, 0}, 95, 95, { 1252, 500, 10000, 850, ',' }},
-	{0x0437, 0x0037, 0x0437, 72,22125, 22131, 22131, 22131, 22150, 19524, 19528, 19490, 22205, {0, 0, 0, 0, 0}, 96, 96, { 0, 500, 2, 1, ';' }},
-	{0x0438, 0x0038, 0x0438, 67,22208, 22214, 22214, 22214, 22238, 19553, 19557, 19532, 22259, {0, 0, 0, 0, 0}, 97, 97, { 1252, 20277, 10079, 850, ';' }},
-	{0x0439, 0x0039, 0x0439, 93,22262, 22268, 22268, 22268, 22282, 19586, 19590, 19561, 22313, {0, 0, 0, 0, 0}, 98, 98, { 0, 500, 2, 1, ',' }},
-	{0x0441, 0x0041, 0x0441, 102,22316, 22322, 22322, 22322, 22338, 19615, 19619, 19594, 22356, {0, 0, 0, 0, 0}, 99, 99, { 1252, 500, 10000, 437, ',' }},
-	{0x0447, 0x0047, 0x0447, 93,22359, 22365, 22365, 22365, 22382, 19657, 19661, 19623, 22313, {0, 0, 0, 0, 0}, 100, 100, { 0, 500, 2, 1, ',' }},
-	{0x0449, 0x0049, 0x0449, 93,22419, 22425, 22425, 22425, 22439, 19690, 19694, 19665, 22313, {0, 0, 0, 0, 0}, 101, 101, { 0, 500, 2, 1, ',' }},
-	{0x044A, 0x004A, 0x044A, 93,22479, 22485, 22485, 22485, 22500, 19727, 19731, 19698, 22313, {0, 0, 0, 0, 0}, 102, 102, { 0, 500, 2, 1, ',' }},
-	{0x044B, 0x004B, 0x044B, 93,22547, 22553, 22553, 22553, 22569, 19762, 19766, 19735, 22313, {0, 0, 0, 0, 0}, 103, 103, { 0, 500, 2, 1, ',' }},
-	{0x044E, 0x004E, 0x044E, 93,22600, 22606, 22606, 22606, 22622, 19797, 1871, 19770, 22313, {0, 0, 0, 0, 0}, 104, 104, { 0, 500, 2, 1, ',' }},
-	{0x0456, 0x0056, 0x0456, 61,22653, 22659, 22659, 22659, 22676, 19820, 19824, 19801, 20048, {0, 0, 0, 0, 0}, 105, 105, { 1252, 500, 10000, 850, ',' }},
-	{0x0457, 0x0057, 0x0457, 93,22693, 22700, 22700, 22700, 22716, 19859, 19828, 19828, 22313, {0, 0, 0, 0, 0}, 106, 106, { 0, 500, 2, 1, ',' }},
-	{0x0801, 0x0001, 0x0801, 95,22750, 22756, 22756, 22756, 22770, 22800, 18219, 18190, 22804, {2, 1, 0, 0, 0}, 107, 107, { 1256, 20420, 10004, 720, ';' }},
-	{0x0804, 0x0004, 0x0804, 42,22807, 22813, 22813, 22813, 22829, 18312, 18316, 18320, 11080, {0, 0, 0, 0, 0}, 108, 108, { 936, 500, 10008, 936, ',' }},
-	{0x0807, 0x0007, 0x0807, 37,22845, 22851, 22851, 22851, 22872, 22890, 18396, 18374, 11001, {0, 0, 0, 0, 0}, 109, 109, { 1252, 20273, 10000, 850, ';' }},
-	{0x0809, 0x0009, 0x0809, 70,22894, 22900, 22900, 22900, 22900, 22925, 18449, 18434, 22929, {0, 0, 0, 0, 0}, 110, 110, { 1252, 20285, 10000, 850, ',' }},
-	{0x080A, 0x000A, 0x080A, 141,22932, 22938, 22938, 22938, 22955, 22974, 18477, 18453, 22978, {0, 0, 0, 0, 0}, 111, 111, { 1252, 20284, 10000, 850, ',' }},
-	{0x080C, 0x000C, 0x080C, 17,22981, 22987, 22987, 22987, 23004, 23025, 18527, 5977, 23029, {0, 0, 0, 0, 0}, 112, 112, { 1252, 20297, 10000, 850, ';' }},
-	{0x0810, 0x0010, 0x0810, 37,23032, 23038, 23038, 23038, 23060, 23080, 18643, 18619, 11001, {0, 0, 0, 0, 0}, 113, 113, { 1252, 500, 10000, 850, ';' }},
-	{0x0813, 0x0013, 0x0813, 17,23084, 23090, 23090, 23090, 23106, 23127, 18729, 18705, 23029, {0, 0, 0, 0, 0}, 114, 114, { 1252, 500, 10000, 850, ';' }},
-	{0x0814, 0x0014, 0x0814, 150,23131, 23137, 23137, 23137, 23164, 23186, 23190, 23194, 20853, {0, 0, 0, 0, 0}, 115, 115, { 1252, 20277, 10000, 850, ';' }},
-	{0x0816, 0x0016, 0x0816, 166,23197, 23203, 23203, 23203, 23225, 23247, 18814, 18785, 23251, {0, 0, 0, 0, 0}, 116, 116, { 1252, 500, 10000, 850, ';' }},
-	{0x081D, 0x001D, 0x081D, 63,23254, 23260, 23260, 23260, 23278, 23296, 18989, 18966, 20373, {0, 0, 0, 0, 0}, 117, 117, { 1252, 20278, 10000, 850, ';' }},
-	{0x0C01, 0x0001, 0x0C01, 58,23300, 23306, 23306, 23306, 23321, 23345, 18219, 18190, 23349, {16777216, 0, 0, 0, 0}, 118, 118, { 1256, 20420, 10004, 720, ';' }},
-	{0x0C04, 0x7C04, 0x0C04, 85,23352, 23358, 23358, 23358, 23392, 23429, 18316, 18320, 23433, {0, 0, 0, 0, 0}, 119, 119, { 950, 500, 10002, 950, ',' }},
-	{0x0C07, 0x0007, 0x0C07, 10,23436, 23442, 23442, 23442, 23459, 23481, 18396, 18374, 23485, {0, 0, 0, 0, 0}, 120, 120, { 1252, 20273, 10000, 850, ';' }},
-	{0x0C09, 0x0009, 0x0C09, 11,23488, 23494, 23494, 23494, 23494, 23514, 18449, 18434, 23518, {0, 0, 0, 0, 0}, 121, 121, { 1252, 500, 10000, 850, ',' }},
-	{0x0C0A, 0x000A, 0x0C0A, 61,23521, 23527, 23527, 23527, 23543, 23562, 18477, 18453, 20048, {0, 0, 0, 0, 0}, 122, 122, { 1252, 20284, 10000, 850, ';' }},
-	{0x0C0C, 0x000C, 0x0C0C, 32,23566, 23572, 23572, 23572, 23588, 23607, 18527, 5977, 23611, {0, 0, 0, 0, 0}, 123, 123, { 1252, 20297, 10000, 850, ';' }},
-	{0x1001, 0x0001, 0x1001, 122,23614, 23620, 23620, 23620, 23635, 23663, 18219, 18190, 23667, {16777216, 0, 0, 0, 0}, 124, 124, { 1256, 20420, 10004, 720, ';' }},
-	{0x1004, 0x0004, 0x1004, 179,23670, 23676, 23676, 23676, 23696, 23715, 18316, 18320, 23719, {0, 0, 0, 0, 0}, 125, 125, { 936, 500, 10008, 936, ',' }},
-	{0x1007, 0x0007, 0x1007, 120,23722, 23728, 23728, 23728, 23748, 23768, 18396, 18374, 23772, {0, 0, 0, 0, 0}, 126, 126, { 1252, 20273, 10000, 850, ';' }},
-	{0x1009, 0x0009, 0x1009, 32,23775, 23781, 23781, 23781, 23781, 23798, 18449, 18434, 23611, {0, 0, 0, 0, 0}, 127, 127, { 1252, 37, 10000, 850, ',' }},
-	{0x100A, 0x000A, 0x100A, 82,23802, 23808, 23808, 23808, 23828, 23849, 18477, 18453, 23853, {0, 0, 0, 0, 0}, 128, 128, { 1252, 20284, 10000, 850, ',' }},
-	{0x100C, 0x000C, 0x100C, 37,23856, 23862, 23862, 23862, 23883, 23902, 18527, 5977, 11001, {0, 0, 0, 0, 0}, 129, 129, { 1252, 20297, 10000, 850, ';' }},
-	{0x1401, 0x0001, 0x1401, 55,23906, 23912, 23912, 23912, 23929, 23961, 18219, 18190, 23965, {16777216, 0, 0, 0, 0}, 130, 130, { 1256, 20420, 10004, 720, ';' }},
-	{0x1404, 0x0004, 0x1404, 132,23968, 23974, 23974, 23974, 24003, 24040, 18316, 18320, 24044, {0, 0, 0, 0, 0}, 131, 131, { 950, 500, 10002, 950, ',' }},
-	{0x1409, 0x0009, 0x1409, 154,24047, 24053, 24053, 24053, 24053, 24075, 18449, 18434, 24079, {0, 0, 0, 0, 0}, 132, 132, { 1252, 500, 10000, 850, ',' }},
-	{0x140A, 0x000A, 0x140A, 44,24082, 24088, 24088, 24088, 24109, 24131, 18477, 18453, 24135, {0, 0, 0, 0, 0}, 133, 133, { 1252, 20284, 10000, 850, ',' }},
-	{0x140C, 0x000C, 0x140C, 120,24138, 24144, 24144, 24144, 24164, 24187, 18527, 5977, 23772, {0, 0, 0, 0, 0}, 134, 134, { 1252, 20297, 10000, 850, ';' }},
-	{0x1801, 0x0001, 0x1801, 123,24191, 24197, 24197, 24197, 24214, 24244, 18219, 18190, 24248, {16777216, 0, 0, 0, 0}, 135, 135, { 1256, 20420, 10004, 720, ';' }},
-	{0x1809, 0x0009, 0x1809, 91,24251, 24257, 24257, 24257, 24257, 24275, 18449, 18434, 24279, {0, 0, 0, 0, 0}, 136, 136, { 1252, 500, 10000, 850, ',' }},
-	{0x180A, 0x000A, 0x180A, 156,24282, 24288, 24288, 24288, 24305, 24324, 18477, 18453, 24328, {0, 0, 0, 0, 0}, 137, 137, { 1252, 20284, 10000, 850, ',' }},
-	{0x1C01, 0x0001, 0x1C01, 202,24331, 24337, 24337, 24337, 24354, 24380, 18219, 18190, 24384, {16777216, 0, 0, 0, 0}, 138, 138, { 1256, 20420, 10004, 720, ';' }},
-	{0x1C09, 0x0009, 0x1C09, 227,24387, 24393, 24393, 24393, 24393, 24416, 18449, 18434, 22122, {0, 0, 0, 0, 0}, 139, 139, { 1252, 500, 10000, 437, ',' }},
-	{0x1C0A, 0x000A, 0x1C0A, 54,24420, 24426, 24426, 24426, 24455, 24488, 18477, 18453, 24492, {0, 0, 0, 0, 0}, 140, 140, { 1252, 20284, 10000, 850, ',' }},
-	{0x2001, 0x0001, 0x2001, 155,24495, 24501, 24501, 24501, 24515, 24541, 18219, 18190, 24545, {16777216, 0, 0, 0, 0}, 141, 141, { 1256, 20420, 10004, 720, ';' }},
-	{0x200A, 0x000A, 0x200A, 217,24548, 24554, 24554, 24554, 24574, 24595, 18477, 18453, 24599, {0, 0, 0, 0, 0}, 142, 142, { 1252, 20284, 10000, 850, ',' }},
-	{0x2401, 0x0001, 0x2401, 224,24602, 24608, 24608, 24608, 24623, 24651, 18219, 18190, 24655, {16777216, 0, 0, 0, 0}, 143, 143, { 1256, 20420, 10004, 720, ';' }},
-	{0x240A, 0x000A, 0x240A, 43,24658, 24664, 24664, 24664, 24683, 24703, 18477, 18453, 24707, {0, 0, 0, 0, 0}, 144, 144, { 1252, 20284, 10000, 850, ',' }},
-	{0x2801, 0x0001, 0x2801, 191,24710, 24716, 24716, 24716, 24731, 24759, 18219, 18190, 24763, {16777216, 0, 0, 0, 0}, 145, 145, { 1256, 20420, 10004, 720, ';' }},
-	{0x280A, 0x000A, 0x280A, 157,24766, 24772, 24772, 24772, 24787, 24804, 18477, 18453, 24808, {0, 0, 0, 0, 0}, 146, 146, { 1252, 20284, 10000, 850, ',' }},
-	{0x2C01, 0x0001, 0x2C01, 100,24811, 24817, 24817, 24817, 24833, 24863, 18219, 18190, 24867, {16777216, 0, 0, 0, 0}, 147, 147, { 1256, 20420, 10004, 720, ';' }},
-	{0x2C09, 0x0009, 0x2C09, 205,24870, 24876, 24876, 24876, 24876, 24906, 18449, 18434, 24910, {0, 0, 0, 0, 0}, 148, 148, { 1252, 500, 10000, 850, ';' }},
-	{0x2C0A, 0x000A, 0x2C0A, 8,24913, 24919, 24919, 24919, 24939, 24960, 18477, 18453, 24964, {0, 0, 0, 0, 0}, 149, 149, { 1252, 20284, 10000, 850, ',' }},
-	{0x3001, 0x0001, 0x3001, 114,24967, 24973, 24973, 24973, 24990, 25018, 18219, 18190, 25022, {16777216, 0, 0, 0, 0}, 150, 150, { 1256, 20420, 10004, 720, ';' }},
-	{0x3009, 0x0009, 0x3009, 229,25025, 25031, 25031, 25031, 25031, 25050, 18449, 18434, 25054, {0, 0, 0, 0, 0}, 151, 151, { 1252, 500, 10000, 437, ',' }},
-	{0x300A, 0x000A, 0x300A, 56,25057, 25063, 25063, 25063, 25081, 25100, 18477, 18453, 25104, {0, 0, 0, 0, 0}, 152, 152, { 1252, 20284, 10000, 850, ',' }},
-	{0x3401, 0x0001, 0x3401, 110,25107, 25113, 25113, 25113, 25129, 25159, 18219, 18190, 25163, {16777216, 0, 0, 0, 0}, 153, 153, { 1256, 20420, 10004, 720, ';' }},
-	{0x3409, 0x0009, 0x3409, 160,25166, 25172, 25172, 25172, 25172, 25194, 18449, 18434, 25198, {0, 0, 0, 0, 0}, 154, 154, { 1252, 500, 10000, 437, ',' }},
-	{0x340A, 0x000A, 0x340A, 40,25201, 25207, 25207, 25207, 25223, 25240, 18477, 18453, 25244, {0, 0, 0, 0, 0}, 155, 155, { 1252, 20284, 10000, 850, ',' }},
-	{0x3801, 0x0001, 0x3801, 0,25247, 25253, 25253, 25253, 25283, 25347, 18219, 18190, 25351, {16777216, 0, 0, 0, 0}, 156, 156, { 1256, 20420, 10004, 720, ';' }},
-	{0x380A, 0x000A, 0x380A, 213,25354, 25360, 25360, 25360, 25378, 25397, 18477, 18453, 25401, {0, 0, 0, 0, 0}, 157, 157, { 1252, 20284, 10000, 850, ',' }},
-	{0x3C01, 0x0001, 0x3C01, 20,25404, 25410, 25410, 25410, 25427, 25459, 18219, 18190, 25463, {16777216, 0, 0, 0, 0}, 158, 158, { 1256, 20420, 10004, 720, ';' }},
-	{0x3C0A, 0x000A, 0x3C0A, 168,25466, 25472, 25472, 25472, 25491, 25511, 18477, 18453, 25515, {0, 0, 0, 0, 0}, 159, 159, { 1252, 20284, 10000, 850, ',' }},
-	{0x4001, 0x0001, 0x4001, 169,25518, 25524, 25524, 25524, 25539, 25563, 18219, 18190, 25567, {16777216, 0, 0, 0, 0}, 160, 160, { 1256, 20420, 10004, 720, ';' }},
-	{0x400A, 0x000A, 0x400A, 25,25570, 25576, 25576, 25576, 25594, 25613, 18477, 18453, 25617, {0, 0, 0, 0, 0}, 161, 161, { 1252, 20284, 10000, 850, ',' }},
-	{0x440A, 0x000A, 0x440A, 190,25620, 25626, 25626, 25626, 25648, 25671, 18477, 18453, 25675, {0, 0, 0, 0, 0}, 162, 162, { 1252, 20284, 10000, 850, ',' }},
-	{0x480A, 0x000A, 0x480A, 87,25678, 25684, 25684, 25684, 25703, 25723, 18477, 18453, 25727, {0, 0, 0, 0, 0}, 163, 163, { 1252, 20284, 10000, 850, ',' }},
-	{0x4C0A, 0x000A, 0x4C0A, 148,25730, 25736, 25736, 25736, 25756, 25777, 18477, 18453, 25781, {0, 0, 0, 0, 0}, 164, 164, { 1252, 20284, 10000, 850, ',' }},
-	{0x500A, 0x000A, 0x500A, 165,25784, 25790, 25790, 25790, 25812, 25835, 18477, 18453, 25839, {0, 0, 0, 0, 0}, 165, 165, { 1252, 20284, 10000, 850, ',' }},
-	{0x7C04, 0x007F, 0x0000, -1,25842, 20057, 18297, 18297, 18305, 20090, 18316, 18320, 0, {0, 0, 0, 0, 0}, 166, 166, { 950, 500, 10002, 950, ',' }}
+	{0x0001, 0x007F, 0x0401, -1,18193, 18196, 18196, 18196, 18203, 18218, 18222, 18193, 0, {16777216, 0, 0, 0, 0}, 0, 0, { 1256, 20420, 10004, 720, ';' }},
+	{0x0002, 0x007F, 0x0402, -1,18226, 18229, 18229, 18229, 18239, 18258, 18262, 18226, 0, {0, 0, 0, 0, 0}, 1, 1, { 1251, 20420, 10007, 866, ';' }},
+	{0x0003, 0x007F, 0x0403, -1,18266, 18269, 18269, 18269, 18277, 18285, 18289, 18266, 0, {0, 0, 0, 0, 0}, 2, 2, { 1252, 500, 10000, 850, ';' }},
+	{0x0004, 0x007F, 0x0000, -1,18293, 18300, 18300, 18300, 18308, 18315, 18319, 18323, 0, {0, 0, 0, 0, 0}, 166, 166, { 936, 500, 10008, 936, ',' }},
+	{0x0005, 0x007F, 0x0405, -1,18326, 18329, 18329, 18329, 18335, 18345, 18349, 18326, 0, {0, 0, 0, 0, 0}, 4, 4, { 1250, 500, 10029, 852, ';' }},
+	{0x0006, 0x007F, 0x0406, -1,18353, 18356, 18356, 18356, 18363, 18369, 18373, 18353, 0, {0, 0, 0, 0, 0}, 5, 5, { 1252, 20277, 10000, 850, ';' }},
+	{0x0007, 0x007F, 0x0407, -1,18377, 18380, 18380, 18380, 18387, 18395, 18399, 18377, 0, {0, 0, 0, 0, 0}, 6, 6, { 1252, 20273, 10000, 850, ';' }},
+	{0x0008, 0x007F, 0x0408, -1,18403, 18406, 18406, 18406, 18412, 18429, 18433, 18403, 0, {0, 0, 0, 0, 0}, 7, 7, { 1253, 20273, 10006, 737, ';' }},
+	{0x0009, 0x007F, 0x0409, -1,18437, 18440, 18440, 18440, 18440, 18448, 18452, 18437, 0, {0, 0, 0, 0, 0}, 8, 8, { 1252, 37, 10000, 437, ',' }},
+	{0x000A, 0x007F, 0x0C0A, -1,18456, 18459, 18459, 18459, 18467, 18476, 18480, 18456, 0, {0, 0, 0, 0, 0}, 9, 9, { 1252, 20284, 10000, 850, ';' }},
+	{0x000B, 0x007F, 0x040B, -1,18484, 18487, 18487, 18487, 18495, 18501, 18505, 18484, 0, {0, 0, 0, 0, 0}, 10, 10, { 1252, 20278, 10000, 850, ';' }},
+	{0x000C, 0x007F, 0x040C, -1,5984, 18509, 18509, 18509, 18516, 18526, 18530, 5984, 0, {0, 0, 0, 0, 0}, 11, 11, { 1252, 20297, 10000, 850, ';' }},
+	{0x000D, 0x007F, 0x040D, -1,18534, 18537, 18537, 18537, 18544, 18555, 18559, 18534, 0, {0, 0, 0, 0, 0}, 12, 12, { 1255, 500, 10005, 862, ',' }},
+	{0x000E, 0x007F, 0x040E, -1,18563, 18566, 18566, 18566, 18576, 18583, 18587, 18563, 0, {0, 0, 0, 0, 0}, 13, 13, { 1250, 500, 10029, 852, ';' }},
+	{0x000F, 0x007F, 0x040F, -1,18591, 18594, 18594, 18594, 18604, 18614, 18618, 18591, 0, {0, 0, 0, 0, 0}, 14, 14, { 1252, 20871, 10079, 850, ';' }},
+	{0x0010, 0x007F, 0x0410, -1,18622, 18625, 18625, 18625, 18633, 18642, 18646, 18622, 0, {0, 0, 0, 0, 0}, 15, 15, { 1252, 20280, 10000, 850, ';' }},
+	{0x0011, 0x007F, 0x0411, -1,18650, 18653, 18653, 18653, 18662, 18672, 18676, 18650, 0, {0, 0, 0, 0, 0}, 16, 16, { 932, 20290, 10001, 932, ',' }},
+	{0x0012, 0x007F, 0x0412, -1,18680, 18683, 18683, 18683, 18690, 18700, 18704, 18680, 0, {0, 0, 0, 0, 0}, 17, 17, { 949, 20833, 10003, 949, ',' }},
+	{0x0013, 0x007F, 0x0413, -1,18708, 18711, 18711, 18711, 18717, 18728, 18732, 18708, 0, {0, 0, 0, 0, 0}, 18, 18, { 1252, 500, 10000, 850, ';' }},
+	{0x0014, 0x007F, 0x0414, -1,18736, 18739, 18739, 18739, 18749, 18755, 18759, 18736, 0, {0, 0, 0, 0, 0}, 19, 19, { 1252, 20277, 10000, 850, ';' }},
+	{0x0015, 0x007F, 0x0415, -1,18763, 18766, 18766, 18766, 18773, 18780, 18784, 18763, 0, {0, 0, 0, 0, 0}, 20, 20, { 1250, 20880, 10029, 852, ';' }},
+	{0x0016, 0x007F, 0x0416, -1,18788, 18791, 18791, 18791, 18802, 18813, 18817, 18788, 0, {0, 0, 0, 0, 0}, 21, 21, { 1252, 500, 10000, 850, ';' }},
+	{0x0018, 0x007F, 0x0418, -1,18821, 18824, 18824, 18824, 18833, 18842, 18846, 18821, 0, {0, 0, 0, 0, 0}, 22, 22, { 1250, 20880, 10029, 852, ';' }},
+	{0x0019, 0x007F, 0x0419, -1,18850, 18853, 18853, 18853, 18861, 18876, 18880, 18850, 0, {0, 0, 0, 0, 0}, 23, 23, { 1251, 20880, 10007, 866, ';' }},
+	{0x001A, 0x007F, 0x041A, -1,18884, 18887, 18887, 18887, 18896, 18905, 18909, 18884, 0, {0, 0, 0, 0, 0}, 24, 24, { 1250, 500, 10082, 852, ';' }},
+	{0x001B, 0x007F, 0x041B, -1,18913, 18916, 18916, 18916, 18923, 18934, 18938, 18913, 0, {0, 0, 0, 0, 0}, 25, 25, { 1250, 20880, 10029, 852, ';' }},
+	{0x001C, 0x007F, 0x041C, -1,18942, 18945, 18945, 18945, 18954, 18961, 18965, 18942, 0, {0, 0, 0, 0, 0}, 26, 26, { 1250, 20880, 10029, 852, ';' }},
+	{0x001D, 0x007F, 0x041D, -1,18969, 18972, 18972, 18972, 18980, 18988, 18992, 18969, 0, {0, 0, 0, 0, 0}, 27, 27, { 1252, 20278, 10000, 850, ';' }},
+	{0x001E, 0x007F, 0x041E, -1,18996, 18999, 18999, 18999, 19004, 19014, 19018, 18996, 0, {0, 0, 0, 0, 0}, 28, 28, { 874, 20838, 10021, 874, ',' }},
+	{0x001F, 0x007F, 0x041F, -1,19022, 19025, 19025, 19025, 19033, 19042, 19046, 19022, 0, {0, 0, 0, 0, 0}, 29, 29, { 1254, 20905, 10081, 857, ';' }},
+	{0x0021, 0x007F, 0x0421, -1,19050, 19053, 19053, 19053, 19064, 19081, 19085, 19050, 0, {0, 0, 0, 0, 0}, 30, 30, { 1252, 500, 10000, 850, ';' }},
+	{0x0022, 0x007F, 0x0422, -1,19089, 19092, 19092, 19092, 19102, 19123, 19127, 19089, 0, {0, 0, 0, 0, 0}, 31, 31, { 1251, 500, 10017, 866, ';' }},
+	{0x0023, 0x007F, 0x0423, -1,19131, 19134, 19134, 19134, 19145, 19164, 19168, 19131, 0, {0, 0, 0, 0, 0}, 32, 32, { 1251, 500, 10007, 866, ';' }},
+	{0x0024, 0x007F, 0x0424, -1,19172, 19175, 19175, 19175, 19185, 19199, 19203, 19172, 0, {0, 0, 0, 0, 0}, 33, 33, { 1250, 20880, 10029, 852, ';' }},
+	{0x0025, 0x007F, 0x0425, -1,19207, 19210, 19210, 19210, 19219, 19225, 19229, 19207, 0, {0, 0, 0, 0, 0}, 34, 34, { 1257, 500, 10029, 775, ';' }},
+	{0x0026, 0x007F, 0x0426, -1,19233, 19236, 19236, 19236, 19244, 19254, 19258, 19233, 0, {0, 0, 0, 0, 0}, 35, 35, { 1257, 500, 10029, 775, ';' }},
+	{0x0027, 0x007F, 0x0427, -1,19262, 19265, 19265, 19265, 19276, 19286, 19290, 19262, 0, {0, 0, 0, 0, 0}, 36, 36, { 1257, 500, 10029, 775, ';' }},
+	{0x0029, 0x007F, 0x0429, -1,19294, 19297, 19297, 19297, 19305, 19316, 19320, 19294, 0, {0, 0, 0, 0, 0}, 37, 37, { 1256, 20420, 10004, 720, ';' }},
+	{0x002A, 0x007F, 0x042A, -1,19324, 19327, 19327, 19327, 19338, 19353, 3169, 19324, 0, {0, 0, 0, 0, 0}, 38, 38, { 1258, 500, 10000, 1258, ',' }},
+	{0x002B, 0x007F, 0x042B, -1,19357, 19360, 19360, 19360, 19369, 19384, 19388, 19357, 0, {0, 0, 0, 0, 0}, 39, 39, { 0, 500, 2, 1, ',' }},
+	{0x002D, 0x007F, 0x042D, -1,19392, 19395, 19395, 19395, 19402, 19410, 19414, 19392, 0, {0, 0, 0, 0, 0}, 40, 40, { 1252, 500, 10000, 850, ';' }},
+	{0x002F, 0x007F, 0x042F, -1,19418, 19421, 19421, 19421, 19432, 19453, 19457, 19418, 0, {0, 0, 0, 0, 0}, 41, 41, { 1251, 500, 10007, 866, ';' }},
+	{0x0036, 0x007F, 0x0436, -1,19461, 19464, 19464, 19464, 19474, 19485, 19489, 19461, 0, {0, 0, 0, 0, 0}, 42, 42, { 1252, 500, 10000, 850, ',' }},
+	{0x0037, 0x007F, 0x0437, -1,19493, 19496, 19496, 19496, 19505, 19527, 19531, 19493, 0, {0, 0, 0, 0, 0}, 43, 43, { 0, 500, 2, 1, ';' }},
+	{0x0038, 0x007F, 0x0438, -1,19535, 19538, 19538, 19538, 19546, 19556, 19560, 19535, 0, {0, 0, 0, 0, 0}, 44, 44, { 1252, 20277, 10079, 850, ';' }},
+	{0x0039, 0x007F, 0x0439, -1,19564, 19567, 19567, 19567, 19573, 19589, 19593, 19564, 0, {0, 0, 0, 0, 0}, 45, 45, { 0, 500, 2, 1, ',' }},
+	{0x0041, 0x007F, 0x0441, -1,19597, 19600, 19600, 19600, 19608, 19618, 19622, 19597, 0, {0, 0, 0, 0, 0}, 46, 46, { 1252, 500, 10000, 437, ',' }},
+	{0x0047, 0x007F, 0x0447, -1,19626, 19629, 19629, 19629, 19638, 19660, 19664, 19626, 0, {0, 0, 0, 0, 0}, 47, 47, { 0, 500, 2, 1, ',' }},
+	{0x0049, 0x007F, 0x0449, -1,19668, 19671, 19671, 19671, 19677, 19693, 19697, 19668, 0, {0, 0, 0, 0, 0}, 48, 48, { 0, 500, 2, 1, ',' }},
+	{0x004A, 0x007F, 0x044A, -1,19701, 19704, 19704, 19704, 19711, 19730, 19734, 19701, 0, {0, 0, 0, 0, 0}, 49, 49, { 0, 500, 2, 1, ',' }},
+	{0x004B, 0x007F, 0x044B, -1,19738, 19741, 19741, 19741, 19749, 19765, 19769, 19738, 0, {0, 0, 0, 0, 0}, 50, 50, { 0, 500, 2, 1, ',' }},
+	{0x004E, 0x007F, 0x044E, -1,19773, 19776, 19776, 19776, 19784, 19800, 1873, 19773, 0, {0, 0, 0, 0, 0}, 51, 51, { 0, 500, 2, 1, ',' }},
+	{0x0056, 0x007F, 0x0456, -1,19804, 19807, 19807, 19807, 19816, 19823, 19827, 19804, 0, {0, 0, 0, 0, 0}, 52, 52, { 1252, 500, 10000, 850, ',' }},
+	{0x0057, 0x007F, 0x0457, -1,19831, 19835, 19835, 19835, 19843, 19862, 19831, 19564, 0, {0, 0, 0, 0, 0}, 53, 53, { 0, 500, 2, 1, ',' }},
+	{0x0401, 0x0001, 0x0401, 174,19866, 19872, 19872, 19872, 19894, 18218, 18222, 18193, 11005, {16777216, 0, 0, 0, 0}, 54, 54, { 1256, 20420, 10004, 720, ';' }},
+	{0x0402, 0x0002, 0x0402, 19,19943, 19949, 19949, 19949, 19970, 18258, 18262, 18226, 20008, {0, 0, 0, 0, 0}, 55, 55, { 1251, 20420, 10007, 866, ';' }},
+	{0x0403, 0x0003, 0x0403, 61,20011, 20017, 20017, 20017, 20033, 18285, 18289, 18266, 20051, {0, 0, 0, 0, 0}, 56, 56, { 1252, 500, 10000, 850, ';' }},
+	{0x0404, 0x7C04, 0x0404, 207,20054, 20060, 20060, 20060, 20077, 20093, 18319, 18323, 20097, {0, 0, 0, 0, 0}, 57, 57, { 950, 500, 10002, 950, ',' }},
+	{0x0405, 0x0005, 0x0405, 49,20100, 20106, 20106, 20106, 20129, 18345, 18349, 18326, 20159, {0, 0, 0, 0, 0}, 58, 58, { 1250, 500, 10029, 852, ';' }},
+	{0x0406, 0x0006, 0x0406, 52,20162, 20168, 20168, 20168, 20185, 18369, 18373, 18353, 20201, {0, 0, 0, 0, 0}, 59, 59, { 1252, 20277, 10000, 850, ';' }},
+	{0x0407, 0x0007, 0x0407, 50,20204, 20210, 20210, 20210, 20227, 18395, 18399, 18377, 4304, {0, 0, 0, 0, 0}, 60, 60, { 1252, 20273, 10000, 850, ';' }},
+	{0x0408, 0x0008, 0x0408, 81,20249, 20255, 20255, 20255, 20270, 18429, 18433, 18403, 20302, {0, 0, 0, 0, 0}, 61, 61, { 1253, 20273, 10006, 737, ';' }},
+	{0x0409, 0x0009, 0x0409, 212,20305, 20311, 20311, 20311, 20311, 18448, 18452, 18437, 20335, {0, 0, 0, 0, 0}, 62, 62, { 1252, 37, 10000, 437, ',' }},
+	{0x040B, 0x000B, 0x040B, 63,20338, 20344, 20344, 20344, 20362, 18501, 18505, 18484, 20376, {0, 0, 0, 0, 0}, 63, 63, { 1252, 20278, 10000, 850, ';' }},
+	{0x040C, 0x000C, 0x040C, 68,20379, 20385, 20385, 20385, 20401, 18526, 18530, 5984, 20420, {0, 0, 0, 0, 0}, 64, 64, { 1252, 20297, 10000, 850, ';' }},
+	{0x040D, 0x000D, 0x040D, 92,20423, 20429, 20429, 20429, 20445, 18555, 18559, 18534, 20469, {0, 0, 0, 0, 0}, 65, 65, { 1255, 500, 10005, 862, ',' }},
+	{0x040E, 0x000E, 0x040E, 89,20472, 20478, 20478, 20478, 20498, 18583, 18587, 18563, 20521, {0, 0, 0, 0, 0}, 66, 66, { 1250, 500, 10029, 852, ';' }},
+	{0x040F, 0x000F, 0x040F, 97,20524, 20530, 20530, 20530, 20550, 18614, 18618, 18591, 20570, {0, 0, 0, 0, 0}, 67, 67, { 1252, 20871, 10079, 850, ';' }},
+	{0x0410, 0x0010, 0x0410, 98,20573, 20579, 20579, 20579, 20595, 18642, 18646, 18622, 20613, {0, 0, 0, 0, 0}, 68, 68, { 1252, 20280, 10000, 850, ';' }},
+	{0x0411, 0x0011, 0x0411, 101,20616, 20622, 20622, 20622, 20639, 18672, 18676, 18650, 20658, {0, 0, 0, 0, 0}, 69, 69, { 932, 20290, 10001, 932, ',' }},
+	{0x0412, 0x0012, 0x0412, 109,20661, 20667, 20667, 20667, 20688, 18700, 18704, 18680, 20713, {0, 0, 0, 0, 0}, 70, 70, { 949, 20833, 10003, 949, ',' }},
+	{0x0413, 0x0013, 0x0413, 149,20716, 20722, 20722, 20722, 20742, 18728, 18732, 18708, 20765, {0, 0, 0, 0, 0}, 71, 71, { 1252, 500, 10000, 850, ';' }},
+	{0x0414, 0x0014, 0x0414, 150,20768, 20774, 20800, 20800, 20827, 18755, 20849, 20853, 20856, {0, 0, 0, 0, 0}, 72, 72, { 1252, 20277, 10000, 850, ';' }},
+	{0x0415, 0x0015, 0x0415, 162,20859, 20865, 20865, 20865, 20881, 18780, 18784, 18763, 20897, {0, 0, 0, 0, 0}, 73, 73, { 1250, 20880, 10029, 852, ';' }},
+	{0x0416, 0x0016, 0x0416, 26,20900, 20906, 20906, 20906, 20926, 18813, 18817, 18788, 20946, {0, 0, 0, 0, 0}, 74, 74, { 1252, 500, 10000, 850, ';' }},
+	{0x0418, 0x0018, 0x0418, 171,20949, 20955, 20955, 20955, 20974, 18842, 18846, 18821, 20994, {0, 0, 0, 0, 0}, 75, 75, { 1250, 20880, 10029, 852, ';' }},
+	{0x0419, 0x0019, 0x0419, 172,20997, 21003, 21003, 21003, 21020, 18876, 18880, 18850, 21050, {0, 0, 0, 0, 0}, 76, 76, { 1251, 20880, 10007, 866, ';' }},
+	{0x041A, 0x001A, 0x041A, 88,21053, 21059, 21059, 21059, 21078, 18905, 18909, 18884, 21098, {0, 0, 0, 0, 0}, 77, 77, { 1250, 500, 10082, 852, ';' }},
+	{0x041B, 0x001B, 0x041B, 183,21101, 21107, 21107, 21107, 21125, 18934, 18938, 18913, 21159, {0, 0, 0, 0, 0}, 78, 78, { 1250, 20880, 10029, 852, ';' }},
+	{0x041C, 0x001C, 0x041C, 4,21162, 21168, 21168, 21168, 21187, 18961, 18965, 18942, 21207, {0, 0, 0, 0, 0}, 79, 79, { 1250, 20880, 10029, 852, ';' }},
+	{0x041D, 0x001D, 0x041D, 178,21210, 21216, 21216, 21216, 21233, 18988, 18992, 18969, 21251, {0, 0, 0, 0, 0}, 80, 80, { 1252, 20278, 10000, 850, ';' }},
+	{0x041E, 0x001E, 0x041E, 197,21254, 21260, 21260, 21260, 21276, 19014, 19018, 18996, 21316, {0, 0, 0, 0, 0}, 81, 81, { 874, 20838, 10021, 874, ',' }},
+	{0x041F, 0x001F, 0x041F, 204,21319, 21325, 21325, 21325, 21342, 19042, 19046, 19022, 21362, {0, 0, 0, 0, 0}, 82, 82, { 1254, 20905, 10081, 857, ';' }},
+	{0x0421, 0x0021, 0x0421, 90,21365, 21371, 21371, 21371, 21394, 19081, 19085, 19050, 21423, {0, 0, 0, 0, 0}, 83, 83, { 1252, 500, 10000, 850, ';' }},
+	{0x0422, 0x0022, 0x0422, 209,21426, 21432, 21432, 21432, 21452, 19123, 19127, 19089, 21490, {0, 0, 0, 0, 0}, 84, 84, { 1251, 500, 10017, 866, ';' }},
+	{0x0423, 0x0023, 0x0423, 30,21493, 21499, 21499, 21499, 21520, 19164, 19168, 19131, 21558, {0, 0, 0, 0, 0}, 85, 85, { 1251, 500, 10007, 866, ';' }},
+	{0x0424, 0x0024, 0x0424, 181,21561, 21567, 21567, 21567, 21588, 19199, 19203, 19172, 21614, {0, 0, 0, 0, 0}, 86, 86, { 1250, 20880, 10029, 852, ';' }},
+	{0x0425, 0x0025, 0x0425, 57,21617, 21623, 21623, 21623, 21642, 19225, 19229, 19207, 21656, {0, 0, 0, 0, 0}, 87, 87, { 1257, 500, 10029, 775, ';' }},
+	{0x0426, 0x0026, 0x0426, 121,21659, 21665, 21665, 21665, 21682, 19254, 19258, 19233, 21702, {0, 0, 0, 0, 0}, 88, 88, { 1257, 500, 10029, 775, ';' }},
+	{0x0427, 0x0027, 0x0427, 119,21705, 21711, 21711, 21711, 21734, 19286, 19290, 19262, 21754, {0, 0, 0, 0, 0}, 89, 89, { 1257, 500, 10029, 775, ';' }},
+	{0x0429, 0x0029, 0x0429, 96,21757, 21763, 21763, 21763, 21778, 19316, 19320, 19294, 21802, {0, 0, 0, 0, 0}, 90, 90, { 1256, 20420, 10004, 720, ';' }},
+	{0x042A, 0x002A, 0x042A, 220,21805, 21811, 21811, 21811, 21832, 19353, 3169, 19324, 21860, {0, 0, 0, 0, 0}, 91, 91, { 1258, 500, 10000, 1258, ',' }},
+	{0x042B, 0x002B, 0x042B, 5,21863, 21869, 21869, 21869, 21888, 19384, 19388, 19357, 465, {0, 0, 0, 0, 0}, 92, 92, { 0, 500, 2, 1, ',' }},
+	{0x042D, 0x002D, 0x042D, 61,21953, 21959, 21959, 21959, 21974, 19410, 19414, 19392, 20051, {0, 0, 0, 0, 0}, 93, 93, { 1252, 500, 10000, 850, ';' }},
+	{0x042F, 0x002F, 0x042F, 128,21993, 21999, 21999, 21999, 22022, 19453, 19457, 19418, 22066, {0, 0, 0, 0, 0}, 94, 94, { 1251, 500, 10007, 866, ';' }},
+	{0x0436, 0x0036, 0x0436, 227,22069, 22075, 22075, 22075, 22100, 19485, 19489, 19461, 22125, {0, 0, 0, 0, 0}, 95, 95, { 1252, 500, 10000, 850, ',' }},
+	{0x0437, 0x0037, 0x0437, 72,22128, 22134, 22134, 22134, 22153, 19527, 19531, 19493, 22208, {0, 0, 0, 0, 0}, 96, 96, { 0, 500, 2, 1, ';' }},
+	{0x0438, 0x0038, 0x0438, 67,22211, 22217, 22217, 22217, 22241, 19556, 19560, 19535, 22262, {0, 0, 0, 0, 0}, 97, 97, { 1252, 20277, 10079, 850, ';' }},
+	{0x0439, 0x0039, 0x0439, 93,22265, 22271, 22271, 22271, 22285, 19589, 19593, 19564, 22316, {0, 0, 0, 0, 0}, 98, 98, { 0, 500, 2, 1, ',' }},
+	{0x0441, 0x0041, 0x0441, 102,22319, 22325, 22325, 22325, 22341, 19618, 19622, 19597, 22359, {0, 0, 0, 0, 0}, 99, 99, { 1252, 500, 10000, 437, ',' }},
+	{0x0447, 0x0047, 0x0447, 93,22362, 22368, 22368, 22368, 22385, 19660, 19664, 19626, 22316, {0, 0, 0, 0, 0}, 100, 100, { 0, 500, 2, 1, ',' }},
+	{0x0449, 0x0049, 0x0449, 93,22422, 22428, 22428, 22428, 22442, 19693, 19697, 19668, 22316, {0, 0, 0, 0, 0}, 101, 101, { 0, 500, 2, 1, ',' }},
+	{0x044A, 0x004A, 0x044A, 93,22482, 22488, 22488, 22488, 22503, 19730, 19734, 19701, 22316, {0, 0, 0, 0, 0}, 102, 102, { 0, 500, 2, 1, ',' }},
+	{0x044B, 0x004B, 0x044B, 93,22550, 22556, 22556, 22556, 22572, 19765, 19769, 19738, 22316, {0, 0, 0, 0, 0}, 103, 103, { 0, 500, 2, 1, ',' }},
+	{0x044E, 0x004E, 0x044E, 93,22603, 22609, 22609, 22609, 22625, 19800, 1873, 19773, 22316, {0, 0, 0, 0, 0}, 104, 104, { 0, 500, 2, 1, ',' }},
+	{0x0456, 0x0056, 0x0456, 61,22656, 22662, 22662, 22662, 22679, 19823, 19827, 19804, 20051, {0, 0, 0, 0, 0}, 105, 105, { 1252, 500, 10000, 850, ',' }},
+	{0x0457, 0x0057, 0x0457, 93,22696, 22703, 22703, 22703, 22719, 19862, 19831, 19831, 22316, {0, 0, 0, 0, 0}, 106, 106, { 0, 500, 2, 1, ',' }},
+	{0x0801, 0x0001, 0x0801, 95,22753, 22759, 22759, 22759, 22773, 22803, 18222, 18193, 22807, {2, 1, 0, 0, 0}, 107, 107, { 1256, 20420, 10004, 720, ';' }},
+	{0x0804, 0x0004, 0x0804, 42,22810, 22816, 22816, 22816, 22832, 18315, 18319, 18323, 11087, {0, 0, 0, 0, 0}, 108, 108, { 936, 500, 10008, 936, ',' }},
+	{0x0807, 0x0007, 0x0807, 37,22848, 22854, 22854, 22854, 22875, 22893, 18399, 18377, 11008, {0, 0, 0, 0, 0}, 109, 109, { 1252, 20273, 10000, 850, ';' }},
+	{0x0809, 0x0009, 0x0809, 70,22897, 22903, 22903, 22903, 22903, 22928, 18452, 18437, 22932, {0, 0, 0, 0, 0}, 110, 110, { 1252, 20285, 10000, 850, ',' }},
+	{0x080A, 0x000A, 0x080A, 141,22935, 22941, 22941, 22941, 22958, 22977, 18480, 18456, 22981, {0, 0, 0, 0, 0}, 111, 111, { 1252, 20284, 10000, 850, ',' }},
+	{0x080C, 0x000C, 0x080C, 17,22984, 22990, 22990, 22990, 23007, 23028, 18530, 5984, 23032, {0, 0, 0, 0, 0}, 112, 112, { 1252, 20297, 10000, 850, ';' }},
+	{0x0810, 0x0010, 0x0810, 37,23035, 23041, 23041, 23041, 23063, 23083, 18646, 18622, 11008, {0, 0, 0, 0, 0}, 113, 113, { 1252, 500, 10000, 850, ';' }},
+	{0x0813, 0x0013, 0x0813, 17,23087, 23093, 23093, 23093, 23109, 23130, 18732, 18708, 23032, {0, 0, 0, 0, 0}, 114, 114, { 1252, 500, 10000, 850, ';' }},
+	{0x0814, 0x0014, 0x0814, 150,23134, 23140, 23140, 23140, 23167, 23189, 23193, 23197, 20856, {0, 0, 0, 0, 0}, 115, 115, { 1252, 20277, 10000, 850, ';' }},
+	{0x0816, 0x0016, 0x0816, 166,23200, 23206, 23206, 23206, 23228, 23250, 18817, 18788, 23254, {0, 0, 0, 0, 0}, 116, 116, { 1252, 500, 10000, 850, ';' }},
+	{0x081D, 0x001D, 0x081D, 63,23257, 23263, 23263, 23263, 23281, 23299, 18992, 18969, 20376, {0, 0, 0, 0, 0}, 117, 117, { 1252, 20278, 10000, 850, ';' }},
+	{0x0C01, 0x0001, 0x0C01, 58,23303, 23309, 23309, 23309, 23324, 23348, 18222, 18193, 23352, {16777216, 0, 0, 0, 0}, 118, 118, { 1256, 20420, 10004, 720, ';' }},
+	{0x0C04, 0x7C04, 0x0C04, 85,23355, 23361, 23361, 23361, 23395, 23432, 18319, 18323, 23436, {0, 0, 0, 0, 0}, 119, 119, { 950, 500, 10002, 950, ',' }},
+	{0x0C07, 0x0007, 0x0C07, 10,23439, 23445, 23445, 23445, 23462, 23484, 18399, 18377, 23488, {0, 0, 0, 0, 0}, 120, 120, { 1252, 20273, 10000, 850, ';' }},
+	{0x0C09, 0x0009, 0x0C09, 11,23491, 23497, 23497, 23497, 23497, 23517, 18452, 18437, 23521, {0, 0, 0, 0, 0}, 121, 121, { 1252, 500, 10000, 850, ',' }},
+	{0x0C0A, 0x000A, 0x0C0A, 61,23524, 23530, 23530, 23530, 23546, 23565, 18480, 18456, 20051, {0, 0, 0, 0, 0}, 122, 122, { 1252, 20284, 10000, 850, ';' }},
+	{0x0C0C, 0x000C, 0x0C0C, 32,23569, 23575, 23575, 23575, 23591, 23610, 18530, 5984, 23614, {0, 0, 0, 0, 0}, 123, 123, { 1252, 20297, 10000, 850, ';' }},
+	{0x1001, 0x0001, 0x1001, 122,23617, 23623, 23623, 23623, 23638, 23666, 18222, 18193, 23670, {16777216, 0, 0, 0, 0}, 124, 124, { 1256, 20420, 10004, 720, ';' }},
+	{0x1004, 0x0004, 0x1004, 179,23673, 23679, 23679, 23679, 23699, 23718, 18319, 18323, 23722, {0, 0, 0, 0, 0}, 125, 125, { 936, 500, 10008, 936, ',' }},
+	{0x1007, 0x0007, 0x1007, 120,23725, 23731, 23731, 23731, 23751, 23771, 18399, 18377, 23775, {0, 0, 0, 0, 0}, 126, 126, { 1252, 20273, 10000, 850, ';' }},
+	{0x1009, 0x0009, 0x1009, 32,23778, 23784, 23784, 23784, 23784, 23801, 18452, 18437, 23614, {0, 0, 0, 0, 0}, 127, 127, { 1252, 37, 10000, 850, ',' }},
+	{0x100A, 0x000A, 0x100A, 82,23805, 23811, 23811, 23811, 23831, 23852, 18480, 18456, 23856, {0, 0, 0, 0, 0}, 128, 128, { 1252, 20284, 10000, 850, ',' }},
+	{0x100C, 0x000C, 0x100C, 37,23859, 23865, 23865, 23865, 23886, 23905, 18530, 5984, 11008, {0, 0, 0, 0, 0}, 129, 129, { 1252, 20297, 10000, 850, ';' }},
+	{0x1401, 0x0001, 0x1401, 55,23909, 23915, 23915, 23915, 23932, 23964, 18222, 18193, 23968, {16777216, 0, 0, 0, 0}, 130, 130, { 1256, 20420, 10004, 720, ';' }},
+	{0x1404, 0x0004, 0x1404, 132,23971, 23977, 23977, 23977, 24006, 24043, 18319, 18323, 24047, {0, 0, 0, 0, 0}, 131, 131, { 950, 500, 10002, 950, ',' }},
+	{0x1409, 0x0009, 0x1409, 154,24050, 24056, 24056, 24056, 24056, 24078, 18452, 18437, 24082, {0, 0, 0, 0, 0}, 132, 132, { 1252, 500, 10000, 850, ',' }},
+	{0x140A, 0x000A, 0x140A, 44,24085, 24091, 24091, 24091, 24112, 24134, 18480, 18456, 24138, {0, 0, 0, 0, 0}, 133, 133, { 1252, 20284, 10000, 850, ',' }},
+	{0x140C, 0x000C, 0x140C, 120,24141, 24147, 24147, 24147, 24167, 24190, 18530, 5984, 23775, {0, 0, 0, 0, 0}, 134, 134, { 1252, 20297, 10000, 850, ';' }},
+	{0x1801, 0x0001, 0x1801, 123,24194, 24200, 24200, 24200, 24217, 24247, 18222, 18193, 24251, {16777216, 0, 0, 0, 0}, 135, 135, { 1256, 20420, 10004, 720, ';' }},
+	{0x1809, 0x0009, 0x1809, 91,24254, 24260, 24260, 24260, 24260, 24278, 18452, 18437, 24282, {0, 0, 0, 0, 0}, 136, 136, { 1252, 500, 10000, 850, ',' }},
+	{0x180A, 0x000A, 0x180A, 156,24285, 24291, 24291, 24291, 24308, 24327, 18480, 18456, 24331, {0, 0, 0, 0, 0}, 137, 137, { 1252, 20284, 10000, 850, ',' }},
+	{0x1C01, 0x0001, 0x1C01, 202,24334, 24340, 24340, 24340, 24357, 24383, 18222, 18193, 24387, {16777216, 0, 0, 0, 0}, 138, 138, { 1256, 20420, 10004, 720, ';' }},
+	{0x1C09, 0x0009, 0x1C09, 227,24390, 24396, 24396, 24396, 24396, 24419, 18452, 18437, 22125, {0, 0, 0, 0, 0}, 139, 139, { 1252, 500, 10000, 437, ',' }},
+	{0x1C0A, 0x000A, 0x1C0A, 54,24423, 24429, 24429, 24429, 24458, 24491, 18480, 18456, 24495, {0, 0, 0, 0, 0}, 140, 140, { 1252, 20284, 10000, 850, ',' }},
+	{0x2001, 0x0001, 0x2001, 155,24498, 24504, 24504, 24504, 24518, 24544, 18222, 18193, 24548, {16777216, 0, 0, 0, 0}, 141, 141, { 1256, 20420, 10004, 720, ';' }},
+	{0x200A, 0x000A, 0x200A, 217,24551, 24557, 24557, 24557, 24577, 24598, 18480, 18456, 24602, {0, 0, 0, 0, 0}, 142, 142, { 1252, 20284, 10000, 850, ',' }},
+	{0x2401, 0x0001, 0x2401, 224,24605, 24611, 24611, 24611, 24626, 24654, 18222, 18193, 24658, {16777216, 0, 0, 0, 0}, 143, 143, { 1256, 20420, 10004, 720, ';' }},
+	{0x240A, 0x000A, 0x240A, 43,24661, 24667, 24667, 24667, 24686, 24706, 18480, 18456, 24710, {0, 0, 0, 0, 0}, 144, 144, { 1252, 20284, 10000, 850, ',' }},
+	{0x2801, 0x0001, 0x2801, 191,24713, 24719, 24719, 24719, 24734, 24762, 18222, 18193, 24766, {16777216, 0, 0, 0, 0}, 145, 145, { 1256, 20420, 10004, 720, ';' }},
+	{0x280A, 0x000A, 0x280A, 157,24769, 24775, 24775, 24775, 24790, 24807, 18480, 18456, 24811, {0, 0, 0, 0, 0}, 146, 146, { 1252, 20284, 10000, 850, ',' }},
+	{0x2C01, 0x0001, 0x2C01, 100,24814, 24820, 24820, 24820, 24836, 24866, 18222, 18193, 24870, {16777216, 0, 0, 0, 0}, 147, 147, { 1256, 20420, 10004, 720, ';' }},
+	{0x2C09, 0x0009, 0x2C09, 205,24873, 24879, 24879, 24879, 24879, 24909, 18452, 18437, 24913, {0, 0, 0, 0, 0}, 148, 148, { 1252, 500, 10000, 850, ';' }},
+	{0x2C0A, 0x000A, 0x2C0A, 8,24916, 24922, 24922, 24922, 24942, 24963, 18480, 18456, 24967, {0, 0, 0, 0, 0}, 149, 149, { 1252, 20284, 10000, 850, ',' }},
+	{0x3001, 0x0001, 0x3001, 114,24970, 24976, 24976, 24976, 24993, 25021, 18222, 18193, 25025, {16777216, 0, 0, 0, 0}, 150, 150, { 1256, 20420, 10004, 720, ';' }},
+	{0x3009, 0x0009, 0x3009, 229,25028, 25034, 25034, 25034, 25034, 25053, 18452, 18437, 25057, {0, 0, 0, 0, 0}, 151, 151, { 1252, 500, 10000, 437, ',' }},
+	{0x300A, 0x000A, 0x300A, 56,25060, 25066, 25066, 25066, 25084, 25103, 18480, 18456, 25107, {0, 0, 0, 0, 0}, 152, 152, { 1252, 20284, 10000, 850, ',' }},
+	{0x3401, 0x0001, 0x3401, 110,25110, 25116, 25116, 25116, 25132, 25162, 18222, 18193, 25166, {16777216, 0, 0, 0, 0}, 153, 153, { 1256, 20420, 10004, 720, ';' }},
+	{0x3409, 0x0009, 0x3409, 160,25169, 25175, 25175, 25175, 25175, 25197, 18452, 18437, 25201, {0, 0, 0, 0, 0}, 154, 154, { 1252, 500, 10000, 437, ',' }},
+	{0x340A, 0x000A, 0x340A, 40,25204, 25210, 25210, 25210, 25226, 25243, 18480, 18456, 25247, {0, 0, 0, 0, 0}, 155, 155, { 1252, 20284, 10000, 850, ',' }},
+	{0x3801, 0x0001, 0x3801, 0,25250, 25256, 25256, 25256, 25286, 25350, 18222, 18193, 25354, {16777216, 0, 0, 0, 0}, 156, 156, { 1256, 20420, 10004, 720, ';' }},
+	{0x380A, 0x000A, 0x380A, 213,25357, 25363, 25363, 25363, 25381, 25400, 18480, 18456, 25404, {0, 0, 0, 0, 0}, 157, 157, { 1252, 20284, 10000, 850, ',' }},
+	{0x3C01, 0x0001, 0x3C01, 20,25407, 25413, 25413, 25413, 25430, 25462, 18222, 18193, 25466, {16777216, 0, 0, 0, 0}, 158, 158, { 1256, 20420, 10004, 720, ';' }},
+	{0x3C0A, 0x000A, 0x3C0A, 168,25469, 25475, 25475, 25475, 25494, 25514, 18480, 18456, 25518, {0, 0, 0, 0, 0}, 159, 159, { 1252, 20284, 10000, 850, ',' }},
+	{0x4001, 0x0001, 0x4001, 169,25521, 25527, 25527, 25527, 25542, 25566, 18222, 18193, 25570, {16777216, 0, 0, 0, 0}, 160, 160, { 1256, 20420, 10004, 720, ';' }},
+	{0x400A, 0x000A, 0x400A, 25,25573, 25579, 25579, 25579, 25597, 25616, 18480, 18456, 25620, {0, 0, 0, 0, 0}, 161, 161, { 1252, 20284, 10000, 850, ',' }},
+	{0x440A, 0x000A, 0x440A, 190,25623, 25629, 25629, 25629, 25651, 25674, 18480, 18456, 25678, {0, 0, 0, 0, 0}, 162, 162, { 1252, 20284, 10000, 850, ',' }},
+	{0x480A, 0x000A, 0x480A, 87,25681, 25687, 25687, 25687, 25706, 25726, 18480, 18456, 25730, {0, 0, 0, 0, 0}, 163, 163, { 1252, 20284, 10000, 850, ',' }},
+	{0x4C0A, 0x000A, 0x4C0A, 148,25733, 25739, 25739, 25739, 25759, 25780, 18480, 18456, 25784, {0, 0, 0, 0, 0}, 164, 164, { 1252, 20284, 10000, 850, ',' }},
+	{0x500A, 0x000A, 0x500A, 165,25787, 25793, 25793, 25793, 25815, 25838, 18480, 18456, 25842, {0, 0, 0, 0, 0}, 165, 165, { 1252, 20284, 10000, 850, ',' }},
+	{0x7C04, 0x007F, 0x0000, -1,25845, 20060, 18300, 18300, 18308, 20093, 18319, 18323, 0, {0, 0, 0, 0, 0}, 166, 166, { 950, 500, 10002, 950, ',' }}
 };
 
 
 static const CultureInfoNameEntry culture_name_entries [] = {
-	{19458, 42},
-	{25849, 95},
-	{18190, 0},
-	{25855, 156},
-	{25861, 158},
-	{25867, 130},
-	{25873, 118},
-	{25879, 107},
-	{25885, 147},
-	{25891, 153},
-	{25897, 150},
-	{25903, 124},
-	{25909, 135},
-	{25915, 141},
-	{25921, 160},
-	{25927, 54},
-	{25933, 145},
-	{25939, 138},
-	{25945, 143},
-	{19128, 32},
-	{25951, 85},
-	{18223, 1},
-	{25957, 55},
-	{18263, 2},
-	{25963, 56},
-	{18323, 4},
-	{25969, 58},
-	{18350, 5},
-	{25975, 59},
-	{18374, 6},
-	{25981, 120},
-	{25987, 109},
-	{25993, 60},
-	{25999, 126},
-	{18400, 7},
-	{26005, 61},
-	{18434, 8},
-	{26011, 121},
-	{26017, 127},
-	{26023, 110},
-	{26029, 136},
-	{26035, 132},
-	{26041, 154},
-	{26047, 148},
-	{26053, 62},
-	{26059, 139},
-	{26065, 151},
-	{18453, 9},
-	{26071, 149},
-	{26077, 161},
-	{26083, 155},
-	{26089, 144},
-	{26095, 133},
-	{26101, 140},
-	{26107, 152},
-	{26113, 122},
-	{26119, 128},
-	{26125, 163},
-	{26131, 111},
-	{26137, 164},
-	{26143, 137},
-	{26149, 146},
-	{26155, 165},
-	{26161, 159},
-	{26167, 162},
-	{26173, 157},
-	{26179, 142},
-	{19204, 34},
-	{26185, 87},
-	{19389, 40},
-	{26191, 93},
-	{19291, 37},
-	{26197, 90},
-	{18481, 10},
-	{26203, 63},
-	{19532, 44},
-	{26209, 97},
-	{5977, 11},
-	{26215, 112},
-	{26221, 123},
-	{26227, 129},
-	{26233, 64},
-	{26239, 134},
-	{19801, 52},
-	{26245, 105},
-	{19623, 47},
-	{26251, 100},
-	{18531, 12},
-	{26257, 65},
-	{19561, 45},
-	{26263, 98},
-	{18881, 24},
-	{26269, 77},
-	{18560, 13},
-	{26275, 66},
-	{19354, 39},
-	{26281, 92},
-	{19047, 30},
-	{26287, 83},
-	{18588, 14},
-	{26293, 67},
-	{18619, 15},
-	{26299, 113},
-	{26305, 68},
-	{18647, 16},
-	{26311, 69},
-	{19490, 43},
-	{26317, 96},
-	{19735, 50},
-	{26323, 103},
-	{18677, 17},
-	{26329, 70},
-	{19828, 53},
-	{26335, 106},
-	{19259, 36},
-	{26342, 89},
-	{19230, 35},
-	{26348, 88},
-	{19415, 41},
-	{26354, 94},
-	{19770, 51},
-	{26360, 104},
-	{26366, 72},
-	{18705, 18},
-	{26372, 114},
-	{26378, 71},
-	{26384, 115},
-	{18733, 19},
-	{18760, 20},
-	{26390, 73},
-	{18785, 21},
-	{26396, 74},
-	{26402, 116},
-	{18818, 22},
-	{26408, 75},
-	{18847, 23},
-	{26414, 76},
-	{18910, 25},
-	{26420, 78},
-	{19169, 33},
-	{26426, 86},
-	{18939, 26},
-	{26432, 79},
-	{18966, 27},
-	{26438, 117},
-	{26444, 80},
-	{19594, 46},
-	{26450, 99},
-	{19665, 48},
-	{26456, 101},
-	{19698, 49},
-	{26462, 102},
-	{18993, 28},
-	{26468, 81},
-	{19019, 29},
-	{26474, 82},
-	{19086, 31},
-	{26480, 84},
-	{19321, 38},
-	{26486, 91},
-	{26492, 3},
-	{26499, 166},
-	{26506, 108},
-	{26512, 119},
-	{26518, 131},
-	{26524, 125},
-	{26530, 57}
+	{19461, 42},
+	{25852, 95},
+	{18193, 0},
+	{25858, 156},
+	{25864, 158},
+	{25870, 130},
+	{25876, 118},
+	{25882, 107},
+	{25888, 147},
+	{25894, 153},
+	{25900, 150},
+	{25906, 124},
+	{25912, 135},
+	{25918, 141},
+	{25924, 160},
+	{25930, 54},
+	{25936, 145},
+	{25942, 138},
+	{25948, 143},
+	{19131, 32},
+	{25954, 85},
+	{18226, 1},
+	{25960, 55},
+	{18266, 2},
+	{25966, 56},
+	{18326, 4},
+	{25972, 58},
+	{18353, 5},
+	{25978, 59},
+	{18377, 6},
+	{25984, 120},
+	{25990, 109},
+	{25996, 60},
+	{26002, 126},
+	{18403, 7},
+	{26008, 61},
+	{18437, 8},
+	{26014, 121},
+	{26020, 127},
+	{26026, 110},
+	{26032, 136},
+	{26038, 132},
+	{26044, 154},
+	{26050, 148},
+	{26056, 62},
+	{26062, 139},
+	{26068, 151},
+	{18456, 9},
+	{26074, 149},
+	{26080, 161},
+	{26086, 155},
+	{26092, 144},
+	{26098, 133},
+	{26104, 140},
+	{26110, 152},
+	{26116, 122},
+	{26122, 128},
+	{26128, 163},
+	{26134, 111},
+	{26140, 164},
+	{26146, 137},
+	{26152, 146},
+	{26158, 165},
+	{26164, 159},
+	{26170, 162},
+	{26176, 157},
+	{26182, 142},
+	{19207, 34},
+	{26188, 87},
+	{19392, 40},
+	{26194, 93},
+	{19294, 37},
+	{26200, 90},
+	{18484, 10},
+	{26206, 63},
+	{19535, 44},
+	{26212, 97},
+	{5984, 11},
+	{26218, 112},
+	{26224, 123},
+	{26230, 129},
+	{26236, 64},
+	{26242, 134},
+	{19804, 52},
+	{26248, 105},
+	{19626, 47},
+	{26254, 100},
+	{18534, 12},
+	{26260, 65},
+	{19564, 45},
+	{26266, 98},
+	{18884, 24},
+	{26272, 77},
+	{18563, 13},
+	{26278, 66},
+	{19357, 39},
+	{26284, 92},
+	{19050, 30},
+	{26290, 83},
+	{18591, 14},
+	{26296, 67},
+	{18622, 15},
+	{26302, 113},
+	{26308, 68},
+	{18650, 16},
+	{26314, 69},
+	{19493, 43},
+	{26320, 96},
+	{19738, 50},
+	{26326, 103},
+	{18680, 17},
+	{26332, 70},
+	{19831, 53},
+	{26338, 106},
+	{19262, 36},
+	{26345, 89},
+	{19233, 35},
+	{26351, 88},
+	{19418, 41},
+	{26357, 94},
+	{19773, 51},
+	{26363, 104},
+	{26369, 72},
+	{18708, 18},
+	{26375, 114},
+	{26381, 71},
+	{26387, 115},
+	{18736, 19},
+	{18763, 20},
+	{26393, 73},
+	{18788, 21},
+	{26399, 74},
+	{26405, 116},
+	{18821, 22},
+	{26411, 75},
+	{18850, 23},
+	{26417, 76},
+	{18913, 25},
+	{26423, 78},
+	{19172, 33},
+	{26429, 86},
+	{18942, 26},
+	{26435, 79},
+	{18969, 27},
+	{26441, 117},
+	{26447, 80},
+	{19597, 46},
+	{26453, 99},
+	{19668, 48},
+	{26459, 101},
+	{19701, 49},
+	{26465, 102},
+	{18996, 28},
+	{26471, 81},
+	{19022, 29},
+	{26477, 82},
+	{19089, 31},
+	{26483, 84},
+	{19324, 38},
+	{26489, 91},
+	{26495, 3},
+	{26502, 166},
+	{26509, 108},
+	{26515, 119},
+	{26521, 131},
+	{26527, 125},
+	{26533, 57}
 };
 
 
 static const RegionInfoEntry region_entries [] = {
-	{ 0, 0,25351,343,343,26536,343,26557,26561},
-	{ 0, 1,26589,343,343,26592,343,26604,26608},
-	{ 0, 2,26616,343,343,26619,343,26639,26643},
-	{ 0, 3,26665,343,343,26668,343,26639,26643},
-	{ 0, 4,21204,343,343,26677,343,26685,26689},
-	{ 0, 5,465,343,343,26702,343,26710,26714},
-	{ 0, 6,26728,343,343,26731,343,26752,26756},
-	{ 0, 7,26785,343,343,26788,343,26795,26799},
-	{ 0, 8,24964,343,343,26814,343,24759,26824},
-	{ 0, 9,26839,343,343,26842,343,26857,26861},
-	{ 0, 10,23485,343,343,26871,343,26879,26883},
-	{ 0, 11,23518,343,343,26888,343,26898,26902},
-	{ 0, 12,26920,343,343,26923,343,26929,26933},
-	{ 0, 13,26948,343,343,26951,343,26962,26966},
-	{ 0, 14,26986,343,343,26989,343,27012,27016},
-	{ 0, 15,27052,343,343,27055,343,27064,27068},
-	{ 0, 16,27084,343,343,27087,343,27098,27102},
-	{ 0, 17,23029,343,343,27118,343,26879,26883},
-	{ 0, 18,27126,343,343,27129,343,27142,27146},
-	{ 0, 19,20005,343,343,27162,343,27171,27175},
-	{ 0, 20,25463,343,343,27193,343,27201,27205},
-	{ 0, 21,27220,343,343,27223,343,27231,27235},
-	{ 0, 22,27249,343,343,27252,343,27142,27146},
-	{ 0, 23,27258,343,343,27261,343,27269,27273},
-	{ 0, 24,27289,343,343,27292,343,27299,27303},
-	{ 0, 25,25617,343,343,27317,343,27325,27329},
-	{ 0, 26,20943,343,343,27339,343,27346,27350},
-	{ 0, 27,27365,343,343,27368,343,27376,27380},
-	{ 0, 28,27396,343,343,27399,343,27413,27417},
-	{ 0, 29,27433,343,343,27436,343,27445,27449},
-	{ 0, 30,21555,343,343,27464,343,27472,27476},
-	{ 0, 31,27494,343,343,27497,343,27504,27508},
-	{ 0, 32,23611,343,343,27522,343,27529,27533},
-	{ 0, 33,27549,343,343,27552,343,26898,26902},
-	{ 0, 34,27566,343,343,27569,343,27602,27606},
-	{ 0, 35,27632,343,343,27635,343,27660,27664},
-	{ 0, 36,27679,343,343,27682,343,27660,27664},
-	{ 0, 37,11001,343,343,27688,343,27700,27704},
-	{ 0, 38,27716,343,343,27719,343,27142,27146},
-	{ 0, 39,27734,343,343,27737,343,27750,27754},
-	{ 0, 40,25244,343,343,27773,343,27779,27783},
-	{ 0, 41,27796,343,343,27799,343,27660,27664},
-	{ 0, 42,11080,343,343,27808,343,27814,27818},
-	{ 0, 43,24707,343,343,27840,343,27849,27853},
-	{ 0, 44,24135,343,343,27868,343,18032,27879},
-	{ 0, 45,27897,343,343,27900,343,27905,27909},
-	{ 0, 46,27920,343,343,27923,343,27934,27938},
-	{ 0, 47,27956,343,343,27959,343,26898,26902},
-	{ 0, 48,27976,343,343,27979,343,27986,27990},
-	{ 0, 49,20156,343,343,28003,343,28018,28022},
-	{ 0, 50,4300,343,343,28044,343,26879,26883},
-	{ 0, 51,28052,343,343,28055,343,28064,28068},
-	{ 0, 52,20198,343,343,28083,343,28091,28095},
-	{ 0, 53,28108,343,343,28111,343,26639,26643},
-	{ 0, 54,24492,343,343,28120,343,28139,28143},
-	{ 0, 55,23965,343,343,28158,343,28166,28170},
-	{ 0, 56,25104,343,343,28185,343,28193,28197},
-	{ 0, 57,21653,343,343,28211,343,28219,28223},
-	{ 0, 58,23349,343,343,28238,343,28244,28248},
-	{ 0, 59,28263,343,343,28266,343,28281,28285},
-	{ 0, 60,28301,343,343,28304,343,28312,28316},
-	{ 0, 61,20048,343,343,28331,343,26879,26883},
-	{ 0, 62,28337,343,343,28340,343,28349,28353},
-	{ 0, 63,20373,343,343,28368,343,26879,26883},
-	{ 0, 64,28376,343,343,28379,343,28384,28388},
-	{ 0, 65,28400,343,343,28403,343,28420,28424},
-	{ 0, 66,28447,343,343,28450,343,26857,26861},
-	{ 0, 67,22259,343,343,28461,343,28091,28095},
-	{ 0, 68,20417,343,343,28475,343,26879,26883},
-	{ 0, 69,28482,343,343,28485,343,27660,27664},
-	{ 0, 70,22929,343,343,28491,343,28506,28510},
-	{ 0, 71,28533,343,343,28536,343,26639,26643},
-	{ 0, 72,22205,343,343,28544,343,28552,28556},
-	{ 0, 73,28570,343,343,28573,343,26879,26883},
-	{ 0, 74,28587,343,343,28590,343,28596,28600},
-	{ 0, 75,28611,343,343,28614,343,28624,28628},
-	{ 0, 76,28644,343,343,28647,343,28091,28095},
-	{ 0, 77,28657,343,343,28660,343,28667,28671},
-	{ 0, 78,28685,343,343,28688,343,28695,28699},
-	{ 0, 79,28712,343,343,28715,343,26879,26883},
-	{ 0, 80,28726,343,343,28729,343,27660,27664},
-	{ 0, 81,20299,343,343,28747,343,26879,26883},
-	{ 0, 82,23853,343,343,28754,343,28764,28768},
-	{ 0, 83,28786,343,343,28789,343,26857,26861},
-	{ 0, 84,28794,343,343,28797,343,28804,28808},
-	{ 0, 85,23433,343,343,28822,343,28846,28850},
-	{ 0, 86,28867,343,343,28870,343,26898,26902},
-	{ 0, 87,25727,343,343,28904,343,28913,28917},
-	{ 0, 88,21095,343,343,28933,343,28941,28945},
-	{ 0, 89,20518,343,343,28959,343,28967,28971},
-	{ 0, 90,21420,343,343,28988,343,28998,29002},
-	{ 0, 91,24279,343,343,29020,343,26879,26883},
-	{ 0, 92,20466,343,343,29028,343,29035,29039},
-	{ 0, 93,22313,343,343,29058,343,29064,29068},
-	{ 0, 94,29081,343,343,29084,343,26857,26861},
-	{ 0, 95,22804,343,343,29115,343,29120,29124},
-	{ 0, 96,21799,343,343,29136,343,29141,29145},
-	{ 0, 97,20567,343,343,29158,343,29166,29170},
-	{ 0, 98,20610,343,343,29186,343,26879,26883},
-	{ 0, 99,29192,343,343,29195,343,29203,29207},
-	{ 0, 100,24867,343,343,29223,343,29230,29234},
-	{ 0, 101,20655,343,343,29250,343,29256,29260},
-	{ 0, 102,22356,343,343,29273,343,29279,29283},
-	{ 0, 103,29299,343,343,29302,343,29313,29317},
-	{ 0, 104,29331,343,343,29334,343,29343,29347},
-	{ 0, 105,29362,343,343,29365,343,26898,26902},
-	{ 0, 106,29374,343,343,29377,343,29385,29389},
-	{ 0, 107,29402,343,343,29405,343,26639,26643},
-	{ 0, 108,29427,343,343,29430,343,29442,29446},
-	{ 0, 109,20710,343,343,29463,343,29475,29479},
-	{ 0, 110,25163,343,343,29496,343,29503,29507},
-	{ 0, 111,29521,343,343,29524,343,29539,29543},
-	{ 0, 112,29565,343,343,29568,343,29579,29583},
-	{ 0, 113,29600,343,343,29603,343,29608,29612},
-	{ 0, 114,25022,343,343,29624,343,29632,29636},
-	{ 0, 115,29651,343,343,29654,343,26639,26643},
-	{ 0, 116,29666,343,343,29669,343,27700,27704},
-	{ 0, 117,29683,343,343,29686,343,29696,29700},
-	{ 0, 118,29716,343,343,29719,343,29727,29731},
-	{ 0, 119,21751,343,343,29747,343,29757,29761},
-	{ 0, 120,23772,343,343,29777,343,26879,26883},
-	{ 0, 121,21699,343,343,29788,343,29795,29799},
-	{ 0, 122,23667,343,343,29812,343,29818,29822},
-	{ 0, 123,24248,343,343,29835,343,28281,28285},
-	{ 0, 124,29843,343,343,29846,343,26879,26883},
-	{ 0, 125,7437,343,343,29853,343,29861,29865},
-	{ 0, 126,29878,343,343,29881,343,29892,29896},
-	{ 0, 127,29913,343,343,29916,343,26857,26861},
-	{ 0, 128,22063,343,343,29933,343,29943,29947},
-	{ 0, 129,29964,343,343,29967,343,27142,27146},
-	{ 0, 130,29972,343,343,29975,343,29983,29987},
-	{ 0, 131,30000,343,343,30003,343,30012,30016},
-	{ 0, 132,24044,343,343,30033,343,30052,30056},
-	{ 0, 133,30069,343,343,30072,343,26857,26861},
-	{ 0, 134,30097,343,343,30100,343,26879,26883},
-	{ 0, 135,30111,343,343,30114,343,30125,30129},
-	{ 0, 136,30148,343,343,30151,343,26639,26643},
-	{ 0, 137,30162,343,343,30165,343,30171,30175},
-	{ 0, 138,30188,343,343,30191,343,30201,30205},
-	{ 0, 139,30221,343,343,30224,343,30233,30237},
-	{ 0, 140,30261,343,343,30264,343,30271,30275},
-	{ 0, 141,22978,343,343,30289,343,30296,30300},
-	{ 0, 142,30313,343,343,30316,343,30325,30329},
-	{ 0, 143,30347,343,343,30350,343,30361,30365},
-	{ 0, 144,30384,343,343,30387,343,30401,30405},
-	{ 0, 145,30415,343,343,30418,343,27142,27146},
-	{ 0, 146,30424,343,343,30427,343,26898,26902},
-	{ 0, 147,30442,343,343,30445,343,30453,30457},
-	{ 0, 148,25781,343,343,30472,343,30482,30486},
-	{ 0, 149,20762,343,343,30509,343,26879,26883},
-	{ 0, 150,20853,343,343,30521,343,27413,27417},
-	{ 0, 151,30528,343,343,30531,343,30537,30541},
-	{ 0, 152,30556,343,343,30559,343,26898,26902},
-	{ 0, 153,30565,343,343,30568,343,27750,27754},
-	{ 0, 154,24079,343,343,30573,343,27750,27754},
-	{ 0, 155,24545,343,343,30585,343,30590,30594},
-	{ 0, 156,24328,343,343,30604,343,30611,30615},
-	{ 0, 157,24808,343,343,30633,343,30638,30642},
-	{ 0, 158,30661,343,343,30664,343,30401,30405},
-	{ 0, 159,30681,343,343,30684,343,30701,30705},
-	{ 0, 160,25198,343,343,30727,343,18136,30739},
-	{ 0, 161,30755,343,343,30758,343,30767,30771},
-	{ 0, 162,20894,343,343,30786,343,30793,30797},
-	{ 0, 163,468,343,343,30810,343,26879,26883},
-	{ 0, 164,30836,343,343,30839,343,27750,27754},
-	{ 0, 165,25839,343,343,30848,343,26857,26861},
-	{ 0, 166,23251,343,343,30860,343,26879,26883},
-	{ 0, 167,30869,343,343,30872,343,26857,26861},
-	{ 0, 168,25515,343,343,30878,343,30887,30891},
-	{ 0, 169,25567,343,343,30908,343,30914,30918},
-	{ 0, 170,30930,343,343,30933,343,26879,26883},
-	{ 0, 171,20991,343,343,30942,343,30950,30954},
-	{ 0, 172,21047,343,343,30967,343,30974,30978},
-	{ 0, 173,31004,343,343,31007,343,31014,31018},
-	{ 0, 174,10998,343,343,31032,343,31045,31049},
-	{ 0, 175,31061,343,343,31064,343,31080,31084},
-	{ 0, 176,31107,343,343,31110,343,31121,31125},
-	{ 0, 177,31142,343,343,31145,343,31151,31155},
-	{ 0, 178,21248,343,343,31170,343,31177,31181},
-	{ 0, 179,23719,343,343,31195,343,31205,31209},
-	{ 0, 180,31226,343,343,31229,343,31242,31246},
-	{ 0, 181,21611,343,343,31265,343,17910,31274},
-	{ 0, 182,31289,343,343,31292,343,27413,27417},
-	{ 0, 183,21156,343,343,31315,343,31324,31328},
-	{ 0, 184,31342,343,343,31345,343,31358,31362},
-	{ 0, 185,31381,343,343,31384,343,26879,26883},
-	{ 0, 186,31395,343,343,31398,343,27142,27146},
-	{ 0, 187,31406,343,343,31409,343,31417,31421},
-	{ 0, 188,31437,343,343,31440,343,31449,31453},
-	{ 0, 189,31470,343,343,31473,343,31495,31499},
-	{ 0, 190,25675,343,343,31527,343,18180,31539},
-	{ 0, 191,24763,343,343,31557,343,31563,31567},
-	{ 0, 192,31580,343,343,31583,343,31593,31597},
-	{ 0, 193,31617,343,343,31620,343,26857,26861},
-	{ 0, 194,31645,343,343,31648,343,27660,27664},
-	{ 0, 195,31653,343,343,31656,343,26879,26883},
-	{ 0, 196,31684,343,343,31687,343,27142,27146},
-	{ 0, 197,21313,343,343,31692,343,31701,31705},
-	{ 0, 198,31715,343,343,31718,343,31729,31733},
-	{ 0, 199,31751,343,343,31754,343,27750,27754},
-	{ 0, 200,17896,343,343,31762,343,26857,26861},
-	{ 0, 201,31774,343,343,31777,343,31790,31794},
-	{ 0, 202,24384,343,343,31813,343,31821,31825},
-	{ 0, 203,31840,343,343,31843,343,31849,31853},
-	{ 0, 204,21359,343,343,31868,343,31875,31879},
-	{ 0, 205,24910,343,343,31892,343,31912,31916},
-	{ 0, 206,31943,343,343,31946,343,26898,26902},
-	{ 0, 207,20094,343,343,31953,343,31960,31964},
-	{ 0, 208,31982,343,343,31985,343,31994,31998},
-	{ 0, 209,21487,343,343,32017,343,32025,32029},
-	{ 0, 210,32047,343,343,32050,343,32057,32061},
-	{ 0, 211,32078,343,343,32081,343,26857,26861},
-	{ 0, 212,20332,343,343,32118,343,26857,26861},
-	{ 0, 213,25401,343,343,32132,343,32140,32144},
-	{ 0, 214,32166,343,343,32169,343,32180,32184},
-	{ 0, 215,32199,343,343,32202,343,26879,26883},
-	{ 0, 216,32210,343,343,32213,343,26639,26643},
-	{ 0, 217,24599,343,343,32246,343,32256,32260},
-	{ 0, 218,32279,343,343,32282,343,26857,26861},
-	{ 0, 219,1619,343,343,32305,343,26857,26861},
-	{ 0, 220,21857,343,343,32325,343,32333,32337},
-	{ 0, 221,32353,343,343,32356,343,32364,32368},
-	{ 0, 222,32381,343,343,32384,343,30401,30405},
-	{ 0, 223,32402,343,343,32405,343,32411,32415},
-	{ 0, 224,24655,343,343,32434,343,32440,32444},
-	{ 0, 225,32456,343,343,32459,343,26879,26883},
-	{ 0, 226,32467,343,343,32470,343,32481,32485},
-	{ 0, 227,22122,343,343,32509,343,32522,32526},
-	{ 0, 228,32545,343,343,32548,343,32555,32559},
-	{ 0, 229,25054,343,343,32574,343,32583,32587}
+	{ 0, 0,25354,343,343,26539,343,26560,26564},
+	{ 0, 1,26592,343,343,26595,343,26607,26611},
+	{ 0, 2,26619,343,343,26622,343,26642,26646},
+	{ 0, 3,26668,343,343,26671,343,26642,26646},
+	{ 0, 4,21207,343,343,26680,343,26688,26692},
+	{ 0, 5,465,343,343,26705,343,26713,26717},
+	{ 0, 6,26731,343,343,26734,343,26755,26759},
+	{ 0, 7,26788,343,343,26791,343,26798,26802},
+	{ 0, 8,24967,343,343,26817,343,24762,26827},
+	{ 0, 9,26842,343,343,26845,343,26860,26864},
+	{ 0, 10,23488,343,343,26874,343,26882,26886},
+	{ 0, 11,23521,343,343,26891,343,26901,26905},
+	{ 0, 12,26923,343,343,26926,343,26932,26936},
+	{ 0, 13,26951,343,343,26954,343,26965,26969},
+	{ 0, 14,26989,343,343,26992,343,27015,27019},
+	{ 0, 15,27055,343,343,27058,343,27067,27071},
+	{ 0, 16,27087,343,343,27090,343,27101,27105},
+	{ 0, 17,23032,343,343,27121,343,26882,26886},
+	{ 0, 18,27129,343,343,27132,343,27145,27149},
+	{ 0, 19,20008,343,343,27165,343,27174,27178},
+	{ 0, 20,25466,343,343,27196,343,27204,27208},
+	{ 0, 21,27223,343,343,27226,343,27234,27238},
+	{ 0, 22,27252,343,343,27255,343,27145,27149},
+	{ 0, 23,27261,343,343,27264,343,27272,27276},
+	{ 0, 24,27292,343,343,27295,343,27302,27306},
+	{ 0, 25,25620,343,343,27320,343,27328,27332},
+	{ 0, 26,20946,343,343,27342,343,27349,27353},
+	{ 0, 27,27368,343,343,27371,343,27379,27383},
+	{ 0, 28,27399,343,343,27402,343,27416,27420},
+	{ 0, 29,27436,343,343,27439,343,27448,27452},
+	{ 0, 30,21558,343,343,27467,343,27475,27479},
+	{ 0, 31,27497,343,343,27500,343,27507,27511},
+	{ 0, 32,23614,343,343,27525,343,27532,27536},
+	{ 0, 33,27552,343,343,27555,343,26901,26905},
+	{ 0, 34,27569,343,343,27572,343,27605,27609},
+	{ 0, 35,27635,343,343,27638,343,27663,27667},
+	{ 0, 36,27682,343,343,27685,343,27663,27667},
+	{ 0, 37,11008,343,343,27691,343,27703,27707},
+	{ 0, 38,27719,343,343,27722,343,27145,27149},
+	{ 0, 39,27737,343,343,27740,343,27753,27757},
+	{ 0, 40,25247,343,343,27776,343,27782,27786},
+	{ 0, 41,27799,343,343,27802,343,27663,27667},
+	{ 0, 42,11087,343,343,27811,343,27817,27821},
+	{ 0, 43,24710,343,343,27843,343,27852,27856},
+	{ 0, 44,24138,343,343,27871,343,18035,27882},
+	{ 0, 45,27900,343,343,27903,343,27908,27912},
+	{ 0, 46,27923,343,343,27926,343,27937,27941},
+	{ 0, 47,27959,343,343,27962,343,26901,26905},
+	{ 0, 48,27979,343,343,27982,343,27989,27993},
+	{ 0, 49,20159,343,343,28006,343,28021,28025},
+	{ 0, 50,4304,343,343,28047,343,26882,26886},
+	{ 0, 51,28055,343,343,28058,343,28067,28071},
+	{ 0, 52,20201,343,343,28086,343,28094,28098},
+	{ 0, 53,28111,343,343,28114,343,26642,26646},
+	{ 0, 54,24495,343,343,28123,343,28142,28146},
+	{ 0, 55,23968,343,343,28161,343,28169,28173},
+	{ 0, 56,25107,343,343,28188,343,28196,28200},
+	{ 0, 57,21656,343,343,28214,343,28222,28226},
+	{ 0, 58,23352,343,343,28241,343,28247,28251},
+	{ 0, 59,28266,343,343,28269,343,28284,28288},
+	{ 0, 60,28304,343,343,28307,343,28315,28319},
+	{ 0, 61,20051,343,343,28334,343,26882,26886},
+	{ 0, 62,28340,343,343,28343,343,28352,28356},
+	{ 0, 63,20376,343,343,28371,343,26882,26886},
+	{ 0, 64,28379,343,343,28382,343,28387,28391},
+	{ 0, 65,28403,343,343,28406,343,28423,28427},
+	{ 0, 66,28450,343,343,28453,343,26860,26864},
+	{ 0, 67,22262,343,343,28464,343,28094,28098},
+	{ 0, 68,20420,343,343,28478,343,26882,26886},
+	{ 0, 69,28485,343,343,28488,343,27663,27667},
+	{ 0, 70,22932,343,343,28494,343,28509,28513},
+	{ 0, 71,28536,343,343,28539,343,26642,26646},
+	{ 0, 72,22208,343,343,28547,343,28555,28559},
+	{ 0, 73,28573,343,343,28576,343,26882,26886},
+	{ 0, 74,28590,343,343,28593,343,28599,28603},
+	{ 0, 75,28614,343,343,28617,343,28627,28631},
+	{ 0, 76,28647,343,343,28650,343,28094,28098},
+	{ 0, 77,28660,343,343,28663,343,28670,28674},
+	{ 0, 78,28688,343,343,28691,343,28698,28702},
+	{ 0, 79,28715,343,343,28718,343,26882,26886},
+	{ 0, 80,28729,343,343,28732,343,27663,27667},
+	{ 0, 81,20302,343,343,28750,343,26882,26886},
+	{ 0, 82,23856,343,343,28757,343,28767,28771},
+	{ 0, 83,28789,343,343,28792,343,26860,26864},
+	{ 0, 84,28797,343,343,28800,343,28807,28811},
+	{ 0, 85,23436,343,343,28825,343,28849,28853},
+	{ 0, 86,28870,343,343,28873,343,26901,26905},
+	{ 0, 87,25730,343,343,28907,343,28916,28920},
+	{ 0, 88,21098,343,343,28936,343,28944,28948},
+	{ 0, 89,20521,343,343,28962,343,28970,28974},
+	{ 0, 90,21423,343,343,28991,343,29001,29005},
+	{ 0, 91,24282,343,343,29023,343,26882,26886},
+	{ 0, 92,20469,343,343,29031,343,29038,29042},
+	{ 0, 93,22316,343,343,29061,343,29067,29071},
+	{ 0, 94,29084,343,343,29087,343,26860,26864},
+	{ 0, 95,22807,343,343,29118,343,29123,29127},
+	{ 0, 96,21802,343,343,29139,343,29144,29148},
+	{ 0, 97,20570,343,343,29161,343,29169,29173},
+	{ 0, 98,20613,343,343,29189,343,26882,26886},
+	{ 0, 99,29195,343,343,29198,343,29206,29210},
+	{ 0, 100,24870,343,343,29226,343,29233,29237},
+	{ 0, 101,20658,343,343,29253,343,29259,29263},
+	{ 0, 102,22359,343,343,29276,343,29282,29286},
+	{ 0, 103,29302,343,343,29305,343,29316,29320},
+	{ 0, 104,29334,343,343,29337,343,29346,29350},
+	{ 0, 105,29365,343,343,29368,343,26901,26905},
+	{ 0, 106,29377,343,343,29380,343,29388,29392},
+	{ 0, 107,29405,343,343,29408,343,26642,26646},
+	{ 0, 108,29430,343,343,29433,343,29445,29449},
+	{ 0, 109,20713,343,343,29466,343,29478,29482},
+	{ 0, 110,25166,343,343,29499,343,29506,29510},
+	{ 0, 111,29524,343,343,29527,343,29542,29546},
+	{ 0, 112,29568,343,343,29571,343,29582,29586},
+	{ 0, 113,29603,343,343,29606,343,29611,29615},
+	{ 0, 114,25025,343,343,29627,343,29635,29639},
+	{ 0, 115,29654,343,343,29657,343,26642,26646},
+	{ 0, 116,29669,343,343,29672,343,27703,27707},
+	{ 0, 117,29686,343,343,29689,343,29699,29703},
+	{ 0, 118,29719,343,343,29722,343,29730,29734},
+	{ 0, 119,21754,343,343,29750,343,29760,29764},
+	{ 0, 120,23775,343,343,29780,343,26882,26886},
+	{ 0, 121,21702,343,343,29791,343,29798,29802},
+	{ 0, 122,23670,343,343,29815,343,29821,29825},
+	{ 0, 123,24251,343,343,29838,343,28284,28288},
+	{ 0, 124,29846,343,343,29849,343,26882,26886},
+	{ 0, 125,7444,343,343,29856,343,29864,29868},
+	{ 0, 126,29881,343,343,29884,343,29895,29899},
+	{ 0, 127,29916,343,343,29919,343,26860,26864},
+	{ 0, 128,22066,343,343,29936,343,29946,29950},
+	{ 0, 129,29967,343,343,29970,343,27145,27149},
+	{ 0, 130,29975,343,343,29978,343,29986,29990},
+	{ 0, 131,30003,343,343,30006,343,30015,30019},
+	{ 0, 132,24047,343,343,30036,343,30055,30059},
+	{ 0, 133,30072,343,343,30075,343,26860,26864},
+	{ 0, 134,30100,343,343,30103,343,26882,26886},
+	{ 0, 135,30114,343,343,30117,343,30128,30132},
+	{ 0, 136,30151,343,343,30154,343,26642,26646},
+	{ 0, 137,30165,343,343,30168,343,30174,30178},
+	{ 0, 138,30191,343,343,30194,343,30204,30208},
+	{ 0, 139,30224,343,343,30227,343,30236,30240},
+	{ 0, 140,30264,343,343,30267,343,30274,30278},
+	{ 0, 141,22981,343,343,30292,343,30299,30303},
+	{ 0, 142,30316,343,343,30319,343,30328,30332},
+	{ 0, 143,30350,343,343,30353,343,30364,30368},
+	{ 0, 144,30387,343,343,30390,343,30404,30408},
+	{ 0, 145,30418,343,343,30421,343,27145,27149},
+	{ 0, 146,30427,343,343,30430,343,26901,26905},
+	{ 0, 147,30445,343,343,30448,343,30456,30460},
+	{ 0, 148,25784,343,343,30475,343,30485,30489},
+	{ 0, 149,20765,343,343,30512,343,26882,26886},
+	{ 0, 150,20856,343,343,30524,343,27416,27420},
+	{ 0, 151,30531,343,343,30534,343,30540,30544},
+	{ 0, 152,30559,343,343,30562,343,26901,26905},
+	{ 0, 153,30568,343,343,30571,343,27753,27757},
+	{ 0, 154,24082,343,343,30576,343,27753,27757},
+	{ 0, 155,24548,343,343,30588,343,30593,30597},
+	{ 0, 156,24331,343,343,30607,343,30614,30618},
+	{ 0, 157,24811,343,343,30636,343,30641,30645},
+	{ 0, 158,30664,343,343,30667,343,30404,30408},
+	{ 0, 159,30684,343,343,30687,343,30704,30708},
+	{ 0, 160,25201,343,343,30730,343,18139,30742},
+	{ 0, 161,30758,343,343,30761,343,30770,30774},
+	{ 0, 162,20897,343,343,30789,343,30796,30800},
+	{ 0, 163,468,343,343,30813,343,26882,26886},
+	{ 0, 164,30839,343,343,30842,343,27753,27757},
+	{ 0, 165,25842,343,343,30851,343,26860,26864},
+	{ 0, 166,23254,343,343,30863,343,26882,26886},
+	{ 0, 167,30872,343,343,30875,343,26860,26864},
+	{ 0, 168,25518,343,343,30881,343,30890,30894},
+	{ 0, 169,25570,343,343,30911,343,30917,30921},
+	{ 0, 170,30933,343,343,30936,343,26882,26886},
+	{ 0, 171,20994,343,343,30945,343,30953,30957},
+	{ 0, 172,21050,343,343,30970,343,30977,30981},
+	{ 0, 173,31007,343,343,31010,343,31017,31021},
+	{ 0, 174,11005,343,343,31035,343,31048,31052},
+	{ 0, 175,31064,343,343,31067,343,31083,31087},
+	{ 0, 176,31110,343,343,31113,343,31124,31128},
+	{ 0, 177,31145,343,343,31148,343,31154,31158},
+	{ 0, 178,21251,343,343,31173,343,31180,31184},
+	{ 0, 179,23722,343,343,31198,343,31208,31212},
+	{ 0, 180,31229,343,343,31232,343,31245,31249},
+	{ 0, 181,21614,343,343,31268,343,17913,31277},
+	{ 0, 182,31292,343,343,31295,343,27416,27420},
+	{ 0, 183,21159,343,343,31318,343,31327,31331},
+	{ 0, 184,31345,343,343,31348,343,31361,31365},
+	{ 0, 185,31384,343,343,31387,343,26882,26886},
+	{ 0, 186,31398,343,343,31401,343,27145,27149},
+	{ 0, 187,31409,343,343,31412,343,31420,31424},
+	{ 0, 188,31440,343,343,31443,343,31452,31456},
+	{ 0, 189,31473,343,343,31476,343,31498,31502},
+	{ 0, 190,25678,343,343,31530,343,18183,31542},
+	{ 0, 191,24766,343,343,31560,343,31566,31570},
+	{ 0, 192,31583,343,343,31586,343,31596,31600},
+	{ 0, 193,31620,343,343,31623,343,26860,26864},
+	{ 0, 194,31648,343,343,31651,343,27663,27667},
+	{ 0, 195,31656,343,343,31659,343,26882,26886},
+	{ 0, 196,31687,343,343,31690,343,27145,27149},
+	{ 0, 197,21316,343,343,31695,343,31704,31708},
+	{ 0, 198,31718,343,343,31721,343,31732,31736},
+	{ 0, 199,31754,343,343,31757,343,27753,27757},
+	{ 0, 200,17899,343,343,31765,343,26860,26864},
+	{ 0, 201,31777,343,343,31780,343,31793,31797},
+	{ 0, 202,24387,343,343,31816,343,31824,31828},
+	{ 0, 203,31843,343,343,31846,343,31852,31856},
+	{ 0, 204,21362,343,343,31871,343,31878,31882},
+	{ 0, 205,24913,343,343,31895,343,31915,31919},
+	{ 0, 206,31946,343,343,31949,343,26901,26905},
+	{ 0, 207,20097,343,343,31956,343,31963,31967},
+	{ 0, 208,31985,343,343,31988,343,31997,32001},
+	{ 0, 209,21490,343,343,32020,343,32028,32032},
+	{ 0, 210,32050,343,343,32053,343,32060,32064},
+	{ 0, 211,32081,343,343,32084,343,26860,26864},
+	{ 0, 212,20335,343,343,32121,343,26860,26864},
+	{ 0, 213,25404,343,343,32135,343,32143,32147},
+	{ 0, 214,32169,343,343,32172,343,32183,32187},
+	{ 0, 215,32202,343,343,32205,343,26882,26886},
+	{ 0, 216,32213,343,343,32216,343,26642,26646},
+	{ 0, 217,24602,343,343,32249,343,32259,32263},
+	{ 0, 218,32282,343,343,32285,343,26860,26864},
+	{ 0, 219,1621,343,343,32308,343,26860,26864},
+	{ 0, 220,21860,343,343,32328,343,32336,32340},
+	{ 0, 221,32356,343,343,32359,343,32367,32371},
+	{ 0, 222,32384,343,343,32387,343,30404,30408},
+	{ 0, 223,32405,343,343,32408,343,32414,32418},
+	{ 0, 224,24658,343,343,32437,343,32443,32447},
+	{ 0, 225,32459,343,343,32462,343,26882,26886},
+	{ 0, 226,32470,343,343,32473,343,32484,32488},
+	{ 0, 227,22125,343,343,32512,343,32525,32529},
+	{ 0, 228,32548,343,343,32551,343,32558,32562},
+	{ 0, 229,25057,343,343,32577,343,32586,32590}
 };
 
 
 static const RegionInfoNameEntry region_name_entries [] = {
-	{25351, 0},
-	{26589, 1},
-	{26616, 2},
-	{26665, 3},
-	{21204, 4},
+	{25354, 0},
+	{26592, 1},
+	{26619, 2},
+	{26668, 3},
+	{21207, 4},
 	{465, 5},
-	{26728, 6},
-	{26785, 7},
-	{24964, 8},
-	{26839, 9},
-	{23485, 10},
-	{23518, 11},
-	{26920, 12},
-	{26948, 13},
-	{26986, 14},
-	{27052, 15},
-	{27084, 16},
-	{23029, 17},
-	{27126, 18},
-	{20005, 19},
-	{25463, 20},
-	{27220, 21},
-	{27249, 22},
-	{27258, 23},
-	{27289, 24},
-	{25617, 25},
-	{20943, 26},
-	{27365, 27},
-	{27396, 28},
-	{27433, 29},
-	{21555, 30},
-	{27494, 31},
-	{23611, 32},
-	{27549, 33},
-	{27566, 34},
-	{27632, 35},
-	{27679, 36},
-	{11001, 37},
-	{27716, 38},
-	{27734, 39},
-	{25244, 40},
-	{27796, 41},
-	{11080, 42},
-	{24707, 43},
-	{24135, 44},
-	{27897, 45},
-	{27920, 46},
-	{27956, 47},
-	{27976, 48},
-	{20156, 49},
-	{4300, 50},
-	{28052, 51},
-	{20198, 52},
-	{28108, 53},
-	{24492, 54},
-	{23965, 55},
-	{25104, 56},
-	{21653, 57},
-	{23349, 58},
-	{28263, 59},
-	{28301, 60},
-	{20048, 61},
-	{28337, 62},
-	{20373, 63},
-	{28376, 64},
-	{28400, 65},
-	{28447, 66},
-	{22259, 67},
-	{20417, 68},
-	{28482, 69},
-	{22929, 70},
-	{28533, 71},
-	{22205, 72},
-	{28570, 73},
-	{28587, 74},
-	{28611, 75},
-	{28644, 76},
-	{28657, 77},
-	{28685, 78},
-	{28712, 79},
-	{28726, 80},
-	{20299, 81},
-	{23853, 82},
-	{28786, 83},
-	{28794, 84},
-	{23433, 85},
-	{28867, 86},
-	{25727, 87},
-	{21095, 88},
-	{20518, 89},
-	{21420, 90},
-	{24279, 91},
-	{20466, 92},
-	{22313, 93},
-	{29081, 94},
-	{22804, 95},
-	{21799, 96},
-	{20567, 97},
-	{20610, 98},
-	{29192, 99},
-	{24867, 100},
-	{20655, 101},
-	{22356, 102},
-	{29299, 103},
-	{29331, 104},
-	{29362, 105},
-	{29374, 106},
-	{29402, 107},
-	{29427, 108},
-	{20710, 109},
-	{25163, 110},
-	{29521, 111},
-	{29565, 112},
-	{29600, 113},
-	{25022, 114},
-	{29651, 115},
-	{29666, 116},
-	{29683, 117},
-	{29716, 118},
-	{21751, 119},
-	{23772, 120},
-	{21699, 121},
-	{23667, 122},
-	{24248, 123},
-	{29843, 124},
-	{7437, 125},
-	{29878, 126},
-	{29913, 127},
-	{22063, 128},
-	{29964, 129},
-	{29972, 130},
-	{30000, 131},
-	{24044, 132},
-	{30069, 133},
-	{30097, 134},
-	{30111, 135},
-	{30148, 136},
-	{30162, 137},
-	{30188, 138},
-	{30221, 139},
-	{30261, 140},
-	{22978, 141},
-	{30313, 142},
-	{30347, 143},
-	{30384, 144},
-	{30415, 145},
-	{30424, 146},
-	{30442, 147},
-	{25781, 148},
-	{20762, 149},
-	{20853, 150},
-	{30528, 151},
-	{30556, 152},
-	{30565, 153},
-	{24079, 154},
-	{24545, 155},
-	{24328, 156},
-	{24808, 157},
-	{30661, 158},
-	{30681, 159},
-	{25198, 160},
-	{30755, 161},
-	{20894, 162},
+	{26731, 6},
+	{26788, 7},
+	{24967, 8},
+	{26842, 9},
+	{23488, 10},
+	{23521, 11},
+	{26923, 12},
+	{26951, 13},
+	{26989, 14},
+	{27055, 15},
+	{27087, 16},
+	{23032, 17},
+	{27129, 18},
+	{20008, 19},
+	{25466, 20},
+	{27223, 21},
+	{27252, 22},
+	{27261, 23},
+	{27292, 24},
+	{25620, 25},
+	{20946, 26},
+	{27368, 27},
+	{27399, 28},
+	{27436, 29},
+	{21558, 30},
+	{27497, 31},
+	{23614, 32},
+	{27552, 33},
+	{27569, 34},
+	{27635, 35},
+	{27682, 36},
+	{11008, 37},
+	{27719, 38},
+	{27737, 39},
+	{25247, 40},
+	{27799, 41},
+	{11087, 42},
+	{24710, 43},
+	{24138, 44},
+	{27900, 45},
+	{27923, 46},
+	{27959, 47},
+	{27979, 48},
+	{20159, 49},
+	{4304, 50},
+	{28055, 51},
+	{20201, 52},
+	{28111, 53},
+	{24495, 54},
+	{23968, 55},
+	{25107, 56},
+	{21656, 57},
+	{23352, 58},
+	{28266, 59},
+	{28304, 60},
+	{20051, 61},
+	{28340, 62},
+	{20376, 63},
+	{28379, 64},
+	{28403, 65},
+	{28450, 66},
+	{22262, 67},
+	{20420, 68},
+	{28485, 69},
+	{22932, 70},
+	{28536, 71},
+	{22208, 72},
+	{28573, 73},
+	{28590, 74},
+	{28614, 75},
+	{28647, 76},
+	{28660, 77},
+	{28688, 78},
+	{28715, 79},
+	{28729, 80},
+	{20302, 81},
+	{23856, 82},
+	{28789, 83},
+	{28797, 84},
+	{23436, 85},
+	{28870, 86},
+	{25730, 87},
+	{21098, 88},
+	{20521, 89},
+	{21423, 90},
+	{24282, 91},
+	{20469, 92},
+	{22316, 93},
+	{29084, 94},
+	{22807, 95},
+	{21802, 96},
+	{20570, 97},
+	{20613, 98},
+	{29195, 99},
+	{24870, 100},
+	{20658, 101},
+	{22359, 102},
+	{29302, 103},
+	{29334, 104},
+	{29365, 105},
+	{29377, 106},
+	{29405, 107},
+	{29430, 108},
+	{20713, 109},
+	{25166, 110},
+	{29524, 111},
+	{29568, 112},
+	{29603, 113},
+	{25025, 114},
+	{29654, 115},
+	{29669, 116},
+	{29686, 117},
+	{29719, 118},
+	{21754, 119},
+	{23775, 120},
+	{21702, 121},
+	{23670, 122},
+	{24251, 123},
+	{29846, 124},
+	{7444, 125},
+	{29881, 126},
+	{29916, 127},
+	{22066, 128},
+	{29967, 129},
+	{29975, 130},
+	{30003, 131},
+	{24047, 132},
+	{30072, 133},
+	{30100, 134},
+	{30114, 135},
+	{30151, 136},
+	{30165, 137},
+	{30191, 138},
+	{30224, 139},
+	{30264, 140},
+	{22981, 141},
+	{30316, 142},
+	{30350, 143},
+	{30387, 144},
+	{30418, 145},
+	{30427, 146},
+	{30445, 147},
+	{25784, 148},
+	{20765, 149},
+	{20856, 150},
+	{30531, 151},
+	{30559, 152},
+	{30568, 153},
+	{24082, 154},
+	{24548, 155},
+	{24331, 156},
+	{24811, 157},
+	{30664, 158},
+	{30684, 159},
+	{25201, 160},
+	{30758, 161},
+	{20897, 162},
 	{468, 163},
-	{30836, 164},
-	{25839, 165},
-	{23251, 166},
-	{30869, 167},
-	{25515, 168},
-	{25567, 169},
-	{30930, 170},
-	{20991, 171},
-	{21047, 172},
-	{31004, 173},
-	{10998, 174},
-	{31061, 175},
-	{31107, 176},
-	{31142, 177},
-	{21248, 178},
-	{23719, 179},
-	{31226, 180},
-	{21611, 181},
-	{31289, 182},
-	{21156, 183},
-	{31342, 184},
-	{31381, 185},
-	{31395, 186},
-	{31406, 187},
-	{31437, 188},
-	{31470, 189},
-	{25675, 190},
-	{24763, 191},
-	{31580, 192},
-	{31617, 193},
-	{31645, 194},
-	{31653, 195},
-	{31684, 196},
-	{21313, 197},
-	{31715, 198},
-	{31751, 199},
-	{17896, 200},
-	{31774, 201},
-	{24384, 202},
-	{31840, 203},
-	{21359, 204},
-	{24910, 205},
-	{31943, 206},
-	{20094, 207},
-	{31982, 208},
-	{21487, 209},
-	{32047, 210},
-	{32078, 211},
-	{20332, 212},
-	{25401, 213},
-	{32166, 214},
-	{32199, 215},
-	{32210, 216},
-	{24599, 217},
-	{32279, 218},
-	{1619, 219},
-	{21857, 220},
-	{32353, 221},
-	{32381, 222},
-	{32402, 223},
-	{24655, 224},
-	{32456, 225},
-	{32467, 226},
-	{22122, 227},
-	{32545, 228},
-	{25054, 229}
+	{30839, 164},
+	{25842, 165},
+	{23254, 166},
+	{30872, 167},
+	{25518, 168},
+	{25570, 169},
+	{30933, 170},
+	{20994, 171},
+	{21050, 172},
+	{31007, 173},
+	{11005, 174},
+	{31064, 175},
+	{31110, 176},
+	{31145, 177},
+	{21251, 178},
+	{23722, 179},
+	{31229, 180},
+	{21614, 181},
+	{31292, 182},
+	{21159, 183},
+	{31345, 184},
+	{31384, 185},
+	{31398, 186},
+	{31409, 187},
+	{31440, 188},
+	{31473, 189},
+	{25678, 190},
+	{24766, 191},
+	{31583, 192},
+	{31620, 193},
+	{31648, 194},
+	{31656, 195},
+	{31687, 196},
+	{21316, 197},
+	{31718, 198},
+	{31754, 199},
+	{17899, 200},
+	{31777, 201},
+	{24387, 202},
+	{31843, 203},
+	{21362, 204},
+	{24913, 205},
+	{31946, 206},
+	{20097, 207},
+	{31985, 208},
+	{21490, 209},
+	{32050, 210},
+	{32081, 211},
+	{20335, 212},
+	{25404, 213},
+	{32169, 214},
+	{32202, 215},
+	{32213, 216},
+	{24602, 217},
+	{32282, 218},
+	{1621, 219},
+	{21860, 220},
+	{32356, 221},
+	{32384, 222},
+	{32405, 223},
+	{24658, 224},
+	{32459, 225},
+	{32470, 226},
+	{22125, 227},
+	{32548, 228},
+	{25057, 229}
 };
 
 
@@ -1246,6 +1246,7 @@ static const char locale_strings [] = {
 	"\xd0\xbe\xd0\xba\xd1\x82.\0"
 	"\xd0\xbd\xd0\xbe\xd0\xb5\xd0\xbc.\0"
 	"\xd0\xb4\xd0\xb5\xd0\xba.\0"
+	".\0"
 	"dd.MM.yy\0"
 	"d MMMM yyyy HH:mm:ss z\0"
 	"d MMMM yyyy\0"
@@ -1403,6 +1404,7 @@ static const char locale_strings [] = {
 	"okt\0"
 	"nov\0"
 	"dec\0"
+	"-\0"
 	"dd-MM-yy\0"
 	"d. MMMM yyyy HH:mm:ss\0"
 	"dd.MM.yyyy\0"
@@ -1717,6 +1719,7 @@ static const char locale_strings [] = {
 	"szept.\0"
 	"okt.\0"
 	"dec.\0"
+	". \0"
 	"yyyy.MM.dd.\0"
 	"sunnudagur\0"
 	"m\xc3\xa1nudagur\0"
@@ -2944,12 +2947,10 @@ static const char locale_strings [] = {
 	"\xe2\x80\xb0\0"
 	"-\xe2\x88\x9e\0"
 	"\xe2\x88\x9e\0"
-	"-\0"
 	"+\0"
 	",\0"
 	"\xc2\xa0\0"
 	"%\0"
-	".\0"
 	"NaN\0"
 	"-Infinity\0"
 	"Infinity\0"
diff --git a/mono/metadata/sgen-gc.c b/mono/metadata/sgen-gc.c
index 4930ba8..eab8e22 100644
--- a/mono/metadata/sgen-gc.c
+++ b/mono/metadata/sgen-gc.c
@@ -4109,6 +4109,9 @@ finalize_in_range (CopyOrMarkObjectFunc copy_func, char *start, char *end, int g
 				if (is_fin_ready) {
 					char *from;
 					FinalizeEntry *next;
+					/* Make it survive */
+					from = entry->object;
+					entry->object = copy;
 					/* remove and put in fin_ready_list */
 					if (prev)
 						prev->next = entry->next;
@@ -4119,9 +4122,6 @@ finalize_in_range (CopyOrMarkObjectFunc copy_func, char *start, char *end, int g
 					hash_table->num_registered--;
 					queue_finalization_entry (entry);
 					bridge_register_finalized_object ((MonoObject*)copy);
-					/* Make it survive */
-					from = entry->object;
-					entry->object = copy;
 					DEBUG (5, fprintf (gc_debug_file, "Queueing object for finalization: %p (%s) (was at %p) (%d/%d)\n", entry->object, safe_name (entry->object), from, num_ready_finalizers, hash_table->num_registered));
 					entry = next;
 					continue;
diff --git a/mono/mini/ChangeLog b/mono/mini/ChangeLog
index 12627e1..b563af9 100644
--- a/mono/mini/ChangeLog
+++ b/mono/mini/ChangeLog
@@ -1,3 +1,26 @@
+2011-08-03  Rodrigo Kumpera  <kumpera at gmail.com>
+
+	Fix padding of call instructions.
+
+2011-08-02  Rolf Bjarne Kvinge  <rolf at xamarin.com>
+
+	[aot-compiler] Replace assert with descriptive error message.
+
+2011-08-02  Rodrigo Kumpera  <kumpera at gmail.com>
+
+	* aot-compiler.c (arch_emit_imt_thunk): Implement fail tramp
+	support on arm. This enables variance to work under full-aot. The
+	code blowout is not really significant as even on non linked apps
+	the imt thunk overhead is 0.5%.
+
+2011-08-02  Alex  <alexh at dragonflybsd.org>
+
+	Define MONO_ARCH_NOMAP32BIT for DragonFly BSD.
+
+2011-07-29  Miguel de Icaza  <miguel at gnome.org>
+
+	Update copyrights
+
 2011-07-29  Rodrigo Kumpera  <kumpera at gmail.com>
 
 	Use wrappers for accessing socket errors. Cygwin does not have
diff --git a/mono/mini/aot-compiler.c b/mono/mini/aot-compiler.c
index dde9188..6f63854 100644
--- a/mono/mini/aot-compiler.c
+++ b/mono/mini/aot-compiler.c
@@ -1425,7 +1425,9 @@ arch_emit_imt_thunk (MonoAotCompile *acfg, int offset, int *tramp_size)
 
 	/* No match */
 	arm_patch (labels [3], code);
-	ARM_DBRK (code);
+	ARM_LDR_IMM (code, ARMREG_R0, ARMREG_R0, 4);
+	ARM_STR_IMM (code, ARMREG_R0, ARMREG_SP, 8);
+	ARM_POP (code, (1 << ARMREG_R0)|(1 << ARMREG_R1)|(1 << ARMREG_PC));
 
 	/* Fixup offset */
 	code2 = labels [0];
@@ -6950,7 +6952,10 @@ mono_compile_assembly (MonoAssembly *ass, guint32 opts, const char *aot_options)
 				int i = g_file_open_tmp ("mono_aot_XXXXXX", &acfg->tmpfname, NULL);
 				acfg->fp = fdopen (i, "w+");
 			}
-			g_assert (acfg->fp);
+			if (acfg->fp == 0) {
+				fprintf (stderr, "Unable to open file '%s': %s\n", acfg->tmpfname, strerror (errno));
+				return 1;
+			}
 		}
 		acfg->w = img_writer_create (acfg->fp, FALSE);
 		
diff --git a/mono/mini/driver.c b/mono/mini/driver.c
index 5a415eb..f22bf38 100644
--- a/mono/mini/driver.c
+++ b/mono/mini/driver.c
@@ -1400,7 +1400,7 @@ mono_main (int argc, char* argv[])
 			char *build = mono_get_runtime_build_info ();
 			char *gc_descr;
 
-			g_print ("Mono JIT compiler version %s\nCopyright (C) 2002-2011 Novell, Inc and Contributors. www.mono-project.com\n", build);
+			g_print ("Mono JIT compiler version %s\nCopyright (C) 2002-2011 Novell, Inc, Xamarin, Inc and Contributors. www.mono-project.com\n", build);
 			g_free (build);
 			g_print (info);
 			gc_descr = mono_gc_get_description ();
diff --git a/mono/mini/mini-amd64.h b/mono/mini/mini-amd64.h
index effe00b..0b4d253 100644
--- a/mono/mini/mini-amd64.h
+++ b/mono/mini/mini-amd64.h
@@ -298,6 +298,10 @@ typedef struct {
 
 #define MONO_ARCH_NOMAP32BIT
 
+#elif defined (__DragonFly__)
+
+#define MONO_ARCH_NOMAP32BIT
+
 #elif defined (__FreeBSD__)
 
 #define REG_RAX 7
diff --git a/mono/mini/mini-x86.c b/mono/mini/mini-x86.c
index e325e5d..16afc19 100644
--- a/mono/mini/mini-x86.c
+++ b/mono/mini/mini-x86.c
@@ -1808,7 +1808,7 @@ emit_call (MonoCompile *cfg, guint8 *code, guint32 patch_type, gconstpointer dat
 	*/
 	guint32 pad_size = (guint32)(code + 1 - cfg->native_code) & 0x3;
 	if (pad_size)
-		x86_padding (code, pad_size);
+		x86_padding (code, 4 - pad_size);
 
 	mono_add_patch_info (cfg, code - cfg->native_code, patch_type, data);
 	x86_call_code (code, 0);
diff --git a/mono/mini/version.h b/mono/mini/version.h
index 423865a..8156d11 100644
--- a/mono/mini/version.h
+++ b/mono/mini/version.h
@@ -1 +1 @@
-#define FULL_VERSION "mono-2-10/66187b2"
+#define FULL_VERSION "mono-2-10/f12adef"
diff --git a/mono/utils/ChangeLog b/mono/utils/ChangeLog
index b683cff..9fde67d 100644
--- a/mono/utils/ChangeLog
+++ b/mono/utils/ChangeLog
@@ -1,3 +1,7 @@
+2011-08-01  Alex  <alexh at dragonflybsd.org>
+
+	Add support for DragonFly and NetBSD to sigcontext.
+
 2011-07-12  Rodrigo Kumpera  <kumpera at gmail.com>
 
 	Add shared_perfcounters option to enable minimal.
diff --git a/mono/utils/mono-sigcontext.h b/mono/utils/mono-sigcontext.h
index e5b443a..1a59bb3 100644
--- a/mono/utils/mono-sigcontext.h
+++ b/mono/utils/mono-sigcontext.h
@@ -8,14 +8,14 @@
 
 #if defined(__i386__)
 
-#if defined(__FreeBSD__) || defined(__APPLE__)
+#if defined(__FreeBSD__) || defined(__APPLE__) || defined(__DragonFly__)
 #include <ucontext.h>
 #endif
 #if defined(__APPLE__)
 #include <AvailabilityMacros.h>
 #endif
 
-#if defined(__FreeBSD__)
+#if defined(__FreeBSD__) || defined(__DragonFly__)
 	#define UCONTEXT_REG_EAX(ctx) (((ucontext_t*)(ctx))->uc_mcontext.mc_eax)
 	#define UCONTEXT_REG_EBX(ctx) (((ucontext_t*)(ctx))->uc_mcontext.mc_ebx)
 	#define UCONTEXT_REG_ECX(ctx) (((ucontext_t*)(ctx))->uc_mcontext.mc_ecx)
@@ -99,8 +99,34 @@
 	#define UCONTEXT_REG_R13(ctx) (((ucontext_t*)(ctx))->uc_mcontext->__ss.__r13)
 	#define UCONTEXT_REG_R14(ctx) (((ucontext_t*)(ctx))->uc_mcontext->__ss.__r14)
 	#define UCONTEXT_REG_R15(ctx) (((ucontext_t*)(ctx))->uc_mcontext->__ss.__r15)
-#elif defined(__FreeBSD__)
-#define UCONTEXT_GREGS(ctx)	((guint64*)&(((ucontext_t*)(ctx))->uc_mcontext))
+#elif defined(__FreeBSD__) || defined(__DragonFly__)
+	#define UCONTEXT_REG_RAX(ctx) (((ucontext_t*)(ctx))->uc_mcontext.mc_rax)
+	#define UCONTEXT_REG_RBX(ctx) (((ucontext_t*)(ctx))->uc_mcontext.mc_rbx)
+	#define UCONTEXT_REG_RCX(ctx) (((ucontext_t*)(ctx))->uc_mcontext.mc_rcx)
+	#define UCONTEXT_REG_RDX(ctx) (((ucontext_t*)(ctx))->uc_mcontext.mc_rdx)
+	#define UCONTEXT_REG_RBP(ctx) (((ucontext_t*)(ctx))->uc_mcontext.mc_rbp)
+	#define UCONTEXT_REG_RSP(ctx) (((ucontext_t*)(ctx))->uc_mcontext.mc_rsp)
+	#define UCONTEXT_REG_RSI(ctx) (((ucontext_t*)(ctx))->uc_mcontext.mc_rsi)
+	#define UCONTEXT_REG_RDI(ctx) (((ucontext_t*)(ctx))->uc_mcontext.mc_rdi)
+	#define UCONTEXT_REG_RIP(ctx) (((ucontext_t*)(ctx))->uc_mcontext.mc_rip)
+	#define UCONTEXT_REG_R12(ctx) (((ucontext_t*)(ctx))->uc_mcontext.mc_r12)
+	#define UCONTEXT_REG_R13(ctx) (((ucontext_t*)(ctx))->uc_mcontext.mc_r13)
+	#define UCONTEXT_REG_R14(ctx) (((ucontext_t*)(ctx))->uc_mcontext.mc_r14)
+	#define UCONTEXT_REG_R15(ctx) (((ucontext_t*)(ctx))->uc_mcontext.mc_r15)
+#elif defined(__NetBSD__)
+	#define UCONTEXT_REG_RAX(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs [_REG_RAX])
+	#define UCONTEXT_REG_RBX(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs [_REG_RBX])
+	#define UCONTEXT_REG_RCX(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs [_REG_RCX])
+	#define UCONTEXT_REG_RDX(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs [_REG_RDX])
+	#define UCONTEXT_REG_RBP(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs [_REG_RBP])
+	#define UCONTEXT_REG_RSP(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs [_REG_RSP])
+	#define UCONTEXT_REG_RSI(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs [_REG_RSI])
+	#define UCONTEXT_REG_RDI(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs [_REG_RDI])
+	#define UCONTEXT_REG_RIP(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs [_REG_RIP])
+	#define UCONTEXT_REG_R12(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs [_REG_R12])
+	#define UCONTEXT_REG_R13(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs [_REG_R13])
+	#define UCONTEXT_REG_R14(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs [_REG_R14])
+	#define UCONTEXT_REG_R15(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs [_REG_R15])
 #elif defined(__OpenBSD__)
     /* OpenBSD/amd64 has no gregs array, ucontext_t == sigcontext */
 	#define UCONTEXT_REG_RAX(ctx) (((ucontext_t*)(ctx))->sc_rax)
diff --git a/tools/locale-builder/supp/ChangeLog b/tools/locale-builder/supp/ChangeLog
index 28a3ef1..b1ffa51 100644
--- a/tools/locale-builder/supp/ChangeLog
+++ b/tools/locale-builder/supp/ChangeLog
@@ -1,3 +1,10 @@
+2011-08-03  Marek Habersack  <grendel at twistedcode.net>
+
+	[runtime, globalization] Fix for Xamarin bug #161. Fix culture
+	info data for certain locale short date formats
+
+	Modified locales which don't use '/' as the short date separator.
+
 2010-03-23  Geoff Norton  <gnorton at novell.com>
 
 	* da_DK.xml: The short format is day. month, not 
diff --git a/tools/locale-builder/supp/ChangeLog b/tools/locale-builder/supp/ChangeLog.old
similarity index 100%
copy from tools/locale-builder/supp/ChangeLog
copy to tools/locale-builder/supp/ChangeLog.old
diff --git a/tools/locale-builder/supp/ar_DZ.xml b/tools/locale-builder/supp/ar_DZ.xml
index c1e4e1d..bbb9e19 100644
--- a/tools/locale-builder/supp/ar_DZ.xml
+++ b/tools/locale-builder/supp/ar_DZ.xml
@@ -7,6 +7,9 @@
 >
 <ldml>
 	<dates>
+		<symbols>
+			<dateSeparator>-</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar_type type="GregorianCalendar" />
 			<calendar type="gregorian">
diff --git a/tools/locale-builder/supp/ar_MA.xml b/tools/locale-builder/supp/ar_MA.xml
index 4f4b835..0404544 100644
--- a/tools/locale-builder/supp/ar_MA.xml
+++ b/tools/locale-builder/supp/ar_MA.xml
@@ -7,6 +7,9 @@
 >
 <ldml>
 	<dates>
+		<symbols>
+			<dateSeparator>-</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar_type type="GregorianCalendar" />
 			<calendar type="gregorian">
diff --git a/tools/locale-builder/supp/ar_TN.xml b/tools/locale-builder/supp/ar_TN.xml
index c1e4e1d..bbb9e19 100644
--- a/tools/locale-builder/supp/ar_TN.xml
+++ b/tools/locale-builder/supp/ar_TN.xml
@@ -7,6 +7,9 @@
 >
 <ldml>
 	<dates>
+		<symbols>
+			<dateSeparator>-</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar_type type="GregorianCalendar" />
 			<calendar type="gregorian">
diff --git a/tools/locale-builder/supp/be_BY.xml b/tools/locale-builder/supp/be_BY.xml
index b060598..c907904 100755
--- a/tools/locale-builder/supp/be_BY.xml
+++ b/tools/locale-builder/supp/be_BY.xml
@@ -1,6 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <ldml>
 	<dates>
+		<symbols>
+			<dateSeparator>.</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/bg.xml b/tools/locale-builder/supp/bg.xml
index f8de93b..86ae563 100755
--- a/tools/locale-builder/supp/bg.xml
+++ b/tools/locale-builder/supp/bg.xml
@@ -1,6 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <ldml>
 	<dates>
+		<symbols>
+			<dateSeparator>.</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/cs_CZ.xml b/tools/locale-builder/supp/cs_CZ.xml
index 080578b..275da59 100755
--- a/tools/locale-builder/supp/cs_CZ.xml
+++ b/tools/locale-builder/supp/cs_CZ.xml
@@ -10,6 +10,9 @@
 		</decimalFormats>
 	</numbers>
 	<dates>
+		<symbols>
+			<dateSeparator>.</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/da.xml b/tools/locale-builder/supp/da.xml
index 80e784c..f79e328 100755
--- a/tools/locale-builder/supp/da.xml
+++ b/tools/locale-builder/supp/da.xml
@@ -10,6 +10,9 @@
 		</percentFormats>
 	</numbers>
 	<dates>
+		<symbols>
+			<dateSeparator>-</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/de.xml b/tools/locale-builder/supp/de.xml
index 882fb0e..4a7f338 100755
--- a/tools/locale-builder/supp/de.xml
+++ b/tools/locale-builder/supp/de.xml
@@ -1,6 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <ldml>
 	<dates>
+		<symbols>
+			<dateSeparator>.</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/de_AT.xml b/tools/locale-builder/supp/de_AT.xml
index 882fb0e..4a7f338 100755
--- a/tools/locale-builder/supp/de_AT.xml
+++ b/tools/locale-builder/supp/de_AT.xml
@@ -1,6 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <ldml>
 	<dates>
+		<symbols>
+			<dateSeparator>.</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/es_CL.xml b/tools/locale-builder/supp/es_CL.xml
index f486ab1..555b1ba 100755
--- a/tools/locale-builder/supp/es_CL.xml
+++ b/tools/locale-builder/supp/es_CL.xml
@@ -1,6 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <ldml>
 	<dates>
+		<symbols>
+			<dateSeparator>-</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/et.xml b/tools/locale-builder/supp/et.xml
index 9fe6be5..1d8ef50 100755
--- a/tools/locale-builder/supp/et.xml
+++ b/tools/locale-builder/supp/et.xml
@@ -1,6 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <ldml>
 	<dates>
+		<symbols>
+			<dateSeparator>.</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/fi.xml b/tools/locale-builder/supp/fi.xml
index 2720792..6d4f681 100755
--- a/tools/locale-builder/supp/fi.xml
+++ b/tools/locale-builder/supp/fi.xml
@@ -10,6 +10,9 @@
 		</percentFormats>
 	</numbers>
 	<dates>
+		<symbols>
+			<dateSeparator>.</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/fo_FO.xml b/tools/locale-builder/supp/fo_FO.xml
index cea2ce5..88fddca 100755
--- a/tools/locale-builder/supp/fo_FO.xml
+++ b/tools/locale-builder/supp/fo_FO.xml
@@ -1,6 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <ldml>
 	<dates>
+		<symbols>
+			<dateSeparator>-</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/fr_CA.xml b/tools/locale-builder/supp/fr_CA.xml
index 15c0906..f8a3cc8 100755
--- a/tools/locale-builder/supp/fr_CA.xml
+++ b/tools/locale-builder/supp/fr_CA.xml
@@ -1,6 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <ldml>
 	<dates>
+		<symbols>
+			<dateSeparator>-</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/fr_CH.xml b/tools/locale-builder/supp/fr_CH.xml
index 0883ec0..f2de8b0 100755
--- a/tools/locale-builder/supp/fr_CH.xml
+++ b/tools/locale-builder/supp/fr_CH.xml
@@ -1,6 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <ldml>
 	<dates>
+		<symbols>
+			<dateSeparator>.</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/hi_IN.xml b/tools/locale-builder/supp/hi_IN.xml
index 371d223..e13d460 100755
--- a/tools/locale-builder/supp/hi_IN.xml
+++ b/tools/locale-builder/supp/hi_IN.xml
@@ -1,6 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <ldml>
 	<dates>
+		<symbols>
+			<dateSeparator>-</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/hr.xml b/tools/locale-builder/supp/hr.xml
index 177812f..66e3996 100755
--- a/tools/locale-builder/supp/hr.xml
+++ b/tools/locale-builder/supp/hr.xml
@@ -1,6 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <ldml>
 	<dates>
+		<symbols>
+			<dateSeparator>.</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/hu.xml b/tools/locale-builder/supp/hu.xml
index 107618c..ba3b66a 100755
--- a/tools/locale-builder/supp/hu.xml
+++ b/tools/locale-builder/supp/hu.xml
@@ -10,6 +10,9 @@
 		</percentFormats>
 	</numbers>
 	<dates>
+		<symbols>
+			<dateSeparator>. </dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/hy.xml b/tools/locale-builder/supp/hy.xml
index b060598..c907904 100755
--- a/tools/locale-builder/supp/hy.xml
+++ b/tools/locale-builder/supp/hy.xml
@@ -1,6 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <ldml>
 	<dates>
+		<symbols>
+			<dateSeparator>.</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/is.xml b/tools/locale-builder/supp/is.xml
index aee8c35..23f637e 100755
--- a/tools/locale-builder/supp/is.xml
+++ b/tools/locale-builder/supp/is.xml
@@ -1,6 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <ldml>
 	<dates>
+		<symbols>
+			<dateSeparator>.</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/it_CH.xml b/tools/locale-builder/supp/it_CH.xml
index 882fb0e..4a7f338 100755
--- a/tools/locale-builder/supp/it_CH.xml
+++ b/tools/locale-builder/supp/it_CH.xml
@@ -1,6 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <ldml>
 	<dates>
+		<symbols>
+			<dateSeparator>.</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/ka_GE.xml b/tools/locale-builder/supp/ka_GE.xml
index 01c15f7..185bafd 100644
--- a/tools/locale-builder/supp/ka_GE.xml
+++ b/tools/locale-builder/supp/ka_GE.xml
@@ -1,6 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <ldml>
 	<dates>
+		<symbols>
+			<dateSeparator>.</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/lt_LT.xml b/tools/locale-builder/supp/lt_LT.xml
index fc35ffd..fe44ebf 100755
--- a/tools/locale-builder/supp/lt_LT.xml
+++ b/tools/locale-builder/supp/lt_LT.xml
@@ -10,6 +10,9 @@
 		</decimalFormats>
 	</numbers>
 	<dates>
+		<symbols>
+			<dateSeparator>.</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/lv.xml b/tools/locale-builder/supp/lv.xml
index 140bacd..48fd017 100755
--- a/tools/locale-builder/supp/lv.xml
+++ b/tools/locale-builder/supp/lv.xml
@@ -1,6 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <ldml>
 	<dates>
+		<symbols>
+			<dateSeparator>.</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/mk.xml b/tools/locale-builder/supp/mk.xml
index 882fb0e..4a7f338 100755
--- a/tools/locale-builder/supp/mk.xml
+++ b/tools/locale-builder/supp/mk.xml
@@ -1,6 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <ldml>
 	<dates>
+		<symbols>
+			<dateSeparator>.</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/nl_NL.xml b/tools/locale-builder/supp/nl_NL.xml
index a48b923..66bb661 100755
--- a/tools/locale-builder/supp/nl_NL.xml
+++ b/tools/locale-builder/supp/nl_NL.xml
@@ -10,6 +10,9 @@
 		</percentFormats>
 	</numbers>
 	<dates>
+		<symbols>
+			<dateSeparator>-</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/pl.xml b/tools/locale-builder/supp/pl.xml
index 41e6c77..65e7964 100755
--- a/tools/locale-builder/supp/pl.xml
+++ b/tools/locale-builder/supp/pl.xml
@@ -12,6 +12,9 @@
 		<language type="pl" /> 
 	</identity>
 	<dates>
+		<symbols>
+			<dateSeparator>-</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/pt_PT.xml b/tools/locale-builder/supp/pt_PT.xml
index db5f50a..7f111e7 100755
--- a/tools/locale-builder/supp/pt_PT.xml
+++ b/tools/locale-builder/supp/pt_PT.xml
@@ -1,6 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <ldml>
 	<dates>
+		<symbols>
+			<dateSeparator>-</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/ro.xml b/tools/locale-builder/supp/ro.xml
index 882fb0e..4a7f338 100755
--- a/tools/locale-builder/supp/ro.xml
+++ b/tools/locale-builder/supp/ro.xml
@@ -1,6 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <ldml>
 	<dates>
+		<symbols>
+			<dateSeparator>.</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/ru.xml b/tools/locale-builder/supp/ru.xml
index b060598..c907904 100755
--- a/tools/locale-builder/supp/ru.xml
+++ b/tools/locale-builder/supp/ru.xml
@@ -1,6 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <ldml>
 	<dates>
+		<symbols>
+			<dateSeparator>.</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/sk.xml b/tools/locale-builder/supp/sk.xml
index f9a84b2..6709138 100755
--- a/tools/locale-builder/supp/sk.xml
+++ b/tools/locale-builder/supp/sk.xml
@@ -1,6 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <ldml>
 	<dates>
+		<symbols>
+			<dateSeparator>. </dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/sl.xml b/tools/locale-builder/supp/sl.xml
index 177812f..66e3996 100755
--- a/tools/locale-builder/supp/sl.xml
+++ b/tools/locale-builder/supp/sl.xml
@@ -1,6 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <ldml>
 	<dates>
+		<symbols>
+			<dateSeparator>.</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/sq.xml b/tools/locale-builder/supp/sq.xml
index 38821e5..f1cdca8 100755
--- a/tools/locale-builder/supp/sq.xml
+++ b/tools/locale-builder/supp/sq.xml
@@ -1,6 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <ldml>
 	<dates>
+		<symbols>
+			<dateSeparator>-</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/sv_FI.xml b/tools/locale-builder/supp/sv_FI.xml
index aee8c35..23f637e 100755
--- a/tools/locale-builder/supp/sv_FI.xml
+++ b/tools/locale-builder/supp/sv_FI.xml
@@ -1,6 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <ldml>
 	<dates>
+		<symbols>
+			<dateSeparator>.</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/sv_SE.xml b/tools/locale-builder/supp/sv_SE.xml
index 01b5e5c..9db987e 100755
--- a/tools/locale-builder/supp/sv_SE.xml
+++ b/tools/locale-builder/supp/sv_SE.xml
@@ -1,6 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <ldml>
 	<dates>
+		<symbols>
+			<dateSeparator>-</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/tr.xml b/tools/locale-builder/supp/tr.xml
index 882fb0e..4a7f338 100755
--- a/tools/locale-builder/supp/tr.xml
+++ b/tools/locale-builder/supp/tr.xml
@@ -1,6 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <ldml>
 	<dates>
+		<symbols>
+			<dateSeparator>.</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>
diff --git a/tools/locale-builder/supp/uk.xml b/tools/locale-builder/supp/uk.xml
index b060598..c907904 100755
--- a/tools/locale-builder/supp/uk.xml
+++ b/tools/locale-builder/supp/uk.xml
@@ -1,6 +1,9 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <ldml>
 	<dates>
+		<symbols>
+			<dateSeparator>.</dateSeparator>
+		</symbols>
 		<calendars>
 			<calendar type="gregorian">
 				<dateFormats>

-- 
mono



More information about the Pkg-mono-svn-commits mailing list