about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog95
-rw-r--r--debug/wctomb_chk.c6
-rw-r--r--fedora/branch.mk4
-rw-r--r--intl/Makefile13
-rw-r--r--intl/dcigettext.c46
-rw-r--r--intl/tst-gettext6.c86
-rw-r--r--intl/tst-gettext6.sh41
-rw-r--r--locale/duplocale.c8
-rw-r--r--locale/freelocale.c8
-rw-r--r--locale/newlocale.c10
-rw-r--r--locale/programs/ld-time.c4
-rw-r--r--locale/programs/locfile.c4
-rw-r--r--locale/setlocale.c12
-rw-r--r--localedata/ChangeLog23
-rw-r--r--localedata/Makefile3
-rw-r--r--localedata/locales/es_ES2068
-rw-r--r--localedata/locales/hu_HU4
-rw-r--r--localedata/locales/iso14651_t1_common718
-rw-r--r--malloc/mtrace.pl2
-rw-r--r--nptl/ChangeLog7
-rw-r--r--nptl/sysdeps/unix/sysv/linux/sparc/lowlevellock.h4
-rw-r--r--nscd/nscd.c2
-rw-r--r--po/nl.po143
-rw-r--r--posix/getopt.c24
-rw-r--r--resolv/res_init.c46
-rw-r--r--stdio-common/vfprintf.c3
-rw-r--r--stdlib/mbtowc.c11
-rw-r--r--stdlib/strtod_l.c2
-rw-r--r--stdlib/wctomb.c10
-rw-r--r--string/strfry.c24
-rw-r--r--sunrpc/auth_unix.c2
-rw-r--r--sunrpc/clnt_tcp.c2
-rw-r--r--sunrpc/clnt_udp.c3
-rw-r--r--sunrpc/clnt_unix.c2
-rw-r--r--sunrpc/svc_tcp.c6
-rw-r--r--sunrpc/svc_udp.c3
-rw-r--r--sunrpc/svc_unix.c6
-rw-r--r--sunrpc/xdr.c4
-rw-r--r--sunrpc/xdr_array.c2
-rw-r--r--sunrpc/xdr_rec.c2
-rw-r--r--sunrpc/xdr_ref.c3
-rw-r--r--sysdeps/posix/tempname.c2
-rw-r--r--sysdeps/unix/opendir.c28
-rw-r--r--sysdeps/unix/sysv/linux/net/ethernet.h10
44 files changed, 1011 insertions, 2495 deletions
diff --git a/ChangeLog b/ChangeLog
index ec004b1f4f..718ff1bf64 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,98 @@
+2008-04-07  Ulrich Drepper  <drepper@redhat.com>
+
+	[BZ #6042]
+	* sysdeps/unix/sysv/linux/net/ethernet.h: Add a few more
+	ETHERTYPE_* definitions.
+	Patch partly by Aurelien Jarno <aurelien@aurel32.net>.
+
+2008-04-07  Jakub Jelinek  <jakub@redhat.com>
+
+	* stdlib/mbtowc.c (__no_r_state): Remove.
+	(mbtowc): New static state variable.  Use it instead of
+	__no_r_state.
+	* stdlib/wctomb.c (__no_r_state): Remove extern decl.
+	(__wctomb_state): New hidden variable.
+	(wctomb): Use __wctomb_state instead of __no_r_state.
+	* debug/wctomb_chk.c (__no_r_state): Remove extern decl.
+	(__wctomb_state): New extern decl.
+	(__wctomb_chk): Use __wctomb_state instead of __no_r_state.
+
+2008-04-07  Ulrich Drepper  <drepper@redhat.com>
+
+	[BZ #5475]
+	* resolv/res_init.c: Handle scope IDs in resolv.conf.
+
+2008-04-07  Jakub Jelinek  <jakub@redhat.com>
+
+	* malloc/mtrace.pl: Use $@ instead of $* to keep perl 5.10 quiet.
+
+2008-04-06  Ulrich Drepper  <drepper@redhat.com>
+
+	* po/nl.po: Update from translation team.
+
+2008-03-31  Ulrich Drepper  <drepper@redhat.com>
+
+	[BZ #6007]
+	* string/strfry.c: Handle empty strings again.
+
+2008-03-30  Ulrich Drepper  <drepper@redhat.com>
+
+	[BZ #5443]
+	* intl/dcigettext.c (__dcigettext): Get reader lock for locale data
+	before looking for translation.
+	* locale/duplocale.c: Transform __libc_setlocale_lock into rwlock.
+	* locale/freelocale.c: Likewise.
+	* locale/newlocale.c: Likewise.
+	* locale/setlocale.c: Likewise.
+	Based partially on a patch by ryo@np.css.fujitsu.com.
+
+2008-03-30  Jakub Jelinek  <jakub@redhat.com>
+
+	* intl/dcigettext.c (_nl_find_msg): Reread nconversions after
+	acquiring wrlock.  Do conv_tab allocation while holding lock.
+	* intl/Makefile: Add rules to build and run tst-gettext6.
+	* intl/tst-gettext6.c: New test.
+	* intl/tst-gettext6.sh: New file.
+
+2008-03-30  Ulrich Drepper  <drepper@redhat.com>
+
+	* po/nl.po: Update from translation team.
+
+	* sysdeps/unix/opendir.c (__alloc_dir): If allocation fails for size
+	provided through st_blksize, try the default size before giving up.
+
+2008-03-29  Ulrich Drepper  <drepper@redhat.com>
+
+	* stdio-common/vfprintf.c (vfprintf): Correct overflow test.
+
+	[BZ #5939]
+	* sysdeps/posix/tempname.c (__gen_tempname): Correct flag selection.
+
+	* posix/getopt.c (_getopt_internal_r): Remove old POSIX-demanded
+	error message.  POSIX today does not require the messages to be in
+	a specific form.  Suggested by Jim Meyering <jim@meyering.net>.
+
+	[BZ #5979]
+	* sunrpc/auth_unix.c: Unify printed strings.
+	* sunrpc/clnt_tcp.c: Likewise.
+	* sunrpc/clnt_udp.c: Likewise.
+	* sunrpc/clnt_unix.c: Likewise.
+	* sunrpc/svc_tcp.c: Likewise.
+	* sunrpc/svc_udp.c: Likewise.
+	* sunrpc/svc_unix.c: Likewise.
+	* sunrpc/xdr.c: Likewise.
+	* sunrpc/xdr_array.c: Likewise.
+	* sunrpc/xdr_rec.c: Likewise.
+	* sunrpc/xdr_ref.c: Likewise.
+	* locale/programs/ld-time.c (time_finish): Unify messages.
+	* locale/programs/locfile.c (handle_copy): Fix typo.
+	* nscd/nscd.c (options): Fix typo.
+
+	[BZ #5995]
+	* stdlib/strtod_l.c: Use correct sign for result in one more
+	underflow case.
+	Patch by Eric Blake <ebb9@byu.net>.
+
 2008-03-27  Jakub Jelinek  <jakub@redhat.com>
 
 	* sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: Add open
diff --git a/debug/wctomb_chk.c b/debug/wctomb_chk.c
index d0366346b8..23fc2ffbd1 100644
--- a/debug/wctomb_chk.c
+++ b/debug/wctomb_chk.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2005 Free Software Foundation, Inc.
+/* Copyright (C) 2005, 2008 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -21,7 +21,7 @@
 #include <wcsmbs/wcsmbsload.h>
 
 
-extern mbstate_t __no_r_state attribute_hidden;	/* Defined in mbtowc.c.  */
+extern mbstate_t __wctomb_state attribute_hidden; /* Defined in wctomb.c.  */
 
 
 int
@@ -32,5 +32,5 @@ __wctomb_chk (char *s, wchar_t wchar, size_t buflen)
   if (buflen < MB_CUR_MAX)
     __chk_fail ();
 
-  return __wcrtomb (s, wchar, &__no_r_state);
+  return __wcrtomb (s, wchar, &__wctomb_state);
 }
diff --git a/fedora/branch.mk b/fedora/branch.mk
index a5124e44db..fc38cf831b 100644
--- a/fedora/branch.mk
+++ b/fedora/branch.mk
@@ -3,5 +3,5 @@ glibc-branch := fedora
 glibc-base := HEAD
 DIST_BRANCH := devel
 COLLECTION := dist-f8
-fedora-sync-date := 2008-03-28 13:47 UTC
-fedora-sync-tag := fedora-glibc-20080328T1347
+fedora-sync-date := 2008-04-08 07:06 UTC
+fedora-sync-tag := fedora-glibc-20080408T0706
diff --git a/intl/Makefile b/intl/Makefile
index 9da445aa38..1511edd490 100644
--- a/intl/Makefile
+++ b/intl/Makefile
@@ -1,4 +1,4 @@
-# Copyright (C) 1995-2003, 2005 Free Software Foundation, Inc.
+# Copyright (C) 1995-2003, 2005, 2008 Free Software Foundation, Inc.
 # This file is part of the GNU C Library.
 
 # The GNU C Library is free software; you can redistribute it and/or
@@ -32,11 +32,11 @@ distribute = gmo.h gettextP.h hash-string.h loadinfo.h locale.alias \
 	     tst-codeset.sh tstcodeset.po \
 	     tst-gettext3.sh \
 	     tst-gettext4.sh tst-gettext4-de.po tst-gettext4-fr.po \
-	     tst-gettext5.sh
+	     tst-gettext5.sh tst-gettext6.sh
 
 include ../Makeconfig
 
-multithread-test-srcs := tst-gettext4 tst-gettext5
+multithread-test-srcs := tst-gettext4 tst-gettext5 tst-gettext6
 test-srcs := tst-gettext tst-translit tst-gettext2 tst-codeset tst-gettext3
 ifeq ($(have-thread-library),yes)
 test-srcs += $(multithread-test-srcs)
@@ -67,7 +67,8 @@ ifneq ($(strip $(MSGFMT)),:)
 tests: $(objpfx)tst-translit.out $(objpfx)tst-gettext2.out \
        $(objpfx)tst-codeset.out $(objpfx)tst-gettext3.out
 ifeq ($(have-thread-library),yes)
-tests: $(objpfx)tst-gettext4.out $(objpfx)tst-gettext5.out
+tests: $(objpfx)tst-gettext4.out $(objpfx)tst-gettext5.out \
+       $(objpfx)tst-gettext6.out
 endif
 ifneq (no,$(PERL))
 tests: $(objpfx)mtrace-tst-gettext
@@ -90,6 +91,8 @@ $(objpfx)tst-gettext4.out: tst-gettext4.sh $(objpfx)tst-gettext4
 	$(SHELL) -e $< $(common-objpfx) '$(run-program-prefix)' $(common-objpfx)intl/
 $(objpfx)tst-gettext5.out: tst-gettext5.sh $(objpfx)tst-gettext5
 	$(SHELL) -e $< $(common-objpfx) '$(run-program-prefix)' $(common-objpfx)intl/
+$(objpfx)tst-gettext6.out: tst-gettext6.sh $(objpfx)tst-gettext6
+	$(SHELL) -e $< $(common-objpfx) '$(run-program-prefix)' $(common-objpfx)intl/
 endif
 endif
 
@@ -104,6 +107,7 @@ CFLAGS-tst-codeset.c = -DOBJPFX=\"$(objpfx)\"
 CFLAGS-tst-gettext3.c = -DOBJPFX=\"$(objpfx)\"
 CFLAGS-tst-gettext4.c = -DOBJPFX=\"$(objpfx)\"
 CFLAGS-tst-gettext5.c = -DOBJPFX=\"$(objpfx)\"
+CFLAGS-tst-gettext6.c = -DOBJPFX=\"$(objpfx)\"
 
 ifeq ($(have-thread-library),yes)
 ifeq (yes,$(build-shared))
@@ -122,6 +126,7 @@ $(objpfx)tst-codeset.out: $(objpfx)tst-gettext.out
 $(objpfx)tst-gettext3.out: $(objpfx)tst-gettext.out
 $(objpfx)tst-gettext4.out: $(objpfx)tst-gettext.out
 $(objpfx)tst-gettext5.out: $(objpfx)tst-gettext.out
+$(objpfx)tst-gettext6.out: $(objpfx)tst-gettext.out
 
 CPPFLAGS += -D'LOCALEDIR="$(msgcatdir)"' \
 	    -D'LOCALE_ALIAS_PATH="$(msgcatdir)"'
diff --git a/intl/dcigettext.c b/intl/dcigettext.c
index 7004cd49cf..e0782446e4 100644
--- a/intl/dcigettext.c
+++ b/intl/dcigettext.c
@@ -1,5 +1,6 @@
 /* Implementation of the internal dcigettext function.
-   Copyright (C) 1995-2005, 2006, 2007 Free Software Foundation, Inc.
+   Copyright (C) 1995-2005, 2006, 2007, 2008
+   Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -449,6 +450,11 @@ DCIGETTEXT (domainname, msgid1, msgid2, plural, n, category)
 	    : n == 1 ? (char *) msgid1 : (char *) msgid2);
 #endif
 
+#ifdef _LIBC
+  __libc_rwlock_define (extern, __libc_setlocale_lock attribute_hidden)
+  __libc_rwlock_rdlock (__libc_setlocale_lock);
+#endif
+
   __libc_rwlock_rdlock (_nl_state_lock);
 
   /* If DOMAINNAME is NULL, we are interested in the default domain.  If
@@ -466,7 +472,7 @@ DCIGETTEXT (domainname, msgid1, msgid2, plural, n, category)
   search.category = category;
 # ifdef HAVE_PER_THREAD_LOCALE
 #  ifdef _LIBC
-  localename = __current_locale_name (category);
+  localename = strdupa (__current_locale_name (category));
 #  endif
   search.localename = localename;
 # endif
@@ -489,6 +495,9 @@ DCIGETTEXT (domainname, msgid1, msgid2, plural, n, category)
       else
 	retval = (char *) (*foundp)->translation;
 
+# ifdef _LIBC
+      __libc_rwlock_unlock (__libc_setlocale_lock);
+# endif
       __libc_rwlock_unlock (_nl_state_lock);
       return retval;
     }
@@ -548,6 +557,7 @@ DCIGETTEXT (domainname, msgid1, msgid2, plural, n, category)
 	  /* We cannot get the current working directory.  Don't signal an
 	     error but simply return the default string.  */
 	  FREE_BLOCKS (block_list);
+	  __libc_rwlock_unlock (__libc_setlocale_lock);
 	  __libc_rwlock_unlock (_nl_state_lock);
 	  __set_errno (saved_errno);
 	  return (plural == 0
@@ -614,6 +624,7 @@ DCIGETTEXT (domainname, msgid1, msgid2, plural, n, category)
 	{
 	no_translation:
 	  FREE_BLOCKS (block_list);
+	  __libc_rwlock_unlock (__libc_setlocale_lock);
 	  __libc_rwlock_unlock (_nl_state_lock);
 	  __set_errno (saved_errno);
 	  return (plural == 0
@@ -727,6 +738,7 @@ DCIGETTEXT (domainname, msgid1, msgid2, plural, n, category)
 	      if (plural)
 		retval = plural_lookup (domain, n, retval, retlen);
 
+	      __libc_rwlock_unlock (__libc_setlocale_lock);
 	      __libc_rwlock_unlock (_nl_state_lock);
 	      return retval;
 	    }
@@ -879,6 +891,7 @@ _nl_find_msg (domain_file, domainbinding, msgid, convert, lengthp)
 	{
 	  /* We have to allocate a new conversions table.  */
 	  __libc_rwlock_wrlock (domain->conversions_lock);
+	  nconversions = domain->nconversions;
 
 	  /* Maybe in the meantime somebody added the translation.
 	     Recheck.  */
@@ -1033,6 +1046,7 @@ _nl_find_msg (domain_file, domainbinding, msgid, convert, lengthp)
 # endif
 	  )
 	{
+	  __libc_lock_define_initialized (static, lock)
 	  /* We are supposed to do a conversion.  First allocate an
 	     appropriate table with the same structure as the table
 	     of translations in the file, where we can put the pointers
@@ -1042,13 +1056,21 @@ _nl_find_msg (domain_file, domainbinding, msgid, convert, lengthp)
 	     handle this case by converting RESULTLEN bytes, including
 	     NULs.  */
 
-	  if (convd->conv_tab == NULL
-	      && ((convd->conv_tab =
-		    (char **) calloc (nstrings + domain->n_sysdep_strings,
-				      sizeof (char *)))
-		  == NULL))
-	    /* Mark that we didn't succeed allocating a table.  */
-	    convd->conv_tab = (char **) -1;
+	  if (__builtin_expect (convd->conv_tab == NULL, 0))
+	    {
+	      __libc_lock_lock (lock);
+	      if (convd->conv_tab == NULL)
+		{
+		  convd->conv_tab
+		    = calloc (nstrings + domain->n_sysdep_strings,
+			      sizeof (char *));
+		  if (convd->conv_tab != NULL)
+		    goto not_translated_yet;
+		  /* Mark that we didn't succeed allocating a table.  */
+		  convd->conv_tab = (char **) -1;
+		}
+	      __libc_lock_unlock (lock);
+	    }
 
 	  if (__builtin_expect (convd->conv_tab == (char **) -1, 0))
 	    /* Nothing we can do, no more memory.  We cannot use the
@@ -1057,12 +1079,14 @@ _nl_find_msg (domain_file, domainbinding, msgid, convert, lengthp)
 
 	  if (convd->conv_tab[act] == NULL)
 	    {
+	      __libc_lock_lock (lock);
+	    not_translated_yet:;
+
 	      /* We haven't used this string so far, so it is not
 		 translated yet.  Do this now.  */
 	      /* We use a bit more efficient memory handling.
 		 We allocate always larger blocks which get used over
 		 time.  This is faster than many small allocations.   */
-	      __libc_lock_define_initialized (static, lock)
 # define INITIAL_BLOCK_SIZE	4080
 	      static unsigned char *freemem;
 	      static size_t freemem_size;
@@ -1074,8 +1098,6 @@ _nl_find_msg (domain_file, domainbinding, msgid, convert, lengthp)
 	      transmem_block_t *transmem_list = NULL;
 # endif
 
-	      __libc_lock_lock (lock);
-
 	      inbuf = (const unsigned char *) result;
 	      outbuf = freemem + sizeof (size_t);
 
diff --git a/intl/tst-gettext6.c b/intl/tst-gettext6.c
new file mode 100644
index 0000000000..39611aa3b6
--- /dev/null
+++ b/intl/tst-gettext6.c
@@ -0,0 +1,86 @@
+/* Test that gettext() in multithreaded applications works correctly.
+   Copyright (C) 2008 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+   Contributed by Jakub Jelinek <jakub@redhat.com>, 2008.
+
+   The GNU C Library is free software; you can redistribute it and/or
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library 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
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, write to the Free
+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+   02111-1307 USA.  */
+
+#include <libintl.h>
+#include <locale.h>
+#include <pthread.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <sys/wait.h>
+#include <unistd.h>
+
+pthread_barrier_t b;
+
+static void *
+tf (void *arg)
+{
+  pthread_barrier_wait (&b);
+  return gettext ("Operation not permitted");
+}
+
+int
+test (void)
+{
+  pthread_t th[4];
+  unsetenv ("LANGUAGE");
+  unsetenv ("OUTPUT_CHARSET");
+  textdomain ("tstgettext6");
+  bindtextdomain ("tstgettext6", OBJPFX "domaindir");
+  setlocale (LC_ALL, "ja_JP.UTF-8");
+  pthread_barrier_init (&b, NULL, 4);
+  for (int i = 0; i < 4; i++)
+    if (pthread_create (&th[i], NULL, tf, NULL))
+      {
+	puts ("pthread_create failed");
+	return 1;
+      }
+  for (int i = 0; i < 4; i++)
+    pthread_join (th[i], NULL);
+  return 0;
+}
+
+int
+main (void)
+{
+  for (int i = 0; i < 300; i++)
+    {
+      pid_t p = fork ();
+      if (p == -1)
+	{
+	  printf ("fork failed: %m\n");
+	  return 1;
+	}
+      if (p == 0)
+	_exit (test ());
+      int status;
+      wait (&status);
+      if (WIFEXITED (status) && WEXITSTATUS (status) != 0)
+	{
+	  printf ("child exited with %d\n", WEXITSTATUS (status));
+	  return 1;
+	}
+      else if (WIFSIGNALED (status))
+	{
+	  printf ("child killed by signal %d\n", WTERMSIG (status));
+	  return 1;
+	}
+    }
+  return 0;
+}
diff --git a/intl/tst-gettext6.sh b/intl/tst-gettext6.sh
new file mode 100644
index 0000000000..95e5ff91a8
--- /dev/null
+++ b/intl/tst-gettext6.sh
@@ -0,0 +1,41 @@
+#! /bin/sh
+# Test that gettext() in multithreaded applications works correctly.
+# Copyright (C) 2008 Free Software Foundation, Inc.
+# This file is part of the GNU C Library.
+#
+
+# The GNU C Library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either
+# version 2.1 of the License, or (at your option) any later version.
+
+# The GNU C Library 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
+# Lesser General Public License for more details.
+
+# You should have received a copy of the GNU Lesser General Public
+# License along with the GNU C Library; if not, write to the Free
+# Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+# 02111-1307 USA.
+
+common_objpfx=$1
+run_program_prefix=$2
+objpfx=$3
+
+LC_ALL=C
+export LC_ALL
+
+# Create the domain directory.
+mkdir -p ${objpfx}domaindir/ja_JP/LC_MESSAGES
+# Populate it.
+msgfmt -o ${objpfx}domaindir/ja_JP/LC_MESSAGES/tstgettext6.mo ../po/ja.po
+
+GCONV_PATH=${common_objpfx}iconvdata
+export GCONV_PATH
+LOCPATH=${common_objpfx}localedata
+export LOCPATH
+
+${run_program_prefix} ${objpfx}tst-gettext6 > ${objpfx}tst-gettext6.out
+
+exit $?
diff --git a/locale/duplocale.c b/locale/duplocale.c
index 0cec09f63a..61782590d7 100644
--- a/locale/duplocale.c
+++ b/locale/duplocale.c
@@ -1,5 +1,5 @@
 /* Duplicate handle for selection of locales.
-   Copyright (C) 1997, 2000, 2001, 2002, 2005 Free Software Foundation, Inc.
+   Copyright (C) 1997,2000,2001,2002,2005,2008 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
 
@@ -27,7 +27,7 @@
 
 
 /* Lock for protecting global data.  */
-__libc_lock_define (extern , __libc_setlocale_lock attribute_hidden)
+__libc_rwlock_define (extern , __libc_setlocale_lock attribute_hidden)
 
 
 __locale_t
@@ -54,7 +54,7 @@ __duplocale (__locale_t dataset)
       char *namep = (char *) (result + 1);
 
       /* We modify global data (the usage counts).  */
-      __libc_lock_lock (__libc_setlocale_lock);
+      __libc_rwlock_wrlock (__libc_setlocale_lock);
 
       for (cnt = 0; cnt < __LC_LAST; ++cnt)
 	if (cnt != LC_ALL)
@@ -78,7 +78,7 @@ __duplocale (__locale_t dataset)
       result->__ctype_toupper = dataset->__ctype_toupper;
 
       /* It's done.  */
-      __libc_lock_unlock (__libc_setlocale_lock);
+      __libc_rwlock_unlock (__libc_setlocale_lock);
     }
 
   return result;
diff --git a/locale/freelocale.c b/locale/freelocale.c
index 7430455d56..97a8ee8a5e 100644
--- a/locale/freelocale.c
+++ b/locale/freelocale.c
@@ -1,5 +1,5 @@
 /* Free data allocated by a call to setlocale_r
-   Copyright (C) 1996, 1997, 2000, 2002, 2005 Free Software Foundation, Inc.
+   Copyright (C) 1996,1997,2000,2002,2005,2008 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996.
 
@@ -26,7 +26,7 @@
 
 
 /* Lock for protecting global data.  */
-__libc_lock_define (extern , __libc_setlocale_lock attribute_hidden)
+__libc_rwlock_define (extern , __libc_setlocale_lock attribute_hidden)
 
 
 void
@@ -39,7 +39,7 @@ __freelocale (__locale_t dataset)
     return;
 
   /* We modify global data (the usage counts).  */
-  __libc_lock_lock (__libc_setlocale_lock);
+  __libc_rwlock_wrlock (__libc_setlocale_lock);
 
   for (cnt = 0; cnt < __LC_LAST; ++cnt)
     if (cnt != LC_ALL && dataset->__locales[cnt]->usage_count != UNDELETABLE)
@@ -47,7 +47,7 @@ __freelocale (__locale_t dataset)
       _nl_remove_locale (cnt, dataset->__locales[cnt]);
 
   /* It's done.  */
-  __libc_lock_unlock (__libc_setlocale_lock);
+  __libc_rwlock_unlock (__libc_setlocale_lock);
 
   /* Free the locale_t handle itself.  */
   free (dataset);
diff --git a/locale/newlocale.c b/locale/newlocale.c
index 0c31ba48ae..da142f2912 100644
--- a/locale/newlocale.c
+++ b/locale/newlocale.c
@@ -1,5 +1,5 @@
 /* Return a reference to locale information record.
-   Copyright (C) 1996, 1997, 1999, 2000-2002, 2004, 2005, 2006
+   Copyright (C) 1996, 1997, 1999, 2000-2002, 2004, 2005, 2006, 2008
    Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996.
@@ -30,7 +30,7 @@
 
 
 /* Lock for protecting global data.  */
-__libc_lock_define (extern , __libc_setlocale_lock attribute_hidden)
+__libc_rwlock_define (extern , __libc_setlocale_lock attribute_hidden)
 
 
 /* Use this when we come along an error.  */
@@ -162,7 +162,7 @@ __newlocale (int category_mask, const char *locale, __locale_t base)
     }
 
   /* Protect global data.  */
-  __libc_lock_lock (__libc_setlocale_lock);
+  __libc_rwlock_wrlock (__libc_setlocale_lock);
 
   /* Now process all categories we are interested in.  */
   names_len = 0;
@@ -183,7 +183,7 @@ __newlocale (int category_mask, const char *locale, __locale_t base)
 		  _nl_remove_locale (cnt, result.__locales[cnt]);
 
               /* Critical section left.  */
-              __libc_lock_unlock (__libc_setlocale_lock);
+              __libc_rwlock_unlock (__libc_setlocale_lock);
 	      return NULL;
 	    }
 
@@ -263,7 +263,7 @@ __newlocale (int category_mask, const char *locale, __locale_t base)
     }
 
   /* Critical section left.  */
-  __libc_lock_unlock (__libc_setlocale_lock);
+  __libc_rwlock_unlock (__libc_setlocale_lock);
 
   /* Update the special members.  */
  update:
diff --git a/locale/programs/ld-time.c b/locale/programs/ld-time.c
index f040c93474..3a00d26f30 100644
--- a/locale/programs/ld-time.c
+++ b/locale/programs/ld-time.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995-2005, 2006, 2007 Free Software Foundation, Inc.
+/* Copyright (C) 1995-2005, 2006, 2007, 2008 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@gnu.org>, 1995.
 
@@ -433,7 +433,7 @@ No definition for %s category found"), "LC_TIME"));
 			   && !__isleap (time->era_entries[idx].stop_date[0])))
 		      && !be_quiet)
 			  WITH_CUR_LOCALE (error (0, 0, _("\
-%s: stopping date is invalid in string %Zd in `era' field"),
+%s: invalid stopping date in string %Zd in `era' field"),
 						  "LC_TIME", idx + 1));
 		}
 	    }
diff --git a/locale/programs/locfile.c b/locale/programs/locfile.c
index 17cd0209a4..928048b377 100644
--- a/locale/programs/locfile.c
+++ b/locale/programs/locfile.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996-2004, 2005, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 1996-2004, 2005, 2006, 2008 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@gnu.org>, 1996.
 
@@ -779,7 +779,7 @@ handle_copy (struct linereader *ldfile, const struct charmap_t *charmap,
 
   now = lr_token (ldfile, charmap, result, NULL, verbose);
   if (now->tok != tok_string)
-    lr_error (ldfile, _("expect string argument for `copy'"));
+    lr_error (ldfile, _("expecting string argument for `copy'"));
   else if (!ignore_content)
     {
       if (now->val.str.startmb == NULL)
diff --git a/locale/setlocale.c b/locale/setlocale.c
index c1b8c3faec..767a5aab6b 100644
--- a/locale/setlocale.c
+++ b/locale/setlocale.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1992, 1995-2000, 2002, 2003, 2004, 2006
+/* Copyright (C) 1991, 1992, 1995-2000, 2002, 2003, 2004, 2006, 2008
    Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
@@ -123,7 +123,7 @@ static void (*const _nl_category_postload[]) (void) =
 
 
 /* Lock for protecting global data.  */
-__libc_lock_define_initialized (, __libc_setlocale_lock attribute_hidden)
+__libc_rwlock_define_initialized (, __libc_setlocale_lock attribute_hidden)
 
 /* Defined in loadmsgcat.c.  */
 extern int _nl_msg_cat_cntr;
@@ -314,7 +314,7 @@ setlocale (int category, const char *locale)
 	}
 
       /* Protect global data.  */
-      __libc_lock_lock (__libc_setlocale_lock);
+      __libc_rwlock_wrlock (__libc_setlocale_lock);
 
       /* Load the new data for each category.  */
       while (category-- > 0)
@@ -381,7 +381,7 @@ setlocale (int category, const char *locale)
 	    free ((char *) newnames[category]);
 
       /* Critical section left.  */
-      __libc_lock_unlock (__libc_setlocale_lock);
+      __libc_rwlock_unlock (__libc_setlocale_lock);
 
       /* Free the resources (the locale path variable).  */
       free (locale_path);
@@ -394,7 +394,7 @@ setlocale (int category, const char *locale)
       const char *newname[1] = { locale };
 
       /* Protect global data.  */
-      __libc_lock_lock (__libc_setlocale_lock);
+      __libc_rwlock_wrlock (__libc_setlocale_lock);
 
       if (CATEGORY_USED (category))
 	{
@@ -446,7 +446,7 @@ setlocale (int category, const char *locale)
 	}
 
       /* Critical section left.  */
-      __libc_lock_unlock (__libc_setlocale_lock);
+      __libc_rwlock_unlock (__libc_setlocale_lock);
 
       /* Free the resources (the locale path variable.  */
       free (locale_path);
diff --git a/localedata/ChangeLog b/localedata/ChangeLog
index 976eb470e8..52cb387c98 100644
--- a/localedata/ChangeLog
+++ b/localedata/ChangeLog
@@ -1,3 +1,26 @@
+2008-04-07  Ulrich Drepper  <drepper@redhat.com>
+
+	[BZ #6021]
+	* locales/es_ES: Fix p_cs_precedes and n_cs_precedes.
+	Use common collation definition.
+
+	[BZ #6004]
+	* locales/iso14651_t1_common: Fix first weight for U+1E60, U+1E62,
+	U+1E64, U+1E66, and U+1E68.
+	Patch by Jesse Thilo <unixweenie@gmail.com>.
+
+	[BZ #5478]
+	* locales/hu_HU: Fix name_fmt.
+
+2008-03-31  Ulrich Drepper  <drepper@redhat.com>
+
+	* locales/iso14651_t1_common: Add support for Gujarati script.
+	Patch by Pravin Satpute <psatpute@redhat.com>.
+
+2008-03-30  Jakub Jelinek  <jakub@redhat.com>
+
+	* Makefile (LOCALES): Add ja_JP.UTF-8.
+
 2008-03-23  Ulrich Drepper  <drepper@redhat.com>
 
 	* locales/iso14651_t1_common: Add support for Devanagari script.
diff --git a/localedata/Makefile b/localedata/Makefile
index 8d51b5a4d8..d3c5e7e9b0 100644
--- a/localedata/Makefile
+++ b/localedata/Makefile
@@ -133,7 +133,8 @@ LOCALES := de_DE.ISO-8859-1 de_DE.UTF-8 en_US.ANSI_X3.4-1968 \
 	   en_US.ISO-8859-1 ja_JP.EUC-JP da_DK.ISO-8859-1 \
 	   hr_HR.ISO-8859-2 sv_SE.ISO-8859-1 ja_JP.SJIS fr_FR.ISO-8859-1 \
 	   vi_VN.TCVN5712-1 nb_NO.ISO-8859-1 nn_NO.ISO-8859-1 \
-	   tr_TR.UTF-8 cs_CZ.UTF-8 zh_TW.EUC-TW fa_IR.UTF-8 fr_FR.UTF-8
+	   tr_TR.UTF-8 cs_CZ.UTF-8 zh_TW.EUC-TW fa_IR.UTF-8 fr_FR.UTF-8 \
+	   ja_JP.UTF-8
 LOCALE_SRCS := $(shell echo "$(LOCALES)"|sed 's/\([^ .]*\)[^ ]*/\1/g')
 CHARMAPS := $(shell echo "$(LOCALES)" | \
 		    sed -e 's/[^ .]*[.]\([^ ]*\)/\1/g' -e s/SJIS/SHIFT_JIS/g)
diff --git a/localedata/locales/es_ES b/localedata/locales/es_ES
index feefeec788..01e13dfc75 100644
--- a/localedata/locales/es_ES
+++ b/localedata/locales/es_ES
@@ -48,2068 +48,8 @@ category  "es_ES:2000";LC_TELEPHONE
 END LC_IDENTIFICATION
 
 LC_COLLATE
-
-% Base collation scheme: 1994-03-22
-
-% Ordering algorithm:
-%  1. Spaces and hyphen (but not soft
-%     hyphen) before punctuation
-%     characters, punctuation characters
-%     before numbers,
-%     numbers before letters.
-%  2. Letters with diacritical marks are
-%     members of equivalence classes
-%  3. A distinction is made with regards
-%     to case as noted below.
-%  4. Special characters are ignored
-%     when comparing letters, but then
-%     they are considered
-%  5. The alphabets are sorted in order
-%     of first appearance in ISO 10646:
-%     Latin, Greek, Cyrillic, etc.
-%
-% According to Greek specifications,
-% the steps 2. and 3. above are reversed
-% for the Greek script
-
-% collating symbols
-
-% The collating symbol naming is
-% mostly taken from ISO 10646-1,
-% for example the case and accent
-% names are from this standard.
-
-collating-symbol <CAPITAL>
-collating-symbol <CAPITAL-SMALL>
-collating-symbol <SMALL-CAPITAL>
-collating-symbol <SMALL>
-
-% <CAPITAL-SMALL> and <SMALL-CAPITAL>
-% are for cases like Danish <U0041><U0061>
-% and Spanish <U0043><U0068> being treated
-% as one letter.
-
-% The <a8> ...... <z8> collating
-% symbols have defined weights as
-% the last character in a group of
-% Latin letters. They are used
-% to specify deltas by locales using
-% a locale as the default ordering
-% and by "replace-after" statements
-% specifying the changed placement
-% in an ordering of a character.
-
-collating-symbol <a8>
-collating-symbol <b8>
-collating-symbol <c8>
-collating-symbol <d8>
-collating-symbol <e8>
-collating-symbol <f8>
-collating-symbol <g8>
-collating-symbol <h8>
-collating-symbol <i8>
-collating-symbol <j8>
-collating-symbol <k8>
-collating-symbol <l8>
-collating-symbol <m8>
-collating-symbol <n8>
-collating-symbol <o8>
-collating-symbol <p8>
-collating-symbol <q8>
-collating-symbol <r8>
-collating-symbol <s8>
-collating-symbol <t8>
-collating-symbol <u8>
-collating-symbol <v8>
-collating-symbol <w8>
-collating-symbol <x8>
-collating-symbol <y8>
-collating-symbol <z8>
-
-collating-symbol <NONE>
-collating-symbol <ACUTE>
-collating-symbol <ACUTE+DOT>
-collating-symbol <GRAVE>
-collating-symbol <DOUBLE-GRAVE>
-collating-symbol <BREVE>
-collating-symbol <BREVE+ACUTE>
-collating-symbol <BREVE+GRAVE>
-collating-symbol <BREVE+MACRON>
-collating-symbol <BREVE+HOOK>
-collating-symbol <BREVE+TILDE>
-collating-symbol <BREVE+DOT-BELOW>
-collating-symbol <BREVE-BELOW>
-collating-symbol <INVERTED-BREVE>
-collating-symbol <CIRCUMFLEX>
-collating-symbol <CIRCUMFLEX+ACUTE>
-collating-symbol <CIRCUMFLEX+GRAVE>
-collating-symbol <CIRCUMFLEX+HOOK>
-collating-symbol <CIRCUMFLEX+TILDE>
-collating-symbol <CIRCUMFLEX+DOT-BELOW>
-collating-symbol <CARON>
-collating-symbol <CARON+DIAERESIS>
-collating-symbol <CARON+DOT>
-collating-symbol <RING>
-collating-symbol <RING+ACUTE>
-collating-symbol <RING-BELOW>
-collating-symbol <DIAERESIS>
-collating-symbol <DIAERESIS+MACRON>
-collating-symbol <DIAERESIS+ACUTE>
-collating-symbol <DIAERESIS+GRAVE>
-collating-symbol <DIAERESIS+CARON>
-collating-symbol <DOUBLE-ACUTE>
-collating-symbol <HOOK>
-collating-symbol <TILDE>
-collating-symbol <TILDE+ACUTE>
-collating-symbol <TILDE+DIAERESIS>
-collating-symbol <TILDE-BELOW>
-collating-symbol <DOT>
-collating-symbol <DOT-BELOW>
-collating-symbol <DOT+DOT-BELOW>
-collating-symbol <STROKE>
-collating-symbol <STROKE+ACUTE>
-collating-symbol <CEDILLA>
-collating-symbol <CEDILLA+ACUTE>
-collating-symbol <CEDILLA+GRAVE>
-collating-symbol <CEDILLA+BREVE>
-collating-symbol <OGONEK>
-collating-symbol <OGONEK+MACRON>
-collating-symbol <MACRON>
-collating-symbol <MACRON+ACUTE>
-collating-symbol <MACRON+GRAVE>
-collating-symbol <MACRON+DIAERESIS>
-collating-symbol <MACRON+DIAERESIS-BELOW>
-collating-symbol <MACRON+DOT>
-collating-symbol <MACRON+DOT-BELOW>
-collating-symbol <MACRON+CIRCUMFLEX>
-collating-symbol <LINE-BELOW>
-collating-symbol <HORN>
-collating-symbol <HORN+ACUTE>
-collating-symbol <HORN+GRAVE>
-collating-symbol <HORN+HOOK>
-collating-symbol <HORN+TILDE>
-collating-symbol <HORN+DOT-BELOW>
-collating-symbol <PRECEDED-BY-APOSTROPHE>
-collating-symbol <GREEK>
-collating-symbol <TONOS>
-collating-symbol <DIALYTICA>
-collating-symbol <DIALYTICA+TONOS>
-collating-symbol <CYRILLIC>
-collating-symbol <HIRAGANA>
-collating-symbol <KATAKANA>
-collating-symbol <SPECIAL>
-
-% letter;accent;case;specials
-
-order_start forward;backward/
-            ;forward;position
-
-% <CAPITAL> or <SMALL> letters first:
-
-<SMALL>
-<SMALL-CAPITAL>
-<CAPITAL-SMALL>
-<CAPITAL>
-
-% Accents:
-
-<NONE>
-<ACUTE>
-<ACUTE+DOT>
-<GRAVE>
-<DOUBLE-GRAVE>
-<BREVE>
-<BREVE+ACUTE>
-<BREVE+GRAVE>
-<BREVE+MACRON>
-<BREVE+HOOK>
-<BREVE+TILDE>
-<BREVE+DOT-BELOW>
-<BREVE-BELOW>
-<INVERTED-BREVE>
-<CIRCUMFLEX>
-<CIRCUMFLEX+ACUTE>
-<CIRCUMFLEX+GRAVE>
-<CIRCUMFLEX+HOOK>
-<CIRCUMFLEX+TILDE>
-<CIRCUMFLEX+DOT-BELOW>
-<CARON>
-<CARON+DIAERESIS>
-<CARON+DOT>
-<RING>
-<RING+ACUTE>
-<RING-BELOW>
-<DIAERESIS>
-<DIAERESIS+MACRON>
-<DIAERESIS+ACUTE>
-<DIAERESIS+GRAVE>
-<DIAERESIS+CARON>
-<DOUBLE-ACUTE>
-<HOOK>
-<TILDE>
-<TILDE+ACUTE>
-<TILDE+DIAERESIS>
-<TILDE-BELOW>
-<DOT>
-<DOT-BELOW>
-<DOT+DOT-BELOW>
-<STROKE>
-<STROKE+ACUTE>
-<CEDILLA>
-<CEDILLA+ACUTE>
-<CEDILLA+GRAVE>
-<CEDILLA+BREVE>
-<OGONEK>
-<OGONEK+MACRON>
-<MACRON>
-<MACRON+ACUTE>
-<MACRON+GRAVE>
-<MACRON+DIAERESIS>
-<MACRON+DIAERESIS-BELOW>
-<MACRON+DOT>
-<MACRON+DOT-BELOW>
-<MACRON+CIRCUMFLEX>
-<LINE-BELOW>
-<HORN>
-<HORN+ACUTE>
-<HORN+GRAVE>
-<HORN+HOOK>
-<HORN+TILDE>
-<HORN+DOT-BELOW>
-<PRECEDED-BY-APOSTROPHE>
-<GREEK>
-<TONOS>
-<DIALYTICA>
-<DIALYTICA+TONOS>
-<CYRILLIC>
-<HIRAGANA>
-<KATAKANA>
-<SPECIAL>
-
-<U00A0>	<U00A0>;<U00A0>;<U00A0>;IGNORE
-<U0020>	IGNORE;IGNORE;IGNORE;<U0020>
-<U0009>	IGNORE;IGNORE;IGNORE;<U0009>
-<U000B>	IGNORE;IGNORE;IGNORE;<U000B>
-<U000D>	IGNORE;IGNORE;IGNORE;<U000D>
-<U000A>	IGNORE;IGNORE;IGNORE;<U000A>
-<U000C>	IGNORE;IGNORE;IGNORE;<U000C>
-<U005F>	IGNORE;IGNORE;IGNORE;<U005F>
-<U00AF>	IGNORE;IGNORE;IGNORE;<U00AF>
-<U00AD>	IGNORE;IGNORE;IGNORE;<U00AD>
-<U002D>	IGNORE;IGNORE;IGNORE;<U002D>
-<U002C>	IGNORE;IGNORE;IGNORE;<U002C>
-<U003B>	IGNORE;IGNORE;IGNORE;<U003B>
-<U003A>	IGNORE;IGNORE;IGNORE;<U003A>
-<U0021>	IGNORE;IGNORE;IGNORE;<U0021>
-<U00A1>	IGNORE;IGNORE;IGNORE;<U00A1>
-<U003F>	IGNORE;IGNORE;IGNORE;<U003F>
-<U00BF>	IGNORE;IGNORE;IGNORE;<U00BF>
-<U002F>	IGNORE;IGNORE;IGNORE;<U002F>
-<U002E>	IGNORE;IGNORE;IGNORE;<U002E>
-<U00B4>	IGNORE;IGNORE;IGNORE;<U00B4>
-<U0060>	IGNORE;IGNORE;IGNORE;<U0060>
-<U005E>	IGNORE;IGNORE;IGNORE;<U005E>
-<U00A8>	IGNORE;IGNORE;IGNORE;<U00A8>
-<U007E>	IGNORE;IGNORE;IGNORE;<U007E>
-<U00B7>	IGNORE;IGNORE;IGNORE;<U00B7>
-<U00B8>	IGNORE;IGNORE;IGNORE;<U00B8>
-<U0027>	IGNORE;IGNORE;IGNORE;<U0027>
-<U2018>	IGNORE;IGNORE;IGNORE;<U2018>
-<U2019>	IGNORE;IGNORE;IGNORE;<U2019>
-<U0022>	IGNORE;IGNORE;IGNORE;<U0022>
-<U201C>	IGNORE;IGNORE;IGNORE;<U201C>
-<U201D>	IGNORE;IGNORE;IGNORE;<U201D>
-<U00AB>	IGNORE;IGNORE;IGNORE;<U00AB>
-<U00BB>	IGNORE;IGNORE;IGNORE;<U00BB>
-<U0028>	IGNORE;IGNORE;IGNORE;<U0028>
-<U207D>	IGNORE;IGNORE;IGNORE;<U207D>
-<U0029>	IGNORE;IGNORE;IGNORE;<U0029>
-<U207E>	IGNORE;IGNORE;IGNORE;<U207E>
-<U005B>	IGNORE;IGNORE;IGNORE;<U005B>
-<U005D>	IGNORE;IGNORE;IGNORE;<U005D>
-<U007B>	IGNORE;IGNORE;IGNORE;<U007B>
-<U007D>	IGNORE;IGNORE;IGNORE;<U007D>
-<U00A7>	IGNORE;IGNORE;IGNORE;<U00A7>
-<U00B6>	IGNORE;IGNORE;IGNORE;<U00B6>
-<U00A9>	IGNORE;IGNORE;IGNORE;<U00A9>
-<U00AE>	IGNORE;IGNORE;IGNORE;<U00AE>
-<U0040>	IGNORE;IGNORE;IGNORE;<U0040>
-<U00A4>	IGNORE;IGNORE;IGNORE;<U00A4>
-<U00A2>	IGNORE;IGNORE;IGNORE;<U00A2>
-<U0024>	IGNORE;IGNORE;IGNORE;<U0024>
-<U00A3>	IGNORE;IGNORE;IGNORE;<U00A3>
-<U00A5>	IGNORE;IGNORE;IGNORE;<U00A5>
-<U002A>	IGNORE;IGNORE;IGNORE;<U002A>
-<U005C>	IGNORE;IGNORE;IGNORE;<U005C>
-<U0026>	IGNORE;IGNORE;IGNORE;<U0026>
-<U0023>	IGNORE;IGNORE;IGNORE;<U0023>
-<U0025>	IGNORE;IGNORE;IGNORE;<U0025>
-<U207B>	IGNORE;IGNORE;IGNORE;<U207B>
-<U002B>	IGNORE;IGNORE;IGNORE;<U002B>
-<U207A>	IGNORE;IGNORE;IGNORE;<U207A>
-<U00B1>	IGNORE;IGNORE;IGNORE;<U00B1>
-<U00F7>	IGNORE;IGNORE;IGNORE;<U00F7>
-<U00D7>	IGNORE;IGNORE;IGNORE;<U00D7>
-<U2260>	IGNORE;IGNORE;IGNORE;<U2260>
-<U003C>	IGNORE;IGNORE;IGNORE;<U003C>
-<U2264>	IGNORE;IGNORE;IGNORE;<U2264>
-<U003D>	IGNORE;IGNORE;IGNORE;<U003D>
-<U2265>	IGNORE;IGNORE;IGNORE;<U2265>
-<U003E>	IGNORE;IGNORE;IGNORE;<U003E>
-<U00AC>	IGNORE;IGNORE;IGNORE;<U00AC>
-<U007C>	IGNORE;IGNORE;IGNORE;<U007C>
-<U00A6>	IGNORE;IGNORE;IGNORE;<U00A6>
-<U00B0>	IGNORE;IGNORE;IGNORE;<U00B0>
-<U00B5>	IGNORE;IGNORE;IGNORE;<U00B5>
-<U02C7>	IGNORE;IGNORE;IGNORE;<U02C7>
-<U02D8>	IGNORE;IGNORE;IGNORE;<U02D8>
-<U02D9>	IGNORE;IGNORE;IGNORE;<U02D9>
-<U02DA>	IGNORE;IGNORE;IGNORE;<U02DA>
-<U02DB>	IGNORE;IGNORE;IGNORE;<U02DB>
-<U02DC>	IGNORE;IGNORE;IGNORE;<U02DC>
-<U02DD>	IGNORE;IGNORE;IGNORE;<U02DD>
-<U0374>	IGNORE;IGNORE;IGNORE;<U0374>
-<U0375>	IGNORE;IGNORE;IGNORE;<U0375>
-<U037A>	IGNORE;IGNORE;IGNORE;<U037A>
-<U037E>	IGNORE;IGNORE;IGNORE;<U037E>
-<U0384>	IGNORE;IGNORE;IGNORE;<U0384>
-<U0385>	IGNORE;IGNORE;IGNORE;<U0385>
-<U0387>	IGNORE;IGNORE;IGNORE;<U0387>
-<U03D0>	IGNORE;IGNORE;IGNORE;<U03D0>
-<U1FBF>	IGNORE;IGNORE;IGNORE;<U1FBF>
-<U1FC0>	IGNORE;IGNORE;IGNORE;<U1FC0>
-<U1FC1>	IGNORE;IGNORE;IGNORE;<U1FC1>
-<U1FCD>	IGNORE;IGNORE;IGNORE;<U1FCD>
-<U1FCE>	IGNORE;IGNORE;IGNORE;<U1FCE>
-<U1FCF>	IGNORE;IGNORE;IGNORE;<U1FCF>
-<U1FDD>	IGNORE;IGNORE;IGNORE;<U1FDD>
-<U1FDE>	IGNORE;IGNORE;IGNORE;<U1FDE>
-<U1FDF>	IGNORE;IGNORE;IGNORE;<U1FDF>
-<U1FED>	IGNORE;IGNORE;IGNORE;<U1FED>
-<U1FEF>	IGNORE;IGNORE;IGNORE;<U1FEF>
-<U1FFE>	IGNORE;IGNORE;IGNORE;<U1FFE>
-<U2002>	IGNORE;IGNORE;IGNORE;<U2002>
-<U2003>	IGNORE;IGNORE;IGNORE;<U2003>
-<U2004>	IGNORE;IGNORE;IGNORE;<U2004>
-<U2005>	IGNORE;IGNORE;IGNORE;<U2005>
-<U2006>	IGNORE;IGNORE;IGNORE;<U2006>
-<U200E>	IGNORE;IGNORE;IGNORE;<U200E>
-<U200F>	IGNORE;IGNORE;IGNORE;<U200F>
-<U2009>	IGNORE;IGNORE;IGNORE;<U2009>
-<U200A>	IGNORE;IGNORE;IGNORE;<U200A>
-<U2010>	IGNORE;IGNORE;IGNORE;<U2010>
-<U2013>	IGNORE;IGNORE;IGNORE;<U2013>
-<U2014>	IGNORE;IGNORE;IGNORE;<U2014>
-<U2015>	IGNORE;IGNORE;IGNORE;<U2015>
-<U2016>	IGNORE;IGNORE;IGNORE;<U2016>
-<U2017>	IGNORE;IGNORE;IGNORE;<U2017>
-<U201A>	IGNORE;IGNORE;IGNORE;<U201A>
-<U201B>	IGNORE;IGNORE;IGNORE;<U201B>
-<U201E>	IGNORE;IGNORE;IGNORE;<U201E>
-<U201F>	IGNORE;IGNORE;IGNORE;<U201F>
-<U2020>	IGNORE;IGNORE;IGNORE;<U2020>
-<U2021>	IGNORE;IGNORE;IGNORE;<U2021>
-<U2219>	IGNORE;IGNORE;IGNORE;<U2219>
-<U2025>	IGNORE;IGNORE;IGNORE;<U2025>
-<U2026>	IGNORE;IGNORE;IGNORE;<U2026>
-<U2030>	IGNORE;IGNORE;IGNORE;<U2030>
-<U2032>	IGNORE;IGNORE;IGNORE;<U2032>
-<U2033>	IGNORE;IGNORE;IGNORE;<U2033>
-<U2034>	IGNORE;IGNORE;IGNORE;<U2034>
-<U2035>	IGNORE;IGNORE;IGNORE;<U2035>
-<U2036>	IGNORE;IGNORE;IGNORE;<U2036>
-<U2037>	IGNORE;IGNORE;IGNORE;<U2037>
-<U2038>	IGNORE;IGNORE;IGNORE;<U2038>
-<U2039>	IGNORE;IGNORE;IGNORE;<U2039>
-<U203A>	IGNORE;IGNORE;IGNORE;<U203A>
-<U203B>	IGNORE;IGNORE;IGNORE;<U203B>
-<U203C>	IGNORE;IGNORE;IGNORE;<U203C>
-<U203E>	IGNORE;IGNORE;IGNORE;<U203E>
-<U207C>	IGNORE;IGNORE;IGNORE;<U207C>
-<U2080>	IGNORE;IGNORE;IGNORE;<U2080>
-<U2081>	IGNORE;IGNORE;IGNORE;<U2081>
-<U2082>	IGNORE;IGNORE;IGNORE;<U2082>
-<U2083>	IGNORE;IGNORE;IGNORE;<U2083>
-<U2084>	IGNORE;IGNORE;IGNORE;<U2084>
-<U2085>	IGNORE;IGNORE;IGNORE;<U2085>
-<U2086>	IGNORE;IGNORE;IGNORE;<U2086>
-<U2087>	IGNORE;IGNORE;IGNORE;<U2087>
-<U2088>	IGNORE;IGNORE;IGNORE;<U2088>
-<U2089>	IGNORE;IGNORE;IGNORE;<U2089>
-<U208A>	IGNORE;IGNORE;IGNORE;<U208A>
-<U208B>	IGNORE;IGNORE;IGNORE;<U208B>
-<U208C>	IGNORE;IGNORE;IGNORE;<U208C>
-<U208D>	IGNORE;IGNORE;IGNORE;<U208D>
-<U208E>	IGNORE;IGNORE;IGNORE;<U208E>
-<U20A3>	IGNORE;IGNORE;IGNORE;<U20A3>
-<U20A4>	IGNORE;IGNORE;IGNORE;<U20A4>
-<U20A7>	IGNORE;IGNORE;IGNORE;<U20A7>
-<U20A9>	IGNORE;IGNORE;IGNORE;<U20A9>
-<U2103>	IGNORE;IGNORE;IGNORE;<U2103>
-<U2105>	IGNORE;IGNORE;IGNORE;<U2105>
-<U2109>	IGNORE;IGNORE;IGNORE;<U2109>
-<U2116>	IGNORE;IGNORE;IGNORE;<U2116>
-<U2117>	IGNORE;IGNORE;IGNORE;<U2117>
-<U211E>	IGNORE;IGNORE;IGNORE;<U211E>
-<U2120>	IGNORE;IGNORE;IGNORE;<U2120>
-<U2122>	IGNORE;IGNORE;IGNORE;<U2122>
-<U2126>	IGNORE;IGNORE;IGNORE;<U2126>
-<U212B>	IGNORE;IGNORE;IGNORE;<U212B>
-<U2153>	IGNORE;IGNORE;IGNORE;<U2153>
-<U2154>	IGNORE;IGNORE;IGNORE;<U2154>
-<U2155>	IGNORE;IGNORE;IGNORE;<U2155>
-<U2156>	IGNORE;IGNORE;IGNORE;<U2156>
-<U2157>	IGNORE;IGNORE;IGNORE;<U2157>
-<U2158>	IGNORE;IGNORE;IGNORE;<U2158>
-<U2159>	IGNORE;IGNORE;IGNORE;<U2159>
-<U215A>	IGNORE;IGNORE;IGNORE;<U215A>
-<U2160>	IGNORE;IGNORE;IGNORE;<U2160>
-<U2161>	IGNORE;IGNORE;IGNORE;<U2161>
-<U2162>	IGNORE;IGNORE;IGNORE;<U2162>
-<U2163>	IGNORE;IGNORE;IGNORE;<U2163>
-<U2164>	IGNORE;IGNORE;IGNORE;<U2164>
-<U2165>	IGNORE;IGNORE;IGNORE;<U2165>
-<U2166>	IGNORE;IGNORE;IGNORE;<U2166>
-<U2167>	IGNORE;IGNORE;IGNORE;<U2167>
-<U2168>	IGNORE;IGNORE;IGNORE;<U2168>
-<U2169>	IGNORE;IGNORE;IGNORE;<U2169>
-<U216A>	IGNORE;IGNORE;IGNORE;<U216A>
-<U216B>	IGNORE;IGNORE;IGNORE;<U216B>
-<U216C>	IGNORE;IGNORE;IGNORE;<U216C>
-<U216D>	IGNORE;IGNORE;IGNORE;<U216D>
-<U216E>	IGNORE;IGNORE;IGNORE;<U216E>
-<U216F>	IGNORE;IGNORE;IGNORE;<U216F>
-<U2170>	IGNORE;IGNORE;IGNORE;<U2170>
-<U2171>	IGNORE;IGNORE;IGNORE;<U2171>
-<U2172>	IGNORE;IGNORE;IGNORE;<U2172>
-<U2173>	IGNORE;IGNORE;IGNORE;<U2173>
-<U2174>	IGNORE;IGNORE;IGNORE;<U2174>
-<U2175>	IGNORE;IGNORE;IGNORE;<U2175>
-<U2176>	IGNORE;IGNORE;IGNORE;<U2176>
-<U2177>	IGNORE;IGNORE;IGNORE;<U2177>
-<U2178>	IGNORE;IGNORE;IGNORE;<U2178>
-<U2179>	IGNORE;IGNORE;IGNORE;<U2179>
-<U217A>	IGNORE;IGNORE;IGNORE;<U217A>
-<U217B>	IGNORE;IGNORE;IGNORE;<U217B>
-<U217C>	IGNORE;IGNORE;IGNORE;<U217C>
-<U217D>	IGNORE;IGNORE;IGNORE;<U217D>
-<U217E>	IGNORE;IGNORE;IGNORE;<U217E>
-<U217F>	IGNORE;IGNORE;IGNORE;<U217F>
-<U2180>	IGNORE;IGNORE;IGNORE;<U2180>
-<U2181>	IGNORE;IGNORE;IGNORE;<U2181>
-<U2182>	IGNORE;IGNORE;IGNORE;<U2182>
-<U2191>	IGNORE;IGNORE;IGNORE;<U2191>
-<U2193>	IGNORE;IGNORE;IGNORE;<U2193>
-<U2194>	IGNORE;IGNORE;IGNORE;<U2194>
-<U2195>	IGNORE;IGNORE;IGNORE;<U2195>
-<U2196>	IGNORE;IGNORE;IGNORE;<U2196>
-<U2197>	IGNORE;IGNORE;IGNORE;<U2197>
-<U2198>	IGNORE;IGNORE;IGNORE;<U2198>
-<U2199>	IGNORE;IGNORE;IGNORE;<U2199>
-<U21A8>	IGNORE;IGNORE;IGNORE;<U21A8>
-<U21C0>	IGNORE;IGNORE;IGNORE;<U21C0>
-<U21D0>	IGNORE;IGNORE;IGNORE;<U21D0>
-<U21D2>	IGNORE;IGNORE;IGNORE;<U21D2>
-<U21D4>	IGNORE;IGNORE;IGNORE;<U21D4>
-<U2200>	IGNORE;IGNORE;IGNORE;<U2200>
-<U2202>	IGNORE;IGNORE;IGNORE;<U2202>
-<U2203>	IGNORE;IGNORE;IGNORE;<U2203>
-<U2205>	IGNORE;IGNORE;IGNORE;<U2205>
-<U2206>	IGNORE;IGNORE;IGNORE;<U2206>
-<U2207>	IGNORE;IGNORE;IGNORE;<U2207>
-<U2208>	IGNORE;IGNORE;IGNORE;<U2208>
-<U220B>	IGNORE;IGNORE;IGNORE;<U220B>
-<U220F>	IGNORE;IGNORE;IGNORE;<U220F>
-<U2211>	IGNORE;IGNORE;IGNORE;<U2211>
-<U2212>	IGNORE;IGNORE;IGNORE;<U2212>
-<U2213>	IGNORE;IGNORE;IGNORE;<U2213>
-<U2214>	IGNORE;IGNORE;IGNORE;<U2214>
-<U2044>	IGNORE;IGNORE;IGNORE;<U2044>
-<U2217>	IGNORE;IGNORE;IGNORE;<U2217>
-<U2218>	IGNORE;IGNORE;IGNORE;<U2218>
-<U2022>	IGNORE;IGNORE;IGNORE;<U2022>
-<U221A>	IGNORE;IGNORE;IGNORE;<U221A>
-<U221D>	IGNORE;IGNORE;IGNORE;<U221D>
-<U221E>	IGNORE;IGNORE;IGNORE;<U221E>
-<U221F>	IGNORE;IGNORE;IGNORE;<U221F>
-<U2220>	IGNORE;IGNORE;IGNORE;<U2220>
-<U2225>	IGNORE;IGNORE;IGNORE;<U2225>
-<U2227>	IGNORE;IGNORE;IGNORE;<U2227>
-<U2228>	IGNORE;IGNORE;IGNORE;<U2228>
-<U2229>	IGNORE;IGNORE;IGNORE;<U2229>
-<U222A>	IGNORE;IGNORE;IGNORE;<U222A>
-<U222B>	IGNORE;IGNORE;IGNORE;<U222B>
-<U222C>	IGNORE;IGNORE;IGNORE;<U222C>
-<U222E>	IGNORE;IGNORE;IGNORE;<U222E>
-<U2234>	IGNORE;IGNORE;IGNORE;<U2234>
-<U2235>	IGNORE;IGNORE;IGNORE;<U2235>
-<U2236>	IGNORE;IGNORE;IGNORE;<U2236>
-<U2237>	IGNORE;IGNORE;IGNORE;<U2237>
-<U223C>	IGNORE;IGNORE;IGNORE;<U223C>
-<U223E>	IGNORE;IGNORE;IGNORE;<U223E>
-<U2243>	IGNORE;IGNORE;IGNORE;<U2243>
-<U2245>	IGNORE;IGNORE;IGNORE;<U2245>
-<U2248>	IGNORE;IGNORE;IGNORE;<U2248>
-<U224C>	IGNORE;IGNORE;IGNORE;<U224C>
-<U2253>	IGNORE;IGNORE;IGNORE;<U2253>
-<U2261>	IGNORE;IGNORE;IGNORE;<U2261>
-<U226A>	IGNORE;IGNORE;IGNORE;<U226A>
-<U226B>	IGNORE;IGNORE;IGNORE;<U226B>
-<U226E>	IGNORE;IGNORE;IGNORE;<U226E>
-<U226F>	IGNORE;IGNORE;IGNORE;<U226F>
-<U2282>	IGNORE;IGNORE;IGNORE;<U2282>
-<U2283>	IGNORE;IGNORE;IGNORE;<U2283>
-<U2286>	IGNORE;IGNORE;IGNORE;<U2286>
-<U2287>	IGNORE;IGNORE;IGNORE;<U2287>
-<U2299>	IGNORE;IGNORE;IGNORE;<U2299>
-<U229A>	IGNORE;IGNORE;IGNORE;<U229A>
-<U22A5>	IGNORE;IGNORE;IGNORE;<U22A5>
-<U22C5>	IGNORE;IGNORE;IGNORE;<U22C5>
-<U22EE>	IGNORE;IGNORE;IGNORE;<U22EE>
-<U2302>	IGNORE;IGNORE;IGNORE;<U2302>
-<U2308>	IGNORE;IGNORE;IGNORE;<U2308>
-<U2309>	IGNORE;IGNORE;IGNORE;<U2309>
-<U230A>	IGNORE;IGNORE;IGNORE;<U230A>
-<U230B>	IGNORE;IGNORE;IGNORE;<U230B>
-<U2310>	IGNORE;IGNORE;IGNORE;<U2310>
-<U2312>	IGNORE;IGNORE;IGNORE;<U2312>
-<U2315>	IGNORE;IGNORE;IGNORE;<U2315>
-<U2320>	IGNORE;IGNORE;IGNORE;<U2320>
-<U2321>	IGNORE;IGNORE;IGNORE;<U2321>
-<U2423>	IGNORE;IGNORE;IGNORE;<U2423>
-<U2440>	IGNORE;IGNORE;IGNORE;<U2440>
-<U2441>	IGNORE;IGNORE;IGNORE;<U2441>
-<U2442>	IGNORE;IGNORE;IGNORE;<U2442>
-<U2443>	IGNORE;IGNORE;IGNORE;<U2443>
-<U2446>	IGNORE;IGNORE;IGNORE;<U2446>
-<U2447>	IGNORE;IGNORE;IGNORE;<U2447>
-<U2448>	IGNORE;IGNORE;IGNORE;<U2448>
-<U2449>	IGNORE;IGNORE;IGNORE;<U2449>
-<U2460>	IGNORE;IGNORE;IGNORE;<U2460>
-<U2461>	IGNORE;IGNORE;IGNORE;<U2461>
-<U2462>	IGNORE;IGNORE;IGNORE;<U2462>
-<U2463>	IGNORE;IGNORE;IGNORE;<U2463>
-<U2464>	IGNORE;IGNORE;IGNORE;<U2464>
-<U2465>	IGNORE;IGNORE;IGNORE;<U2465>
-<U2466>	IGNORE;IGNORE;IGNORE;<U2466>
-<U2467>	IGNORE;IGNORE;IGNORE;<U2467>
-<U2468>	IGNORE;IGNORE;IGNORE;<U2468>
-<U2469>	IGNORE;IGNORE;IGNORE;<U2469>
-<U246A>	IGNORE;IGNORE;IGNORE;<U246A>
-<U246B>	IGNORE;IGNORE;IGNORE;<U246B>
-<U246C>	IGNORE;IGNORE;IGNORE;<U246C>
-<U246D>	IGNORE;IGNORE;IGNORE;<U246D>
-<U246E>	IGNORE;IGNORE;IGNORE;<U246E>
-<U246F>	IGNORE;IGNORE;IGNORE;<U246F>
-<U2470>	IGNORE;IGNORE;IGNORE;<U2470>
-<U2471>	IGNORE;IGNORE;IGNORE;<U2471>
-<U2472>	IGNORE;IGNORE;IGNORE;<U2472>
-<U2473>	IGNORE;IGNORE;IGNORE;<U2473>
-<U2474>	IGNORE;IGNORE;IGNORE;<U2474>
-<U2475>	IGNORE;IGNORE;IGNORE;<U2475>
-<U2476>	IGNORE;IGNORE;IGNORE;<U2476>
-<U2477>	IGNORE;IGNORE;IGNORE;<U2477>
-<U2478>	IGNORE;IGNORE;IGNORE;<U2478>
-<U2479>	IGNORE;IGNORE;IGNORE;<U2479>
-<U247A>	IGNORE;IGNORE;IGNORE;<U247A>
-<U247B>	IGNORE;IGNORE;IGNORE;<U247B>
-<U247C>	IGNORE;IGNORE;IGNORE;<U247C>
-<U247D>	IGNORE;IGNORE;IGNORE;<U247D>
-<U247E>	IGNORE;IGNORE;IGNORE;<U247E>
-<U247F>	IGNORE;IGNORE;IGNORE;<U247F>
-<U2480>	IGNORE;IGNORE;IGNORE;<U2480>
-<U2481>	IGNORE;IGNORE;IGNORE;<U2481>
-<U2482>	IGNORE;IGNORE;IGNORE;<U2482>
-<U2483>	IGNORE;IGNORE;IGNORE;<U2483>
-<U2484>	IGNORE;IGNORE;IGNORE;<U2484>
-<U2485>	IGNORE;IGNORE;IGNORE;<U2485>
-<U2486>	IGNORE;IGNORE;IGNORE;<U2486>
-<U2487>	IGNORE;IGNORE;IGNORE;<U2487>
-<U2488>	IGNORE;IGNORE;IGNORE;<U2488>
-<U2489>	IGNORE;IGNORE;IGNORE;<U2489>
-<U248A>	IGNORE;IGNORE;IGNORE;<U248A>
-<U248B>	IGNORE;IGNORE;IGNORE;<U248B>
-<U248C>	IGNORE;IGNORE;IGNORE;<U248C>
-<U248D>	IGNORE;IGNORE;IGNORE;<U248D>
-<U248E>	IGNORE;IGNORE;IGNORE;<U248E>
-<U248F>	IGNORE;IGNORE;IGNORE;<U248F>
-<U2490>	IGNORE;IGNORE;IGNORE;<U2490>
-<U2491>	IGNORE;IGNORE;IGNORE;<U2491>
-<U2492>	IGNORE;IGNORE;IGNORE;<U2492>
-<U2493>	IGNORE;IGNORE;IGNORE;<U2493>
-<U2494>	IGNORE;IGNORE;IGNORE;<U2494>
-<U2495>	IGNORE;IGNORE;IGNORE;<U2495>
-<U2496>	IGNORE;IGNORE;IGNORE;<U2496>
-<U2497>	IGNORE;IGNORE;IGNORE;<U2497>
-<U2498>	IGNORE;IGNORE;IGNORE;<U2498>
-<U2499>	IGNORE;IGNORE;IGNORE;<U2499>
-<U249A>	IGNORE;IGNORE;IGNORE;<U249A>
-<U249B>	IGNORE;IGNORE;IGNORE;<U249B>
-<U24EA>	IGNORE;IGNORE;IGNORE;<U24EA>
-<U2500>	IGNORE;IGNORE;IGNORE;<U2500>
-<U2550>	IGNORE;IGNORE;IGNORE;<U2550>
-<U2502>	IGNORE;IGNORE;IGNORE;<U2502>
-<U2551>	IGNORE;IGNORE;IGNORE;<U2551>
-<U2504>	IGNORE;IGNORE;IGNORE;<U2504>
-<U2505>	IGNORE;IGNORE;IGNORE;<U2505>
-<U2506>	IGNORE;IGNORE;IGNORE;<U2506>
-<U2507>	IGNORE;IGNORE;IGNORE;<U2507>
-<U2508>	IGNORE;IGNORE;IGNORE;<U2508>
-<U2509>	IGNORE;IGNORE;IGNORE;<U2509>
-<U250A>	IGNORE;IGNORE;IGNORE;<U250A>
-<U250B>	IGNORE;IGNORE;IGNORE;<U250B>
-<U250C>	IGNORE;IGNORE;IGNORE;<U250C>
-<U2552>	IGNORE;IGNORE;IGNORE;<U2552>
-<U2553>	IGNORE;IGNORE;IGNORE;<U2553>
-<U2554>	IGNORE;IGNORE;IGNORE;<U2554>
-<U2510>	IGNORE;IGNORE;IGNORE;<U2510>
-<U2555>	IGNORE;IGNORE;IGNORE;<U2555>
-<U2556>	IGNORE;IGNORE;IGNORE;<U2556>
-<U2557>	IGNORE;IGNORE;IGNORE;<U2557>
-<U2514>	IGNORE;IGNORE;IGNORE;<U2514>
-<U2558>	IGNORE;IGNORE;IGNORE;<U2558>
-<U2559>	IGNORE;IGNORE;IGNORE;<U2559>
-<U255A>	IGNORE;IGNORE;IGNORE;<U255A>
-<U2518>	IGNORE;IGNORE;IGNORE;<U2518>
-<U255B>	IGNORE;IGNORE;IGNORE;<U255B>
-<U255C>	IGNORE;IGNORE;IGNORE;<U255C>
-<U255D>	IGNORE;IGNORE;IGNORE;<U255D>
-<U251C>	IGNORE;IGNORE;IGNORE;<U251C>
-<U255E>	IGNORE;IGNORE;IGNORE;<U255E>
-<U251E>	IGNORE;IGNORE;IGNORE;<U251E>
-<U251F>	IGNORE;IGNORE;IGNORE;<U251F>
-<U255F>	IGNORE;IGNORE;IGNORE;<U255F>
-<U2521>	IGNORE;IGNORE;IGNORE;<U2521>
-<U2522>	IGNORE;IGNORE;IGNORE;<U2522>
-<U2560>	IGNORE;IGNORE;IGNORE;<U2560>
-<U2524>	IGNORE;IGNORE;IGNORE;<U2524>
-<U2561>	IGNORE;IGNORE;IGNORE;<U2561>
-<U2526>	IGNORE;IGNORE;IGNORE;<U2526>
-<U2527>	IGNORE;IGNORE;IGNORE;<U2527>
-<U2562>	IGNORE;IGNORE;IGNORE;<U2562>
-<U2529>	IGNORE;IGNORE;IGNORE;<U2529>
-<U252A>	IGNORE;IGNORE;IGNORE;<U252A>
-<U2563>	IGNORE;IGNORE;IGNORE;<U2563>
-<U252C>	IGNORE;IGNORE;IGNORE;<U252C>
-<U252D>	IGNORE;IGNORE;IGNORE;<U252D>
-<U252E>	IGNORE;IGNORE;IGNORE;<U252E>
-<U2564>	IGNORE;IGNORE;IGNORE;<U2564>
-<U2565>	IGNORE;IGNORE;IGNORE;<U2565>
-<U2531>	IGNORE;IGNORE;IGNORE;<U2531>
-<U2532>	IGNORE;IGNORE;IGNORE;<U2532>
-<U2566>	IGNORE;IGNORE;IGNORE;<U2566>
-<U2534>	IGNORE;IGNORE;IGNORE;<U2534>
-<U2535>	IGNORE;IGNORE;IGNORE;<U2535>
-<U2536>	IGNORE;IGNORE;IGNORE;<U2536>
-<U2567>	IGNORE;IGNORE;IGNORE;<U2567>
-<U2568>	IGNORE;IGNORE;IGNORE;<U2568>
-<U2539>	IGNORE;IGNORE;IGNORE;<U2539>
-<U253A>	IGNORE;IGNORE;IGNORE;<U253A>
-<U2569>	IGNORE;IGNORE;IGNORE;<U2569>
-<U253C>	IGNORE;IGNORE;IGNORE;<U253C>
-<U253D>	IGNORE;IGNORE;IGNORE;<U253D>
-<U253E>	IGNORE;IGNORE;IGNORE;<U253E>
-<U256A>	IGNORE;IGNORE;IGNORE;<U256A>
-<U2540>	IGNORE;IGNORE;IGNORE;<U2540>
-<U2541>	IGNORE;IGNORE;IGNORE;<U2541>
-<U256B>	IGNORE;IGNORE;IGNORE;<U256B>
-<U2543>	IGNORE;IGNORE;IGNORE;<U2543>
-<U2544>	IGNORE;IGNORE;IGNORE;<U2544>
-<U2545>	IGNORE;IGNORE;IGNORE;<U2545>
-<U2546>	IGNORE;IGNORE;IGNORE;<U2546>
-<U2547>	IGNORE;IGNORE;IGNORE;<U2547>
-<U2548>	IGNORE;IGNORE;IGNORE;<U2548>
-<U2549>	IGNORE;IGNORE;IGNORE;<U2549>
-<U254A>	IGNORE;IGNORE;IGNORE;<U254A>
-<U256C>	IGNORE;IGNORE;IGNORE;<U256C>
-<U2571>	IGNORE;IGNORE;IGNORE;<U2571>
-<U2572>	IGNORE;IGNORE;IGNORE;<U2572>
-<U2580>	IGNORE;IGNORE;IGNORE;<U2580>
-<U2584>	IGNORE;IGNORE;IGNORE;<U2584>
-<U2588>	IGNORE;IGNORE;IGNORE;<U2588>
-<U258C>	IGNORE;IGNORE;IGNORE;<U258C>
-<U2590>	IGNORE;IGNORE;IGNORE;<U2590>
-<U2591>	IGNORE;IGNORE;IGNORE;<U2591>
-<U2592>	IGNORE;IGNORE;IGNORE;<U2592>
-<U2593>	IGNORE;IGNORE;IGNORE;<U2593>
-<U25A0>	IGNORE;IGNORE;IGNORE;<U25A0>
-<U25A1>	IGNORE;IGNORE;IGNORE;<U25A1>
-<U25A2>	IGNORE;IGNORE;IGNORE;<U25A2>
-<U25A3>	IGNORE;IGNORE;IGNORE;<U25A3>
-<U25A4>	IGNORE;IGNORE;IGNORE;<U25A4>
-<U25A5>	IGNORE;IGNORE;IGNORE;<U25A5>
-<U25A6>	IGNORE;IGNORE;IGNORE;<U25A6>
-<U25A7>	IGNORE;IGNORE;IGNORE;<U25A7>
-<U25A8>	IGNORE;IGNORE;IGNORE;<U25A8>
-<U25A9>	IGNORE;IGNORE;IGNORE;<U25A9>
-<U25AA>	IGNORE;IGNORE;IGNORE;<U25AA>
-<U25AC>	IGNORE;IGNORE;IGNORE;<U25AC>
-<U25AD>	IGNORE;IGNORE;IGNORE;<U25AD>
-<U25B2>	IGNORE;IGNORE;IGNORE;<U25B2>
-<U25B3>	IGNORE;IGNORE;IGNORE;<U25B3>
-<U25B7>	IGNORE;IGNORE;IGNORE;<U25B7>
-<U25BA>	IGNORE;IGNORE;IGNORE;<U25BA>
-<U25BC>	IGNORE;IGNORE;IGNORE;<U25BC>
-<U25BD>	IGNORE;IGNORE;IGNORE;<U25BD>
-<U25C1>	IGNORE;IGNORE;IGNORE;<U25C1>
-<U25C4>	IGNORE;IGNORE;IGNORE;<U25C4>
-<U25C6>	IGNORE;IGNORE;IGNORE;<U25C6>
-<U25C7>	IGNORE;IGNORE;IGNORE;<U25C7>
-<U25CA>	IGNORE;IGNORE;IGNORE;<U25CA>
-<U25CB>	IGNORE;IGNORE;IGNORE;<U25CB>
-<U25CE>	IGNORE;IGNORE;IGNORE;<U25CE>
-<U25CF>	IGNORE;IGNORE;IGNORE;<U25CF>
-<U25D0>	IGNORE;IGNORE;IGNORE;<U25D0>
-<U25D1>	IGNORE;IGNORE;IGNORE;<U25D1>
-<U25D8>	IGNORE;IGNORE;IGNORE;<U25D8>
-<U25D9>	IGNORE;IGNORE;IGNORE;<U25D9>
-<U25E2>	IGNORE;IGNORE;IGNORE;<U25E2>
-<U25E3>	IGNORE;IGNORE;IGNORE;<U25E3>
-<U25EF>	IGNORE;IGNORE;IGNORE;<U25EF>
-<U2605>	IGNORE;IGNORE;IGNORE;<U2605>
-<U2606>	IGNORE;IGNORE;IGNORE;<U2606>
-<U260E>	IGNORE;IGNORE;IGNORE;<U260E>
-<U260F>	IGNORE;IGNORE;IGNORE;<U260F>
-<U261C>	IGNORE;IGNORE;IGNORE;<U261C>
-<U261E>	IGNORE;IGNORE;IGNORE;<U261E>
-<U263A>	IGNORE;IGNORE;IGNORE;<U263A>
-<U263B>	IGNORE;IGNORE;IGNORE;<U263B>
-<U263C>	IGNORE;IGNORE;IGNORE;<U263C>
-<U2640>	IGNORE;IGNORE;IGNORE;<U2640>
-<U2642>	IGNORE;IGNORE;IGNORE;<U2642>
-<U2660>	IGNORE;IGNORE;IGNORE;<U2660>
-<U2661>	IGNORE;IGNORE;IGNORE;<U2661>
-<U2662>	IGNORE;IGNORE;IGNORE;<U2662>
-<U2663>	IGNORE;IGNORE;IGNORE;<U2663>
-<U2664>	IGNORE;IGNORE;IGNORE;<U2664>
-<U2665>	IGNORE;IGNORE;IGNORE;<U2665>
-<U2666>	IGNORE;IGNORE;IGNORE;<U2666>
-<U2667>	IGNORE;IGNORE;IGNORE;<U2667>
-<U2669>	IGNORE;IGNORE;IGNORE;<U2669>
-<U266A>	IGNORE;IGNORE;IGNORE;<U266A>
-<U266B>	IGNORE;IGNORE;IGNORE;<U266B>
-<U266C>	IGNORE;IGNORE;IGNORE;<U266C>
-<U266D>	IGNORE;IGNORE;IGNORE;<U266D>
-<U266E>	IGNORE;IGNORE;IGNORE;<U266E>
-<U266F>	IGNORE;IGNORE;IGNORE;<U266F>
-<U2713>	IGNORE;IGNORE;IGNORE;<U2713>
-<U2717>	IGNORE;IGNORE;IGNORE;<U2717>
-<U2720>	IGNORE;IGNORE;IGNORE;<U2720>
-<U3000>	IGNORE;IGNORE;IGNORE;<U3000>
-<U3001>	IGNORE;IGNORE;IGNORE;<U3001>
-<U3002>	IGNORE;IGNORE;IGNORE;<U3002>
-<U3003>	IGNORE;IGNORE;IGNORE;<U3003>
-<U3004>	IGNORE;IGNORE;IGNORE;<U3004>
-<U3005>	IGNORE;IGNORE;IGNORE;<U3005>
-<U3006>	IGNORE;IGNORE;IGNORE;<U3006>
-<U3007>	IGNORE;IGNORE;IGNORE;<U3007>
-<U300A>	IGNORE;IGNORE;IGNORE;<U300A>
-<U300B>	IGNORE;IGNORE;IGNORE;<U300B>
-<U300C>	IGNORE;IGNORE;IGNORE;<U300C>
-<U300D>	IGNORE;IGNORE;IGNORE;<U300D>
-<U300E>	IGNORE;IGNORE;IGNORE;<U300E>
-<U300F>	IGNORE;IGNORE;IGNORE;<U300F>
-<U3010>	IGNORE;IGNORE;IGNORE;<U3010>
-<U3011>	IGNORE;IGNORE;IGNORE;<U3011>
-<U3012>	IGNORE;IGNORE;IGNORE;<U3012>
-<U3013>	IGNORE;IGNORE;IGNORE;<U3013>
-<U3014>	IGNORE;IGNORE;IGNORE;<U3014>
-<U3015>	IGNORE;IGNORE;IGNORE;<U3015>
-<U3016>	IGNORE;IGNORE;IGNORE;<U3016>
-<U3017>	IGNORE;IGNORE;IGNORE;<U3017>
-<U301C>	IGNORE;IGNORE;IGNORE;<U301C>
-<U3020>	IGNORE;IGNORE;IGNORE;<U3020>
-<U309B>	IGNORE;IGNORE;IGNORE;<U309B>
-<U309C>	IGNORE;IGNORE;IGNORE;<U309C>
-<U309D>	IGNORE;IGNORE;IGNORE;<U309D>
-<U309E>	IGNORE;IGNORE;IGNORE;<U309E>
-<U30FB>	IGNORE;IGNORE;IGNORE;<U30FB>
-<U30FC>	IGNORE;IGNORE;IGNORE;<U30FC>
-<U30FD>	IGNORE;IGNORE;IGNORE;<U30FD>
-<U30FE>	IGNORE;IGNORE;IGNORE;<U30FE>
-<U321C>	IGNORE;IGNORE;IGNORE;<U321C>
-<U3220>	IGNORE;IGNORE;IGNORE;<U3220>
-<U3221>	IGNORE;IGNORE;IGNORE;<U3221>
-<U3222>	IGNORE;IGNORE;IGNORE;<U3222>
-<U3223>	IGNORE;IGNORE;IGNORE;<U3223>
-<U3224>	IGNORE;IGNORE;IGNORE;<U3224>
-<U3225>	IGNORE;IGNORE;IGNORE;<U3225>
-<U3226>	IGNORE;IGNORE;IGNORE;<U3226>
-<U3227>	IGNORE;IGNORE;IGNORE;<U3227>
-<U3228>	IGNORE;IGNORE;IGNORE;<U3228>
-<U3229>	IGNORE;IGNORE;IGNORE;<U3229>
-<U327F>	IGNORE;IGNORE;IGNORE;<U327F>
-<U33C2>	IGNORE;IGNORE;IGNORE;<U33C2>
-<U33D8>	IGNORE;IGNORE;IGNORE;<U33D8>
-<U0000>	IGNORE;IGNORE;IGNORE;<U0000>
-<U0001>	IGNORE;IGNORE;IGNORE;<U0001>
-<U0002>	IGNORE;IGNORE;IGNORE;<U0002>
-<U0003>	IGNORE;IGNORE;IGNORE;<U0003>
-<U0004>	IGNORE;IGNORE;IGNORE;<U0004>
-<U0005>	IGNORE;IGNORE;IGNORE;<U0005>
-<U0006>	IGNORE;IGNORE;IGNORE;<U0006>
-<U0007>	IGNORE;IGNORE;IGNORE;<U0007>
-<U0008>	IGNORE;IGNORE;IGNORE;<U0008>
-<U000E>	IGNORE;IGNORE;IGNORE;<U000E>
-<U000F>	IGNORE;IGNORE;IGNORE;<U000F>
-<U0010>	IGNORE;IGNORE;IGNORE;<U0010>
-<U0011>	IGNORE;IGNORE;IGNORE;<U0011>
-<U0012>	IGNORE;IGNORE;IGNORE;<U0012>
-<U0013>	IGNORE;IGNORE;IGNORE;<U0013>
-<U0014>	IGNORE;IGNORE;IGNORE;<U0014>
-<U0015>	IGNORE;IGNORE;IGNORE;<U0015>
-<U0016>	IGNORE;IGNORE;IGNORE;<U0016>
-<U0017>	IGNORE;IGNORE;IGNORE;<U0017>
-<U0018>	IGNORE;IGNORE;IGNORE;<U0018>
-<U0019>	IGNORE;IGNORE;IGNORE;<U0019>
-<U001A>	IGNORE;IGNORE;IGNORE;<U001A>
-<U001B>	IGNORE;IGNORE;IGNORE;<U001B>
-<U001C>	IGNORE;IGNORE;IGNORE;<U001C>
-<U001D>	IGNORE;IGNORE;IGNORE;<U001D>
-<U001E>	IGNORE;IGNORE;IGNORE;<U001E>
-<U001F>	IGNORE;IGNORE;IGNORE;<U001F>
-<U007F>	IGNORE;IGNORE;IGNORE;<U007F>
-<U0080>	IGNORE;IGNORE;IGNORE;<U0080>
-<U0081>	IGNORE;IGNORE;IGNORE;<U0081>
-<U0082>	IGNORE;IGNORE;IGNORE;<U0082>
-<U0083>	IGNORE;IGNORE;IGNORE;<U0083>
-<U0084>	IGNORE;IGNORE;IGNORE;<U0084>
-<U0085>	IGNORE;IGNORE;IGNORE;<U0085>
-<U0086>	IGNORE;IGNORE;IGNORE;<U0086>
-<U0087>	IGNORE;IGNORE;IGNORE;<U0087>
-<U0088>	IGNORE;IGNORE;IGNORE;<U0088>
-<U0089>	IGNORE;IGNORE;IGNORE;<U0089>
-<U008A>	IGNORE;IGNORE;IGNORE;<U008A>
-<U008B>	IGNORE;IGNORE;IGNORE;<U008B>
-<U008C>	IGNORE;IGNORE;IGNORE;<U008C>
-<U008D>	IGNORE;IGNORE;IGNORE;<U008D>
-<U008E>	IGNORE;IGNORE;IGNORE;<U008E>
-<U008F>	IGNORE;IGNORE;IGNORE;<U008F>
-<U0090>	IGNORE;IGNORE;IGNORE;<U0090>
-<U0091>	IGNORE;IGNORE;IGNORE;<U0091>
-<U0092>	IGNORE;IGNORE;IGNORE;<U0092>
-<U0093>	IGNORE;IGNORE;IGNORE;<U0093>
-<U0094>	IGNORE;IGNORE;IGNORE;<U0094>
-<U0095>	IGNORE;IGNORE;IGNORE;<U0095>
-<U0096>	IGNORE;IGNORE;IGNORE;<U0096>
-<U0097>	IGNORE;IGNORE;IGNORE;<U0097>
-<U0098>	IGNORE;IGNORE;IGNORE;<U0098>
-<U0099>	IGNORE;IGNORE;IGNORE;<U0099>
-<U009A>	IGNORE;IGNORE;IGNORE;<U009A>
-<U009B>	IGNORE;IGNORE;IGNORE;<U009B>
-<U009C>	IGNORE;IGNORE;IGNORE;<U009C>
-<U009D>	IGNORE;IGNORE;IGNORE;<U009D>
-<U009E>	IGNORE;IGNORE;IGNORE;<U009E>
-<U009F>	IGNORE;IGNORE;IGNORE;<U009F>
-<UE000>	IGNORE;IGNORE;IGNORE;<UE000>
-<UE001>	IGNORE;IGNORE;IGNORE;<UE001>
-<UE002>	IGNORE;IGNORE;IGNORE;<UE002>
-<U0301>	IGNORE;IGNORE;IGNORE;<U0301>
-<UE004>	IGNORE;IGNORE;IGNORE;<UE004>
-<UE005>	IGNORE;IGNORE;IGNORE;<UE005>
-<UE006>	IGNORE;IGNORE;IGNORE;<UE006>
-<UE007>	IGNORE;IGNORE;IGNORE;<UE007>
-<UE008>	IGNORE;IGNORE;IGNORE;<UE008>
-<UE009>	IGNORE;IGNORE;IGNORE;<UE009>
-<UE00A>	IGNORE;IGNORE;IGNORE;<UE00A>
-<UE00B>	IGNORE;IGNORE;IGNORE;<UE00B>
-<UE00C>	IGNORE;IGNORE;IGNORE;<UE00C>
-<UE00D>	IGNORE;IGNORE;IGNORE;<UE00D>
-<UE00E>	IGNORE;IGNORE;IGNORE;<UE00E>
-<UE00F>	IGNORE;IGNORE;IGNORE;<UE00F>
-<"=>	IGNORE;IGNORE;IGNORE;<"=>
-<UE011>	IGNORE;IGNORE;IGNORE;<UE011>
-<UE012>	IGNORE;IGNORE;IGNORE;<UE012>
-<UE013>	IGNORE;IGNORE;IGNORE;<UE013>
-<UE014>	IGNORE;IGNORE;IGNORE;<UE014>
-<UE015>	IGNORE;IGNORE;IGNORE;<UE015>
-<UE017>	IGNORE;IGNORE;IGNORE;<UE017>
-<UE018>	IGNORE;IGNORE;IGNORE;<UE018>
-<UE019>	IGNORE;IGNORE;IGNORE;<UE019>
-UNDEFINED	IGNORE;IGNORE;IGNORE
-
-<U0030>	<U0030>;<U0030>;IGNORE;IGNORE
-<U2070>	<U0030>;<U2070>;IGNORE;IGNORE
-<U215B>	<U0030>;<U215B>;IGNORE;IGNORE
-<U00BC>	<U0030>;<U00BC>;IGNORE;IGNORE
-<U215C>	<U0030>;<U215C>;IGNORE;IGNORE
-<U00BD>	<U0030>;<U00BD>;IGNORE;IGNORE
-<U215D>	<U0030>;<U215D>;IGNORE;IGNORE
-<U00BE>	<U0030>;<U00BE>;IGNORE;IGNORE
-<U215E>	<U0030>;<U215E>;IGNORE;IGNORE
-<U0031>	<U0031>;<U0031>;IGNORE;IGNORE
-<U0032>	<U0032>;<U0032>;IGNORE;IGNORE
-<U0033>	<U0033>;<U0033>;IGNORE;IGNORE
-<U0034>	<U0034>;<U0034>;IGNORE;IGNORE
-<U0035>	<U0035>;<U0035>;IGNORE;IGNORE
-<U0036>	<U0036>;<U0036>;IGNORE;IGNORE
-<U0037>	<U0037>;<U0037>;IGNORE;IGNORE
-<U0038>	<U0038>;<U0038>;IGNORE;IGNORE
-<U0039>	<U0039>;<U0039>;IGNORE;IGNORE
-<U00B9>	<U0031>;<U00B9>;IGNORE;IGNORE
-<U00B2>	<U0032>;<U00B2>;IGNORE;IGNORE
-<U00B3>	<U0033>;<U00B3>;IGNORE;IGNORE
-<U2074>	<U0034>;<U2074>;IGNORE;IGNORE
-<U2075>	<U0035>;<U2075>;IGNORE;IGNORE
-<U2076>	<U0036>;<U2076>;IGNORE;IGNORE
-<U2077>	<U0037>;<U2077>;IGNORE;IGNORE
-<U2078>	<U0038>;<U2078>;IGNORE;IGNORE
-<U2079>	<U0039>;<U2079>;IGNORE;IGNORE
-<U0041>	<U0041>;<NONE>;<CAPITAL>;IGNORE
-<U0061>	<U0041>;<NONE>;<SMALL>;IGNORE
-<U00AA>	<U0041>;<NONE>;<U00AA>;IGNORE
-<U00C1>	<U0041>;<ACUTE>;<CAPITAL>;IGNORE
-<U00E1>	<U0041>;<ACUTE>;<SMALL>;IGNORE
-<U00C0>	<U0041>;<GRAVE>;<CAPITAL>;IGNORE
-<U00E0>	<U0041>;<GRAVE>;<SMALL>;IGNORE
-<U0200>	<U0041>;<DOUBLE-GRAVE>;<CAPITAL>;IGNORE
-<U0201>	<U0041>;<DOUBLE-GRAVE>;<SMALL>;IGNORE
-<U0102>	<U0041>;<BREVE>;<CAPITAL>;IGNORE
-<U0103>	<U0041>;<BREVE>;<SMALL>;IGNORE
-<U1EAE>	<U0041>;<BREVE+ACUTE>;<CAPITAL>;IGNORE
-<U1EAF>	<U0041>;<BREVE+ACUTE>;<SMALL>;IGNORE
-<U1EB0>	<U0041>;<BREVE+GRAVE>;<CAPITAL>;IGNORE
-<U1EB1>	<U0041>;<BREVE+GRAVE>;<SMALL>;IGNORE
-<U1EB2>	<U0041>;<BREVE+HOOK>;<CAPITAL>;IGNORE
-<U1EB3>	<U0041>;<BREVE+HOOK>;<SMALL>;IGNORE
-<U1EB4>	<U0041>;<BREVE+TILDE>;<CAPITAL>;IGNORE
-<U1EB5>	<U0041>;<BREVE+TILDE>;<SMALL>;IGNORE
-<U1EB6>	<U0041>;<BREVE+DOT-BELOW>;<CAPITAL>;IGNORE
-<U1EB7>	<U0041>;<BREVE+DOT-BELOW>;<SMALL>;IGNORE
-<U0202>	<U0041>;<INVERTED-BREVE>;<CAPITAL>;IGNORE
-<U0203>	<U0041>;<INVERTED-BREVE>;<SMALL>;IGNORE
-<U00C2>	<U0041>;<CIRCUMFLEX>;<CAPITAL>;IGNORE
-<U00E2>	<U0041>;<CIRCUMFLEX>;<SMALL>;IGNORE
-<U1EA4>	<U0041>;<CIRCUMFLEX+ACUTE>;<CAPITAL>;IGNORE
-<U1EA5>	<U0041>;<CIRCUMFLEX+ACUTE>;<SMALL>;IGNORE
-<U1EA6>	<U0041>;<CIRCUMFLEX+GRAVE>;<CAPITAL>;IGNORE
-<U1EA7>	<U0041>;<CIRCUMFLEX+GRAVE>;<SMALL>;IGNORE
-<U1EA8>	<U0041>;<CIRCUMFLEX+HOOK>;<CAPITAL>;IGNORE
-<U1EA9>	<U0041>;<CIRCUMFLEX+HOOK>;<SMALL>;IGNORE
-<U1EAA>	<U0041>;<CIRCUMFLEX+TILDE>;<CAPITAL>;IGNORE
-<U1EAB>	<U0041>;<CIRCUMFLEX+TILDE>;<SMALL>;IGNORE
-<U1EAC>	<U0041>;<CIRCUMFLEX+DOT-BELOW>;<CAPITAL>;IGNORE
-<U1EAD>	<U0041>;<CIRCUMFLEX+DOT-BELOW>;<SMALL>;IGNORE
-<U01CD>	<U0041>;<CARON>;<CAPITAL>;IGNORE
-<U01CE>	<U0041>;<CARON>;<SMALL>;IGNORE
-<U00C5>	<U0041>;<RING>;<CAPITAL>;IGNORE
-<U00E5>	<U0041>;<RING>;<SMALL>;IGNORE
-<U01FA>	<U0041>;<RING+ACUTE>;<CAPITAL>;IGNORE
-<U01FB>	<U0041>;<RING+ACUTE>;<SMALL>;IGNORE
-<U1E00>	<U0041>;<RING-BELOW>;<CAPITAL>;IGNORE
-<U1E01>	<U0041>;<RING-BELOW>;<SMALL>;IGNORE
-<U00C4>	<U0041>;<DIAERESIS>;<CAPITAL>;IGNORE
-<U00E4>	<U0041>;<DIAERESIS>;<SMALL>;IGNORE
-<U01DE>	<U0041>;<DIAERESIS+MACRON>;<CAPITAL>;IGNORE
-<U01DF>	<U0041>;<DIAERESIS+MACRON>;<SMALL>;IGNORE
-<U1EA2>	<U0041>;<HOOK>;<CAPITAL>;IGNORE
-<U1EA3>	<U0041>;<HOOK>;<SMALL>;IGNORE
-<U00C3>	<U0041>;<TILDE>;<CAPITAL>;IGNORE
-<U00E3>	<U0041>;<TILDE>;<SMALL>;IGNORE
-<U1EA0>	<U0041>;<DOT-BELOW>;<CAPITAL>;IGNORE
-<U1EA1>	<U0041>;<DOT-BELOW>;<SMALL>;IGNORE
-<U0104>	<U0041>;<OGONEK>;<CAPITAL>;IGNORE
-<U0105>	<U0041>;<OGONEK>;<SMALL>;IGNORE
-<U0100>	<U0041>;<MACRON>;<CAPITAL>;IGNORE
-<U0101>	<U0041>;<MACRON>;<SMALL>;IGNORE
-<U01E0>	<U0041>;<MACRON+DOT>;<CAPITAL>;IGNORE
-<U01E1>	<U0041>;<MACRON+DOT>;<SMALL>;IGNORE
-<a8>
-<U00C6>	"<U0041><U0045>";"<U00C6><U00C6>";"<CAPITAL><CAPITAL>";IGNORE
-<U00E6>	"<U0041><U0045>";"<U00C6><U00C6>";"<SMALL><SMALL>";IGNORE
-<U01FC>	"<U0041><U0045>";"<U01FC><U01FC>";"<CAPITAL><CAPITAL>";IGNORE
-<U01FD>	"<U0041><U0045>";"<U01FC><U01FC>";"<SMALL><SMALL>";IGNORE
-<U01E2>	"<U0041><U0045>";"<U01E2><U01E2>";"<CAPITAL><CAPITAL>";IGNORE
-<U01E3>	"<U0041><U0045>";"<U01E2><U01E2>";"<SMALL><SMALL>";IGNORE
-<U0042>	<U0042>;<NONE>;<CAPITAL>;IGNORE
-<U0062>	<U0042>;<NONE>;<SMALL>;IGNORE
-<U1E02>	<U0042>;<DOT>;<CAPITAL>;IGNORE
-<U1E03>	<U0042>;<DOT>;<SMALL>;IGNORE
-<U1E04>	<U0042>;<DOT-BELOW>;<CAPITAL>;IGNORE
-<U1E05>	<U0042>;<DOT-BELOW>;<SMALL>;IGNORE
-<U1E06>	<U0042>;<LINE-BELOW>;<CAPITAL>;IGNORE
-<U1E07>	<U0042>;<LINE-BELOW>;<SMALL>;IGNORE
-<b8>
-<U0043>	<U0043>;<NONE>;<CAPITAL>;IGNORE
-<U0063>	<U0043>;<NONE>;<SMALL>;IGNORE
-<U0106>	<U0043>;<ACUTE>;<CAPITAL>;IGNORE
-<U0107>	<U0043>;<ACUTE>;<SMALL>;IGNORE
-<U0108>	<U0043>;<CIRCUMFLEX>;<CAPITAL>;IGNORE
-<U0109>	<U0043>;<CIRCUMFLEX>;<SMALL>;IGNORE
-<U010C>	<U0043>;<CARON>;<CAPITAL>;IGNORE
-<U010D>	<U0043>;<CARON>;<SMALL>;IGNORE
-<U0187>	<U0043>;<HOOK>;<CAPITAL>;IGNORE
-<U0188>	<U0043>;<HOOK>;<SMALL>;IGNORE
-<U010A>	<U0043>;<DOT>;<CAPITAL>;IGNORE
-<U010B>	<U0043>;<DOT>;<SMALL>;IGNORE
-<U00C7>	<U0043>;<CEDILLA>;<CAPITAL>;IGNORE
-<U00E7>	<U0043>;<CEDILLA>;<SMALL>;IGNORE
-<U1E08>	<U0043>;<CEDILLA+ACUTE>;<CAPITAL>;IGNORE
-<U1E09>	<U0043>;<CEDILLA+ACUTE>;<SMALL>;IGNORE
-<c8>
-<U0044>	<U0044>;<NONE>;<CAPITAL>;IGNORE
-<U0064>	<U0044>;<NONE>;<SMALL>;IGNORE
-<U010E>	<U0044>;<CARON>;<CAPITAL>;IGNORE
-<U010F>	<U0044>;<CARON>;<SMALL>;IGNORE
-<U1E0A>	<U0044>;<DOT>;<CAPITAL>;IGNORE
-<U1E0B>	<U0044>;<DOT>;<SMALL>;IGNORE
-<U1E0C>	<U0044>;<DOT-BELOW>;<CAPITAL>;IGNORE
-<U1E0D>	<U0044>;<DOT-BELOW>;<SMALL>;IGNORE
-<U0110>	<U0044>;<STROKE>;<CAPITAL>;IGNORE
-<U0111>	<U0044>;<STROKE>;<SMALL>;IGNORE
-<U1E10>	<U0044>;<CEDILLA>;<CAPITAL>;IGNORE
-<U1E11>	<U0044>;<CEDILLA>;<SMALL>;IGNORE
-<U1E12>	<U0044>;<MACRON+CIRCUMFLEX>;<CAPITAL>;IGNORE
-<U1E13>	<U0044>;<MACRON+CIRCUMFLEX>;<SMALL>;IGNORE
-<U1E0E>	<U0044>;<LINE-BELOW>;<CAPITAL>;IGNORE
-<U1E0F>	<U0044>;<LINE-BELOW>;<SMALL>;IGNORE
-<d8>
-<U0045>	<U0045>;<NONE>;<CAPITAL>;IGNORE
-<U0065>	<U0045>;<NONE>;<SMALL>;IGNORE
-<U00C9>	<U0045>;<ACUTE>;<CAPITAL>;IGNORE
-<U00E9>	<U0045>;<ACUTE>;<SMALL>;IGNORE
-<U00C8>	<U0045>;<GRAVE>;<CAPITAL>;IGNORE
-<U00E8>	<U0045>;<GRAVE>;<SMALL>;IGNORE
-<U0204>	<U0045>;<DOUBLE-GRAVE>;<CAPITAL>;IGNORE
-<U0205>	<U0045>;<DOUBLE-GRAVE>;<SMALL>;IGNORE
-<U0114>	<U0045>;<BREVE>;<CAPITAL>;IGNORE
-<U0115>	<U0045>;<BREVE>;<SMALL>;IGNORE
-<U0206>	<U0045>;<INVERTED-BREVE>;<CAPITAL>;IGNORE
-<U0207>	<U0045>;<INVERTED-BREVE>;<SMALL>;IGNORE
-<U00CA>	<U0045>;<CIRCUMFLEX>;<CAPITAL>;IGNORE
-<U00EA>	<U0045>;<CIRCUMFLEX>;<SMALL>;IGNORE
-<U1EBE>	<U0045>;<CIRCUMFLEX+ACUTE>;<CAPITAL>;IGNORE
-<U1EBF>	<U0045>;<CIRCUMFLEX+ACUTE>;<SMALL>;IGNORE
-<U1EC0>	<U0045>;<CIRCUMFLEX+GRAVE>;<CAPITAL>;IGNORE
-<U1EC1>	<U0045>;<CIRCUMFLEX+GRAVE>;<SMALL>;IGNORE
-<U1EC2>	<U0045>;<CIRCUMFLEX+HOOK>;<CAPITAL>;IGNORE
-<U1EC3>	<U0045>;<CIRCUMFLEX+HOOK>;<SMALL>;IGNORE
-<U1EC4>	<U0045>;<CIRCUMFLEX+TILDE>;<CAPITAL>;IGNORE
-<U1EC5>	<U0045>;<CIRCUMFLEX+TILDE>;<SMALL>;IGNORE
-<U1EC6>	<U0045>;<CIRCUMFLEX+DOT-BELOW>;<CAPITAL>;IGNORE
-<U1EC7>	<U0045>;<CIRCUMFLEX+DOT-BELOW>;<SMALL>;IGNORE
-<U011A>	<U0045>;<CARON>;<CAPITAL>;IGNORE
-<U011B>	<U0045>;<CARON>;<SMALL>;IGNORE
-<U00CB>	<U0045>;<DIAERESIS>;<CAPITAL>;IGNORE
-<U00EB>	<U0045>;<DIAERESIS>;<SMALL>;IGNORE
-<U1EBA>	<U0045>;<HOOK>;<CAPITAL>;IGNORE
-<U1EBB>	<U0045>;<HOOK>;<SMALL>;IGNORE
-<U1EBC>	<U0045>;<TILDE>;<CAPITAL>;IGNORE
-<U1EBD>	<U0045>;<TILDE>;<SMALL>;IGNORE
-<U1E1A>	<U0045>;<TILDE-BELOW>;<CAPITAL>;IGNORE
-<U1E1B>	<U0045>;<TILDE-BELOW>;<SMALL>;IGNORE
-<U0116>	<U0045>;<DOT>;<CAPITAL>;IGNORE
-<U0117>	<U0045>;<DOT>;<SMALL>;IGNORE
-<U1EB8>	<U0045>;<DOT-BELOW>;<CAPITAL>;IGNORE
-<U1EB9>	<U0045>;<DOT-BELOW>;<SMALL>;IGNORE
-<U1E1C>	<U0045>;<CEDILLA+BREVE>;<CAPITAL>;IGNORE
-<U1E1D>	<U0045>;<CEDILLA+BREVE>;<SMALL>;IGNORE
-<U0118>	<U0045>;<OGONEK>;<CAPITAL>;IGNORE
-<U0119>	<U0045>;<OGONEK>;<SMALL>;IGNORE
-<U0112>	<U0045>;<MACRON>;<CAPITAL>;IGNORE
-<U0113>	<U0045>;<MACRON>;<SMALL>;IGNORE
-<U1E16>	<U0045>;<MACRON+ACUTE>;<CAPITAL>;IGNORE
-<U1E17>	<U0045>;<MACRON+ACUTE>;<SMALL>;IGNORE
-<U1E14>	<U0045>;<MACRON+GRAVE>;<CAPITAL>;IGNORE
-<U1E15>	<U0045>;<MACRON+GRAVE>;<SMALL>;IGNORE
-<U1E18>	<U0045>;<MACRON+CIRCUMFLEX>;<CAPITAL>;IGNORE
-<U1E19>	<U0045>;<MACRON+CIRCUMFLEX>;<SMALL>;IGNORE
-<e8>
-<U0046>	<U0046>;<NONE>;<CAPITAL>;IGNORE
-<U0066>	<U0046>;<NONE>;<SMALL>;IGNORE
-<U0191>	<U0046>;<HOOK>;<CAPITAL>;IGNORE
-<U0192>	<U0046>;<HOOK>;<SMALL>;IGNORE
-<U1E1E>	<U0046>;<DOT>;<CAPITAL>;IGNORE
-<U1E1F>	<U0046>;<DOT>;<SMALL>;IGNORE
-<f8>
-<UFB00>	"<U0046><U0046>";"<NONE><NONE>";"<UFB00><UFB00>";IGNORE
-<UFB01>	"<U0046><U0049>";"<NONE><NONE>";"<UFB01><UFB01>";IGNORE
-<UFB02>	"<U0046><U004C>";"<NONE><NONE>";"<UFB02><UFB02>";IGNORE
-<UFB03>	"<U0046><U0046><U0049>";"<NONE><NONE><NONE>";"<UFB03><UFB03><UFB03>";IGNORE
-<UFB04>	"<U0046><U0046><U004C>";"<NONE><NONE><NONE>";"<UFB04><UFB04><UFB04>";IGNORE
-<U0047>	<U0047>;<NONE>;<CAPITAL>;IGNORE
-<U0067>	<U0047>;<NONE>;<SMALL>;IGNORE
-<U01F4>	<U0047>;<ACUTE>;<CAPITAL>;IGNORE
-<U01F5>	<U0047>;<ACUTE>;<SMALL>;IGNORE
-<U011E>	<U0047>;<BREVE>;<CAPITAL>;IGNORE
-<U011F>	<U0047>;<BREVE>;<SMALL>;IGNORE
-<U011C>	<U0047>;<CIRCUMFLEX>;<CAPITAL>;IGNORE
-<U011D>	<U0047>;<CIRCUMFLEX>;<SMALL>;IGNORE
-<U01E6>	<U0047>;<CARON>;<CAPITAL>;IGNORE
-<U01E7>	<U0047>;<CARON>;<SMALL>;IGNORE
-<U0120>	<U0047>;<DOT>;<CAPITAL>;IGNORE
-<U0121>	<U0047>;<DOT>;<SMALL>;IGNORE
-<U01E4>	<U0047>;<STROKE>;<CAPITAL>;IGNORE
-<U01E5>	<U0047>;<STROKE>;<SMALL>;IGNORE
-<U0122>	<U0047>;<CEDILLA>;<CAPITAL>;IGNORE
-<U0123>	<U0047>;<CEDILLA>;<SMALL>;IGNORE
-<U1E20>	<U0047>;<MACRON>;<CAPITAL>;IGNORE
-<U1E21>	<U0047>;<MACRON>;<SMALL>;IGNORE
-<g8>
-<U0048>	<U0048>;<NONE>;<CAPITAL>;IGNORE
-<U0068>	<U0048>;<NONE>;<SMALL>;IGNORE
-<U1E2A>	<U0048>;<BREVE-BELOW>;<CAPITAL>;IGNORE
-<U1E2B>	<U0048>;<BREVE-BELOW>;<SMALL>;IGNORE
-<U0124>	<U0048>;<CIRCUMFLEX>;<CAPITAL>;IGNORE
-<U0125>	<U0048>;<CIRCUMFLEX>;<SMALL>;IGNORE
-<U1E26>	<U0048>;<DIAERESIS>;<CAPITAL>;IGNORE
-<U1E27>	<U0048>;<DIAERESIS>;<SMALL>;IGNORE
-<U1E22>	<U0048>;<DOT>;<CAPITAL>;IGNORE
-<U1E23>	<U0048>;<DOT>;<SMALL>;IGNORE
-<U1E24>	<U0048>;<DOT-BELOW>;<CAPITAL>;IGNORE
-<U1E25>	<U0048>;<DOT-BELOW>;<SMALL>;IGNORE
-<U0126>	<U0048>;<STROKE>;<CAPITAL>;IGNORE
-<U0127>	<U0048>;<STROKE>;<SMALL>;IGNORE
-<U1E28>	<U0048>;<CEDILLA>;<CAPITAL>;IGNORE
-<U1E29>	<U0048>;<CEDILLA>;<SMALL>;IGNORE
-<h8>
-<U0049>	<U0049>;<NONE>;<CAPITAL>;IGNORE
-<U0069>	<U0049>;<NONE>;<SMALL>;IGNORE
-<U00CD>	<U0049>;<ACUTE>;<CAPITAL>;IGNORE
-<U00ED>	<U0049>;<ACUTE>;<SMALL>;IGNORE
-<U00CC>	<U0049>;<GRAVE>;<CAPITAL>;IGNORE
-<U00EC>	<U0049>;<GRAVE>;<SMALL>;IGNORE
-<U0208>	<U0049>;<DOUBLE-GRAVE>;<CAPITAL>;IGNORE
-<U0209>	<U0049>;<DOUBLE-GRAVE>;<SMALL>;IGNORE
-<U012C>	<U0049>;<BREVE>;<CAPITAL>;IGNORE
-<U012D>	<U0049>;<BREVE>;<SMALL>;IGNORE
-<U020A>	<U0049>;<INVERTED-BREVE>;<CAPITAL>;IGNORE
-<U020B>	<U0049>;<INVERTED-BREVE>;<SMALL>;IGNORE
-<U00CE>	<U0049>;<CIRCUMFLEX>;<CAPITAL>;IGNORE
-<U00EE>	<U0049>;<CIRCUMFLEX>;<SMALL>;IGNORE
-<U01CF>	<U0049>;<CARON>;<CAPITAL>;IGNORE
-<U01D0>	<U0049>;<CARON>;<SMALL>;IGNORE
-<U00CF>	<U0049>;<DIAERESIS>;<CAPITAL>;IGNORE
-<U00EF>	<U0049>;<DIAERESIS>;<SMALL>;IGNORE
-<U1E2E>	<U0049>;<DIAERESIS+ACUTE>;<CAPITAL>;IGNORE
-<U1E2F>	<U0049>;<DIAERESIS+ACUTE>;<SMALL>;IGNORE
-<U1EC8>	<U0049>;<HOOK>;<CAPITAL>;IGNORE
-<U1EC9>	<U0049>;<HOOK>;<SMALL>;IGNORE
-<U0128>	<U0049>;<TILDE>;<CAPITAL>;IGNORE
-<U0129>	<U0049>;<TILDE>;<SMALL>;IGNORE
-<U1E2C>	<U0049>;<TILDE-BELOW>;<CAPITAL>;IGNORE
-<U1E2D>	<U0049>;<TILDE-BELOW>;<SMALL>;IGNORE
-<U0130>	<U0049>;<DOT>;<CAPITAL>;IGNORE
-<U0131>	<U0049>;<DOT>;<SMALL>;IGNORE
-<U1ECA>	<U0049>;<DOT-BELOW>;<CAPITAL>;IGNORE
-<U1ECB>	<U0049>;<DOT-BELOW>;<SMALL>;IGNORE
-<U012E>	<U0049>;<OGONEK>;<CAPITAL>;IGNORE
-<U012F>	<U0049>;<OGONEK>;<SMALL>;IGNORE
-<U012A>	<U0049>;<MACRON>;<CAPITAL>;IGNORE
-<U012B>	<U0049>;<MACRON>;<SMALL>;IGNORE
-<i8>
-<U0132>	"<U0049><U004A>";"<U0132><U0132>";"<CAPITAL><CAPITAL>";IGNORE
-<U0133>	"<U0049><U004A>";"<U0132><U0132>";"<SMALL><SMALL>";IGNORE
-<U004A>	<U004A>;<NONE>;<CAPITAL>;IGNORE
-<U006A>	<U004A>;<NONE>;<SMALL>;IGNORE
-<U0134>	<U004A>;<CIRCUMFLEX>;<CAPITAL>;IGNORE
-<U0135>	<U004A>;<CIRCUMFLEX>;<SMALL>;IGNORE
-<j8>
-<U004B>	<U004B>;<NONE>;<CAPITAL>;IGNORE
-<U006B>	<U004B>;<NONE>;<SMALL>;IGNORE
-<U1E30>	<U004B>;<ACUTE>;<CAPITAL>;IGNORE
-<U1E31>	<U004B>;<ACUTE>;<SMALL>;IGNORE
-<U01E8>	<U004B>;<CARON>;<CAPITAL>;IGNORE
-<U01E9>	<U004B>;<CARON>;<SMALL>;IGNORE
-<U0198>	<U004B>;<HOOK>;<CAPITAL>;IGNORE
-<U0199>	<U004B>;<HOOK>;<SMALL>;IGNORE
-<U1E32>	<U004B>;<DOT-BELOW>;<CAPITAL>;IGNORE
-<U1E33>	<U004B>;<DOT-BELOW>;<SMALL>;IGNORE
-<U0136>	<U004B>;<CEDILLA>;<CAPITAL>;IGNORE
-<U0137>	<U004B>;<CEDILLA>;<SMALL>;IGNORE
-<U1E34>	<U004B>;<LINE-BELOW>;<CAPITAL>;IGNORE
-<U1E35>	<U004B>;<LINE-BELOW>;<SMALL>;IGNORE
-<k8>
-<U0138>	<U004B>;<U0138>;<SMALL>;IGNORE
-<U004C>	<U004C>;<NONE>;<CAPITAL>;IGNORE
-<U006C>	<U004C>;<NONE>;<SMALL>;IGNORE
-<U0139>	<U004C>;<ACUTE>;<CAPITAL>;IGNORE
-<U013A>	<U004C>;<ACUTE>;<SMALL>;IGNORE
-<U013D>	<U004C>;<CARON>;<CAPITAL>;IGNORE
-<U013E>	<U004C>;<CARON>;<SMALL>;IGNORE
-<U013F>	<U004C>;<DOT>;<CAPITAL>;IGNORE
-<U0140>	<U004C>;<DOT>;<SMALL>;IGNORE
-<U1E36>	<U004C>;<DOT-BELOW>;<CAPITAL>;IGNORE
-<U1E37>	<U004C>;<DOT-BELOW>;<SMALL>;IGNORE
-<U0141>	<U004C>;<STROKE>;<CAPITAL>;IGNORE
-<U0142>	<U004C>;<STROKE>;<SMALL>;IGNORE
-<U013B>	<U004C>;<CEDILLA>;<CAPITAL>;IGNORE
-<U013C>	<U004C>;<CEDILLA>;<SMALL>;IGNORE
-<U1E38>	<U004C>;<MACRON+DOT-BELOW>;<CAPITAL>;IGNORE
-<U1E39>	<U004C>;<MACRON+DOT-BELOW>;<SMALL>;IGNORE
-<U1E3C>	<U004C>;<MACRON+CIRCUMFLEX>;<CAPITAL>;IGNORE
-<U1E3D>	<U004C>;<MACRON+CIRCUMFLEX>;<SMALL>;IGNORE
-<U1E3A>	<U004C>;<LINE-BELOW>;<CAPITAL>;IGNORE
-<U1E3B>	<U004C>;<LINE-BELOW>;<SMALL>;IGNORE
-<l8>
-<U004D>	<U004D>;<NONE>;<CAPITAL>;IGNORE
-<U006D>	<U004D>;<NONE>;<SMALL>;IGNORE
-<U1E3E>	<U004D>;<ACUTE>;<CAPITAL>;IGNORE
-<U1E3F>	<U004D>;<ACUTE>;<SMALL>;IGNORE
-<U1E40>	<U004D>;<DOT>;<CAPITAL>;IGNORE
-<U1E41>	<U004D>;<DOT>;<SMALL>;IGNORE
-<U1E42>	<U004D>;<DOT-BELOW>;<CAPITAL>;IGNORE
-<U1E43>	<U004D>;<DOT-BELOW>;<SMALL>;IGNORE
-<m8>
-<U004E>	<U004E>;<NONE>;<CAPITAL>;IGNORE
-<U006E>	<U004E>;<NONE>;<SMALL>;IGNORE
-<U0143>	<U004E>;<ACUTE>;<CAPITAL>;IGNORE
-<U0144>	<U004E>;<ACUTE>;<SMALL>;IGNORE
-<U0147>	<U004E>;<CARON>;<CAPITAL>;IGNORE
-<U0148>	<U004E>;<CARON>;<SMALL>;IGNORE
-<U1E44>	<U004E>;<DOT>;<CAPITAL>;IGNORE
-<U1E45>	<U004E>;<DOT>;<SMALL>;IGNORE
-<U1E46>	<U004E>;<DOT-BELOW>;<CAPITAL>;IGNORE
-<U1E47>	<U004E>;<DOT-BELOW>;<SMALL>;IGNORE
-<U0145>	<U004E>;<CEDILLA>;<CAPITAL>;IGNORE
-<U0146>	<U004E>;<CEDILLA>;<SMALL>;IGNORE
-<U1E4A>	<U004E>;<MACRON+CIRCUMFLEX>;<CAPITAL>;IGNORE
-<U1E4B>	<U004E>;<MACRON+CIRCUMFLEX>;<SMALL>;IGNORE
-<U1E48>	<U004E>;<LINE-BELOW>;<CAPITAL>;IGNORE
-<U1E49>	<U004E>;<LINE-BELOW>;<SMALL>;IGNORE
-<U0149>	<U004E>;<PRECEDED-BY-APOSTROPHE>;<SMALL>;IGNORE
-<n8>
-<U00D1>	<U00D1>;<NONE>;<CAPITAL>;IGNORE
-<U00F1>	<U00D1>;<NONE>;<SMALL>;IGNORE
-<U014A>	"<U004E><U0047>";"<U014A><U014A>";"<CAPITAL><CAPITAL>";IGNORE
-<U014B>	"<U004E><U0047>";"<U014A><U014A>";"<SMALL><SMALL>";IGNORE
-<U004F>	<U004F>;<NONE>;<CAPITAL>;IGNORE
-<U006F>	<U004F>;<NONE>;<SMALL>;IGNORE
-<U00BA>	<U004F>;<NONE>;<U00BA>;IGNORE
-<U00D3>	<U004F>;<ACUTE>;<CAPITAL>;IGNORE
-<U00F3>	<U004F>;<ACUTE>;<SMALL>;IGNORE
-<U00D2>	<U004F>;<GRAVE>;<CAPITAL>;IGNORE
-<U00F2>	<U004F>;<GRAVE>;<SMALL>;IGNORE
-<U020C>	<U004F>;<DOUBLE-GRAVE>;<CAPITAL>;IGNORE
-<U020D>	<U004F>;<DOUBLE-GRAVE>;<SMALL>;IGNORE
-<U014E>	<U004F>;<BREVE>;<CAPITAL>;IGNORE
-<U014F>	<U004F>;<BREVE>;<SMALL>;IGNORE
-<U020E>	<U004F>;<INVERTED-BREVE>;<CAPITAL>;IGNORE
-<U020F>	<U004F>;<INVERTED-BREVE>;<SMALL>;IGNORE
-<U00D4>	<U004F>;<CIRCUMFLEX>;<CAPITAL>;IGNORE
-<U00F4>	<U004F>;<CIRCUMFLEX>;<SMALL>;IGNORE
-<U1ED0>	<U004F>;<CIRCUMFLEX+ACUTE>;<CAPITAL>;IGNORE
-<U1ED1>	<U004F>;<CIRCUMFLEX+ACUTE>;<SMALL>;IGNORE
-<U1ED2>	<U004F>;<CIRCUMFLEX+GRAVE>;<CAPITAL>;IGNORE
-<U1ED3>	<U004F>;<CIRCUMFLEX+GRAVE>;<SMALL>;IGNORE
-<U1ED4>	<U004F>;<CIRCUMFLEX+HOOK>;<CAPITAL>;IGNORE
-<U1ED5>	<U004F>;<CIRCUMFLEX+HOOK>;<SMALL>;IGNORE
-<U1ED6>	<U004F>;<CIRCUMFLEX+TILDE>;<CAPITAL>;IGNORE
-<U1ED7>	<U004F>;<CIRCUMFLEX+TILDE>;<SMALL>;IGNORE
-<U1ED8>	<U004F>;<CIRCUMFLEX+DOT-BELOW>;<CAPITAL>;IGNORE
-<U1ED9>	<U004F>;<CIRCUMFLEX+DOT-BELOW>;<SMALL>;IGNORE
-<U01D1>	<U004F>;<CARON>;<CAPITAL>;IGNORE
-<U01D2>	<U004F>;<CARON>;<SMALL>;IGNORE
-<U00D6>	<U004F>;<DIAERESIS>;<CAPITAL>;IGNORE
-<U00F6>	<U004F>;<DIAERESIS>;<SMALL>;IGNORE
-<U0150>	<U004F>;<DOUBLE-ACUTE>;<CAPITAL>;IGNORE
-<U0151>	<U004F>;<DOUBLE-ACUTE>;<SMALL>;IGNORE
-<U1ECE>	<U004F>;<HOOK>;<CAPITAL>;IGNORE
-<U1ECF>	<U004F>;<HOOK>;<SMALL>;IGNORE
-<U00D5>	<U004F>;<TILDE>;<CAPITAL>;IGNORE
-<U00F5>	<U004F>;<TILDE>;<SMALL>;IGNORE
-<U1E4C>	<U004F>;<TILDE+ACUTE>;<CAPITAL>;IGNORE
-<U1E4D>	<U004F>;<TILDE+ACUTE>;<SMALL>;IGNORE
-<U1E4E>	<U004F>;<TILDE+DIAERESIS>;<CAPITAL>;IGNORE
-<U1E4F>	<U004F>;<TILDE+DIAERESIS>;<SMALL>;IGNORE
-<U1ECC>	<U004F>;<DOT-BELOW>;<CAPITAL>;IGNORE
-<U1ECD>	<U004F>;<DOT-BELOW>;<SMALL>;IGNORE
-<U00D8>	<U004F>;<STROKE>;<CAPITAL>;IGNORE
-<U00F8>	<U004F>;<STROKE>;<SMALL>;IGNORE
-<U01FE>	<U004F>;<STROKE+ACUTE>;<CAPITAL>;IGNORE
-<U01FF>	<U004F>;<STROKE+ACUTE>;<SMALL>;IGNORE
-<U01EA>	<U004F>;<OGONEK>;<CAPITAL>;IGNORE
-<U01EB>	<U004F>;<OGONEK>;<SMALL>;IGNORE
-<U01EC>	<U004F>;<OGONEK+MACRON>;<CAPITAL>;IGNORE
-<U01ED>	<U004F>;<OGONEK+MACRON>;<SMALL>;IGNORE
-<U014C>	<U004F>;<MACRON>;<CAPITAL>;IGNORE
-<U014D>	<U004F>;<MACRON>;<SMALL>;IGNORE
-<U1E52>	<U004F>;<MACRON+ACUTE>;<CAPITAL>;IGNORE
-<U1E53>	<U004F>;<MACRON+ACUTE>;<SMALL>;IGNORE
-<U1E50>	<U004F>;<MACRON+GRAVE>;<CAPITAL>;IGNORE
-<U1E51>	<U004F>;<MACRON+GRAVE>;<SMALL>;IGNORE
-<U01A0>	<U004F>;<HORN>;<CAPITAL>;IGNORE
-<U01A1>	<U004F>;<HORN>;<SMALL>;IGNORE
-<U1EDA>	<U004F>;<HORN+ACUTE>;<CAPITAL>;IGNORE
-<U1EDB>	<U004F>;<HORN+ACUTE>;<SMALL>;IGNORE
-<U1EDC>	<U004F>;<HORN+GRAVE>;<CAPITAL>;IGNORE
-<U1EDD>	<U004F>;<HORN+GRAVE>;<SMALL>;IGNORE
-<U1EDE>	<U004F>;<HORN+HOOK>;<CAPITAL>;IGNORE
-<U1EDF>	<U004F>;<HORN+HOOK>;<SMALL>;IGNORE
-<U1EE0>	<U004F>;<HORN+TILDE>;<CAPITAL>;IGNORE
-<U1EE1>	<U004F>;<HORN+TILDE>;<SMALL>;IGNORE
-<U1EE2>	<U004F>;<HORN+DOT-BELOW>;<CAPITAL>;IGNORE
-<U1EE3>	<U004F>;<HORN+DOT-BELOW>;<SMALL>;IGNORE
-<o8>
-<U0152>	"<U004F><U0045>";"<U0152><U0152>";"<CAPITAL><CAPITAL>";IGNORE
-<U0153>	"<U004F><U0045>";"<U0152><U0152>";"<SMALL><SMALL>";IGNORE
-<U0050>	<U0050>;<NONE>;<CAPITAL>;IGNORE
-<U0070>	<U0050>;<NONE>;<SMALL>;IGNORE
-<U1E54>	<U0050>;<ACUTE>;<CAPITAL>;IGNORE
-<U1E55>	<U0050>;<ACUTE>;<SMALL>;IGNORE
-<U1E56>	<U0050>;<DOT>;<CAPITAL>;IGNORE
-<U1E57>	<U0050>;<DOT>;<SMALL>;IGNORE
-<p8>
-<U0051>	<U0051>;<NONE>;<CAPITAL>;IGNORE
-<U0071>	<U0051>;<NONE>;<SMALL>;IGNORE
-<q8>
-<U0052>	<U0052>;<NONE>;<CAPITAL>;IGNORE
-<U0072>	<U0052>;<NONE>;<SMALL>;IGNORE
-<U0154>	<U0052>;<ACUTE>;<CAPITAL>;IGNORE
-<U0155>	<U0052>;<ACUTE>;<SMALL>;IGNORE
-<U0210>	<U0052>;<DOUBLE-GRAVE>;<CAPITAL>;IGNORE
-<U0211>	<U0052>;<DOUBLE-GRAVE>;<SMALL>;IGNORE
-<U0212>	<U0052>;<INVERTED-BREVE>;<CAPITAL>;IGNORE
-<U0213>	<U0052>;<INVERTED-BREVE>;<SMALL>;IGNORE
-<U0158>	<U0052>;<CARON>;<CAPITAL>;IGNORE
-<U0159>	<U0052>;<CARON>;<SMALL>;IGNORE
-<U1E58>	<U0052>;<DOT>;<CAPITAL>;IGNORE
-<U1E59>	<U0052>;<DOT>;<SMALL>;IGNORE
-<U1E5A>	<U0052>;<DOT-BELOW>;<CAPITAL>;IGNORE
-<U1E5B>	<U0052>;<DOT-BELOW>;<SMALL>;IGNORE
-<U0156>	<U0052>;<CEDILLA>;<CAPITAL>;IGNORE
-<U0157>	<U0052>;<CEDILLA>;<SMALL>;IGNORE
-<U1E5C>	<U0052>;<MACRON+DOT-BELOW>;<CAPITAL>;IGNORE
-<U1E5D>	<U0052>;<MACRON+DOT-BELOW>;<SMALL>;IGNORE
-<U1E5E>	<U0052>;<LINE-BELOW>;<CAPITAL>;IGNORE
-<U1E5F>	<U0052>;<LINE-BELOW>;<SMALL>;IGNORE
-<r8>
-<U0053>	<U0053>;<NONE>;<CAPITAL>;IGNORE
-<U0073>	<U0053>;<NONE>;<SMALL>;IGNORE
-<UFB06>	"<U0053><U0054>";"<NONE><NONE>";"<UFB06><UFB06>";IGNORE
-<U015A>	<U0053>;<ACUTE>;<CAPITAL>;IGNORE
-<U015B>	<U0053>;<ACUTE>;<SMALL>;IGNORE
-<U1E64>	<U0053>;<ACUTE+DOT>;<CAPITAL>;IGNORE
-<U1E65>	<U0053>;<ACUTE+DOT>;<SMALL>;IGNORE
-<U015C>	<U0053>;<CIRCUMFLEX>;<CAPITAL>;IGNORE
-<U015D>	<U0053>;<CIRCUMFLEX>;<SMALL>;IGNORE
-<U0160>	<U0053>;<CARON>;<CAPITAL>;IGNORE
-<U0161>	<U0053>;<CARON>;<SMALL>;IGNORE
-<U1E66>	<U0053>;<CARON+DOT>;<CAPITAL>;IGNORE
-<U1E67>	<U0053>;<CARON+DOT>;<SMALL>;IGNORE
-<U1E60>	<U0053>;<DOT>;<CAPITAL>;IGNORE
-<U1E61>	<U0053>;<DOT>;<SMALL>;IGNORE
-<U1E62>	<U0053>;<DOT-BELOW>;<CAPITAL>;IGNORE
-<U1E63>	<U0053>;<DOT-BELOW>;<SMALL>;IGNORE
-<U1E68>	<U0053>;<DOT+DOT-BELOW>;<CAPITAL>;IGNORE
-<U1E69>	<U0053>;<DOT+DOT-BELOW>;<SMALL>;IGNORE
-<U015E>	<U0053>;<CEDILLA>;<CAPITAL>;IGNORE
-<U015F>	<U0053>;<CEDILLA>;<SMALL>;IGNORE
-<s8>
-<U017F>	<U0053>;<U017F>;<SMALL>;IGNORE
-<U00DF>	"<U0053><U0053>";"<NONE><NONE>";"<SMALL><U00DF>";IGNORE
-<UFB05>	"<U0053><U0054>";"<NONE><NONE>";"<UFB05><UFB05>";IGNORE
-<U0054>	<U0054>;<NONE>;<CAPITAL>;IGNORE
-<U0074>	<U0054>;<NONE>;<SMALL>;IGNORE
-<U0164>	<U0054>;<CARON>;<CAPITAL>;IGNORE
-<U0165>	<U0054>;<CARON>;<SMALL>;IGNORE
-<U1E6A>	<U0054>;<DOT>;<CAPITAL>;IGNORE
-<U1E6B>	<U0054>;<DOT>;<SMALL>;IGNORE
-<U1E6C>	<U0054>;<DOT-BELOW>;<CAPITAL>;IGNORE
-<U1E6D>	<U0054>;<DOT-BELOW>;<SMALL>;IGNORE
-<U0166>	<U0054>;<STROKE>;<CAPITAL>;IGNORE
-<U0167>	<U0054>;<STROKE>;<SMALL>;IGNORE
-<U0162>	<U0054>;<CEDILLA>;<CAPITAL>;IGNORE
-<U0163>	<U0054>;<CEDILLA>;<SMALL>;IGNORE
-<U1E70>	<U0054>;<MACRON+CIRCUMFLEX>;<CAPITAL>;IGNORE
-<U1E71>	<U0054>;<MACRON+CIRCUMFLEX>;<SMALL>;IGNORE
-<U1E6E>	<U0054>;<LINE-BELOW>;<CAPITAL>;IGNORE
-<U1E6F>	<U0054>;<LINE-BELOW>;<SMALL>;IGNORE
-<t8>
-<U00DE>	"<U0054><U0048>";"<U00DE><U00DE>";"<CAPITAL><CAPITAL>";IGNORE
-<U00FE>	"<U0054><U0048>";"<U00DE><U00DE>";"<SMALL><SMALL>";IGNORE
-<U0055>	<U0055>;<NONE>;<CAPITAL>;IGNORE
-<U0075>	<U0055>;<NONE>;<SMALL>;IGNORE
-<U00DA>	<U0055>;<ACUTE>;<CAPITAL>;IGNORE
-<U00FA>	<U0055>;<ACUTE>;<SMALL>;IGNORE
-<U00D9>	<U0055>;<GRAVE>;<CAPITAL>;IGNORE
-<U00F9>	<U0055>;<GRAVE>;<SMALL>;IGNORE
-<U0214>	<U0055>;<DOUBLE-GRAVE>;<CAPITAL>;IGNORE
-<U0215>	<U0055>;<DOUBLE-GRAVE>;<SMALL>;IGNORE
-<U016C>	<U0055>;<BREVE>;<CAPITAL>;IGNORE
-<U016D>	<U0055>;<BREVE>;<SMALL>;IGNORE
-<U0216>	<U0055>;<INVERTED-BREVE>;<CAPITAL>;IGNORE
-<U0217>	<U0055>;<INVERTED-BREVE>;<SMALL>;IGNORE
-<U00DB>	<U0055>;<CIRCUMFLEX>;<CAPITAL>;IGNORE
-<U00FB>	<U0055>;<CIRCUMFLEX>;<SMALL>;IGNORE
-<U01D3>	<U0055>;<CARON>;<CAPITAL>;IGNORE
-<U01D4>	<U0055>;<CARON>;<SMALL>;IGNORE
-<U016E>	<U0055>;<RING>;<CAPITAL>;IGNORE
-<U016F>	<U0055>;<RING>;<SMALL>;IGNORE
-<U00DC>	<U0055>;<DIAERESIS>;<CAPITAL>;IGNORE
-<U00FC>	<U0055>;<DIAERESIS>;<SMALL>;IGNORE
-<U01D5>	<U0055>;<DIAERESIS+MACRON>;<CAPITAL>;IGNORE
-<U01D6>	<U0055>;<DIAERESIS+MACRON>;<SMALL>;IGNORE
-<U01D7>	<U0055>;<DIAERESIS+ACUTE>;<CAPITAL>;IGNORE
-<U01D8>	<U0055>;<DIAERESIS+ACUTE>;<SMALL>;IGNORE
-<U01DB>	<U0055>;<DIAERESIS+GRAVE>;<CAPITAL>;IGNORE
-<U01DC>	<U0055>;<DIAERESIS+GRAVE>;<SMALL>;IGNORE
-<U01D9>	<U0055>;<DIAERESIS+CARON>;<CAPITAL>;IGNORE
-<U01DA>	<U0055>;<DIAERESIS+CARON>;<SMALL>;IGNORE
-<U0170>	<U0055>;<DOUBLE-ACUTE>;<CAPITAL>;IGNORE
-<U0171>	<U0055>;<DOUBLE-ACUTE>;<SMALL>;IGNORE
-<U1EE6>	<U0055>;<HOOK>;<CAPITAL>;IGNORE
-<U1EE7>	<U0055>;<HOOK>;<SMALL>;IGNORE
-<U0168>	<U0055>;<TILDE>;<CAPITAL>;IGNORE
-<U0169>	<U0055>;<TILDE>;<SMALL>;IGNORE
-<U1E78>	<U0055>;<TILDE+ACUTE>;<CAPITAL>;IGNORE
-<U1E79>	<U0055>;<TILDE+ACUTE>;<SMALL>;IGNORE
-<U1E74>	<U0055>;<TILDE-BELOW>;<CAPITAL>;IGNORE
-<U1E75>	<U0055>;<TILDE-BELOW>;<SMALL>;IGNORE
-<U1EE4>	<U0055>;<DOT-BELOW>;<CAPITAL>;IGNORE
-<U1EE5>	<U0055>;<DOT-BELOW>;<SMALL>;IGNORE
-<U0172>	<U0055>;<OGONEK>;<CAPITAL>;IGNORE
-<U0173>	<U0055>;<OGONEK>;<SMALL>;IGNORE
-<U016A>	<U0055>;<MACRON>;<CAPITAL>;IGNORE
-<U016B>	<U0055>;<MACRON>;<SMALL>;IGNORE
-<U1E7A>	<U0055>;<MACRON+DIAERESIS>;<CAPITAL>;IGNORE
-<U1E7B>	<U0055>;<MACRON+DIAERESIS>;<SMALL>;IGNORE
-<U1E72>	<U0055>;<MACRON+DIAERESIS-BELOW>;<CAPITAL>;IGNORE
-<U1E73>	<U0055>;<MACRON+DIAERESIS-BELOW>;<SMALL>;IGNORE
-<U1E76>	<U0055>;<MACRON+CIRCUMFLEX>;<CAPITAL>;IGNORE
-<U1E77>	<U0055>;<MACRON+CIRCUMFLEX>;<SMALL>;IGNORE
-<U01AF>	<U0055>;<HORN>;<CAPITAL>;IGNORE
-<U01B0>	<U0055>;<HORN>;<SMALL>;IGNORE
-<U1EE8>	<U0055>;<HORN+ACUTE>;<CAPITAL>;IGNORE
-<U1EE9>	<U0055>;<HORN+ACUTE>;<SMALL>;IGNORE
-<U1EEA>	<U0055>;<HORN+GRAVE>;<CAPITAL>;IGNORE
-<U1EEB>	<U0055>;<HORN+GRAVE>;<SMALL>;IGNORE
-<U1EEC>	<U0055>;<HORN+HOOK>;<CAPITAL>;IGNORE
-<U1EED>	<U0055>;<HORN+HOOK>;<SMALL>;IGNORE
-<U1EEE>	<U0055>;<HORN+TILDE>;<CAPITAL>;IGNORE
-<U1EEF>	<U0055>;<HORN+TILDE>;<SMALL>;IGNORE
-<U1EF0>	<U0055>;<HORN+DOT-BELOW>;<CAPITAL>;IGNORE
-<U1EF1>	<U0055>;<HORN+DOT-BELOW>;<SMALL>;IGNORE
-<u8>
-<U0056>	<U0056>;<NONE>;<CAPITAL>;IGNORE
-<U0076>	<U0056>;<NONE>;<SMALL>;IGNORE
-<U1E7C>	<U0056>;<TILDE>;<CAPITAL>;IGNORE
-<U1E7D>	<U0056>;<TILDE>;<SMALL>;IGNORE
-<U1E7E>	<U0056>;<DOT-BELOW>;<CAPITAL>;IGNORE
-<U1E7F>	<U0056>;<DOT-BELOW>;<SMALL>;IGNORE
-<v8>
-<U0057>	<U0057>;<NONE>;<CAPITAL>;IGNORE
-<U0077>	<U0057>;<NONE>;<SMALL>;IGNORE
-<U1E82>	<U0057>;<ACUTE>;<CAPITAL>;IGNORE
-<U1E83>	<U0057>;<ACUTE>;<SMALL>;IGNORE
-<U1E80>	<U0057>;<GRAVE>;<CAPITAL>;IGNORE
-<U1E81>	<U0057>;<GRAVE>;<SMALL>;IGNORE
-<U0174>	<U0057>;<CIRCUMFLEX>;<CAPITAL>;IGNORE
-<U0175>	<U0057>;<CIRCUMFLEX>;<SMALL>;IGNORE
-<U1E84>	<U0057>;<DIAERESIS>;<CAPITAL>;IGNORE
-<U1E85>	<U0057>;<DIAERESIS>;<SMALL>;IGNORE
-<U1E86>	<U0057>;<DOT>;<CAPITAL>;IGNORE
-<U1E87>	<U0057>;<DOT>;<SMALL>;IGNORE
-<U1E88>	<U0057>;<DOT-BELOW>;<CAPITAL>;IGNORE
-<U1E89>	<U0057>;<DOT-BELOW>;<SMALL>;IGNORE
-<w8>
-<U0058>	<U0058>;<NONE>;<CAPITAL>;IGNORE
-<U0078>	<U0058>;<NONE>;<SMALL>;IGNORE
-<U1E8C>	<U0058>;<DIAERESIS>;<CAPITAL>;IGNORE
-<U1E8D>	<U0058>;<DIAERESIS>;<SMALL>;IGNORE
-<U1E8A>	<U0058>;<DOT>;<CAPITAL>;IGNORE
-<U1E8B>	<U0058>;<DOT>;<SMALL>;IGNORE
-<x8>
-<U0059>	<U0059>;<NONE>;<CAPITAL>;IGNORE
-<U0079>	<U0059>;<NONE>;<SMALL>;IGNORE
-<U00DD>	<U0059>;<ACUTE>;<CAPITAL>;IGNORE
-<U00FD>	<U0059>;<ACUTE>;<SMALL>;IGNORE
-<U1EF2>	<U0059>;<GRAVE>;<CAPITAL>;IGNORE
-<U1EF3>	<U0059>;<GRAVE>;<SMALL>;IGNORE
-<U0176>	<U0059>;<CIRCUMFLEX>;<CAPITAL>;IGNORE
-<U0177>	<U0059>;<CIRCUMFLEX>;<SMALL>;IGNORE
-<U0178>	<U0059>;<DIAERESIS>;<CAPITAL>;IGNORE
-<U00FF>	<U0059>;<DIAERESIS>;<SMALL>;IGNORE
-<U1EF6>	<U0059>;<HOOK>;<CAPITAL>;IGNORE
-<U1EF7>	<U0059>;<HOOK>;<SMALL>;IGNORE
-<U1EF8>	<U0059>;<TILDE>;<CAPITAL>;IGNORE
-<U1EF9>	<U0059>;<TILDE>;<SMALL>;IGNORE
-<U1E8E>	<U0059>;<DOT>;<CAPITAL>;IGNORE
-<U1E8F>	<U0059>;<DOT>;<SMALL>;IGNORE
-<U1EF4>	<U0059>;<DOT-BELOW>;<CAPITAL>;IGNORE
-<U1EF5>	<U0059>;<DOT-BELOW>;<SMALL>;IGNORE
-<y8>
-<U005A>	<U005A>;<NONE>;<CAPITAL>;IGNORE
-<U007A>	<U005A>;<NONE>;<SMALL>;IGNORE
-<U0179>	<U005A>;<ACUTE>;<CAPITAL>;IGNORE
-<U017A>	<U005A>;<ACUTE>;<SMALL>;IGNORE
-<U1E90>	<U005A>;<CIRCUMFLEX>;<CAPITAL>;IGNORE
-<U1E91>	<U005A>;<CIRCUMFLEX>;<SMALL>;IGNORE
-<U017D>	<U005A>;<CARON>;<CAPITAL>;IGNORE
-<U017E>	<U005A>;<CARON>;<SMALL>;IGNORE
-<U017B>	<U005A>;<DOT>;<CAPITAL>;IGNORE
-<U017C>	<U005A>;<DOT>;<SMALL>;IGNORE
-<U1E92>	<U005A>;<DOT-BELOW>;<CAPITAL>;IGNORE
-<U1E93>	<U005A>;<DOT-BELOW>;<SMALL>;IGNORE
-<U01B5>	<U005A>;<STROKE>;<CAPITAL>;IGNORE
-<U01B6>	<U005A>;<STROKE>;<SMALL>;IGNORE
-<U1E94>	<U005A>;<LINE-BELOW>;<CAPITAL>;IGNORE
-<U1E95>	<U005A>;<LINE-BELOW>;<SMALL>;IGNORE
-<z8>
-<U0391>	<U0391>;<CAPITAL>;<GREEK>;IGNORE
-<U0386>	<U0391>;<CAPITAL>;<TONOS>;IGNORE
-<U03B1>	<U0391>;<SMALL>;<GREEK>;IGNORE
-<U03AC>	<U0391>;<SMALL>;<TONOS>;IGNORE
-<U0392>	<U0392>;<CAPITAL>;<GREEK>;IGNORE
-<U03B2>	<U0392>;<SMALL>;<GREEK>;IGNORE
-<U0393>	<U0393>;<CAPITAL>;<GREEK>;IGNORE
-<U03B3>	<U0393>;<SMALL>;<GREEK>;IGNORE
-<U0394>	<U0394>;<CAPITAL>;<GREEK>;IGNORE
-<U03B4>	<U0394>;<SMALL>;<GREEK>;IGNORE
-<U0395>	<U0395>;<CAPITAL>;<GREEK>;IGNORE
-<U0388>	<U0395>;<CAPITAL>;<TONOS>;IGNORE
-<U03B5>	<U0395>;<SMALL>;<GREEK>;IGNORE
-<U03AD>	<U0395>;<SMALL>;<TONOS>;IGNORE
-<U0396>	<U0396>;<CAPITAL>;<GREEK>;IGNORE
-<U03B6>	<U0396>;<SMALL>;<GREEK>;IGNORE
-<U0397>	<U0397>;<CAPITAL>;<GREEK>;IGNORE
-<U0389>	<U0397>;<CAPITAL>;<TONOS>;IGNORE
-<U03B7>	<U0397>;<SMALL>;<GREEK>;IGNORE
-<U03AE>	<U0397>;<SMALL>;<TONOS>;IGNORE
-<U0398>	<U0398>;<CAPITAL>;<GREEK>;IGNORE
-<U03B8>	<U0398>;<SMALL>;<GREEK>;IGNORE
-<U0399>	<U0399>;<CAPITAL>;<GREEK>;IGNORE
-<U038A>	<U0399>;<CAPITAL>;<TONOS>;IGNORE
-<U03AA>	<U0399>;<CAPITAL>;<DIALYTICA>;IGNORE
-<U03B9>	<U0399>;<SMALL>;<GREEK>;IGNORE
-<U03AF>	<U0399>;<SMALL>;<TONOS>;IGNORE
-<U03CA>	<U0399>;<SMALL>;<DIALYTICA>;IGNORE
-<U0390>	<U0399>;<SMALL>;<DIALYTICA+TONOS>;IGNORE
-<U039A>	<U039A>;<CAPITAL>;<GREEK>;IGNORE
-<U03BA>	<U039A>;<SMALL>;<GREEK>;IGNORE
-<U039B>	<U039B>;<CAPITAL>;<GREEK>;IGNORE
-<U03BB>	<U039B>;<SMALL>;<GREEK>;IGNORE
-<U039C>	<U039C>;<CAPITAL>;<GREEK>;IGNORE
-<U03BC>	<U039C>;<SMALL>;<GREEK>;IGNORE
-<U039D>	<U039D>;<CAPITAL>;<GREEK>;IGNORE
-<U03BD>	<U039D>;<SMALL>;<GREEK>;IGNORE
-<U039E>	<U039E>;<CAPITAL>;<GREEK>;IGNORE
-<U03BE>	<U039E>;<SMALL>;<GREEK>;IGNORE
-<U039F>	<U039F>;<CAPITAL>;<GREEK>;IGNORE
-<U038C>	<U039F>;<CAPITAL>;<TONOS>;IGNORE
-<U03BF>	<U039F>;<SMALL>;<GREEK>;IGNORE
-<U03CC>	<U039F>;<SMALL>;<TONOS>;IGNORE
-<U03A0>	<U03A0>;<CAPITAL>;<GREEK>;IGNORE
-<U03C0>	<U03A0>;<SMALL>;<GREEK>;IGNORE
-<U03A1>	<U03A1>;<CAPITAL>;<GREEK>;IGNORE
-<U03C1>	<U03A1>;<SMALL>;<GREEK>;IGNORE
-<U03A3>	<U03A3>;<CAPITAL>;<GREEK>;IGNORE
-<U03C3>	<U03A3>;<SMALL>;<GREEK>;IGNORE
-<U03C2>	<U03A3>;<SMALL>;<U03C2>;IGNORE
-<U03A4>	<U03A4>;<CAPITAL>;<GREEK>;IGNORE
-<U03C4>	<U03A4>;<SMALL>;<GREEK>;IGNORE
-<U03A5>	<U03A5>;<CAPITAL>;<GREEK>;IGNORE
-<U038E>	<U03A5>;<CAPITAL>;<TONOS>;IGNORE
-<U03AB>	<U03A5>;<CAPITAL>;<DIALYTICA>;IGNORE
-<U03C5>	<U03A5>;<SMALL>;<GREEK>;IGNORE
-<U03CD>	<U03A5>;<SMALL>;<TONOS>;IGNORE
-<U03CB>	<U03A5>;<SMALL>;<DIALYTICA>;IGNORE
-<U03B0>	<U03A5>;<SMALL>;<DIALYTICA+TONOS>;IGNORE
-<U03A6>	<U03A6>;<CAPITAL>;<GREEK>;IGNORE
-<U03C6>	<U03A6>;<SMALL>;<GREEK>;IGNORE
-<U03A7>	<U03A7>;<CAPITAL>;<GREEK>;IGNORE
-<U03C7>	<U03A7>;<SMALL>;<GREEK>;IGNORE
-<U03A8>	<U03A8>;<CAPITAL>;<GREEK>;IGNORE
-<U03C8>	<U03A8>;<SMALL>;<GREEK>;IGNORE
-<U03A9>	<U03A9>;<CAPITAL>;<GREEK>;IGNORE
-<U038F>	<U03A9>;<CAPITAL>;<TONOS>;IGNORE
-<U03C9>	<U03A9>;<SMALL>;<GREEK>;IGNORE
-<U03CE>	<U03A9>;<SMALL>;<TONOS>;IGNORE
-<U0410>	<U0410>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0430>	<U0410>;<CYRILLIC>;<SMALL>;IGNORE
-<U0411>	<U0411>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0431>	<U0411>;<CYRILLIC>;<SMALL>;IGNORE
-<U0412>	<U0412>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0432>	<U0412>;<CYRILLIC>;<SMALL>;IGNORE
-<U0413>	<U0413>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0433>	<U0413>;<CYRILLIC>;<SMALL>;IGNORE
-<U0403>	<U0403>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0453>	<U0403>;<CYRILLIC>;<SMALL>;IGNORE
-<U0490>	<U0490>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0491>	<U0490>;<CYRILLIC>;<SMALL>;IGNORE
-<U0414>	<U0414>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0434>	<U0414>;<CYRILLIC>;<SMALL>;IGNORE
-<U0402>	<U0402>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0452>	<U0402>;<CYRILLIC>;<SMALL>;IGNORE
-<U0415>	<U0415>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0435>	<U0415>;<CYRILLIC>;<SMALL>;IGNORE
-<U0401>	<U0401>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0451>	<U0401>;<CYRILLIC>;<SMALL>;IGNORE
-<U0404>	<U0404>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0454>	<U0404>;<CYRILLIC>;<SMALL>;IGNORE
-<U0416>	<U0416>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0436>	<U0416>;<CYRILLIC>;<SMALL>;IGNORE
-<U0417>	<U0417>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0437>	<U0417>;<CYRILLIC>;<SMALL>;IGNORE
-<U0418>	<U0418>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0438>	<U0418>;<CYRILLIC>;<SMALL>;IGNORE
-<U0406>	<U0406>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0456>	<U0406>;<CYRILLIC>;<SMALL>;IGNORE
-<U0407>	<U0407>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0457>	<U0407>;<CYRILLIC>;<SMALL>;IGNORE
-<U0408>	<U0408>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0458>	<U0408>;<CYRILLIC>;<SMALL>;IGNORE
-<U0419>	<U0419>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0439>	<U0419>;<CYRILLIC>;<SMALL>;IGNORE
-<U041A>	<U041A>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U043A>	<U041A>;<CYRILLIC>;<SMALL>;IGNORE
-<U040C>	<U040C>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U045C>	<U040C>;<CYRILLIC>;<SMALL>;IGNORE
-<U041B>	<U041B>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U043B>	<U041B>;<CYRILLIC>;<SMALL>;IGNORE
-<U0409>	<U0409>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0459>	<U0409>;<CYRILLIC>;<SMALL>;IGNORE
-<U041C>	<U041C>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U043C>	<U041C>;<CYRILLIC>;<SMALL>;IGNORE
-<U041D>	<U041D>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U043D>	<U041D>;<CYRILLIC>;<SMALL>;IGNORE
-<U040A>	<U040A>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U045A>	<U040A>;<CYRILLIC>;<SMALL>;IGNORE
-<U041E>	<U041E>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U043E>	<U041E>;<CYRILLIC>;<SMALL>;IGNORE
-<U041F>	<U041F>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U043F>	<U041F>;<CYRILLIC>;<SMALL>;IGNORE
-<U0420>	<U0420>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0440>	<U0420>;<CYRILLIC>;<SMALL>;IGNORE
-<U0421>	<U0421>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0441>	<U0421>;<CYRILLIC>;<SMALL>;IGNORE
-<U0422>	<U0422>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0442>	<U0422>;<CYRILLIC>;<SMALL>;IGNORE
-<U040B>	<U040B>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U045B>	<U040B>;<CYRILLIC>;<SMALL>;IGNORE
-<U0423>	<U0423>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0443>	<U0423>;<CYRILLIC>;<SMALL>;IGNORE
-<U040E>	<U040E>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U045E>	<U040E>;<CYRILLIC>;<SMALL>;IGNORE
-<U0424>	<U0424>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0444>	<U0424>;<CYRILLIC>;<SMALL>;IGNORE
-<U0425>	<U0425>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0445>	<U0425>;<CYRILLIC>;<SMALL>;IGNORE
-<U0426>	<U0426>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0446>	<U0426>;<CYRILLIC>;<SMALL>;IGNORE
-<U0405>	<U0405>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0455>	<U0405>;<CYRILLIC>;<SMALL>;IGNORE
-<U0427>	<U0427>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0447>	<U0427>;<CYRILLIC>;<SMALL>;IGNORE
-<U040F>	<U040F>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U045F>	<U040F>;<CYRILLIC>;<SMALL>;IGNORE
-<U0428>	<U0428>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0448>	<U0428>;<CYRILLIC>;<SMALL>;IGNORE
-<U0429>	<U0429>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0449>	<U0429>;<CYRILLIC>;<SMALL>;IGNORE
-<U044A>	<U044A>;<CYRILLIC>;<SMALL>;IGNORE
-<U042A>	<U044A>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U042B>	<U042B>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U044B>	<U042B>;<CYRILLIC>;<SMALL>;IGNORE
-<U044C>	<U044C>;<CYRILLIC>;<SMALL>;IGNORE
-<U042C>	<U044C>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U042D>	<U042D>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U044D>	<U042D>;<CYRILLIC>;<SMALL>;IGNORE
-<U042E>	<U042E>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U044E>	<U042E>;<CYRILLIC>;<SMALL>;IGNORE
-<U042F>	<U042F>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U044F>	<U042F>;<CYRILLIC>;<SMALL>;IGNORE
-<U0462>	<U0462>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0463>	<U0462>;<CYRILLIC>;<SMALL>;IGNORE
-<U046A>	<U046A>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U046B>	<U046A>;<CYRILLIC>;<SMALL>;IGNORE
-<U0472>	<U0472>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0473>	<U0472>;<CYRILLIC>;<SMALL>;IGNORE
-<U0474>	<U0474>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0475>	<U0474>;<CYRILLIC>;<SMALL>;IGNORE
-<U0480>	<U0480>;<CYRILLIC>;<CAPITAL>;IGNORE
-<U0481>	<U0480>;<CYRILLIC>;<SMALL>;IGNORE
-<U05D0>	<U05D0>;IGNORE;IGNORE;IGNORE
-<U05D1>	<U05D1>;IGNORE;IGNORE;IGNORE
-<U05D2>	<U05D2>;IGNORE;IGNORE;IGNORE
-<U05D3>	<U05D3>;IGNORE;IGNORE;IGNORE
-<U05D4>	<U05D4>;IGNORE;IGNORE;IGNORE
-<U05D5>	<U05D5>;IGNORE;IGNORE;IGNORE
-<U05D6>	<U05D6>;IGNORE;IGNORE;IGNORE
-<U05D7>	<U05D7>;IGNORE;IGNORE;IGNORE
-<U05D8>	<U05D8>;IGNORE;IGNORE;IGNORE
-<U05D9>	<U05D9>;IGNORE;IGNORE;IGNORE
-<U05DA>	<U05DA>;IGNORE;IGNORE;IGNORE
-<U05DB>	<U05DB>;IGNORE;IGNORE;IGNORE
-<U05DC>	<U05DC>;IGNORE;IGNORE;IGNORE
-<U05DD>	<U05DD>;IGNORE;IGNORE;IGNORE
-<U05DE>	<U05DE>;IGNORE;IGNORE;IGNORE
-<U05DF>	<U05DF>;IGNORE;IGNORE;IGNORE
-<U05E0>	<U05E0>;IGNORE;IGNORE;IGNORE
-<U05E1>	<U05E1>;IGNORE;IGNORE;IGNORE
-<U05E2>	<U05E2>;IGNORE;IGNORE;IGNORE
-<U05E3>	<U05E3>;IGNORE;IGNORE;IGNORE
-<U05E4>	<U05E4>;IGNORE;IGNORE;IGNORE
-<U05E5>	<U05E5>;IGNORE;IGNORE;IGNORE
-<U05E6>	<U05E6>;IGNORE;IGNORE;IGNORE
-<U05E7>	<U05E7>;IGNORE;IGNORE;IGNORE
-<U05E8>	<U05E8>;IGNORE;IGNORE;IGNORE
-<U05E9>	<U05E9>;IGNORE;IGNORE;IGNORE
-<U05EA>	<U05EA>;IGNORE;IGNORE;IGNORE
-
-% Arabic collating
-
-<U060C>	IGNORE;IGNORE;IGNORE;<U060C>
-<U061B>	IGNORE;IGNORE;IGNORE;<U061B>
-<U061F>	IGNORE;IGNORE;IGNORE;<U061F>
-<U0640>	IGNORE;IGNORE;IGNORE;<U0640>
-
-<U0621>	<U0621>;<U0621>;IGNORE;IGNORE
-<U0622>	<U0622>;<U0622>;IGNORE;IGNORE
-<UFE82>	<U0622>;<UFE82>;IGNORE;IGNORE
-<U0623>	<U0621>;<U0623>;IGNORE;IGNORE
-<UFE84>	<U0621>;<UFE84>;IGNORE;IGNORE
-<U0624>	<U0621>;<U0624>;IGNORE;IGNORE
-<U0625>	<U0621>;<U0625>;IGNORE;IGNORE
-<UFE88>	<U0621>;<UFE88>;IGNORE;IGNORE
-<U0626>	<U0621>;<U0626>;IGNORE;IGNORE
-<U0670>	<U0670>;<U0670>;IGNORE;IGNORE
-<U0627>	<U0627>;<U0627>;IGNORE;IGNORE
-<UFE8D>	<U0627>;<UFE8D>;IGNORE;IGNORE
-<UFE8E>	<U0627>;<UFE8E>;IGNORE;IGNORE
-<UE016>	<U0627>;<UE016>;IGNORE;IGNORE
-<U0628>	<U0628>;<U0628>;IGNORE;IGNORE
-<UFE8F>	<U0628>;<UFE8F>;IGNORE;IGNORE
-<UFE90>	<U0628>;<UFE90>;IGNORE;IGNORE
-<UFE91>	<U0628>;<UFE91>;IGNORE;IGNORE
-<UFE92>	<U0628>;<UFE92>;IGNORE;IGNORE
-<U067E>	<U067E>;<U067E>;IGNORE;IGNORE
-<U06A4>	<U06A4>;<U06A4>;IGNORE;IGNORE
-<U0629>	<U0629>;<U0629>;IGNORE;IGNORE
-<UFE93>	<U0629>;<UFE93>;IGNORE;IGNORE
-<UFE94>	<U0629>;<UFE94>;IGNORE;IGNORE
-<U062A>	<U0629>;<U062A>;IGNORE;IGNORE
-<UFE95>	<U0629>;<UFE95>;IGNORE;IGNORE
-<UFE96>	<U0629>;<UFE96>;IGNORE;IGNORE
-<UFE97>	<U0629>;<UFE97>;IGNORE;IGNORE
-<UFE98>	<U0629>;<UFE98>;IGNORE;IGNORE
-<U062B>	<U062B>;<U062B>;IGNORE;IGNORE
-<UFE99>	<U062B>;<UFE99>;IGNORE;IGNORE
-<UFE9A>	<U062B>;<UFE9A>;IGNORE;IGNORE
-<UFE9B>	<U062B>;<UFE9B>;IGNORE;IGNORE
-<UFE9C>	<U062B>;<UFE9C>;IGNORE;IGNORE
-<U062C>	<U062C>;<U062C>;IGNORE;IGNORE
-<UFE9D>	<U062C>;<UFE9D>;IGNORE;IGNORE
-<UFE9E>	<U062C>;<UFE9E>;IGNORE;IGNORE
-<UFE9F>	<U062C>;<UFE9F>;IGNORE;IGNORE
-<UFEA0>	<U062C>;<UFEA0>;IGNORE;IGNORE
-<U062D>	<U062D>;<U062D>;IGNORE;IGNORE
-<UFEA1>	<U062D>;<UFEA1>;IGNORE;IGNORE
-<UFEA2>	<U062D>;<UFEA2>;IGNORE;IGNORE
-<UFEA3>	<U062D>;<UFEA3>;IGNORE;IGNORE
-<UFEA4>	<U062D>;<UFEA4>;IGNORE;IGNORE
-<U062E>	<U062E>;<U062E>;IGNORE;IGNORE
-<UFEA5>	<U062E>;<UFEA5>;IGNORE;IGNORE
-<UFEA6>	<U062E>;<UFEA6>;IGNORE;IGNORE
-<UFEA7>	<U062E>;<UFEA7>;IGNORE;IGNORE
-<UFEA8>	<U062E>;<UFEA8>;IGNORE;IGNORE
-<U062F>	<U062F>;<U062F>;IGNORE;IGNORE
-<UFEA9>	<U062F>;<UFEA9>;IGNORE;IGNORE
-<UFEAA>	<U062F>;<UFEAA>;IGNORE;IGNORE
-<U0630>	<U0630>;<U0630>;IGNORE;IGNORE
-<UFEAB>	<U0630>;<UFEAB>;IGNORE;IGNORE
-<UFEAC>	<U0630>;<UFEAC>;IGNORE;IGNORE
-<U0631>	<U0631>;<U0631>;IGNORE;IGNORE
-<UFEAD>	<U0631>;<UFEAD>;IGNORE;IGNORE
-<UFEAE>	<U0631>;<UFEAE>;IGNORE;IGNORE
-<U0632>	<U0632>;<U0632>;IGNORE;IGNORE
-<UFEAF>	<U0632>;<UFEAF>;IGNORE;IGNORE
-<UFEB0>	<U0632>;<UFEB0>;IGNORE;IGNORE
-<U0633>	<U0633>;<U0633>;IGNORE;IGNORE
-<UFEB1>	<U0633>;<UFEB1>;IGNORE;IGNORE
-<UFEB2>	<U0633>;<UFEB2>;IGNORE;IGNORE
-<UFEB3>	<U0633>;<UFEB3>;IGNORE;IGNORE
-<UFEB4>	<U0633>;<UFEB4>;IGNORE;IGNORE
-<U0634>	<U0634>;<U0634>;IGNORE;IGNORE
-<UFEB5>	<U0634>;<UFEB5>;IGNORE;IGNORE
-<UFEB6>	<U0634>;<UFEB6>;IGNORE;IGNORE
-<UFEB7>	<U0634>;<UFEB7>;IGNORE;IGNORE
-<UFEB8>	<U0634>;<UFEB8>;IGNORE;IGNORE
-<U0635>	<U0635>;<U0635>;IGNORE;IGNORE
-<UFEB9>	<U0635>;<UFEB9>;IGNORE;IGNORE
-<UFEBA>	<U0635>;<UFEBA>;IGNORE;IGNORE
-<UFEBB>	<U0635>;<UFEBB>;IGNORE;IGNORE
-<UFEBC>	<U0635>;<UFEBC>;IGNORE;IGNORE
-<U0636>	<U0636>;<U0636>;IGNORE;IGNORE
-<UFEBD>	<U0636>;<UFEBD>;IGNORE;IGNORE
-<UFEBE>	<U0636>;<UFEBE>;IGNORE;IGNORE
-<UFEBF>	<U0636>;<UFEBF>;IGNORE;IGNORE
-<UFEC0>	<U0636>;<UFEC0>;IGNORE;IGNORE
-<U0637>	<U0637>;<U0637>;IGNORE;IGNORE
-<UFEC1>	<U0637>;<UFEC1>;IGNORE;IGNORE
-<UFEC2>	<U0637>;<UFEC2>;IGNORE;IGNORE
-<UFEC3>	<U0637>;<UFEC3>;IGNORE;IGNORE
-<UFEC4>	<U0637>;<UFEC4>;IGNORE;IGNORE
-<U0638>	<U0638>;<U0638>;IGNORE;IGNORE
-<UFEC5>	<U0638>;<UFEC5>;IGNORE;IGNORE
-<UFEC6>	<U0638>;<UFEC6>;IGNORE;IGNORE
-<UFEC7>	<U0638>;<UFEC7>;IGNORE;IGNORE
-<UFEC8>	<U0638>;<UFEC8>;IGNORE;IGNORE
-<U0639>	<U0639>;<U0639>;IGNORE;IGNORE
-<UFEC9>	<U0639>;<UFEC9>;IGNORE;IGNORE
-<UFECA>	<U0639>;<UFECA>;IGNORE;IGNORE
-<UFECB>	<U0639>;<UFECB>;IGNORE;IGNORE
-<UFECC>	<U0639>;<UFECC>;IGNORE;IGNORE
-<U063A>	<U063A>;<U063A>;IGNORE;IGNORE
-<UFECD>	<U063A>;<UFECD>;IGNORE;IGNORE
-<UFECE>	<U063A>;<UFECE>;IGNORE;IGNORE
-<UFECF>	<U063A>;<UFECF>;IGNORE;IGNORE
-<UFED0>	<U063A>;<UFED0>;IGNORE;IGNORE
-<U0641>	<U0641>;<U0641>;IGNORE;IGNORE
-<UFED1>	<U0641>;<UFED1>;IGNORE;IGNORE
-<UFED2>	<U0641>;<UFED2>;IGNORE;IGNORE
-<UFED3>	<U0641>;<UFED3>;IGNORE;IGNORE
-<UFED4>	<U0641>;<UFED4>;IGNORE;IGNORE
-<U0642>	<U0642>;<U0642>;IGNORE;IGNORE
-<UFED5>	<U0642>;<UFED5>;IGNORE;IGNORE
-<UFED6>	<U0642>;<UFED6>;IGNORE;IGNORE
-<UFED7>	<U0642>;<UFED7>;IGNORE;IGNORE
-<UFED8>	<U0642>;<UFED8>;IGNORE;IGNORE
-<U0643>	<U0643>;<U0643>;IGNORE;IGNORE
-<UFED9>	<U0643>;<UFED9>;IGNORE;IGNORE
-<UFEDA>	<U0643>;<UFEDA>;IGNORE;IGNORE
-<UFEDB>	<U0643>;<UFEDB>;IGNORE;IGNORE
-<UFEDC>	<U0643>;<UFEDC>;IGNORE;IGNORE
-<U0644>	<U0644>;<U0644>;IGNORE;IGNORE
-<UFEDD>	<U0644>;<UFEDD>;IGNORE;IGNORE
-<UFEDE>	<U0644>;<UFEDE>;IGNORE;IGNORE
-<UFEDF>	<U0644>;<UFEDF>;IGNORE;IGNORE
-<UFEE0>	<U0644>;<UFEE0>;IGNORE;IGNORE
-<U0645>	<U0645>;<U0645>;IGNORE;IGNORE
-<UFEE1>	<U0645>;<UFEE1>;IGNORE;IGNORE
-<UFEE2>	<U0645>;<UFEE2>;IGNORE;IGNORE
-<UFEE3>	<U0645>;<UFEE3>;IGNORE;IGNORE
-<UFEE4>	<U0645>;<UFEE4>;IGNORE;IGNORE
-<U0646>	<U0646>;<U0646>;IGNORE;IGNORE
-<UFEE5>	<U0646>;<UFEE5>;IGNORE;IGNORE
-<UFEE6>	<U0646>;<UFEE6>;IGNORE;IGNORE
-<UFEE7>	<U0646>;<UFEE7>;IGNORE;IGNORE
-<UFEE8>	<U0646>;<UFEE8>;IGNORE;IGNORE
-<U0647>	<U0647>;<U0647>;IGNORE;IGNORE
-<UFEE9>	<U0647>;<UFEE9>;IGNORE;IGNORE
-<UFEEA>	<U0647>;<UFEEA>;IGNORE;IGNORE
-<UFEEB>	<U0647>;<UFEEB>;IGNORE;IGNORE
-<UFEEC>	<U0647>;<UFEEC>;IGNORE;IGNORE
-<U0648>	<U0648>;<U0648>;IGNORE;IGNORE
-<UFEED>	<U0648>;<UFEED>;IGNORE;IGNORE
-<UFEEE>	<U0648>;<UFEEE>;IGNORE;IGNORE
-<U0649>	<U0649>;<U0649>;IGNORE;IGNORE
-<UFEEF>	<U0649>;<UFEEF>;IGNORE;IGNORE
-<UFEF0>	<U0649>;<UFEF0>;IGNORE;IGNORE
-<U064A>	<U064A>;<U064A>;IGNORE;IGNORE
-<UFEF1>	<U064A>;<UFEF1>;IGNORE;IGNORE
-<UFEF2>	<U064A>;<UFEF2>;IGNORE;IGNORE
-<UFEF3>	<U064A>;<UFEF3>;IGNORE;IGNORE
-<UFEF4>	<U064A>;<UFEF4>;IGNORE;IGNORE
-
-<U064B>	IGNORE;IGNORE;<U064B>;IGNORE
-<U064C>	IGNORE;IGNORE;<U064C>;IGNORE
-<U064D>	IGNORE;IGNORE;<U064D>;IGNORE
-<U064E>	IGNORE;IGNORE;<U064E>;IGNORE
-<U064F>	IGNORE;IGNORE;<U064F>;IGNORE
-<U0650>	IGNORE;IGNORE;<U0650>;IGNORE
-<U0651>	IGNORE;IGNORE;<U0651>;IGNORE
-<UFE7D>	IGNORE;IGNORE;<UFE7D>;IGNORE
-<U0652>	IGNORE;IGNORE;<U0652>;IGNORE
-
-<U0660>	<U0030>;<U0660>;IGNORE;IGNORE
-<U0661>	<U0031>;<U0661>;IGNORE;IGNORE
-<U0662>	<U0032>;<U0662>;IGNORE;IGNORE
-<U0663>	<U0033>;<U0663>;IGNORE;IGNORE
-<U0664>	<U0034>;<U0664>;IGNORE;IGNORE
-<U0665>	<U0035>;<U0665>;IGNORE;IGNORE
-<U0666>	<U0036>;<U0666>;IGNORE;IGNORE
-<U0667>	<U0037>;<U0667>;IGNORE;IGNORE
-<U0668>	<U0038>;<U0668>;IGNORE;IGNORE
-<U0669>	<U0039>;<U0669>;IGNORE;IGNORE
-
-<UFEF5>	"<U0644><U0622>";"<U0644><U0622>";"<UFEF5><UFEF5>";IGNORE
-<UFEF6>	"<U0644><U0622>";"<U0644><UFE82>";"<UFEF6><UFEF6>";IGNORE
-<UFEF7>	"<U0644><U0623>";"<U0644><U0623>";"<UFEF7><UFEF7>";IGNORE
-<UFEF8>	"<U0644><U0623>";"<U0644><UFE84>";"<UFEF8><UFEF8>";IGNORE
-<UFEF9>	"<U0644><U0625>";"<U0644><U0625>";"<UFEF9><UFEF9>";IGNORE
-<UFEFA>	"<U0644><U0625>";"<U0644><UFE88>";"<UFEFA><UFEFA>";IGNORE
-<UFEFB>	"<U0644><U0627>";"<U0644><UFE8D>";"<UFEFB><UFEFB>";IGNORE
-<UFEFC>	"<U0644><U0627>";"<U0644><UFE8E>";"<UFEFC><UFEFC>";IGNORE
-
-% katakana/hiragana sorting
-% base is katakana, as this is present in most charsets
-% normal before voiced before semi-voiced
-% small vocals before normal vocals
-% katakana before hiragana
-
-<U30A1>	<U30A1>;<U30A1>;IGNORE;IGNORE
-<U3041>	<U30A1>;<U3041>;IGNORE;IGNORE
-<U30A2>	<U30A1>;<U30A2>;IGNORE;IGNORE
-<U3042>	<U30A1>;<U3042>;IGNORE;IGNORE
-<U30A3>	<U30A3>;<U30A3>;IGNORE;IGNORE
-<U3043>	<U30A3>;<U3043>;IGNORE;IGNORE
-<U30A4>	<U30A3>;<U30A4>;IGNORE;IGNORE
-<U3044>	<U30A3>;<U3044>;IGNORE;IGNORE
-<U30A5>	<U30A5>;<U30A5>;IGNORE;IGNORE
-<U3045>	<U30A5>;<U3045>;IGNORE;IGNORE
-<U30A6>	<U30A5>;<U30A6>;IGNORE;IGNORE
-<U3046>	<U30A5>;<U3046>;IGNORE;IGNORE
-<U30F4>	<U30A5>;<U30F4>;IGNORE;IGNORE
-<U30A7>	<U30A7>;<U30A7>;IGNORE;IGNORE
-<U3047>	<U30A7>;<U3047>;IGNORE;IGNORE
-<U30A8>	<U30A7>;<U30A8>;IGNORE;IGNORE
-<U3048>	<U30A7>;<U3048>;IGNORE;IGNORE
-<U30A9>	<U30A9>;<U30A9>;IGNORE;IGNORE
-<U3049>	<U30A9>;<U3049>;IGNORE;IGNORE
-<U30AA>	<U30A9>;<U30AA>;IGNORE;IGNORE
-<U304A>	<U30A9>;<U304A>;IGNORE;IGNORE
-<U30F5>	<U30F5>;<U30F5>;IGNORE;IGNORE
-<U30AB>	<U30F5>;<U30AB>;IGNORE;IGNORE
-<U304B>	<U30F5>;<U304B>;IGNORE;IGNORE
-<U30AC>	<U30F5>;<U30AC>;IGNORE;IGNORE
-<U304C>	<U30F5>;<U304C>;IGNORE;IGNORE
-<U30AD>	<U30AD>;<U30AD>;IGNORE;IGNORE
-<U304D>	<U30AD>;<U304D>;IGNORE;IGNORE
-<U30AE>	<U30AD>;<U30AE>;IGNORE;IGNORE
-<U304E>	<U30AD>;<U304E>;IGNORE;IGNORE
-<U30AF>	<U30AF>;<U30AF>;IGNORE;IGNORE
-<U304F>	<U30AF>;<U304F>;IGNORE;IGNORE
-<U30B0>	<U30AF>;<U30B0>;IGNORE;IGNORE
-<U3050>	<U30AF>;<U3050>;IGNORE;IGNORE
-<U30F6>	<U30F6>;<U30F6>;IGNORE;IGNORE
-<U30B1>	<U30F6>;<U30B1>;IGNORE;IGNORE
-<U3051>	<U30F6>;<U3051>;IGNORE;IGNORE
-<U30B2>	<U30F6>;<U30B2>;IGNORE;IGNORE
-<U3052>	<U30F6>;<U3052>;IGNORE;IGNORE
-<U30B3>	<U30B3>;<U30B3>;IGNORE;IGNORE
-<U3053>	<U30B3>;<U3053>;IGNORE;IGNORE
-<U30B4>	<U30B3>;<U30B4>;IGNORE;IGNORE
-<U3054>	<U30B3>;<U3054>;IGNORE;IGNORE
-<U30B5>	<U30B5>;<U30B5>;IGNORE;IGNORE
-<U3055>	<U30B5>;<U3055>;IGNORE;IGNORE
-<U30B6>	<U30B5>;<U30B6>;IGNORE;IGNORE
-<U3056>	<U30B5>;<U3056>;IGNORE;IGNORE
-<U30B7>	<U30B7>;<U30B7>;IGNORE;IGNORE
-<U3057>	<U30B7>;<U3057>;IGNORE;IGNORE
-<U30B8>	<U30B7>;<U30B8>;IGNORE;IGNORE
-<U3058>	<U30B7>;<U3058>;IGNORE;IGNORE
-<U30B9>	<U30B9>;<U30B9>;IGNORE;IGNORE
-<U3059>	<U30B9>;<U3059>;IGNORE;IGNORE
-<U30BA>	<U30B9>;<U30BA>;IGNORE;IGNORE
-<U305A>	<U30B9>;<U305A>;IGNORE;IGNORE
-<U30BB>	<U30BB>;<U30BB>;IGNORE;IGNORE
-<U305B>	<U30BB>;<U305B>;IGNORE;IGNORE
-<U30BC>	<U30BB>;<U30BC>;IGNORE;IGNORE
-<U305C>	<U30BB>;<U305C>;IGNORE;IGNORE
-<U30BD>	<U30BD>;<U30BD>;IGNORE;IGNORE
-<U305D>	<U30BD>;<U305D>;IGNORE;IGNORE
-<U30BE>	<U30BD>;<U30BE>;IGNORE;IGNORE
-<U305E>	<U30BD>;<U305E>;IGNORE;IGNORE
-<U30BF>	<U30BF>;<U30BF>;IGNORE;IGNORE
-<U305F>	<U30BF>;<U305F>;IGNORE;IGNORE
-<U30C0>	<U30BF>;<U30C0>;IGNORE;IGNORE
-<U3060>	<U30BF>;<U3060>;IGNORE;IGNORE
-<U30C1>	<U30C1>;<U30C1>;IGNORE;IGNORE
-<U3061>	<U30C1>;<U3061>;IGNORE;IGNORE
-<U30C2>	<U30C1>;<U30C2>;IGNORE;IGNORE
-<U3062>	<U30C1>;<U3062>;IGNORE;IGNORE
-<U30C3>	<U30C3>;<U30C3>;IGNORE;IGNORE
-<U3063>	<U30C3>;<U3063>;IGNORE;IGNORE
-<U30C4>	<U30C3>;<U30C4>;IGNORE;IGNORE
-<U3064>	<U30C3>;<U3064>;IGNORE;IGNORE
-<U30C5>	<U30C3>;<U30C5>;IGNORE;IGNORE
-<U3065>	<U30C3>;<U3065>;IGNORE;IGNORE
-<U30C6>	<U30C6>;<U30C6>;IGNORE;IGNORE
-<U3066>	<U30C6>;<U3066>;IGNORE;IGNORE
-<U30C7>	<U30C6>;<U30C7>;IGNORE;IGNORE
-<U3067>	<U30C6>;<U3067>;IGNORE;IGNORE
-<U30C8>	<U30C8>;<U30C8>;IGNORE;IGNORE
-<U3068>	<U30C8>;<U3068>;IGNORE;IGNORE
-<U30C9>	<U30C8>;<U30C9>;IGNORE;IGNORE
-<U3069>	<U30C8>;<U3069>;IGNORE;IGNORE
-<U30CA>	<U30CA>;<U30CA>;IGNORE;IGNORE
-<U306A>	<U30CA>;<U306A>;IGNORE;IGNORE
-<U30CB>	<U30CB>;<U30CB>;IGNORE;IGNORE
-<U306B>	<U30CB>;<U306B>;IGNORE;IGNORE
-<U30CC>	<U30CC>;<U30CC>;IGNORE;IGNORE
-<U306C>	<U30CC>;<U306C>;IGNORE;IGNORE
-<U30CD>	<U30CD>;<U30CD>;IGNORE;IGNORE
-<U306D>	<U30CD>;<U306D>;IGNORE;IGNORE
-<U30CE>	<U30CE>;<U30CE>;IGNORE;IGNORE
-<U306E>	<U30CE>;<U306E>;IGNORE;IGNORE
-<U30CF>	<U30CF>;<U30CF>;IGNORE;IGNORE
-<U306F>	<U30CF>;<U306F>;IGNORE;IGNORE
-<U30D0>	<U30CF>;<U30D0>;IGNORE;IGNORE
-<U3070>	<U30CF>;<U3070>;IGNORE;IGNORE
-<U30D1>	<U30CF>;<U30D1>;IGNORE;IGNORE
-<U3071>	<U30CF>;<U3071>;IGNORE;IGNORE
-<U30D2>	<U30D2>;<U30D2>;IGNORE;IGNORE
-<U3072>	<U30D2>;<U3072>;IGNORE;IGNORE
-<U30D3>	<U30D2>;<U30D3>;IGNORE;IGNORE
-<U3073>	<U30D2>;<U3073>;IGNORE;IGNORE
-<U30D4>	<U30D2>;<U30D4>;IGNORE;IGNORE
-<U3074>	<U30D2>;<U3074>;IGNORE;IGNORE
-<U30D5>	<U30D5>;<U30D5>;IGNORE;IGNORE
-<U3075>	<U30D5>;<U3075>;IGNORE;IGNORE
-<U30D6>	<U30D5>;<U30D6>;IGNORE;IGNORE
-<U3076>	<U30D5>;<U3076>;IGNORE;IGNORE
-<U30D7>	<U30D5>;<U30D7>;IGNORE;IGNORE
-<U3077>	<U30D5>;<U3077>;IGNORE;IGNORE
-<U30D8>	<U30D8>;<U30D8>;IGNORE;IGNORE
-<U3078>	<U30D8>;<U3078>;IGNORE;IGNORE
-<U30D9>	<U30D8>;<U30D9>;IGNORE;IGNORE
-<U3079>	<U30D8>;<U3079>;IGNORE;IGNORE
-<U30DA>	<U30D8>;<U30DA>;IGNORE;IGNORE
-<U307A>	<U30D8>;<U307A>;IGNORE;IGNORE
-<U30DB>	<U30DB>;<U30DB>;IGNORE;IGNORE
-<U307B>	<U30DB>;<U307B>;IGNORE;IGNORE
-<U30DC>	<U30DB>;<U30DC>;IGNORE;IGNORE
-<U307C>	<U30DB>;<U307C>;IGNORE;IGNORE
-<U30DD>	<U30DB>;<U30DD>;IGNORE;IGNORE
-<U307D>	<U30DB>;<U307D>;IGNORE;IGNORE
-<U30DE>	<U30DE>;<U30DE>;IGNORE;IGNORE
-<U307E>	<U30DE>;<U307E>;IGNORE;IGNORE
-<U30DF>	<U30DF>;<U30DF>;IGNORE;IGNORE
-<U307F>	<U30DF>;<U307F>;IGNORE;IGNORE
-<U30E0>	<U30E0>;<U30E0>;IGNORE;IGNORE
-<U3080>	<U30E0>;<U3080>;IGNORE;IGNORE
-<U30E1>	<U30E1>;<U30E1>;IGNORE;IGNORE
-<U3081>	<U30E1>;<U3081>;IGNORE;IGNORE
-<U30E2>	<U30E2>;<U30E2>;IGNORE;IGNORE
-<U3082>	<U30E2>;<U3082>;IGNORE;IGNORE
-<U30E3>	<U30E3>;<U30E3>;IGNORE;IGNORE
-<U3083>	<U30E3>;<U3083>;IGNORE;IGNORE
-<U30E4>	<U30E3>;<U30E4>;IGNORE;IGNORE
-<U3084>	<U30E3>;<U3084>;IGNORE;IGNORE
-<U30E5>	<U30E5>;<U30E5>;IGNORE;IGNORE
-<U3085>	<U30E5>;<U3085>;IGNORE;IGNORE
-<U30E6>	<U30E5>;<U30E6>;IGNORE;IGNORE
-<U3086>	<U30E5>;<U3086>;IGNORE;IGNORE
-<U30E7>	<U30E7>;<U30E7>;IGNORE;IGNORE
-<U3087>	<U30E7>;<U3087>;IGNORE;IGNORE
-<U30E8>	<U30E7>;<U30E8>;IGNORE;IGNORE
-<U3088>	<U30E7>;<U3088>;IGNORE;IGNORE
-<U30E9>	<U30E9>;<U30E9>;IGNORE;IGNORE
-<U3089>	<U30E9>;<U3089>;IGNORE;IGNORE
-<U30EA>	<U30EA>;<U30EA>;IGNORE;IGNORE
-<U308A>	<U30EA>;<U308A>;IGNORE;IGNORE
-<U30EB>	<U30EB>;<U30EB>;IGNORE;IGNORE
-<U308B>	<U30EB>;<U308B>;IGNORE;IGNORE
-<U30EC>	<U30EC>;<U30EC>;IGNORE;IGNORE
-<U308C>	<U30EC>;<U308C>;IGNORE;IGNORE
-<U30ED>	<U30ED>;<U30ED>;IGNORE;IGNORE
-<U308D>	<U30ED>;<U308D>;IGNORE;IGNORE
-<U30EE>	<U30EE>;<U30EE>;IGNORE;IGNORE
-<U308E>	<U30EE>;<U308E>;IGNORE;IGNORE
-<U30EF>	<U30EE>;<U30EF>;IGNORE;IGNORE
-<U308F>	<U30EE>;<U308F>;IGNORE;IGNORE
-<U30F0>	<U30F0>;<U30F0>;IGNORE;IGNORE
-<U3090>	<U30F0>;<U3090>;IGNORE;IGNORE
-<U30F1>	<U30F1>;<U30F1>;IGNORE;IGNORE
-<U3091>	<U30F1>;<U3091>;IGNORE;IGNORE
-<U30F2>	<U30F2>;<U30F2>;IGNORE;IGNORE
-<U3092>	<U30F2>;<U3092>;IGNORE;IGNORE
-<U30F3>	<U30F3>;<U30F3>;IGNORE;IGNORE
-<U3093>	<U30F3>;<U3093>;IGNORE;IGNORE
-
-order_end
-
+% Copy the template from ISO/IEC 14651
+copy "iso14651_t1"
 END LC_COLLATE
 
 LC_CTYPE
@@ -2135,9 +75,9 @@ positive_sign        ""
 negative_sign        "<U002D>"
 int_frac_digits      2
 frac_digits          2
-p_cs_precedes        1
+p_cs_precedes        0
 p_sep_by_space       1
-n_cs_precedes        1
+n_cs_precedes        0
 n_sep_by_space       1
 p_sign_posn          1
 n_sign_posn          1
diff --git a/localedata/locales/hu_HU b/localedata/locales/hu_HU
index 95be95b0a3..97e544df6a 100644
--- a/localedata/locales/hu_HU
+++ b/localedata/locales/hu_HU
@@ -543,8 +543,8 @@ measurement    1
 END LC_MEASUREMENT
 
 LC_NAME
-name_fmt    "<U0025><U0064><U0025><U0074><U0025><U0067><U0025><U0074>/
-<U0025><U006D><U0025><U0074><U0025><U0066>"
+name_fmt    "<U0025><U0064><U0025><U0074><U0025><U0066><U0025><U0074>/
+<U0025><U006D><U0025><U0074><U0025><U0067>"
 END LC_NAME
 
 LC_ADDRESS
diff --git a/localedata/locales/iso14651_t1_common b/localedata/locales/iso14651_t1_common
index bf6b63338e..ab36f0ed9f 100644
--- a/localedata/locales/iso14651_t1_common
+++ b/localedata/locales/iso14651_t1_common
@@ -61,6 +61,7 @@ script <CYRIL>
 script <ARMENIAN>
 script <GEORGIAN>
 script <DEVANAGARI>
+script <GUJARATI>
 
 # Déclaration des symboles internes / Declaration of internal symbols
 #
@@ -474,84 +475,84 @@ collating-symbol <GEORG-FI>
 collating-symbol <NUM>
 collating-symbol <NKT>
 collating-symbol <dv-abbrevation>
-collating-symbol <dom> 
-collating-symbol <dvw-shorta> 
-collating-symbol <dvw-a> 
-collating-symbol <dvw-aa> 
-collating-symbol <dvw-i> 
-collating-symbol <dvw-ii> 
-collating-symbol <dvw-u> 
-collating-symbol <dvw-uu> 
-collating-symbol <dvw-vocalicr> 
-collating-symbol <dvw-vocalicrr> 
-collating-symbol <dvw-vocalicl> 
-collating-symbol <dvw-vocalicll> 
-collating-symbol <dvw-candrae> 
-collating-symbol <dvw-shorte> 
-collating-symbol <dvw-e> 
-collating-symbol <dvw-ai> 
-collating-symbol <dvw-candrao> 
-collating-symbol <dvw-shorto> 
-collating-symbol <dvw-o> 
-collating-symbol <dvw-au> 
-collating-symbol <d_ka> 
-collating-symbol <d_kha> 
-collating-symbol <d_ga> 
-collating-symbol <d_gga> 
-collating-symbol <d_gha> 
-collating-symbol <d_nga> 
-collating-symbol <d_ca> 
-collating-symbol <d_cha> 
-collating-symbol <d_ja> 
-collating-symbol <d_jja> 
-collating-symbol <d_jha> 
-collating-symbol <d_nya> 
-collating-symbol <d_tta> 
-collating-symbol <d_ttha> 
-collating-symbol <d_dda> 
-collating-symbol <d_ddda> 
-collating-symbol <d_ddha> 
-collating-symbol <d_nna> 
-collating-symbol <d_ta> 
-collating-symbol <d_tha> 
-collating-symbol <d_da> 
-collating-symbol <d_dha> 
-collating-symbol <d_na> 
-collating-symbol <d_pa> 
-collating-symbol <d_pha> 
-collating-symbol <d_ba> 
+collating-symbol <dom>
+collating-symbol <dvw-shorta>
+collating-symbol <dvw-a>
+collating-symbol <dvw-aa>
+collating-symbol <dvw-i>
+collating-symbol <dvw-ii>
+collating-symbol <dvw-u>
+collating-symbol <dvw-uu>
+collating-symbol <dvw-vocalicr>
+collating-symbol <dvw-vocalicrr>
+collating-symbol <dvw-vocalicl>
+collating-symbol <dvw-vocalicll>
+collating-symbol <dvw-candrae>
+collating-symbol <dvw-shorte>
+collating-symbol <dvw-e>
+collating-symbol <dvw-ai>
+collating-symbol <dvw-candrao>
+collating-symbol <dvw-shorto>
+collating-symbol <dvw-o>
+collating-symbol <dvw-au>
+collating-symbol <d_ka>
+collating-symbol <d_kha>
+collating-symbol <d_ga>
+collating-symbol <d_gga>
+collating-symbol <d_gha>
+collating-symbol <d_nga>
+collating-symbol <d_ca>
+collating-symbol <d_cha>
+collating-symbol <d_ja>
+collating-symbol <d_jja>
+collating-symbol <d_jha>
+collating-symbol <d_nya>
+collating-symbol <d_tta>
+collating-symbol <d_ttha>
+collating-symbol <d_dda>
+collating-symbol <d_ddda>
+collating-symbol <d_ddha>
+collating-symbol <d_nna>
+collating-symbol <d_ta>
+collating-symbol <d_tha>
+collating-symbol <d_da>
+collating-symbol <d_dha>
+collating-symbol <d_na>
+collating-symbol <d_pa>
+collating-symbol <d_pha>
+collating-symbol <d_ba>
 collating-symbol <d_bba>
-collating-symbol <d_bha> 
-collating-symbol <d_ma> 
-collating-symbol <d_ya> 
-collating-symbol <d_ra> 
-collating-symbol <d_la> 
-collating-symbol <d_lla> 
-collating-symbol <d_va> 
-collating-symbol <d_sha> 
-collating-symbol <d_ssa> 
-collating-symbol <d_sa> 
-collating-symbol <d_ha> 
-collating-symbol <d_avagrah> 
-collating-symbol <d_glo-stop> 
-collating-symbol <dm-aa> 
-collating-symbol <dm-i> 
-collating-symbol <dm-ii> 
-collating-symbol <dm-u> 
+collating-symbol <d_bha>
+collating-symbol <d_ma>
+collating-symbol <d_ya>
+collating-symbol <d_ra>
+collating-symbol <d_la>
+collating-symbol <d_lla>
+collating-symbol <d_va>
+collating-symbol <d_sha>
+collating-symbol <d_ssa>
+collating-symbol <d_sa>
+collating-symbol <d_ha>
+collating-symbol <d_avagrah>
+collating-symbol <d_glo-stop>
+collating-symbol <dm-aa>
+collating-symbol <dm-i>
+collating-symbol <dm-ii>
+collating-symbol <dm-u>
 collating-symbol <dm-uu>
-collating-symbol <dm-vocalicr> 
-collating-symbol <dm-vocalicrr> 
-collating-symbol <dm-vocalicl> 
-collating-symbol <dm-vocalicll> 
-collating-symbol <dm-candrae> 
-collating-symbol <dm-shorte> 
-collating-symbol <dm-e> 
-collating-symbol <dm-ai> 
-collating-symbol <dm-candrao> 
-collating-symbol <dm-shorto> 
-collating-symbol <dm-o> 
-collating-symbol <dm-au> 
-collating-symbol <dvd-anuswara> 
+collating-symbol <dm-vocalicr>
+collating-symbol <dm-vocalicrr>
+collating-symbol <dm-vocalicl>
+collating-symbol <dm-vocalicll>
+collating-symbol <dm-candrae>
+collating-symbol <dm-shorte>
+collating-symbol <dm-e>
+collating-symbol <dm-ai>
+collating-symbol <dm-candrao>
+collating-symbol <dm-shorto>
+collating-symbol <dm-o>
+collating-symbol <dm-au>
+collating-symbol <dvd-anuswara>
 collating-symbol <dvd-chandrabindu>
 collating-symbol <dvd-visarg>
 collating-symbol <d_halant>
@@ -560,6 +561,96 @@ collating-symbol <d_anudatta>
 collating-symbol <dv-grave>
 collating-symbol <dv-acute>
 
+#<GUJARATI>
+#
+# Added Akhand Characters in sorting as per requirement of mr_IN
+# gvd- denotes vowel modifier
+# gm-  denotes matras
+# gvw- denotes vowels
+# <GNKT> denotes Nukta characters
+
+collating-element <gu-ksha> from "<U0A95><U0ACD><U0AB7>"
+collating-element <gu-dnya> from "<U0A9C><U0ACD><U0A9E>"
+collating-element <gu-shra> from "<U0AB6><U0ACD><U0AB0>"
+collating-element <gu-tra>  from "<U0AA4><U0ACD><U0AB0>"
+
+# defning symbols
+collating-symbol <GNKT>
+collating-symbol <gom>
+collating-symbol <gvw-a>
+collating-symbol <gvw-aa>
+collating-symbol <gvw-i>
+collating-symbol <gvw-ii>
+collating-symbol <gvw-u>
+collating-symbol <gvw-uu>
+collating-symbol <gvw-vocalicr>
+collating-symbol <gvw-vocalicrr>
+collating-symbol <gvw-vocalicl>
+collating-symbol <gvw-vocalicll>
+collating-symbol <gvw-candrae>
+collating-symbol <gvw-e>
+collating-symbol <gvw-ai>
+collating-symbol <gvw-candrao>
+collating-symbol <gvw-o>
+collating-symbol <gvw-au>
+collating-symbol <g-ka>
+collating-symbol <g-kha>
+collating-symbol <g-ga>
+collating-symbol <g-gha>
+collating-symbol <g-nga>
+collating-symbol <g-ca>
+collating-symbol <g-cha>
+collating-symbol <g-ja>
+collating-symbol <g-jha>
+collating-symbol <g-nya>
+collating-symbol <g-tta>
+collating-symbol <g-ttha>
+collating-symbol <g-dda>
+collating-symbol <g-ddha>
+collating-symbol <g-nna>
+collating-symbol <g-ta>
+collating-symbol <g-tha>
+collating-symbol <g-da>
+collating-symbol <g-dha>
+collating-symbol <g-na>
+collating-symbol <g-pa>
+collating-symbol <g-pha>
+collating-symbol <g-ba>
+collating-symbol <g-bha>
+collating-symbol <g-ma>
+collating-symbol <g-ya>
+collating-symbol <g-ra>
+collating-symbol <g-la>
+collating-symbol <g-lla>
+collating-symbol <g-va>
+collating-symbol <g-sha>
+collating-symbol <g-ssa>
+collating-symbol <g-sa>
+collating-symbol <g-ha>
+collating-symbol <g-ksha>
+collating-symbol <g-dnya>
+collating-symbol <g-shra>
+collating-symbol <g-tra>
+collating-symbol <g-avagrah>
+collating-symbol <gm-aa>
+collating-symbol <gm-i>
+collating-symbol <gm-ii>
+collating-symbol <gm-u>
+collating-symbol <gm-uu>
+collating-symbol <gm-vocalicr>
+collating-symbol <gm-vocalicrr>
+collating-symbol <gm-vocalicl>
+collating-symbol <gm-vocalicll>
+collating-symbol <gm-candrae>
+collating-symbol <gm-e>
+collating-symbol <gm-ai>
+collating-symbol <gm-candrao>
+collating-symbol <gm-o>
+collating-symbol <gm-au>
+collating-symbol <gvd-anuswara>
+collating-symbol <gvd-chandrabindu>
+collating-symbol <gvd-visarg>
+collating-symbol <g-halant>
 
 # Ordre des symboles internes / Order of internal symbols
 #
@@ -983,87 +1074,168 @@ collating-symbol <dv-acute>
 <dv-grave>
 <dv-acute>
 <dv-abbrevation>
-<dom> 
-<dvw-shorta> 
-<dvw-a> 
-<dvw-aa> 
-<dvw-i> 
-<dvw-ii> 
-<dvw-u> 
-<dvw-uu> 
-<dvw-vocalicr> 
-<dvw-vocalicrr> 
-<dvw-vocalicl> 
-<dvw-vocalicll> 
-<dvw-candrae> 
-<dvw-shorte> 
-<dvw-e> 
-<dvw-ai> 
-<dvw-candrao> 
-<dvw-shorto> 
-<dvw-o> 
-<dvw-au> 
-<d_ka> 
-<d_kha> 
-<d_ga> 
-<d_gga> 
-<d_gha> 
-<d_nga> 
-<d_ca> 
-<d_cha> 
-<d_ja> 
-<d_jja> 
-<d_jha> 
-<d_nya> 
-<d_tta> 
-<d_ttha> 
-<d_dda> 
-<d_ddda> 
-<d_ddha> 
-<d_nna> 
-<d_ta> 
-<d_tha> 
-<d_da> 
-<d_dha> 
-<d_na> 
-<d_pa> 
-<d_pha> 
-<d_ba> 
+<dom>
+<dvw-shorta>
+<dvw-a>
+<dvw-aa>
+<dvw-i>
+<dvw-ii>
+<dvw-u>
+<dvw-uu>
+<dvw-vocalicr>
+<dvw-vocalicrr>
+<dvw-vocalicl>
+<dvw-vocalicll>
+<dvw-candrae>
+<dvw-shorte>
+<dvw-e>
+<dvw-ai>
+<dvw-candrao>
+<dvw-shorto>
+<dvw-o>
+<dvw-au>
+<d_ka>
+<d_kha>
+<d_ga>
+<d_gga>
+<d_gha>
+<d_nga>
+<d_ca>
+<d_cha>
+<d_ja>
+<d_jja>
+<d_jha>
+<d_nya>
+<d_tta>
+<d_ttha>
+<d_dda>
+<d_ddda>
+<d_ddha>
+<d_nna>
+<d_ta>
+<d_tha>
+<d_da>
+<d_dha>
+<d_na>
+<d_pa>
+<d_pha>
+<d_ba>
 <d_bba>
-<d_bha> 
-<d_ma> 
-<d_ya> 
-<d_ra> 
-<d_la> 
-<d_lla> 
-<d_va> 
-<d_sha> 
-<d_ssa> 
-<d_sa> 
-<d_ha> 
-<d_avagrah> 
-<d_glo-stop> 
-<dm-aa> 
-<dm-i> 
-<dm-ii> 
-<dm-u> 
+<d_bha>
+<d_ma>
+<d_ya>
+<d_ra>
+<d_la>
+<d_lla>
+<d_va>
+<d_sha>
+<d_ssa>
+<d_sa>
+<d_ha>
+<d_avagrah>
+<d_glo-stop>
+<dm-aa>
+<dm-i>
+<dm-ii>
+<dm-u>
 <dm-uu>
-<dm-vocalicr> 
-<dm-vocalicrr> 
-<dm-vocalicl> 
-<dm-vocalicll> 
-<dm-candrae> 
-<dm-shorte> 
-<dm-e> 
-<dm-ai> 
-<dm-candrao> 
-<dm-shorto> 
-<dm-o> 
-<dm-au> 
+<dm-vocalicr>
+<dm-vocalicrr>
+<dm-vocalicl>
+<dm-vocalicll>
+<dm-candrae>
+<dm-shorte>
+<dm-e>
+<dm-ai>
+<dm-candrao>
+<dm-shorto>
+<dm-o>
+<dm-au>
 <dvd-anuswara>
 <dvd-chandrabindu>
 <dvd-visarg>
 <d_halant>
+#
+# <GUJARATI>
+#
+# collation weights in order
+
+<GNKT>
+<gom>
+<gvw-a>
+<gvw-aa>
+<gvw-i>
+<gvw-ii>
+<gvw-u>
+<gvw-uu>
+<gvw-vocalicr>
+<gvw-vocalicrr>
+<gvw-vocalicl>
+<gvw-vocalicll>
+<gvw-candrae>
+<gvw-e>
+<gvw-ai>
+<gvw-candrao>
+<gvw-o>
+<gvw-au>
+<g-ka>
+<g-kha>
+<g-ga>
+<g-gha>
+<g-nga>
+<g-ca>
+<g-cha>
+<g-ja>
+<g-jha>
+<g-nya>
+<g-tta>
+<g-ttha>
+<g-dda>
+<g-ddha>
+<g-nna>
+<g-ta>
+<g-tha>
+<g-da>
+<g-dha>
+<g-na>
+<g-pa>
+<g-pha>
+<g-ba>
+<g-bha>
+<g-ma>
+<g-ya>
+<g-ra>
+<g-la>
+<g-lla>
+<g-va>
+<g-sha>
+<g-ssa>
+<g-sa>
+<g-ha>
+<g-ksha>
+<g-dnya>
+<g-shra>
+<g-tra>
+<g-avagrah>
+<gm-aa>
+<gm-i>
+<gm-ii>
+<gm-u>
+<gm-uu>
+<gm-vocalicr>
+<gm-vocalicrr>
+<gm-vocalicl>
+<gm-vocalicll>
+<gm-candrae>
+<gm-e>
+<gm-ai>
+<gm-candrao>
+<gm-o>
+<gm-au>
+<gvd-anuswara>
+<gvd-chandrabindu>
+<gvd-visarg>
+<g-halant>
 
 order_start <SPECIAL>;forward;backward;forward;forward,position
 #
@@ -1899,11 +2071,11 @@ endif
 <U0160> <s>;<CAR>;<CAP>;IGNORE # 742 <S<>
 <U015E> <s>;<CDI>;<CAP>;IGNORE # 743 <S,>
 <U0218> <s>;<CDI>;<CAP>;IGNORE # 744 Ș
-<U1E60> <r>;<PCT>;<CAP>;IGNORE # 745 Ṡ
-<U1E62> <r>;<BPT>;<CAP>;IGNORE # 746 Ṣ
-<U1E64> <r>;<ACA>;<CAP>;<PCT> # 747 Ṥ
-<U1E66> <r>;<CAR>;<CAP>;<PCT> # 748 Ṧ
-<U1E68> <r>;<BPT>;<CAP>;<PCT> # 749 Ṩ
+<U1E60> <s>;<PCT>;<CAP>;IGNORE # 745 Ṡ
+<U1E62> <s>;<BPT>;<CAP>;IGNORE # 746 Ṣ
+<U1E64> <s>;<ACA>;<CAP>;<PCT> # 747 Ṥ
+<U1E66> <s>;<CAR>;<CAP>;<PCT> # 748 Ṧ
+<U1E68> <s>;<BPT>;<CAP>;<PCT> # 749 Ṩ
 <U0054> <t>;<BAS>;<CAP>;IGNORE # 750 T
 <U0164> <t>;<CAR>;<CAP>;IGNORE # 751 <T<>
 <U0166> <t>;<OBL>;<CAP>;IGNORE # 752 <T//>
@@ -2843,104 +3015,192 @@ order_start <DEVANAGARI>;forward;forward;forward;forward,position
 <U096D> <7>;"<BAS><NUM>";"<MIN><MIN>";IGNORE
 <U096E> <8>;"<BAS><NUM>";"<MIN><MIN>";IGNORE
 <U096F> <9>;"<BAS><NUM>";"<MIN><MIN>";IGNORE
-<U0950> <dom> ;<BAS>;<MIN>;IGNORE 
+<U0950> <dom> ;<BAS>;<MIN>;IGNORE
 <U0904>  <dvw-shorta> ;<BAS>;<MIN>;IGNORE
 <U0905> <dvw-a> ;<BAS>;<MIN>;IGNORE
 <U0906> <dvw-aa> ;<BAS>;<MIN>;IGNORE
 <U0907> <dvw-i> ;<BAS>;<MIN>;IGNORE
 <U0908> <dvw-ii> ;<BAS>;<MIN>;IGNORE
 <U0909> <dvw-u> ;<BAS>;<MIN>;IGNORE
-<U090A> <dvw-uu>;<BAS>;<MIN>;IGNORE 
-<U090B> <dvw-vocalicr>;<BAS>;<MIN>;IGNORE 
-<U0960> <dvw-vocalicrr>;<BAS>;<MIN>;IGNORE 
-<U090C> <dvw-vocalicl>;<BAS>;<MIN>;IGNORE 
-<U0961> <dvw-vocalicll>;<BAS>;<MIN>;IGNORE 
-<U090D> <dvw-candrae>;<BAS>;<MIN>;IGNORE 
-<U090E> <dvw-shorte>;<BAS>;<MIN>;IGNORE 
-<U090F> <dvw-e>;<BAS>;<MIN>;IGNORE 
-<U0910> <dvw-ai>;<BAS>;<MIN>;IGNORE 
-<U0911> <dvw-candrao>;<BAS>;<MIN>;IGNORE 
-<U0912> <dvw-shorto>;<BAS>;<MIN>;IGNORE 
-<U0913> <dvw-o>;<BAS>;<MIN>;IGNORE 
+<U090A> <dvw-uu>;<BAS>;<MIN>;IGNORE
+<U090B> <dvw-vocalicr>;<BAS>;<MIN>;IGNORE
+<U0960> <dvw-vocalicrr>;<BAS>;<MIN>;IGNORE
+<U090C> <dvw-vocalicl>;<BAS>;<MIN>;IGNORE
+<U0961> <dvw-vocalicll>;<BAS>;<MIN>;IGNORE
+<U090D> <dvw-candrae>;<BAS>;<MIN>;IGNORE
+<U090E> <dvw-shorte>;<BAS>;<MIN>;IGNORE
+<U090F> <dvw-e>;<BAS>;<MIN>;IGNORE
+<U0910> <dvw-ai>;<BAS>;<MIN>;IGNORE
+<U0911> <dvw-candrao>;<BAS>;<MIN>;IGNORE
+<U0912> <dvw-shorto>;<BAS>;<MIN>;IGNORE
+<U0913> <dvw-o>;<BAS>;<MIN>;IGNORE
 <U0914> <dvw-au>;<BAS>;<MIN>;IGNORE
-<U0915> <d_ka>;<BAS>;<MIN>;IGNORE 
-<U0958> <d_ka>;"<BAS><NKT>";"<MIN><MIN>";IGNORE 
-<U0916> <d_kha>;<BAS>;<MIN>;IGNORE 
-<U0959> <d_kha>;"<BAS><NKT>";"<MIN><MIN>";IGNORE 
-<U0917> <d_ga>;<BAS>;<MIN>;IGNORE 
-<U095A> <d_ga>;"<BAS><NKT>";"<MIN><MIN>";IGNORE 
-<U097B> <d_gga>;<BAS>;<MIN>;IGNORE 
+<U0915> <d_ka>;<BAS>;<MIN>;IGNORE
+<U0958> <d_ka>;"<BAS><NKT>";"<MIN><MIN>";IGNORE
+<U0916> <d_kha>;<BAS>;<MIN>;IGNORE
+<U0959> <d_kha>;"<BAS><NKT>";"<MIN><MIN>";IGNORE
+<U0917> <d_ga>;<BAS>;<MIN>;IGNORE
+<U095A> <d_ga>;"<BAS><NKT>";"<MIN><MIN>";IGNORE
+<U097B> <d_gga>;<BAS>;<MIN>;IGNORE
 <U0918> <d_gha>;<BAS>;<MIN>;IGNORE
-<U0919> <d_nga>;<BAS>;<MIN>;IGNORE 
-<U091A> <d_ca>;<BAS>;<MIN>;IGNORE 
-<U091B> <d_cha>;<BAS>;<MIN>;IGNORE 
-<U091C> <d_ja>;<BAS>;<MIN>;IGNORE 
-<U095B> <d_ja>;"<BAS><NKT>";"<MIN><MIN>";IGNORE 
-<U097C> <d_jja>;<BAS>;<MIN>;IGNORE 
-<U091D> <d_jha>;<BAS>;<MIN>;IGNORE 
-<U091E> <d_nya>;<BAS>;<MIN>;IGNORE 
-<U091F> <d_tta>;<BAS>;<MIN>;IGNORE 
-<U0920> <d_ttha>;<BAS>;<MIN>;IGNORE 
-<U0921> <d_dda>;<BAS>;<MIN>;IGNORE 
+<U0919> <d_nga>;<BAS>;<MIN>;IGNORE
+<U091A> <d_ca>;<BAS>;<MIN>;IGNORE
+<U091B> <d_cha>;<BAS>;<MIN>;IGNORE
+<U091C> <d_ja>;<BAS>;<MIN>;IGNORE
+<U095B> <d_ja>;"<BAS><NKT>";"<MIN><MIN>";IGNORE
+<U097C> <d_jja>;<BAS>;<MIN>;IGNORE
+<U091D> <d_jha>;<BAS>;<MIN>;IGNORE
+<U091E> <d_nya>;<BAS>;<MIN>;IGNORE
+<U091F> <d_tta>;<BAS>;<MIN>;IGNORE
+<U0920> <d_ttha>;<BAS>;<MIN>;IGNORE
+<U0921> <d_dda>;<BAS>;<MIN>;IGNORE
 <U095C> <d_dda>;"<BAS><NKT>";"<MIN><MIN>";IGNORE
-<U097E> <d_ddda>;<BAS>;<MIN>;IGNORE 
-<U0922> <d_ddha>;<BAS>;<MIN>;IGNORE 
+<U097E> <d_ddda>;<BAS>;<MIN>;IGNORE
+<U0922> <d_ddha>;<BAS>;<MIN>;IGNORE
 <U095D> <d_ddha>;"<BAS><NKT>";"<MIN><MIN>";IGNORE
-<U0923> <d_nna>;<BAS>;<MIN>;IGNORE 
-<U0924> <d_ta>;<BAS>;<MIN>;IGNORE 
-<U0925> <d_tha>;<BAS>;<MIN>;IGNORE 
-<U0926> <d_da>;<BAS>;<MIN>;IGNORE 
-<U0927> <d_dha>;<BAS>;<MIN>;IGNORE 
-<U0928> <d_na>;<BAS>;<MIN>;IGNORE 
+<U0923> <d_nna>;<BAS>;<MIN>;IGNORE
+<U0924> <d_ta>;<BAS>;<MIN>;IGNORE
+<U0925> <d_tha>;<BAS>;<MIN>;IGNORE
+<U0926> <d_da>;<BAS>;<MIN>;IGNORE
+<U0927> <d_dha>;<BAS>;<MIN>;IGNORE
+<U0928> <d_na>;<BAS>;<MIN>;IGNORE
 <U0929> <d_na>;"<BAS><NKT>";"<MIN><MIN>";IGNORE
-<U092A> <d_pa>;<BAS>;<MIN>;IGNORE 
-<U092B> <d_pha>;<BAS>;<MIN>;IGNORE 
+<U092A> <d_pa>;<BAS>;<MIN>;IGNORE
+<U092B> <d_pha>;<BAS>;<MIN>;IGNORE
 <U095E> <d_pha>;"<BAS><NKT>";"<MIN><MIN>";IGNORE
-<U092C> <d_ba>;<BAS>;<MIN>;IGNORE 
-<U097F> <d_bba>;<BAS>;<MIN>;IGNORE 
-<U092D> <d_bha>;<BAS>;<MIN>;IGNORE 
-<U092E> <d_ma>;<BAS>;<MIN>;IGNORE 
-<U092F> <d_ya>;<BAS>;<MIN>;IGNORE 
+<U092C> <d_ba>;<BAS>;<MIN>;IGNORE
+<U097F> <d_bba>;<BAS>;<MIN>;IGNORE
+<U092D> <d_bha>;<BAS>;<MIN>;IGNORE
+<U092E> <d_ma>;<BAS>;<MIN>;IGNORE
+<U092F> <d_ya>;<BAS>;<MIN>;IGNORE
 <U095F> <d_ya>;"<BAS><NKT>";"<MIN><MIN>";IGNORE
-<U0930> <d_ra>;<BAS>;<MIN>;IGNORE 
+<U0930> <d_ra>;<BAS>;<MIN>;IGNORE
 <U0931> <d_ra>;"<BAS><NKT>";"<MIN><MIN>";IGNORE
-<U0932> <d_la>;<BAS>;<MIN>;IGNORE 
-<U0933> <d_lla>;<BAS>;<MIN>;IGNORE 
+<U0932> <d_la>;<BAS>;<MIN>;IGNORE
+<U0933> <d_lla>;<BAS>;<MIN>;IGNORE
 <U0934> <d_lla>;"<BAS><NKT>";"<MIN><MIN>";IGNORE
-<U0935> <d_va>;<BAS>;<MIN>;IGNORE 
-<U0936> <d_sha>;<BAS>;<MIN>;IGNORE 
-<U0937> <d_ssa>;<BAS>;<MIN>;IGNORE 
-<U0938> <d_sa>;<BAS>;<MIN>;IGNORE 
-<U0939> <d_ha>;<BAS>;<MIN>;IGNORE 
-<U093D> <d_avagrah>;<BAS>;<MIN>;IGNORE 
-<U097D> <d_glo-stop>;<BAS>;<MIN>;IGNORE 
-<U093E> <dm-aa>;<BAS>;<MIN>;IGNORE 
-<U093F> <dm-i>;<BAS>;<MIN>;IGNORE 
-<U0940> <dm-ii>;<BAS>;<MIN>;IGNORE 
-<U0941> <dm-u>;<BAS>;<MIN>;IGNORE 
+<U0935> <d_va>;<BAS>;<MIN>;IGNORE
+<U0936> <d_sha>;<BAS>;<MIN>;IGNORE
+<U0937> <d_ssa>;<BAS>;<MIN>;IGNORE
+<U0938> <d_sa>;<BAS>;<MIN>;IGNORE
+<U0939> <d_ha>;<BAS>;<MIN>;IGNORE
+<U093D> <d_avagrah>;<BAS>;<MIN>;IGNORE
+<U097D> <d_glo-stop>;<BAS>;<MIN>;IGNORE
+<U093E> <dm-aa>;<BAS>;<MIN>;IGNORE
+<U093F> <dm-i>;<BAS>;<MIN>;IGNORE
+<U0940> <dm-ii>;<BAS>;<MIN>;IGNORE
+<U0941> <dm-u>;<BAS>;<MIN>;IGNORE
 <U0942> <dm-uu>;<BAS>;<MIN>;IGNORE
-<U0943> <dm-vocalicr>;<BAS>;<MIN>;IGNORE 
-<U0944> <dm-vocalicrr>;<BAS>;<MIN>;IGNORE 
-<U0962> <dm-vocalicl>;<BAS>;<MIN>;IGNORE 
-<U0963> <dm-vocalicll>;<BAS>;<MIN>;IGNORE 
-<U0945> <dm-candrae>;<BAS>;<MIN>;IGNORE 
-<U0946>  <dm-shorte>;<BAS>;<MIN>;IGNORE 
-<U0947> <dm-e>;<BAS>;<MIN>;IGNORE 
-<U0948> <dm-ai>;<BAS>;<MIN>;IGNORE 
-<U0949> <dm-candrao>;<BAS>;<MIN>;IGNORE 
-<U094A> <dm-shorto>;<BAS>;<MIN>;IGNORE 
-<U094B> <dm-o>;<BAS>;<MIN>;IGNORE 
-<U094C> <dm-au>;<BAS>;<MIN>;IGNORE 
+<U0943> <dm-vocalicr>;<BAS>;<MIN>;IGNORE
+<U0944> <dm-vocalicrr>;<BAS>;<MIN>;IGNORE
+<U0962> <dm-vocalicl>;<BAS>;<MIN>;IGNORE
+<U0963> <dm-vocalicll>;<BAS>;<MIN>;IGNORE
+<U0945> <dm-candrae>;<BAS>;<MIN>;IGNORE
+<U0946>  <dm-shorte>;<BAS>;<MIN>;IGNORE
+<U0947> <dm-e>;<BAS>;<MIN>;IGNORE
+<U0948> <dm-ai>;<BAS>;<MIN>;IGNORE
+<U0949> <dm-candrao>;<BAS>;<MIN>;IGNORE
+<U094A> <dm-shorto>;<BAS>;<MIN>;IGNORE
+<U094B> <dm-o>;<BAS>;<MIN>;IGNORE
+<U094C> <dm-au>;<BAS>;<MIN>;IGNORE
 <U0902> <dvd-anuswara>;<BAS>;<MIN>;IGNORE
 <U0901> <dvd-chandrabindu>;<BAS>;<MIN>;IGNORE
 <U0903> <dvd-visarg>;<BAS>;<MIN>;IGNORE
 <U094D> <d_halant>;<BAS>;<MIN>;IGNORE
-<U093C> IGNORE;<NKT>;<MIN>;IGNORE 
+<U093C> IGNORE;<NKT>;<MIN>;IGNORE
 <U0951> IGNORE;<d_udatta>;<MIN>;IGNORE
 <U0952> IGNORE;<d_anudatta>;<MIN>;IGNORE
 <U0953> IGNORE;<dv-grave>;<MIN>;IGNORE
 <U0954> IGNORE;<dv-acute>;<MIN>;IGNORE
 
+order_start  <GUJARATI>;forward;forward;forward;forward,position
+<U0AE6> <0>;"<BAS><NUM>";"<MIN><MIN>";IGNORE
+<U0AE7> <1>;"<BAS><NUM>";"<MIN><MIN>";IGNORE
+<U0AE8> <2>;"<BAS><NUM>";"<MIN><MIN>";IGNORE
+<U0AE9> <3>;"<BAS><NUM>";"<MIN><MIN>";IGNORE
+<U0AEA> <4>;"<BAS><NUM>";"<MIN><MIN>";IGNORE
+<U0AEB> <5>;"<BAS><NUM>";"<MIN><MIN>";IGNORE
+<U0AEC> <6>;"<BAS><NUM>";"<MIN><MIN>";IGNORE
+<U0AED> <7>;"<BAS><NUM>";"<MIN><MIN>";IGNORE
+<U0AEE> <8>;"<BAS><NUM>";"<MIN><MIN>";IGNORE
+<U0AEF> <9>;"<BAS><NUM>";"<MIN><MIN>";IGNORE
+<U0AD0> <gom> ;<BAS>;<MIN>;IGNORE
+<U0A85> <gvw-a> ;<BAS>;<MIN>;IGNORE
+<U0A86> <gvw-aa> ;<BAS>;<MIN>;IGNORE
+<U0A87> <gvw-i> ;<BAS>;<MIN>;IGNORE
+<U0A88> <gvw-ii> ;<BAS>;<MIN>;IGNORE
+<U0A89> <gvw-u> ;<BAS>;<MIN>;IGNORE
+<U0A8A> <gvw-uu>;<BAS>;<MIN>;IGNORE
+<U0A8B> <gvw-vocalicr>;<BAS>;<MIN>;IGNORE
+<U0AE0> <gvw-vocalicrr>;<BAS>;<MIN>;IGNORE
+<U0A8C> <gvw-vocalicl>;<BAS>;<MIN>;IGNORE
+<U0AE1> <gvw-vocalicll>;<BAS>;<MIN>;IGNORE
+<U0A8D> <gvw-candrae>;<BAS>;<MIN>;IGNORE
+<U0A8F> <gvw-e>;<BAS>;<MIN>;IGNORE
+<U0A90> <gvw-ai>;<BAS>;<MIN>;IGNORE
+<U0A91> <gvw-candrao>;<BAS>;<MIN>;IGNORE
+<U0A93> <gvw-o>;<BAS>;<MIN>;IGNORE
+<U0A94> <gvw-au>;<BAS>;<MIN>;IGNORE
+<U0A95> <g-ka>;<BAS>;<MIN>;IGNORE
+<U0A96> <g-kha>;<BAS>;<MIN>;IGNORE
+<U0A97> <g-ga>;<BAS>;<MIN>;IGNORE
+<U0A98> <g-gha>;<BAS>;<MIN>;IGNORE
+<U0A99> <g-nga>;<BAS>;<MIN>;IGNORE
+<U0A9A> <g-ca>;<BAS>;<MIN>;IGNORE
+<U0A9B> <g-cha>;<BAS>;<MIN>;IGNORE
+<U0A9C> <g-ja>;<BAS>;<MIN>;IGNORE
+<U0A9D> <g-jha>;<BAS>;<MIN>;IGNORE
+<U0A9E> <g-nya>;<BAS>;<MIN>;IGNORE
+<U0A9F> <g-tta>;<BAS>;<MIN>;IGNORE
+<U0AA0> <g-ttha>;<BAS>;<MIN>;IGNORE
+<U0AA1> <g-dda>;<BAS>;<MIN>;IGNORE
+<U0AA2> <g-ddha>;<BAS>;<MIN>;IGNORE
+<U0AA3> <g-nna>;<BAS>;<MIN>;IGNORE
+<U0AA4> <g-ta>;<BAS>;<MIN>;IGNORE
+<U0AA5> <g-tha>;<BAS>;<MIN>;IGNORE
+<U0AA6> <g-da>;<BAS>;<MIN>;IGNORE
+<U0AA7> <g-dha>;<BAS>;<MIN>;IGNORE
+<U0AA8> <g-na>;<BAS>;<MIN>;IGNORE
+<U0AAA> <g-pa>;<BAS>;<MIN>;IGNORE
+<U0AAB> <g-pha>;<BAS>;<MIN>;IGNORE
+<U0AAC> <g-ba>;<BAS>;<MIN>;IGNORE
+<U0AAD> <g-bha>;<BAS>;<MIN>;IGNORE
+<U0AAE> <g-ma>;<BAS>;<MIN>;IGNORE
+<U0AAF> <g-ya>;<BAS>;<MIN>;IGNORE
+<U0AB0> <g-ra>;<BAS>;<MIN>;IGNORE
+<U0AB2> <g-la>;<BAS>;<MIN>;IGNORE
+<U0AB3> <g-lla>;<BAS>;<MIN>;IGNORE
+<U0AB5> <g-va>;<BAS>;<MIN>;IGNORE
+<U0AB6> <g-sha>;<BAS>;<MIN>;IGNORE
+<U0AB7> <g-ssa>;<BAS>;<MIN>;IGNORE
+<U0AB8> <g-sa>;<BAS>;<MIN>;IGNORE
+<U0AB9>   <g-ha>;<BAS>;<MIN>;IGNORE
+<gu-ksha> <g-ksha>;<BAS>;<MIN>;IGNORE
+<gu-dnya> <g-dnya>;<BAS>;<MIN>;IGNORE
+<gu-shra> <g-shra>;<BAS>;<MIN>;IGNORE
+<gu-tra> <g-tra>;<BAS>;<MIN>;IGNORE
+<U0ABD> <g-avagrah>;<BAS>;<MIN>;IGNORE
+<U0ABE> <gm-aa>;<BAS>;<MIN>;IGNORE
+<U0ABF> <gm-i>;<BAS>;<MIN>;IGNORE
+<U0AC0> <gm-ii>;<BAS>;<MIN>;IGNORE
+<U0AC1> <gm-u>;<BAS>;<MIN>;IGNORE
+<U0AC2> <gm-uu>;<BAS>;<MIN>;IGNORE
+<U0AC3> <gm-vocalicr>;<BAS>;<MIN>;IGNORE
+<U0AC4> <gm-vocalicrr>;<BAS>;<MIN>;IGNORE
+<U0AE2> <gm-vocalicl>;<BAS>;<MIN>;IGNORE
+<U0AE3> <gm-vocalicll>;<BAS>;<MIN>;IGNORE
+<U0AC5> <gm-candrae>;<BAS>;<MIN>;IGNORE
+<U0AC7> <gm-e>;<BAS>;<MIN>;IGNORE
+<U0AC8> <gm-ai>;<BAS>;<MIN>;IGNORE
+<U0AC9> <gm-candrao>;<BAS>;<MIN>;IGNORE
+<U0ACB> <gm-o>;<BAS>;<MIN>;IGNORE
+<U0ACC> <gm-au>;<BAS>;<MIN>;IGNORE
+<U0A82> <gvd-anuswara>;<BAS>;<MIN>;IGNORE
+<U0A81> <gvd-chandrabindu>;<BAS>;<MIN>;IGNORE
+<U0A83> <gvd-visarg>;<BAS>;<MIN>;IGNORE
+<U0ACD> <g-halant>;<BAS>;<MIN>;IGNORE
+<U0ABC> IGNORE;<GNKT>;<MIN>;IGNORE
+
 order_end
 
 END LC_COLLATE
diff --git a/malloc/mtrace.pl b/malloc/mtrace.pl
index 5e5e1ea0ab..782861129f 100644
--- a/malloc/mtrace.pl
+++ b/malloc/mtrace.pl
@@ -1,5 +1,5 @@
 #! @PERL@
-eval "exec @PERL@ -S $0 $*"
+eval "exec @PERL@ -S $0 $@"
     if 0;
 # Copyright (C) 1997-2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
 # This file is part of the GNU C Library.
diff --git a/nptl/ChangeLog b/nptl/ChangeLog
index 528e42840e..5fda52a60d 100644
--- a/nptl/ChangeLog
+++ b/nptl/ChangeLog
@@ -1,3 +1,10 @@
+2008-04-08  Jakub Jelinek  <jakub@redhat.com>
+
+	[BZ #6020]
+	* sysdeps/unix/sysv/linux/sparc/lowlevellock.h
+	(lll_futex_wake_unlock): Add private argument to the pre-v9 macro.
+	Patch by Sunil Amitkumar Janki <devel.sjanki@gmail.com>.
+
 2008-03-27  Ulrich Drepper  <drepper@redhat.com>
 
 	* sysdeps/unix/sysv/linux/bits/local_lim.h: Undefined ARG_MAX if
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/lowlevellock.h b/nptl/sysdeps/unix/sysv/linux/sparc/lowlevellock.h
index f4512b2622..754a0f51fe 100644
--- a/nptl/sysdeps/unix/sysv/linux/sparc/lowlevellock.h
+++ b/nptl/sysdeps/unix/sysv/linux/sparc/lowlevellock.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2003, 2004, 2006, 2007 Free Software Foundation, Inc.
+/* Copyright (C) 2003, 2004, 2006, 2007, 2008 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Jakub Jelinek <jakub@redhat.com>, 2003.
 
@@ -120,7 +120,7 @@
 /* Returns non-zero if error happened, zero if success.  */
 #ifdef __sparc32_atomic_do_lock
 /* Avoid FUTEX_WAKE_OP if supporting pre-v9 CPUs.  */
-# define lll_futex_wake_unlock(futexp, nr_wake, nr_wake2, futexp2) 1
+# define lll_futex_wake_unlock(futexp, nr_wake, nr_wake2, futexp2, private) 1
 #else
 # define lll_futex_wake_unlock(futexp, nr_wake, nr_wake2, futexp2, private) \
   ({									      \
diff --git a/nscd/nscd.c b/nscd/nscd.c
index 56c42c920a..aa1490936c 100644
--- a/nscd/nscd.c
+++ b/nscd/nscd.c
@@ -100,7 +100,7 @@ static const struct argp_option options[] =
     N_("Do not fork and display messages on the current tty") },
   { "nthreads", 't', N_("NUMBER"), 0, N_("Start NUMBER threads") },
   { "shutdown", 'K', NULL, 0, N_("Shut the server down") },
-  { "statistic", 'g', NULL, 0, N_("Print current configuration statistic") },
+  { "statistics", 'g', NULL, 0, N_("Print current configuration statistics") },
   { "invalidate", 'i', N_("TABLE"), 0,
     N_("Invalidate the specified cache") },
   { "secure", 'S', N_("TABLE,yes"), OPTION_HIDDEN,
diff --git a/po/nl.po b/po/nl.po
index 418fe74d6b..9fbc5e4c8d 100644
--- a/po/nl.po
+++ b/po/nl.po
@@ -1,14 +1,15 @@
-# Translation of libc-2.7 to Dutch.
-# Copyright (C) 2004, 2006, 2007 Free Software Foundation, Inc.
+# Dutch translations for libc.
+# Copyright (C) 2007 Free Software Foundation, Inc.
+# This file is distributed under the same license as the glibc package.
 #
 # Elros Cyriatan <cyriatan@fastmail.fm>, 2004.
-# Benno Schulenberg <benno@vertaalt.nl>, 2006, 2007.
+# Benno Schulenberg <benno@vertaalt.nl>, 2006, 2007, 2008.
 msgid ""
 msgstr ""
 "Project-Id-Version: libc-2.7\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2007-10-15 21:18-0700\n"
-"PO-Revision-Date: 2007-11-14 21:31+0100\n"
+"PO-Revision-Date: 2008-04-05 22:04+0200\n"
 "Last-Translator: Benno Schulenberg <benno@vertaalt.nl>\n"
 "Language-Team: Dutch <vertaling@vrijschrift.org>\n"
 "MIME-Version: 1.0\n"
@@ -322,7 +323,7 @@ msgstr ""
 "\n"
 "  -?,--help          deze hulptekst tonen\n"
 "     --usage         een korte gebruikssamenvatting tonen\n"
-"  -V,--version       versie-informatie tonen\n"
+"  -V,--version       programmaversie tonen\n"
 "\n"
 "Voor het rapporteren van gebreken in dit programma, zie:\n"
 "  <http://www.gnu.org/software/libc/bugs.html>.\\n"
@@ -940,7 +941,7 @@ msgstr ""
 "  -u, --unused            ongebruikte directe afhankelijkheden tonen\n"
 "  -v, --verbose           breedsprakige uitvoer\n"
 "\n"
-"      --version           versie-informatie tonen\n"
+"      --version           programmaversie tonen\n"
 "      --help              deze hulptekst tonen\n"
 "\n"
 "Voor het rapporteren van fouten, zie:\n"
@@ -1442,24 +1443,24 @@ msgstr "Teken ligt buiten bereik voor UTF-8"
 #: locale/programs/charmap-dir.c:59
 #, c-format
 msgid "cannot read character map directory `%s'"
-msgstr "kan tekenskaartmap '%s' niet lezen"
+msgstr "kan tekensetdefinitiesmap '%s' niet lezen"
 
 #: locale/programs/charmap.c:138
 #, c-format
 msgid "character map file `%s' not found"
-msgstr "kan tekenskaartbestand '%s' niet vinden"
+msgstr "kan tekensetdefinitiebestand '%s' niet vinden"
 
 #: locale/programs/charmap.c:195
 #, c-format
 msgid "default character map file `%s' not found"
-msgstr "kan standaard-tekenskaartbestand '%s' niet vinden"
+msgstr "kan standaard tekensetdefinitiebestand '%s' niet vinden"
 
 #: locale/programs/charmap.c:258
 #, c-format
 msgid "character map `%s' is not ASCII compatible, locale not ISO C compliant\n"
 msgstr ""
-"tekenskaart '%s' is niet ASCII-compatibel;\n"
-"de locale voldoet niet aan ISO C\n"
+"tekensetdefinitie '%s' is niet ASCII-compatibel;\n"
+"de taalregio voldoet niet aan ISO C\n"
 
 #: locale/programs/charmap.c:337
 #, c-format
@@ -1722,7 +1723,7 @@ msgstr "%s: syntaxfout"
 #: locale/programs/ld-collate.c:417
 #, c-format
 msgid "`%.*s' already defined in charmap"
-msgstr "'%.*s' is al gedefinieerd in tekenskaart"
+msgstr "'%.*s' is al gedefinieerd in tekensetdefinitie"
 
 #: locale/programs/ld-collate.c:426
 #, c-format
@@ -1983,7 +1984,7 @@ msgstr "%s: 'endif' zonder bijpassende 'ifdef' of 'ifndef'"
 #: locale/programs/ld-ctype.c:439
 #, c-format
 msgid "No character set name specified in charmap"
-msgstr "Geen tekensetnaam aangegeven in tekenskaart"
+msgstr "Geen tekensetnaam aangegeven in tekensetdefinitie"
 
 #: locale/programs/ld-ctype.c:468
 #, c-format
@@ -2023,7 +2024,7 @@ msgstr "<SP>-teken mag niet in klasse '%s' zitten"
 #: locale/programs/ld-ctype.c:599
 #, c-format
 msgid "character <SP> not defined in character map"
-msgstr "<SP>-teken is niet gedefinieerd in tekenskaart"
+msgstr "<SP>-teken is niet gedefinieerd in tekensetdefinitie"
 
 #: locale/programs/ld-ctype.c:714
 #, c-format
@@ -2033,12 +2034,12 @@ msgstr "het aantal items in de cijferscategorie is geen veelvoud van tien"
 #: locale/programs/ld-ctype.c:763
 #, c-format
 msgid "no input digits defined and none of the standard names in the charmap"
-msgstr "er zijn geen invoercijfers gedefinieerd en geen van de standaardnamen zit in de tekenskaart"
+msgstr "er zijn geen invoercijfers gedefinieerd en geen van de standaardnamen zit in de tekensetdefinitie"
 
 #: locale/programs/ld-ctype.c:828
 #, c-format
 msgid "not all characters used in `outdigit' are available in the charmap"
-msgstr "niet alle tekens gebruikt in 'outdigit' zijn beschikbaar in de tekenskaart"
+msgstr "niet alle tekens in 'outdigit' zijn beschikbaar in de tekensetdefinitie"
 
 #: locale/programs/ld-ctype.c:845
 #, c-format
@@ -2058,12 +2059,12 @@ msgstr "implementatiegrens: er zijn niet meer dan %Zd tekenklasses toegestaan"
 #: locale/programs/ld-ctype.c:1277
 #, c-format
 msgid "character map `%s' already defined"
-msgstr "tekenskaart '%s' is al gedefinieerd"
+msgstr "tekensetdefinitie '%s' is al gedefinieerd"
 
 #: locale/programs/ld-ctype.c:1283
 #, c-format
 msgid "implementation limit: no more than %d character maps allowed"
-msgstr "implementatiegrens: er zijn niet meer dan %d tekenskaarten toegestaan"
+msgstr "implementatiegrens: er zijn niet meer dan %d tekensetdefinities toegestaan"
 
 #: locale/programs/ld-ctype.c:1548 locale/programs/ld-ctype.c:1673
 #: locale/programs/ld-ctype.c:1779 locale/programs/ld-ctype.c:2471
@@ -2102,7 +2103,7 @@ msgstr "%s: syntaxfout in definitie van nieuwe tekenklasse"
 #: locale/programs/ld-ctype.c:2318
 #, c-format
 msgid "%s: syntax error in definition of new character map"
-msgstr "%s: syntaxfout in definitie van nieuwe tekenskaart"
+msgstr "%s: syntaxfout in nieuwe tekensetdefinitie"
 
 #: locale/programs/ld-ctype.c:2493
 msgid "ellipsis range must be marked by two operands of same type"
@@ -2161,7 +2162,7 @@ msgstr "%s: teken '%s' is niet gedefinieerd maar is nodig als standaardwaarde"
 #: locale/programs/ld-ctype.c:3297 locale/programs/ld-ctype.c:3364
 #, c-format
 msgid "%s: character `%s' in charmap not representable with one byte"
-msgstr "%s: teken '%s' in de tekenskaart is niet te representeren met één byte"
+msgstr "%s: teken '%s' in de tekensetdefinitie is niet te representeren met één byte"
 
 #: locale/programs/ld-ctype.c:3408 locale/programs/ld-ctype.c:3433
 #, c-format
@@ -2171,12 +2172,12 @@ msgstr "%s: teken '%s' is nodig als standaardwaarde maar niet te representeren m
 #: locale/programs/ld-ctype.c:3489
 #, c-format
 msgid "no output digits defined and none of the standard names in the charmap"
-msgstr "er zijn geen uitvoercijfers gedefinieerd en geen van de standaardnamen zit in de tekenskaart"
+msgstr "er zijn geen uitvoercijfers gedefinieerd en geen van de standaardnamen zit in de tekensetdefinitie"
 
 #: locale/programs/ld-ctype.c:3780
 #, c-format
 msgid "%s: transliteration data from locale `%s' not available"
-msgstr "%s: transliteratiegegevens van locale '%s' zijn niet beschikbaar"
+msgstr "%s: transliteratiegegevens van taalregio '%s' zijn niet beschikbaar"
 
 #: locale/programs/ld-ctype.c:3881
 #, c-format
@@ -2380,7 +2381,7 @@ msgstr "niet-symbolische tekenwaarden zouden niet gebruikt moeten worden"
 #: locale/programs/linereader.c:816
 #, c-format
 msgid "symbol `%.*s' not in charmap"
-msgstr "symbool '%.*s' zit niet in de tekenskaart"
+msgstr "symbool '%.*s' zit niet in de tekensetdefinitie"
 
 #: locale/programs/linereader.c:837
 #, c-format
@@ -2393,11 +2394,11 @@ msgstr "Systeeminformatie:"
 
 #: locale/programs/locale.c:76
 msgid "Write names of available locales"
-msgstr "namen van beschikbare locales tonen"
+msgstr "namen van beschikbare taalregio's tonen"
 
 #: locale/programs/locale.c:78
 msgid "Write names of available charmaps"
-msgstr "namen van beschikbare tekenskaarten tonen"
+msgstr "namen van beschikbare tekensetdefinities tonen"
 
 #: locale/programs/locale.c:79
 msgid "Modify output format:"
@@ -2405,15 +2406,15 @@ msgstr "Aanpassing van uitvoer:"
 
 #: locale/programs/locale.c:80
 msgid "Write names of selected categories"
-msgstr "namen van geselecteerde categorieën tonen"
+msgstr "namen van de geselecteerde categorieën tonen"
 
 #: locale/programs/locale.c:81
 msgid "Write names of selected keywords"
-msgstr "namen van geselecteerde sleutelwoorden tonen"
+msgstr "namen van de geselecteerde sleutelwoorden tonen"
 
 #: locale/programs/locale.c:82
 msgid "Print more information"
-msgstr "breedsprakige uitvoer"
+msgstr "uitgebreide uitvoer produceren"
 
 #: locale/programs/locale.c:87
 msgid ""
@@ -2421,7 +2422,7 @@ msgid ""
 "<http://www.gnu.org/software/libc/bugs.html>.\n"
 msgstr ""
 "  \n"
-"Informatie over locales weergeven.\vVoor het rapporteren van fouten, zie:\n"
+"Informatie over taalregio-instellingen weergeven.\vVoor het rapporteren van fouten, zie:\n"
 "  <http://www.gnu.org/software/libc/bugs.html>.\n"
 
 #: locale/programs/locale.c:92
@@ -2435,22 +2436,22 @@ msgstr ""
 #: locale/programs/locale.c:193
 #, c-format
 msgid "Cannot set LC_CTYPE to default locale"
-msgstr "Kan LC_TYPE niet op de standaard-locale instellen"
+msgstr "Kan LC_TYPE niet op de standaard-taalregio instellen"
 
 #: locale/programs/locale.c:195
 #, c-format
 msgid "Cannot set LC_MESSAGES to default locale"
-msgstr "Kan LC_MESSAGES niet op de standaard-locale instellen"
+msgstr "Kan LC_MESSAGES niet op de standaard-taalregio instellen"
 
 #: locale/programs/locale.c:208
 #, c-format
 msgid "Cannot set LC_COLLATE to default locale"
-msgstr "Kan LC_COLLATE niet op de standaard-locale instellen"
+msgstr "Kan LC_COLLATE niet op de standaard-taalregio instellen"
 
 #: locale/programs/locale.c:224
 #, c-format
 msgid "Cannot set LC_ALL to default locale"
-msgstr "Kan LC_ALL niet op de standaard-locale instellen"
+msgstr "Kan LC_ALL niet op de standaard-taalregio instellen"
 
 #: locale/programs/locale.c:500
 #, c-format
@@ -2507,7 +2508,7 @@ msgstr "geen nieuwe gegevens aan archief toevoegen"
 
 #: locale/programs/localedef.c:140
 msgid "Add locales named by parameters to archive"
-msgstr "genoemde locales aan archief toevoegen"
+msgstr "genoemde taalregio's aan archief toevoegen"
 
 #: locale/programs/localedef.c:141
 msgid "Replace existing archive content"
@@ -2515,7 +2516,7 @@ msgstr "bestaande inhoud van archief vervangen"
 
 #: locale/programs/localedef.c:143
 msgid "Remove locales named by parameters from archive"
-msgstr "genoemde locales uit archief verwijderen"
+msgstr "genoemde taalregio's uit archief verwijderen"
 
 #: locale/programs/localedef.c:144
 msgid "List content of archive"
@@ -2523,13 +2524,13 @@ msgstr "inhoud van archief weergeven"
 
 #: locale/programs/localedef.c:146
 msgid "locale.alias file to consult when making archive"
-msgstr "te raadplegen aliassenbestand"
+msgstr "te raadplegen aliassenbestand tijdens archivering"
 
 #: locale/programs/localedef.c:151
 msgid "Compile locale specification"
 msgstr ""
 "  \n"
-"Een locale-specificatie compileren."
+"De definitie van een taalregio compileren."
 
 #: locale/programs/localedef.c:154
 msgid ""
@@ -2555,7 +2556,7 @@ msgstr "FATAAL: systeem definieert '_POSIX2_LOCALEDEF' niet"
 #: locale/programs/localedef.c:599 locale/programs/localedef.c:619
 #, c-format
 msgid "cannot open locale definition file `%s'"
-msgstr "kan locale-definitiebestand '%s' niet openen"
+msgstr "kan taalregiodefinitiebestand '%s' niet openen"
 
 #: locale/programs/localedef.c:285
 #, c-format
@@ -2570,21 +2571,21 @@ msgid ""
 "                       locale path    : %s\n"
 "%s"
 msgstr ""
-"Systeemmap voor tekenskaarten      : %s\n"
-"                repertoire-kaarten : %s\n"
-"                locale-pad         : %s\n"
+"Systeemmap voor tekensetdefinities: %s\n"
+"            voor repertoirekaarten: %s\n"
+"            en het taalregiopad is: %s\n"
 "\n"
 "%s"
 
 #: locale/programs/localedef.c:567
 #, c-format
 msgid "circular dependencies between locale definitions"
-msgstr "circulaire afhankelijkheid tussen locale-definities"
+msgstr "circulaire afhankelijkheid tussen taalregiodefinities"
 
 #: locale/programs/localedef.c:573
 #, c-format
 msgid "cannot add already read locale `%s' a second time"
-msgstr "kan de reeds gelezen locale '%s' niet nogmaals toevoegen"
+msgstr "kan de reeds gelezen taalregio '%s' niet nogmaals toevoegen"
 
 #: locale/programs/locarchive.c:88 locale/programs/locarchive.c:261
 #, c-format
@@ -2610,17 +2611,17 @@ msgstr "kan archiefkop niet in het geheugen plaatsen"
 #: locale/programs/locarchive.c:156
 #, c-format
 msgid "failed to create new locale archive"
-msgstr "aanmaken van een nieuw locale-archief is mislukt"
+msgstr "aanmaken van een nieuw taalregio-archief is mislukt"
 
 #: locale/programs/locarchive.c:168
 #, c-format
 msgid "cannot change mode of new locale archive"
-msgstr "kan modus van het nieuwe locale-archief niet wijzigen"
+msgstr "kan modus van het nieuwe taalregio-archief niet wijzigen"
 
 #: locale/programs/locarchive.c:255
 #, c-format
 msgid "cannot map locale archive file"
-msgstr "kan locale-archief niet in het geheugen plaatsen"
+msgstr "kan taalregio-archief niet in het geheugen plaatsen"
 
 #: locale/programs/locarchive.c:331
 #, c-format
@@ -2630,12 +2631,12 @@ msgstr "kan nieuwe archief niet vergrendelen"
 #: locale/programs/locarchive.c:396
 #, c-format
 msgid "cannot extend locale archive file"
-msgstr "kan locale-archiefbestand niet uitbreiden"
+msgstr "kan taalregio-archiefbestand niet uitbreiden"
 
 #: locale/programs/locarchive.c:405
 #, c-format
 msgid "cannot change mode of resized locale archive"
-msgstr "kan modus van aangepast locale-archief niet wijzigen"
+msgstr "kan modus van aangepast taalregio-archief niet wijzigen"
 
 #: locale/programs/locarchive.c:413
 #, c-format
@@ -2645,17 +2646,17 @@ msgstr "kan nieuwe archief niet hernoemen"
 #: locale/programs/locarchive.c:466
 #, c-format
 msgid "cannot open locale archive \"%s\""
-msgstr "kan locale-archief '%s' niet openen"
+msgstr "kan taalregio-archief '%s' niet openen"
 
 #: locale/programs/locarchive.c:471
 #, c-format
 msgid "cannot stat locale archive \"%s\""
-msgstr "kan status van locale-archief '%s' niet opvragen"
+msgstr "kan status van taalregio-archief '%s' niet opvragen"
 
 #: locale/programs/locarchive.c:490
 #, c-format
 msgid "cannot lock locale archive \"%s\""
-msgstr "kan locale-archief '%s' niet vergrendelen"
+msgstr "kan taalregio-archief '%s' niet vergrendelen"
 
 #: locale/programs/locarchive.c:513
 #, c-format
@@ -2665,19 +2666,19 @@ msgstr "kan archiefkop niet lezen"
 #: locale/programs/locarchive.c:573
 #, c-format
 msgid "locale '%s' already exists"
-msgstr "locale '%s' bestaat al"
+msgstr "taalregio '%s' bestaat al"
 
 #: locale/programs/locarchive.c:804 locale/programs/locarchive.c:819
 #: locale/programs/locarchive.c:831 locale/programs/locarchive.c:843
 #: locale/programs/locfile.c:344
 #, c-format
 msgid "cannot add to locale archive"
-msgstr "kan niet aan locale-archief toevoegen"
+msgstr "kan niet aan taalregio-archief toevoegen"
 
 #: locale/programs/locarchive.c:998
 #, c-format
 msgid "locale alias file `%s' not found"
-msgstr "kan locale-aliassenbestand '%s' niet vinden"
+msgstr "kan taalregio-aliassenbestand '%s' niet vinden"
 
 #: locale/programs/locarchive.c:1142
 #, c-format
@@ -2702,7 +2703,7 @@ msgstr "kan map '%s' niet openen: %s -- genegeerd"
 #: locale/programs/locarchive.c:1233
 #, c-format
 msgid "incomplete set of locale files in \"%s\""
-msgstr "onvolledige verzameling van locale-bestanden in '%s'"
+msgstr "onvolledige verzameling van taalregiobestanden in '%s'"
 
 #: locale/programs/locarchive.c:1297
 #, c-format
@@ -2712,7 +2713,7 @@ msgstr "kan niet alle bestanden in '%s' lezen -- genegeerd"
 #: locale/programs/locarchive.c:1367
 #, c-format
 msgid "locale \"%s\" not in archive"
-msgstr "locale '%s' zit niet in archief"
+msgstr "taalregio '%s' zit niet in het archief"
 
 #: locale/programs/locfile.c:132
 #, c-format
@@ -2721,7 +2722,7 @@ msgstr "argument van '%s' moet een enkel teken zijn"
 
 #: locale/programs/locfile.c:252
 msgid "syntax error: not inside a locale definition section"
-msgstr "syntaxfout: niet binnen een locale-definitie-sectie"
+msgstr "syntaxfout: niet binnen een taalregiodefinitie-sectie"
 
 #: locale/programs/locfile.c:626
 #, c-format
@@ -2744,7 +2745,7 @@ msgstr "argument van 'copy' dient een tekenreeks te zijn"
 
 #: locale/programs/locfile.c:786
 msgid "locale name should consist only of portable characters"
-msgstr "een locale-naam mag alleen uit overdraagbare tekens bestaan"
+msgstr "een taalregionaam mag alleen uit overdraagbare tekens bestaan"
 
 #: locale/programs/locfile.c:805
 msgid "no other keyword shall be specified when `copy' is used"
@@ -2880,7 +2881,7 @@ msgstr ""
 "\n"
 "  -?,--help              deze hulptekst tonen\n"
 "     --usage             een korte gebruikssamenvatting tonen\n"
-"  -V,--version           versie-informatie tonen\n"
+"  -V,--version           programmaversie tonen\n"
 "\n"
 " De volgende opties zijn alleen bij grafische uitvoer van toepassing:\n"
 "  -t,--time-based        de grafiek lineair in de tijd maken\n"
@@ -4356,59 +4357,59 @@ msgstr "Onbekende variabele '%s'"
 
 #: posix/getopt.c:571 posix/getopt.c:587
 #, c-format
-msgid "%s: option '%s' is ambiguous\n"
+msgid "%s: option `%s' is ambiguous\n"
 msgstr "%s: optie '%s' is niet eenduidig\n"
 
 #: posix/getopt.c:620 posix/getopt.c:624
 #, c-format
-msgid "%s: option '--%s' doesn't allow an argument\n"
+msgid "%s: option `--%s' doesn't allow an argument\n"
 msgstr "%s: optie '--%s' staat geen argument toe\n"
 
 #: posix/getopt.c:633 posix/getopt.c:638
 #, c-format
-msgid "%s: option '%c%s' doesn't allow an argument\n"
+msgid "%s: option `%c%s' doesn't allow an argument\n"
 msgstr "%s: optie '%c%s' staat geen argument toe\n"
 
 #: posix/getopt.c:681 posix/getopt.c:700 posix/getopt.c:1016
 #: posix/getopt.c:1035
 #, c-format
-msgid "%s: option '%s' requires an argument\n"
+msgid "%s: option `%s' requires an argument\n"
 msgstr "%s: optie '%s' vereist een argument\n"
 
 #: posix/getopt.c:738 posix/getopt.c:741
 #, c-format
-msgid "%s: unrecognized option '--%s'\n"
+msgid "%s: unrecognized option `--%s'\n"
 msgstr "%s: onbekende optie '--%s'\n"
 
 #: posix/getopt.c:749 posix/getopt.c:752
 #, c-format
-msgid "%s: unrecognized option '%c%s'\n"
+msgid "%s: unrecognized option `%c%s'\n"
 msgstr "%s: onbekende optie '%c%s'\n"
 
 #: posix/getopt.c:804 posix/getopt.c:807
 #, c-format
-msgid "%s: illegal option -- '%c'\n"
+msgid "%s: illegal option -- %c\n"
 msgstr "%s: ongeldige optie -- %c\n"
 
 #: posix/getopt.c:813 posix/getopt.c:816
 #, c-format
-msgid "%s: invalid option -- '%c'\n"
+msgid "%s: invalid option -- %c\n"
 msgstr "%s: ongeldige optie -- %c\n"
 
 #: posix/getopt.c:868 posix/getopt.c:884 posix/getopt.c:1088
 #: posix/getopt.c:1106
 #, c-format
-msgid "%s: option requires an argument -- '%c'\n"
+msgid "%s: option requires an argument -- %c\n"
 msgstr "%s: optie vereist een argument -- %c\n"
 
 #: posix/getopt.c:937 posix/getopt.c:953
 #, c-format
-msgid "%s: option '-W %s' is ambiguous\n"
+msgid "%s: option `-W %s' is ambiguous\n"
 msgstr "%s: optie '-W %s' is niet eenduidig\n"
 
 #: posix/getopt.c:977 posix/getopt.c:995
 #, c-format
-msgid "%s: option '-W %s' doesn't allow an argument\n"
+msgid "%s: option `-W %s' doesn't allow an argument\n"
 msgstr "%s: optie '-W %s' staat geen argument toe\n"
 
 #: posix/regcomp.c:135
@@ -5345,7 +5346,7 @@ msgstr "Onjuist apparaat"
 #. TRANS A file that isn't a directory was specified when a directory is required.
 #: sysdeps/gnu/errlist.c:229
 msgid "Not a directory"
-msgstr "Niet een map"
+msgstr "Is geen map"
 
 #. TRANS File is a directory; you cannot open a directory for writing,
 #. TRANS or create or remove hard links to it.
diff --git a/posix/getopt.c b/posix/getopt.c
index 103f572b07..965bfdd3ac 100644
--- a/posix/getopt.c
+++ b/posix/getopt.c
@@ -792,30 +792,16 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring,
 	if (print_errors)
 	  {
 #if defined _LIBC && defined USE_IN_LIBIO
-	      char *buf;
-	      int n;
+	    char *buf;
+	    int n;
 #endif
 
-	    if (d->__posixly_correct)
-	      {
-#if defined _LIBC && defined USE_IN_LIBIO
-		n = __asprintf (&buf, _("%s: illegal option -- '%c'\n"),
-				argv[0], c);
-#else
-		fprintf (stderr, _("%s: illegal option -- '%c'\n"), argv[0],
-			 c);
-#endif
-	      }
-	    else
-	      {
 #if defined _LIBC && defined USE_IN_LIBIO
-		n = __asprintf (&buf, _("%s: invalid option -- '%c'\n"),
-				argv[0], c);
+	    n = __asprintf (&buf, _("%s: invalid option -- '%c'\n"),
+			    argv[0], c);
 #else
-		fprintf (stderr, _("%s: invalid option -- '%c'\n"), argv[0],
-			 c);
+	    fprintf (stderr, _("%s: invalid option -- '%c'\n"), argv[0], c);
 #endif
-	      }
 
 #if defined _LIBC && defined USE_IN_LIBIO
 	    if (n >= 0)
diff --git a/resolv/res_init.c b/resolv/res_init.c
index d1a5681a93..a2840968f3 100644
--- a/resolv/res_init.c
+++ b/resolv/res_init.c
@@ -69,22 +69,22 @@ static const char sccsid[] = "@(#)res_init.c	8.1 (Berkeley) 6/7/93";
 static const char rcsid[] = "$BINDId: res_init.c,v 8.16 2000/05/09 07:10:12 vixie Exp $";
 #endif /* LIBC_SCCS and not lint */
 
-#include <sys/types.h>
-#include <sys/param.h>
-#include <sys/socket.h>
-#include <sys/time.h>
-
-#include <netinet/in.h>
-#include <arpa/inet.h>
-#include <arpa/nameser.h>
-
 #include <ctype.h>
+#include <netdb.h>
 #include <resolv.h>
 #include <stdio.h>
 #include <stdio_ext.h>
 #include <stdlib.h>
 #include <string.h>
 #include <unistd.h>
+#include <arpa/inet.h>
+#include <arpa/nameser.h>
+#include <net/if.h>
+#include <netinet/in.h>
+#include <sys/param.h>
+#include <sys/socket.h>
+#include <sys/time.h>
+#include <sys/types.h>
 
 #include <not-cancel.h>
 
@@ -327,15 +327,41 @@ __res_vinit(res_state statp, int preinit) {
 
                         if ((el = strchr(cp, '\n')) != NULL)
                             *el = '\0';
+			if ((el = strchr(cp, SCOPE_DELIMITER)) != NULL)
+			    *el = '\0';
                         if ((*cp != '\0') &&
                             (inet_pton(AF_INET6, cp, &a6) > 0)) {
                             struct sockaddr_in6 *sa6;
 
                             sa6 = malloc(sizeof(*sa6));
                             if (sa6 != NULL) {
-                                sa6->sin6_addr = a6;
                                 sa6->sin6_family = AF_INET6;
                                 sa6->sin6_port = htons(NAMESERVER_PORT);
+				sa6->sin6_flowinfo = 0;
+                                sa6->sin6_addr = a6;
+
+				if (__builtin_expect (el == NULL, 1))
+				    sa6->sin6_scope_id = 0;
+				else {
+				    int try_numericscope = 1;
+				    if (IN6_IS_ADDR_LINKLOCAL (&a6)
+					|| IN6_IS_ADDR_MC_LINKLOCAL (&a6)) {
+					sa6->sin6_scope_id
+					  = if_nametoindex (el + 1);
+					if (sa6->sin6_scope_id != 0)
+					    try_numericscope = 0;
+				    }
+
+				    if (try_numericscope) {
+					char *end;
+					sa6->sin6_scope_id
+					  = (uint32_t) strtoul (el + 1, &end,
+								10);
+					if (*end != '\0')
+					    sa6->sin6_scope_id = 0;
+				    }
+				}
+
 				statp->_u._ext.nsaddrs[nservall] = sa6;
 				statp->_u._ext.nssocks[nservall] = -1;
 				statp->_u._ext.nsmap[nservall] = MAXNS + 1;
diff --git a/stdio-common/vfprintf.c b/stdio-common/vfprintf.c
index d10a5c6a13..ca6343c37f 100644
--- a/stdio-common/vfprintf.c
+++ b/stdio-common/vfprintf.c
@@ -1513,7 +1513,8 @@ vfprintf (FILE *s, const CHAR_T *format, va_list ap)
       if (prec > width
 	  && prec + 32 > (int)(sizeof (work_buffer) / sizeof (work_buffer[0])))
 	{
-	  if (__builtin_expect (prec > ~((size_t) 0) - 31, 0))
+	  if (__builtin_expect (prec > ~((size_t) 0) / sizeof (CHAR_T) - 31,
+				0))
 	    {
 	      done = -1;
 	      goto all_done;
diff --git a/stdlib/mbtowc.c b/stdlib/mbtowc.c
index 744b2b6c0b..ee8850bbc1 100644
--- a/stdlib/mbtowc.c
+++ b/stdlib/mbtowc.c
@@ -1,4 +1,5 @@
-/* Copyright (C) 1991, 1992, 1995-1999, 2002 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 1992, 1995-1999, 2002, 2008
+   Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -23,9 +24,6 @@
 #include <wcsmbs/wcsmbsload.h>
 
 
-/* Common state for all non-restartable conversion functions.  */
-mbstate_t __no_r_state attribute_hidden;
-
 /* Convert the multibyte character at S, which is no longer
    than N characters, to its `wchar_t' representation, placing
    this n *PWC and returning its length.
@@ -38,6 +36,7 @@ int
 mbtowc (wchar_t *pwc, const char *s, size_t n)
 {
   int result;
+  static mbstate_t state;
 
   /* If S is NULL the function has to return null or not null
      depending on the encoding having a state depending encoding or
@@ -51,7 +50,7 @@ mbtowc (wchar_t *pwc, const char *s, size_t n)
 
       /* This is an extension in the Unix standard which does not directly
 	 violate ISO C.  */
-      memset (&__no_r_state, '\0', sizeof __no_r_state);
+      memset (&state, '\0', sizeof state);
 
       result = fcts->towc->__stateful;
     }
@@ -63,7 +62,7 @@ mbtowc (wchar_t *pwc, const char *s, size_t n)
     }
   else
     {
-      result = __mbrtowc (pwc, s, n, &__no_r_state);
+      result = __mbrtowc (pwc, s, n, &state);
 
       /* The `mbrtowc' functions tell us more than we need.  Fold the -1
 	 and -2 result into -1.  */
diff --git a/stdlib/strtod_l.c b/stdlib/strtod_l.c
index 9c2f86a32b..09a8f9bb3b 100644
--- a/stdlib/strtod_l.c
+++ b/stdlib/strtod_l.c
@@ -1028,7 +1028,7 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
   if (__builtin_expect (exponent < MIN_10_EXP - (DIG + 1), 0))
     {
       __set_errno (ERANGE);
-      return 0.0;
+      return negative ? -0.0 : 0.0;
     }
 
   if (int_no > 0)
diff --git a/stdlib/wctomb.c b/stdlib/wctomb.c
index 49872f5c6b..3ba8a3e2a7 100644
--- a/stdlib/wctomb.c
+++ b/stdlib/wctomb.c
@@ -1,4 +1,5 @@
-/* Copyright (C) 1991, 1992, 1995-1999, 2002 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 1992, 1995-1999, 2002, 2008
+   Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -23,7 +24,8 @@
 #include <wcsmbs/wcsmbsload.h>
 
 
-extern mbstate_t __no_r_state attribute_hidden;	/* Defined in mbtowc.c.  */
+/* Shared with __wctomb_chk.  */
+mbstate_t __wctomb_state attribute_hidden;
 
 /* Convert WCHAR into its multibyte character representation,
    putting this in S and returning its length.
@@ -47,11 +49,11 @@ wctomb (char *s, wchar_t wchar)
 
       /* This is an extension in the Unix standard which does not directly
 	 violate ISO C.  */
-      memset (&__no_r_state, '\0', sizeof __no_r_state);
+      memset (&__wctomb_state, '\0', sizeof __wctomb_state);
 
       return fcts->tomb->__stateful;
     }
 
-  return __wcrtomb (s, wchar, &__no_r_state);
+  return __wcrtomb (s, wchar, &__wctomb_state);
 }
 libc_hidden_def (wctomb)
diff --git a/string/strfry.c b/string/strfry.c
index d392d5526b..d3fcb14bab 100644
--- a/string/strfry.c
+++ b/string/strfry.c
@@ -26,7 +26,6 @@ strfry (char *string)
 {
   static int init;
   static struct random_data rdata;
-  size_t len, i;
 
   if (!init)
     {
@@ -37,17 +36,18 @@ strfry (char *string)
       init = 1;
     }
 
-  len = strlen (string) - 1;
-  for (i = 0; i < len; ++i)
-    {
-      int32_t j;
-      __random_r (&rdata, &j);
-      j = j % (len - i) + i;
-
-      char c = string[i];
-      string[i] = string[j];
-      string[j] = c;
-    }
+  size_t len = strlen (string);
+  if (len > 0)
+    for (size_t i = 0; i < len - 1; ++i)
+      {
+	int32_t j;
+	__random_r (&rdata, &j);
+	j = j % (len - i) + i;
+
+	char c = string[i];
+	string[i] = string[j];
+	string[j] = c;
+      }
 
   return string;
 }
diff --git a/sunrpc/auth_unix.c b/sunrpc/auth_unix.c
index 3eaf0a25ab..734eb088f3 100644
--- a/sunrpc/auth_unix.c
+++ b/sunrpc/auth_unix.c
@@ -111,7 +111,7 @@ authunix_create (char *machname, uid_t uid, gid_t gid, int len,
   if (auth == NULL || au == NULL)
     {
 no_memory:
-      (void) __fxprintf (NULL, "%s", _("authunix_create: out of memory\n"));
+      (void) __fxprintf (NULL, "%s: %s", __func__, _("out of memory\n"));
       mem_free (auth, sizeof (*auth));
       mem_free (au, sizeof (*au));
       return NULL;
diff --git a/sunrpc/clnt_tcp.c b/sunrpc/clnt_tcp.c
index 5bec3bcf3a..6825ca57ee 100644
--- a/sunrpc/clnt_tcp.c
+++ b/sunrpc/clnt_tcp.c
@@ -128,7 +128,7 @@ clnttcp_create (struct sockaddr_in *raddr, u_long prog, u_long vers,
   if (h == NULL || ct == NULL)
     {
       struct rpc_createerr *ce = &get_rpc_createerr ();
-      (void) __fxprintf (NULL, "%s", _("clnttcp_create: out of memory\n"));
+      (void) __fxprintf (NULL, "%s: %s", __func__, _("out of memory\n"));
       ce->cf_stat = RPC_SYSTEMERROR;
       ce->cf_error.re_errno = ENOMEM;
       goto fooy;
diff --git a/sunrpc/clnt_udp.c b/sunrpc/clnt_udp.c
index 70ee0eae88..634313211d 100644
--- a/sunrpc/clnt_udp.c
+++ b/sunrpc/clnt_udp.c
@@ -136,7 +136,8 @@ clntudp_bufcreate (struct sockaddr_in *raddr, u_long program, u_long version,
   if (cl == NULL || cu == NULL)
     {
       struct rpc_createerr *ce = &get_rpc_createerr ();
-      (void) __fxprintf (NULL, "%s", _("clntudp_create: out of memory\n"));
+      (void) __fxprintf (NULL, "%s: %s",
+			 "clntudp_create", _("out of memory\n"));
       ce->cf_stat = RPC_SYSTEMERROR;
       ce->cf_error.re_errno = ENOMEM;
       goto fooy;
diff --git a/sunrpc/clnt_unix.c b/sunrpc/clnt_unix.c
index 848a480581..4107c62294 100644
--- a/sunrpc/clnt_unix.c
+++ b/sunrpc/clnt_unix.c
@@ -125,7 +125,7 @@ clntunix_create (struct sockaddr_un *raddr, u_long prog, u_long vers,
   if (h == NULL || ct == NULL)
     {
       struct rpc_createerr *ce = &get_rpc_createerr ();
-      (void) __fxprintf (NULL, "%s", _("clntunix_create: out of memory\n"));
+      (void) __fxprintf (NULL, "%s: %s", __func__, _("out of memory\n"));
       ce->cf_stat = RPC_SYSTEMERROR;
       ce->cf_error.re_errno = ENOMEM;
       goto fooy;
diff --git a/sunrpc/svc_tcp.c b/sunrpc/svc_tcp.c
index 539a2b8d98..beeb10646e 100644
--- a/sunrpc/svc_tcp.c
+++ b/sunrpc/svc_tcp.c
@@ -176,7 +176,7 @@ svctcp_create (int sock, u_int sendsize, u_int recvsize)
   xprt = (SVCXPRT *) mem_alloc (sizeof (SVCXPRT));
   if (r == NULL || xprt == NULL)
     {
-      (void) __fxprintf (NULL, "%s", _("svctcp_create: out of memory\n"));
+      (void) __fxprintf (NULL, "%s: %s", __func__, _("out of memory\n"));
       mem_free (r, sizeof (*r));
       mem_free (xprt, sizeof (SVCXPRT));
       return NULL;
@@ -214,8 +214,8 @@ makefd_xprt (int fd, u_int sendsize, u_int recvsize)
   cd = (struct tcp_conn *) mem_alloc (sizeof (struct tcp_conn));
   if (xprt == (SVCXPRT *) NULL || cd == NULL)
     {
-      (void) __fxprintf (NULL, "%s",
-			 _("svc_tcp: makefd_xprt: out of memory\n"));
+      (void) __fxprintf (NULL, "%s: %s", "svc_tcp: makefd_xprt",
+			 _("out of memory\n"));
       mem_free (xprt, sizeof (SVCXPRT));
       mem_free (cd, sizeof (struct tcp_conn));
       return NULL;
diff --git a/sunrpc/svc_udp.c b/sunrpc/svc_udp.c
index dfeb6de70f..496d6d9602 100644
--- a/sunrpc/svc_udp.c
+++ b/sunrpc/svc_udp.c
@@ -149,7 +149,8 @@ svcudp_bufcreate (sock, sendsz, recvsz)
   buf = mem_alloc (((MAX (sendsz, recvsz) + 3) / 4) * 4);
   if (xprt == NULL || su == NULL || buf == NULL)
     {
-      (void) __fxprintf (NULL, "%s", _("svcudp_create: out of memory\n"));
+      (void) __fxprintf (NULL, "%s: %s",
+			 "svcudp_create",  _("out of memory\n"));
       mem_free (xprt, sizeof (SVCXPRT));
       mem_free (su, sizeof (*su));
       mem_free (buf, ((MAX (sendsz, recvsz) + 3) / 4) * 4);
diff --git a/sunrpc/svc_unix.c b/sunrpc/svc_unix.c
index 1b7b1fbd4f..f103ed96f3 100644
--- a/sunrpc/svc_unix.c
+++ b/sunrpc/svc_unix.c
@@ -173,7 +173,7 @@ svcunix_create (int sock, u_int sendsize, u_int recvsize, char *path)
   xprt = (SVCXPRT *) mem_alloc (sizeof (SVCXPRT));
   if (r == NULL || xprt == NULL)
     {
-      __fxprintf (NULL, "%s", _("svcunix_create: out of memory\n"));
+      __fxprintf (NULL, "%s: %s", __func__, _("out of memory\n"));
       mem_free (r, sizeof (*r));
       mem_free (xprt, sizeof (SVCXPRT));
       return NULL;
@@ -211,8 +211,8 @@ makefd_xprt (int fd, u_int sendsize, u_int recvsize)
   cd = (struct unix_conn *) mem_alloc (sizeof (struct unix_conn));
   if (xprt == (SVCXPRT *) NULL || cd == (struct unix_conn *) NULL)
     {
-      (void) __fxprintf (NULL, "%s",
-			 _("svc_unix: makefd_xprt: out of memory\n"));
+      (void) __fxprintf (NULL, "%s: %s", "svc_unix: makefd_xprt",
+			 _("out of memory\n"));
       mem_free (xprt, sizeof (SVCXPRT));
       mem_free (cd, sizeof (struct unix_conn));
       return NULL;
diff --git a/sunrpc/xdr.c b/sunrpc/xdr.c
index 21e339b4ee..8a70d2e557 100644
--- a/sunrpc/xdr.c
+++ b/sunrpc/xdr.c
@@ -563,7 +563,7 @@ xdr_bytes (xdrs, cpp, sizep, maxsize)
 	}
       if (sp == NULL)
 	{
-	  (void) __fxprintf (NULL, "%s", _("xdr_bytes: out of memory\n"));
+	  (void) __fxprintf (NULL, "%s: %s", __func__, _("out of memory\n"));
 	  return FALSE;
 	}
       /* fall into ... */
@@ -715,7 +715,7 @@ xdr_string (xdrs, cpp, maxsize)
 	*cpp = sp = (char *) mem_alloc (nodesize);
       if (sp == NULL)
 	{
-	  (void) __fxprintf (NULL, "%s", _("xdr_string: out of memory\n"));
+	  (void) __fxprintf (NULL, "%s: %s", __func__, _("out of memory\n"));
 	  return FALSE;
 	}
       sp[size] = 0;
diff --git a/sunrpc/xdr_array.c b/sunrpc/xdr_array.c
index 44abdbcfda..e7c8925f5c 100644
--- a/sunrpc/xdr_array.c
+++ b/sunrpc/xdr_array.c
@@ -103,7 +103,7 @@ xdr_array (xdrs, addrp, sizep, maxsize, elsize, elproc)
 	*addrp = target = calloc (c, elsize);
 	if (target == NULL)
 	  {
-	    (void) __fxprintf (NULL, "%s", _("xdr_array: out of memory\n"));
+	    (void) __fxprintf (NULL, "%s: %s", __func__, _("out of memory\n"));
 	    return FALSE;
 	  }
 	break;
diff --git a/sunrpc/xdr_rec.c b/sunrpc/xdr_rec.c
index e847e9b47c..6854034c63 100644
--- a/sunrpc/xdr_rec.c
+++ b/sunrpc/xdr_rec.c
@@ -153,7 +153,7 @@ xdrrec_create (XDR *xdrs, u_int sendsize,
 
   if (rstrm == NULL || buf == NULL)
     {
-      (void) __fxprintf (NULL, "%s", _("xdrrec_create: out of memory\n"));
+      (void) __fxprintf (NULL, "%s: %s", __func__, _("out of memory\n"));
       mem_free (rstrm, sizeof (RECSTREAM));
       mem_free (buf, sendsize + recvsize + BYTES_PER_XDR_UNIT);
       /*
diff --git a/sunrpc/xdr_ref.c b/sunrpc/xdr_ref.c
index bc5f72d6a6..532804fadb 100644
--- a/sunrpc/xdr_ref.c
+++ b/sunrpc/xdr_ref.c
@@ -82,8 +82,7 @@ xdr_reference (xdrs, pp, size, proc)
 	*pp = loc = (caddr_t) calloc (1, size);
 	if (loc == NULL)
 	  {
-	    (void) __fxprintf (NULL, "%s",
-			       _("xdr_reference: out of memory\n"));
+	    (void) __fxprintf (NULL, "%s: %s", __func__, _("out of memory\n"));
 	    return FALSE;
 	  }
 	break;
diff --git a/sysdeps/posix/tempname.c b/sysdeps/posix/tempname.c
index eab658da31..be979d8c8a 100644
--- a/sysdeps/posix/tempname.c
+++ b/sysdeps/posix/tempname.c
@@ -297,7 +297,7 @@ __gen_tempname (char *tmpl, int flags, int kind)
 	{
 	case __GT_FILE:
 	  fd = __open (tmpl,
-		       (flags & ~ACCESSPERMS)
+		       (flags & ~O_ACCMODE)
 		       | O_RDWR | O_CREAT | O_EXCL, S_IRUSR | S_IWUSR);
 	  break;
 
diff --git a/sysdeps/unix/opendir.c b/sysdeps/unix/opendir.c
index 0a116247d2..92029c6547 100644
--- a/sysdeps/unix/opendir.c
+++ b/sysdeps/unix/opendir.c
@@ -171,6 +171,8 @@ __alloc_dir (int fd, bool close_fd, const struct stat64 *statp)
 	goto lose;
     }
 
+  const size_t default_allocation = (BUFSIZ < sizeof (struct dirent64)
+				     ? sizeof (struct dirent64) : BUFSIZ);
   size_t allocation;
 #ifdef _STATBUF_ST_BLKSIZE
   if (__builtin_expect ((size_t) statp->st_blksize >= sizeof (struct dirent64),
@@ -178,20 +180,30 @@ __alloc_dir (int fd, bool close_fd, const struct stat64 *statp)
     allocation = statp->st_blksize;
   else
 #endif
-    allocation = (BUFSIZ < sizeof (struct dirent64)
-		  ? sizeof (struct dirent64) : BUFSIZ);
+    allocation = default_allocation;
 
   DIR *dirp = (DIR *) malloc (sizeof (DIR) + allocation);
   if (dirp == NULL)
-  lose:
     {
-      if (close_fd)
+#ifdef _STATBUF_ST_BLKSIZE
+      if (allocation == statp->st_blksize
+	  && allocation != default_allocation)
 	{
-	  int save_errno = errno;
-	  close_not_cancel_no_status (fd);
-	  __set_errno (save_errno);
+	  allocation = default_allocation;
+	  dirp = (DIR *) malloc (sizeof (DIR) + allocation);
+	}
+      if (dirp == NULL)
+#endif
+      lose:
+	{
+	  if (close_fd)
+	    {
+	      int save_errno = errno;
+	      close_not_cancel_no_status (fd);
+	      __set_errno (save_errno);
+	    }
+	  return NULL;
 	}
-      return NULL;
     }
 
   dirp->fd = fd;
diff --git a/sysdeps/unix/sysv/linux/net/ethernet.h b/sysdeps/unix/sysv/linux/net/ethernet.h
index 7ca8e8348e..0242d5899e 100644
--- a/sysdeps/unix/sysv/linux/net/ethernet.h
+++ b/sysdeps/unix/sysv/linux/net/ethernet.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1997, 1999, 2001 Free Software Foundation, Inc.
+/* Copyright (C) 1997, 1999, 2001, 2008 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -45,9 +45,17 @@ struct ether_header
 
 /* Ethernet protocol ID's */
 #define	ETHERTYPE_PUP		0x0200          /* Xerox PUP */
+#define ETHERTYPE_SPRITE	0x0500		/* Sprite */
 #define	ETHERTYPE_IP		0x0800		/* IP */
 #define	ETHERTYPE_ARP		0x0806		/* Address resolution */
 #define	ETHERTYPE_REVARP	0x8035		/* Reverse ARP */
+#define ETHERTYPE_AT		0x809B		/* AppleTalk protocol */
+#define ETHERTYPE_AARP		0x80F3		/* AppleTalk ARP */
+#define	ETHERTYPE_VLAN		0x8100		/* IEEE 802.1Q VLAN tagging */
+#define ETHERTYPE_IPX		0x8137		/* IPX */
+#define	ETHERTYPE_IPV6		0x86dd		/* IP protocol version 6 */
+#define ETHERTYPE_LOOPBACK	0x9000		/* used to test interfaces */
+
 
 #define	ETHER_ADDR_LEN	ETH_ALEN                 /* size of ethernet addr */
 #define	ETHER_TYPE_LEN	2                        /* bytes in type field */