aboutsummaryrefslogtreecommitdiff
path: root/localedata
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1998-02-16 17:42:46 +0000
committerUlrich Drepper <drepper@redhat.com>1998-02-16 17:42:46 +0000
commit880f421fc30003d1626429e8796d43b91d71cab9 (patch)
treedd3aff8b9397dd9177ed24a32d4e6fd2f841ebdd /localedata
parentf565518e7e393419f99457792971ce71215d02cc (diff)
downloadglibc-880f421fc30003d1626429e8796d43b91d71cab9.tar
glibc-880f421fc30003d1626429e8796d43b91d71cab9.tar.gz
glibc-880f421fc30003d1626429e8796d43b91d71cab9.tar.bz2
glibc-880f421fc30003d1626429e8796d43b91d71cab9.zip
Update.
1998-02-16 17:33 Ulrich Drepper <drepper@cygnus.com> * elf/rtld.c (dl_main): Recognize --library-path parameter and pass value (or NULL) to _dl_init_paths. * elf/dl-load.c (_dl_init_paths): Change to take one parameter, replacing local variable llp. If llp is NULL examine LD_LIBRARY_PATH environment variable. * elf/link.h: Change prototype for _dl_init_paths. * elf/dl-support.c: Pass NULL in _dl_init_paths call. * localedata/Makefile (distribute): Add test files. 1998-02-17 Andreas Jaeger <aj@arthur.rhein-neckar.de> * localedata/tests/{test1.cm, test2.cm, test3.cm, test4.cm, test1.def, test2.def, test3.def, test4.def}: Simple input files for localedef. Contributed by Yung-Ching Hsiao <yhsiao@cae.wisc.edu>. * localedata/Makefile (tests): Call tst-locale.sh. * localedata/tst-locale.sh: New file, regression tests for some localedef problems. 1998-02-15 Thorsten Kukuk <kukuk@vt.uni-paderborn.de> * nis/nss_nisplus/nisplus-alias.c: Use __stpncpy. * nis/nss_nisplus/nisplus-hosts.c: Make sure buffer is always NUL terminated. * nis/nss_nisplus/nisplus-network.c: Likewise. * nis/nss_nisplus/nisplus-proto.c: Likewise. * nis/nss_nisplus/nisplus-rpc.c: Likewise. * nis/nss_nisplus/nisplus-service.c: Likewise. Add more changes from TI-RPC 2.3 for rpcgen to fix include/C++ bug and support generating thread safe RPC code. * sunrpc/rpc_main.c: Add changes. * sunrpc/rpc_clntout.c: Likewise. * sunrpc/rpc_cout.c: Likewise. * sunrpc/rpc_hout.c: Likewise. * sunrpc/rpc_parse.c: Likewise. * sunrpc/rpc_sample.c: Likewise. * sunrpc/rpc_scan.c: Likewise. * sunrpc/rpc_svcout.c: Likewise. * sunrpc/rpc_util.c: Likewise. * sunrpc/rpc_util.h: Add new structs and prototypes. * sunrpc/proto.h: Remove prototypes for static functions. 1998-02-15 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * locale/programs/ld-messages.c (messages_finish): Don't skip error checking when being quiet. * locale/programs/ld-ctype.c (ctype_finish): Likewise. (set_class_defaults): Likewise. * locale/programs/charmap.c (parse_charmap): Likewise. * locale/programs/ld-collate.c (collate_finish): Likewise. * locale/programs/ld-monetary.c (monetary_finish): Likewise. * locale/programs/ld-time.c (time_finish): Likewise. * locale/programs/locfile.c (write_locale_data): Likewise. * locale/programs/ld-ctype.c (ctype_class_to): Silently ignore unknown characters and empty ranges. * locale/programs/ld-collate.c (collate_order_elem): When processing an ellipsis properly form a linked list in the result table, fix typo when allocating ordering array. [PR libc/419] 1998-02-13 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/Makefile (ld-map): Define. (rtld-ldscript): Define. Change all `$(objpfx)rtld-ldscript' to `$(rtld-ldscript)'. ($(objpfx)ld.so): Combine the two versions of this rule. Depend on $(ld-map). (rtld-link): Combine the two versions of this definition. Fixed to make it work when no symbol versioning is used. 1998-02-16 Ulrich Drepper <drepper@cygnus.com> * Makeconfig (build-program-cmd): Use --library-path parameter to ld.so instead of environment variable. * sunrpc/Makefile (rpcgen-cmd): Don't use -$ parameter. * sunrpc/rpc_main.c: Remove support for -$$ option again. 1998-02-16 Andreas Jaeger <aj@arthur.rhein-neckar.de> * Make-dist: Respect with-cvs setting. * MakeTAGS (all-pot): Likewise. * sysdeps/sparc/sparc32/Makefile: Likewise. * sysdeps/mach/hurd/Makefile: Likewise. * stdlib/Makefile: Likewise. * posix/Makefile: Likewise. * intl/Makefile: Likewise. * po/Makefile (linguas): Likewise
Diffstat (limited to 'localedata')
-rw-r--r--localedata/Makefile7
-rw-r--r--localedata/locales/tr_TR1049
-rw-r--r--localedata/tests/test1.cm73
-rw-r--r--localedata/tests/test1.def9
-rw-r--r--localedata/tests/test2.cm73
-rw-r--r--localedata/tests/test2.def9
-rw-r--r--localedata/tests/test3.cm73
-rw-r--r--localedata/tests/test3.def9
-rw-r--r--localedata/tests/test4.cm12
-rw-r--r--localedata/tests/test4.def7
-rwxr-xr-xlocaledata/tst-locale.sh51
11 files changed, 1306 insertions, 66 deletions
diff --git a/localedata/Makefile b/localedata/Makefile
index ff3e9f07a0..2d45558eb1 100644
--- a/localedata/Makefile
+++ b/localedata/Makefile
@@ -37,9 +37,13 @@ test-output := $(foreach s, .out .xout, \
generated := $(test-input) $(test-output)
generated-dirs := $(basename $(test-input)) en_US
+test-names := test1 test2 test3 test4
+test-srcs := $(addprefix tests/,$(addsuffix .cm,$(test-names)) \
+ $(addsuffix .def,$(test-names)))
+
distribute := CHECKSUMS tst-fmon.sh tst-fmon.data ChangeLog sort-test.sh \
README mnemonic.ds fr_CA,2.13.in de_DE.in da_DK.in \
- $(charmaps) $(locales)
+ $(charmaps) $(locales) $(test-srcs)
# Get $(inst_i18ndir) defined.
include ../Makeconfig
@@ -58,4 +62,5 @@ ifeq (no,$(cross-compiling))
tests: $(objpfx)collate-test $(objpfx)xfrm-test $(objpfx)tst-fmon
$(SHELL) -e sort-test.sh $(common-objpfx) $(test-input)
$(SHELL) -e tst-fmon.sh $(common-objpfx) tst-fmon.data
+ $(SHELL) -e tst-locale.sh $(common-objpfx)
endif
diff --git a/localedata/locales/tr_TR b/localedata/locales/tr_TR
index db94a83a1b..8de6ea6d4a 100644
--- a/localedata/locales/tr_TR
+++ b/localedata/locales/tr_TR
@@ -20,6 +20,11 @@ escape_char /
% Distribution and use is free, also
% for commercial purposes.
+% Corrections by:
+% 1998-01-11T15:54:39
+% Onur Tolga Sehitoglu <onur@ceng.metu.edu.tr>,
+% Dept. of Comp. Eng. METU/Ankara Turkey
+
LC_COLLATE
% Base collation scheme: 1994-03-22
@@ -34,7 +39,7 @@ LC_COLLATE
% members of equivalence classes
% 3. A distinction is made with regards
% to case as noted below.
-% 4. Special characters are ignored
+% 4. Special characters are ignored
% when comparing letters, but then
% they are considered
% 5. The alphabets are sorted in order
@@ -62,10 +67,10 @@ collating-symbol <SMALL>
% and Spanish <C><h> being treated
% as one letter.
-% The <a8> ...... <z8> collating
+% The <a8> ...... <z8> collating
% symbols have defined weights as
% the last character in a group of
-% Latin letters. They are used
+% Latin letters. They are used
% to specify deltas by locales using
% a locale as the default ordering
% and by "replace-after" statements
@@ -987,7 +992,7 @@ UNDEFINED IGNORE;IGNORE;IGNORE
<a-> <A>;<MACRON>;<SMALL>;IGNORE
<A7> <A>;<MACRON+DOT>;<CAPITAL>;IGNORE
<a7> <A>;<MACRON+DOT>;<SMALL>;IGNORE
-<a8>
+<a8>
<AE> "<A><E>";"<AE><AE>";"<CAPITAL><CAPITAL>";IGNORE
<ae> "<A><E>";"<AE><AE>";"<SMALL><SMALL>";IGNORE
<AE'> "<A><E>";"<AE'><AE'>";"<CAPITAL><CAPITAL>";IGNORE
@@ -1002,7 +1007,7 @@ UNDEFINED IGNORE;IGNORE;IGNORE
<b-.> <B>;<DOT-BELOW>;<SMALL>;IGNORE
<B_> <B>;<LINE-BELOW>;<CAPITAL>;IGNORE
<b_> <B>;<LINE-BELOW>;<SMALL>;IGNORE
-<b8>
+<b8>
<C> <C>;<NONE>;<CAPITAL>;IGNORE
<c> <C>;<NONE>;<SMALL>;IGNORE
<C'> <C>;<ACUTE>;<CAPITAL>;IGNORE
@@ -1017,7 +1022,7 @@ UNDEFINED IGNORE;IGNORE;IGNORE
<c.> <C>;<DOT>;<SMALL>;IGNORE
<C,'> <C>;<CEDILLA+ACUTE>;<CAPITAL>;IGNORE
<c,'> <C>;<CEDILLA+ACUTE>;<SMALL>;IGNORE
-<c8>
+<c8>
<C,> <C,>;<NONE>;<CAPITAL>;IGNORE
<c,> <C,>;<NONE>;<SMALL>;IGNORE
<D> <D>;<NONE>;<CAPITAL>;IGNORE
@@ -1036,7 +1041,7 @@ UNDEFINED IGNORE;IGNORE;IGNORE
<d-/>> <D>;<MACRON+CIRCUMFLEX>;<SMALL>;IGNORE
<D_> <D>;<LINE-BELOW>;<CAPITAL>;IGNORE
<d_> <D>;<LINE-BELOW>;<SMALL>;IGNORE
-<d8>
+<d8>
<E> <E>;<NONE>;<CAPITAL>;IGNORE
<e> <E>;<NONE>;<SMALL>;IGNORE
<E'> <E>;<ACUTE>;<CAPITAL>;IGNORE
@@ -1087,14 +1092,14 @@ UNDEFINED IGNORE;IGNORE;IGNORE
<e-!> <E>;<MACRON+GRAVE>;<SMALL>;IGNORE
<E-/>> <E>;<MACRON+CIRCUMFLEX>;<CAPITAL>;IGNORE
<e-/>> <E>;<MACRON+CIRCUMFLEX>;<SMALL>;IGNORE
-<e8>
+<e8>
<F> <F>;<NONE>;<CAPITAL>;IGNORE
<f> <F>;<NONE>;<SMALL>;IGNORE
<F2> <F>;<HOOK>;<CAPITAL>;IGNORE
<f2> <F>;<HOOK>;<SMALL>;IGNORE
<F.> <F>;<DOT>;<CAPITAL>;IGNORE
<f.> <F>;<DOT>;<SMALL>;IGNORE
-<f8>
+<f8>
<ff> "<F><F>";"<NONE><NONE>";"<ff><ff>";IGNORE
<fi> "<F><I>";"<NONE><NONE>";"<fi><fi>";IGNORE
<fl> "<F><L>";"<NONE><NONE>";"<fl><fl>";IGNORE
@@ -1117,7 +1122,7 @@ UNDEFINED IGNORE;IGNORE;IGNORE
<g,> <G>;<CEDILLA>;<SMALL>;IGNORE
<G-> <G>;<MACRON>;<CAPITAL>;IGNORE
<g-> <G>;<MACRON>;<SMALL>;IGNORE
-<g8>
+<g8>
<G(> <G(>;<NONE>;<CAPITAL>;IGNORE
<g(> <G(>;<NONE>;<SMALL>;IGNORE
<H> <H>;<NONE>;<CAPITAL>;IGNORE
@@ -1136,7 +1141,7 @@ UNDEFINED IGNORE;IGNORE;IGNORE
<h//> <H>;<STROKE>;<SMALL>;IGNORE
<H,> <H>;<CEDILLA>;<CAPITAL>;IGNORE
<h,> <H>;<CEDILLA>;<SMALL>;IGNORE
-<h8>
+<h8>
<I> <i.>;<NONE>;<CAPITAL>;IGNORE
<i.> <i.>;<NONE>;<SMALL>;IGNORE
<I.> <I>;<NONE>;<CAPITAL>;IGNORE
@@ -1171,14 +1176,14 @@ UNDEFINED IGNORE;IGNORE;IGNORE
<i;> <I>;<OGONEK>;<SMALL>;IGNORE
<I-> <I>;<MACRON>;<CAPITAL>;IGNORE
<i-> <I>;<MACRON>;<SMALL>;IGNORE
-<i8>
+<i8>
<IJ> "<I><J>";"<IJ><IJ>";"<CAPITAL><CAPITAL>";IGNORE
<ij> "<I><J>";"<IJ><IJ>";"<SMALL><SMALL>";IGNORE
<J> <J>;<NONE>;<CAPITAL>;IGNORE
<j> <J>;<NONE>;<SMALL>;IGNORE
<J/>> <J>;<CIRCUMFLEX>;<CAPITAL>;IGNORE
<j/>> <J>;<CIRCUMFLEX>;<SMALL>;IGNORE
-<j8>
+<j8>
<K> <K>;<NONE>;<CAPITAL>;IGNORE
<k> <K>;<NONE>;<SMALL>;IGNORE
<K'> <K>;<ACUTE>;<CAPITAL>;IGNORE
@@ -1193,7 +1198,7 @@ UNDEFINED IGNORE;IGNORE;IGNORE
<k,> <K>;<CEDILLA>;<SMALL>;IGNORE
<K_> <K>;<LINE-BELOW>;<CAPITAL>;IGNORE
<k_> <K>;<LINE-BELOW>;<SMALL>;IGNORE
-<k8>
+<k8>
<kk> <K>;<kk>;<SMALL>;IGNORE
<L> <L>;<NONE>;<CAPITAL>;IGNORE
<l> <L>;<NONE>;<SMALL>;IGNORE
@@ -1215,7 +1220,7 @@ UNDEFINED IGNORE;IGNORE;IGNORE
<l-/>> <L>;<MACRON+CIRCUMFLEX>;<SMALL>;IGNORE
<L_> <L>;<LINE-BELOW>;<CAPITAL>;IGNORE
<l_> <L>;<LINE-BELOW>;<SMALL>;IGNORE
-<l8>
+<l8>
<M> <M>;<NONE>;<CAPITAL>;IGNORE
<m> <M>;<NONE>;<SMALL>;IGNORE
<M'> <M>;<ACUTE>;<CAPITAL>;IGNORE
@@ -1224,7 +1229,7 @@ UNDEFINED IGNORE;IGNORE;IGNORE
<m.> <M>;<DOT>;<SMALL>;IGNORE
<M-.> <M>;<DOT-BELOW>;<CAPITAL>;IGNORE
<m-.> <M>;<DOT-BELOW>;<SMALL>;IGNORE
-<m8>
+<m8>
<N> <N>;<NONE>;<CAPITAL>;IGNORE
<n> <N>;<NONE>;<SMALL>;IGNORE
<N'> <N>;<ACUTE>;<CAPITAL>;IGNORE
@@ -1244,7 +1249,7 @@ UNDEFINED IGNORE;IGNORE;IGNORE
<N_> <N>;<LINE-BELOW>;<CAPITAL>;IGNORE
<n_> <N>;<LINE-BELOW>;<SMALL>;IGNORE
<'n> <N>;<PRECEDED-BY-APOSTROPHE>;<SMALL>;IGNORE
-<n8>
+<n8>
<NG> "<N><G>";"<NG><NG>";"<CAPITAL><CAPITAL>";IGNORE
<ng> "<N><G>";"<NG><NG>";"<SMALL><SMALL>";IGNORE
<O> <O>;<NONE>;<CAPITAL>;IGNORE
@@ -1312,7 +1317,7 @@ UNDEFINED IGNORE;IGNORE;IGNORE
<o9?> <O>;<HORN+TILDE>;<SMALL>;IGNORE
<O9-.> <O>;<HORN+DOT-BELOW>;<CAPITAL>;IGNORE
<o9-.> <O>;<HORN+DOT-BELOW>;<SMALL>;IGNORE
-<o8>
+<o8>
<O:> <O:>;<NONE>;<CAPITAL>;IGNORE
<o:> <O:>;<NONE>;<SMALL>;IGNORE
<OE> "<O><E>";"<OE><OE>";"<CAPITAL><CAPITAL>";IGNORE
@@ -1323,10 +1328,10 @@ UNDEFINED IGNORE;IGNORE;IGNORE
<p'> <P>;<ACUTE>;<SMALL>;IGNORE
<P.> <P>;<DOT>;<CAPITAL>;IGNORE
<p.> <P>;<DOT>;<SMALL>;IGNORE
-<p8>
+<p8>
<Q> <Q>;<NONE>;<CAPITAL>;IGNORE
<q> <Q>;<NONE>;<SMALL>;IGNORE
-<q8>
+<q8>
<R> <R>;<NONE>;<CAPITAL>;IGNORE
<r> <R>;<NONE>;<SMALL>;IGNORE
<R'> <R>;<ACUTE>;<CAPITAL>;IGNORE
@@ -1347,7 +1352,7 @@ UNDEFINED IGNORE;IGNORE;IGNORE
<r--.> <R>;<MACRON+DOT-BELOW>;<SMALL>;IGNORE
<R_> <R>;<LINE-BELOW>;<CAPITAL>;IGNORE
<r_> <R>;<LINE-BELOW>;<SMALL>;IGNORE
-<r8>
+<r8>
<S> <S>;<NONE>;<CAPITAL>;IGNORE
<s> <S>;<NONE>;<SMALL>;IGNORE
<st> "<S><T>";"<NONE><NONE>";"<st><st>";IGNORE
@@ -1367,7 +1372,7 @@ UNDEFINED IGNORE;IGNORE;IGNORE
<s-.> <S>;<DOT-BELOW>;<SMALL>;IGNORE
<S.-.> <S>;<DOT+DOT-BELOW>;<CAPITAL>;IGNORE
<s.-.> <S>;<DOT+DOT-BELOW>;<SMALL>;IGNORE
-<s8>
+<s8>
<S,> <S,>;<NONE>;<CAPITAL>;IGNORE
<s,> <S,>;<NONE>;<SMALL>;IGNORE
<s1> <S>;<s1>;<SMALL>;IGNORE
@@ -1388,7 +1393,7 @@ UNDEFINED IGNORE;IGNORE;IGNORE
<t-/>> <T>;<MACRON+CIRCUMFLEX>;<SMALL>;IGNORE
<T_> <T>;<LINE-BELOW>;<CAPITAL>;IGNORE
<t_> <T>;<LINE-BELOW>;<SMALL>;IGNORE
-<t8>
+<t8>
<TH> "<T><H>";"<TH><TH>";"<CAPITAL><CAPITAL>";IGNORE
<th> "<T><H>";"<TH><TH>";"<SMALL><SMALL>";IGNORE
<U> <U>;<NONE>;<CAPITAL>;IGNORE
@@ -1451,7 +1456,7 @@ UNDEFINED IGNORE;IGNORE;IGNORE
<u9?> <U>;<HORN+TILDE>;<SMALL>;IGNORE
<U9-.> <U>;<HORN+DOT-BELOW>;<CAPITAL>;IGNORE
<u9-.> <U>;<HORN+DOT-BELOW>;<SMALL>;IGNORE
-<u8>
+<u8>
<U:> <U:>;<NONE>;<CAPITAL>;IGNORE
<u:> <U:>;<NONE>;<SMALL>;IGNORE
<V> <V>;<NONE>;<CAPITAL>;IGNORE
@@ -1460,7 +1465,7 @@ UNDEFINED IGNORE;IGNORE;IGNORE
<v?> <V>;<TILDE>;<SMALL>;IGNORE
<V-.> <V>;<DOT-BELOW>;<CAPITAL>;IGNORE
<v-.> <V>;<DOT-BELOW>;<SMALL>;IGNORE
-<v8>
+<v8>
<W> <W>;<NONE>;<CAPITAL>;IGNORE
<w> <W>;<NONE>;<SMALL>;IGNORE
<W'> <W>;<ACUTE>;<CAPITAL>;IGNORE
@@ -1475,14 +1480,14 @@ UNDEFINED IGNORE;IGNORE;IGNORE
<w.> <W>;<DOT>;<SMALL>;IGNORE
<W-.> <W>;<DOT-BELOW>;<CAPITAL>;IGNORE
<w-.> <W>;<DOT-BELOW>;<SMALL>;IGNORE
-<w8>
+<w8>
<X> <X>;<NONE>;<CAPITAL>;IGNORE
<x> <X>;<NONE>;<SMALL>;IGNORE
<X:> <X>;<DIAERESIS>;<CAPITAL>;IGNORE
<x:> <X>;<DIAERESIS>;<SMALL>;IGNORE
<X.> <X>;<DOT>;<CAPITAL>;IGNORE
<x.> <X>;<DOT>;<SMALL>;IGNORE
-<x8>
+<x8>
<Y> <Y>;<NONE>;<CAPITAL>;IGNORE
<y> <Y>;<NONE>;<SMALL>;IGNORE
<Y'> <Y>;<ACUTE>;<CAPITAL>;IGNORE
@@ -1501,7 +1506,7 @@ UNDEFINED IGNORE;IGNORE;IGNORE
<y.> <Y>;<DOT>;<SMALL>;IGNORE
<Y-.> <Y>;<DOT-BELOW>;<CAPITAL>;IGNORE
<y-.> <Y>;<DOT-BELOW>;<SMALL>;IGNORE
-<y8>
+<y8>
<Z> <Z>;<NONE>;<CAPITAL>;IGNORE
<z> <Z>;<NONE>;<SMALL>;IGNORE
<Z'> <Z>;<ACUTE>;<CAPITAL>;IGNORE
@@ -1518,7 +1523,7 @@ UNDEFINED IGNORE;IGNORE;IGNORE
<z//> <Z>;<STROKE>;<SMALL>;IGNORE
<Z_> <Z>;<LINE-BELOW>;<CAPITAL>;IGNORE
<z_> <Z>;<LINE-BELOW>;<SMALL>;IGNORE
-<z8>
+<z8>
<A*> <A*>;<CAPITAL>;<GREEK>;IGNORE
<A%> <A*>;<CAPITAL>;<TONOS>;IGNORE
<a*> <A*>;<SMALL>;<GREEK>;IGNORE
@@ -2086,69 +2091,983 @@ order_end
END LC_COLLATE
LC_CTYPE
-copy "en_DK"
+
+digit <0>;<1>;<2>;<3>;<4>;/
+ <5>;<6>;<7>;<8>;<9>
+
+xdigit <0>;<1>;<2>;<3>;<4>;/
+ <5>;<6>;<7>;<8>;<9>;/
+ <A>;<B>;<C>;<D>;<E>;<F>;/
+ <a>;<b>;<c>;<d>;<e>;<f>
+
+blank <SP>;<HT>;<NS>
+
+space <SP>;<LF>;<VT>;<FF>;/
+ <CR>;<HT>;<NS>
+
+upper <A>;<B>;<C>;<D>;<E>;<F>;<G>;/
+ <H>;<I>;<J>;<K>;<L>;<M>;<N>;/
+ <O>;<P>;<Q>;<R>;<S>;<T>;<U>;/
+ <V>;<W>;<X>;<Y>;<Z>;<A!>;<A'>;/
+ <A/>>;<A?>;<A:>;<AA>;<AE>;<C,>;/
+ <E!>;<E'>;<E/>>;<E:>;<I!>;<I'>;/
+ <I/>>;<I:>;<D->;<N?>;<O!>;<O'>;/
+ <O/>>;<O?>;<O:>;<O//>;<U!>;/
+ <U'>;<U/>>;<U:>;<Y'>;<TH>;<A->;/
+ <A(>;<A;>;<C'>;<C/>>;<C.>;<C<>;/
+ <D<>;<D//>;<E->;<E(>;<E.>;<E;>;/
+ <E<>;<G/>>;<G(>;<G.>;<G,>;/
+ <H/>>;<H//>;<I?>;<I->;<I(>;/
+ <I;>;<I.>;<IJ>;<J/>>;<K,>;<L'>;/
+ <L,>;<L<>;<L.>;<L//>;<N'>;<N,>;/
+ <N<>;<NG>;<O->;<O(>;<O">;<OE>;/
+ <R'>;<R,>;<R<>;<S'>;<S/>>;<S,>;/
+ <S<>;<T,>;<T<>;<T//>;<U?>;<U->;/
+ <U(>;<U0>;<U">;<U;>;<W/>>;/
+ <Y/>>;<Y:>;<Z'>;<Z.>;<Z<>;<C2>;/
+ <F2>;<K2>;<O9>;<OI>;<U9>;<Z//>;/
+ <ED>;<A<>;<I<>;<O<>;<U<>;<U:->;/
+ <U:'>;<U:<>;<U:!>;<A1>;<A7>;/
+ <A3>;<G//>;<G<>;<K<>;<O;>;<O1>;/
+ <EZ>;<G'>;<AA'>;<AE'>;<O//'>;/
+ <A!!>;<A)>;<E!!>;<E)>;<I!!>;/
+ <I)>;<O!!>;<O)>;<R!!>;<R)>;/
+ <U!!>;<U)>;<A%>;<E%>;<Y%>;<I%>;/
+ <O%>;<U%>;<W%>;<A*>;<B*>;<G*>;/
+ <D*>;<E*>;<Z*>;<Y*>;<H*>;<I*>;/
+ <K*>;<L*>;<M*>;<N*>;<C*>;<O*>;/
+ <P*>;<R*>;<S*>;<T*>;<U*>;<F*>;/
+ <X*>;<Q*>;<W*>;<J*>;<V*>;<IO>;/
+ <D%>;<G%>;<IE>;<DS>;<II>;<YI>;/
+ <J%>;<LJ>;<NJ>;<Ts>;<KJ>;<V%>;/
+ <DZ>;<A=>;<B=>;<V=>;<G=>;<D=>;/
+ <E=>;<Z%>;<Z=>;<I=>;<J=>;<K=>;/
+ <L=>;<M=>;<N=>;<O=>;<P=>;<R=>;/
+ <S=>;<T=>;<U=>;<F=>;<H=>;<C=>;/
+ <C%>;<S%>;<Sc>;<=">;<Y=>;<%">;/
+ <JE>;<JU>;<JA>;<Y3>;<O3>;<F3>;/
+ <V3>;<C3>;<G3>;<A-0>;<B.>;/
+ <B-.>;<B_>;<C,'>;<D.>;<D-.>;/
+ <D_>;<D,>;<D-/>>;<E-!>;<E-'>;/
+ <E-/>>;<E-?>;<E,(>;<F.>;<G->;/
+ <H.>;<H-.>;<H:>;<H,>;<H-(>;/
+ <I-?>;<I:'>;<K'>;<K-.>;<K_>;/
+ <L-.>;<L--.>;<L_>;<L-/>>;<M'>;/
+ <M.>;<M-.>;<N.>;<N-.>;<N_>;/
+ <N-/>>;<O?'>;<O?:>;<O-!>;<O-'>;/
+ <P'>;<P.>;<R.>;<R-.>;<R--.>;/
+ <R_>;<S.>;<S-.>;<S'.>;<S<.>;/
+ <S.-.>;<T.>;<T-.>;<T_>;<T-/>>;/
+ <U--:>;<U-?>;<U-/>>;<U?'>;/
+ <U-:>;<V?>;<V-.>;<W!>;<W'>;/
+ <W:>;<W.>;<W-.>;<X.>;<X:>;<Y.>;/
+ <Z/>>;<Z-.>;<Z_>;<A-.>;<A2>;/
+ <A/>'>;<A/>!>;<A/>2>;<A/>?>;/
+ <A/>-.>;<A('>;<A(!>;<A(2>;/
+ <A(?>;<A(-.>;<E-.>;<E2>;<E?>;/
+ <E/>'>;<E/>!>;<E/>2>;<E/>?>;/
+ <E/>-.>;<I2>;<I-.>;<O-.>;<O2>;/
+ <O/>'>;<O/>!>;<O/>2>;<O/>?>;/
+ <O/>-.>;<O9'>;<O9!>;<O92>;/
+ <O9?>;<O9-.>;<U-.>;<U2>;<U9'>;/
+ <U9!>;<U92>;<U9?>;<U9-.>;<Y!>;/
+ <Y-.>;<Y2>;<Y?>;<A-o>;<B-o>;/
+ <C-o>;<D-o>;<E-o>;<F-o>;<G-o>;/
+ <H-o>;<I-o>;<J-o>;<K-o>;<L-o>;/
+ <M-o>;<N-o>;<O-o>;<P-o>;<Q-o>;/
+ <R-o>;<S-o>;<T-o>;<U-o>;<V-o>;/
+ <W-o>;<X-o>;<Y-o>;<Z-o>
+
+lower <a>;<b>;<c>;<d>;<e>;<f>;<g>;/
+ <h>;<i>;<j>;<k>;<l>;<m>;<n>;/
+ <o>;<p>;<q>;<r>;<s>;<t>;<u>;/
+ <v>;<w>;<x>;<y>;<z>;<ss>;<a!>;/
+ <a'>;<a/>>;<a?>;<a:>;<aa>;<ae>;/
+ <c,>;<e!>;<e'>;<e/>>;<e:>;<i!>;/
+ <i'>;<i/>>;<i:>;<d->;<n?>;<o!>;/
+ <o'>;<o/>>;<o?>;<o:>;<o//>;/
+ <u!>;<u'>;<u/>>;<u:>;<y'>;<th>;/
+ <y:>;<a->;<a(>;<a;>;<c'>;<c/>>;/
+ <c.>;<c<>;<d<>;<d//>;<e->;<e(>;/
+ <e.>;<e;>;<e<>;<g/>>;<g(>;<g.>;/
+ <g,>;<h/>>;<h//>;<i?>;<i->;/
+ <i(>;<i;>;<i.>;<ij>;<j/>>;<k,>;/
+ <kk>;<l'>;<l,>;<l<>;<l.>;<l//>;/
+ <n'>;<n,>;<n<>;<'n>;<ng>;<o->;/
+ <o(>;<o">;<oe>;<r'>;<r,>;<r<>;/
+ <s'>;<s/>>;<s,>;<s<>;<t,>;<t<>;/
+ <t//>;<u?>;<u->;<u(>;<u0>;<u">;/
+ <u;>;<w/>>;<y/>>;<z'>;<z.>;/
+ <z<>;<s1>;<c2>;<f2>;<k2>;<o9>;/
+ <oi>;<u9>;<z//>;<a<>;<i<>;<o<>;/
+ <u<>;<u:->;<u:'>;<u:<>;<u:!>;/
+ <a1>;<a7>;<a3>;<g//>;<g<>;<k<>;/
+ <o;>;<o1>;<ez>;<g'>;<aa'>;/
+ <ae'>;<o//'>;<a!!>;<a)>;<e!!>;/
+ <e)>;<i!!>;<i)>;<o!!>;<o)>;/
+ <r!!>;<r)>;<u!!>;<u)>;<ed>;/
+ <i3>;<a%>;<e%>;<y%>;<i%>;<u3>;/
+ <a*>;<b*>;<g*>;<d*>;<e*>;<z*>;/
+ <y*>;<h*>;<i*>;<k*>;<l*>;<m*>;/
+ <n*>;<c*>;<o*>;<p*>;<r*>;<*s>;/
+ <s*>;<t*>;<u*>;<f*>;<x*>;<q*>;/
+ <w*>;<j*>;<v*>;<o%>;<u%>;<w%>;/
+ <a=>;<b=>;<v=>;<g=>;<d=>;<e=>;/
+ <z%>;<z=>;<i=>;<j=>;<k=>;<l=>;/
+ <m=>;<n=>;<o=>;<p=>;<r=>;<s=>;/
+ <t=>;<u=>;<f=>;<h=>;<c=>;<c%>;/
+ <s%>;<sc>;<='>;<y=>;<%'>;<je>;/
+ <ju>;<ja>;<io>;<d%>;<g%>;<ie>;/
+ <ds>;<ii>;<yi>;<j%>;<lj>;<nj>;/
+ <ts>;<kj>;<v%>;<dz>;<y3>;<o3>;/
+ <f3>;<v3>;<c3>;<g3>;<a-0>;<b.>;/
+ <b-.>;<b_>;<c,'>;<d.>;<d-.>;/
+ <d_>;<d,>;<d-/>>;<e-!>;<e-'>;/
+ <e-/>>;<e-?>;<e,(>;<f.>;<g->;/
+ <h.>;<h-.>;<h:>;<h,>;<h-(>;/
+ <i-?>;<i:'>;<k'>;<k-.>;<k_>;/
+ <l-.>;<l--.>;<l_>;<l-/>>;<m'>;/
+ <m.>;<m-.>;<n.>;<n-.>;<n_>;/
+ <n-/>>;<o?'>;<o?:>;<o-!>;<o-'>;/
+ <p'>;<p.>;<r.>;<r-.>;<r--.>;/
+ <r_>;<s.>;<s-.>;<s'.>;<s<.>;/
+ <s.-.>;<t.>;<t-.>;<t_>;<t-/>>;/
+ <u--:>;<u-?>;<u-/>>;<u?'>;/
+ <u-:>;<v?>;<v-.>;<w!>;<w'>;/
+ <w:>;<w.>;<w-.>;<x.>;<x:>;<y.>;/
+ <z/>>;<z-.>;<z_>;<a-.>;<a2>;/
+ <a/>'>;<a/>!>;<a/>2>;<a/>?>;/
+ <a/>-.>;<a('>;<a(!>;<a(2>;/
+ <a(?>;<a(-.>;<e-.>;<e2>;<e?>;/
+ <e/>'>;<e/>!>;<e/>2>;<e/>?>;/
+ <e/>-.>;<i2>;<i-.>;<o-.>;<o2>;/
+ <o/>'>;<o/>!>;<o/>2>;<o/>?>;/
+ <o/>-.>;<o9'>;<o9!>;<o92>;/
+ <o9?>;<o9-.>;<u-.>;<u2>;<u9'>;/
+ <u9!>;<u92>;<u9?>;<u9-.>;<y!>;/
+ <y-.>;<y2>;<y?>;<nS>;<(a)>;/
+ <(b)>;<(c)>;<(d)>;<(e)>;<(f)>;/
+ <(g)>;<(h)>;<(i)>;<(j)>;<(k)>;/
+ <(l)>;<(m)>;<(n)>;<(o)>;<(p)>;/
+ <(q)>;<(r)>;<(s)>;<(t)>;<(u)>;/
+ <(v)>;<(w)>;<(x)>;<(y)>;<(z)>;/
+ <a-o>;<b-o>;<c-o>;<d-o>;<e-o>;/
+ <f-o>;<g-o>;<h-o>;<i-o>;<j-o>;/
+ <k-o>;<l-o>;<m-o>;<n-o>;<o-o>;/
+ <p-o>;<q-o>;<r-o>;<s-o>;<t-o>;/
+ <u-o>;<v-o>;<w-o>;<x-o>;<y-o>;/
+ <z-o>;<ff>;<fi>;<fl>;<ffi>;/
+ <ffl>;<ft>;<st>
+
+alpha <A>;<B>;<C>;<D>;<E>;<F>;<G>;/
+ <H>;<I>;<J>;<K>;<L>;<M>;<N>;/
+ <O>;<P>;<Q>;<R>;<S>;<T>;<U>;/
+ <V>;<W>;<X>;<Y>;<Z>;<a>;<b>;/
+ <c>;<d>;<e>;<f>;<g>;<h>;<i>;/
+ <j>;<k>;<l>;<m>;<n>;<o>;<p>;/
+ <q>;<r>;<s>;<t>;<u>;<v>;<w>;/
+ <x>;<y>;<z>;<-->;<A!>;<A'>;/
+ <A/>>;<A?>;<A:>;<AA>;<AE>;<C,>;/
+ <E!>;<E'>;<E/>>;<E:>;<I!>;<I'>;/
+ <I/>>;<I:>;<D->;<N?>;<O!>;<O'>;/
+ <O/>>;<O?>;<O:>;<O//>;<U!>;/
+ <U'>;<U/>>;<U:>;<Y'>;<TH>;<ss>;/
+ <a!>;<a'>;<a/>>;<a?>;<a:>;<aa>;/
+ <ae>;<c,>;<e!>;<e'>;<e/>>;<e:>;/
+ <i!>;<i'>;<i/>>;<i:>;<d->;<n?>;/
+ <o!>;<o'>;<o/>>;<o?>;<o:>;/
+ <o//>;<u!>;<u'>;<u/>>;<u:>;/
+ <y'>;<th>;<y:>;<A->;<a->;<A(>;/
+ <a(>;<A;>;<a;>;<C'>;<c'>;<C/>>;/
+ <c/>>;<C.>;<c.>;<C<>;<c<>;<D<>;/
+ <d<>;<D//>;<d//>;<E->;<e->;/
+ <E(>;<e(>;<E.>;<e.>;<E;>;<e;>;/
+ <E<>;<e<>;<G/>>;<g/>>;<G(>;/
+ <g(>;<G.>;<g.>;<G,>;<g,>;<H/>>;/
+ <h/>>;<H//>;<h//>;<I?>;<i?>;/
+ <I->;<i->;<I(>;<i(>;<I;>;<i;>;/
+ <I.>;<i.>;<IJ>;<ij>;<J/>>;/
+ <j/>>;<K,>;<k,>;<kk>;<L'>;<l'>;/
+ <L,>;<l,>;<L<>;<l<>;<L.>;<l.>;/
+ <L//>;<l//>;<N'>;<n'>;<N,>;/
+ <n,>;<N<>;<n<>;<'n>;<NG>;<ng>;/
+ <O->;<o->;<O(>;<o(>;<O">;<o">;/
+ <OE>;<oe>;<R'>;<r'>;<R,>;<r,>;/
+ <R<>;<r<>;<S'>;<s'>;<S/>>;/
+ <s/>>;<S,>;<s,>;<S<>;<s<>;<T,>;/
+ <t,>;<T<>;<t<>;<T//>;<t//>;/
+ <U?>;<u?>;<U->;<u->;<U(>;<u(>;/
+ <U0>;<u0>;<U">;<u">;<U;>;<u;>;/
+ <W/>>;<w/>>;<Y/>>;<y/>>;<Y:>;/
+ <Z'>;<z'>;<Z.>;<z.>;<Z<>;<z<>;/
+ <s1>;<C2>;<c2>;<F2>;<f2>;<K2>;/
+ <k2>;<O9>;<o9>;<OI>;<oi>;<yr>;/
+ <U9>;<u9>;<Z//>;<z//>;<ED>;/
+ <A<>;<a<>;<I<>;<i<>;<O<>;<o<>;/
+ <U<>;<u<>;<U:->;<u:->;<U:'>;/
+ <u:'>;<U:<>;<u:<>;<U:!>;<u:!>;/
+ <A1>;<a1>;<A7>;<a7>;<A3>;<a3>;/
+ <G//>;<g//>;<G<>;<g<>;<K<>;/
+ <k<>;<O;>;<o;>;<O1>;<o1>;<EZ>;/
+ <ez>;<G'>;<g'>;<AA'>;<aa'>;/
+ <AE'>;<ae'>;<O//'>;<o//'>;/
+ <A!!>;<a!!>;<A)>;<a)>;<E!!>;/
+ <e!!>;<E)>;<e)>;<I!!>;<i!!>;/
+ <I)>;<i)>;<O!!>;<o!!>;<O)>;/
+ <o)>;<R!!>;<r!!>;<R)>;<r)>;/
+ <U!!>;<u!!>;<U)>;<u)>;<ed>;/
+ <;S>;<1/>>;<1!>;<A%>;<E%>;<Y%>;/
+ <I%>;<O%>;<U%>;<W%>;<i3>;<A*>;/
+ <B*>;<G*>;<D*>;<E*>;<Z*>;<Y*>;/
+ <H*>;<I*>;<K*>;<L*>;<M*>;<N*>;/
+ <C*>;<O*>;<P*>;<R*>;<S*>;<T*>;/
+ <U*>;<F*>;<X*>;<Q*>;<W*>;<J*>;/
+ <V*>;<a%>;<e%>;<y%>;<i%>;<u3>;/
+ <a*>;<b*>;<g*>;<d*>;<e*>;<z*>;/
+ <y*>;<h*>;<i*>;<k*>;<l*>;<m*>;/
+ <n*>;<c*>;<o*>;<p*>;<r*>;<*s>;/
+ <s*>;<t*>;<u*>;<f*>;<x*>;<q*>;/
+ <w*>;<j*>;<v*>;<o%>;<u%>;<w%>;/
+ <IO>;<D%>;<G%>;<IE>;<DS>;<II>;/
+ <YI>;<J%>;<LJ>;<NJ>;<Ts>;<KJ>;/
+ <V%>;<DZ>;<A=>;<B=>;<V=>;<G=>;/
+ <D=>;<E=>;<Z%>;<Z=>;<I=>;<J=>;/
+ <K=>;<L=>;<M=>;<N=>;<O=>;<P=>;/
+ <R=>;<S=>;<T=>;<U=>;<F=>;<H=>;/
+ <C=>;<C%>;<S%>;<Sc>;<=">;<Y=>;/
+ <%">;<JE>;<JU>;<JA>;<a=>;<b=>;/
+ <v=>;<g=>;<d=>;<e=>;<z%>;<z=>;/
+ <i=>;<j=>;<k=>;<l=>;<m=>;<n=>;/
+ <o=>;<p=>;<r=>;<s=>;<t=>;<u=>;/
+ <f=>;<h=>;<c=>;<c%>;<s%>;<sc>;/
+ <='>;<y=>;<%'>;<je>;<ju>;<ja>;/
+ <io>;<d%>;<g%>;<ie>;<ds>;<ii>;/
+ <yi>;<j%>;<lj>;<nj>;<ts>;<kj>;/
+ <v%>;<dz>;<Y3>;<y3>;<O3>;<o3>;/
+ <F3>;<f3>;<V3>;<v3>;<C3>;<c3>;/
+ <G3>;<g3>;<A+>;<B+>;<G+>;<D+>;/
+ <H+>;<W+>;<Z+>;<X+>;<Tj>;<J+>;/
+ <K%>;<K+>;<L+>;<M%>;<M+>;<N%>;/
+ <N+>;<S+>;<E+>;<P%>;<P+>;<Zj>;/
+ <ZJ>;<Q+>;<R+>;<Sh>;<T+>;<H'>;/
+ <aM>;<aH>;<wH>;<ah>;<yH>;<a+>;/
+ <b+>;<tm>;<t+>;<tk>;<g+>;<hk>;/
+ <x+>;<d+>;<dk>;<r+>;<z+>;<s+>;/
+ <sn>;<c+>;<dd>;<tj>;<zH>;<e+>;/
+ <i+>;<f+>;<q+>;<k+>;<l+>;<m+>;/
+ <n+>;<h+>;<w+>;<j+>;<y+>;<aS>;/
+ <p+>;<hH>;<tc>;<zj>;<v+>;<gf>;/
+ <A-0>;<a-0>;<B.>;<b.>;<B-.>;/
+ <b-.>;<B_>;<b_>;<C,'>;<c,'>;/
+ <D.>;<d.>;<D-.>;<d-.>;<D_>;/
+ <d_>;<D,>;<d,>;<D-/>>;<d-/>>;/
+ <E-!>;<e-!>;<E-'>;<e-'>;<E-/>>;/
+ <e-/>>;<E-?>;<e-?>;<E,(>;<e,(>;/
+ <F.>;<f.>;<G->;<g->;<H.>;<h.>;/
+ <H-.>;<h-.>;<H:>;<h:>;<H,>;/
+ <h,>;<H-(>;<h-(>;<I-?>;<i-?>;/
+ <I:'>;<i:'>;<K'>;<k'>;<K-.>;/
+ <k-.>;<K_>;<k_>;<L-.>;<l-.>;/
+ <L--.>;<l--.>;<L_>;<l_>;<L-/>>;/
+ <l-/>>;<M'>;<m'>;<M.>;<m.>;/
+ <M-.>;<m-.>;<N.>;<n.>;<N-.>;/
+ <n-.>;<N_>;<n_>;<N-/>>;<n-/>>;/
+ <O?'>;<o?'>;<O?:>;<o?:>;<O-!>;/
+ <o-!>;<O-'>;<o-'>;<P'>;<p'>;/
+ <P.>;<p.>;<R.>;<r.>;<R-.>;/
+ <r-.>;<R--.>;<r--.>;<R_>;<r_>;/
+ <S.>;<s.>;<S-.>;<s-.>;<S'.>;/
+ <s'.>;<S<.>;<s<.>;<S.-.>;/
+ <s.-.>;<T.>;<t.>;<T-.>;<t-.>;/
+ <T_>;<t_>;<T-/>>;<t-/>>;<U--:>;/
+ <u--:>;<U-?>;<u-?>;<U-/>>;/
+ <u-/>>;<U?'>;<u?'>;<U-:>;<u-:>;/
+ <V?>;<v?>;<V-.>;<v-.>;<W!>;/
+ <w!>;<W'>;<w'>;<W:>;<w:>;<W.>;/
+ <w.>;<W-.>;<w-.>;<X.>;<x.>;/
+ <X:>;<x:>;<Y.>;<y.>;<Z/>>;/
+ <z/>>;<Z-.>;<z-.>;<Z_>;<z_>;/
+ <A-.>;<a-.>;<A2>;<a2>;<A/>'>;/
+ <a/>'>;<A/>!>;<a/>!>;<A/>2>;/
+ <a/>2>;<A/>?>;<a/>?>;<A/>-.>;/
+ <a/>-.>;<A('>;<a('>;<A(!>;/
+ <a(!>;<A(2>;<a(2>;<A(?>;<a(?>;/
+ <A(-.>;<a(-.>;<E-.>;<e-.>;<E2>;/
+ <e2>;<E?>;<e?>;<E/>'>;<e/>'>;/
+ <E/>!>;<e/>!>;<E/>2>;<e/>2>;/
+ <E/>?>;<e/>?>;<E/>-.>;<e/>-.>;/
+ <I2>;<i2>;<I-.>;<i-.>;<O-.>;/
+ <o-.>;<O2>;<o2>;<O/>'>;<o/>'>;/
+ <O/>!>;<o/>!>;<O/>2>;<o/>2>;/
+ <O/>?>;<o/>?>;<O/>-.>;<o/>-.>;/
+ <O9'>;<o9'>;<O9!>;<o9!>;<O92>;/
+ <o92>;<O9?>;<o9?>;<O9-.>;/
+ <o9-.>;<U-.>;<u-.>;<U2>;<u2>;/
+ <U9'>;<u9'>;<U9!>;<u9!>;<U92>;/
+ <u92>;<U9?>;<u9?>;<U9-.>;/
+ <u9-.>;<Y!>;<y!>;<Y-.>;<y-.>;/
+ <Y2>;<y2>;<Y?>;<y?>;<nS>;<(a)>;/
+ <(b)>;<(c)>;<(d)>;<(e)>;<(f)>;/
+ <(g)>;<(h)>;<(i)>;<(j)>;<(k)>;/
+ <(l)>;<(m)>;<(n)>;<(o)>;<(p)>;/
+ <(q)>;<(r)>;<(s)>;<(t)>;<(u)>;/
+ <(v)>;<(w)>;<(x)>;<(y)>;<(z)>;/
+ <A-o>;<B-o>;<C-o>;<D-o>;<E-o>;/
+ <F-o>;<G-o>;<H-o>;<I-o>;<J-o>;/
+ <K-o>;<L-o>;<M-o>;<N-o>;<O-o>;/
+ <P-o>;<Q-o>;<R-o>;<S-o>;<T-o>;/
+ <U-o>;<V-o>;<W-o>;<X-o>;<Y-o>;/
+ <Z-o>;<a-o>;<b-o>;<c-o>;<d-o>;/
+ <e-o>;<f-o>;<g-o>;<h-o>;<i-o>;/
+ <j-o>;<k-o>;<l-o>;<m-o>;<n-o>;/
+ <o-o>;<p-o>;<q-o>;<r-o>;<s-o>;/
+ <t-o>;<u-o>;<v-o>;<w-o>;<x-o>;/
+ <y-o>;<z-o>;<A5>;<a5>;<I5>;/
+ <i5>;<U5>;<u5>;<E5>;<e5>;<O5>;/
+ <o5>;<ka>;<ga>;<ki>;<gi>;<ku>;/
+ <gu>;<ke>;<ge>;<ko>;<go>;<sa>;/
+ <za>;<si>;<zi>;<su>;<zu>;<se>;/
+ <ze>;<so>;<zo>;<ta>;<da>;<ti>;/
+ <di>;<tU>;<tu>;<du>;<te>;<de>;/
+ <to>;<do>;<na>;<ni>;<nu>;<ne>;/
+ <no>;<ha>;<ba>;<pa>;<hi>;<bi>;/
+ <pi>;<hu>;<bu>;<pu>;<he>;<be>;/
+ <pe>;<ho>;<bo>;<po>;<ma>;<mi>;/
+ <mu>;<me>;<mo>;<yA>;<ya>;<yU>;/
+ <yu>;<yO>;<yo>;<ra>;<ri>;<ru>;/
+ <re>;<ro>;<wA>;<wa>;<wi>;<we>;/
+ <wo>;<n5>;<vu>;<a6>;<A6>;<i6>;/
+ <I6>;<u6>;<U6>;<e6>;<E6>;<o6>;/
+ <O6>;<Ka>;<Ga>;<Ki>;<Gi>;<Ku>;/
+ <Gu>;<Ke>;<Ge>;<Ko>;<Go>;<Sa>;/
+ <Za>;<Si>;<Zi>;<Su>;<Zu>;<Se>;/
+ <Ze>;<So>;<Zo>;<Ta>;<Da>;<Ti>;/
+ <Di>;<TU>;<Tu>;<Du>;<Te>;<De>;/
+ <To>;<Do>;<Na>;<Ni>;<Nu>;<Ne>;/
+ <No>;<Ha>;<Ba>;<Pa>;<Hi>;<Bi>;/
+ <Pi>;<Hu>;<Bu>;<Pu>;<He>;<Be>;/
+ <Pe>;<Ho>;<Bo>;<Po>;<Ma>;<Mi>;/
+ <Mu>;<Me>;<Mo>;<YA>;<Ya>;<YU>;/
+ <Yu>;<YO>;<Yo>;<Ra>;<Ri>;<Ru>;/
+ <Re>;<Ro>;<WA>;<Wa>;<Wi>;<We>;/
+ <Wo>;<N6>;<Vu>;<KA>;<KE>;<Va>;/
+ <Vi>;<Ve>;<Vo>;<ff>;<fi>;<fl>;/
+ <ffi>;<ffl>;<ft>;<st>;<aM.>;/
+ <aH.>;<ah.>;<a+->;<a+.>;<b+->;/
+ <b+.>;<b+,>;<b+;>;<tm->;<tm.>;/
+ <t+->;<t+.>;<t+,>;<t+;>;<tk->;/
+ <tk.>;<tk,>;<tk;>;<g+->;<g+.>;/
+ <g+,>;<g+;>;<hk->;<hk.>;<hk,>;/
+ <hk;>;<x+->;<x+.>;<x+,>;<x+;>;/
+ <d+->;<d+.>;<dk->;<dk.>;<r+->;/
+ <r+.>;<z+->;<z+.>;<s+->;<s+.>;/
+ <s+,>;<s+;>;<sn->;<sn.>;<sn,>;/
+ <sn;>;<c+->;<c+.>;<c+,>;<c+;>;/
+ <dd->;<dd.>;<dd,>;<dd;>;<tj->;/
+ <tj.>;<tj,>;<tj;>;<zH->;<zH.>;/
+ <zH,>;<zH;>;<e+->;<e+.>;<e+,>;/
+ <e+;>;<i+->;<i+.>;<i+,>;<i+;>;/
+ <f+->;<f+.>;<f+,>;<f+;>;<q+->;/
+ <q+.>;<q+,>;<q+;>;<k+->;<k+.>;/
+ <k+,>;<k+;>;<l+->;<l+.>;<l+,>;/
+ <l+;>;<m+->;<m+.>;<m+,>;<m+;>;/
+ <n+->;<n+.>;<n+,>;<n+;>;<h+->;/
+ <h+.>;<h+,>;<h+;>;<w+->;<w+.>;/
+ <j+->;<j+.>;<y+->;<y+.>;<y+,>;/
+ <y+;>;<lM->;<lM.>;<lH->;<lH.>;/
+ <lh->;<lh.>;<la->;<la.>;<a+:>
+
+cntrl <NU>;<SH>;<SX>;<EX>;<ET>;<EQ>;/
+ <AK>;<BL>;<BS>;<HT>;<LF>;<VT>;/
+ <FF>;<CR>;<SO>;<SI>;<DL>;<D1>;/
+ <D2>;<D3>;<D4>;<NK>;<SY>;<EB>;/
+ <CN>;<EM>;<SB>;<EC>;<FS>;<GS>;/
+ <RS>;<US>;<DT>;<PA>;<HO>;<BH>;/
+ <NH>;<IN>;<NL>;<SA>;<ES>;<HS>;/
+ <HJ>;<VS>;<PD>;<PU>;<RI>;<S2>;/
+ <S3>;<DC>;<P1>;<P2>;<TS>;<CC>;/
+ <MW>;<SG>;<EG>;<SS>;<GC>;<SC>;/
+ <CI>;<ST>;<OC>;<PM>;<AC>
+
+punct <!>;<">;<Nb>;<DO>;<%>;<&>;<'>;/
+ <(>;<)>;<*>;<+>;<,>;<->;<.>;/
+ <//>;<:>;<;>;<<>;<=>;</>>;<?>;/
+ <At>;<<(>;<////>;<)/>>;<'/>>;/
+ <_>;<'!>;<(!>;<!!>;<!)>;<'?>;/
+ <!I>;<Ct>;<Pd>;<Cu>;<Ye>;<BB>;/
+ <SE>;<':>;<Co>;<-a>;<<<>;<NO>;/
+ <Rg>;<'m>;<DG>;<+->;<2S>;<3S>;/
+ <''>;<My>;<PI>;<.M>;<',>;<1S>;/
+ <-o>;</>/>>;<14>;<12>;<34>;/
+ <?I>;<*X>;<-:>;<'<>;<'(>;<'.>;/
+ <'0>;<';>;<1?>;<'">;<'G>;<,G>;/
+ <j3>;<?%>;<'*>;<'%>;<.*>;<b3>;/
+ <,+>;<;+>;<?+>;<++>;<:+>;<"+>;/
+ <=+>;<//+>;<'+>;<1+>;<3+>;<0+>;/
+ <0a>;<1a>;<2a>;<3a>;<4a>;<5a>;/
+ <6a>;<7a>;<8a>;<9a>;<,,>;<?*>;/
+ <?:>;<,!>;<,'>;<?,>;<;!>;<;'>;/
+ <?;>;<!:>;<!*>;<;;>;<1N>;<1M>;/
+ <3M>;<4M>;<6M>;<LR>;<RL>;<1T>;/
+ <1H>;<-1>;<-N>;<-M>;<-3>;<!2>;/
+ <=2>;<'6>;<'9>;<.9>;<9'>;<"6>;/
+ <"9>;<:9>;<9">;<//->;<//=>;/
+ <Sb>;<..>;<.3>;<%0>;<1'>;<2'>;/
+ <3'>;<1">;<2">;<3">;<Ca>;<<1>;/
+ </>1>;<:X>;<!*2>;<'->;<0S>;/
+ <4S>;<5S>;<6S>;<7S>;<8S>;<9S>;/
+ <+S>;<-S>;<=S>;<(S>;<)S>;<0s>;/
+ <1s>;<2s>;<3s>;<4s>;<5s>;<6s>;/
+ <7s>;<8s>;<9s>;<+s>;<-s>;<=s>;/
+ <(s>;<)s>;<Ff>;<Li>;<Pt>;<W=>;/
+ <oC>;<co>;<oF>;<N0>;<PO>;<Rx>;/
+ <SM>;<TM>;<Om>;<AO>;<13>;<23>;/
+ <15>;<25>;<35>;<45>;<16>;<56>;/
+ <18>;<38>;<58>;<78>;<1R>;<2R>;/
+ <3R>;<4R>;<5R>;<6R>;<7R>;<8R>;/
+ <9R>;<aR>;<bR>;<cR>;<50R>;/
+ <100R>;<500R>;<1000R>;<1r>;/
+ <2r>;<3r>;<4r>;<5r>;<6r>;<7r>;/
+ <8r>;<9r>;<ar>;<br>;<cr>;<50r>;/
+ <100r>;<500r>;<1000r>;/
+ <1000RCD>;<5000R>;<10000R>;/
+ <<->;<-!>;<-/>>;<-v>;<</>>;/
+ <UD>;<<!!>;</////>>;<!!/>>;/
+ <<////>;<UD->;</>V>;<<=>;<=/>>;/
+ <==>;<FA>;<dP>;<TE>;<//0>;<DE>;/
+ <NB>;<(->;<-)>;<*P>;<+Z>;<-2>;/
+ <-+>;<.+>;<//f>;<*->;<Ob>;<sb>;/
+ <RT>;<0(>;<00>;<-L>;<-V>;<PP>;/
+ <AN>;<OR>;<(U>;<)U>;<In>;<DI>;/
+ <Io>;<.:>;<:.>;<:R>;<::>;<?1>;/
+ <CG>;<?->;<?=>;<?2>;<=?>;<HI>;/
+ <!=>;<=3>;<=<>;</>=>;<<*>;/
+ <*/>>;<!<>;<!/>>;<(C>;<)C>;/
+ <(_>;<)_>;<0.>;<02>;<-T>;<.P>;/
+ <:3>;<Eh>;<<7>;</>7>;<7<>;/
+ <7/>>;<NI>;<(A>;<TR>;<Iu>;<Il>;/
+ <<//>;<///>>;<Vs>;<1h>;<3h>;/
+ <2h>;<4h>;<1j>;<2j>;<3j>;<4j>;/
+ <1-o>;<2-o>;<3-o>;<4-o>;<5-o>;/
+ <6-o>;<7-o>;<8-o>;<9-o>;<10-o>;/
+ <11-o>;<12-o>;<13-o>;<14-o>;/
+ <15-o>;<16-o>;<17-o>;<18-o>;/
+ <19-o>;<20-o>;<(1)>;<(2)>;/
+ <(3)>;<(4)>;<(5)>;<(6)>;<(7)>;/
+ <(8)>;<(9)>;<(10)>;<(11)>;/
+ <(12)>;<(13)>;<(14)>;<(15)>;/
+ <(16)>;<(17)>;<(18)>;<(19)>;/
+ <(20)>;<1.>;<2.>;<3.>;<4.>;/
+ <5.>;<6.>;<7.>;<8.>;<9.>;<10.>;/
+ <11.>;<12.>;<13.>;<14.>;<15.>;/
+ <16.>;<17.>;<18.>;<19.>;<20.>;/
+ <0-o>;<hh>;<HH>;<vv>;<VV>;<3->;/
+ <3_>;<3!>;<3//>;<4->;<4_>;<4!>;/
+ <4//>;<dr>;<dR>;<Dr>;<DR>;<dl>;/
+ <dL>;<Dl>;<LD>;<ur>;<uR>;<Ur>;/
+ <UR>;<ul>;<uL>;<Ul>;<UL>;<vr>;/
+ <vR>;<Udr>;<uDr>;<Vr>;<UdR>;/
+ <uDR>;<VR>;<vl>;<vL>;<Udl>;/
+ <uDl>;<Vl>;<UdL>;<uDL>;<VL>;/
+ <dh>;<dLr>;<dlR>;<dH>;<Dh>;/
+ <DLr>;<DlR>;<DH>;<uh>;<uLr>;/
+ <ulR>;<uH>;<Uh>;<ULr>;<UlR>;/
+ <UH>;<vh>;<vLr>;<vlR>;<vH>;/
+ <Udh>;<uDh>;<Vh>;<UdLr>;<UdlR>;/
+ <uDLr>;<uDlR>;<UdH>;<uDH>;/
+ <VLr>;<VlR>;<VH>;<FD>;<BD>;/
+ <TB>;<LB>;<FB>;<lB>;<RB>;<.S>;/
+ <:S>;<?S>;<fS>;<OS>;<RO>;<Rr>;/
+ <RF>;<RY>;<RH>;<RZ>;<RK>;<RX>;/
+ <sB>;<SR>;<Or>;<UT>;<uT>;<Tr>;/
+ <PR>;<Dt>;<dT>;<Tl>;<PL>;<Db>;/
+ <Dw>;<LZ>;<0m>;<0o>;<0M>;<0L>;/
+ <0R>;<Sn>;<Ic>;<Fd>;<Bd>;<Ci>;/
+ <*2>;<*1>;<TEL>;<tel>;<<H>;/
+ </>H>;<0u>;<0U>;<SU>;<Fm>;<Ml>;/
+ <cS>;<cH>;<cD>;<cC>;<cS->;/
+ <cH->;<cD->;<cC->;<Md>;<M8>;/
+ <M2>;<M16>;<Mb>;<Mx>;<MX>;<OK>;/
+ <XX>;<-X>;<IS>;<,_>;<._>;<+">;/
+ <JIS>;<*_>;<;_>;<0_>;<<+>;/
+ </>+>;<<'>;</>'>;<<">;</>">;/
+ <(">;<)">;<=T>;<=_>;<('>;<)'>;/
+ <(I>;<)I>;<-?>;<=T:)>;<"5>;/
+ <05>;<*5>;<+5>;<.6>;<-6>;<*6>;/
+ <+6>;<(JU)>;<1c>;<2c>;<3c>;/
+ <4c>;<5c>;<6c>;<7c>;<8c>;<9c>;/
+ <10c>;<KSC>;<am>;<pm>;<3+;>;/
+ <"3>;<"1>;<"!>;<"'>;<"/>>;<"?>;/
+ <"->;<"(>;<".>;<":>;<"0>;<",>;/
+ <"_>;<"">;<";>;<"<>;<"=>;<"//>;/
+ <"p>;<"d>;<"i>;<+_>;<Tel>;<UA>;/
+ <UB>
+
+tolower (<A>,<a>);(<A!>,<a!>);/
+ (<A!!>,<a!!>);(<A'>,<a'>);/
+ (<A(>,<a(>);(<A(!>,<a(!>);/
+ (<A('>,<a('>);(<A(-.>,<a(-.>);/
+ (<A(2>,<a(2>);(<A(?>,<a(?>);/
+ (<A)>,<a)>);(<A->,<a->);/
+ (<A-.>,<a-.>);(<A-0>,<a-0>);/
+ (<A-o>,<a-o>);(<A1>,<a1>);/
+ (<A2>,<a2>);(<A3>,<a3>);/
+ (<A7>,<a7>);(<A:>,<a:>);/
+ (<A;>,<a;>);(<A<>,<a<>);/
+ (<A/>>,<a/>>);(<A/>!>,<a/>!>);/
+ (<A/>'>,<a/>'>);/
+ (<A/>-.>,<a/>-.>);/
+ (<A/>2>,<a/>2>);/
+ (<A/>?>,<a/>?>);(<A?>,<a?>);/
+ (<AA>,<aa>);(<AA'>,<aa'>);/
+ (<AE>,<ae>);(<AE'>,<ae'>);/
+ (<B>,<b>);(<B-.>,<b-.>);/
+ (<B-o>,<b-o>);(<B.>,<b.>);/
+ (<B_>,<b_>);(<C>,<c>);/
+ (<C'>,<c'>);(<C,>,<c,>);/
+ (<C,'>,<c,'>);(<C-o>,<c-o>);/
+ (<C.>,<c.>);(<C2>,<c2>);/
+ (<C<>,<c<>);(<C/>>,<c/>>);/
+ (<D>,<d>);(<D,>,<d,>);/
+ (<D->,<d->);(<D-.>,<d-.>);/
+ (<D-/>>,<d-/>>);(<D-o>,<d-o>);/
+ (<D.>,<d.>);(<D//>,<d//>);/
+ (<D<>,<d<>);(<D_>,<d_>);/
+ (<E>,<e>);(<E!>,<e!>);/
+ (<E!!>,<e!!>);(<E'>,<e'>);/
+ (<E(>,<e(>);(<E)>,<e)>);/
+ (<E,(>,<e,(>);(<E->,<e->);/
+ (<E-!>,<e-!>);(<E-'>,<e-'>);/
+ (<E-.>,<e-.>);(<E-/>>,<e-/>>);/
+ (<E-?>,<e-?>);(<E-o>,<e-o>);/
+ (<E.>,<e.>);(<E2>,<e2>);/
+ (<E:>,<e:>);(<E;>,<e;>);/
+ (<E<>,<e<>);(<E/>>,<e/>>);/
+ (<E/>!>,<e/>!>);/
+ (<E/>'>,<e/>'>);/
+ (<E/>-.>,<e/>-.>);/
+ (<E/>2>,<e/>2>);/
+ (<E/>?>,<e/>?>);(<E?>,<e?>);/
+ (<ED>,<ed>);(<EZ>,<ez>);/
+ (<F>,<f>);(<F-o>,<f-o>);/
+ (<F.>,<f.>);(<F2>,<f2>);/
+ (<G>,<g>);(<G'>,<g'>);/
+ (<G(>,<g(>);(<G,>,<g,>);/
+ (<G->,<g->);(<G-o>,<g-o>);/
+ (<G.>,<g.>);(<G//>,<g//>);/
+ (<G<>,<g<>);(<G/>>,<g/>>);/
+ (<H>,<h>);(<H,>,<h,>);/
+ (<H-(>,<h-(>);(<H-.>,<h-.>);/
+ (<H-o>,<h-o>);(<H.>,<h.>);/
+ (<H//>,<h//>);(<H:>,<h:>);/
+ (<H/>>,<h/>>);(<I>,<i.>);/
+ (<I!>,<i!>);(<I!!>,<i!!>);/
+ (<I'>,<i'>);(<I(>,<i(>);/
+ (<I)>,<i)>);(<I->,<i->);/
+ (<I-.>,<i-.>);(<I-?>,<i-?>);/
+ (<I-o>,<i-o>);(<I.>,<i>);/
+ (<I2>,<i2>);(<I:>,<i:>);/
+ (<I:'>,<i:'>);(<I;>,<i;>);/
+ (<I<>,<i<>);(<I/>>,<i/>>);/
+ (<I?>,<i?>);(<IJ>,<ij>);/
+ (<J>,<j>);(<J-o>,<j-o>);/
+ (<J/>>,<j/>>);(<K>,<k>);/
+ (<K'>,<k'>);(<K,>,<k,>);/
+ (<K-.>,<k-.>);(<K-o>,<k-o>);/
+ (<K2>,<k2>);(<K<>,<k<>);/
+ (<K_>,<k_>);(<L>,<l>);/
+ (<L'>,<l'>);(<L,>,<l,>);/
+ (<L--.>,<l--.>);(<L-.>,<l-.>);/
+ (<L-/>>,<l-/>>);(<L-o>,<l-o>);/
+ (<L.>,<l.>);(<L//>,<l//>);/
+ (<L<>,<l<>);(<L_>,<l_>);/
+ (<M>,<m>);(<M'>,<m'>);/
+ (<M-.>,<m-.>);(<M-o>,<m-o>);/
+ (<M.>,<m.>);(<N>,<n>);/
+ (<N'>,<n'>);(<N,>,<n,>);/
+ (<N-.>,<n-.>);(<N-/>>,<n-/>>);/
+ (<N-o>,<n-o>);(<N.>,<n.>);/
+ (<N<>,<n<>);(<N?>,<n?>);/
+ (<NG>,<ng>);(<N_>,<n_>);/
+ (<O>,<o>);(<O!>,<o!>);/
+ (<O!!>,<o!!>);(<O">,<o">);/
+ (<O'>,<o'>);(<O(>,<o(>);/
+ (<O)>,<o)>);(<O->,<o->);/
+ (<O-!>,<o-!>);(<O-'>,<o-'>);/
+ (<O-.>,<o-.>);(<O-o>,<o-o>);/
+ (<O//>,<o//>);(<O1>,<o1>);/
+ (<O2>,<o2>);(<O9>,<o9>);/
+ (<O9!>,<o9!>);(<O9'>,<o9'>);/
+ (<O9-.>,<o9-.>);(<O92>,<o92>);/
+ (<O9?>,<o9?>);(<O:>,<o:>);/
+ (<O;>,<o;>);(<O<>,<o<>);/
+ (<O/>>,<o/>>);(<O/>!>,<o/>!>);/
+ (<O/>'>,<o/>'>);/
+ (<O/>-.>,<o/>-.>);/
+ (<O/>2>,<o/>2>);/
+ (<O/>?>,<o/>?>);(<O?>,<o?>);/
+ (<O?'>,<o?'>);(<O?:>,<o?:>);/
+ (<OE>,<oe>);(<OI>,<oi>);/
+ (<P>,<p>);(<P'>,<p'>);/
+ (<P-o>,<p-o>);(<P.>,<p.>);/
+ (<Q>,<q>);(<Q-o>,<q-o>);/
+ (<R>,<r>);(<R!!>,<r!!>);/
+ (<R'>,<r'>);(<R)>,<r)>);/
+ (<R,>,<r,>);(<R--.>,<r--.>);/
+ (<R-.>,<r-.>);(<R-o>,<r-o>);/
+ (<R.>,<r.>);(<R<>,<r<>);/
+ (<R_>,<r_>);(<S>,<s>);/
+ (<S'>,<s'>);(<S'.>,<s'.>);/
+ (<S,>,<s,>);(<S-.>,<s-.>);/
+ (<S-o>,<s-o>);(<S.>,<s.>);/
+ (<S.-.>,<s.-.>);(<S<>,<s<>);/
+ (<S<.>,<s<.>);(<S/>>,<s/>>);/
+ (<T>,<t>);(<T,>,<t,>);/
+ (<T-.>,<t-.>);(<T-/>>,<t-/>>);/
+ (<T-o>,<t-o>);(<T.>,<t.>);/
+ (<T//>,<t//>);(<T<>,<t<>);/
+ (<TH>,<th>);(<T_>,<t_>);/
+ (<U>,<u>);(<U!>,<u!>);/
+ (<U!!>,<u!!>);(<U">,<u">);/
+ (<U'>,<u'>);(<U(>,<u(>);/
+ (<U)>,<u)>);(<U->,<u->);/
+ (<U--:>,<u--:>);(<U-.>,<u-.>);/
+ (<U-:>,<u-:>);(<U-/>>,<u-/>>);/
+ (<U-?>,<u-?>);(<U-o>,<u-o>);/
+ (<U0>,<u0>);(<U2>,<u2>);/
+ (<U9>,<u9>);(<U9!>,<u9!>);/
+ (<U9'>,<u9'>);(<U9-.>,<u9-.>);/
+ (<U92>,<u92>);(<U9?>,<u9?>);/
+ (<U:>,<u:>);(<U:!>,<u:!>);/
+ (<U:'>,<u:'>);(<U:->,<u:->);/
+ (<U:<>,<u:<>);(<U;>,<u;>);/
+ (<U<>,<u<>);(<U/>>,<u/>>);/
+ (<U?>,<u?>);(<U?'>,<u?'>);/
+ (<V>,<v>);(<V-.>,<v-.>);/
+ (<V-o>,<v-o>);(<V?>,<v?>);/
+ (<W>,<w>);(<W!>,<w!>);/
+ (<W'>,<w'>);(<W-.>,<w-.>);/
+ (<W-o>,<w-o>);(<W.>,<w.>);/
+ (<W:>,<w:>);(<W/>>,<w/>>);/
+ (<X>,<x>);(<X-o>,<x-o>);/
+ (<X.>,<x.>);(<X:>,<x:>);/
+ (<Y>,<y>);(<Y!>,<y!>);/
+ (<Y'>,<y'>);(<Y-.>,<y-.>);/
+ (<Y-o>,<y-o>);(<Y.>,<y.>);/
+ (<Y2>,<y2>);(<Y/>>,<y/>>);/
+ (<Y?>,<y?>);(<Z>,<z>);/
+ (<Z'>,<z'>);(<Z-.>,<z-.>);/
+ (<Z-o>,<z-o>);(<Z.>,<z.>);/
+ (<Z//>,<z//>);(<Z<>,<z<>);/
+ (<Z/>>,<z/>>);(<Z_>,<z_>);/
+ (<A%>,<a%>);(<A*>,<a*>);/
+ (<B*>,<b*>);(<C*>,<c*>);/
+ (<D*>,<d*>);(<E%>,<e%>);/
+ (<E*>,<e*>);(<F*>,<f*>);/
+ (<G*>,<g*>);(<H*>,<h*>);/
+ (<I%>,<i%>);(<I*>,<i*>);/
+ (<J*>,<j*>);(<K*>,<k*>);/
+ (<L*>,<l*>);(<M*>,<m*>);/
+ (<N*>,<n*>);(<O%>,<o%>);/
+ (<O*>,<o*>);(<P*>,<p*>);/
+ (<Q*>,<q*>);(<R*>,<r*>);/
+ (<S*>,<s*>);(<T*>,<t*>);/
+ (<U%>,<u%>);(<U*>,<u*>);/
+ (<V*>,<v*>);(<W%>,<w%>);/
+ (<W*>,<w*>);(<X*>,<x*>);/
+ (<Y%>,<y%>);(<Y*>,<y*>);/
+ (<Z*>,<z*>);(<%">,<%'>);/
+ (<=">,<='>);(<A=>,<a=>);/
+ (<B=>,<b=>);(<C%>,<c%>);/
+ (<C3>,<c3>);(<C=>,<c=>);/
+ (<D%>,<d%>);(<D=>,<d=>);/
+ (<DS>,<ds>);(<DZ>,<dz>);/
+ (<E=>,<e=>);(<F3>,<f3>);/
+ (<F=>,<f=>);(<G%>,<g%>);/
+ (<G3>,<g3>);(<G=>,<g=>);/
+ (<H=>,<h=>);(<I=>,<i=>);/
+ (<IE>,<ie>);(<II>,<ii>);/
+ (<IO>,<io>);(<J%>,<j%>);/
+ (<J=>,<j=>);(<JA>,<ja>);/
+ (<JE>,<je>);(<JU>,<ju>);/
+ (<K=>,<k=>);(<KJ>,<kj>);/
+ (<L=>,<l=>);(<LJ>,<lj>);/
+ (<M=>,<m=>);(<N=>,<n=>);/
+ (<NJ>,<nj>);(<O3>,<o3>);/
+ (<O=>,<o=>);(<P=>,<p=>);/
+ (<R=>,<r=>);(<S%>,<s%>);/
+ (<S=>,<s=>);(<Sc>,<sc>);/
+ (<T=>,<t=>);(<Ts>,<ts>);/
+ (<U=>,<u=>);(<V3>,<v3>);/
+ (<V=>,<v=>);(<Y3>,<y3>);/
+ (<Y=>,<y=>);(<YI>,<yi>);/
+ (<Z%>,<z%>);(<Z=>,<z=>)
+
+toupper (<a>,<A>);(<a!>,<A!>);/
+ (<a!!>,<A!!>);(<a'>,<A'>);/
+ (<a(>,<A(>);(<a(!>,<A(!>);/
+ (<a('>,<A('>);(<a(-.>,<A(-.>);/
+ (<a(2>,<A(2>);(<a(?>,<A(?>);/
+ (<a)>,<A)>);(<a->,<A->);/
+ (<a-.>,<A-.>);(<a-0>,<A-0>);/
+ (<a-o>,<A-o>);(<a1>,<A1>);/
+ (<a2>,<A2>);(<a3>,<A3>);/
+ (<a7>,<A7>);(<a:>,<A:>);/
+ (<a;>,<A;>);(<a<>,<A<>);/
+ (<a/>>,<A/>>);(<a/>!>,<A/>!>);/
+ (<a/>'>,<A/>'>);/
+ (<a/>-.>,<A/>-.>);/
+ (<a/>2>,<A/>2>);/
+ (<a/>?>,<A/>?>);(<a?>,<A?>);/
+ (<aa>,<AA>);(<aa'>,<AA'>);/
+ (<ae>,<AE>);(<ae'>,<AE'>);/
+ (<b>,<B>);(<b-.>,<B-.>);/
+ (<b-o>,<B-o>);(<b.>,<B.>);/
+ (<b_>,<B_>);(<c>,<C>);/
+ (<c'>,<C'>);(<c,>,<C,>);/
+ (<c,'>,<C,'>);(<c-o>,<C-o>);/
+ (<c.>,<C.>);(<c2>,<C2>);/
+ (<c<>,<C<>);(<c/>>,<C/>>);/
+ (<d>,<D>);(<d,>,<D,>);/
+ (<d->,<D->);(<d-.>,<D-.>);/
+ (<d-/>>,<D-/>>);(<d-o>,<D-o>);/
+ (<d.>,<D.>);(<d//>,<D//>);/
+ (<d<>,<D<>);(<d_>,<D_>);/
+ (<e>,<E>);(<e!>,<E!>);/
+ (<e!!>,<E!!>);(<e'>,<E'>);/
+ (<e(>,<E(>);(<e)>,<E)>);/
+ (<e,(>,<E,(>);(<e->,<E->);/
+ (<e-!>,<E-!>);(<e-'>,<E-'>);/
+ (<e-.>,<E-.>);(<e-/>>,<E-/>>);/
+ (<e-?>,<E-?>);(<e-o>,<E-o>);/
+ (<e.>,<E.>);(<e2>,<E2>);/
+ (<e:>,<E:>);(<e;>,<E;>);/
+ (<e<>,<E<>);(<e/>>,<E/>>);/
+ (<e/>!>,<E/>!>);/
+ (<e/>'>,<E/>'>);/
+ (<e/>-.>,<E/>-.>);/
+ (<e/>2>,<E/>2>);/
+ (<e/>?>,<E/>?>);(<e?>,<E?>);/
+ (<ed>,<ED>);(<ez>,<EZ>);/
+ (<f>,<F>);(<f-o>,<F-o>);/
+ (<f.>,<F.>);(<f2>,<F2>);/
+ (<g>,<G>);(<g'>,<G'>);/
+ (<g(>,<G(>);(<g,>,<G,>);/
+ (<g->,<G->);(<g-o>,<G-o>);/
+ (<g.>,<G.>);(<g//>,<G//>);/
+ (<g<>,<G<>);(<g/>>,<G/>>);/
+ (<h>,<H>);(<h,>,<H,>);/
+ (<h-(>,<H-(>);(<h-.>,<H-.>);/
+ (<h-o>,<H-o>);(<h.>,<H.>);/
+ (<h//>,<H//>);(<h:>,<H:>);/
+ (<h/>>,<H/>>);(<i>,<I.>);/
+ (<i!>,<I!>);(<i!!>,<I!!>);/
+ (<i'>,<I'>);(<i(>,<I(>);/
+ (<i)>,<I)>);(<i->,<I->);/
+ (<i-.>,<I-.>);(<i-?>,<I-?>);/
+ (<i-o>,<I-o>);(<i.>,<I>);/
+ (<i2>,<I2>);(<i:>,<I:>);/
+ (<i:'>,<I:'>);(<i;>,<I;>);/
+ (<i<>,<I<>);(<i/>>,<I/>>);/
+ (<i?>,<I?>);(<ij>,<IJ>);/
+ (<j>,<J>);(<j-o>,<J-o>);/
+ (<j/>>,<J/>>);(<k>,<K>);/
+ (<k'>,<K'>);(<k,>,<K,>);/
+ (<k-.>,<K-.>);(<k-o>,<K-o>);/
+ (<k2>,<K2>);(<k<>,<K<>);/
+ (<k_>,<K_>);(<l>,<L>);/
+ (<l'>,<L'>);(<l,>,<L,>);/
+ (<l--.>,<L--.>);(<l-.>,<L-.>);/
+ (<l-/>>,<L-/>>);(<l-o>,<L-o>);/
+ (<l.>,<L.>);(<l//>,<L//>);/
+ (<l<>,<L<>);(<l_>,<L_>);/
+ (<m>,<M>);(<m'>,<M'>);/
+ (<m-.>,<M-.>);(<m-o>,<M-o>);/
+ (<m.>,<M.>);(<n>,<N>);/
+ (<n'>,<N'>);(<n,>,<N,>);/
+ (<n-.>,<N-.>);(<n-/>>,<N-/>>);/
+ (<n-o>,<N-o>);(<n.>,<N.>);/
+ (<n<>,<N<>);(<n?>,<N?>);/
+ (<ng>,<NG>);(<n_>,<N_>);/
+ (<o>,<O>);(<o!>,<O!>);/
+ (<o!!>,<O!!>);(<o">,<O">);/
+ (<o'>,<O'>);(<o(>,<O(>);/
+ (<o)>,<O)>);(<o->,<O->);/
+ (<o-!>,<O-!>);(<o-'>,<O-'>);/
+ (<o-.>,<O-.>);(<o-o>,<O-o>);/
+ (<o//>,<O//>);(<o1>,<O1>);/
+ (<o2>,<O2>);(<o9>,<O9>);/
+ (<o9!>,<O9!>);(<o9'>,<O9'>);/
+ (<o9-.>,<O9-.>);(<o92>,<O92>);/
+ (<o9?>,<O9?>);(<o:>,<O:>);/
+ (<o;>,<O;>);(<o<>,<O<>);/
+ (<o/>>,<O/>>);(<o/>!>,<O/>!>);/
+ (<o/>'>,<O/>'>);/
+ (<o/>-.>,<O/>-.>);/
+ (<o/>2>,<O/>2>);/
+ (<o/>?>,<O/>?>);(<o?>,<O?>);/
+ (<o?'>,<O?'>);(<o?:>,<O?:>);/
+ (<oe>,<OE>);(<oi>,<OI>);/
+ (<p>,<P>);(<p'>,<P'>);/
+ (<p-o>,<P-o>);(<p.>,<P.>);/
+ (<q>,<Q>);(<q-o>,<Q-o>);/
+ (<r>,<R>);(<r!!>,<R!!>);/
+ (<r'>,<R'>);(<r)>,<R)>);/
+ (<r,>,<R,>);(<r--.>,<R--.>);/
+ (<r-.>,<R-.>);(<r-o>,<R-o>);/
+ (<r.>,<R.>);(<r<>,<R<>);/
+ (<r_>,<R_>);(<s>,<S>);/
+ (<s'>,<S'>);(<s'.>,<S'.>);/
+ (<s,>,<S,>);(<s-.>,<S-.>);/
+ (<s-o>,<S-o>);(<s.>,<S.>);/
+ (<s.-.>,<S.-.>);(<s<>,<S<>);/
+ (<s<.>,<S<.>);(<s/>>,<S/>>);/
+ (<t>,<T>);(<t,>,<T,>);/
+ (<t-.>,<T-.>);(<t-/>>,<T-/>>);/
+ (<t-o>,<T-o>);(<t.>,<T.>);/
+ (<t//>,<T//>);(<t<>,<T<>);/
+ (<th>,<TH>);(<t_>,<T_>);/
+ (<u>,<U>);(<u!>,<U!>);/
+ (<u!!>,<U!!>);(<u">,<U">);/
+ (<u'>,<U'>);(<u(>,<U(>);/
+ (<u)>,<U)>);(<u->,<U->);/
+ (<u--:>,<U--:>);(<u-.>,<U-.>);/
+ (<u-:>,<U-:>);(<u-/>>,<U-/>>);/
+ (<u-?>,<U-?>);(<u-o>,<U-o>);/
+ (<u0>,<U0>);(<u2>,<U2>);/
+ (<u9>,<U9>);(<u9!>,<U9!>);/
+ (<u9'>,<U9'>);(<u9-.>,<U9-.>);/
+ (<u92>,<U92>);(<u9?>,<U9?>);/
+ (<u:>,<U:>);(<u:!>,<U:!>);/
+ (<u:'>,<U:'>);(<u:->,<U:->);/
+ (<u:<>,<U:<>);(<u;>,<U;>);/
+ (<u<>,<U<>);(<u/>>,<U/>>);/
+ (<u?>,<U?>);(<u?'>,<U?'>);/
+ (<v>,<V>);(<v-.>,<V-.>);/
+ (<v-o>,<V-o>);(<v?>,<V?>);/
+ (<w>,<W>);(<w!>,<W!>);/
+ (<w'>,<W'>);(<w-.>,<W-.>);/
+ (<w-o>,<W-o>);(<w.>,<W.>);/
+ (<w:>,<W:>);(<w/>>,<W/>>);/
+ (<x>,<X>);(<x-o>,<X-o>);/
+ (<x.>,<X.>);(<x:>,<X:>);/
+ (<y>,<Y>);(<y!>,<Y!>);/
+ (<y'>,<Y'>);(<y-.>,<Y-.>);/
+ (<y-o>,<Y-o>);(<y.>,<Y.>);/
+ (<y2>,<Y2>);(<y/>>,<Y/>>);/
+ (<y?>,<Y?>);(<z>,<Z>);/
+ (<z'>,<Z'>);(<z-.>,<Z-.>);/
+ (<z-o>,<Z-o>);(<z.>,<Z.>);/
+ (<z//>,<Z//>);(<z<>,<Z<>);/
+ (<z/>>,<Z/>>);(<z_>,<Z_>);/
+ (<a%>,<A%>);(<a*>,<A*>);/
+ (<b*>,<B*>);(<c*>,<C*>);/
+ (<d*>,<D*>);(<e%>,<E%>);/
+ (<e*>,<E*>);(<f*>,<F*>);/
+ (<g*>,<G*>);(<h*>,<H*>);/
+ (<i%>,<I%>);(<i*>,<I*>);/
+ (<j*>,<J*>);(<k*>,<K*>);/
+ (<l*>,<L*>);(<m*>,<M*>);/
+ (<n*>,<N*>);(<o%>,<O%>);/
+ (<o*>,<O*>);(<p*>,<P*>);/
+ (<q*>,<Q*>);(<r*>,<R*>);/
+ (<s*>,<S*>);(<t*>,<T*>);/
+ (<u%>,<U%>);(<u*>,<U*>);/
+ (<v*>,<V*>);(<w%>,<W%>);/
+ (<w*>,<W*>);(<x*>,<X*>);/
+ (<y%>,<Y%>);(<y*>,<Y*>);/
+ (<z*>,<Z*>);(<%'>,<%">);/
+ (<='>,<=">);(<a=>,<A=>);/
+ (<b=>,<B=>);(<c%>,<C%>);/
+ (<c3>,<C3>);(<c=>,<C=>);/
+ (<d%>,<D%>);(<d=>,<D=>);/
+ (<ds>,<DS>);(<dz>,<DZ>);/
+ (<e=>,<E=>);(<f3>,<F3>);/
+ (<f=>,<F=>);(<g%>,<G%>);/
+ (<g3>,<G3>);(<g=>,<G=>);/
+ (<h=>,<H=>);(<i=>,<I=>);/
+ (<ie>,<IE>);(<ii>,<II>);/
+ (<io>,<IO>);(<j%>,<J%>);/
+ (<j=>,<J=>);(<ja>,<JA>);/
+ (<je>,<JE>);(<ju>,<JU>);/
+ (<k=>,<K=>);(<kj>,<KJ>);/
+ (<l=>,<L=>);(<lj>,<LJ>);/
+ (<m=>,<M=>);(<n=>,<N=>);/
+ (<nj>,<NJ>);(<o3>,<O3>);/
+ (<o=>,<O=>);(<p=>,<P=>);/
+ (<r=>,<R=>);(<s%>,<S%>);/
+ (<s=>,<S=>);(<sc>,<Sc>);/
+ (<t=>,<T=>);(<ts>,<Ts>);/
+ (<u=>,<U=>);(<v3>,<V3>);/
+ (<v=>,<V=>);(<y3>,<Y3>);/
+ (<y=>,<Y=>);(<yi>,<YI>);/
+ (<z%>,<Z%>);(<z=>,<Z=>);/
+ (<*s>,<S*>)
+
END LC_CTYPE
LC_MESSAGES
-yesexpr "<<(><I><i><i.><I.><Y><y><)/>><.><*>"
-noexpr "<<(><n><N><)/>><.><*>"
+yesexpr "<<(><e><E><)/>><.><*>"
+noexpr "<<(><h><H><)/>><.><*>"
+yesstr "<e><v><e><t>"
+nostr "<h><a><y><i.><r>"
END LC_MESSAGES
LC_MONETARY
int_curr_symbol "<T><R><L><SP>"
-currency_symbol "<L>"
+currency_symbol "<T><L>"
mon_decimal_point "<,>"
mon_thousands_sep "<.>"
-mon_grouping 3;3
+mon_grouping 3
positive_sign ""
negative_sign "<->"
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
END LC_MONETARY
LC_NUMERIC
-decimal_point "<,>"
+decimal_point "<.>"
thousands_sep ""
-grouping 0;0
+grouping -1
END LC_NUMERIC
LC_TIME
-abday "<P><a>";"<P><t>";"<S><a>";/
- "<C,><a>";"<P><e>";"<C><u>";"<C><t>"
+abday "<P><a><z>";"<P><z><t>";"<S><a><l>";/
+ "<C,><r><s,>";"<P><r><s,>";"<C><u><m>";"<C><t><s>"
day "<P><a><z><a><r>";/
- "<P><a><z><a><r><t><e><s><i>";/
- "<S><a><l><i.>";/
- "<C,><a><r><s,><a><m><b><a>";/
- "<P><e><r><s,><e><m><b><e>";/
- "<C><u><m><a>";/
- "<C><u><m><a><r><t><e><s><i>"
+ "<P><a><z><a><r><t><e><s><i>";/
+ "<S><a><l><i.>";/
+ "<C,><a><r><s,><a><m><b><a>";/
+ "<P><e><r><s,><e><m><b><e>";/
+ "<C><u><m><a>";/
+ "<C><u><m><a><r><t><e><s><i>"
abmon "<O><c><a>";"<S,><u><b>";/
- "<M><a><r>";"<N><i><s>";/
- "<M><a><y>";"<M><a><z>";/
- "<F><e><m>";"<A><g(><u>";/
- "<E><y><l>";"<E><r><i>";/
- "<K><a><s>";"<A><r><a>"
+ "<M><a><r>";"<N><i><s>";/
+ "<M><a><y>";"<H><a><z>";/
+ "<T><e><m>";"<A><g(><u>";/
+ "<E><y><l>";"<E><k><i>";/
+ "<K><a><s>";"<A><r><a>"
mon "<O><c><a><k>";/
- "<S,><u><b><a><t>";/
- "<M><a><r><t>";/
- "<N><i><s><a><n>";/
- "<M><a><y><i.><s>";/
- "<M><a><z><i><r><a><n>";/
- "<F><e><m><m><u><s>";/
- "<A><g(><u><s><t><o><s>";/
- "<E><y><l><u><l>";/
- "<E><r><i><m>";/
- "<K><a><s><i.><m>";/
- "<A><r><a><l><i.><k>"
+ "<S,><u><b><a><t>";/
+ "<M><a><r><t>";/
+ "<N><i><s><a><n>";/
+ "<M><a><y><i.><s>";/
+ "<H><a><z><i><r><a><n>";/
+ "<T><e><m><m><u><z>";/
+ "<A><g(><u><s><t><o><s>";/
+ "<E><y><l><u:><l>";/
+ "<E><k><i><m>";/
+ "<K><a><s><i.><m>";/
+ "<A><r><a><l><i.><k>"
d_t_fmt "<%><a><SP><%><d><SP><%><b><SP><%><Y><SP><%><T><SP><%><Z>"
-d_fmt "<%><Y><-><%><m><-><%><d>"
+d_fmt "<%><d><-><%><m><-><%><Y>"
t_fmt "<%><T>"
-am_pm "";""
-t_fmt_ampm ""
+am_pm "<O:><O:>";"<O:><S>"
+t_fmt_ampm "<%><I><:><%><M><:><%><S><SP><%><p>"
END LC_TIME
diff --git a/localedata/tests/test1.cm b/localedata/tests/test1.cm
new file mode 100644
index 0000000000..1e0ca8329e
--- /dev/null
+++ b/localedata/tests/test1.cm
@@ -0,0 +1,73 @@
+<code_set_name> BIG5
+<comment_char> %
+<escape_char> /
+<mb_cur_max> 2
+<mb_cur_min> 1
+CHARMAP
+<A> /x41
+<B> /x42
+<C> /x43
+<D> /x44
+<E> /x45
+<F> /x46
+<G> /x47
+<H> /x48
+<I> /x49
+<J> /x4A
+<K> /x4B
+<L> /x4C
+<M> /x4D
+<N> /x4E
+<O> /x4F
+<P> /x50
+<Q> /x51
+<R> /x52
+<S> /x53
+<T> /x54
+<U> /x55
+<V> /x56
+<W> /x57
+<X> /x58
+<Y> /x59
+<Z> /x5A
+
+<a> /x61
+<b> /x62
+<c> /x63
+<d> /x64
+<e> /x65
+<f> /x66
+<g> /x67
+<h> /x68
+<i> /x69
+<j> /x6a
+<k> /x6b
+<l> /x6c
+<m> /x6d
+<n> /x6e
+<o> /x6f
+<p> /x70
+<q> /x71
+<r> /x72
+<s> /x73
+<t> /x74
+<u> /x75
+<v> /x76
+<w> /x77
+<x> /x78
+<y> /x79
+<z> /x7a
+<SP> /x20
+<space> /x20
+<0> /x30
+<1> /x31
+<2> /x32
+<3> /x33
+<4> /x34
+<5> /x35
+<6> /x36
+<7> /x37
+<8> /x38
+<9> /x39
+<B1>...<B3> /xa1/x40
+END CHARMAP
diff --git a/localedata/tests/test1.def b/localedata/tests/test1.def
new file mode 100644
index 0000000000..56dea5c4bb
--- /dev/null
+++ b/localedata/tests/test1.def
@@ -0,0 +1,9 @@
+LC_CTYPE
+
+upper <A>
+lower <a>
+space <SP>
+blank <SP>
+alpha <A>;<a>;<b1>;...;<b3>
+
+END LC_CTYPE
diff --git a/localedata/tests/test2.cm b/localedata/tests/test2.cm
new file mode 100644
index 0000000000..e7e83a7418
--- /dev/null
+++ b/localedata/tests/test2.cm
@@ -0,0 +1,73 @@
+<code_set_name> BIG5
+<comment_char> %
+<escape_char> /
+<mb_cur_max> 2
+<mb_cur_min> 1
+CHARMAP
+<A> /x41
+<B> /x42
+<C> /x43
+<D> /x44
+<E> /x45
+<F> /x46
+<G> /x47
+<H> /x48
+<I> /x49
+<J> /x4A
+<K> /x4B
+<L> /x4C
+<M> /x4D
+<N> /x4E
+<O> /x4F
+<P> /x50
+<Q> /x51
+<R> /x52
+<S> /x53
+<T> /x54
+<U> /x55
+<V> /x56
+<W> /x57
+<X> /x58
+<Y> /x59
+<Z> /x5A
+
+<a> /x61
+<b> /x62
+<c> /x63
+<d> /x64
+<e> /x65
+<f> /x66
+<g> /x67
+<h> /x68
+<i> /x69
+<j> /x6a
+<k> /x6b
+<l> /x6c
+<m> /x6d
+<n> /x6e
+<o> /x6f
+<p> /x70
+<q> /x71
+<r> /x72
+<s> /x73
+<t> /x74
+<u> /x75
+<v> /x76
+<w> /x77
+<x> /x78
+<y> /x79
+<z> /x7a
+<SP> /x20
+<space> /x20
+<0> /x30
+<1> /x31
+<2> /x32
+<3> /x33
+<4> /x34
+<5> /x35
+<6> /x36
+<7> /x37
+<8> /x38
+<9> /x39
+<b01>...<b03> /xa1/x40
+END CHARMAP
diff --git a/localedata/tests/test2.def b/localedata/tests/test2.def
new file mode 100644
index 0000000000..995daf1776
--- /dev/null
+++ b/localedata/tests/test2.def
@@ -0,0 +1,9 @@
+LC_CTYPE
+
+upper <A>
+lower <a>
+space <SP>
+blank <SP>
+alpha <A>;<a>;<b01>;...;<b03>
+
+END LC_CTYPE
diff --git a/localedata/tests/test3.cm b/localedata/tests/test3.cm
new file mode 100644
index 0000000000..4dc88ea919
--- /dev/null
+++ b/localedata/tests/test3.cm
@@ -0,0 +1,73 @@
+<code_set_name> BIG5
+<comment_char> %
+<escape_char> /
+<mb_cur_max> 2
+<mb_cur_min> 1
+CHARMAP
+<A> /x41
+<B> /x42
+<C> /x43
+<D> /x44
+<E> /x45
+<F> /x46
+<G> /x47
+<H> /x48
+<I> /x49
+<J> /x4A
+<K> /x4B
+<L> /x4C
+<M> /x4D
+<N> /x4E
+<O> /x4F
+<P> /x50
+<Q> /x51
+<R> /x52
+<S> /x53
+<T> /x54
+<U> /x55
+<V> /x56
+<W> /x57
+<X> /x58
+<Y> /x59
+<Z> /x5A
+
+<a> /x61
+<b> /x62
+<c> /x63
+<d> /x64
+<e> /x65
+<f> /x66
+<g> /x67
+<h> /x68
+<i> /x69
+<j> /x6a
+<k> /x6b
+<l> /x6c
+<m> /x6d
+<n> /x6e
+<o> /x6f
+<p> /x70
+<q> /x71
+<r> /x72
+<s> /x73
+<t> /x74
+<u> /x75
+<v> /x76
+<w> /x77
+<x> /x78
+<y> /x79
+<z> /x7a
+<SP> /x20
+<space> /x20
+<0> /x30
+<1> /x31
+<2> /x32
+<3> /x33
+<4> /x34
+<5> /x35
+<6> /x36
+<7> /x37
+<8> /x38
+<9> /x39
+<b1>...<b3> /xa1/x40
+END CHARMAP
diff --git a/localedata/tests/test3.def b/localedata/tests/test3.def
new file mode 100644
index 0000000000..56dea5c4bb
--- /dev/null
+++ b/localedata/tests/test3.def
@@ -0,0 +1,9 @@
+LC_CTYPE
+
+upper <A>
+lower <a>
+space <SP>
+blank <SP>
+alpha <A>;<a>;<b1>;...;<b3>
+
+END LC_CTYPE
diff --git a/localedata/tests/test4.cm b/localedata/tests/test4.cm
new file mode 100644
index 0000000000..f0cdf93bd8
--- /dev/null
+++ b/localedata/tests/test4.cm
@@ -0,0 +1,12 @@
+<code_set_name> BIG5
+<escape_char> /
+<mb_cur_max> 2
+<mb_cur_min> 1
+CHARMAP
+<b0101>...<b0103> /xa1/x40
+<B0101>...<B0103> /xa1/xa1
+<b0901>...<b0903> /xa1/x40
+<B0901>...<B0903> /xa1/xa1
+<b1001>...<b1003> /xaa/x40
+<B1001>...<B1003> /xaa/xa1
+END CHARMAP
diff --git a/localedata/tests/test4.def b/localedata/tests/test4.def
new file mode 100644
index 0000000000..3d96d3a88f
--- /dev/null
+++ b/localedata/tests/test4.def
@@ -0,0 +1,7 @@
+LC_COLLATE
+order_start forward
+<b1001>
+<B1001>
+UNDEFINED IGNORE
+order_end
+END LC_COLLATE
diff --git a/localedata/tst-locale.sh b/localedata/tst-locale.sh
new file mode 100755
index 0000000000..f6182e6daf
--- /dev/null
+++ b/localedata/tst-locale.sh
@@ -0,0 +1,51 @@
+#! /bin/sh
+# Testing the implementation of localedata.
+# Copyright (C) 1998 Free Software Foundation, Inc.
+# This file is part of the GNU C Library.
+# Contributed by Andreas Jaeger, <aj@arthur.rhein-neckar.de>, 1998.
+#
+# The GNU C Library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Library General Public License as
+# published by the Free Software Foundation; either version 2 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
+# Library General Public License for more details.
+#
+# You should have received a copy of the GNU Library General Public
+# License along with the GNU C Library; see the file COPYING.LIB. If
+# not, write to the Free Software Foundation, Inc.,
+# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+common_objpfx=$1; shift
+
+test_locale ()
+{
+ charmap=$1
+ input=$2
+ out=$3
+ I18NPATH=./locales \
+ ${common_objpfx}elf/ld.so --library-path $common_objpfx \
+ ${common_objpfx}locale/localedef --quiet -c -f $charmap -i $input \
+ ${common_objpfx}localedata/$out
+
+ if [ $? -ne 0 ]; then
+ echo "Charmap: \"${charmap}\" Inputfile: \"${input}\"" \
+ "Outputdir: \"${out}\" failed"
+ exit 1
+ fi
+}
+
+test_locale IBM437 de_DE de_DE.437
+test_locale tests/test1.cm tests/test1.def test1
+test_locale tests/test2.cm tests/test2.def test2
+test_locale tests/test3.cm tests/test3.def test3
+test_locale tests/test4.cm tests/test4.def test4
+
+exit 0
+
+# Local Variables:
+# mode:shell-script
+# End: