summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libc/ChangeLog109
-rw-r--r--libc/NEWS31
-rw-r--r--libc/debug/wctomb_chk.c6
-rw-r--r--libc/elf/Makefile12
-rw-r--r--libc/libio/iofwrite.c8
-rw-r--r--libc/libio/iofwrite_u.c8
-rw-r--r--libc/locale/programs/ld-collate.c10
-rw-r--r--libc/localedata/ChangeLog21
-rw-r--r--libc/localedata/locales/es_ES2068
-rw-r--r--libc/localedata/locales/fr_FR59
-rw-r--r--libc/localedata/locales/hu_HU4
-rw-r--r--libc/localedata/locales/iso14651_t1_common846
-rwxr-xr-xlibc/localedata/tst-langinfo.sh40
-rw-r--r--libc/malloc/mtrace.pl2
-rw-r--r--libc/nptl/ChangeLog12
-rw-r--r--libc/nptl/pthread_create.c4
-rw-r--r--libc/nptl/sysdeps/unix/sysv/linux/sparc/lowlevellock.h4
-rw-r--r--libc/nss/nss_files/files-XXX.c2
-rw-r--r--libc/po/libc.pot497
-rw-r--r--libc/po/nl.po55
-rw-r--r--libc/resolv/res_init.c46
-rw-r--r--libc/scripts/abi-versions.awk3
-rw-r--r--libc/stdlib/mbtowc.c11
-rw-r--r--libc/stdlib/tst-makecontext.c8
-rw-r--r--libc/stdlib/wctomb.c10
-rw-r--r--libc/sysdeps/i386/i686/memcpy.S57
-rw-r--r--libc/sysdeps/ieee754/ldbl-128/e_lgammal_r.c6
-rw-r--r--libc/sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.S119
-rw-r--r--libc/sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.c62
-rw-r--r--libc/sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf.S111
-rw-r--r--libc/sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf.c60
-rw-r--r--libc/sysdeps/powerpc/powerpc32/power5/fpu/s_isnan.S62
-rw-r--r--libc/sysdeps/powerpc/powerpc32/power5/fpu/s_isnanf.S46
-rw-r--r--libc/sysdeps/powerpc/powerpc32/power5/fpu/w_sqrt.S117
-rw-r--r--libc/sysdeps/powerpc/powerpc32/power5/fpu/w_sqrtf.S109
-rw-r--r--libc/sysdeps/powerpc/powerpc32/power6/fpu/s_isnan.S62
-rw-r--r--libc/sysdeps/powerpc/powerpc32/power6/fpu/s_isnanf.S46
-rw-r--r--libc/sysdeps/powerpc/powerpc64/power5/fpu/s_isnan.S61
-rw-r--r--libc/sysdeps/powerpc/powerpc64/power6/fpu/s_isnan.S60
-rw-r--r--libc/sysdeps/powerpc/powerpc64/power6x/fpu/s_isnan.S59
-rw-r--r--libc/sysdeps/unix/sysv/linux/i386/vfork.S3
-rw-r--r--libc/sysdeps/unix/sysv/linux/net/ethernet.h10
-rw-r--r--libc/sysdeps/unix/sysv/linux/x86_64/makecontext.c26
-rw-r--r--libc/sysdeps/unix/sysv/linux/x86_64/vfork.S3
-rw-r--r--libc/sysdeps/unix/sysv/syscalls.list2
-rw-r--r--ports/ChangeLog.hppa6
-rw-r--r--ports/ChangeLog.mips8
-rw-r--r--ports/sysdeps/unix/sysv/linux/hppa/bits/atomic.h4
-rw-r--r--ports/sysdeps/unix/sysv/linux/mips/mips64/n32/ftruncate64.c29
-rw-r--r--ports/sysdeps/unix/sysv/linux/mips/mips64/n32/syscalls.list2
-rw-r--r--ports/sysdeps/unix/sysv/linux/mips/mips64/n32/truncate64.c31
51 files changed, 1958 insertions, 3079 deletions
diff --git a/libc/ChangeLog b/libc/ChangeLog
index 2cf9f3c5c..21312f6d1 100644
--- a/libc/ChangeLog
+++ b/libc/ChangeLog
@@ -1,3 +1,112 @@
+2008-03-03 Steven Munroe <sjmunroe@us.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/power5/fpu/s_isnan.S: New file.
+ * sysdeps/powerpc/powerpc32/power5/fpu/s_isnanf.S: New file.
+ * sysdeps/powerpc/powerpc32/power6/fpu/s_isnan.S: New file.
+ * sysdeps/powerpc/powerpc32/power6/fpu/s_isnanf.S: New file.
+ * sysdeps/powerpc/powerpc64/power5/fpu/s_isnan.S: New file.
+ * sysdeps/powerpc/powerpc64/power6/fpu/s_isnan.S: New file.
+ * sysdeps/powerpc/powerpc64/power6x/fpu/s_isnan.S: New file.
+
+2008-02-22 Alan Modra <amodra@bigpond.net.au>
+
+ * elf/Makefile (tests): Substitute tests-vis-yes here.
+ (tests-vis-yes): Delete.
+ (modules-name, modules-vis-yes): Similarly.
+
+2008-02-12 Pete Eberlein <eberlein@us.ibm.com>
+
+ [BZ #4407]
+ * sysdeps/ieee754/ldbl-128/e_lgammal_r.c (__ieee754_lgammal_r):
+ Preserve sign in signgamp when x is zero.
+
+2007-10-26 Steven Munroe <sjmunroe@us.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.S: New File.
+ * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.c: Removed.
+ * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf.S: New File.
+ * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf.c: Removed.
+ * sysdeps/powerpc/powerpc32/power5/fpu/w_sqrt.S: New File.
+ * sysdeps/powerpc/powerpc32/power5/fpu/w_sqrtf.S: New File.
+
+2008-04-09 Ulrich Drepper <drepper@redhat.com>
+
+ [BZ #4314]
+ * sysdeps/i386/i686/memcpy.S: Optimize copying of aligned buffers.
+
+ [BZ #5209]
+ * sysdeps/unix/sysv/syscalls.list: The times syscall doesn't return
+ an error value.
+
+ * stdlib/tst-makecontext.c: Change parameter to cf to negative
+ value to check for correct sign extension.
+
+ [BZ #5436]
+ * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext):
+ Copy 64-bit parameter values even though this is not required in
+ the standard.
+
+ * sysdeps/unix/sysv/linux/x86_64/vfork.S (__vfork): Record return
+ PC save.
+
+2008-02-14 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * sysdeps/unix/sysv/linux/i386/vfork.S (__vfork): Record return
+ PC save.
+
+2008-04-09 Jakub Jelinek <jakub@redhat.com>
+
+ * nss_files/files-XXX.c (_nss_files_getXXent_r): Restore saved errno.
+
+2008-04-09 Ulrich Drepper <drepper@redhat.com>
+
+ [BZ #5998]
+ * libio/iofwrite.c (_IO_fwrite): Return correct count if flushing
+ in line-buffered stream failed.
+ * libio/iofwrite_u.c (fwrite_unlocked): Likewise.
+
+2008-04-08 Ulrich Drepper <drepper@redhat.com>
+
+ [BZ #6024]
+ * scripts/abi-versions.awk: If the version specified by
+ --enable-oldest-abi is older than the first version for this
+ architecture, use the default version.
+
+ * locale/programs/ld-collate.c (collate_read): Ignore script lines
+ as well when ignoring the whole category.
+
+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]
diff --git a/libc/NEWS b/libc/NEWS
index 1f5670413..2d8621af7 100644
--- a/libc/NEWS
+++ b/libc/NEWS
@@ -1,5 +1,5 @@
-GNU C Library NEWS -- history of user-visible changes. 2007-12-12
-Copyright (C) 1992-2006, 2007 Free Software Foundation, Inc.
+GNU C Library NEWS -- history of user-visible changes. 2008-4-9
+Copyright (C) 1992-2007, 2008 Free Software Foundation, Inc.
See the end for copying conditions.
Please send GNU C library bug reports via <http://sources.redhat.com/bugzilla/>
@@ -10,6 +10,33 @@ Version 2.8
* New locales: bo_CN, bo_IN.
* New encoding: HP-ROMAN9, HP-GREEK8, HP-THAI8, HP-TURKISH8.
+
+* Sorting rules for some Indian languages (Devanagari and Gujarati).
+ Implemented by Pravin Satpute.
+
+* IPV6 addresses in /etc/resolv.conf can now have a scope ID
+
+* nscd caches now all timeouts for DNS entries
+ Implemented by Ulrich Drepper.
+
+* nscd is more efficient and wakes up less often.
+ Implemented by Ulrich Drepper.
+
+* More checking functions: asprintf, dprintf, obstack_printf, vasprintf,
+ vdprintf, and obstack_vprintf.
+ Implemented by Jakub Jelinek.
+
+* Faster memset for x86-64.
+ Implemented by Harsha Jagasia and H.J. Lu.
+
+* Faster memcpy on x86.
+ Implemented by Ulrich Drepper.
+
+* ARG_MAX is not anymore constant on Linux. Use sysconf(_SC_ARG_MAX).
+ Implemented by Ulrich Drepper.
+
+* Faster sqrt and sqrtf implemention for some PPC variants.
+ Implemented by Stephen Munroe.
Version 2.7
diff --git a/libc/debug/wctomb_chk.c b/libc/debug/wctomb_chk.c
index d0366346b..23fc2ffbd 100644
--- a/libc/debug/wctomb_chk.c
+++ b/libc/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/libc/elf/Makefile b/libc/elf/Makefile
index 774640f9a..efe8942e6 100644
--- a/libc/elf/Makefile
+++ b/libc/elf/Makefile
@@ -160,7 +160,7 @@ tests += $(tests-static)
endif
ifeq (yes,$(build-shared))
tests += loadtest restest1 preloadtest loadfail multiload origtest resolvfail \
- constload1 order $(tests-vis-$(have-protected)) noload filter unload \
+ constload1 order vismain noload filter unload \
reldep reldep2 reldep3 reldep4 nodelete nodelete2 \
nodlopen nodlopen2 neededtest neededtest2 \
neededtest3 neededtest4 unload2 lateglobal initfirst global \
@@ -176,7 +176,6 @@ tests += loadtest restest1 preloadtest loadfail multiload origtest resolvfail \
tst-stackguard1 tst-addr1 tst-thrlock
# reldep9
test-srcs = tst-pathopt
-tests-vis-yes = vismain
tests-execstack-yes = tst-execstack tst-execstack-needed tst-execstack-prog
endif
ifeq (yesyes,$(have-fpie)$(build-shared))
@@ -185,7 +184,7 @@ endif
tests: $(objpfx)tst-leaks1-mem
modules-names = testobj1 testobj2 testobj3 testobj4 testobj5 testobj6 \
testobj1_1 failobj constload2 constload3 unloadmod \
- dep1 dep2 dep3 dep4 $(modules-vis-$(have-protected)) \
+ dep1 dep2 dep3 dep4 vismod1 vismod2 vismod3 \
nodelmod1 nodelmod2 nodelmod3 nodelmod4 \
nodel2mod1 nodel2mod2 nodel2mod3 \
nodlopenmod nodlopenmod2 filtmod1 filtmod2 \
@@ -221,7 +220,6 @@ endif
ifeq (yesyes,$(have-fpie)$(build-shared))
modules-names += tst-piemod1
endif
-modules-vis-yes = vismod1 vismod2 vismod3
modules-execstack-yes = tst-execstack-mod
extra-test-objs += $(addsuffix .os,$(strip $(modules-names)))
# We need this variable to be sure the test modules get the right CPPFLAGS.
@@ -861,9 +859,9 @@ endif
$(objpfx)check-localplt.out: $(objpfx)check-localplt \
$(common-objpfx)libc.so \
- $(common-objpfx)math/libm.so $(thread-dso) \
- $(common-objpfx)rt/librt.so \
- $(common-objpfx)dlfcn/libdl.so \
+ $(common-objpfx)math/libm.so $(thread-dso) \
+ $(common-objpfx)rt/librt.so \
+ $(common-objpfx)dlfcn/libdl.so \
$(check-data)
$(dir $<)$(notdir $<) $(filter-out $< $(check-data),$^) | \
LC_ALL=C sort | \
diff --git a/libc/libio/iofwrite.c b/libc/libio/iofwrite.c
index 1f4331cc8..fb91d6f77 100644
--- a/libc/libio/iofwrite.c
+++ b/libc/libio/iofwrite.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993, 1996, 1997, 1998, 1999, 2000, 2002, 2003
+/* Copyright (C) 1993, 1996, 1997, 1998, 1999, 2000, 2002, 2003, 2008
Free Software Foundation, Inc.
This file is part of the GNU C Library.
@@ -44,7 +44,11 @@ _IO_fwrite (buf, size, count, fp)
if (_IO_vtable_offset (fp) != 0 || _IO_fwide (fp, -1) == -1)
written = _IO_sputn (fp, (const char *) buf, request);
_IO_release_lock (fp);
- if (written == request)
+ /* We have written all of the input in case the return value indicates
+ this or EOF is returned. The latter is a special case where we
+ simply did not manage to flush the buffer. But the data is in the
+ buffer and therefore written as far as fwrite is concerned. */
+ if (written == request || written == EOF)
return count;
else
return written / size;
diff --git a/libc/libio/iofwrite_u.c b/libc/libio/iofwrite_u.c
index 738cc5b28..d27c02ac3 100644
--- a/libc/libio/iofwrite_u.c
+++ b/libc/libio/iofwrite_u.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993, 1996-2000, 2002 Free Software Foundation, Inc.
+/* Copyright (C) 1993, 1996-2000, 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
@@ -45,7 +45,11 @@ fwrite_unlocked (buf, size, count, fp)
if (_IO_fwide (fp, -1) == -1)
{
written = _IO_sputn (fp, (const char *) buf, request);
- if (written == request)
+ /* We have written all of the input in case the return value indicates
+ this or EOF is returned. The latter is a special case where we
+ simply did not manage to flush the buffer. But the data is in the
+ buffer and therefore written as far as fwrite is concerned. */
+ if (written == request || written == EOF)
return count;
}
diff --git a/libc/locale/programs/ld-collate.c b/libc/locale/programs/ld-collate.c
index 05e22d567..0805063b7 100644
--- a/libc/locale/programs/ld-collate.c
+++ b/libc/locale/programs/ld-collate.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995-2003, 2005, 2006, 2007 Free Software Foundation, Inc.
+/* Copyright (C) 1995-2003, 2005-2007, 2008 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@gnu.org>, 1995.
@@ -3051,6 +3051,14 @@ error while adding equivalent collating symbol"));
break;
case tok_script:
+ /* Ignore the rest of the line if we don't need the input of
+ this line. */
+ if (ignore_content)
+ {
+ lr_ignore_rest (ldfile, 0);
+ break;
+ }
+
/* We get told about the scripts we know. */
arg = lr_token (ldfile, charmap, result, repertoire, verbose);
if (arg->tok != tok_bsymbol)
diff --git a/libc/localedata/ChangeLog b/libc/localedata/ChangeLog
index 324686bce..61f2151bb 100644
--- a/libc/localedata/ChangeLog
+++ b/libc/localedata/ChangeLog
@@ -1,3 +1,24 @@
+2008-04-09 Ulrich Drepper <drepper@redhat.com>
+
+ * tst-langinfo.sh: Adjust for latest fr_FR locale changes.
+
+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 #6040]
+ * locales/fr_FR: Fix abmon, abday, d_ftm, grouping.
+
+ [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.
diff --git a/libc/localedata/locales/es_ES b/libc/localedata/locales/es_ES
index feefeec78..01e13dfc7 100644
--- a/libc/localedata/locales/es_ES
+++ b/libc/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/libc/localedata/locales/fr_FR b/libc/localedata/locales/fr_FR
index 8bae00565..92c3bde1b 100644
--- a/libc/localedata/locales/fr_FR
+++ b/libc/localedata/locales/fr_FR
@@ -3,33 +3,35 @@ escape_char /
%
% French Language Locale for France
% Source: RAP
-% Address: Sankt Jo//rgens Alle 8
-% DK-1615 Ko//benhavn V, Danmark
-% Contact: Keld Simonsen
-% Email: Keld.Simonsen@dkuug.dk
-% Tel: +45 - 31226543
-% Fax: +45 - 33256543
% Language: fr
+% Contact: Traduc.org
+% Address: 18, rue Cavendish
+% 75019 Paris
+% Email: traduc@traduc.org
% Territory: FR
-% Revision: 4.3
-% Date: 1996-10-15
+% Revision: 4.4
+% Date: 2008-03-02
% Users: general
% Charset: ISO-8859-1
+% Authors:
+% 2000-06-28, keld.simonsen@dkuug.dk
+% 2008-03-02, stephane.raimbault@gmail.com
+%
% Distribution and use is free, also
% for commercial purposes.
LC_IDENTIFICATION
title "French locale for France"
source "RAP"
-address "Sankt J<U00F8>rgens Alle 8, DK-1615 K<U00F8>benhavn V, Danmark"
-contact "Keld Simonsen"
+address ""
+contact "Traduc.org"
email "bug-glibc-locales@gnu.org"
tel ""
fax ""
language "French"
territory "France"
revision "1.0"
-date "2000-06-28"
+date "2008-03-15"
%
category "fr_FR:2000";LC_IDENTIFICATION
category "fr_FR:2000";LC_CTYPE
@@ -72,7 +74,7 @@ int_curr_symbol "<U0045><U0055><U0052><U0020>"
currency_symbol "<U20AC>"
mon_decimal_point "<U002C>"
mon_thousands_sep "<U0020>"
-mon_grouping 3;3
+mon_grouping 3
positive_sign ""
negative_sign "<U002D>"
int_frac_digits 2
@@ -88,14 +90,17 @@ END LC_MONETARY
LC_NUMERIC
decimal_point "<U002C>"
thousands_sep "<U0020>"
-grouping 0;0
+grouping 3
END LC_NUMERIC
LC_TIME
-abday "<U0064><U0069><U006D>";"<U006C><U0075><U006E>";/
- "<U006D><U0061><U0072>";"<U006D><U0065><U0072>";/
- "<U006A><U0065><U0075>";"<U0076><U0065><U006E>";/
- "<U0073><U0061><U006D>"
+abday "<U0064><U0069><U006D><U002E>";/
+ "<U006C><U0075><U006E><U002E>";/
+ "<U006D><U0061><U0072><U002E>";/
+ "<U006D><U0065><U0072><U002E>";/
+ "<U006A><U0065><U0075><U002E>";/
+ "<U0076><U0065><U006E><U002E>";/
+ "<U0073><U0061><U006D><U002E>"
day "<U0064><U0069><U006D><U0061><U006E><U0063><U0068><U0065>";/
"<U006C><U0075><U006E><U0064><U0069>";/
"<U006D><U0061><U0072><U0064><U0069>";/
@@ -103,12 +108,18 @@ day "<U0064><U0069><U006D><U0061><U006E><U0063><U0068><U0065>";/
"<U006A><U0065><U0075><U0064><U0069>";/
"<U0076><U0065><U006E><U0064><U0072><U0065><U0064><U0069>";/
"<U0073><U0061><U006D><U0065><U0064><U0069>"
-abmon "<U006A><U0061><U006E>";"<U0066><U00E9><U0076>";/
- "<U006D><U0061><U0072>";"<U0061><U0076><U0072>";/
- "<U006D><U0061><U0069>";"<U006A><U0075><U006E>";/
- "<U006A><U0075><U0069>";"<U0061><U006F><U00FB>";/
- "<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
- "<U006E><U006F><U0076>";"<U0064><U00E9><U0063>"
+abmon "<U006A><U0061><U006E><U0076><U002E>";/
+ "<U0066><U00E9><U0076><U0072><U002E>";/
+ "<U006D><U0061><U0072><U0073>";/
+ "<U0061><U0076><U0072><U0069><U006C>";/
+ "<U006D><U0061><U0069>";/
+ "<U006A><U0075><U0069><U006E>";/
+ "<U006A><U0075><U0069><U006C><U002E>";/
+ "<U0061><U006F><U00FB><U0074>";/
+ "<U0073><U0065><U0070><U0074><U002E>";/
+ "<U006F><U0063><U0074><U002E>";/
+ "<U006E><U006F><U0076><U002E>";/
+ "<U0064><U00E9><U0063><U002E>"
mon "<U006A><U0061><U006E><U0076><U0069><U0065><U0072>";/
"<U0066><U00E9><U0076><U0072><U0069><U0065><U0072>";/
"<U006D><U0061><U0072><U0073>";/
@@ -122,7 +133,7 @@ mon "<U006A><U0061><U006E><U0076><U0069><U0065><U0072>";/
"<U006E><U006F><U0076><U0065><U006D><U0062><U0072><U0065>";/
"<U0064><U00E9><U0063><U0065><U006D><U0062><U0072><U0065>"
d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
-d_fmt "<U0025><U0064><U002E><U0025><U006D><U002E><U0025><U0059>"
+d_fmt "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0059>"
t_fmt "<U0025><U0054>"
am_pm "";""
t_fmt_ampm ""
diff --git a/libc/localedata/locales/hu_HU b/libc/localedata/locales/hu_HU
index 95be95b0a..97e544df6 100644
--- a/libc/localedata/locales/hu_HU
+++ b/libc/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/libc/localedata/locales/iso14651_t1_common b/libc/localedata/locales/iso14651_t1_common
index 2d1202a3c..ab36f0ed9 100644
--- a/libc/localedata/locales/iso14651_t1_common
+++ b/libc/localedata/locales/iso14651_t1_common
@@ -475,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>
@@ -576,78 +576,78 @@ 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 <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 <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 <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>
@@ -1074,83 +1074,83 @@ collating-symbol <g-halant>
<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>
@@ -1161,77 +1161,77 @@ collating-symbol <g-halant>
# 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>
+<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>
+<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>
+<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>
@@ -2071,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//>
@@ -3015,99 +3015,99 @@ 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
@@ -3124,77 +3124,77 @@ order_start <GUJARATI>;forward;forward;forward;forward,position
<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
+<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
+<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
+<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
+<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
+<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
+<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
diff --git a/libc/localedata/tst-langinfo.sh b/libc/localedata/tst-langinfo.sh
index 375352d33..b169adedb 100755
--- a/libc/localedata/tst-langinfo.sh
+++ b/libc/localedata/tst-langinfo.sh
@@ -1,6 +1,6 @@
#! /bin/sh
# Test nl_langinfo.
-# Copyright (C) 2000, 2001, 2003, 2007 Free Software Foundation, Inc.
+# Copyright (C) 2000, 2001, 2003, 2007, 2008 Free Software Foundation, Inc.
# This file is part of the GNU C Library.
#
@@ -245,13 +245,13 @@ de_DE.UTF-8 RADIXCHAR ,
de_DE.UTF-8 THOUSEP .
de_DE.UTF-8 YESEXPR ^[jJyY].*
de_DE.UTF-8 NOEXPR ^[nN].*
-fr_FR.ISO-8859-1 ABDAY_1 dim
-fr_FR.ISO-8859-1 ABDAY_2 lun
-fr_FR.ISO-8859-1 ABDAY_3 mar
-fr_FR.ISO-8859-1 ABDAY_4 mer
-fr_FR.ISO-8859-1 ABDAY_5 jeu
-fr_FR.ISO-8859-1 ABDAY_6 ven
-fr_FR.ISO-8859-1 ABDAY_7 sam
+fr_FR.ISO-8859-1 ABDAY_1 dim.
+fr_FR.ISO-8859-1 ABDAY_2 lun.
+fr_FR.ISO-8859-1 ABDAY_3 mar.
+fr_FR.ISO-8859-1 ABDAY_4 mer.
+fr_FR.ISO-8859-1 ABDAY_5 jeu.
+fr_FR.ISO-8859-1 ABDAY_6 ven.
+fr_FR.ISO-8859-1 ABDAY_7 sam.
fr_FR.ISO-8859-1 DAY_1 dimanche
fr_FR.ISO-8859-1 DAY_2 lundi
fr_FR.ISO-8859-1 DAY_3 mardi
@@ -259,18 +259,18 @@ fr_FR.ISO-8859-1 DAY_4 mercredi
fr_FR.ISO-8859-1 DAY_5 jeudi
fr_FR.ISO-8859-1 DAY_6 vendredi
fr_FR.ISO-8859-1 DAY_7 samedi
-fr_FR.ISO-8859-1 ABMON_1 jan
-fr_FR.ISO-8859-1 ABMON_2 fév
-fr_FR.ISO-8859-1 ABMON_3 mar
-fr_FR.ISO-8859-1 ABMON_4 avr
+fr_FR.ISO-8859-1 ABMON_1 janv.
+fr_FR.ISO-8859-1 ABMON_2 févr.
+fr_FR.ISO-8859-1 ABMON_3 mars
+fr_FR.ISO-8859-1 ABMON_4 avril
fr_FR.ISO-8859-1 ABMON_5 mai
-fr_FR.ISO-8859-1 ABMON_6 jun
-fr_FR.ISO-8859-1 ABMON_7 jui
-fr_FR.ISO-8859-1 ABMON_8 aoû
-fr_FR.ISO-8859-1 ABMON_9 sep
-fr_FR.ISO-8859-1 ABMON_10 oct
-fr_FR.ISO-8859-1 ABMON_11 nov
-fr_FR.ISO-8859-1 ABMON_12 déc
+fr_FR.ISO-8859-1 ABMON_6 juin
+fr_FR.ISO-8859-1 ABMON_7 juil.
+fr_FR.ISO-8859-1 ABMON_8 août
+fr_FR.ISO-8859-1 ABMON_9 sept.
+fr_FR.ISO-8859-1 ABMON_10 oct.
+fr_FR.ISO-8859-1 ABMON_11 nov.
+fr_FR.ISO-8859-1 ABMON_12 déc.
fr_FR.ISO-8859-1 MON_1 janvier
fr_FR.ISO-8859-1 MON_2 février
fr_FR.ISO-8859-1 MON_3 mars
@@ -284,7 +284,7 @@ fr_FR.ISO-8859-1 MON_10 octobre
fr_FR.ISO-8859-1 MON_11 novembre
fr_FR.ISO-8859-1 MON_12 décembre
fr_FR.ISO-8859-1 D_T_FMT "%a %d %b %Y %T %Z"
-fr_FR.ISO-8859-1 D_FMT "%d.%m.%Y"
+fr_FR.ISO-8859-1 D_FMT "%d/%m/%Y"
fr_FR.ISO-8859-1 T_FMT "%T"
fr_FR.ISO-8859-1 RADIXCHAR ,
fr_FR.ISO-8859-1 THOUSEP " "
diff --git a/libc/malloc/mtrace.pl b/libc/malloc/mtrace.pl
index 5e5e1ea0a..782861129 100644
--- a/libc/malloc/mtrace.pl
+++ b/libc/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/libc/nptl/ChangeLog b/libc/nptl/ChangeLog
index e771107f5..36dd01d57 100644
--- a/libc/nptl/ChangeLog
+++ b/libc/nptl/ChangeLog
@@ -1,3 +1,15 @@
+2007-11-26 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * pthread_create.c: Require pthread_mutex_trylock and
+ pthread_key_delete for libgcc.
+
+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/libc/nptl/pthread_create.c b/libc/nptl/pthread_create.c
index f678a6f03..e93efe7fc 100644
--- a/libc/nptl/pthread_create.c
+++ b/libc/nptl/pthread_create.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2002,2003,2004,2005,2006,2007 Free Software Foundation, Inc.
+/* Copyright (C) 2002-2007, 2008 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
@@ -603,11 +603,13 @@ compat_symbol (libpthread, __pthread_create_2_0, pthread_create,
/* If pthread_create is present, libgcc_eh.a and libsupc++.a expects some other POSIX thread
functions to be present as well. */
PTHREAD_STATIC_FN_REQUIRE (pthread_mutex_lock)
+PTHREAD_STATIC_FN_REQUIRE (pthread_mutex_trylock)
PTHREAD_STATIC_FN_REQUIRE (pthread_mutex_unlock)
PTHREAD_STATIC_FN_REQUIRE (pthread_once)
PTHREAD_STATIC_FN_REQUIRE (pthread_cancel)
PTHREAD_STATIC_FN_REQUIRE (pthread_key_create)
+PTHREAD_STATIC_FN_REQUIRE (pthread_key_delete)
PTHREAD_STATIC_FN_REQUIRE (pthread_setspecific)
PTHREAD_STATIC_FN_REQUIRE (pthread_getspecific)
diff --git a/libc/nptl/sysdeps/unix/sysv/linux/sparc/lowlevellock.h b/libc/nptl/sysdeps/unix/sysv/linux/sparc/lowlevellock.h
index f4512b262..754a0f51f 100644
--- a/libc/nptl/sysdeps/unix/sysv/linux/sparc/lowlevellock.h
+++ b/libc/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/libc/nss/nss_files/files-XXX.c b/libc/nss/nss_files/files-XXX.c
index 426007e1a..852b58a7e 100644
--- a/libc/nss/nss_files/files-XXX.c
+++ b/libc/nss/nss_files/files-XXX.c
@@ -259,7 +259,7 @@ CONCAT(_nss_files_get,ENTNAME_r) (struct STRUCTURE *result, char *buffer,
status = internal_setent (0);
- __set_errno (errno);
+ __set_errno (save_errno);
if (status == NSS_STATUS_SUCCESS && fgetpos (stream, &position) < 0)
{
diff --git a/libc/po/libc.pot b/libc/po/libc.pot
index 2919793be..a4ae24fd1 100644
--- a/libc/po/libc.pot
+++ b/libc/po/libc.pot
@@ -5,8 +5,8 @@
#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: libc 2.6.90\n"
-"POT-Creation-Date: 2007-10-15 21:18-0700\n"
+"Project-Id-Version: libc 2.7.90\n"
+"POT-Creation-Date: 2008-04-09 08:07-0700\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -129,7 +129,7 @@ msgid ""
"[OUTPUT-FILE [INPUT-FILE]...]"
msgstr ""
-#: catgets/gencat.c:232 debug/pcprofiledump.c:204 iconv/iconv_prog.c:411
+#: catgets/gencat.c:232 debug/pcprofiledump.c:204 iconv/iconv_prog.c:408
#: iconv/iconvconfig.c:380 locale/programs/localedef.c:371
#: login/programs/pt_chown.c:88 malloc/memusagestat.c:526 nss/makedb.c:231
msgid ""
@@ -138,7 +138,7 @@ msgid ""
msgstr ""
#: catgets/gencat.c:246 debug/xtrace.sh:64 elf/ldconfig.c:296
-#: elf/ldd.bash.in:39 elf/sprof.c:355 iconv/iconv_prog.c:426
+#: elf/ldd.bash.in:39 elf/sprof.c:355 iconv/iconv_prog.c:423
#: iconv/iconvconfig.c:395 locale/programs/locale.c:275
#: locale/programs/localedef.c:387 login/programs/pt_chown.c:59
#: malloc/memusage.sh:71 nscd/nscd.c:406 nss/getent.c:83 nss/makedb.c:245
@@ -151,7 +151,7 @@ msgid ""
msgstr ""
#: catgets/gencat.c:251 debug/xtrace.sh:68 elf/ldconfig.c:301 elf/sprof.c:361
-#: iconv/iconv_prog.c:431 iconv/iconvconfig.c:400 locale/programs/locale.c:280
+#: iconv/iconv_prog.c:428 iconv/iconvconfig.c:400 locale/programs/locale.c:280
#: locale/programs/localedef.c:392 malloc/memusage.sh:75 nscd/nscd.c:411
#: nss/getent.c:88 nss/makedb.c:250 posix/getconf.c:1017
#, c-format
@@ -162,7 +162,7 @@ msgstr ""
msgid "*standard input*"
msgstr ""
-#: catgets/gencat.c:288 iconv/iconv_charmap.c:158 iconv/iconv_prog.c:298
+#: catgets/gencat.c:288 iconv/iconv_charmap.c:170 iconv/iconv_prog.c:294
#: nss/makedb.c:170
#, c-format
msgid "cannot open input file `%s'"
@@ -351,7 +351,7 @@ msgstr ""
msgid ", OS ABI: %s %d.%d.%d"
msgstr ""
-#: elf/cache.c:134 elf/ldconfig.c:1270
+#: elf/cache.c:134 elf/ldconfig.c:1269
#, c-format
msgid "Can't open cache file %s\n"
msgstr ""
@@ -395,7 +395,7 @@ msgstr ""
msgid "cannot create scope list"
msgstr ""
-#: elf/dl-close.c:724
+#: elf/dl-close.c:725
msgid "shared object not open"
msgstr ""
@@ -626,29 +626,29 @@ msgstr ""
msgid "invalid target namespace in dlmopen()"
msgstr ""
-#: elf/dl-reloc.c:54
+#: elf/dl-reloc.c:56
msgid "cannot allocate memory in static TLS block"
msgstr ""
-#: elf/dl-reloc.c:196
+#: elf/dl-reloc.c:198
msgid "cannot make segment writable for relocation"
msgstr ""
-#: elf/dl-reloc.c:277
+#: elf/dl-reloc.c:281
#, c-format
msgid "%s: no PLTREL found in object %s\n"
msgstr ""
-#: elf/dl-reloc.c:288
+#: elf/dl-reloc.c:292
#, c-format
msgid "%s: out of memory to store relocation results for %s\n"
msgstr ""
-#: elf/dl-reloc.c:304
+#: elf/dl-reloc.c:308
msgid "cannot restore segment prot after reloc"
msgstr ""
-#: elf/dl-reloc.c:329
+#: elf/dl-reloc.c:333
msgid "cannot apply additional memory protection after relocation"
msgstr ""
@@ -656,11 +656,11 @@ msgstr ""
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr ""
-#: elf/dl-sysdep.c:469 elf/dl-sysdep.c:481
+#: elf/dl-sysdep.c:475 elf/dl-sysdep.c:487
msgid "cannot create capability list"
msgstr ""
-#: elf/dl-tls.c:825
+#: elf/dl-tls.c:848
msgid "cannot create TLS data structures"
msgstr ""
@@ -873,17 +873,17 @@ msgstr ""
msgid "%s:%u: cannot read directory %s"
msgstr ""
-#: elf/ldconfig.c:1223
+#: elf/ldconfig.c:1222
#, c-format
msgid "relative path `%s' used to build cache"
msgstr ""
-#: elf/ldconfig.c:1249
+#: elf/ldconfig.c:1248
#, c-format
msgid "Can't chdir to /"
msgstr ""
-#: elf/ldconfig.c:1291
+#: elf/ldconfig.c:1290
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr ""
@@ -1120,28 +1120,33 @@ msgstr ""
msgid "cannot allocate symbol data"
msgstr ""
-#: iconv/iconv_charmap.c:176 iconv/iconv_prog.c:316
+#: iconv/iconv_charmap.c:142 iconv/iconv_prog.c:446
+#, c-format
+msgid "cannot open output file"
+msgstr ""
+
+#: iconv/iconv_charmap.c:188 iconv/iconv_prog.c:312
#, c-format
msgid "error while closing input `%s'"
msgstr ""
-#: iconv/iconv_charmap.c:450
+#: iconv/iconv_charmap.c:462
#, c-format
msgid "illegal input sequence at position %Zd"
msgstr ""
-#: iconv/iconv_charmap.c:469 iconv/iconv_prog.c:526
+#: iconv/iconv_charmap.c:481 iconv/iconv_prog.c:537
#, c-format
msgid "incomplete character or shift sequence at end of buffer"
msgstr ""
-#: iconv/iconv_charmap.c:514 iconv/iconv_charmap.c:550 iconv/iconv_prog.c:569
-#: iconv/iconv_prog.c:605
+#: iconv/iconv_charmap.c:526 iconv/iconv_charmap.c:562 iconv/iconv_prog.c:580
+#: iconv/iconv_prog.c:616
#, c-format
msgid "error while reading the input"
msgstr ""
-#: iconv/iconv_charmap.c:532 iconv/iconv_prog.c:587
+#: iconv/iconv_charmap.c:544 iconv/iconv_prog.c:598
#, c-format
msgid "unable to allocate buffer for input"
msgstr ""
@@ -1194,62 +1199,57 @@ msgstr ""
msgid "[FILE...]"
msgstr ""
-#: iconv/iconv_prog.c:200
-#, c-format
-msgid "cannot open output file"
-msgstr ""
-
-#: iconv/iconv_prog.c:242
+#: iconv/iconv_prog.c:234
#, c-format
msgid "conversions from `%s' and to `%s' are not supported"
msgstr ""
-#: iconv/iconv_prog.c:247
+#: iconv/iconv_prog.c:239
#, c-format
msgid "conversion from `%s' is not supported"
msgstr ""
-#: iconv/iconv_prog.c:254
+#: iconv/iconv_prog.c:246
#, c-format
msgid "conversion to `%s' is not supported"
msgstr ""
-#: iconv/iconv_prog.c:258
+#: iconv/iconv_prog.c:250
#, c-format
msgid "conversion from `%s' to `%s' is not supported"
msgstr ""
-#: iconv/iconv_prog.c:268
+#: iconv/iconv_prog.c:260
#, c-format
msgid "failed to start conversion processing"
msgstr ""
-#: iconv/iconv_prog.c:362
+#: iconv/iconv_prog.c:358
#, c-format
msgid "error while closing output file"
msgstr ""
-#: iconv/iconv_prog.c:471 iconv/iconv_prog.c:497
+#: iconv/iconv_prog.c:456
#, c-format
msgid "conversion stopped due to problem in writing the output"
msgstr ""
-#: iconv/iconv_prog.c:522
+#: iconv/iconv_prog.c:533
#, c-format
msgid "illegal input sequence at position %ld"
msgstr ""
-#: iconv/iconv_prog.c:530
+#: iconv/iconv_prog.c:541
#, c-format
msgid "internal error (illegal descriptor)"
msgstr ""
-#: iconv/iconv_prog.c:533
+#: iconv/iconv_prog.c:544
#, c-format
msgid "unknown iconv() error %d"
msgstr ""
-#: iconv/iconv_prog.c:779
+#: iconv/iconv_prog.c:790
msgid ""
"The following list contain all the coded character sets known. This does\n"
"not necessarily mean that all combinations of these names can be used for\n"
@@ -1483,7 +1483,7 @@ msgid "no symbolic name given for end of range"
msgstr ""
#: locale/programs/charmap.c:610 locale/programs/ld-address.c:600
-#: locale/programs/ld-collate.c:2767 locale/programs/ld-collate.c:3924
+#: locale/programs/ld-collate.c:2767 locale/programs/ld-collate.c:3928
#: locale/programs/ld-ctype.c:2232 locale/programs/ld-ctype.c:2984
#: locale/programs/ld-identification.c:452
#: locale/programs/ld-measurement.c:238 locale/programs/ld-messages.c:332
@@ -1510,7 +1510,7 @@ msgid "%s: error in state machine"
msgstr ""
#: locale/programs/charmap.c:850 locale/programs/ld-address.c:616
-#: locale/programs/ld-collate.c:2764 locale/programs/ld-collate.c:4115
+#: locale/programs/ld-collate.c:2764 locale/programs/ld-collate.c:4121
#: locale/programs/ld-ctype.c:2229 locale/programs/ld-ctype.c:3001
#: locale/programs/ld-identification.c:468
#: locale/programs/ld-measurement.c:254 locale/programs/ld-messages.c:348
@@ -1534,7 +1534,7 @@ msgid ""
"same: %d vs %d"
msgstr ""
-#: locale/programs/charmap.c:993 locale/programs/ld-collate.c:3047
+#: locale/programs/charmap.c:993 locale/programs/ld-collate.c:3045
#: locale/programs/repertoire.c:419
msgid "invalid names for character range"
msgstr ""
@@ -1643,7 +1643,7 @@ msgstr ""
msgid "%s: unknown character in field `%s'"
msgstr ""
-#: locale/programs/ld-address.c:597 locale/programs/ld-collate.c:3922
+#: locale/programs/ld-address.c:597 locale/programs/ld-collate.c:3926
#: locale/programs/ld-ctype.c:2981 locale/programs/ld-identification.c:449
#: locale/programs/ld-measurement.c:235 locale/programs/ld-messages.c:330
#: locale/programs/ld-monetary.c:941 locale/programs/ld-name.c:305
@@ -1656,7 +1656,7 @@ msgstr ""
#: locale/programs/ld-address.c:607 locale/programs/ld-collate.c:542
#: locale/programs/ld-collate.c:594 locale/programs/ld-collate.c:890
#: locale/programs/ld-collate.c:903 locale/programs/ld-collate.c:2733
-#: locale/programs/ld-collate.c:2754 locale/programs/ld-collate.c:4105
+#: locale/programs/ld-collate.c:2754 locale/programs/ld-collate.c:4111
#: locale/programs/ld-ctype.c:1960 locale/programs/ld-ctype.c:2219
#: locale/programs/ld-ctype.c:2806 locale/programs/ld-ctype.c:2992
#: locale/programs/ld-identification.c:459
@@ -1763,7 +1763,7 @@ msgstr ""
msgid "`%s' and `%.*s' are not valid names for symbolic range"
msgstr ""
-#: locale/programs/ld-collate.c:1369 locale/programs/ld-collate.c:3858
+#: locale/programs/ld-collate.c:1369 locale/programs/ld-collate.c:3862
#, c-format
msgid "%s: order for `%.*s' already defined at %s:%Zu"
msgstr ""
@@ -1804,7 +1804,7 @@ msgstr ""
msgid "too many errors; giving up"
msgstr ""
-#: locale/programs/ld-collate.c:2659 locale/programs/ld-collate.c:4044
+#: locale/programs/ld-collate.c:2659 locale/programs/ld-collate.c:4050
#, c-format
msgid "%s: nested conditionals not supported"
msgstr ""
@@ -1824,112 +1824,112 @@ msgstr ""
msgid "%s: duplicate declaration of section `%s'"
msgstr ""
-#: locale/programs/ld-collate.c:3027
+#: locale/programs/ld-collate.c:3025
#, c-format
msgid "%s: unknown character in collating symbol name"
msgstr ""
-#: locale/programs/ld-collate.c:3159
+#: locale/programs/ld-collate.c:3155
#, c-format
msgid "%s: unknown character in equivalent definition name"
msgstr ""
-#: locale/programs/ld-collate.c:3172
+#: locale/programs/ld-collate.c:3168
#, c-format
msgid "%s: unknown character in equivalent definition value"
msgstr ""
-#: locale/programs/ld-collate.c:3182
+#: locale/programs/ld-collate.c:3178
#, c-format
msgid "%s: unknown symbol `%s' in equivalent definition"
msgstr ""
-#: locale/programs/ld-collate.c:3191
+#: locale/programs/ld-collate.c:3187
msgid "error while adding equivalent collating symbol"
msgstr ""
-#: locale/programs/ld-collate.c:3221
+#: locale/programs/ld-collate.c:3225
#, c-format
msgid "duplicate definition of script `%s'"
msgstr ""
-#: locale/programs/ld-collate.c:3269
+#: locale/programs/ld-collate.c:3273
#, c-format
msgid "%s: unknown section name `%.*s'"
msgstr ""
-#: locale/programs/ld-collate.c:3298
+#: locale/programs/ld-collate.c:3302
#, c-format
msgid "%s: multiple order definitions for section `%s'"
msgstr ""
-#: locale/programs/ld-collate.c:3326
+#: locale/programs/ld-collate.c:3330
#, c-format
msgid "%s: invalid number of sorting rules"
msgstr ""
-#: locale/programs/ld-collate.c:3353
+#: locale/programs/ld-collate.c:3357
#, c-format
msgid "%s: multiple order definitions for unnamed section"
msgstr ""
-#: locale/programs/ld-collate.c:3407 locale/programs/ld-collate.c:3537
-#: locale/programs/ld-collate.c:3900
+#: locale/programs/ld-collate.c:3411 locale/programs/ld-collate.c:3541
+#: locale/programs/ld-collate.c:3904
#, c-format
msgid "%s: missing `order_end' keyword"
msgstr ""
-#: locale/programs/ld-collate.c:3470
+#: locale/programs/ld-collate.c:3474
#, c-format
msgid "%s: order for collating symbol %.*s not yet defined"
msgstr ""
-#: locale/programs/ld-collate.c:3488
+#: locale/programs/ld-collate.c:3492
#, c-format
msgid "%s: order for collating element %.*s not yet defined"
msgstr ""
-#: locale/programs/ld-collate.c:3499
+#: locale/programs/ld-collate.c:3503
#, c-format
msgid "%s: cannot reorder after %.*s: symbol not known"
msgstr ""
-#: locale/programs/ld-collate.c:3551 locale/programs/ld-collate.c:3912
+#: locale/programs/ld-collate.c:3555 locale/programs/ld-collate.c:3916
#, c-format
msgid "%s: missing `reorder-end' keyword"
msgstr ""
-#: locale/programs/ld-collate.c:3585 locale/programs/ld-collate.c:3783
+#: locale/programs/ld-collate.c:3589 locale/programs/ld-collate.c:3787
#, c-format
msgid "%s: section `%.*s' not known"
msgstr ""
-#: locale/programs/ld-collate.c:3650
+#: locale/programs/ld-collate.c:3654
#, c-format
msgid "%s: bad symbol <%.*s>"
msgstr ""
-#: locale/programs/ld-collate.c:3846
+#: locale/programs/ld-collate.c:3850
#, c-format
msgid "%s: cannot have `%s' as end of ellipsis range"
msgstr ""
-#: locale/programs/ld-collate.c:3896
+#: locale/programs/ld-collate.c:3900
#, c-format
msgid "%s: empty category description not allowed"
msgstr ""
-#: locale/programs/ld-collate.c:3915
+#: locale/programs/ld-collate.c:3919
#, c-format
msgid "%s: missing `reorder-sections-end' keyword"
msgstr ""
-#: locale/programs/ld-collate.c:4077
+#: locale/programs/ld-collate.c:4083
#, c-format
msgid "%s: '%s' without matching 'ifdef' or 'ifndef'"
msgstr ""
-#: locale/programs/ld-collate.c:4095
+#: locale/programs/ld-collate.c:4101
#, c-format
msgid "%s: 'endif' without matching 'ifdef' or 'ifndef'"
msgstr ""
@@ -2260,7 +2260,7 @@ msgstr ""
msgid "%s: starting date is invalid in string %Zd in `era' field"
msgstr ""
-#: locale/programs/ld-time.c:407
+#: locale/programs/ld-time.c:407 locale/programs/ld-time.c:435
#, c-format
msgid "%s: invalid stopping date in string %Zd in `era' field"
msgstr ""
@@ -2270,11 +2270,6 @@ msgstr ""
msgid "%s: garbage at end of stopping date in string %Zd in `era' field"
msgstr ""
-#: locale/programs/ld-time.c:435
-#, c-format
-msgid "%s: stopping date is invalid in string %Zd in `era' field"
-msgstr ""
-
#: locale/programs/ld-time.c:444
#, c-format
msgid "%s: missing era name in string %Zd in `era' field"
@@ -2686,7 +2681,7 @@ msgid "cannot create output file `%s' for category `%s'"
msgstr ""
#: locale/programs/locfile.c:782
-msgid "expect string argument for `copy'"
+msgid "expecting string argument for `copy'"
msgstr ""
#: locale/programs/locfile.c:786
@@ -3503,251 +3498,265 @@ msgstr ""
msgid "yp_update: cannot get server address\n"
msgstr ""
-#: nscd/aicache.c:77 nscd/hstcache.c:468
+#: nscd/aicache.c:77 nscd/hstcache.c:473
#, c-format
msgid "Haven't found \"%s\" in hosts cache!"
msgstr ""
-#: nscd/aicache.c:79 nscd/hstcache.c:470
+#: nscd/aicache.c:79 nscd/hstcache.c:475
#, c-format
msgid "Reloading \"%s\" in hosts cache!"
msgstr ""
-#: nscd/cache.c:146
+#: nscd/cache.c:150
#, c-format
msgid "add new entry \"%s\" of type %s for %s to cache%s"
msgstr ""
-#: nscd/cache.c:148
+#: nscd/cache.c:152
msgid " (first)"
msgstr ""
-#: nscd/cache.c:256 nscd/connections.c:810
+#: nscd/cache.c:263 nscd/connections.c:811
#, c-format
msgid "cannot stat() file `%s': %s"
msgstr ""
-#: nscd/cache.c:285
+#: nscd/cache.c:305
#, c-format
msgid "pruning %s cache; time %ld"
msgstr ""
-#: nscd/cache.c:312
+#: nscd/cache.c:334
#, c-format
msgid "considering %s entry \"%s\", timeout %<PRIu64>"
msgstr ""
-#: nscd/connections.c:521 nscd/connections.c:533 nscd/connections.c:545
-#: nscd/connections.c:564
+#: nscd/connections.c:527
#, c-format
msgid "invalid persistent database file \"%s\": %s"
msgstr ""
#: nscd/connections.c:535
+msgid "uninitialized header"
+msgstr ""
+
+#: nscd/connections.c:540
msgid "header size does not match"
msgstr ""
-#: nscd/connections.c:547
+#: nscd/connections.c:550
msgid "file size does not match"
msgstr ""
-#: nscd/connections.c:566
+#: nscd/connections.c:567
msgid "verification failed"
msgstr ""
-#: nscd/connections.c:580
+#: nscd/connections.c:581
#, c-format
msgid ""
"suggested size of table for database %s larger than the persistent "
"database's table"
msgstr ""
-#: nscd/connections.c:591 nscd/connections.c:673
+#: nscd/connections.c:592 nscd/connections.c:674
#, c-format
msgid "cannot create read-only descriptor for \"%s\"; no mmap"
msgstr ""
-#: nscd/connections.c:652
+#: nscd/connections.c:653
#, c-format
msgid ""
"database for %s corrupted or simultaneously used; remove %s manually if "
"necessary and restart"
msgstr ""
-#: nscd/connections.c:659
+#: nscd/connections.c:660
#, c-format
msgid "cannot create %s; no persistent database used"
msgstr ""
-#: nscd/connections.c:662
+#: nscd/connections.c:663
#, c-format
msgid "cannot create %s; no sharing possible"
msgstr ""
-#: nscd/connections.c:733
+#: nscd/connections.c:734
#, c-format
msgid "cannot write to database file %s: %s"
msgstr ""
-#: nscd/connections.c:772
+#: nscd/connections.c:773
#, c-format
msgid "cannot set socket to close on exec: %s; disabling paranoia mode"
msgstr ""
-#: nscd/connections.c:823
+#: nscd/connections.c:824
#, c-format
msgid "cannot open socket: %s"
msgstr ""
-#: nscd/connections.c:840
+#: nscd/connections.c:841
#, c-format
msgid "cannot change socket to nonblocking mode: %s"
msgstr ""
-#: nscd/connections.c:848
+#: nscd/connections.c:849
#, c-format
msgid "cannot set socket to close on exec: %s"
msgstr ""
-#: nscd/connections.c:859
+#: nscd/connections.c:860
#, c-format
msgid "cannot enable socket to accept connections: %s"
msgstr ""
-#: nscd/connections.c:955
+#: nscd/connections.c:960
#, c-format
msgid "provide access to FD %d, for %s"
msgstr ""
-#: nscd/connections.c:967
+#: nscd/connections.c:972
#, c-format
msgid "cannot handle old request version %d; current version is %d"
msgstr ""
-#: nscd/connections.c:1009 nscd/connections.c:1062
+#: nscd/connections.c:982
+msgid "request not handled due to missing permission"
+msgstr ""
+
+#: nscd/connections.c:1018 nscd/connections.c:1071
#, c-format
msgid "cannot write result: %s"
msgstr ""
-#: nscd/connections.c:1145
+#: nscd/connections.c:1154
#, c-format
msgid "error getting caller's id: %s"
msgstr ""
-#: nscd/connections.c:1204
+#: nscd/connections.c:1213
#, c-format
msgid "cannot open /proc/self/cmdline: %s; disabling paranoia mode"
msgstr ""
-#: nscd/connections.c:1218
+#: nscd/connections.c:1227
#, c-format
msgid "cannot read /proc/self/cmdline: %s; disabling paranoia mode"
msgstr ""
-#: nscd/connections.c:1258
+#: nscd/connections.c:1267
#, c-format
msgid "cannot change to old UID: %s; disabling paranoia mode"
msgstr ""
-#: nscd/connections.c:1268
+#: nscd/connections.c:1277
#, c-format
msgid "cannot change to old GID: %s; disabling paranoia mode"
msgstr ""
-#: nscd/connections.c:1281
+#: nscd/connections.c:1290
#, c-format
msgid "cannot change to old working directory: %s; disabling paranoia mode"
msgstr ""
-#: nscd/connections.c:1310
+#: nscd/connections.c:1319
#, c-format
msgid "re-exec failed: %s; disabling paranoia mode"
msgstr ""
-#: nscd/connections.c:1319
+#: nscd/connections.c:1328
#, c-format
msgid "cannot change current working directory to \"/\": %s"
msgstr ""
-#: nscd/connections.c:1437
+#: nscd/connections.c:1471
#, c-format
msgid "short read while reading request: %s"
msgstr ""
-#: nscd/connections.c:1468
+#: nscd/connections.c:1502
#, c-format
msgid "key length in request too long: %d"
msgstr ""
-#: nscd/connections.c:1481
+#: nscd/connections.c:1515
#, c-format
msgid "short read while reading request key: %s"
msgstr ""
-#: nscd/connections.c:1490
+#: nscd/connections.c:1524
#, c-format
msgid "handle_request: request received (Version = %d) from PID %ld"
msgstr ""
-#: nscd/connections.c:1495
+#: nscd/connections.c:1529
#, c-format
msgid "handle_request: request received (Version = %d)"
msgstr ""
-#: nscd/connections.c:1856
-#, c-format
-msgid "could only start %d threads; terminating"
+#: nscd/connections.c:1866
+msgid "could not initialize conditional variable"
msgstr ""
-#: nscd/connections.c:1904 nscd/connections.c:1905 nscd/connections.c:1922
-#: nscd/connections.c:1931 nscd/connections.c:1949 nscd/connections.c:1960
-#: nscd/connections.c:1971
+#: nscd/connections.c:1874
+msgid "could not start clean-up thread; terminating"
+msgstr ""
+
+#: nscd/connections.c:1888
+msgid "could not start any worker thread; terminating"
+msgstr ""
+
+#: nscd/connections.c:1939 nscd/connections.c:1940 nscd/connections.c:1957
+#: nscd/connections.c:1966 nscd/connections.c:1984 nscd/connections.c:1995
+#: nscd/connections.c:2006
#, c-format
msgid "Failed to run nscd as user '%s'"
msgstr ""
-#: nscd/connections.c:1923
+#: nscd/connections.c:1958
#, c-format
msgid "initial getgrouplist failed"
msgstr ""
-#: nscd/connections.c:1932
+#: nscd/connections.c:1967
#, c-format
msgid "getgrouplist failed"
msgstr ""
-#: nscd/connections.c:1950
+#: nscd/connections.c:1985
#, c-format
msgid "setgroups failed"
msgstr ""
-#: nscd/grpcache.c:402 nscd/hstcache.c:418 nscd/initgrcache.c:412
-#: nscd/pwdcache.c:397 nscd/servicescache.c:343
+#: nscd/grpcache.c:404 nscd/hstcache.c:422 nscd/initgrcache.c:414
+#: nscd/pwdcache.c:399 nscd/servicescache.c:345
#, c-format
msgid "short write in %s: %s"
msgstr ""
-#: nscd/grpcache.c:445 nscd/initgrcache.c:78
+#: nscd/grpcache.c:447 nscd/initgrcache.c:78
#, c-format
msgid "Haven't found \"%s\" in group cache!"
msgstr ""
-#: nscd/grpcache.c:447 nscd/initgrcache.c:80
+#: nscd/grpcache.c:449 nscd/initgrcache.c:80
#, c-format
msgid "Reloading \"%s\" in group cache!"
msgstr ""
-#: nscd/grpcache.c:524
+#: nscd/grpcache.c:526
#, c-format
msgid "Invalid numeric gid \"%s\"!"
msgstr ""
-#: nscd/mem.c:383
+#: nscd/mem.c:422
#, c-format
msgid "freed %zu bytes in %s cache"
msgstr ""
-#: nscd/mem.c:512
+#: nscd/mem.c:557
#, c-format
msgid "no more memory for database '%s'"
msgstr ""
@@ -3773,7 +3782,7 @@ msgid "Shut the server down"
msgstr ""
#: nscd/nscd.c:103
-msgid "Print current configuration statistic"
+msgid "Print current configuration statistics"
msgstr ""
#: nscd/nscd.c:104
@@ -3860,37 +3869,37 @@ msgstr ""
msgid "Parse error: %s"
msgstr ""
-#: nscd/nscd_conf.c:193
+#: nscd/nscd_conf.c:194
#, c-format
msgid "Must specify user name for server-user option"
msgstr ""
-#: nscd/nscd_conf.c:200
+#: nscd/nscd_conf.c:201
#, c-format
msgid "Must specify user name for stat-user option"
msgstr ""
-#: nscd/nscd_conf.c:244
+#: nscd/nscd_conf.c:245
#, c-format
msgid "invalid value for 'reload-count': %u"
msgstr ""
-#: nscd/nscd_conf.c:259
+#: nscd/nscd_conf.c:260
#, c-format
msgid "Must specify value for restart-interval option"
msgstr ""
-#: nscd/nscd_conf.c:273
+#: nscd/nscd_conf.c:274
#, c-format
msgid "Unknown option: %s %s %s"
msgstr ""
-#: nscd/nscd_conf.c:286
+#: nscd/nscd_conf.c:287
#, c-format
msgid "cannot get current working directory: %s; disabling paranoia mode"
msgstr ""
-#: nscd/nscd_conf.c:306
+#: nscd/nscd_conf.c:307
#, c-format
msgid "maximum file size for %s database too small"
msgstr ""
@@ -3989,17 +3998,17 @@ msgid ""
"%15s check /etc/%s for changes\n"
msgstr ""
-#: nscd/pwdcache.c:440
+#: nscd/pwdcache.c:442
#, c-format
msgid "Haven't found \"%s\" in password cache!"
msgstr ""
-#: nscd/pwdcache.c:442
+#: nscd/pwdcache.c:444
#, c-format
msgid "Reloading \"%s\" in password cache!"
msgstr ""
-#: nscd/pwdcache.c:520
+#: nscd/pwdcache.c:522
#, c-format
msgid "Invalid numeric uid \"%s\"!"
msgstr ""
@@ -4075,7 +4084,11 @@ msgstr ""
msgid "Error getting sid from context"
msgstr ""
-#: nscd/selinux.c:399
+#: nscd/selinux.c:374
+msgid "compile-time support for database policy missing"
+msgstr ""
+
+#: nscd/selinux.c:407
#, c-format
msgid ""
"\n"
@@ -4091,12 +4104,12 @@ msgid ""
"%15u CAV misses\n"
msgstr ""
-#: nscd/servicescache.c:390
+#: nscd/servicescache.c:392
#, c-format
msgid "Haven't found \"%s\" in services cache!"
msgstr ""
-#: nscd/servicescache.c:392
+#: nscd/servicescache.c:394
#, c-format
msgid "Reloading \"%s\" in services cache!"
msgstr ""
@@ -4220,61 +4233,56 @@ msgstr ""
msgid "Unrecognized variable `%s'"
msgstr ""
-#: posix/getopt.c:571 posix/getopt.c:587
-#, c-format
-msgid "%s: option `%s' is ambiguous\n"
-msgstr ""
-
-#: posix/getopt.c:620 posix/getopt.c:624
+#: posix/getopt.c:570 posix/getopt.c:586
#, c-format
-msgid "%s: option `--%s' doesn't allow an argument\n"
+msgid "%s: option '%s' is ambiguous\n"
msgstr ""
-#: posix/getopt.c:633 posix/getopt.c:638
+#: posix/getopt.c:619 posix/getopt.c:623
#, c-format
-msgid "%s: option `%c%s' doesn't allow an argument\n"
+msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr ""
-#: posix/getopt.c:681 posix/getopt.c:700 posix/getopt.c:1016
-#: posix/getopt.c:1035
+#: posix/getopt.c:632 posix/getopt.c:637
#, c-format
-msgid "%s: option `%s' requires an argument\n"
+msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr ""
-#: posix/getopt.c:738 posix/getopt.c:741
+#: posix/getopt.c:680 posix/getopt.c:699 posix/getopt.c:1002
+#: posix/getopt.c:1021
#, c-format
-msgid "%s: unrecognized option `--%s'\n"
+msgid "%s: option '%s' requires an argument\n"
msgstr ""
-#: posix/getopt.c:749 posix/getopt.c:752
+#: posix/getopt.c:737 posix/getopt.c:740
#, c-format
-msgid "%s: unrecognized option `%c%s'\n"
+msgid "%s: unrecognized option '--%s'\n"
msgstr ""
-#: posix/getopt.c:804 posix/getopt.c:807
+#: posix/getopt.c:748 posix/getopt.c:751
#, c-format
-msgid "%s: illegal option -- %c\n"
+msgid "%s: unrecognized option '%c%s'\n"
msgstr ""
-#: posix/getopt.c:813 posix/getopt.c:816
+#: posix/getopt.c:800 posix/getopt.c:803
#, c-format
-msgid "%s: invalid option -- %c\n"
+msgid "%s: invalid option -- '%c'\n"
msgstr ""
-#: posix/getopt.c:868 posix/getopt.c:884 posix/getopt.c:1088
-#: posix/getopt.c:1106
+#: posix/getopt.c:853 posix/getopt.c:870 posix/getopt.c:1073
+#: posix/getopt.c:1091
#, c-format
-msgid "%s: option requires an argument -- %c\n"
+msgid "%s: option requires an argument -- '%c'\n"
msgstr ""
-#: posix/getopt.c:937 posix/getopt.c:953
+#: posix/getopt.c:923 posix/getopt.c:939
#, c-format
-msgid "%s: option `-W %s' is ambiguous\n"
+msgid "%s: option '-W %s' is ambiguous\n"
msgstr ""
-#: posix/getopt.c:977 posix/getopt.c:995
+#: posix/getopt.c:963 posix/getopt.c:981
#, 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 ""
#: posix/regcomp.c:135
@@ -4429,133 +4437,138 @@ msgstr ""
msgid "Unknown signal %d"
msgstr ""
-#: sunrpc/auth_unix.c:114
-msgid "authunix_create: out of memory\n"
+#: sunrpc/auth_unix.c:114 sunrpc/clnt_tcp.c:131 sunrpc/clnt_udp.c:140
+#: sunrpc/clnt_unix.c:128 sunrpc/svc_tcp.c:179 sunrpc/svc_tcp.c:218
+#: sunrpc/svc_udp.c:153 sunrpc/svc_unix.c:176 sunrpc/svc_unix.c:215
+#: sunrpc/xdr.c:566 sunrpc/xdr.c:718 sunrpc/xdr_array.c:106
+#: sunrpc/xdr_rec.c:156 sunrpc/xdr_ref.c:85
+msgid "out of memory\n"
msgstr ""
#: sunrpc/auth_unix.c:350
msgid "auth_unix.c: Fatal marshalling problem"
msgstr ""
-#: sunrpc/clnt_perr.c:118 sunrpc/clnt_perr.c:139
+#: sunrpc/clnt_perr.c:105 sunrpc/clnt_perr.c:121
#, c-format
-msgid "; low version = %lu, high version = %lu"
+msgid "%s: %s; low version = %lu, high version = %lu"
msgstr ""
-#: sunrpc/clnt_perr.c:125
-msgid "; why = "
+#: sunrpc/clnt_perr.c:112
+#, c-format
+msgid "%s: %s; why = %s\n"
msgstr ""
-#: sunrpc/clnt_perr.c:132
+#: sunrpc/clnt_perr.c:114
#, c-format
-msgid "(unknown authentication error - %d)"
+msgid "%s: %s; why = (unknown authentication error - %d)\n"
msgstr ""
-#: sunrpc/clnt_perr.c:172
+#: sunrpc/clnt_perr.c:159
msgid "RPC: Success"
msgstr ""
-#: sunrpc/clnt_perr.c:175
+#: sunrpc/clnt_perr.c:162
msgid "RPC: Can't encode arguments"
msgstr ""
-#: sunrpc/clnt_perr.c:179
+#: sunrpc/clnt_perr.c:166
msgid "RPC: Can't decode result"
msgstr ""
-#: sunrpc/clnt_perr.c:183
+#: sunrpc/clnt_perr.c:170
msgid "RPC: Unable to send"
msgstr ""
-#: sunrpc/clnt_perr.c:187
+#: sunrpc/clnt_perr.c:174
msgid "RPC: Unable to receive"
msgstr ""
-#: sunrpc/clnt_perr.c:191
+#: sunrpc/clnt_perr.c:178
msgid "RPC: Timed out"
msgstr ""
-#: sunrpc/clnt_perr.c:195
+#: sunrpc/clnt_perr.c:182
msgid "RPC: Incompatible versions of RPC"
msgstr ""
-#: sunrpc/clnt_perr.c:199
+#: sunrpc/clnt_perr.c:186
msgid "RPC: Authentication error"
msgstr ""
-#: sunrpc/clnt_perr.c:203
+#: sunrpc/clnt_perr.c:190
msgid "RPC: Program unavailable"
msgstr ""
-#: sunrpc/clnt_perr.c:207
+#: sunrpc/clnt_perr.c:194
msgid "RPC: Program/version mismatch"
msgstr ""
-#: sunrpc/clnt_perr.c:211
+#: sunrpc/clnt_perr.c:198
msgid "RPC: Procedure unavailable"
msgstr ""
-#: sunrpc/clnt_perr.c:215
+#: sunrpc/clnt_perr.c:202
msgid "RPC: Server can't decode arguments"
msgstr ""
-#: sunrpc/clnt_perr.c:219
+#: sunrpc/clnt_perr.c:206
msgid "RPC: Remote system error"
msgstr ""
-#: sunrpc/clnt_perr.c:223
+#: sunrpc/clnt_perr.c:210
msgid "RPC: Unknown host"
msgstr ""
-#: sunrpc/clnt_perr.c:227
+#: sunrpc/clnt_perr.c:214
msgid "RPC: Unknown protocol"
msgstr ""
-#: sunrpc/clnt_perr.c:231
+#: sunrpc/clnt_perr.c:218
msgid "RPC: Port mapper failure"
msgstr ""
-#: sunrpc/clnt_perr.c:235
+#: sunrpc/clnt_perr.c:222
msgid "RPC: Program not registered"
msgstr ""
-#: sunrpc/clnt_perr.c:239
+#: sunrpc/clnt_perr.c:226
msgid "RPC: Failed (unspecified error)"
msgstr ""
-#: sunrpc/clnt_perr.c:280
+#: sunrpc/clnt_perr.c:267
msgid "RPC: (unknown error code)"
msgstr ""
-#: sunrpc/clnt_perr.c:342
+#: sunrpc/clnt_perr.c:330
msgid "Authentication OK"
msgstr ""
-#: sunrpc/clnt_perr.c:345
+#: sunrpc/clnt_perr.c:333
msgid "Invalid client credential"
msgstr ""
-#: sunrpc/clnt_perr.c:349
+#: sunrpc/clnt_perr.c:337
msgid "Server rejected credential"
msgstr ""
-#: sunrpc/clnt_perr.c:353
+#: sunrpc/clnt_perr.c:341
msgid "Invalid client verifier"
msgstr ""
-#: sunrpc/clnt_perr.c:357
+#: sunrpc/clnt_perr.c:345
msgid "Server rejected verifier"
msgstr ""
-#: sunrpc/clnt_perr.c:361
+#: sunrpc/clnt_perr.c:349
msgid "Client credential too weak"
msgstr ""
-#: sunrpc/clnt_perr.c:365
+#: sunrpc/clnt_perr.c:353
msgid "Invalid server verifier"
msgstr ""
-#: sunrpc/clnt_perr.c:369
+#: sunrpc/clnt_perr.c:357
msgid "Failed (unspecified error)"
msgstr ""
@@ -4563,18 +4576,6 @@ msgstr ""
msgid "clnt_raw.c: fatal header serialization error"
msgstr ""
-#: sunrpc/clnt_tcp.c:131
-msgid "clnttcp_create: out of memory\n"
-msgstr ""
-
-#: sunrpc/clnt_udp.c:139
-msgid "clntudp_create: out of memory\n"
-msgstr ""
-
-#: sunrpc/clnt_unix.c:128
-msgid "clntunix_create: out of memory\n"
-msgstr ""
-
#: sunrpc/pm_getmaps.c:83
msgid "pmap_getmaps.c: rpc problem"
msgstr ""
@@ -4859,14 +4860,6 @@ msgstr ""
msgid "svc_tcp.c - cannot getsockname or listen"
msgstr ""
-#: sunrpc/svc_tcp.c:179
-msgid "svctcp_create: out of memory\n"
-msgstr ""
-
-#: sunrpc/svc_tcp.c:218
-msgid "svc_tcp: makefd_xprt: out of memory\n"
-msgstr ""
-
#: sunrpc/svc_udp.c:128
msgid "svcudp_create: socket creation problem"
msgstr ""
@@ -4875,39 +4868,35 @@ msgstr ""
msgid "svcudp_create - cannot getsockname"
msgstr ""
-#: sunrpc/svc_udp.c:152
-msgid "svcudp_create: out of memory\n"
-msgstr ""
-
-#: sunrpc/svc_udp.c:174
+#: sunrpc/svc_udp.c:175
msgid "svcudp_create: xp_pad is too small for IP_PKTINFO\n"
msgstr ""
-#: sunrpc/svc_udp.c:474
+#: sunrpc/svc_udp.c:475
msgid "enablecache: cache already enabled"
msgstr ""
-#: sunrpc/svc_udp.c:480
+#: sunrpc/svc_udp.c:481
msgid "enablecache: could not allocate cache"
msgstr ""
-#: sunrpc/svc_udp.c:489
+#: sunrpc/svc_udp.c:490
msgid "enablecache: could not allocate cache data"
msgstr ""
-#: sunrpc/svc_udp.c:497
+#: sunrpc/svc_udp.c:498
msgid "enablecache: could not allocate cache fifo"
msgstr ""
-#: sunrpc/svc_udp.c:532
+#: sunrpc/svc_udp.c:533
msgid "cache_set: victim not found"
msgstr ""
-#: sunrpc/svc_udp.c:543
+#: sunrpc/svc_udp.c:544
msgid "cache_set: victim alloc failed"
msgstr ""
-#: sunrpc/svc_udp.c:550
+#: sunrpc/svc_udp.c:551
msgid "cache_set: could not allocate new rpc_buffer"
msgstr ""
@@ -4919,34 +4908,6 @@ msgstr ""
msgid "svc_unix.c - cannot getsockname or listen"
msgstr ""
-#: sunrpc/svc_unix.c:176
-msgid "svcunix_create: out of memory\n"
-msgstr ""
-
-#: sunrpc/svc_unix.c:215
-msgid "svc_unix: makefd_xprt: out of memory\n"
-msgstr ""
-
-#: sunrpc/xdr.c:566
-msgid "xdr_bytes: out of memory\n"
-msgstr ""
-
-#: sunrpc/xdr.c:718
-msgid "xdr_string: out of memory\n"
-msgstr ""
-
-#: sunrpc/xdr_array.c:106
-msgid "xdr_array: out of memory\n"
-msgstr ""
-
-#: sunrpc/xdr_rec.c:156
-msgid "xdrrec_create: out of memory\n"
-msgstr ""
-
-#: sunrpc/xdr_ref.c:86
-msgid "xdr_reference: out of memory\n"
-msgstr ""
-
#: sysdeps/generic/siglist.h:29 sysdeps/unix/siglist.c:27
msgid "Hangup"
msgstr ""
diff --git a/libc/po/nl.po b/libc/po/nl.po
index 1011af9c9..9fbc5e4c8 100644
--- a/libc/po/nl.po
+++ b/libc/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: 2008-03-30 20:00+0200\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,23 +1443,23 @@ 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"
+"tekensetdefinitie '%s' is niet ASCII-compatibel;\n"
"de taalregio voldoet niet aan ISO C\n"
#: locale/programs/charmap.c:337
@@ -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,7 +2172,7 @@ 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
@@ -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 de beschikbare taalregio's tonen"
+msgstr "namen van beschikbare taalregio's tonen"
#: locale/programs/locale.c:78
msgid "Write names of available charmaps"
-msgstr "namen van de beschikbare tekenskaarten tonen"
+msgstr "namen van beschikbare tekensetdefinities tonen"
#: locale/programs/locale.c:79
msgid "Modify output format:"
@@ -2570,9 +2571,9 @@ msgid ""
" locale path : %s\n"
"%s"
msgstr ""
-"Systeemmap voor tekenskaarten: %s\n"
-" voor repertoirekaarten: %s\n"
-" en het taalregiopad is: %s\n"
+"Systeemmap voor tekensetdefinities: %s\n"
+" voor repertoirekaarten: %s\n"
+" en het taalregiopad is: %s\n"
"\n"
"%s"
@@ -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"
diff --git a/libc/resolv/res_init.c b/libc/resolv/res_init.c
index d1a5681a9..a2840968f 100644
--- a/libc/resolv/res_init.c
+++ b/libc/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/libc/scripts/abi-versions.awk b/libc/scripts/abi-versions.awk
index ab98d78e5..06fa14833 100644
--- a/libc/scripts/abi-versions.awk
+++ b/libc/scripts/abi-versions.awk
@@ -30,6 +30,9 @@ $2 == "=" {
printf "#define ABI_%s_%s\tABI_%s_%s\n", libid, oldid, libid, newid;
printf "#define VERSION_%s_%s\t%s\n", libid, oldid, new;
+
+ if ("GLIBC_" oldest_abi == old)
+ oldest_abi = "default";
next;
}
diff --git a/libc/stdlib/mbtowc.c b/libc/stdlib/mbtowc.c
index 744b2b6c0..ee8850bbc 100644
--- a/libc/stdlib/mbtowc.c
+++ b/libc/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/libc/stdlib/tst-makecontext.c b/libc/stdlib/tst-makecontext.c
index 1451efa56..5fe66f6fc 100644
--- a/libc/stdlib/tst-makecontext.c
+++ b/libc/stdlib/tst-makecontext.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2006, 2007 Free Software Foundation, Inc.
+/* Copyright (C) 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
@@ -25,10 +25,12 @@ ucontext_t ucp;
char st1[8192];
__thread int thr;
+int somevar = -76;
+
void
cf (int i)
{
- if (i != 78 || thr != 94)
+ if (i != -78 || thr != 94)
{
printf ("i %d thr %d\n", i, thr);
exit (1);
@@ -54,7 +56,7 @@ do_test (void)
ucp.uc_link = NULL;
ucp.uc_stack.ss_sp = st1;
ucp.uc_stack.ss_size = sizeof st1;
- makecontext (&ucp, (void (*) (void)) cf, 1, 78);
+ makecontext (&ucp, (void (*) (void)) cf, 1, somevar - 2);
if (setcontext (&ucp) != 0)
{
puts ("setcontext failed");
diff --git a/libc/stdlib/wctomb.c b/libc/stdlib/wctomb.c
index 49872f5c6..3ba8a3e2a 100644
--- a/libc/stdlib/wctomb.c
+++ b/libc/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/libc/sysdeps/i386/i686/memcpy.S b/libc/sysdeps/i386/i686/memcpy.S
index 00e84ec2e..ff5c66e9d 100644
--- a/libc/sysdeps/i386/i686/memcpy.S
+++ b/libc/sysdeps/i386/i686/memcpy.S
@@ -1,7 +1,7 @@
/* Copy memory block and return pointer to beginning of destination block
For Intel 80x86, x>=6.
This file is part of the GNU C Library.
- Copyright (C) 1999, 2000, 2003, 2004 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2000, 2003, 2004, 2008 Free Software Foundation, Inc.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1999.
The GNU C Library is free software; you can redistribute it and/or
@@ -41,29 +41,64 @@ END (__memcpy_chk)
ENTRY (BP_SYM (memcpy))
ENTER
- movl LEN(%esp), %ecx
movl %edi, %eax
movl DEST(%esp), %edi
movl %esi, %edx
movl SRC(%esp), %esi
- CHECK_BOUNDS_BOTH_WIDE (%edi, DEST(%esp), %ecx)
- CHECK_BOUNDS_BOTH_WIDE (%esi, SRC(%esp), %ecx)
+ movl %edi, %ecx
+ xorl %esi, %ecx
+ andl $3, %ecx
+ movl LEN(%esp), %ecx
cld
- shrl $1, %ecx
- jnc 1f
+ jne .Lunaligned
+
+ cmpl $3, %ecx
+ jbe .Lunaligned
+
+ testl $3, %esi
+ je 1f
movsb
-1: shrl $1, %ecx
- jnc 2f
- movsw
-2: rep
+ decl %ecx
+ testl $3, %esi
+ je 1f
+ movsb
+ decl %ecx
+ testl $3, %esi
+ je 1f
+ movsb
+ decl %ecx
+1: pushl %eax
+ movl %ecx, %eax
+ shrl $2, %ecx
+ rep
movsl
- movl %eax, %edi
+ movl %eax, %ecx
+ andl $3, %ecx
+ rep
+ movsb
+ popl %eax
+
+.Lend: movl %eax, %edi
movl %edx, %esi
movl DEST(%esp), %eax
RETURN_BOUNDED_POINTER (DEST(%esp))
LEAVE
RET_PTR
+
+ /* When we come here the pointers do not have the same
+ alignment or the length is too short. No need to optimize for
+ aligned memory accesses. */
+.Lunaligned:
+ shrl $1, %ecx
+ jnc 1f
+ movsb
+1: shrl $1, %ecx
+ jnc 2f
+ movsw
+2: rep
+ movsl
+ jmp .Lend
END (BP_SYM (memcpy))
libc_hidden_builtin_def (memcpy)
diff --git a/libc/sysdeps/ieee754/ldbl-128/e_lgammal_r.c b/libc/sysdeps/ieee754/ldbl-128/e_lgammal_r.c
index b9302974c..d08044847 100644
--- a/libc/sysdeps/ieee754/ldbl-128/e_lgammal_r.c
+++ b/libc/sysdeps/ieee754/ldbl-128/e_lgammal_r.c
@@ -772,6 +772,12 @@ __ieee754_lgammal_r (x, signgamp)
if (! __finitel (x))
return x * x;
+ if (x == 0.0L)
+ {
+ if (__signbitl (x))
+ *signgamp = -1;
+ }
+
if (x < 0.0L)
{
q = -x;
diff --git a/libc/sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.S b/libc/sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.S
new file mode 100644
index 000000000..6aef4e301
--- /dev/null
+++ b/libc/sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.S
@@ -0,0 +1,119 @@
+/* sqrt function. PowerPC32 version.
+ Copyright (C) 2007 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., 1 Franklin Street, Fifth Floor, Boston MA
+ 02110-1301 USA. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+/* double [fp1] sqrt (double x [fp1])
+ Power4 (ISA V2.0) and above implement sqrt in hardware (not optional).
+ The fsqrt instruction generates the correct value for all inputs and
+ sets the appropriate floating point exceptions. Extented checking is
+ only needed to set errno (via __kernel_standard) if the input value
+ is negative.
+
+ The fsqrt will set FPCC and FU (Floating Point Unordered or NaN
+ to indicated that the input value was negative or NaN. Use Move to
+ Condition Register from FPSCR to copy the FPCC field to cr1. The
+ branch on summary overflow transfers control to w_sqrt to process
+ any error conditions. Otherwise we can return the result directly.
+
+ This part of the function is a leaf routine, so no need to stack a
+ frame or execute prologue/epilogue code. This means it is safe to
+ transfer directly to w_sqrt as long as the input value (f1) is
+ preserved. Putting the the sqrt result into f2 (double parameter 2)
+ allows passing both the input value and sqrt result into the extended
+ wrapper so there is no need to recompute.
+
+ This tactic avoids the overhead of stacking a frame for the normal
+ (non-error) case. Until gcc supports prologue shrink-wrapping
+ this is the best we can do. */
+
+ .section ".text"
+ .machine power4
+EALIGN (__sqrt, 5, 0)
+ fsqrt fp2,fp1
+ mcrfs cr1,4
+ bso- cr1,.Lw_sqrt
+ fmr fp1,fp2
+ blr
+ .align 4
+.Lw_sqrt:
+ mflr r0
+ stwu r1,-16(r1)
+ cfi_adjust_cfa_offset(16)
+ fmr fp12,fp2
+ stw r0,20(r1)
+ stw r30,8(r1)
+ cfi_offset(lr,20)
+ cfi_offset(r30,8)
+#ifdef SHARED
+# ifdef HAVE_ASM_PPC_REL16
+ bcl 20,31,.LCF1
+.LCF1:
+ mflr r30
+ addis r30,r30,_GLOBAL_OFFSET_TABLE_-.LCF1@ha
+ addi r30,r30,_GLOBAL_OFFSET_TABLE_-.LCF1@l
+ lwz r9,_LIB_VERSION@got(30)
+ lwz r0,0(r9)
+# else
+ bl _GLOBAL_OFFSET_TABLE_@local-4
+ mflr r30
+ lwz r9,_LIB_VERSION@got(30)
+ lwz r0,0(r9)
+# endif
+#else
+ lis r9,_LIB_VERSION@ha
+ lwz r0,_LIB_VERSION@l(r9)
+#endif
+/* if (_LIB_VERSION == _IEEE_) return z; */
+ cmpwi cr7,r0,-1
+ beq- cr7,.L4
+/* if (x != x) return z; !isnan*/
+ fcmpu cr7,fp1,fp1
+ bne- cr7,.L4
+/* if (x < 0.0)
+ return __kernel_standard (x, x, 26) */
+ fmr fp2,fp1
+ fabs fp0,fp1
+ li r3,26
+ fcmpu cr7,fp1,fp0
+ bne- cr7,.L11
+.L4:
+ lwz r0,20(r1)
+ fmr fp1,fp12
+ lwz r30,8(r1)
+ addi r1,r1,16
+ mtlr r0
+ blr
+.L11:
+ bl __kernel_standard@plt
+ fmr fp12,fp1
+ b .L4
+ END (__sqrt)
+
+weak_alias (__sqrt, sqrt)
+
+#ifdef NO_LONG_DOUBLE
+weak_alias (__sqrt, sqrtl)
+strong_alias (__sqrt, __sqrtl)
+#endif
+#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0)
+compat_symbol (libm, __sqrt, sqrtl, GLIBC_2_0)
+#endif
+
diff --git a/libc/sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.c b/libc/sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.c
deleted file mode 100644
index f59c19393..000000000
--- a/libc/sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.c
+++ /dev/null
@@ -1,62 +0,0 @@
-/* Double-precision floating point square root wrapper.
- Copyright (C) 2004, 2007 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. */
-
-#include <math_ldbl_opt.h>
-#include "math.h"
-#include "math_private.h"
-#include <fenv_libc.h>
-
-#ifdef __STDC__
-double
-__sqrt (double x) /* wrapper sqrt */
-#else
-double
-__sqrt (x) /* wrapper sqrt */
- double x;
-#endif
-{
- double z;
-/* Power4 (ISA V2.0) and above implement sqrt in hardware. */
- __asm __volatile (
- " fsqrt %0,%1\n"
- : "=f" (z)
- : "f" (x));
-#ifdef _IEEE_LIBM
- return z;
-#else
- if (__builtin_expect (_LIB_VERSION == _IEEE_, 0))
- return z;
-
- if (__builtin_expect (x != x, 0))
- return z;
-
- if (__builtin_expect (x < 0.0, 0))
- return __kernel_standard (x, x, 26); /* sqrt(negative) */
- else
- return z;
-#endif
-}
-
-weak_alias (__sqrt, sqrt)
-#ifdef NO_LONG_DOUBLE
- strong_alias (__sqrt, __sqrtl) weak_alias (__sqrt, sqrtl)
-#endif
-#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0)
-compat_symbol (libm, __sqrt, sqrtl, GLIBC_2_0);
-#endif
diff --git a/libc/sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf.S b/libc/sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf.S
new file mode 100644
index 000000000..e5b8b9d56
--- /dev/null
+++ b/libc/sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf.S
@@ -0,0 +1,111 @@
+/* sqrtf function. PowerPC32 version.
+ Copyright (C) 2007 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., 1 Franklin Street, Fifth Floor, Boston MA
+ 02110-1301 USA. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+/* float [fp1] sqrts (float x [fp1])
+ Power4 (ISA V2.0) and above implement sqrt in hardware (not optional).
+ The fsqrts instruction generates the correct value for all inputs and
+ sets the appropriate floating point exceptions. Extented checking is
+ only needed to set errno (via __kernel_standard) if the input value
+ is negative.
+
+ The fsqrts will set FPCC and FU (Floating Point Unordered or NaN
+ to indicated that the input value was negative or NaN. Use Move to
+ Condition Register from FPSCR to copy the FPCC field to cr1. The
+ branch on summary overflow transfers control to w_sqrt to process
+ any error conditions. Otherwise we can return the result directly.
+
+ This part of the function is a leaf routine, so no need to stack a
+ frame or execute prologue/epilogue code. This means it is safe to
+ transfer directly to w_sqrt as long as the input value (f1) is
+ preserved. Putting the the sqrt result into f2 (float parameter 2)
+ allows passing both the input value and sqrt result into the extended
+ wrapper so there is no need to recompute.
+
+ This tactic avoids the overhead of stacking a frame for the normal
+ (non-error) case. Until gcc supports prologue shrink-wrapping
+ this is the best we can do. */
+
+ .section ".text"
+ .machine power4
+EALIGN (__sqrtf, 5, 0)
+ fsqrts fp2,fp1
+ mcrfs cr1,4
+ bso- cr1,.Lw_sqrtf
+ fmr fp1,fp2
+ blr
+ .align 4
+.Lw_sqrtf:
+ mflr r0
+ stwu r1,-16(r1)
+ cfi_adjust_cfa_offset(16)
+ fmr fp12,fp2
+ stw r0,20(r1)
+ stw r30,8(r1)
+ cfi_offset(lr,20)
+ cfi_offset(r30,8)
+#ifdef SHARED
+# ifdef HAVE_ASM_PPC_REL16
+ bcl 20,31,.LCF1
+.LCF1:
+ mflr r30
+ addis r30,r30,_GLOBAL_OFFSET_TABLE_-.LCF1@ha
+ addi r30,r30,_GLOBAL_OFFSET_TABLE_-.LCF1@l
+ lwz r9,_LIB_VERSION@got(30)
+ lwz r0,0(r9)
+# else
+ bl _GLOBAL_OFFSET_TABLE_@local-4
+ mflr r30
+ lwz r9,_LIB_VERSION@got(30)
+ lwz r0,0(r9)
+# endif
+#else
+ lis r9,_LIB_VERSION@ha
+ lwz r0,_LIB_VERSION@l(r9)
+#endif
+/* if (_LIB_VERSION == _IEEE_) return z; */
+ cmpwi cr7,r0,-1
+ beq- cr7,.L4
+/* if (x != x, 0) return z; !isnan */
+ fcmpu cr7,fp1,fp1
+ bne- cr7,.L4
+/* if (x < 0.0)
+ return __kernel_standard (x, x, 126) */
+ fmr fp2,fp1
+ fabs fp0,fp1
+ li r3,126
+ fcmpu cr7,1,0
+ bne- cr7,.L11
+.L4:
+ lwz r0,20(r1)
+ fmr fp1,fp12
+ lwz r30,8(r1)
+ addi r1,r1,16
+ mtlr r0
+ blr
+.L11:
+ bl __kernel_standard@plt
+ fmr fp12,fp1
+ b .L4
+ END (__sqrtf)
+
+weak_alias (__sqrtf, sqrtf)
+
diff --git a/libc/sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf.c b/libc/sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf.c
deleted file mode 100644
index 4784869f0..000000000
--- a/libc/sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf.c
+++ /dev/null
@@ -1,60 +0,0 @@
-/* Single-precision floating point square root wrapper.
- Copyright (C) 2004, 2007 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. */
-
-#include "math.h"
-#include "math_private.h"
-#include <fenv_libc.h>
-
-#include <sysdep.h>
-#include <ldsodefs.h>
-
-#ifdef __STDC__
-float
-__sqrtf (float x) /* wrapper sqrtf */
-#else
-float
-__sqrtf (x) /* wrapper sqrtf */
- float x;
-#endif
-{
-#ifdef _IEEE_LIBM
- return __ieee754_sqrtf (x);
-#else
- float z;
-/* Power4 (ISA V2.0) and above implement sqrtf in hardware. */
- __asm __volatile (
- " fsqrts %0,%1\n"
- : "=f" (z)
- : "f" (x));
-
- if (__builtin_expect (_LIB_VERSION == _IEEE_, 0))
- return z;
-
- if (__builtin_expect (x != x, 0))
- return z;
-
- if (__builtin_expect (x < 0.0, 0))
- /* sqrtf(negative) */
- return (float) __kernel_standard ((double) x, (double) x, 126);
- else
- return z;
-#endif
-}
-
-weak_alias (__sqrtf, sqrtf)
diff --git a/libc/sysdeps/powerpc/powerpc32/power5/fpu/s_isnan.S b/libc/sysdeps/powerpc/powerpc32/power5/fpu/s_isnan.S
new file mode 100644
index 000000000..91337483d
--- /dev/null
+++ b/libc/sysdeps/powerpc/powerpc32/power5/fpu/s_isnan.S
@@ -0,0 +1,62 @@
+/* isnan(). PowerPC32 version.
+ 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. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+/* int __isnan(x) */
+ .machine power5
+EALIGN (__isnan, 4, 0)
+ stwu r1,-32(r1)
+ cfi_adjust_cfa_offset (32)
+ ori r1,r1,0
+ stfd fp1,24(r1) /* copy FPR to GPR */
+ ori r1,r1,0
+ lwz r4,24(r1)
+ lwz r5,28(r1)
+ lis r0,0x7ff0 /* const long r0 0x7ff00000 00000000 */
+ clrlwi r4,r4,1 /* x = fabs(x) */
+ cmpw cr7,r4,r0 /* if (fabs(x) =< inf) */
+ cmpwi cr6,r5,0
+ li r3,0 /* then return 0 */
+ addi r1,r1,32
+ cfi_adjust_cfa_offset (-32)
+ bltlr+ cr7
+ bgt- cr7,L(NaN)
+ beqlr+ cr6
+L(NaN):
+ li r3,1 /* else return 1 */
+ blr
+ END (__isnan)
+
+hidden_def (__isnan)
+weak_alias (__isnan, isnan)
+
+#ifdef NO_LONG_DOUBLE
+strong_alias (__isnan, __isnanl)
+weak_alias (__isnan, isnanl)
+#endif
+
+#ifndef IS_IN_libm
+# if LONG_DOUBLE_COMPAT(libc, GLIBC_2_0)
+compat_symbol (libc, __isnan, __isnanl, GLIBC_2_0);
+compat_symbol (libc, isnan, isnanl, GLIBC_2_0);
+# endif
+#endif
+
diff --git a/libc/sysdeps/powerpc/powerpc32/power5/fpu/s_isnanf.S b/libc/sysdeps/powerpc/powerpc32/power5/fpu/s_isnanf.S
new file mode 100644
index 000000000..9b1e95f35
--- /dev/null
+++ b/libc/sysdeps/powerpc/powerpc32/power5/fpu/s_isnanf.S
@@ -0,0 +1,46 @@
+/* isnan(). PowerPC32 version.
+ 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. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+/* int __isnanf(x) */
+ .machine power5
+EALIGN (__isnanf, 4, 0)
+ stwu r1,-32(r1)
+ cfi_adjust_cfa_offset (32)
+ stfs fp1,28(r1) /* copy FPR to GPR */
+ nop
+ nop
+ lwz r4,28(r1)
+ lis r0,0x7f80 /* const long r0 0x7f800000 */
+ clrlwi r4,r4,1 /* x = fabs(x) */
+ cmpw cr7,r4,r0 /* if (fabs(x) =< inf) */
+ li r3,0 /* then return 0 */
+ addi r1,r1,32
+ cfi_adjust_cfa_offset (-32)
+ blelr+ cr7
+L(NaN):
+ li r3,1 /* else return 1 */
+ blr
+ END (__isnanf)
+
+hidden_def (__isnanf)
+weak_alias (__isnanf, isnanf)
+
diff --git a/libc/sysdeps/powerpc/powerpc32/power5/fpu/w_sqrt.S b/libc/sysdeps/powerpc/powerpc32/power5/fpu/w_sqrt.S
new file mode 100644
index 000000000..925930bf7
--- /dev/null
+++ b/libc/sysdeps/powerpc/powerpc32/power5/fpu/w_sqrt.S
@@ -0,0 +1,117 @@
+/* sqrt function. PowerPC32 version.
+ Copyright (C) 2007 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., 1 Franklin Street, Fifth Floor, Boston MA
+ 02110-1301 USA. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+/* double [fp1] sqrt (double x [fp1])
+ Power4 (ISA V2.0) and above implement sqrt in hardware (not optional).
+ The fsqrt instruction generates the correct value for all inputs and
+ sets the appropriate floating point exceptions. Extented checking is
+ only needed to set errno (via __kernel_standard) if the input value
+ is negative.
+
+ So compare the input value against the absolute value of itself.
+ This will compare equal unless the value is negative (EDOM) or a NAN,
+ in which case we branch to the extend wrapper. If equal we can return
+ the result directly.
+
+ This part of the function looks like a leaf routine, so no need to
+ stack a frame or execute prologue/epilogue code. It is safe to
+ branch directly to w_sqrt as long as the input value (f1) is
+ preserved. Putting the the sqrt result into f2 (float parameter 2)
+ allows passing both the input value and sqrt result into the extended
+ wrapper so there is no need to recompute.
+
+ This tactic avoids the overhead of stacking a frame for the normal
+ (non-error) case. Until gcc supports prologue shrink-wrapping
+ this is the best we can do. */
+
+ .section ".text"
+ .machine power4
+EALIGN (__sqrt, 5, 0)
+ fabs fp0,fp1
+ fsqrt fp2,fp1
+ fcmpu cr1,fp0,fp1
+ bne- cr1,.Lw_sqrt
+ fmr fp1,fp2
+ blr
+ .align 4
+.Lw_sqrt:
+ mflr r0
+ stwu r1,-16(r1)
+ cfi_adjust_cfa_offset(16)
+ fmr fp12,fp2
+ stw r0,20(r1)
+ stw r30,8(r1)
+ cfi_offset(lr,20)
+ cfi_offset(r30,8)
+#ifdef SHARED
+# ifdef HAVE_ASM_PPC_REL16
+ bcl 20,31,.LCF1
+.LCF1:
+ mflr r30
+ addis r30,r30,_GLOBAL_OFFSET_TABLE_-.LCF1@ha
+ addi r30,r30,_GLOBAL_OFFSET_TABLE_-.LCF1@l
+ lwz r9,_LIB_VERSION@got(30)
+ lwz r0,0(r9)
+# else
+ bl _GLOBAL_OFFSET_TABLE_@local-4
+ mflr r30
+ lwz r9,_LIB_VERSION@got(30)
+ lwz r0,0(r9)
+# endif
+#else
+ lis r9,_LIB_VERSION@ha
+ lwz r0,_LIB_VERSION@l(r9)
+#endif
+/* if (_LIB_VERSION == _IEEE_) return z; */
+ cmpwi cr7,r0,-1
+ beq- cr7,.L4
+/* if (x != x) return z; !isnan*/
+ fcmpu cr7,fp1,fp1
+ bne- cr7,.L4
+/* if (x < 0.0)
+ return __kernel_standard (x, x, 26) */
+ fmr fp2,fp1
+ li r3,26
+ bne- cr1,.L11
+.L4:
+ lwz r0,20(r1)
+ fmr fp1,fp12
+ lwz r30,8(r1)
+ addi r1,r1,16
+ mtlr r0
+ blr
+.L11:
+ bl __kernel_standard@plt
+ fmr fp12,fp1
+ b .L4
+ END (__sqrt)
+
+weak_alias (__sqrt, sqrt)
+
+#ifdef NO_LONG_DOUBLE
+weak_alias (__sqrt, sqrtl)
+strong_alias (__sqrt, __sqrtl)
+#endif
+#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0)
+compat_symbol (libm, __sqrt, sqrtl, GLIBC_2_0)
+#endif
+
diff --git a/libc/sysdeps/powerpc/powerpc32/power5/fpu/w_sqrtf.S b/libc/sysdeps/powerpc/powerpc32/power5/fpu/w_sqrtf.S
new file mode 100644
index 000000000..891e69c9c
--- /dev/null
+++ b/libc/sysdeps/powerpc/powerpc32/power5/fpu/w_sqrtf.S
@@ -0,0 +1,109 @@
+/* sqrtf function. PowerPC32 version.
+ Copyright (C) 2007 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., 1 Franklin Street, Fifth Floor, Boston MA
+ 02110-1301 USA. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+/* float [fp1] sqrts (float x [fp1])
+ Power4 (ISA V2.0) and above implement sqrt in hardware (not optional).
+ The fsqrts instruction generates the correct value for all inputs and
+ sets the appropriate floating point exceptions. Extented checking is
+ only needed to set errno (via __kernel_standard) if the input value
+ is negative.
+
+ So compare the input value against the absolute value of itself.
+ This will compare equal unless the value is negative (EDOM) or a NAN,
+ in which case we branch to the extend wrapper. If equal we can return
+ the result directly.
+
+ This part of the function looks like a leaf routine, so no need to
+ stack a frame or execute prologue/epilogue code. It is safe to
+ branch directly to w_sqrt as long as the input value (f1) is
+ preserved. Putting the the sqrt result into f2 (float parameter 2)
+ allows passing both the input value and sqrt result into the extended
+ wrapper so there is no need to recompute.
+
+ This tactic avoids the overhead of stacking a frame for the normal
+ (non-error) case. Until gcc supports prologue shrink-wrapping
+ this is the best we can do. */
+
+ .section ".text"
+ .machine power4
+EALIGN (__sqrtf, 5, 0)
+ fabs fp0,fp1
+ fsqrts fp2,fp1
+ fcmpu cr1,fp0,fp1
+ bne- cr1,.Lw_sqrtf
+ fmr fp1,fp2
+ blr
+ .align 4
+.Lw_sqrtf:
+ mflr r0
+ stwu r1,-16(r1)
+ cfi_adjust_cfa_offset(16)
+ fmr fp12,fp2
+ stw r0,20(r1)
+ stw r30,8(r1)
+ cfi_offset(lr,20)
+ cfi_offset(r30,8)
+#ifdef SHARED
+# ifdef HAVE_ASM_PPC_REL16
+ bcl 20,31,.LCF1
+.LCF1:
+ mflr r30
+ addis r30,r30,_GLOBAL_OFFSET_TABLE_-.LCF1@ha
+ addi r30,r30,_GLOBAL_OFFSET_TABLE_-.LCF1@l
+ lwz r9,_LIB_VERSION@got(30)
+ lwz r0,0(r9)
+# else
+ bl _GLOBAL_OFFSET_TABLE_@local-4
+ mflr r30
+ lwz r9,_LIB_VERSION@got(30)
+ lwz r0,0(r9)
+# endif
+#else
+ lis r9,_LIB_VERSION@ha
+ lwz r0,_LIB_VERSION@l(r9)
+#endif
+/* if (_LIB_VERSION == _IEEE_) return z; */
+ cmpwi cr7,r0,-1
+ beq- cr7,.L4
+/* if (x != x, 0) return z; !isnan */
+ fcmpu cr7,fp1,fp1
+ bne- cr7,.L4
+/* if (x < 0.0)
+ return __kernel_standard (x, x, 126) */
+ fmr fp2,fp1
+ li r3,126
+ bne- cr1,.L11
+.L4:
+ lwz r0,20(r1)
+ fmr fp1,fp12
+ lwz r30,8(r1)
+ addi r1,r1,16
+ mtlr r0
+ blr
+.L11:
+ bl __kernel_standard@plt
+ fmr fp12,fp1
+ b .L4
+ END (__sqrtf)
+
+weak_alias (__sqrtf, sqrtf)
+
diff --git a/libc/sysdeps/powerpc/powerpc32/power6/fpu/s_isnan.S b/libc/sysdeps/powerpc/powerpc32/power6/fpu/s_isnan.S
new file mode 100644
index 000000000..dbaaf1c1a
--- /dev/null
+++ b/libc/sysdeps/powerpc/powerpc32/power6/fpu/s_isnan.S
@@ -0,0 +1,62 @@
+/* isnan(). PowerPC32 version.
+ 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. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+/* int __isnan(x) */
+ .machine power6
+EALIGN (__isnan, 4, 0)
+ stwu r1,-32(r1)
+ cfi_adjust_cfa_offset (32)
+ ori r1,r1,0
+ stfd fp1,24(r1) /* copy FPR to GPR */
+ ori r1,r1,0
+ lwz r4,24(r1)
+ lwz r5,28(r1)
+ lis r0,0x7ff0 /* const long r0 0x7ff00000 00000000 */
+ clrlwi r4,r4,1 /* x = fabs(x) */
+ cmpw cr7,r4,r0 /* if (fabs(x) =< inf) */
+ cmpwi cr6,r5,0
+ li r3,0 /* then return 0 */
+ addi r1,r1,32
+ cfi_adjust_cfa_offset (-32)
+ bltlr+ cr7
+ bgt- cr7,L(NaN)
+ beqlr+ cr6
+L(NaN):
+ li r3,1 /* else return 1 */
+ blr
+ END (__isnan)
+
+hidden_def (__isnan)
+weak_alias (__isnan, isnan)
+
+#ifdef NO_LONG_DOUBLE
+strong_alias (__isnan, __isnanl)
+weak_alias (__isnan, isnanl)
+#endif
+
+#ifndef IS_IN_libm
+# if LONG_DOUBLE_COMPAT(libc, GLIBC_2_0)
+compat_symbol (libc, __isnan, __isnanl, GLIBC_2_0);
+compat_symbol (libc, isnan, isnanl, GLIBC_2_0);
+# endif
+#endif
+
diff --git a/libc/sysdeps/powerpc/powerpc32/power6/fpu/s_isnanf.S b/libc/sysdeps/powerpc/powerpc32/power6/fpu/s_isnanf.S
new file mode 100644
index 000000000..12bf473a8
--- /dev/null
+++ b/libc/sysdeps/powerpc/powerpc32/power6/fpu/s_isnanf.S
@@ -0,0 +1,46 @@
+/* isnanf(). PowerPC32 version.
+ 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. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+/* int __isnanf(x) */
+ .machine power6
+EALIGN (__isnanf, 4, 0)
+ stwu r1,-32(r1)
+ cfi_adjust_cfa_offset (32)
+ ori r1,r1,0
+ stfs fp1,24(r1) /* copy FPR to GPR */
+ ori r1,r1,0
+ lwz r4,24(r1)
+ lis r0,0x7f80 /* const long r0 0x7f800000 */
+ clrlwi r4,r4,1 /* x = fabs(x) */
+ cmpw cr7,r4,r0 /* if (fabs(x) =< inf) */
+ li r3,0 /* then return 0 */
+ addi r1,r1,32
+ cfi_adjust_cfa_offset (-32)
+ blelr+ cr7
+L(NaN):
+ li r3,1 /* else return 1 */
+ blr
+ END (__isnan)
+
+hidden_def (__isnanf)
+weak_alias (__isnanf, isnanf)
+
diff --git a/libc/sysdeps/powerpc/powerpc64/power5/fpu/s_isnan.S b/libc/sysdeps/powerpc/powerpc64/power5/fpu/s_isnan.S
new file mode 100644
index 000000000..d46d049d4
--- /dev/null
+++ b/libc/sysdeps/powerpc/powerpc64/power5/fpu/s_isnan.S
@@ -0,0 +1,61 @@
+/* isnan(). PowerPC64 version.
+ 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. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+/* int __isnan(x) */
+ .machine power5
+EALIGN (__isnan, 4, 0)
+ CALL_MCOUNT 0
+ stfd fp1,-8(r1) /* copy FPR to GPR */
+ lis r0,0x7ff0
+ nop /* insure the following is in a different */
+ nop /* dispatch group */
+ ld r4,-8(r1)
+ sldi r0,r0,32 /* const long r0 0x7ff00000 00000000 */
+ clrldi r4,r4,1 /* x = fabs(x) */
+ cmpd cr7,r4,r0 /* if (fabs(x) <= inf) */
+ li r3,0 /* then return 0 */
+ blelr+ cr7
+ li r3,1 /* else return 1 */
+ blr
+ END (__isnan)
+
+hidden_def (__isnan)
+weak_alias (__isnan, isnan)
+
+/* It turns out that the 'double' version will also always work for
+ single-precision. */
+strong_alias (__isnan, __isnanf)
+hidden_def (__isnanf)
+weak_alias (__isnanf, isnanf)
+
+#ifdef NO_LONG_DOUBLE
+strong_alias (__isnan, __isnanl)
+weak_alias (__isnan, isnanl)
+#endif
+
+#ifndef IS_IN_libm
+# if LONG_DOUBLE_COMPAT(libc, GLIBC_2_0)
+compat_symbol (libc, __isnan, __isnanl, GLIBC_2_0);
+compat_symbol (libc, isnan, isnanl, GLIBC_2_0);
+# endif
+#endif
+
diff --git a/libc/sysdeps/powerpc/powerpc64/power6/fpu/s_isnan.S b/libc/sysdeps/powerpc/powerpc64/power6/fpu/s_isnan.S
new file mode 100644
index 000000000..fe0c56ca8
--- /dev/null
+++ b/libc/sysdeps/powerpc/powerpc64/power6/fpu/s_isnan.S
@@ -0,0 +1,60 @@
+/* isnan(). PowerPC64 version.
+ 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. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+/* int __isnan(x) */
+ .machine power6
+EALIGN (__isnan, 4, 0)
+ CALL_MCOUNT 0
+ stfd fp1,-8(r1) /* copy FPR to GPR */
+ ori r1,r1,0
+ ld r4,-8(r1)
+ lis r0,0x7ff0
+ sldi r0,r0,32 /* const long r0 0x7ff00000 00000000 */
+ clrldi r4,r4,1 /* x = fabs(x) */
+ cmpd cr7,r4,r0 /* if (fabs(x) <= inf) */
+ li r3,0 /* then return 0 */
+ blelr+ cr7
+ li r3,1 /* else return 1 */
+ blr
+ END (__isnan)
+
+hidden_def (__isnan)
+weak_alias (__isnan, isnan)
+
+/* It turns out that the 'double' version will also always work for
+ single-precision. */
+strong_alias (__isnan, __isnanf)
+hidden_def (__isnanf)
+weak_alias (__isnanf, isnanf)
+
+#ifdef NO_LONG_DOUBLE
+strong_alias (__isnan, __isnanl)
+weak_alias (__isnan, isnanl)
+#endif
+
+#ifndef IS_IN_libm
+# if LONG_DOUBLE_COMPAT(libc, GLIBC_2_0)
+compat_symbol (libc, __isnan, __isnanl, GLIBC_2_0);
+compat_symbol (libc, isnan, isnanl, GLIBC_2_0);
+# endif
+#endif
+
diff --git a/libc/sysdeps/powerpc/powerpc64/power6x/fpu/s_isnan.S b/libc/sysdeps/powerpc/powerpc64/power6x/fpu/s_isnan.S
new file mode 100644
index 000000000..47dd49a75
--- /dev/null
+++ b/libc/sysdeps/powerpc/powerpc64/power6x/fpu/s_isnan.S
@@ -0,0 +1,59 @@
+/* isnan(). PowerPC64 version.
+ 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. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+/* int __isnan(x) */
+ .machine power6
+EALIGN (__isnan, 4, 0)
+ CALL_MCOUNT 0
+ mftgpr r4,fp1 /* copy FPR to GPR */
+ lis r0,0x7ff0
+ ori r1,r1,0
+ clrldi r4,r4,1 /* x = fabs(x) */
+ sldi r0,r0,32 /* const long r0 0x7ff00000 00000000 */
+ cmpd cr7,r4,r0 /* if (fabs(x) <= inf) */
+ li r3,0 /* then return 0 */
+ blelr+ cr7
+ li r3,1 /* else return 1 */
+ blr
+ END (__isnan)
+
+hidden_def (__isnan)
+weak_alias (__isnan, isnan)
+
+/* It turns out that the 'double' version will also always work for
+ single-precision. */
+strong_alias (__isnan, __isnanf)
+hidden_def (__isnanf)
+weak_alias (__isnanf, isnanf)
+
+#ifdef NO_LONG_DOUBLE
+strong_alias (__isnan, __isnanl)
+weak_alias (__isnan, isnanl)
+#endif
+
+#ifndef IS_IN_libm
+# if LONG_DOUBLE_COMPAT(libc, GLIBC_2_0)
+compat_symbol (libc, __isnan, __isnanl, GLIBC_2_0);
+compat_symbol (libc, isnan, isnanl, GLIBC_2_0);
+# endif
+#endif
+
diff --git a/libc/sysdeps/unix/sysv/linux/i386/vfork.S b/libc/sysdeps/unix/sysv/linux/i386/vfork.S
index eefd4b49c..2494d9bef 100644
--- a/libc/sysdeps/unix/sysv/linux/i386/vfork.S
+++ b/libc/sysdeps/unix/sysv/linux/i386/vfork.S
@@ -1,4 +1,4 @@
-/* Copyright (C) 1999, 2002, 2004, 2005 Free Software Foundation, Inc.
+/* Copyright (C) 1999, 2002, 2004, 2005, 2008 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Andreas Schwab <schwab@gnu.org>.
@@ -34,6 +34,7 @@ ENTRY (__vfork)
/* Pop the return PC value into ECX. */
popl %ecx
cfi_adjust_cfa_offset (-4)
+ cfi_register (%eip, %ecx)
#ifdef SAVE_PID
SAVE_PID
diff --git a/libc/sysdeps/unix/sysv/linux/net/ethernet.h b/libc/sysdeps/unix/sysv/linux/net/ethernet.h
index 7ca8e8348..0242d5899 100644
--- a/libc/sysdeps/unix/sysv/linux/net/ethernet.h
+++ b/libc/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 */
diff --git a/libc/sysdeps/unix/sysv/linux/x86_64/makecontext.c b/libc/sysdeps/unix/sysv/linux/x86_64/makecontext.c
index 5deea7d1b..615dede52 100644
--- a/libc/sysdeps/unix/sysv/linux/x86_64/makecontext.c
+++ b/libc/sysdeps/unix/sysv/linux/x86_64/makecontext.c
@@ -1,5 +1,5 @@
/* Create new context.
- Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2004, 2005, 2008 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Andreas Jaeger <aj@suse.de>, 2002.
@@ -78,31 +78,39 @@ __makecontext (ucontext_t *ucp, void (*func) (void), int argc, ...)
sp[idx_uc_link] = (unsigned long int) ucp->uc_link;
va_start (ap, argc);
- /* Handle arguments. */
+ /* Handle arguments.
+
+ The standard says the parameters must all be int values. This is
+ an historic accident and would be done differently today. For
+ x86-64 all integer values are passed as 64-bit values and
+ therefore extending the API to copy 64-bit values instead of
+ 32-bit ints makes sense. It does not break existing
+ functionality and it does not violate the standard which says
+ that passing non-int values means undefined behavior. */
for (i = 0; i < argc; ++i)
switch (i)
{
case 0:
- ucp->uc_mcontext.gregs [REG_RDI] = va_arg (ap, int);
+ ucp->uc_mcontext.gregs[REG_RDI] = va_arg (ap, long int);
break;
case 1:
- ucp->uc_mcontext.gregs [REG_RSI] = va_arg (ap, int);
+ ucp->uc_mcontext.gregs[REG_RSI] = va_arg (ap, long int);
break;
case 2:
- ucp->uc_mcontext.gregs [REG_RDX] = va_arg (ap, int);
+ ucp->uc_mcontext.gregs[REG_RDX] = va_arg (ap, long int);
break;
case 3:
- ucp->uc_mcontext.gregs [REG_RCX] = va_arg (ap, int);
+ ucp->uc_mcontext.gregs[REG_RCX] = va_arg (ap, long int);
break;
case 4:
- ucp->uc_mcontext.gregs [REG_R8] = va_arg (ap, int);
+ ucp->uc_mcontext.gregs[REG_R8] = va_arg (ap, long int);
break;
case 5:
- ucp->uc_mcontext.gregs [REG_R9] = va_arg (ap, int);
+ ucp->uc_mcontext.gregs[REG_R9] = va_arg (ap, long int);
break;
default:
/* Put value on stack. */
- sp[(i - 5)] = va_arg (ap, int);
+ sp[i - 5] = va_arg (ap, unsigned long int);
break;
}
va_end (ap);
diff --git a/libc/sysdeps/unix/sysv/linux/x86_64/vfork.S b/libc/sysdeps/unix/sysv/linux/x86_64/vfork.S
index 4bad38892..e289656ad 100644
--- a/libc/sysdeps/unix/sysv/linux/x86_64/vfork.S
+++ b/libc/sysdeps/unix/sysv/linux/x86_64/vfork.S
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.
+/* Copyright (C) 2001, 2002, 2004, 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
@@ -31,6 +31,7 @@ ENTRY (__vfork)
is preserved by the syscall and that we're allowed to destroy. */
popq %rdi
cfi_adjust_cfa_offset(-8)
+ cfi_register(%rip, %rdi)
#ifdef SAVE_PID
SAVE_PID
diff --git a/libc/sysdeps/unix/sysv/syscalls.list b/libc/sysdeps/unix/sysv/syscalls.list
index 436d05eb9..f65ed79f7 100644
--- a/libc/sysdeps/unix/sysv/syscalls.list
+++ b/libc/sysdeps/unix/sysv/syscalls.list
@@ -11,6 +11,6 @@ settimeofday - settimeofday i:PP __settimeofday settimeofday
signal - signal i:ii signal
stime - stime i:p stime
time - time Ei:P time
-times - times i:p __times times
+times - times Ei:p __times times
ulimit - ulimit i:ii ulimit
utime - utime i:sP utime
diff --git a/ports/ChangeLog.hppa b/ports/ChangeLog.hppa
index abe017e92..d46a0e0eb 100644
--- a/ports/ChangeLog.hppa
+++ b/ports/ChangeLog.hppa
@@ -1,3 +1,9 @@
+2008-04-04 Carlos O'Donell <carlos@codesourcery.com>
+
+ * sysdeps/unix/sysv/linux/hppa/bits/atomic.h: Remove
+ memory contraint and instead indicate that *mem is
+ written to.
+
2008-03-24 Carlos O'Donell <carlos@codesourcery.com>
* sysdeps/unix/sysv/linux/hppa/sys/user.h: New file.
diff --git a/ports/ChangeLog.mips b/ports/ChangeLog.mips
index a7a219e49..cbc72efa8 100644
--- a/ports/ChangeLog.mips
+++ b/ports/ChangeLog.mips
@@ -1,3 +1,11 @@
+2008-04-02 Aurelien Jarno <aurelien@aurel32.net>
+
+ * sysdeps/unix/sysv/linux/mips/mips64/n32/syscalls.list: Add
+ truncate and ftruncate systems calls.
+ * sysdeps/unix/sysv/linux/mips/mips64/n32/ftruncate64.c: Make an
+ empty file.
+ * sysdeps/unix/sysv/linux/mips/mips64/n32/truncate64.c: Ditto.
+
2008-03-28 Joseph Myers <joseph@codesourcery.com>
* sysdeps/unix/sysv/linux/mips/nptl/bits/local_lim.h: Undefine
diff --git a/ports/sysdeps/unix/sysv/linux/hppa/bits/atomic.h b/ports/sysdeps/unix/sysv/linux/hppa/bits/atomic.h
index 92a309d59..b8959f7b6 100644
--- a/ports/sysdeps/unix/sysv/linux/hppa/bits/atomic.h
+++ b/ports/sysdeps/unix/sysv/linux/hppa/bits/atomic.h
@@ -55,7 +55,7 @@ typedef uintmax_t uatomic_max_t;
#define LWS "0xb0"
#define LWS_CAS "0"
/* Note r31 is the link register */
-#define LWS_CLOBBER "r1", "r26", "r25", "r24", "r23", "r22", "r21", "r20", "r28", "r31", "memory"
+#define LWS_CLOBBER "r1", "r26", "r25", "r24", "r23", "r22", "r21", "r20", "r28", "r31"
#define ASM_EAGAIN "11"
#if __ASSUME_LWS_CAS
@@ -76,7 +76,7 @@ typedef uintmax_t uatomic_max_t;
"stw %%r28, %0 \n\t" \
"sub %%r0, %%r21, %%r21 \n\t" \
"stw %%r21, %1 \n\t" \
- : "=m" (lws_ret), "=m" (lws_errno), "=m" (*mem) \
+ : "=m" (lws_ret), "=m" (lws_errno), "+m" (*mem) \
: "r" (mem), "r" (oldval), "r" (newval) \
: LWS_CLOBBER \
); \
diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/ftruncate64.c b/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/ftruncate64.c
index 42efcba31..6e25b021a 100644
--- a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/ftruncate64.c
+++ b/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/ftruncate64.c
@@ -1,28 +1 @@
-/* Copyright (C) 2003 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. */
-
-#include <sys/types.h>
-
-#include <sysdep.h>
-
-extern int ftruncate (int fd, off64_t length);
-
-int __ftruncate64 (int fd, off64_t length) {
- return ftruncate (fd, length);
-}
-weak_alias (__ftruncate64, ftruncate64)
+/* Empty. */
diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/syscalls.list b/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/syscalls.list
index babdba0ca..2e4bed090 100644
--- a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/syscalls.list
+++ b/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/syscalls.list
@@ -3,3 +3,5 @@
readahead - readahead i:iii __readahead readahead
sync_file_range - sync_file_range i:iiii sync_file_range
posix_fadvise - fadvise64 i:iiii posix_fadvise
+ftruncate - ftruncate i:ii __ftruncate ftruncate ftruncate64 __ftruncate64
+truncate - truncate i:si truncate truncate64
diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/truncate64.c b/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/truncate64.c
index 339023f14..6e25b021a 100644
--- a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/truncate64.c
+++ b/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/truncate64.c
@@ -1,30 +1 @@
-/* Copyright (C) 2003 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. */
-
-#include <sys/types.h>
-
-#include <sysdep.h>
-#include <bp-checks.h>
-
-extern int truncate (const char *__unbounded path, int dummy,
- off64_t length);
-
-int truncate64 (const char *__unbounded path, int dummy,
- off64_t length) {
- return truncate (path, dummy, length);
-}
+/* Empty. */